CN114741581A - 一种图像分类方法、装置、计算机设备及介质 - Google Patents
一种图像分类方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN114741581A CN114741581A CN202210414376.1A CN202210414376A CN114741581A CN 114741581 A CN114741581 A CN 114741581A CN 202210414376 A CN202210414376 A CN 202210414376A CN 114741581 A CN114741581 A CN 114741581A
- Authority
- CN
- China
- Prior art keywords
- image
- type
- recognized
- text
- classification model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000013145 classification model Methods 0.000 claims abstract description 89
- 238000012549 training Methods 0.000 claims abstract description 77
- 239000013598 vector Substances 0.000 claims description 74
- 239000011159 matrix material Substances 0.000 claims description 41
- 238000013507 mapping Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 230000000644 propagated effect Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9532—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种图像分类方法、装置、计算机设备及介质,方法包括:获取动态类别库和待识别图像;根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本;将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度;根据多个余弦相似度确定出待识别图像的最终类型;预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。由于本申请采用样本对训练模型,并在模型训练后配合动态类别库进行类型识别,从而不需要预先定义图片分类模型所需的类别,进而达到了无监督学习的目的,使得模型能对所有类型的图像进行识别,提升了模型的泛化能力。
Description
技术领域
本发明涉及机器视觉技术领域,特别涉及一种图像分类方法、装置、计算机设备及介质。
背景技术
随着互联网技术的发展,用户不仅可以通过关键字的方式进行搜索,还可以通过图片的方式进行搜索。在通过图片进行搜索的场景中,用户可以通过图库中选择或即时拍摄图片上传至系统。在获取用户上传的图片之后,系统对图片进行分析,识别图片中的对象(人或物品等),以确定图片所属的分类信息,并根据图片的分类信息和特征进行搜索并将搜索结果返回给用户。
在现有的确定图片类型的方案中,通过预先训练好的模型进行图片类型识别,在模型训练时,首先采集大量的图像作为训练数据,然后对每个图像标注类别标签,即图片需要分的类别需要预先设置好,例如1000类,模型一但训练好便只能处理这1000类别的分类问题,无法对超出这1000类别的其他类进行判断,同时在图片类型识别时,仅仅能对该1000类的图像进行识别,从而极大程度限制了模型的泛化性。
发明内容
基于此,有必要针对模型泛化性小的问题,提供一种图像分类方法、装置、计算机设备及介质。
一种图像分类方法,方法包括:获取动态类别库和待识别图像;根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本;将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度;根据多个余弦相似度确定出待识别图像的最终类型;其中,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
在其中一个实施例中,根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,包括:遍历获取动态类别库中每个类型关键词;获取预设类型描述模板中的关键词标识符;将每个类型关键词与关键词标识符进行映射关联,得到多条类型描述文本。
在其中一个实施例中,预先训练的图像分类模型包括文本编辑器和图片编辑器;将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,包括:将多条类型描述文本逐一输入文本编辑器中,输出每条类型描述文本对应的文本向量;将待识别图像输入图片编辑器中,输出待识别图像的目标图像向量;将每条类型描述文本对应的文本向量与待识别图像的目标图像向量逐一组合,得到多个待计算向量对;计算每个待计算向量对的余弦相似度,得到并输出待识别图像对应的多个余弦相似度。
在其中一个实施例中,根据多个余弦相似度确定出待识别图像的最终类型,包括:将多个余弦相似度中最大余弦相似度确定为待识别图像的目标相似度;获取目标相似度对应的目标文本向量;将目标文本向量对应的类型描述文本中类型关键词确定为待识别图像的最终类型。
在其中一个实施例中,获取动态类别库和待识别图像之前,还包括:根据ImageCaptioning数据集构建样本对集合;其中,样本对集合中每个样本对包括训练图像和图像描述文本;构建图像分类模型;将每个样本对输入图像分类模型中,输出损失值;当损失值到达最小时,生成预先训练的图像分类模型;或者,当损失值未到达最小时,将损失值进行反向传播以更新图像分类模型的模型参数,并继续执行将每个样本对输入图像分类模型中的步骤。
在其中一个实施例中,图像分类模型包括文本编辑器和图片编辑器;将每个样本对输入图像分类模型中,输出损失值,包括:将每个样本对的训练图像和图像描述文本分别输入图片编辑器和文本编辑器中,输出每个样本对的训练图像向量和训练文本向量;根据每个样本对的训练图像向量和训练文本向量进行排列组合,生成目标向量矩阵;计算目标向量矩阵中每个矩阵元素的余弦相似度,得到相似度矩阵;根据相似度矩阵计算损失值。
在其中一个实施例中,根据相似度矩阵计算损失值,包括:确定相似度矩阵中第一个元素和最后一个元素;将第一个元素和最后一个元素进行直线连接,得到元素线;将元素线上的所有元素的相似度做和,得到第一总体相似度;将相似度矩阵中剔除元素线上的所有元素剩余的元素的相似度做和,得到第二总体相似度;将第二总体相似度与第一总体相似度的比值确定为损失值。
一种图像分类装置,装置包括:图像获取模块,用于获取动态类别库和待识别图像;类型描述文本生成模块,用于根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本;余弦相似度输出模块,用于将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度;类型确定模块,用于根据多个余弦相似度确定出待识别图像的最终类型;其中,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述图像分类方法的步骤。
一种存储有计算机可读指令的介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述图像分类方法的步骤。
上述图像分类方法、装置、设备和介质,图像分类装置首先获取动态类别库和待识别图像,然后根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,再将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,最后根据多个余弦相似度确定出待识别图像的最终类型,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。由于本申请采用样本对训练模型,并在模型训练后配合动态类别库进行类型识别,从而不需要预先定义图片分类模型所需的类别,进而达到了无监督学习的目的,使得模型能对所有类型的图像进行识别,提升了模型的泛化能力。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1为本申请一个实施例中提供的图像分类方法的实施环境图;
图2为本申请一个实施例中计算机设备的内部结构示意图;
图3为本申请一个实施例中提供的图像分类方法的方法示意图;
图4为本申请一个实施例中提供的图像分类过程的过程示意框图;
图5为本申请一个实施例中提供的图像分类模型的模型训练方法的流程示意图;
图6为本申请一个实施例中提供的训练数据中一个样本对的示意图;
图7为本申请一个实施例中提供的图像分类模型的模型训练过程的流程示意框图;
图8是本申请实施例提供的一种图像分类装置的装置示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。
图1为一个实施例中提供的图像分类方法的实施环境图,如图1所示,在该实施环境中,包括服务端110以及客户端120。
服务端110可以为服务器,该服务器具体可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,例如为保存预先训练的图像分类模型的服务器设备。服务端110获取来自客户端120发送的动态类别库和待识别图像,服务端110根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,服务端110将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,服务端110根据多个余弦相似度确定出待识别图像的最终类型上报至客户端120。
需要说明的是,客户端120可为智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。服务端110以及客户端120可以通过蓝牙、USB(Universal Serial Bus,通用串行总线)或者其他通讯连接方式进行连接,本发明在此不做限制。
图2为一个实施例中计算机设备的内部结构示意图。如图2所示,该计算机设备包括通过系统总线连接的处理器、介质、存储器和网络接口。其中,该计算机设备的介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种图像分类方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种图像分类方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。其中,介质为一种可读的存储介质。
下面将结合附图3-7,对本申请实施例提供的图像分类方法进行详细介绍。该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的图像分类装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
请参见图3,为本申请实施例提供了一种图像分类方法的流程示意图。如图3所示,本申请实施例的方法可以包括以下步骤:
S101,获取动态类别库和待识别图像;
其中,动态类别库是预先设定的类别关键词存储库,待识别图像是模型应用场景中获取的图像,该图像可以是从测试集中拿到的,可以是是本地图库中得到的,还可以是在线实时接收到的图像。
通常,该存储库中的类别关键词可以动态的增加或删除,从而可提升类别关键词的丰富性,摆脱了现有技术中模型训练时将样本类别进行训练后使得模型的识别类型和处理类型仅能固定在训练时的样本类型,直接可在模型实际应用场景中使用以及动态扩展。
在本申请实施例中,在生成动态类别库时,首先获取当前已存在的全部类别关键词,然后统计当前已存在的全部类别关键词的数量,再采用java函数库中的数组函数以及全部类别关键词的数量构建动态存储数组,并将当前已存在的全部类别关键词逐一保存至动态存储数组中,得到动态类别库。
进一步地,当检测到输入的新类别关键词时,将动态类别库的动态存储数组的长度自动加1,并将新类别关键词存储到动态类别库。
在一种可能的实现方式中,在进行图像类型识别时,首先实时接收在线发送来的待识别图像,并获取预先设定的动态类别库。
S102,根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本;
其中,预设类型描述模板是预先设定好的,用来将类型关键词进行转换。例如预设类型描述模板可以是一张关于{object}的图片,object是类型关键词的标识符。
通常,预设类型描述模板是为了将类别转换为一句通顺的自然语句,和训练阶段的“描述”保持一致。
在本申请实施例中,在生成多条类型描述文本时,首先遍历获取动态类别库中每个类型关键词,然后获取预设类型描述模板中的关键词标识符,最后将每个类型关键词与关键词标识符进行映射关联,得到多条类型描述文本。
例如,选用的模板为一张关于{object}的图片,将所有的类别带入模板中的object,例如将类别飞机代入后为:一张关于飞机的图片。
S103,将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度;
其中,预先训练的图像分类模型是可以识别图像所属类别的数学模型。
在本申请实施例中,在生成预先训练的图像分类模型时,首先根据ImageCaptioning数据集构建样本对集合;其中,样本对集合中每个样本对包括训练图像和图像描述文本,再构建图像分类模型,然后将每个样本对输入图像分类模型中,输出损失值,最后当损失值到达最小时,生成预先训练的图像分类模型;或者,当损失值未到达最小时,将损失值进行反向传播以更新图像分类模型的模型参数,并继续执行将每个样本对输入图像分类模型中的步骤。
具体的,预先训练的图像分类模型包括文本编辑器和图片编辑器。
在本申请实施例中,在将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度时,首先将多条类型描述文本逐一输入文本编辑器中,输出每条类型描述文本对应的文本向量,然后将待识别图像输入图片编辑器中,输出待识别图像的目标图像向量,其次将每条类型描述文本对应的文本向量与待识别图像的目标图像向量逐一组合,得到多个待计算向量对,最后计算每个待计算向量对的余弦相似度,得到并输出待识别图像对应的多个余弦相似度。
在一种可能的实现方式中,例如图4所示,任意选择想要分类的类别,例如图4中的飞机,毛巾,狗,…,鸟等,和现有技术不同在于这里可以随意选取,甚至可以后续有了新的想法这里再添加新的分类类别,不用受限于预定义好的类别,所有类别通过模板转换后的每条类型描述文本,记为Text1,Text2,Text3,…,TextM,通过之前训练的好的文本编码器得到文本特征向量T1,T2,T3,…,TM,这里M表示我们自定义的类别数目,其次将待识别图像通过之前训练的好的图片编码器得到图片特征向量I1,然后将图片特征向量I1与T1,T2,T3,…,TM逐一组合成向量对,最后计算图片特征向量I1与所有文本特征向量T1,T2,T3,…,TM中每一个的余弦相似度,最大值对应的那个类别就是我们最终所需要的类别,如图三中的“狗”类别。
S104,根据多个余弦相似度确定出待识别图像的最终类型;
其中,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
在一种可能的实现方式中,在确定最终类型时,首先将多个余弦相似度中最大余弦相似度确定为待识别图像的目标相似度,然后获取目标相似度对应的目标文本向量,最后将目标文本向量对应的类型描述文本中类型关键词确定为待识别图像的最终类型。
在本申请实施例中,首先获取动态类别库和待识别图像,然后根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,再将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,最后根据多个余弦相似度确定出待识别图像的最终类型,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。由于本申请采用样本对训练模型,并在模型训练后配合动态类别库进行类型识别,从而不需要预先定义图片分类模型所需的类别,进而达到了无监督学习的目的,使得模型能对所有类型的图像进行识别,提升了模型的泛化能力。
请参见图5,为本申请实施例提供了一种图像分类方法的流程示意图。如图5所示,本申请实施例的方法可以包括以下步骤:
S201,根据Image Captioning数据集构建样本对集合;其中,样本对集合中每个样本对包括训练图像和图像描述文本;
通常,常见的大规模Image Captioning数据集有:COCO captions一共包含123287张图片,616767个描述Conceptual captions一共包含3334173张图片,3334173个描述Visual genome一共包含108077张图片,5408689个描述,从图6可以看到,相较于现有技术中使用的{图片,类别}这种样本对,{图片,描述}样本对中的描述所蕴含的信息量无疑是更丰富的。
S202,构建图像分类模型;
其中,图像分类模型包括文本编辑器和图片编辑器。
在本申请实施例中,图片编码器可以按照需求自行设置,例如可以选取resnet50,resnet101,ViT等主流模型。文本编码器也可以按照需求自行设置,例如可以选取BERT,RoBERTa主流模型。
S203,将每个样本对输入图像分类模型中,输出损失值;
在本申请实施例中,在将每个样本对输入图像分类模型中,输出损失值时,首先将每个样本对的训练图像和图像描述文本分别输入图片编辑器和文本编辑器中,输出每个样本对的训练图像向量和训练文本向量,然后根据每个样本对的训练图像向量和训练文本向量进行排列组合,生成目标向量矩阵,其次计算目标向量矩阵中每个矩阵元素的余弦相似度,得到相似度矩阵,最后根据相似度矩阵计算损失值。
具体的,在根据相似度矩阵计算损失值时,首先确定相似度矩阵中第一个元素和最后一个元素,再将第一个元素和最后一个元素进行直线连接,得到元素线,然后将元素线上的所有元素的相似度做和,得到第一总体相似度,其次将相似度矩阵中剔除元素线上的所有元素剩余的元素的相似度做和,得到第二总体相似度,最后将第二总体相似度与第一总体相似度的比值确定为损失值。
在一种可能的实现方式中,例如图7所示,模型每一论的训练输入是N个{图片,描述}对,即{[Image1,Text1],[Image1,Text1],[Image1,Text1],…,[Image1,Text1]},将N个样本对的所有图片通过图片编码器得到每个图片的特征向量I1,I2,I3,…,IN,将N个样本对的所有描述通过文本编码器得到每个描述的特征向量T1,T2,T3,…,TN,对于N个图片向量和N个文本向量中的每个组合,计算两个向量间的余弦相似性,通过观察图7中右下角构建好的矩阵中的每个元素,可以发现对角线上的元素代表了真正的{图片,描述}配对样本,非对角线上的元素代表了错误的{图片,描述}配对样本,希望真正的配对样本所在位置的值越大越好,错误的配对样本所在位置的值越小越好,因此定义对角线上元素和为S1,非对角线上元素和为S2,定义最终的损失函数为:
L=S2/S1;
进一步地,通过对模型参数的学习,希望L的值越小越小,即S1越来越大,S2越来越小。通过设计这一损失函数,N个真正的{图片,描述}样本对中的每一个都和其他N(N-1)个错误的样本对进行了对比学习。
S204,当损失值到达最小时,生成预先训练的图像分类模型;或者,当损失值未到达最小时,将损失值进行反向传播以更新图像分类模型的模型参数,并继续执行将每个样本对输入图像分类模型中的步骤。
在本申请实施例中,相较于先前的{图片,类别}样本对,{图片,描述}样本对也更加容易收集,降低了数据收集,整理,过滤的工作量。采用对比学习的无监督训练策略,缓解了由于类别标签数据不够或者质量不高从而导致的模型性能下降问题。采用图像编码器和文本编码器分离式的训练策略,便于后续一方面可以各自独立当做特征抽取器使用,另一方面可以离线预计算一部分特征线下存储,显著提升线上模型的推理效率。
在本申请实施例中,首先获取动态类别库和待识别图像,然后根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,再将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,最后根据多个余弦相似度确定出待识别图像的最终类型,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。由于本申请采用样本对训练模型,并在模型训练后配合动态类别库进行类型识别,从而不需要预先定义图片分类模型所需的类别,进而达到了无监督学习的目的,使得模型能对所有类型的图像进行识别,提升了模型的泛化能力。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参见图8,其示出了本发明一个示例性实施例提供的图像分类装置的结构示意图。该图像分类装置可以通过软件、硬件或者两者的结合实现成为设备的全部或一部分。该装置1包括图像获取模块10、类型描述文本生成模块20、余弦相似度输出模块30、类型确定模块40。
图像获取模块10,用于获取动态类别库和待识别图像;
类型描述文本生成模块20,用于根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本;
余弦相似度输出模块30,用于将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度;
类型确定模块40,用于根据多个余弦相似度确定出待识别图像的最终类型;其中,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
需要说明的是,上述实施例提供的高压后部识别装置在执行高压后部识别方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的高压后部识别装置与高压后部识别方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请实施例中,首先获取动态类别库和待识别图像,然后根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,再将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,最后根据多个余弦相似度确定出待识别图像的最终类型,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。由于本申请采用样本对训练模型,并在模型训练后配合动态类别库进行类型识别,从而不需要预先定义图片分类模型所需的类别,进而达到了无监督学习的目的,使得模型能对所有类型的图像进行识别,提升了模型的泛化能力。
在一个实施例中,提出了一种计算机设备,设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取动态类别库和待识别图像;根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本;将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度;根据多个余弦相似度确定出待识别图像的最终类型;其中,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
在一个实施例中,处理器执行根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本时,具体执行以下操作:遍历获取动态类别库中每个类型关键词;获取预设类型描述模板中的关键词标识符;将每个类型关键词与关键词标识符进行映射关联,得到多条类型描述文本。
在一个实施例中,处理器执行将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度时,具体执行以下操作:将多条类型描述文本逐一输入文本编辑器中,输出每条类型描述文本对应的文本向量;将待识别图像输入图片编辑器中,输出待识别图像的目标图像向量;将每条类型描述文本对应的文本向量与待识别图像的目标图像向量逐一组合,得到多个待计算向量对;计算每个待计算向量对的余弦相似度,得到并输出待识别图像对应的多个余弦相似度。
在一个实施例中,处理器执行根据多个余弦相似度确定出待识别图像的最终类型时,具体执行以下操作:将多个余弦相似度中最大余弦相似度确定为待识别图像的目标相似度;获取目标相似度对应的目标文本向量;将目标文本向量对应的类型描述文本中类型关键词确定为待识别图像的最终类型。
在一个实施例中,处理器执行获取动态类别库和待识别图像之前时,还执行以下操作:根据Image Captioning数据集构建样本对集合;其中,样本对集合中每个样本对包括训练图像和图像描述文本;构建图像分类模型;将每个样本对输入图像分类模型中,输出损失值;当损失值到达最小时,生成预先训练的图像分类模型;或者,当损失值未到达最小时,将损失值进行反向传播以更新图像分类模型的模型参数,并继续执行将每个样本对输入图像分类模型中的步骤。
在一个实施例中,处理器执行将每个样本对输入图像分类模型中,输出损失值时,具体执行以下操作:将每个样本对的训练图像和图像描述文本分别输入图片编辑器和文本编辑器中,输出每个样本对的训练图像向量和训练文本向量;根据每个样本对的训练图像向量和训练文本向量进行排列组合,生成目标向量矩阵;计算目标向量矩阵中每个矩阵元素的余弦相似度,得到相似度矩阵;根据相似度矩阵计算损失值。
在一个实施例中,处理器执行根据相似度矩阵计算损失值,具体执行以下操作:确定相似度矩阵中第一个元素和最后一个元素;将第一个元素和最后一个元素进行直线连接,得到元素线;将元素线上的所有元素的相似度做和,得到第一总体相似度;将相似度矩阵中剔除元素线上的所有元素剩余的元素的相似度做和,得到第二总体相似度;将第二总体相似度与第一总体相似度的比值确定为损失值。
在本申请实施例中,首先获取动态类别库和待识别图像,然后根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,再将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,最后根据多个余弦相似度确定出待识别图像的最终类型,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。由于本申请采用样本对训练模型,并在模型训练后配合动态类别库进行类型识别,从而不需要预先定义图片分类模型所需的类别,进而达到了无监督学习的目的,使得模型能对所有类型的图像进行识别,提升了模型的泛化能力。
在一个实施例中,提出了一种存储有计算机可读指令的介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:获取动态类别库和待识别图像;根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本;将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度;根据多个余弦相似度确定出待识别图像的最终类型;其中,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
在一个实施例中,处理器执行根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本时,具体执行以下操作:遍历获取动态类别库中每个类型关键词;获取预设类型描述模板中的关键词标识符;将每个类型关键词与关键词标识符进行映射关联,得到多条类型描述文本。
在一个实施例中,处理器执行将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度时,具体执行以下操作:将多条类型描述文本逐一输入文本编辑器中,输出每条类型描述文本对应的文本向量;将待识别图像输入图片编辑器中,输出待识别图像的目标图像向量;将每条类型描述文本对应的文本向量与待识别图像的目标图像向量逐一组合,得到多个待计算向量对;计算每个待计算向量对的余弦相似度,得到并输出待识别图像对应的多个余弦相似度。
在一个实施例中,处理器执行根据多个余弦相似度确定出待识别图像的最终类型时,具体执行以下操作:将多个余弦相似度中最大余弦相似度确定为待识别图像的目标相似度;获取目标相似度对应的目标文本向量;将目标文本向量对应的类型描述文本中类型关键词确定为待识别图像的最终类型。
在一个实施例中,处理器执行获取动态类别库和待识别图像之前时,还执行以下操作:根据Image Captioning数据集构建样本对集合;其中,样本对集合中每个样本对包括训练图像和图像描述文本;构建图像分类模型;将每个样本对输入图像分类模型中,输出损失值;当损失值到达最小时,生成预先训练的图像分类模型;或者,当损失值未到达最小时,将损失值进行反向传播以更新图像分类模型的模型参数,并继续执行将每个样本对输入图像分类模型中的步骤。
在一个实施例中,处理器执行将每个样本对输入图像分类模型中,输出损失值时,具体执行以下操作:将每个样本对的训练图像和图像描述文本分别输入图片编辑器和文本编辑器中,输出每个样本对的训练图像向量和训练文本向量;根据每个样本对的训练图像向量和训练文本向量进行排列组合,生成目标向量矩阵;计算目标向量矩阵中每个矩阵元素的余弦相似度,得到相似度矩阵;根据相似度矩阵计算损失值。
在一个实施例中,处理器执行根据相似度矩阵计算损失值,具体执行以下操作:确定相似度矩阵中第一个元素和最后一个元素;将第一个元素和最后一个元素进行直线连接,得到元素线;将元素线上的所有元素的相似度做和,得到第一总体相似度;将相似度矩阵中剔除元素线上的所有元素剩余的元素的相似度做和,得到第二总体相似度;将第二总体相似度与第一总体相似度的比值确定为损失值。
在本申请实施例中,首先获取动态类别库和待识别图像,然后根据预设类型描述模板将动态类别库中的各类型关键词进行转换,生成多条类型描述文本,再将多条类型描述文本与待识别图像输入到预先训练的图像分类模型中,输出待识别图像对应的多个余弦相似度,最后根据多个余弦相似度确定出待识别图像的最终类型,预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。由于本申请采用样本对训练模型,并在模型训练后配合动态类别库进行类型识别,从而不需要预先定义图片分类模型所需的类别,进而达到了无监督学习的目的,使得模型能对所有类型的图像进行识别,提升了模型的泛化能力。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性介质,或随机存储记忆体(RandomAccess Memory,RAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种图像分类方法,其特征在于,所述方法包括:
获取动态类别库和待识别图像;
根据预设类型描述模板将所述动态类别库中的各类型关键词进行转换,生成多条类型描述文本;
将所述多条类型描述文本与所述待识别图像输入到预先训练的图像分类模型中,输出所述待识别图像对应的多个余弦相似度;
根据所述多个余弦相似度确定出所述待识别图像的最终类型;其中,
所述预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
2.根据权利要求1所述的方法,其特征在于,所述根据预设类型描述模板将所述动态类别库中的各类型关键词进行转换,生成多条类型描述文本,包括:
遍历获取动态类别库中每个类型关键词;
获取预设类型描述模板中的关键词标识符;
将所述每个类型关键词与所述关键词标识符进行映射关联,得到多条类型描述文本。
3.根据权利要求1所述的方法,其特征在于,所述预先训练的图像分类模型包括文本编辑器和图片编辑器;
所述将所述多条类型描述文本与所述待识别图像输入到预先训练的图像分类模型中,输出所述待识别图像对应的多个余弦相似度,包括:
将所述多条类型描述文本逐一输入所述文本编辑器中,输出每条类型描述文本对应的文本向量;
将所述待识别图像输入所述图片编辑器中,输出所述待识别图像的目标图像向量;
将所述每条类型描述文本对应的文本向量与所述待识别图像的目标图像向量逐一组合,得到多个待计算向量对;
计算每个待计算向量对的余弦相似度,得到并输出所述待识别图像对应的多个余弦相似度。
4.根据权利要求1所述的方法,其特征在于,所述根据所述多个余弦相似度确定出所述待识别图像的最终类型,包括:
将所述多个余弦相似度中最大余弦相似度确定为待识别图像的目标相似度;
获取目标相似度对应的目标文本向量;
将所述目标文本向量对应的类型描述文本中类型关键词确定为所述待识别图像的最终类型。
5.根据权利要求1所述的方法,其特征在于,所述获取动态类别库和待识别图像之前,还包括:
根据Image Captioning数据集构建样本对集合;其中,所述样本对集合中每个样本对包括训练图像和图像描述文本;
构建图像分类模型;
将所述每个样本对输入所述图像分类模型中,输出损失值;
当所述损失值到达最小时,生成预先训练的图像分类模型;
或者,
当所述损失值未到达最小时,将所述损失值进行反向传播以更新所述图像分类模型的模型参数,并继续执行将所述每个样本对输入所述图像分类模型中的步骤。
6.根据权利要求5所述的方法,其特征在于,所述图像分类模型包括文本编辑器和图片编辑器;
所述将所述每个样本对输入所述图像分类模型中,输出损失值,包括:
将所述每个样本对的训练图像和图像描述文本分别输入所述图片编辑器和所述文本编辑器中,输出每个样本对的训练图像向量和训练文本向量;
根据每个样本对的训练图像向量和训练文本向量进行排列组合,生成目标向量矩阵;
计算所述目标向量矩阵中每个矩阵元素的余弦相似度,得到相似度矩阵;
根据所述相似度矩阵计算损失值。
7.根据权利要求6所述的方法,其特征在于,所述根据所述相似度矩阵计算损失值,包括:
确定所述相似度矩阵中第一个元素和最后一个元素;
将所述第一个元素和最后一个元素进行直线连接,得到元素线;
将所述元素线上的所有元素的相似度做和,得到第一总体相似度;
将所述相似度矩阵中剔除所述元素线上的所有元素剩余的元素的相似度做和,得到第二总体相似度;
将所述第二总体相似度与所述第一总体相似度的比值确定为损失值。
8.一种图像分类装置,其特征在于,所述装置包括:
图像获取模块,用于获取动态类别库和待识别图像;
类型描述文本生成模块,用于根据预设类型描述模板将所述动态类别库中的各类型关键词进行转换,生成多条类型描述文本;
余弦相似度输出模块,用于将所述多条类型描述文本与所述待识别图像输入到预先训练的图像分类模型中,输出所述待识别图像对应的多个余弦相似度;
类型确定模块,用于根据所述多个余弦相似度确定出所述待识别图像的最终类型;其中,
所述预先训练的图像分类模型是根据样本对训练生成的,每个样本对包括训练图像和图像描述文本。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项权利要求所述图像分类方法的步骤。
10.一种存储有计算机可读指令的介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至7中任一项权利要求所述图像分类的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210414376.1A CN114741581A (zh) | 2022-04-20 | 2022-04-20 | 一种图像分类方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210414376.1A CN114741581A (zh) | 2022-04-20 | 2022-04-20 | 一种图像分类方法、装置、计算机设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114741581A true CN114741581A (zh) | 2022-07-12 |
Family
ID=82283331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210414376.1A Pending CN114741581A (zh) | 2022-04-20 | 2022-04-20 | 一种图像分类方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114741581A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115080786A (zh) * | 2022-08-22 | 2022-09-20 | 科大讯飞股份有限公司 | 基于图片作诗的方法、装置、设备及存储介质 |
CN115186775A (zh) * | 2022-09-13 | 2022-10-14 | 北京远鉴信息技术有限公司 | 一种图像描述文字的匹配度检测方法、装置及电子设备 |
CN115796980A (zh) * | 2023-02-08 | 2023-03-14 | 广东申创光电科技有限公司 | 一种基于物联网的新型智慧城市大数据管理方法 |
WO2024183593A1 (zh) * | 2023-03-07 | 2024-09-12 | 北京字跳网络技术有限公司 | 一种图像分类方法、装置、电子设备及存储介质 |
-
2022
- 2022-04-20 CN CN202210414376.1A patent/CN114741581A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115080786A (zh) * | 2022-08-22 | 2022-09-20 | 科大讯飞股份有限公司 | 基于图片作诗的方法、装置、设备及存储介质 |
CN115186775A (zh) * | 2022-09-13 | 2022-10-14 | 北京远鉴信息技术有限公司 | 一种图像描述文字的匹配度检测方法、装置及电子设备 |
CN115186775B (zh) * | 2022-09-13 | 2022-12-16 | 北京远鉴信息技术有限公司 | 一种图像描述文字的匹配度检测方法、装置及电子设备 |
CN115796980A (zh) * | 2023-02-08 | 2023-03-14 | 广东申创光电科技有限公司 | 一种基于物联网的新型智慧城市大数据管理方法 |
CN115796980B (zh) * | 2023-02-08 | 2023-04-25 | 广东申创光电科技有限公司 | 一种基于物联网的新型智慧城市大数据管理方法 |
WO2024183593A1 (zh) * | 2023-03-07 | 2024-09-12 | 北京字跳网络技术有限公司 | 一种图像分类方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108804641B (zh) | 一种文本相似度的计算方法、装置、设备和存储介质 | |
US11899681B2 (en) | Knowledge graph building method, electronic apparatus and non-transitory computer readable storage medium | |
CN108829822B (zh) | 媒体内容的推荐方法和装置、存储介质、电子装置 | |
CN114741581A (zh) | 一种图像分类方法、装置、计算机设备及介质 | |
CN111539197A (zh) | 文本匹配方法和装置以及计算机系统和可读存储介质 | |
CN112085120B (zh) | 多媒体数据的处理方法、装置、电子设备及存储介质 | |
CN112989212B (zh) | 媒体内容推荐方法、装置和设备及计算机存储介质 | |
CN113761124B (zh) | 文本编码模型的训练方法、信息检索方法及设备 | |
CN113704623B (zh) | 一种数据推荐方法、装置、设备及存储介质 | |
CN110941698A (zh) | 一种基于bert下卷积神经网络的服务发现方法 | |
CN113515589B (zh) | 数据推荐方法、装置、设备以及介质 | |
CN114329029B (zh) | 对象检索方法、装置、设备及计算机存储介质 | |
CN111783903A (zh) | 文本处理方法、文本模型的处理方法及装置、计算机设备 | |
CN113392179A (zh) | 文本标注方法及装置、电子设备、存储介质 | |
CN114358109A (zh) | 特征提取模型训练、样本检索方法、装置和计算机设备 | |
CN118035945B (zh) | 一种标签识别模型的处理方法和相关装置 | |
CN117789099B (zh) | 视频特征提取方法及装置、存储介质及电子设备 | |
CN113761887A (zh) | 基于文本处理的匹配方法、装置、计算机设备和存储介质 | |
CN114003706A (zh) | 关键词组合生成模型训练方法及装置 | |
CN117312518A (zh) | 一种智能问答方法、装置、计算机设备及存储介质 | |
CN110516153B (zh) | 视频的智能推送方法和装置、存储介质及电子装置 | |
CN110209895A (zh) | 向量检索方法、装置和设备 | |
CN113010664B (zh) | 一种数据处理方法、装置及计算机设备 | |
CN114625986A (zh) | 对搜索结果进行排序的方法、装置、设备及存储介质 | |
CN115269961A (zh) | 内容搜索方法以及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |