图片标签及以图搜图场景应用

博客:https://wenjie.blog.csdn.net/
作者:走在前方
介绍:计算机硕士,多年工作经验,技术和产品负责人。 多年推荐系统/NLP/大数据工作经验。 负责公司多个AI项目产品落地,包括文本分类、关键词抽取、命名实体识别、对话系统中语义理解、FAQ智能问答、知识图谱、图搜、推荐系统等

本文主要分享核心要点

文章目录

  • 图片标签问题
  • 不同图片标签差异
    • 图片分类:二分类(binary-class classification)场景
    • 图片分类:多分类(Multi-class classification)场景
    • 图片分类:多输出分类(Multi-output classification)场景
    • 图片分类:多标签图片分类(Multi-label classification)场景
    • 以图搜图
  • 多目标输出图片分类
    • 背景介绍
    • 数据分析
    • **自定义数据集****+****模型定义和设计**
    • **模型数据验证混淆矩阵可视化**
    • **模型加载**
    • **图片多标签预测**
    • **多分类输出多标签案例演示**
  • 多标签图片分类
    • 多标签和多分类应用
    • 介绍两个重要的分类器
    • 数据介绍
    • **分类器****+****损失函数**
    • **网络模型设计**
    • **多标签分类模型****-****效果可视化**
    • **多标签图片分类功能演示**
  • 以图搜图
    • 图像搜索应用场景
      • 百度图像搜索
        • 相似图片搜索场景
        • 相同图片搜索场景
        • 商品图片搜索场景
      • 阿里图像搜索
        • 电商图库类场景
        • 布料纺织场景
        • 商标logo检索场景
        • 通用图库类场景
      • 以图搜图实践
    • 图像搜索发展历程
    • 卷积神经网络理论必备
    • **Faiss向量**搜索库基础入门
    • 以图搜图项目实战
    • **数据介绍**
    • **以图搜图系统架构**
    • **以图搜图技术架构原理**
    • 深度学习框架选型
    • ** Faiss 开源向量检索引擎**
    • **Faiss 不同类别索引**
    • **Faiss索引构建源码解读**
    • **图片特征抽取**
    • **在线实时检索演示**

  • 图片标签问题
    • 什么是多标签图像分类
    • 多标签图像分类与多类图像分类有何不同
    • 构建多标签图像分类模型的步骤
    • 你了解哪些多标签图像分类模型结构
    • 多分类和多标签分类器和损失函数选择
    • 图片标签在推荐和搜索系统应用
  • 不同图片业务应用
    • 二分类
    • 多分类
    • 多目标任务
    • 多标签
    • 以图搜图
  • 多目标输出图片分类应用
    • 背景和数据介绍
    • 自定义数据集合网络模型设计
    • 模型加载预测
    • 在线预测以及数据可视化
  • 多标签图片分类应用
    • 多标签和多分类区别
    • 二分类和多分类以及损失函数
    • 网络模型设计
    • 多标签预测
  • 以图搜图应用
    • 图搜应用场景和原理
    • 开源向量检索引擎
    • 系统架构
    • 图片特征抽取和在线实时检索

图片标签问题

图片

  • 什么是多标签图像分类
  • 多标签图像分类与多类图像分类有何不同
  • 构建多标签图像分类模型的步骤
  • 你了解哪些多标签图像分类模型结构
  • 多分类和多标签分类器和损失函数选择
  • 图片标签在推荐和搜索系统应用

不同图片标签差异

图片

图片

图片分类:二分类(binary-class classification)场景

图片

图片分类:多分类(Multi-class classification)场景

图片

以4类(猫、狗、兔子和鹦鹉)看下多分类特点:

每张图片只能被分类为猫、狗、鹦鹉或兔子。没有任何一个图像属于多个类别的情况

图片分类:多输出分类(Multi-output classification)场景

3类(电商时尚类):性别+颜色+类型( 每张图片都有3个固定的标签 ),固定输出图片多标签

图片

图片分类:多标签图片分类(Multi-label classification)场景

图片

多标签图片分类

①每个图像都属于一个以上的类

②每个图片出现的标签并不是固定的

③标签获取从标签池中选择最可能标签展示

以图搜图

  • 基于图片标签搜索
  • 基于图片特征搜索

图片

多目标输出图片分类

背景介绍

随着电子商务产业快速发展,有大量的数据集等待着我们去搜集和研究。除了专业拍摄高质量产品图像,商品本身还拥有多个标签属性,用于描述商品各种特征。另外,还提供了关于商品特性的描述性文本

数据介绍:每个商品都有一个唯一编码(例如:ID =15970) ,商品信息主要字段信息如下所示

图片

数据分析

图片

自定义数据集**+**模型定义和设计

自定义数据集

①加载指定的标签数据

②计算标签种类和数量统计

③构建标签字典

④自定义数据集工具类

模型定义和设计

①加载预训练的网络(例如:mobilenet_v2,resnet,resnext. 用户可以自己选择进行实验)

②修改基础网络结构,原来网络最后一层仅支持一个分类标签输入

③每个标签属性损失函数选择cross-entropy loss (采用联合训练求loss)

模型数据验证混淆矩阵可视化

图片

模型加载

model = MultiOutputModel(n_color_classes,

n_gender_classes,

n_article_classes)

model.to(device)

checkpoint = “./checkpoints/2020-09-21_15-59/checkpoint-000049.pth”

model.load_state_dict(torch.load(checkpoint,map_location=‘cpu’))

model.eval()

图片多标签预测

图片

多分类输出多标签案例演示

图片

多标签图片分类

多标签和多分类应用

  • 不同任务的图片分类应用

图片

  • 针对一张图片,强制只能一种数字,可以使用softmax分类器

图片

  • 胸部X光片:一次胸部X光片可以同时显示多种不同的医疗状况。如果我们为胸部x光片构建一个分类器,我们希望该分类器能够指示存在多种情况。这是一张同时显示肺炎和脓肿的胸部x光照片,以及相应的标签。

图片

  • 入院:根据患者的健康记录,我们可能需要预测该患者将来是否会入院。我们可以将其定义为一个分类问题:根据患者未来的入院诊断(如果有的话)对患者过去的健康记录进行分类。患者可能因多种疾病入院,因此可能有多个正确答案

图片

介绍两个重要的分类器

Sigmoid和Softmax对比

图片

图片

图片

数据介绍

图片

图片

分类器**+**损失函数

图片

图片

网络模型设计

图片

多标签分类模型**-**效果可视化

图片

图片

多标签图片分类功能演示

图片

图片

以图搜图

图像搜索应用场景

随着数字时代的到来,传统单单的文字搜素已经无法满足人们的搜索了,图像搜索,甚至是视频搜索都已经比较成熟。

图像搜索服务 (Image Search)是以深度学习大规模机器学习技术为核心,通过图像识别和搜索功能,实现以图搜图的和以文搜图的智能图像搜索产品。图像搜索服务在基于图像识别技术基础上,结合不同行业应用和业务场景,帮助用户实现相同或相似图片搜索。

现在大火的人工智能主要是:语音识别,自然语言处理,计算机视觉,推荐系统等等。

人工智能技术应用:

n语音识别+自然语言处理:amazon echo,google assistant/home,siri,国内一大票智能音箱

n计算机视觉:微博面孔专辑(商汤提供的cv能力),海康威视/格林深瞳的安防,**拍立淘(手机淘宝里面的相机入口),百度识图(百度app里面的相机入口),**Google Photo

n推荐系统:手机淘宝主页往下翻有个栏目叫猜你喜欢,qq/网易音乐的每日推荐歌曲等

图片搜索的主要应用是二维码扫描、以图搜图、拍照搜题、拍照翻译、AR翻译、以图搜剧等

图片

图片

百度图像搜索

以图搜图,在指定图库中搜索出相同或相似的图片,适用于图片精确查找、相似素材搜索、拍照搜同款商。

相似图片搜索场景

在自建图库中找到与检索图片语义相似的图片集,并给出相似度打分(综合图片类型、颜色、内容、布局等特征);适用于各种相似图片查找、相关内容推荐场景

图片

  • 设计素材查找

基于拍摄照片查找相似或相同的图片作品,满足设计师人群、工作人员更快捷高效查找原版大图或相似作品的需求

  • 商品搜索及推荐

将用户拍摄的图片在商品库中搜索,找到同款或相似的商品,进行商品销售或者相关商品推荐,提升搜索查找的便捷性,优化用户体验

  • 相关内容推荐

将文章内容或者产品服务中的图片入库,通过比对用户上传的图片,查找相似图片,从而找到相关的内容信息,实现相关内容搜索、推荐

相同图片搜索场景

在自建图库中找到与检索图相同的图片,支持找到局部内容相同的大图,或适度调整背景和角度的相同图片;可用于图片精确查找、重复图片过滤等场景

图片

应用场景

  • 重复图片过滤

搜索图库中是否有相同或高度相似的图片,实现系统内图片去重或过滤,避免重复内容引起的资源浪费、体验下降等问题

  • 图片精确查找

在图片库中找到主体相同的图片,结合相似度分值,判断图片内容是否严格相同,可用于特定图片查找、图片内容精准关联等场景

商品图片搜索场景

针对商品类图片,专项训练检索模型,在自建图库中搜索相同及相似的商品图片集,可找到不同颜色、背景、角度的同款商品;适用于电商平台拍照搜商品等场景

图片

  • 商品搜索及推荐

将用户拍摄的图片在商品库中搜索,找到同款或相似的商品,进行商品销售或者相关商品推荐,提升商品搜索查找的便捷性,优化用户购买体验

  • 商品识别

将商品名称与图片相匹配一起入库,通过图片相似度判断实现指定集合内的商品识别,可用于户外广告拍照下单、供应链系统拍图找货等场景

接下来我们就针对图搜场景进一步探索。

阿里图像搜索

电商图库类场景

图片

图片

用户只需拍摄或者上传商品照片,就可以根据图片进行商品搜索。 省去了繁琐的文字描述,简化了商品搜索流程,大大提升用户的购物体验。

布料纺织场景

图片

商标logo检索场景

图片

在商标、标识等场景下搜索相同或相似logo图形,大幅度简化人工肉眼比对的工作量,并有效提供工作效率。

通用图库类场景

图片

图片分享和社交类网站通常有大量通用图片供用户搜索使用,利用图像搜索服务,可在云端快速构建百亿级图像搜索引擎,提供以图搜图功能,提升用户体验。

以图搜图实践

为方便更直观认知图像搜索场景应用,我们采用的方案:

基于深度学习工具PyTorch + Facebook AI searcher Faiss向量相似性搜索算法库。

举例说明如下:

红色方框是查询图,绿色方框是完全匹配的结果,其它是最相似的top

图片

图片

图像搜索发展历程

图片

卷积神经网络理论必备

采用PyTorch深度学习工具进行图片特征提取。首先我们需要做的,要理解卷积神经网络如何特征提取的?这部分重点给大家讲解相关CNN的概念。

  • 初识CNN
  • CNN 卷积层概念
  • CNN 中的stride和zero-padding使
  • CNN 特征图计算
  • CNN PoolLayers和FC&训练过程演示开始学习
  • CNN 网络发展历史
  • 图形化介绍FC和CNN 区别以及CNN 层概念
  • keras 实现CNN 网络
  • 图形化方式介绍CNN在图像应用
  • CNN 在语音和文本中应用介绍

Faiss向量搜索库基础入门

faiss 向量化相似索引库,主要完成文本向量化特征的存储和检索。

  • faiss安装
  • faiss 快速入门
  • faiss 基础模块和索引选择
  • faiss 基础索引类型介绍和源码分析
    • Faiss indexes IO和index factory
    • Faiss indexes 前(后)处理
    • Faiss indexes 基础索引类型
    • Faiss indexes 多种index混合
    • Faiss indexes 进阶操作
  • faiss 索引优化方案
  • faiss一些基准实验

以图搜图项目实战

数据介绍

数据集介绍

图片集包含 17125 张图片,涵盖 20 个目录。

n人类;

n动物(鸟、猫、牛、狗、马、羊);

n交通工具(飞机、自行车、船、公共汽车、小轿车、摩托车、火车);

n室内(瓶子、椅子、餐桌、盆栽植物、沙发、电视)

数据集大小:~2GB

说明:您也可以使用其他的图片数据进行图片索引构建和检索。

索引构建压缩

尝试20万照片构建图片索引生成439M索引文件

索引降维压缩后,最后生成32M索引文件,效果基本不受影响

以图搜图系统架构

图片

以图搜图技术架构原理

图片

为方面进一步的理解以图搜图业务场景执行方案,通过VISO 图再次演示如下:

图片

主要分为三个部分——图像特征抽取,图像特征构建索引、图像快速检索。

**第一步:**图像特征抽取方法

  • 传统的方法有各种图像处理的方法,比如hog直方图,小波过滤等方法提取特征
  • 流行的深度学习方法,比如卷积神经网络等;

**第二步:**使用特征抽取器对图像库抽取特征,并以向量的形式存储起来;

**第三步:**构建索引后,图像索引的好坏影响搜索速度

通过案例来看看图像检索基本的流程。首先,提供一张图像,然后按照下面的流程执行

->抽取特征

->图像库特征匹配(余弦相似度或者欧式距离)

->相似度的大小进行排序

-> 输出匹配结果

图片

深度学习框架选型

主要借助深度学习框架,完成图片特征提取,一般采用TensorFlow 或者 PyTorch

项目: 采用PyTorch深度学习工具,同时采用Faiss 完成图片特征存储和检索(毫秒)

** Faiss 开源向量检索引擎**

Faiss是Facebook AI团队开源的针对聚类和相似性搜索库,为稠密向量提供高效相似度搜索和聚类,支持十亿级别向量的搜索,是目前最为成熟的近似近邻搜索库。它包含多种搜索任意大小向量集(备注:向量集大小由RAM内存决定)的算法,以及用于算法评估和参数调整的支持代码。Faiss用C++编写,并提供与Numpy完美衔接的Python接口

图片

Faiss 不同类别索引

图片

Faiss索引构建源码解读

图片

图片特征抽取

图片

图片

在线实时检索演示

  • 第一张照片:用户检索照片,后面相似照片推荐(相似得分:从左到右、从上到下排序)
  • 索引库采样降维压缩,压缩前后减少1/4
  • 图片检索速度在毫秒级别( 5000 万图片库)

图片

更多以图搜图的效果案例**>>**

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/47412.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

markdown 让你快速无痛学会编写IT文档

Markdown就是一种文档的格式,专业名称为轻量型标记语言,主要用于编写文档类的内容,特别适合IT类的文档编写。 目前绝大多数的IT技术论坛都是支持使用markdown编写博客与文章的,例如github,简书,csdn等,在I…

今年支付宝的集福字就靠这个了,天天不重样

前言 2022 虎年大吉,共迎新春,新的一年,我希望通过”万虎“拼福字以及”万福“拼萌虎的方式,给大家带来好运,祝大家虎虎生威,顺风顺水,人生如意,财源滚滚!恭喜完了&…

【Markdown】让你快速无脑编写IT文档

一、什么是Markdown Markdown是一种可以使用普通文本编辑器编写的轻量级标记语言,通过简单的标记语法,可以使普通文本内容具有一定的格式,可以导出为Word、PDF…等多种格式文档,Markdown文件后缀名为".md"。 Markdown…

PC端/电脑端有没有识别二维码并分类的工具

4-1 现在有一个很奇怪的问题,几乎所有的二维码识别功能都是在手机上,而电脑上的都没有。 但是如果需要在电脑上识别二维码咋办?去搜索了一下,发现没有,或者很少。 如果自己的工作就是要识别很多二维码并且对它做分类…

ggplot进行曼哈顿图复现

最近看文献的时候看到一张曼哈顿图,是对绵羊进行种间fst的比较找受选择的位点,当时看到这张图就感觉与之前看过的曼哈顿与众不同,图中用线段来表示的具体数值而不是常规的点,看多了点图,感觉线图还挺好看,所…

图幅号与经纬度的换算

图幅号,如“I48E001004”,一般为10位数。 前三位“I48”表示所属1:100万图幅的行列号 ,地图基本都是在1:100万比例尺的行列式编号基础上划分的。 1:100万图幅的划分规则: 纬度行:从赤道开始算,纬度四度一行,南北纬各22行,用大写英文字母A,B,C…表示(南半球要在字母…

rtx2060为什么叫智商卡_八款RTX2060简单点评,谁是丐中丐,谁又是丐帮帮主

RTX2060上市也有一段时间了,各种大神也做了一系列的测试,结果让人非常吃惊,旗舰2060性价比还是太低了,认可度也很低,主要还是3000以下的受关注比较多。 蜗牛也看了一下评测,大致的结果是这样的 大家可以看一下频率和温度,价格不可靠,偏差比较大。 老实说呀,看了这个评…

学习笔记:设计模式-装饰器设计模式(JAVA)

概念 装饰器设计模式,也叫包装设计模式,他是作为现有类的一个包装,允许向一个现有的对象添加新的功能,同时又不改变其结构。给对象添加功能,一般两种方式,继承或者组合,将一个类的对象嵌入到另一…

HTML+CSS基本使用与操作(万字没有,万图快了o(╥﹏╥)o)

往期: JAVA 修炼秘籍第一章:《痛苦的折磨》 JAVA 修炼秘籍第二章:《逐渐魔化》 JAVA 修炼秘籍第三章:《绝地反击》 JAVA 修炼秘籍第四章:《闭关修炼》 JAVA 修炼秘籍第五章:《卧薪尝胆》 JAVA 修炼秘籍第六…

如何在10万张图片中快速找出有二维码的图片(万图找码)

前段时间有一老哥加我微信,问有没有一种软件,能在文件夹里的上万张图片中快速地找出有二维码的图片。 我帮他找了一下,没找到这种软件,我说我做一个试试看,于是就有了这个软件,起名字叫做《万图找码》&…

SVC进行图像识别——万图识别

1.导入模块 import numpy as np import pandas as pd from pandas import Series,DataFrame #SVC知识向量机学习模型 from sklearn.svm import SVC #读取二进制文件模块 import pickle as pickle #数据降维处理模块 from sklearn.decomposition import PCA #绘图模块 import m…

Chatgpt如何引入新的知识?我们来看下ACL2023 预训练模型能否对新注入的知识进行推理这篇文章

一、概述 title:Can LMs Learn New Entities from Descriptions? Challenges in Propagating Injected Knowledge 论文地址:https://arxiv.org/abs/2305.01651 相关代码: EKP数据和代码:GitHub - yasumasaonoe/entity_knowle…

计算机SCI期刊审稿人,一般关注论文的那些问题? - 易智编译EaseEditing

编辑主要关心: (1)文章内容是否具有足够的创新性? (2)文章主题是否符合期刊的受众读者? (3)文章方法学是否合理,数据处理是否充分? (…

让AI替你打工?GPT提升开发效率指南

👉导读 开发者日常的整个工作流中,AI 大模型能做什么?ChatGPT 等 AI 大模型能不能通过开发者的指引,一步步完成从技术方案输出、编码、测试、发布到运营维护的整套流程?使用中有什么避坑点?本文从实际研发流…

开源协议,曝出重大问题,目前无解

出品 | OSC开源社区(ID:oschina2013) 《The Register》发布了探讨更新开源许可证的文章。作者的观点正如文章标题所言:开源许可证需要摆脱 20 世纪 80 年代的束缚,并不断发展以应对人工智能。 他指出,自由软件和开源许…

网课录屏用什么软件好?Camtasia极简操作,课程重点一目了然

后疫情时代,线上线下相结合的课程形式越来越火。身为人名教师这两年明显感觉压力倍增啊,以前同事之间聊工作都是你的备课笔记拿来看看呢,现在都变成了你的录课视频让我参考参考呢。 为了给学生输出高质量的课堂内容,一款好用的录…

解码聊天机器人技术:权威指南

关键词:聊天机器人、跨境电商客户服务 作为一个跨境电商品牌您需要知道,当品牌在一分钟内回答客户的问题时,59% 的客户更有可能完成购买。 Business Insider 的一项研究还发现,只要您提供的客户服务有效、方便、快捷,…

全球首个AI合成主播发布,效果以假乱真!揭秘背后技术原理

边策 李根 发自 凹非寺 量子位 报道 | 公众号 QbitAI 搜狗又在乌镇世界互联网大会上搞了大新闻。 2016年,王小川在正式论坛里秀出AI同传,那是机器实时翻译技术,首次在高规格国际会议上实战应用。 而这一次,依然世界互联网大会&…

Python控制AI虚拟主播说话聊天源码分享

Python是非常简单可用的脚本语言,本次我们将介绍如何实用Python控制一个AI虚拟主播说话聊天。通过分析目前市场上可用的虚拟主播软件,发现Motionface是一个简单可用的虚拟主播软件,它提供简单的http接口,是实时响应的,不像其他虚拟主播软件(baidu,xunfei等)需要很高的算…

AI虚拟主播软件系统 搭建24小时不间断运营的数字人直播间的操作教程分享

现在直播都必须真人直播,没法做到24小时不间断直播。虚拟人直播系统,一天24小时在线直播,不要吃饭,也不要工资,每时每刻都在赚音浪,带货,那么具体AI虚拟主播软件是怎么操作的呢?今天…