CN113569081A - 图像识别方法、装置、设备及存储介质 - Google Patents
图像识别方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113569081A CN113569081A CN202110105220.0A CN202110105220A CN113569081A CN 113569081 A CN113569081 A CN 113569081A CN 202110105220 A CN202110105220 A CN 202110105220A CN 113569081 A CN113569081 A CN 113569081A
- Authority
- CN
- China
- Prior art keywords
- image
- neural network
- network model
- loss value
- processing
- 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
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/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Library & Information Science (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了图像识别方法、装置、设备及存储介质,应用于计算机应用技术领域,该方法包括:通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果,目标图像组包括至少一个图像;训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,总损失值由第一损失值和第二损失值确定,第一损失值通过神经网络模型对标注样本集群进行处理得到,第二损失值通过神经网络模型对无标注样本集群进行处理得到,标注样本集群包括一个或多个已标注的图像,无标注样本集群包括一个或多个未被标注的图像;若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,则输出目标图像,可以提高训练后的神经网络模型对图像识别的精准度。
Description
技术领域
本申请涉及计算机应用技术领域,尤其涉及图像识别方法、装置、设备及存储介质。
背景技术
计算机视觉技术(Computer Vision,CV)通常包括图像处理、图像识别、图像语义理解、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。图像识别可以包括图像检索和图像排重等,以图像排重为例,图像排重的能力依赖于用于表征图像的特征的好坏,以及该特征能覆盖的图像攻击能力等。但是,传统的训练后的神经网络模型对未覆盖数据的识别效果差,导致训练后的神经网络模型对图像识别的精准度较低。
发明内容
本发明实施例提供图像识别方法、装置、设备以及存储介质,可通过多任务学习使得训练后的神经网络模型具有覆盖全量数据的能力,从而提高训练后的神经网络模型对图像识别的精准度。
一方面,本发明实施例提供了一种图像识别方法,所述方法包括:
获取待识别图像;通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果,所述目标图像组包括至少一个图像;所述训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,所述总损失值由第一损失值和第二损失值确定,所述第一损失值通过所述神经网络模型对标注样本集群进行处理得到,所述第二损失值通过所述神经网络模型对无标注样本集群进行处理得到,所述标注样本集群包括一个或多个已标注的图像,所述无标注样本集群包括一个或多个未被标注的图像;
若所述匹配结果指示所述目标图像组中存在与所述待识别图像匹配的目标图像,则输出所述目标图像。
相应地,本发明实施例提供了一种图像识别装置,包括:
获取单元,用于获取待识别图像;
处理单元,用于通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果,所述目标图像组包括至少一个图像;所述训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,所述总损失值由第一损失值和第二损失值确定,所述第一损失值通过所述神经网络模型对标注样本集群进行处理得到,所述第二损失值通过所述神经网络模型对无标注样本集群进行处理得到,所述标注样本集群包括一个或多个已标注的图像,所述无标注样本集群包括一个或多个未被标注的图像;
输出单元,用于若所述匹配结果指示所述目标图像组中存在与所述待识别图像匹配的目标图像,则输出所述目标图像。
相应地,本发明实施例提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于运行所述计算机程序,实现如上述方面所述的图像识别方法。
相应地,本发明实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储计算机程序,所述计算机程序被处理器执行,用于实现前述图像识别方法。
相应地,本发明实施例提供了一种计算机程序产品或计算机程序,所述计算机程序产品或所述计算机程序包括计算机指令,所述计算机指令存储在计算机可读取存储介质中;处理器从所述计算机可读取存储介质中读取并运行所述计算机指令,用于执行上述图像识别方法。
本发明实施例中,训练后的神经网络模型是基于标注样本和无标注样本训练得到的,即通过神经网络模型对标注样本集群进行处理得到第一损失值,通过神经网络模型对无标注样本集群进行处理得到第二损失值,由第一损失值和第二损失值确定神经网络模型的总损失值,将总损失值回传到神经网络模型中,以对神经网络模型进行训练,得到训练后的神经网络模型,可实现通过多任务学习使得训练后的神经网络模型具有覆盖全量数据的能力。基于此,通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果,若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,则输出目标图像,可提高训练后的神经网络模型对图像识别的精准度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种模型训练的框架示意图;
图2为本发明实施例提供的一种图像识别方法的流程示意图;
图3为本发明实施例提供的一种确定困难标注三元组的流程示意图;
图4为本发明实施例提供的一种增强图像的示意图;
图5为本发明实施例提供的一种图像排重检索结果的示意图;
图6为本发明实施例提供的另一种图像识别方法的流程示意图;
图7为本发明实施例提供的一种图像识别装置的结构示意图;
图8为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本发明实施例中的附图对本发明实施例进行描述。
计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的图像识别技术,具体通过如下实施例进行说明:
本发明实施例提供的训练后的神经网络模型可以用于实现图像检索或者图像排重等图像识别。在一个实施例中,电子设备可以获取待识别图像,通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果,若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,则输出目标图像。在一个示例中,待识别图像可以为某张图像,目标图像组可以为指定图像库或者互联网中存在的图像所属的图像库,与待识别图像匹配的目标图像可以指的是:与待识别图像相同的目标图像,也就是说,待识别图像和目标图像为同一图像。例如,判断某张图像是否位于指定图像库中,或者某张图像是否位于互联网中,指定图像库可以为云端图像数据库或者使用该神经网络模型的设备在该设备中创建的图像数据库。在一个示例中,待识别图像可以为某张图像,目标图像组可以为指定图像库,与待识别图像匹配的目标图像可以指的是:与待识别图像关联的目标图像,也就是说,待识别图像和目标图像包含同一类对象,包含同一对象,包含同一背景,或者待识别图像是对目标图像进行图像增强处理后的增强图像,其中同一类对象指的是对象的类别相同,对象的类别可以为人、动物(可以细分为猫、狗或者鸟等类别)或建筑等。例如,判断某张图像是否为与指定图像库中任一图像关联的图像。在一个示例中,待识别图像可以为某张图像,目标图像组可以为指定视频数据,与待识别图像匹配的目标图像可以指的是:与待识别图像相同的目标图像。例如,判断某张图像是否位于指定视频数据中,以及某张图像位于指定视频数据中的哪一帧。在另一个实施例中,电子设备可以通过训练后的神经网络模型,获取目标图像组中各个图像的匹配结果,若匹配结果指示目标图像组中存在包含指定实例的图像,则输出包含指定实例的图像,指定实例可以指特定的对象,例如某个类别的对象,或者某个对象。在一个示例中,目标图像组可以为指定图像库或者互联网中存在的图像所属的图像库,例如,在指定图像库或者互联网中检索出包含指定实例的图像。其中,图像检索指的是:给定一个包含特定实例(例如特定目标、场景、建筑等)的查询图像,图像检索旨在从图像库或者互联网中找到包含相同实例的图像。图像排重指的是:给定一个图像,在图像库或者互联网中查找与该图像相同或者相似的图像。
本申请实施例提供的图像识别方法可以应用在电子设备中,电子设备可以为服务器、个人计算机(Personal Computer,PC)、智能手机或者平板电脑等设备。用于训练神经网络模型的电子设备和使用训练后的神经网络模型的设备可以为同一设备,也可以为不同设备,例如使用训练后的神经网络模型的设备可以为PC、智能手机、平板电脑、车载设备或者可穿戴设备等,又如可以是运行在该设备上的客户端使用训练后的神经网络模型,该客户端和上述服务器相对应。
本申请实施例提供的训练后的神经网络模型的训练过程是一种基于无监督数据自监督的特征兼容性图像嵌入(embedding)学习算法,根据所有无监督数据分析其分布并收集可信数据集进行自监督图像度量学习,从而把无标注数据特征加入网络学习中使模型支持全量数据的检索。具体实现中,电子设备可以获取标注样本集群和无标注样本集群,其中,标注样本集群包括一个或多个已标注的图像,无标注样本集群包括一个或多个未被标注的图像,通过神经网络模型对标注样本集群进行处理得到第一损失值,同时通过该神经网络模型对无标注样本集群进行处理得到第二损失值,然后由第一损失值和第二损失值确定上述神经网络模型的总损失值,将总损失值回传到上述神经网络模型中,以对上述神经网络模型进行训练,得到训练后的神经网络模型。也就是说,本申请实施例可以在度量学习数据的基础上,引入无标注数据,通过挖掘无监督数据并以半监督多任务联合更新的方式训练神经网络模型,实现模型对无监督样本的度量学习(metriclearning)更敏感,在无监督数据的检索攻击样本下,也能通过预先的无监督特征学习,有基础检出效果。换句话说,本申请实施例在metriclearning中引入无监督学习的多任务分支,提升特征embedding的语义抽取能力,保证了神经网络模型感知全局特征能力,同时依赖于深度学习算法(例如embedding学习算法),样本集群表征与挖掘不需要额外进行人力标注。
本申请实施例提供的训练后的神经网络模型的训练过程是一种半监督学习(SemiSupervised Learning,SSL)方法,SSL是一种机器学习方法,在训练过程中将少量标注样本与大量未标注样本结合在一起,实现对神经网络模型的训练。
以图1所示的模型训练的框架示意图为例,该框架是基于半监督的带语义度量学习的框架,训练过程中使用的样本包括监督数据(即标注样本集群)以及无监督数据(即未标注样本集群)。该框架包括有监督数据度量学习分支以及无监督数据度量学习分支。在有监督数据度量学习分支中,电子设备可以在监督数据中提取正常标注三元组与困难标注三元组,其中正常标注三元组的可信度高于困难标注三元组的可信度,然后使用神经网络模型对正常标注三元组进行处理得到正常标注三元组的预测结果,并根据正常标注三元组的预测结果计算得到正常损失值;同时使用神经网络模型对困难标注三元组进行处理得到困难标注三元组的预测结果,并根据困难标注三元组的预测结果计算得到困难损失值。在无监督数据度量学习分支中,电子设备可以在无监督数据中挖掘特征之间的距离较近的负样本,将负样本、正样本和锚样本组成三元组,锚样本即无监督数据中距离较远的样本,正样本即对锚样本进行图像增强处理后得到的增强图像,使用神经网络模型对上述三元组进行处理得到预测结果,并根据预测结果计算得到第四损失值;同时电子设备可以获取攻击样本,攻击样本即对各个无监督数据进行图像增强处理后得到的增强图像,无监督数据和攻击样本组成样本对,使用神经网络模型对上述样本对进行处理得到预测结果,并根据预测结果计算得到第五损失值。然后,电子设备可以根据正常损失值、困难损失值、第四损失值以及第五损失值,得到神经网络模型的总损失值,将总损失值回传到神经网络模型中,以对神经网络模型进行训练,得到训练后的神经网络模型。
基于图1所示的模型训练的框架示意图,请参见图2,图2是本发明实施例提供的一种图像识别方法的流程示意图,该方法包括但不限于如下步骤:
步骤S201:获取标注样本集群和无标注样本集群。
其中,标注样本集群包括一个或多个标注的图像,无标注样本集群包括一个或多个未被标注的图像。具体实现中,电子设备可以对神经网络模型进行至少一个时期(Epoch)的训练,每个时期可以包括至少一次训练。对于一次训练,电子设备可以从这次训练所属时期对应的训练集中获取一个批(Batch)数据,一个Batch数据可以包括一个标注样本集群和一个无标注样本集群。无标注样本集群所包含的图像数量总和与标注样本集群所包含的图像数量总和之间的比值为第二预设比例。第二预设比例为预先设定的数值,用户可通过电子设备对第二预设比例进行调整。例如,电子设备可以设置一个Batch数据所包含的图像数量总和,以及第二预设比例,然后电子设备可以基于第二预设比例和一个Batch数据所包含的图像数量总和,确定标注样本集群所包含的图像数量总和,以及无标注样本集群所包含的图像数量总和,进而基于标注样本集群所包含的图像数量总和在标注三元组集群中获取标注样本集群,并基于无标注样本集群所包含的图像数量总和在图像集群中获取无标注样本集群。其中,获取到的标注样本集群所包含的图像数量总和为上述确定得到的标注样本集群所包含的图像数量总和。获取到的无标注样本集群所包含的图像数量总和为上述确定得到的无标注样本集群所包含的图像数量总和。
在一个实施例中,第二预设比例为无标注样本集群所包含的图像数量总和与标注样本集群所包含的图像数量总和之间的比值,第二预设比例大于1,例如第二预设比例可以为10或者20等。基于此,在每一次训练过程中所使用的无标注图像的数量远大于有标注图像的数量,可实现在大量无标注样本和少量标注样本下,让神经网络模型习得覆盖全量特征(例如全量图像排重特征),以确保通过训练后的神经网络模型对未标注数据也有图像识别能力。
Epoch:指的是使用训练集中的全部数据对神经网络模型进行一次完整的训练,被称之为“一代训练”,即一个时期的训练。
Batch:指的是使用训练集中的一小部分样本对神经网络模型的参数进行一次更新,这一小部分样本被称为“一批数据”。
Iteration:指的是使用一个Batch数据对神经网络模型的参数进行一次更新的过程,被称之为“一次训练”。
不同Batch数据中的标注样本集群是在不同标注三元组集群中采样得到的,同时,不同Batch数据中的无标注样本集群是在不同图像集群中采样得到的。图像集群和标注三元组集群可以是在原始数据中获取的,例如原始数据可以是基于ImageNet得到的,其中ImageNet为通用物体识别开源数据集,ImageNet包括若干图像。示例性的,图像集群可以包括bs个图像,标注三元组集群可以包括5*bs个三元组。在本申请实施例中,为了确保能够在标注三元组集群中采样得到困难标注三元组,电子设备设置标注三元组集群所包含的图像数量总和远远大于图像集群所包含的图像数量总和。
图像集群包含的所有图像均是未被用户标注的图像。而标注三元组集群包含的所有三元组,均为标注三元组。例如,用户可以对原始数据中的部分图像进行标注,得到全量图像,然后电子设备可以对全量图像进行度量学习标注,得到标注三元组,并生成包含上述标注三元组的标注三元组集群。度量学习标注:指的是从全量图像中选出符合规则的3张图像,组成三元组(anchor,positive,negative),其中锚(anchor)和正(positive)为相似类别图像或相同类别图像,anchor和负(negative)为不相似类别图像或不同类别图像。
在一个实施例中,标注样本集群可以包括多个正常标注三元组和多个困难标注三元组,各个标注三元组包括第一目标图像,相似图像以及不相似图像,第一目标图像为标注三元组集群中用户标注的任一图像,相似图像为标注三元组集群中用户标注的与第一目标图像之间的相似度最大的图像,不相似图像为标注三元组集群中用户标注的与第一目标图像之间的相似度最小的图像。
在一个实施例中,电子设备可以通过神经网络模型分别对标注三元组集群中的各个标注三元组进行处理得到第三特征值,并通过第一预设损失函数对各个第三特征值进行处理得到第三损失值,在标注三元组集群中选取多个正常标注三元组和多个困难标注三元组,其中,任一正常标注三元组的损失值均小于任一困难标注三元组的损失值。换句话说,正常标注三元组的损失值小于困难标注三元组的损失值,表明正常标注三元组的可信度高于困难标注三元组的可信度。其中,多个正常标注三元组的数量与多个困难标注三元组的数量的比值为第一预设比例。
在一个实施例中,电子设备在标注三元组集群中选取多个正常标注三元组和多个困难标注三元组的方式可以为:电子设备在通过第一预设损失函数对各个第三特征值进行处理得到第三损失值之后,可以对所有第三损失值进行平均运算,得到平均损失值,然后在第三损失值小于或等于平均损失值的标注三元组中选取多个正常标注三元组,并在第三损失值大于平均损失值的标注三元组中选取多个困难标注三元组,其中,困难标注三元组的第三损失值大于其他标注三元组的第三损失值,其他标注三元组为第三损失值大于平均损失值的标注三元组中除困难标注三元组以外的标注三元组。
在另一个实施例中,电子设备在标注三元组集群中选取多个正常标注三元组和多个困难标注三元组的方式可以为:电子设备在通过第一预设损失函数对各个第三特征值进行处理得到第三损失值之后,可以按照损失值从大到小的顺序对标注三元组集群中的所有标注三元组进行排序,在排序后的标注三元组的中按照从左向右的顺序依次选取多个正常标注三元组,并在排序后的标注三元组的中按照从右向左的顺序依次选取多个困难标注三元组。
具体实现中,电子设备在确定标注样本集群所包含的标注三元组的数量总和之后,可以根据标注样本集群所包含的标注三元组的数量总和,以及第一预设比例,确定正常标注三元组的数量总和,以及困难标注三元组的数量总和。以图3所示的确定困难标注三元组的流程示意图为例,S301,电子设备可以度量学习得到标注三元组集群。S302,电子设备可以采用神经网络模型获取标注三元组集群中标注三元组的预测结果。具体地,电子设备可以通过神经网络模型分别对标注三元组集群中的各个标注三元组进行处理得到第三特征值。S303,电子设备可以根据各个标注三元组的预测结果计算各个标注三元组的损失值。例如,电子设备可以通过第一预设损失函数对各个第三特征值进行处理得到第三损失值。S304,若损失值极大则采样作为困难标注三元组。具体地,电子设备可以对所有第三损失值进行平均运算,得到平均损失值,然后在第三损失值小于或等于平均损失值的标注三元组中选取正常标注三元组,选取的正常标注三元组的数量总和为上述确定的正常标注三元组的数量总和。并在第三损失值大于平均损失值的标注三元组中选取困难标注三元组,选取的困难标注三元组的数量总和为上述确定的困难标注三元组的数量总和。例如,假设标注三元组集群包括5*bs个三元组,第一预设比例为4:1,那么电子设备可以在第三损失值小于或等于平均损失值的标注三元组中选取4*bs个正常标注三元组,并在第三损失值大于平均损失值的标注三元组中选取bs个困难标注三元组。S305,电子设备可以计算困难标注三元组的损失值,即困难损失值。
本申请实施例引入困难标注三元组,分别通过正常标注三元组获取正常损失值,并通过困难标注三元组获取困难损失值,可避免在无监督学习过程中混淆两个不同的图像,例如避免通过无监督学习将两个不同的图像识别为相似图像或者同一图像。
其中,电子设备将标注三元组集群中的标注三元组输入至神经网络模型,神经网络模型的pool_cr层的输出为第三特征值,例如(Xa,Xp,Xn)。第三损失值即通过第一预设损失函数对第三特征值进行处理得到的损失值。pool_cr层的输出可以为图像检索结果或者图像排重结果,取决于神经网络模型实现的业务需求,例如业务需求为图像检索,则pool_cr层的输出为图像检索结果;又如业务需求为图像排重,则pool_cr层的输出为图像排重结果。
示例性的,第一预设损失函数的计算公式可以如下所示:
Ltri=max(||Xa-Xp||-||Xa-Xn||+α,0) (1)
其中,Ltri表示通过第一预设损失函数处理得到的损失值,Xa表示神经网络模型对标注三元组中的第一目标图像进行处理得到的特征值,Xp表示神经网络模型对标注三元组中的相似图像进行处理得到的特征值,Xn表示神经网络模型对标注三元组中的不相似图像进行处理得到的特征值,α表示两个图像之间的距离,例如α可以设置为0.2,则第一预设损失函数的目的是使得第一目标图像与不相似图像之间的距离,与第一目标图像与相似图像之间的距离之间的差值大于0.2。
在一个实施例中,无标注样本集群可以包括多个样本对,各个样本对包括第二目标图像以及增强图像,第二目标图像为图像集群中的任一图像,增强图像为对第二目标图像进行图像增强处理后得到的图像。例如,电子设备可以对第二目标图像进行以下处理方式的一种或者多种组合:增加高斯噪声,椒盐噪声,裁剪,旋转,加水印,色调变换,上下翻转,左右翻转,加黑框等。样本对的数量总和可以为图像集群所包含的图像数量总和。示例性的,增强图像可以如图4所示。
在一个实施例中,无标注样本集群可以包括多个样本对以及多个三元组,各个三元组包括锚样本、正样本以及负样本,其中负样本为图像集群中相似度位于预设比例范围内的图像,正样本为对图像集群中相似度小于预设比例范围的最小值的图像进行图像增强处理后得到的图像,锚样本为图像集群中相似度小于预设比例范围的最小值的图像。
例如,预设比例范围的最小值可以为一次训练的自适应阈值。预设比例范围的最大值可以为设定的上限,例如90%,相似度超过90%,表明两个图像为同一图像。
电子设备可以对图像集群中的所有图像进行两两相似度计算,即将图像集群中的每两个图像进行相似度计算,获取相似度大于或等于预设比例范围的最小值的图像,然后在获取的图像中过滤掉相似度大于预设比例范围的最大值的图像,并将过滤后的图像作为负样本。电子设备还可以获取相似度小于预设比例范围的最小值的图像,并将获取的图像作为锚样本。然后对获取的图像进行图像增强处理,将图像增强处理后得到的图像作为正样本。
步骤S202:通过神经网络模型对标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对第一特征值进行处理得到第一损失值。
具体实现中,电子设备获取到标注样本集群之后,可以通过神经网络模型对标注样本集群所包含的各个标注三元组进行处理得到第一特征值,并通过第一预设损失函数对各个第一特征值进行处理得到第一损失值。
在一个实施例中,如果标注样本集群包括多个正常标注三元组和多个困难标注三元组,那么第一损失值可以包括正常损失值和困难损失值。在此基础上,电子设备可以通过神经网络模型对各个正常标注三元组进行处理得到正常特征值,并通过第一预设损失函数对各个正常特征值进行处理得到正常损失值。电子设备还可以通过神经网络模型对各个困难标注三元组进行处理得到困难特征值,并通过第一预设损失函数对各个困难特征值进行处理得到困难损失值。其中,第一预设损失函数可以如公式(1)所示。
步骤S203:通过神经网络模型对无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到第二损失值。
具体实现中,电子设备获取到无标注样本集群之后,可以通过神经网络模型对无标注样本集群所包含的各个无标注样本进行处理得到第二特征值,并通过第二预设损失函数对各个第二特征值进行处理得到第二损失值。
在一个实施例中,如果无标注样本集群包括样本对,那么第二损失值可以包括采样特征值和增强特征值。在此基础上,电子设备可以通过神经网络模型对各个第二目标图像进行处理,得到采样特征值,通过神经网络模型对各个增强图像进行处理,得到增强特征值,通过第二预设损失函数对各个采样特征值和各个增强特征值进行处理,得到第二损失值。
其中,电子设备将样本对中的第二目标图像输入至神经网络模型,神经网络模型的Fc_cr层的输出为采样特征值。电子设备将样本对中的增强图像输入至神经网络模型,神经网络模型的Fc_cr层的输出为增强特征值。第二损失值即通过第二预设损失函数对采样特征值或增强特征值进行处理得到的损失值。Fc_cr层的输出可以为图像识别结果,图像识别即类别的识别,即识别出图像中对象的类别。
在一个实施例中,神经网络模型至少可以包括5个卷积层,第一个卷积层至第五个卷积层可以采用在ImageNet数据集上预训练的ResNet101的参数,新添加的卷积层如Fc层可以采用方差为0.01,均值为0的高斯分布进行初始化。在对神经网络模型进行初始化之后,可以执行步骤S201至步骤S205。
在另一个实施例中,本申请实施例包含但不限定于使用上述网络结构以及预训练模型权重,例如可以采用在open-image数据集上预训练的参数。
示例性的,第二预设损失函数的计算公式可以如下所示:
其中,DKL(pq)表示通过第二预设损失函数处理得到的损失值,p(xi)表示采样特征值,q(xi)表示增强特征值,N表示样本对的数量。
在该实施例中,无标注样本集群可以仅包括样本对,若标注样本集群不在全局数据分布中均衡采样,将导致难以区分各个无监督数据的特征,因此在无标注样本集群仅包括样本对的情况下,标注样本集群中的标注三元组是均衡采样得到的。
在一个实施例中,无标注样本集群可以包括多个样本对和多个三元组,每个三元组包括锚样本、正样本以及负样本。电子设备可以通过神经网络模型对各个三元组进行处理,得到第四特征值,通过第一预设损失函数对各个第四特征值进行处理,得到第二损失值。第一预设损失函数可以如公式(1)所示。
也就是说,在无标注样本集群包括多个样本对和多个三元组的情况下,第二损失值的数量为两个,分别包括通过多个样本对得到的第二损失值,以及通过多个三元组得到的第二损失值。
本申请实施例可通过极大限度利用无标注样本集群学习全量特征。且在学习中对无监督数据进行带攻击学习,使得训练后的神经网络模型在未见过的攻击中也有一定的召回效果,有较好的对无监督样本的攻击图的检索能力。另外,本申请实施例在全量数据中筛选出无监督数据度量学习任务的有效正负样本,可保证无监督数据对神经网络模型的正确引导。
步骤S204:根据第一损失值和第二损失值得到神经网络模型的总损失值。
具体实现中,电子设备可以对第一损失值和第二损失值进行算术运算,得到神经网络模型的总损失值。电子设备还可以通过预设函数对第一损失值和第二损失值进行处理,得到神经网络模型的总损失值,其中预设函数为以第一损失值和第二损失值为自变量的公式。
在一个实施例中,如果标注样本集群包括多个正常标注三元组和多个困难标注三元组,无标注样本集群包括多个样本对,那么第一损失值包括正常损失值和困难损失值,第二损失值是通过多个样本对得到的损失值,电子设备可以对正常损失值、困难损失值和第二损失值进行加权求和得到神经网络模型的总损失值。
在一个实施例中,如果标注样本集群包括多个正常标注三元组和多个困难标注三元组,无标注样本集群包括多个样本对和多个三元组,那么第一损失值包括正常损失值和困难损失值,第二损失值的数量为两个,包括通过多个样本对得到的损失值,以及通过多个三元组得到的损失值,电子设备可以对正常损失值、困难损失值和两个第二损失值进行加权求和得到神经网络模型的总损失值。
示例性的,神经网络模型的总损失值的计算公式可以如下所示:
Ltotal=W1Lsupervised-triplet+W2Lsupervised-hard-triplet+W3Lkl+W4Ltriplet (3)
其中,Ltotal表示神经网络模型的总损失值,Lsupervised-triplet表示正常损失值,W1表示正常损失值的权重,Lsupervised-hard-triplet表示困难损失值,W2表示困难损失值的权重,Lkl表示对多个样本对进行处理得到的第二损失值,W3表示对多个样本对进行处理得到的第二损失值的权重,Ltriplet表示对多个三元组进行处理得到的第二损失值,W4表示对多个三元组进行处理得到的第二损失值的权重。
本申请实施例中的算术运算方法包含但不限定于加权求和算法,例如可以是加权平均算法或者算术平均法等。
步骤S205:将总损失值回传到神经网络模型中,以对神经网络模型进行训练,得到训练后的神经网络模型。
在一个实施例中,电子设备可以将总损失值回传到神经网络模型中,并通过预设优化器算法对神经网络模型的卷积模板参数和偏置参数进行更新,以对神经网络模型进行一次训练,然后迭代执行获取标注样本集群和无标注样本集群,直至对神经网络模型进行预设数量个时期的训练,得到训练后的神经网络模型,其中,各个时期包括至少一次训练。预设数量可以是电子设备设置的,用户也可以对预设数量进行调整。
示例性的,预设优化器算法可以包括随机最速下降法(Stochastic GradientDescent,SGD)或者小批量梯度下降法(Mini-Batch Gradient Descent,MBGD)等,具体不受本申请实施例的限制。以SGD为例,电子设备可以把神经网络模型的所有参数都设为需要学习状态,在每次迭代过程中,将总损失值反向传播到神经网络模型,计算梯度,并基于梯度更新神经网络模型的参数。
以图5所示的图像排重检索结果的示意图为例,若神经网络模型的业务需求是图像排重检索,那么将指定图像输入至训练后的神经网络模型之后,训练后的神经网络模型的输出可以如图5所示,其中图5中的第一张图像可以为指定图像,后续图像可以是检索出的与指定图像匹配的图像,其中后续图像可以按与指定图像之间的相似度从大到小的顺序排列。
在本发明实施例中,可通过多任务学习使得训练后的神经网络模型具有覆盖全量数据的能力,避免因数据标注有限导致图像识别效果差,从而提高训练后的神经网络模型对图像识别的精准度。
基于图2所示的图像识别方法的流程示意图,请参见图6,图6是本发明实施例提供的另一种图像识别方法的流程示意图,该方法包括但不限于如下步骤:
步骤S601:获取待识别图像。
待识别图像可以是电子设备从电子设备的本地存储器或者云端获取到的,也可以是电子设备响应用户的搜索操作从互联网下载得到的,也可以是电子设备从其他设备中接收到的,具体不受本申请实施例的限制。
以图5所示的图像排重检索结果的示意图为例,图5中的第一张图像可以为待识别图像。
步骤S602:通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果。
电子设备可以将待识别图像输入至训练后的神经网络模型,通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果,匹配结果用于指示目标图像组中是否存在与待识别图像匹配的目标图像。
其中,目标图像组可以包括至少一个图像。例如,目标图像组可以为指定图像库或者互联网中存在的图像所属的图像库,等等。
步骤S603:若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,则输出目标图像。
若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,那么可以通过训练后的神经网络模型输出目标图像,或者输出目标图像的图像标识,该图像标识可以用于指示目标图像在目标图像组中的位置。
以图5为例,图5中的第一张图像可以为待识别图像,后续图像可以是通过训练后的神经网络模型输出的与待识别图像匹配的目标图像,其中目标图像可以按与待识别图像之间的相似度从大到小的顺序排列。
例如,假设目标图像组为指定视频数据,那么通过训练后的神经网络模型的输出可以为目标图像,或者目标图像的图像标识,图像标识可以用于指示目标图像位于指定视频数据中的哪一帧。
步骤S604:若匹配结果指示目标图像组中不存在与待识别图像匹配的目标图像,则输出提示信息,提示信息用于指示目标图像组中不存在与待识别图像匹配的目标图像。
若匹配结果指示目标图像组中不存在与待识别图像匹配的目标图像,电子设备可以不通过训练后的神经网络模型输出任何图像。或者电子设备可以通过训练后的神经网络模型输出提示信息,提示信息用于指示目标图像组中不存在与待识别图像匹配的目标图像。
在本发明实施例中,通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果,若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,则输出目标图像,若匹配结果指示目标图像组中不存在与待识别图像匹配的目标图像,则输出提示信息,可提高图像识别的精准度。
再请参见图7,是本发明实施例的一种图像识别装置,该图像识别装置可以设置在上述提及的电子设备中,所述图像识别装置70包括如下单元。
获取单元701,用于获取待识别图像;
处理单元702,用于通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果,所述目标图像组包括至少一个图像;所述训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,所述总损失值由第一损失值和第二损失值确定,所述第一损失值通过所述神经网络模型对标注样本集群进行处理得到,所述第二损失值通过所述神经网络模型对无标注样本集群进行处理得到,所述标注样本集群包括一个或多个已标注的图像,所述无标注样本集群包括一个或多个未被标注的图像;
输出单元703,用于若所述匹配结果指示所述目标图像组中存在与所述待识别图像匹配的目标图像,则输出所述目标图像。
在一个实施例中,处理单元702,还用于在通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果之前,通过所述神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到所述第一损失值;通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到所述第二损失值;根据所述第一损失值和所述第二损失值得到所述神经网络模型的总损失值;将所述总损失值回传到所述神经网络模型中,以对所述神经网络模型进行训练,得到所述训练后的神经网络模型
在一个实施例中,所述标注样本集群包括多个正常标注三元组和多个困难标注三元组,各个所述标注三元组包括第一目标图像,相似图像以及不相似图像,所述第一目标图像为标注三元组集群中用户标注的任一图像,所述相似图像为所述标注三元组集群中用户标注的与所述第一目标图像之间的相似度最大的图像,所述不相似图像为所述标注三元组集群中用户标注的与所述第一目标图像之间的相似度最小的图像;所述第一损失值包括正常损失值和困难损失值;
所述处理单元702通过神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到第一损失值,包括:
通过所述神经网络模型对各个所述正常标注三元组进行处理得到正常特征值,并通过所述第一预设损失函数对各个所述正常特征值进行处理得到正常损失值;
通过所述神经网络模型对各个所述困难标注三元组进行处理得到困难特征值,并通过所述第一预设损失函数对各个所述困难特征值进行处理得到困难损失值。
在一个实施例中,所述处理单元702,还用于在通过神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到第一损失值之前,通过所述神经网络模型分别对所述标注三元组集群中的各个标注三元组进行处理得到第三特征值,并通过所述第一预设损失函数对各个所述第三特征值进行处理得到第三损失值;在所述标注三元组集群中选取所述多个正常标注三元组和所述多个困难标注三元组,其中,任一正常标注三元组的损失值均小于任一困难标注三元组的损失值,所述多个正常标注三元组的数量与所述多个困难标注三元组的数量的比值为第一预设比例。
在一个实施例中,所述无标注样本集群包括多个第一样本对,各个所述第一样本对包括第二目标图像以及增强图像,所述第二目标图像为图像集群中的任一图像,所述增强图像为对所述第二目标图像进行图像增强处理后得到的图像;
所述处理单元702通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到第二损失值,包括:
通过所述神经网络模型对各个所述第二目标图像进行处理,得到采样特征值;
通过所述神经网络模型对各个所述增强图像进行处理,得到增强特征值;
通过所述第二预设损失函数对各个所述采样特征值和各个所述增强特征值进行处理,得到所述第二损失值。
在一个实施例中,所述无标注样本集群还包括多个三元组,各个所述三元组包括锚样本、正样本以及负样本,所述负样本为所述图像集群中相似度位于预设比例范围内的图像,所述锚样本为图像集群中相似度小于预设比例范围的最小值的图像,所述正样本为对所述锚样本进行图像增强处理后得到的图像;
所述处理单元702通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到第二损失值,还包括:
通过所述神经网络模型对各个所述三元组进行处理,得到第四特征值;
通过所述第一预设损失函数对各个所述四特征值进行处理,得到所述第二损失值。
在一个实施例中,所述无标注样本集群所包含的图像数量总和与所述标注样本集群所包含的图像数量总和之间的比值为第二预设比例,所述第二预设比例大于1。
在一个实施例中,所述处理单元702将所述总损失值回传到所述神经网络模型中,以对所述神经网络模型进行训练,得到训练后的神经网络模型,包括:
将所述总损失值回传到所述神经网络模型中,并通过预设优化器算法对所述神经网络模型的卷积模板参数和偏置参数进行更新,以对所述神经网络模型进行一次训练;
迭代执行所述获取标注样本集群和无标注样本集群,直至对所述神经网络模型进行预设数量个时期的训练,得到所述训练后的神经网络模型,其中,各个所述时期包括至少一次训练。
本发明实施例中所述装置70包括的所述获取单元701、所述处理单元702以及所述输出单元703的具体实现可参考前述方法实施例中相关内容的描述,在此不赘述。
本发明实施例中,处理单元702通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果,若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,则输出单元703输出目标图像,其中训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,总损失值由第一损失值和第二损失值确定,第一损失值通过神经网络模型对标注样本集群进行处理得到,第二损失值通过神经网络模型对无标注样本集群进行处理得到,可实现通过多任务学习使得训练后的神经网络模型具有覆盖全量数据的能力,从而提高训练后的神经网络模型对图像识别的精准度。
再请参见图8,是本发明实施例的一种电子设备的结构示意图,本发明实施例的所述电子设备可以是指服务器、智能手机、平板电脑或者PC等设备,所述电子设备80包括存储器801、处理器802和网络接口803,还可以包括用户接口804以及通信接口805,同时,还可以包括供电电源、各种所需的壳体结构等等。
所述网络接口803能够保证电子设备80通过计算机网络和移动通信网络接入到互联网、各种服务器中。
处理器802可以是中央处理器(Central Processing Unit,CPU)。处理器802还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(Applicatio n-SpecificIntegrated Circuit,ASIC),可编程逻辑器件(Programmable Logic D evice,PLD)等。上述PLD可以是现场可编程逻辑门阵列(Field-Programmabl e Gate Array,FPGA),通用阵列逻辑(Generic Array Logic,GAL)等。
存储器801可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random-Access Memory,RAM);存储器801也可以包括非易失性存储器(Non-VolatileMemory),例如快闪存储器(Flash Memory),固态硬盘(Solid-State Drive,SSD)等;存储器801还可以包括上述种类的存储器的组合。
存储器801用于存储计算机程序,处理器802用于执行计算机指令,从而实现前述实施例中相应的方法流程或相应功能。
在一个实施例中,所述网络接口803,调用所述存储器801中存储的计算机程序,用于获取待识别图像;
所述处理器802,调用所述存储器801中存储的计算机程序,用于通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果,所述目标图像组包括至少一个图像;所述训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,所述总损失值由第一损失值和第二损失值确定,所述第一损失值通过所述神经网络模型对标注样本集群进行处理得到,所述第二损失值通过所述神经网络模型对无标注样本集群进行处理得到,所述标注样本集群包括一个或多个已标注的图像,所述无标注样本集群包括一个或多个未被标注的图像;
所述网络接口803,调用所述存储器801中存储的计算机程序,用于若所述匹配结果指示所述目标图像组中存在与所述待识别图像匹配的目标图像,则输出所述目标图像。
在一个实施例中,所述处理器802在通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果之前,还用于执行如下操作:
通过所述神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到所述第一损失值;
通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到所述第二损失值;
根据所述第一损失值和所述第二损失值得到所述神经网络模型的总损失值;
将所述总损失值回传到所述神经网络模型中,以对所述神经网络模型进行训练,得到所述训练后的神经网络模型。
在一个实施例中,所述标注样本集群包括多个正常标注三元组和多个困难标注三元组,各个所述标注三元组包括第一目标图像,相似图像以及不相似图像,所述第一目标图像为标注三元组集群中用户标注的任一图像,所述相似图像为所述标注三元组集群中用户标注的与所述第一目标图像之间的相似度最大的图像,所述不相似图像为所述标注三元组集群中用户标注的与所述第一目标图像之间的相似度最小的图像;所述第一损失值包括正常损失值和困难损失值;
所述处理器802通过神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到第一损失值,包括:
通过所述神经网络模型对各个所述正常标注三元组进行处理得到正常特征值,并通过所述第一预设损失函数对各个所述正常特征值进行处理得到正常损失值;
通过所述神经网络模型对各个所述困难标注三元组进行处理得到困难特征值,并通过所述第一预设损失函数对各个所述困难特征值进行处理得到困难损失值。
在一个实施例中,所述处理器802,还用于在通过神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到第一损失值之前,通过所述神经网络模型分别对所述标注三元组集群中的各个标注三元组进行处理得到第三特征值,并通过所述第一预设损失函数对各个所述第三特征值进行处理得到第三损失值;在所述标注三元组集群中选取所述多个正常标注三元组和所述多个困难标注三元组,其中,任一正常标注三元组的损失值均小于任一困难标注三元组的损失值,所述多个正常标注三元组的数量与所述多个困难标注三元组的数量的比值为第一预设比例。
在一个实施例中,所述无标注样本集群包括多个第一样本对,各个所述第一样本对包括第二目标图像以及增强图像,所述第二目标图像为图像集群中的任一图像,所述增强图像为对所述第二目标图像进行图像增强处理后得到的图像;
所述处理器802通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到第二损失值,包括:
通过所述神经网络模型对各个所述第二目标图像进行处理,得到采样特征值;
通过所述神经网络模型对各个所述增强图像进行处理,得到增强特征值;
通过所述第二预设损失函数对各个所述采样特征值和各个所述增强特征值进行处理,得到所述第二损失值。
在一个实施例中,所述无标注样本集群还包括多个三元组,各个所述三元组包括锚样本、正样本以及负样本,所述负样本为所述图像集群中相似度位于预设比例范围内的图像,所述锚样本为图像集群中相似度小于预设比例范围的最小值的图像,所述正样本为对所述锚样本进行图像增强处理后得到的图像;
所述处理器802通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到第二损失值,还包括:
通过所述神经网络模型对各个所述三元组进行处理,得到第四特征值;
通过所述第一预设损失函数对各个所述四特征值进行处理,得到所述第二损失值。
在一个实施例中,所述无标注样本集群所包含的图像数量总和与所述标注样本集群所包含的图像数量总和之间的比值为第二预设比例,所述第二预设比例大于1。
在一个实施例中,所述处理器802将所述总损失值回传到所述神经网络模型中,以对所述神经网络模型进行训练,得到训练后的神经网络模型,包括:
将所述总损失值回传到所述神经网络模型中,并通过预设优化器算法对所述神经网络模型的卷积模板参数和偏置参数进行更新,以对所述神经网络模型进行一次训练;
迭代执行所述获取标注样本集群和无标注样本集群,直至对所述神经网络模型进行预设数量个时期的训练,得到所述训练后的神经网络模型,其中,各个所述时期包括至少一次训练。
本发明实施例中所述处理器802、网络接口803的具体实现可参考前述方法实施例中相关内容的描述,在此不赘述。
本发明实施例中,处理器802通过训练后的神经网络模型,获取待识别图像在目标图像组中的匹配结果,若匹配结果指示目标图像组中存在与待识别图像匹配的目标图像,则网络接口803输出目标图像,其中训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,总损失值由第一损失值和第二损失值确定,第一损失值通过神经网络模型对标注样本集群进行处理得到,第二损失值通过神经网络模型对无标注样本集群进行处理得到,可实现通过多任务学习使得训练后的神经网络模型具有覆盖全量数据的能力,从而提高训练后的神经网络模型对图像识别的精准度。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读取存储介质中。计算机设备的处理器从计算机可读取存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图像识别方法。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的单元可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,可读存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
以上所揭露的仅为本发明的部分实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (10)
1.一种图像识别方法,其特征在于,所述方法包括:
获取待识别图像;通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果,所述目标图像组包括至少一个图像;所述训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,所述总损失值由第一损失值和第二损失值确定,所述第一损失值通过所述神经网络模型对标注样本集群进行处理得到,所述第二损失值通过所述神经网络模型对无标注样本集群进行处理得到,所述标注样本集群包括一个或多个已标注的图像,所述无标注样本集群包括一个或多个未被标注的图像;
若所述匹配结果指示所述目标图像组中存在与所述待识别图像匹配的目标图像,则输出所述目标图像。
2.如权利要求1所述的方法,其特征在于,所述通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果之前,还包括:
通过所述神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到所述第一损失值;
通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到所述第二损失值;
根据所述第一损失值和所述第二损失值得到所述神经网络模型的总损失值;
将所述总损失值回传到所述神经网络模型中,以对所述神经网络模型进行训练,得到所述训练后的神经网络模型。
3.如权利要求2所述的方法,其特征在于,所述标注样本集群包括多个正常标注三元组和多个困难标注三元组,各个所述标注三元组包括第一目标图像,相似图像以及不相似图像,所述第一目标图像为标注三元组集群中用户标注的任一图像,所述相似图像为所述标注三元组集群中用户标注的与所述第一目标图像之间的相似度最大的图像,所述不相似图像为所述标注三元组集群中用户标注的与所述第一目标图像之间的相似度最小的图像,所述正常标注三元组的可信度高于所述困难标注三元组的可信度;所述第一损失值包括正常损失值和困难损失值;
所述通过所述神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到所述第一损失值,包括:
通过所述神经网络模型对各个所述正常标注三元组进行处理得到正常特征值,并通过所述第一预设损失函数对各个所述正常特征值进行处理得到正常损失值;
通过所述神经网络模型对各个所述困难标注三元组进行处理得到困难特征值,并通过所述第一预设损失函数对各个所述困难特征值进行处理得到困难损失值。
4.如权利要求3所述的方法,其特征在于,所述通过所述神经网络模型对所述标注样本集群进行处理得到第一特征值,并通过第一预设损失函数对所述第一特征值进行处理得到所述第一损失值之前,还包括:
通过所述神经网络模型分别对所述标注三元组集群中的各个标注三元组进行处理得到第三特征值,并通过所述第一预设损失函数对各个所述第三特征值进行处理得到第三损失值;
在所述标注三元组集群中选取所述多个正常标注三元组和所述多个困难标注三元组,其中,任一正常标注三元组的损失值均小于任一困难标注三元组的损失值,所述多个正常标注三元组的数量与所述多个困难标注三元组的数量的比值为第一预设比例。
5.如权利要求2所述的方法,其特征在于,所述无标注样本集群包括多个第一样本对,各个所述第一样本对包括第二目标图像以及增强图像,所述第二目标图像为图像集群中的任一图像,所述增强图像为对所述第二目标图像进行图像增强处理后得到的图像;
所述通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到所述第二损失值,包括:
通过所述神经网络模型对各个所述第二目标图像进行处理,得到采样特征值;
通过所述神经网络模型对各个所述增强图像进行处理,得到增强特征值;
通过所述第二预设损失函数对各个所述采样特征值和各个所述增强特征值进行处理,得到所述第二损失值。
6.如权利要求5所述的方法,其特征在于,所述无标注样本集群还包括多个三元组,各个所述三元组包括锚样本、正样本以及负样本,所述负样本为所述图像集群中相似度位于预设比例范围内的图像,所述锚样本为图像集群中相似度小于所述预设比例范围的最小值的图像,所述正样本为对所述锚样本进行图像增强处理后得到的图像;
所述通过所述神经网络模型对所述无标注样本集群进行处理得到第二特征值,并通过第二预设损失函数对所述第二特征值进行处理得到第二损失值,还包括:
通过所述神经网络模型对各个所述三元组进行处理,得到第四特征值;
通过所述第一预设损失函数对各个所述四特征值进行处理,得到所述第二损失值。
7.如权利要求2-6任一项所述的方法,其特征在于,所述将所述总损失值回传到所述神经网络模型中,以对所述神经网络模型进行训练,得到所述训练后的神经网络模型,包括:
将所述总损失值回传到所述神经网络模型中,并通过预设优化器算法对所述神经网络模型的卷积模板参数和偏置参数进行更新,以对所述神经网络模型进行一次训练;
迭代执行所述获取标注样本集群和无标注样本集群,直至对所述神经网络模型进行预设数量个时期的训练,得到所述训练后的神经网络模型,其中,各个所述时期包括至少一次训练。
8.如权利要求1-6任一项所述的方法,其特征在于,所述无标注样本集群所包含的图像数量总和与所述标注样本集群所包含的图像数量总和之间的比值为第二预设比例,所述第二预设比例大于1。
9.一种图像识别装置,其特征在于,所述装置包括:
获取单元,用于获取待识别图像;
处理单元,用于通过训练后的神经网络模型,获取所述待识别图像在目标图像组中的匹配结果,所述目标图像组包括至少一个图像;所述训练后的神经网络模型是根据神经网络模型的总损失值训练得到的,所述总损失值由第一损失值和第二损失值确定,所述第一损失值通过所述神经网络模型对标注样本集群进行处理得到,所述第二损失值通过所述神经网络模型对无标注样本集群进行处理得到,所述标注样本集群包括一个或多个已标注的图像,所述无标注样本集群包括一个或多个未被标注的图像;
输出单元,用于若所述匹配结果指示所述目标图像组中存在与所述待识别图像匹配的目标图像,则输出所述目标图像。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储计算机程序,所述计算机程序被处理器执行,用于实现如权利要求1-8中任一项所述的图像识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110105220.0A CN113569081A (zh) | 2021-01-26 | 2021-01-26 | 图像识别方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110105220.0A CN113569081A (zh) | 2021-01-26 | 2021-01-26 | 图像识别方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113569081A true CN113569081A (zh) | 2021-10-29 |
Family
ID=78161022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110105220.0A Pending CN113569081A (zh) | 2021-01-26 | 2021-01-26 | 图像识别方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113569081A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116612341A (zh) * | 2023-07-20 | 2023-08-18 | 腾讯科技(深圳)有限公司 | 用于对象计数的图像处理方法、装置、设备及存储介质 |
-
2021
- 2021-01-26 CN CN202110105220.0A patent/CN113569081A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116612341A (zh) * | 2023-07-20 | 2023-08-18 | 腾讯科技(深圳)有限公司 | 用于对象计数的图像处理方法、装置、设备及存储介质 |
CN116612341B (zh) * | 2023-07-20 | 2023-09-22 | 腾讯科技(深圳)有限公司 | 用于对象计数的图像处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110532996B (zh) | 视频分类的方法、信息处理的方法以及服务器 | |
Xiao et al. | Deep salient object detection with dense connections and distraction diagnosis | |
CN112183577A (zh) | 一种半监督学习模型的训练方法、图像处理方法及设备 | |
CN113139628B (zh) | 样本图像的识别方法、装置、设备及可读存储介质 | |
CN111582409A (zh) | 图像标签分类网络的训练方法、图像标签分类方法及设备 | |
CN110765882B (zh) | 一种视频标签确定方法、装置、服务器及存储介质 | |
CN114298122B (zh) | 数据分类方法、装置、设备、存储介质及计算机程序产品 | |
CN113761259A (zh) | 一种图像处理方法、装置以及计算机设备 | |
CN111368656A (zh) | 一种视频内容描述方法和视频内容描述装置 | |
CN115861462B (zh) | 图像生成模型的训练方法、装置、电子设备及存储介质 | |
CN112765387A (zh) | 图像检索方法、图像检索装置和电子设备 | |
CN110866469A (zh) | 一种人脸五官识别方法、装置、设备及介质 | |
CN113392866A (zh) | 一种基于人工智能的图像处理方法、装置及存储介质 | |
CN115131604A (zh) | 一种多标签图像分类方法、装置、电子设备及存储介质 | |
CN116310318A (zh) | 交互式的图像分割方法、装置、计算机设备和存储介质 | |
CN116452810A (zh) | 一种多层次语义分割方法、装置、电子设备及存储介质 | |
CN114358249A (zh) | 目标识别模型训练、目标识别方法及装置 | |
CN113569081A (zh) | 图像识别方法、装置、设备及存储介质 | |
CN116977265A (zh) | 缺陷检测模型的训练方法、装置、计算机设备和存储介质 | |
CN116958624A (zh) | 指定材质的识别方法、装置、设备、介质及程序产品 | |
CN115984093A (zh) | 基于红外图像的深度估计方法、电子设备以及存储介质 | |
CN115115910A (zh) | 图像处理模型的训练方法、使用方法、装置、设备及介质 | |
CN114913339A (zh) | 特征图提取模型的训练方法和装置 | |
CN113822293A (zh) | 用于图数据的模型处理方法、装置、设备及存储介质 | |
CN115587297A (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 |