CN109564575B - 使用机器学习模型来对图像进行分类 - Google Patents

使用机器学习模型来对图像进行分类 Download PDF

Info

Publication number
CN109564575B
CN109564575B CN201780047055.XA CN201780047055A CN109564575B CN 109564575 B CN109564575 B CN 109564575B CN 201780047055 A CN201780047055 A CN 201780047055A CN 109564575 B CN109564575 B CN 109564575B
Authority
CN
China
Prior art keywords
embedding
training
matrix
digital
point
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.)
Active
Application number
CN201780047055.XA
Other languages
English (en)
Other versions
CN109564575A (zh
Inventor
弗朗索瓦·肖莱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN109564575A publication Critical patent/CN109564575A/zh
Application granted granted Critical
Publication of CN109564575B publication Critical patent/CN109564575B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Library & Information Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Medical Informatics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Image Analysis (AREA)

Abstract

用于使用机器学习模型来对图像进行分类的系统和方法。所述方法中的一种包括:获得用于训练所述机器学习模型的训练数据,其中,所述机器学习模型被配置成处理输入图像以针对每个输入图像生成嵌入空间中的预测点;从针对所述训练数据中的训练图像的标签数据,确定所述对象类别中的每一个对象类别的相应的数字嵌入,其中,任何两个对象类别的数字嵌入之间的所述嵌入空间中的距离反映所述两个对象类别的视觉共现的程度;以及在所述训练数据上训练所述机器学习模型。本说明书中描述的所述系统可有效地执行多标签、大规模多类别图像分类,其中类的数目大(数千或数万)并且其中每个图像通常属于应该全部被适当地识别的多个类别。

Description

使用机器学习模型来对图像进行分类
技术领域
本说明书涉及使用机器学习模型来处理图像。
背景技术
图像分类系统可识别图像中的对象,即,将输入图像分类为包括来自一个或多个对象类别的对象。一些图像分类系统使用一个或多个机器学习模型(例如,深度神经网络)来对输入图像进行分类。
机器学习模型接收输入并且基于所接收到的输入来生成输出,例如预测输出。一些机器学习模型是参数模型并且基于所接收到的输入并基于模型的参数的值来生成输出。
一些机器学习模型是采用模型的多个层来针对接收到的输入生成输出的深度模型。例如,深度神经网络是包括输出层和一个或多个隐藏层的深度机器学习模型,所述一个或多个隐藏层各自对接收到的输入应用非线性变换以生成输出。
发明内容
本说明书描述作为计算机程序实现在一个或多个位置中的一个或多个计算机上的系统可以如何训练机器学习模型,并且,一旦被训练,就使用经训练后的机器学习模型来对接收到的图像进行分类。
可实现本说明书中描述的主题的特定实施例以便实现以下优点中的一个或多个。本说明书中描述的图像分类系统可有效地执行多标签、大规模多类别图像分类,其中类的数目大(数千或数万)并且其中每个图像通常属于应该全部被适当地识别的多个类别。特别地,通过如本说明书中所描述的那样生成对象类别的数字嵌入并且使用这些嵌入来对图像进行分类,即便当图像包括属于多个对象类的对象时图像分类系统也能够准确地对输入图像进行分类。特别地,通过利用类别空间的内部结构来基于类别共现生成嵌入,可实现由分类系统使用的机器学习模型的训练速度、精度或回调中的一个或多个方面的增益。
在下面的附图和描述中阐述了本说明书的主题的一个或多个实施例的细节。主题的其它特征、方面和优点将根据说明书、附图和权利要求书变得显而易见。
附图说明
图1是图像分类系统的示例的框图。
图2是用于训练机器学习模型以对图像进行分类的示例过程的流程图。
图3是用于使用训练后的机器学习模型来对新图像进行分类的示例过程的流程图。
在各个附图中相似的附图标记和名称指示相似的元件。
具体实施方式
本说明书描述作为计算机程序实现在一个或多个位置中的一个或多个计算机上的系统可以如何确定对象类别在嵌入空间中的数字嵌入,使用数字嵌入来训练机器学习模型以对图像进行分类,并且,一旦被训练,就使用训练后的机器学习模型来对接收到的图像进行分类。
图1示出示例图像分类系统100。图像分类系统100是作为计算机程序实现在一个或多个位置中的一个或多个计算机上的系统的示例,在下面描述的系统、组件和技术被实现在所述一个或多个计算机中。
图像分类系统100使用机器学习模型110和标签嵌入数据130来对接收到的图像进行分类。例如,图像分类系统100可接收新图像102并对该新图像102进行分类以生成图像分类数据112,所述图像分类数据112从在新图像102中描绘的一个或多个对象所属的预先确定的对象类别集中识别一个或多个对象类别。一旦被生成,系统100就可将与新图像102相关联的图像分类数据112存储在数据存储器中,将图像分类数据112作为输入提供给另一系统以用于进一步处理,或者将图像分类数据112发送到系统的用户,例如,通过数据通信网络将图像分类数据112发送到从其接收到新图像102的用户设备。
特别地,标签嵌入数据130由图像分类系统100例如在一个或多个数据库中维护,并且是将对象类别集中的每个对象类别映射到对象类别在嵌入空间中的相应的数字嵌入的数据。嵌入空间是数值(例如,浮点值或量化浮点值)的k维空间。一般地,k是固定整数值,例如,大约一千以上的值。例如,在一些情况下,k可以等于4096并且嵌入空间中的每个点因此是4096维点。
机器学习模型100是被配置成处理输入图像以针对每个输入图像生成嵌入空间中的预测点(即,k维点)的模型,例如,深度卷积神经网络。
为了对新图像102进行分类,系统100使用机器学习模型110来处理新图像102以针对新图像生成嵌入空间中的预测点。系统100然后从标签嵌入数据102中的数字嵌入当中确定最接近于预测点的一个或多个数字嵌入并且将新图像102分类为包括属于通过一个或多个最接近的数字嵌入所表示的对象类别的一个或多个对象的图像。在下面参考图3更详细地描述对新图像进行分类。
为了允许模型110用于有效地对输入图像进行分类,系统100包括训练引擎120,所述训练引擎120接收训练数据122并且使用训练数据122来生成对象类别的数字嵌入并且训练机器学习模型110。
一般地,训练引擎120生成数字嵌入,使得针对任何两个对象类别的数字嵌入之间的嵌入空间中的距离反映两个对象类别在图像中的视觉共现的程度,然后使用所生成的嵌入来训练机器学习模型110。在下面参考图2更详细地描述生成数字嵌入并且训练机器学习模型。
图2是用于训练机器学习模型以对图像进行分类的示例过程200的流程图。
为了方便,过程200将被描述为由位于一个或多个位置中的一个或多个计算机的系统来执行。例如,依照本说明书适当地编程的图像分类系统(例如,图1的图像分类系统100)可执行过程200。
系统接收用于训练机器学习模型的训练数据以对图像进行分类(步骤202)。
如上所述,机器学习模型是被配置成接收输入图像并处理该输入图像以依照模型的参数的值来生成嵌入空间中的预测点的模型,例如,深度卷积神经网络。
训练数据包括多个训练图像以及针对这些训练图像中的每一个训练图像的相应的标签数据。针对给定训练图像的标签数据从在训练图像中描绘的一个或多个对象所属的对象类别集中识别一个或多个对象类别。也就是说,标签数据将训练图像与对象类别中的一个或多个对象类别相关联。
系统针对对象类别集中的对象类别确定标签嵌入(步骤204)。一旦嵌入已被生成,任何两个对象类别的数字嵌入之间的嵌入空间中的距离就反映两个对象类别在训练图像中的视觉共现的程度。特别地,视觉共现的程度基于训练数据中的相同训练图像包括共同地属于两个对象类别中的两个的相对频率,即,针对训练图像的标签数据将对象类别中的两个与训练图像相关联的相对频率。
为了确定针对对象类别的标签嵌入,系统确定如在训练数据中测量的对象类别集中的对象类别的每个可能对之间的相应的逐点互信息测度。例如,对于对象类别的给定对,逐点互信息测度可以是以下两项之间的比值的对数:(i)训练图像包括共同地属于两个对象类别中的两个的一个或多个对象的概率,以及ii)训练图像包括属于该对中的第一对象类别的一个或多个对象的概率与训练图像包括属于该对中的第二对象类别的一个或多个对象的概率的乘积。
系统然后构造逐点互信息测度的矩阵。特别地,系统构造该矩阵,使得对所有i和j来说,矩阵的条目(i,j)是按照对象类别的次序位于位置i中的类别与按次序位于位置j中的类别之间的逐点互信息测度。
系统然后执行逐点互信息测度的矩阵的特征分解以确定嵌入矩阵。例如,系统可例如经由奇异值分解将逐点互信息测度PMI的矩阵分解成满足下式的矩阵的矩阵乘积:
PMI=U·∑·Ut
其中Σ是具有沿着对角线从最高有效到最低有效排名的特征值的对角矩阵。嵌入矩阵E然后可满足:
E=U·∑1/2
系统然后从嵌入矩阵的行中确定数字嵌入。特别地,系统将嵌入矩阵限制到其前k列以生成受限嵌入矩阵,然后使用受限嵌入矩阵的行作为数字嵌入,即,使得受限嵌入矩阵的第i行是针对按次序位于位置i中的类别的数字嵌入。
系统在训练数据上训练机器学习模型以根据模型参数的初始值确定模型参数的训练值(步骤206)。
特别地,对于训练图像中的每一个,系统依照机器学习模型的参数的当前值使用机器学习模型来处理训练图像以针对该训练图像生成嵌入空间中的预测点。
系统然后例如使用基于梯度下降的机器学习训练技术(例如RMSprop)来确定对参数的当前值的调整,所述调整例如根据余弦接近度减小嵌入空间中的预测点与在针对训练图像的标签数据中识别的对象类别的数字嵌入之间的距离。当有在针对训练图像的标签数据中识别的多于一个对象类别时,系统可从在针对训练图像的标签数据中识别的对象类别的数字嵌入确定组合嵌入,然后使用机器学习训练技术调整参数的当前值以减小组合嵌入与针对训练图像的嵌入空间中的预测点之间的余弦接近度。在一些实施方式中,系统通过对在针对训练图像的标签数据中识别的对象类别的数字嵌入求和来确定组合嵌入。
一旦系统已训练了机器学习模型,系统就可使用数字嵌入和训练后的参数值以使用训练后的模型来对新图像进行分类。
图3是用于使用训练后的机器学习模型来对新图像进行分类的示例过程300的流程图。
为了方便,过程300将被描述为由位于一个或多个位置中的一个或多个计算机的系统来执行。例如,依照本说明书适当地编程的图像分类系统(例如,图1的图像分类系统100)可执行过程300。
系统维护标签嵌入数据(步骤302)。标签嵌入数据是将对象类别集中的每个对象类别映射到对象类别在嵌入空间中的相应的数字嵌入的数据。如上所述,针对任何两个对象类别的数字嵌入之间的嵌入空间中的距离(例如,根据余弦接近度或另一适当的距离度量)反映两个对象类别在图像中(例如,在用于训练机器学习模型的图像中)的视觉共现的程度。特别地,针对更频繁地共现的两个对象类别的数字嵌入一般地在嵌入空间中比针对相对不太频繁地共现的两个对象类别的数字嵌入更接近。
系统接收要分类的新图像(步骤304)。
系统使用训练后的机器学习模型来处理新图像以确定嵌入空间中的预测点(步骤306)。如上所述,机器学习模型已通过训练被配置以接收新图像并处理该新图像以依照模型的参数的训练后的值来生成预测点。
系统根据适当的距离度量(例如,余弦接近度)来确定从针对对象类别的数字嵌入到预测点的一个或多个数字嵌入(步骤308)。在一些实施方式中,系统确定最接近于嵌入空间中的预测点的预先确定数目的数字嵌入。在一些其它实施方式中,系统识别比阈值距离更接近于嵌入空间中的预测点的每个数字嵌入。
系统将新图像分类为包括属于通过一个或多个最接近的数字嵌入所表示的对象类别的一个或多个对象的图像(步骤310)。一旦新图像已被分类,系统就可提供识别对象类别的数据以用于呈现给用户,例如,根据对应嵌入与预测点的接近程度来排名,存储识别对象类别的数据以供以后使用,或者将识别对象类别的数据提供给外部系统以用于某个直接目的。
本说明书连同系统和计算机程序组件一起使用术语“被配置”。对于要被配置成执行特定操作或动作的一个或多个计算机的系统意味着该系统已在其上安装了软件、固件、硬件或其组合,所述软件、固件、硬件或其组合在操作中使该系统执行操作或动作。对于要被配置成执行特定操作或动作的一个或多个计算机程序意味着一个或多个程序包括当由数据处理装置执行时使该装置执行操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可用数字电子电路、用有形地具体实现的计算机软件或固件、用计算机硬件(包括本说明书中公开的结构及其结构等同物)或者用它们中的一个或多个的组合加以实现。本说明书中描述的主题的实施例可作为一个或多个计算机程序(即,在有形非暂时性存储介质上编码以供由数据处理装置执行或者控制数据处理装置的操作的计算机程序指令的一个或多个模块)被实现。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备,或它们中的一个或多个的组合。可替选地或此外,可将程序指令编码在人工生成的传播信号(例如,机器生成的电、光学或电磁信号)上,所述信号被生成来对信息进行编码以便传输到适合的接收器装置以供由数据处理装置执行。
术语“数据处理装置”指代数据处理硬件并且包含用于处理数据的所有种类的装置、设备和机器,作为示例包括可编程处理器、计算机或多个处理器或计算机。装置可以是或者还包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。装置除了包括硬件之外还可包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
计算机程序(其也可以被称为或者描述为程序、软件、软件应用、app、模块、软件模块、脚本或代码)可用任何形式的编程语言(包括编译或解释语言,或声明或过程语言)编写;并且它可被以任何形式部署,包括作为独立程序或者作为模块、组件、子例行程序或适合于在计算环境中使用的其它单元。程序可以但不必对应于文件系统中的文件。可在保持其它程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、在专用于所述程序的单个文件中或者在多个协调文件(例如,存储一个或多个模块、子程序或代码的各部分的文件)中存储程序。可将计算机程序部署成在一个计算机上或者在位于一个站点处或者分布在多个站点上并通过数据通信网络互连的多个计算机上执行。
在本说明书中,术语“数据库”广泛地用于指代数据的任何合集:不需要以任何特定方式构造或者根本不构造数据,并且它可被存储在一个或多个位置中的存储设备上。因此,例如,索引数据库可包括数据的多个合集,其中的每一个可以被不同地组织和访问。
类似地,在本说明书中术语“引擎”广泛地用于指代被编程来执行一个或多个具体功能的基于软件的系统、子系统或过程。一般地,引擎将作为安装在一个或多个位置中的一个或多个计算机上的一个或多个软件模块或组件被实现。在一些情况下,一个或多个计算机将专用于特定引擎;在其它情况下,可在相同计算机或多个计算机上安装并运行多个引擎。
本说明书中描述的过程和逻辑流程可通过实行一个或多个计算机程序的一个或多个可编程计算机执行以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可由专用逻辑电路(例如,FPGA或ASIC)或者由专用逻辑电路和一个或多个编程的计算机的组合来执行。
适合于执行计算机程序的计算机可基于通用微处理器或专用微处理器或两者,或任何其它种类的中央处理单元。一般地,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的必要元件是用于执行或者实行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可由专用逻辑电路补充,或者并入专用逻辑电路中。一般地,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)或者在操作上耦合以从用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)接收数据,或者将数据转移到用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),或者兼而有之。然而,计算机不必具有此类设备。此外,计算机可被嵌入在另一设备中,所述另一设备例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)闪存驱动器)等等。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,作为示例包括半导体存储器设备,例如,EPROM、EEPROM和闪速存储器设备;磁盘,例如,内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。
为了提供与用户的交互,可在计算机上实现本说明书中描述的主题的实施例,所述计算机具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可用来向该计算机提供输入的键盘和指点设备,例如,鼠标或轨迹球。其它种类的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以任何形式接收来自用户的输入,包括声学、语音或触觉输入。此外,计算机可通过向由用户使用的设备发送文档并且从由用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收到的请求而向用户的设备上的web浏览器发送web页面。另外,计算机可通过向个人设备(例如,正在运行消息传送应用的智能电话)发送文本消息或其它形式的消息并且从用户接收响应消息作为回报来与用户交互。
用于实现机器学习模型的数据处理装置还可包括例如用于处理机器学习训练或生产(即,推理)工作负载的公共且计算密集部分的专用硬件加速器单元。
可使用机器学习框架(例如,TensorFlow框架、Microsoft Cognitive Toolkit包框架、Apache Singa框架或Apache MXNet框架)来实现并部署机器学习模型。
可在计算系统中实现本说明书中描述的主题的实施例,所述计算机系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件,例如,具有用户可用来与本说明书中描述的主题的实施方式交互的图形用户界面、web浏览器或app的客户端计算机,或者一个或多个此类后端、中间件或前端组件的任何组合。系统的组件可通过任何形式或介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如因特网。
计算系统可包括客户端和服务器。客户端和服务器一般地彼此远离并且通常通过通信网络来交互。客户端和服务器的关系借助于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,例如,为了向与作为客户端的设备交互的用户显示数据并且从与作为客户端的设备交互的用户接收用户输入的目的,服务器向用户设备发送数据,例如,HTML页面。可在服务器处从设备接收在用户设备处生成的数据,例如,用户交互的结果。
虽然本说明书包含许多具体实施方式细节,但是这些不应该被解释为对任何发明的范围或者对可以要求保护的东西的范围构成限制,而是相反被解释为可能特定于特定发明的特定实施例的特征的描述。也可在单个实施例中相结合地实现在本说明书中在单独的实施例的上下文中描述的某些特征。相反地,也可在多个实施例中单独地或者按照任何适合的子组合实现在单个实施例的上下文中描述的各种特征。此外,尽管特征可以被在上面描述为按照某些组合起作用并且甚至最初被如此要求保护,然而可在一些情况下从组合中去除来自要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然在附图中描绘并且在权利要求书中以特定次序叙述操作,但是这不应该被理解为要求以所示的特定次序或以顺序次序执行这些操作,或者要求执行所有图示的操作,以实现所希望的结果。在某些情况下,多任务处理和并行处理可以是有利的。此外,上述的实施例中的各种系统模块和组件的分离不应该被理解为在所有实施例中要求这种分离,并且应该理解的是,所描述的程序组件和系统一般地可被集成在单个软件产品中或者封装到多个软件产品中。
已经描述了主题的特定实施例。其它实施例在以下权利要求书的范围内。例如,权利要求书中叙述的动作可被以不同的次序执行并仍然实现所希望的结果。作为一个示例,附图中描绘的过程不一定要求所示的特定次序或顺序次序来实现所希望的结果。在一些情况下,多任务处理和并行处理可以是有利的。

Claims (26)

1.一种方法,包括:
获得训练数据,所述训练数据用于训练具有多个参数的机器学习模型,
其中,所述机器学习模型被配置成处理输入图像以针对每个输入图像生成嵌入空间中的预测点,并且
其中,所述训练数据包括多个训练图像以及针对每个训练图像的标签数据,所述标签数据从在所述训练图像中描绘的一个或多个对象所属的对象类别集中识别一个或多个对象类别;
根据针对所述训练数据中的所述训练图像的所述标签数据,确定所述对象类别集中的所述对象类别中的每一个对象类别的所述嵌入空间中的相应的数字嵌入,其中,任何两个对象类别的数字嵌入之间的所述嵌入空间中的距离反映所述两个对象类别在所述训练图像中的视觉共现的程度,其中,所述视觉共现的程度是基于针对所述训练图像的所述标签数据将所述对象类别中的两者与所述训练图像相关联的相对频率;以及
在所述训练数据上训练所述机器学习模型,包括,针对所述训练图像中的每一个训练图像:
依照所述参数的当前值,使用所述机器学习模型来处理所述训练图像,以针对所述训练图像生成所述嵌入空间中的预测点;以及
调整所述参数的当前值,以减小所述嵌入空间中的所述预测点与在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入之间的距离。
2.根据权利要求1所述的方法,其中,确定所述对象类别中的每一个对象类别的相应的嵌入包括:
确定在所述训练数据中测量的所述对象类别集中的对象类别的每个可能对之间的相应的逐点互信息测度;
构造所述逐点互信息测度的矩阵;
执行逐点互信息测度的矩阵的特征分解以确定嵌入矩阵;以及
根据所述嵌入矩阵的行来确定所述数字嵌入。
3.根据权利要求2所述的方法,其中,根据所述嵌入矩阵的行来确定所述数字嵌入包括:
将所述嵌入矩阵限制到所述嵌入矩阵的前k列以生成受限嵌入矩阵;以及
使用所述受限嵌入矩阵的行作为所述数字嵌入。
4.根据权利要求2所述的方法,其中,执行所述逐点互信息测度的矩阵的特征分解以确定嵌入矩阵包括:
将所述逐点互信息测度PMI的矩阵分解成满足下式的矩阵的矩阵乘积:
PMI=U·∑·Ut
其中Σ具有在主对角线中从最高有效到最低有效排名的特征值,其中,所述嵌入矩阵E满足:
E=U·∑1/2
5.根据权利要求1所述的方法,其中,调整所述参数的当前值包括:
根据在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入来确定组合嵌入;以及
调整所述参数的当前值以减小所述组合嵌入与针对所述训练图像的所述嵌入空间中的所述预测点之间的余弦接近度。
6.根据权利要求5所述的方法,其中,确定所述组合嵌入包括:对在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入求和。
7.根据权利要求1所述的方法,其中,所述机器学习模型是深度卷积神经网络。
8.一种方法,包括:
维护数据,所述数据将对象类别集中的每个对象类别映射到所述对象类别在嵌入空间中的相应数字嵌入,其中,针对任何两个对象类别的所述数字嵌入之间的所述嵌入空间中的距离反映所述两个对象类别在多个训练图像中的视觉共现的程度,其中,每个训练图像与标签数据相关联,所述标签数据从在所述训练图像中描绘的一个或多个对象所属的对象类别集中识别一个或多个对象类别,以及其中,所述视觉共现的程度是基于针对所述训练图像的所述标签数据将所述对象类别中的两者与所述训练图像相关联的相对频率;
接收输入图像;
使用机器学习模型来处理所述输入图像,其中,所述机器学习模型已被配置成处理所述输入图像以生成所述嵌入空间中的预测点;
根据所维护的数据来确定最接近于所述嵌入空间中的所述预测点的一个或多个数字嵌入;以及
将所述输入图像分类为包括属于通过所述一个或多个数字嵌入所表示的所述对象类别的一个或多个对象的图像。
9.根据权利要求8所述的方法,其中,所述机器学习模型是深度卷积神经网络。
10.根据权利要求8所述的方法,其中,根据所维护的数据来确定最接近于所述嵌入空间中的所述预测点的一个或多个数字嵌入包括:
确定最接近于所述嵌入空间中的所述预测点的预先确定数目的数字嵌入。
11.根据权利要求8所述的方法,其中,根据所维护的数据来确定最接近于所述嵌入空间中的所述预测点的一个或多个数字嵌入包括:
识别距所述嵌入空间中的所述预测点近于阈值距离的每个数字嵌入。
12.根据权利要求8所述的方法,其中,根据所维护的数据来确定最接近于所述嵌入空间中的所述预测点的一个或多个数字嵌入包括:
使用余弦接近度来确定最接近于所述预测点的所述一个或多个数字嵌入。
13.一种系统,所述系统包括一个或多个计算机和存储指令的一个或多个存储设备,所述指令当由所述一个或多个计算机执行时,可操作来使所述一个或多个计算机执行操作,所述操作包括:
获得训练数据,所述训练数据用于训练具有多个参数的机器学习模型,
其中,所述机器学习模型被配置成处理输入图像以针对每个输入图像生成嵌入空间中的预测点,并且
其中,所述训练数据包括多个训练图像以及针对每个训练图像的标签数据,所述标签数据从在所述训练图像中描绘的一个或多个对象所属的对象类别集中识别一个或多个对象类别;
根据针对所述训练数据中的所述训练图像的所述标签数据,确定所述对象类别集中的所述对象类别中的每一个对象类别的所述嵌入空间中的相应的数字嵌入,其中,任何两个对象类别的数字嵌入之间的所述嵌入空间中的距离反映所述两个对象类别在所述训练图像中的视觉共现的程度,其中,所述视觉共现的程度是基于针对所述训练图像的所述标签数据将所述对象类别中的两者与所述训练图像相关联的相对频率;以及
在所述训练数据上训练所述机器学习模型,包括,针对所述训练图像中的每一个训练图像:
依照所述参数的当前值,使用所述机器学习模型来处理所述训练图像,以针对所述训练图像生成所述嵌入空间中的预测点;以及
调整所述参数的当前值,以减小所述嵌入空间中的所述预测点与在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入之间的距离。
14.根据权利要求13所述的系统,其中,确定所述对象类别中的每一个对象类别的相应的嵌入包括:
确定在所述训练数据中测量的所述对象类别集中的对象类别的每个可能对之间的相应的逐点互信息测度;
构造所述逐点互信息测度的矩阵;
执行逐点互信息测度的矩阵的特征分解以确定嵌入矩阵;以及
根据所述嵌入矩阵的行来确定所述数字嵌入。
15.根据权利要求14所述的系统,其中,根据所述嵌入矩阵的行来确定所述数字嵌入包括:
将所述嵌入矩阵限制到所述嵌入矩阵的前k列以生成受限嵌入矩阵;以及
使用所述受限嵌入矩阵的行作为所述数字嵌入。
16.根据权利要求14所述的系统,其中,执行所述逐点互信息测度的矩阵的特征分解以确定嵌入矩阵包括:
将所述逐点互信息测度PMI的矩阵分解成满足下式的矩阵的矩阵乘积:
PMI=U·∑·Ut
其中Σ具有在主对角线中从最高有效到最低有效排名的特征值,其中,所述嵌入矩阵E满足:
E=U·∑1/2
17.根据权利要求14所述的系统,其中,调整所述参数的当前值包括:
根据在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入来确定组合嵌入;以及
调整所述参数的当前值以减小所述组合嵌入与针对所述训练图像的所述嵌入空间中的所述预测点之间的余弦接近度。
18.根据权利要求17所述的系统,其中,确定所述组合嵌入包括:对在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入求和。
19.根据权利要求13所述的系统,其中,所述机器学习模型是深度卷积神经网络。
20.一种编码有指令的非暂时性计算机可读存储介质,所述指令当由一个或多个计算机执行时,使所述一个或多个计算机执行操作,所述操作包括:
获得训练数据,所述训练数据用于训练具有多个参数的机器学习模型,
其中,所述机器学习模型被配置成处理输入图像以针对每个输入图像生成嵌入空间中的预测点,并且
其中,所述训练数据包括多个训练图像以及针对每个训练图像的标签数据,所述标签数据从在所述训练图像中描绘的一个或多个对象所属的对象类别集中识别一个或多个对象类别;
根据针对所述训练数据中的所述训练图像的所述标签数据,确定所述对象类别集中的所述对象类别中的每一个对象类别的所述嵌入空间中的相应的数字嵌入,其中,任何两个对象类别的数字嵌入之间的所述嵌入空间中的距离反映所述两个对象类别在所述训练图像中的视觉共现的程度,其中,所述视觉共现的程度是基于针对所述训练图像的所述标签数据将所述对象类别中的两者与所述训练图像相关联的相对频率;以及
在所述训练数据上训练所述机器学习模型,包括,针对所述训练图像中的每一个训练图像:
依照所述参数的当前值,使用所述机器学习模型来处理所述训练图像,以针对所述训练图像生成所述嵌入空间中的预测点;以及
调整所述参数的当前值,以减小所述嵌入空间中的所述预测点与在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入之间的距离。
21.根据权利要求20所述的计算机可读存储介质,其中,确定所述对象类别中的每一个对象类别的相应的嵌入包括:
确定在所述训练数据中测量的所述对象类别集中的对象类别的每个可能对之间的相应的逐点互信息测度;
构造所述逐点互信息测度的矩阵;
执行逐点互信息测度的矩阵的特征分解以确定嵌入矩阵;以及
根据所述嵌入矩阵的行来确定所述数字嵌入。
22.根据权利要求21所述的计算机可读存储介质,其中,根据所述嵌入矩阵的行来确定所述数字嵌入包括:
将所述嵌入矩阵限制到所述嵌入矩阵的前k列以生成受限嵌入矩阵;以及
使用所述受限嵌入矩阵的行作为所述数字嵌入。
23.根据权利要求21所述的计算机可读存储介质,其中,执行所述逐点互信息测度的矩阵的特征分解以确定嵌入矩阵包括:
将所述逐点互信息测度PMI的矩阵分解成满足下式的矩阵的矩阵乘积:
PMI=U·∑·Ut
其中Σ具有在主对角线中从最高有效到最低有效排名的特征值,其中,所述嵌入矩阵E满足:
E=U·∑1/2
24.根据权利要求20所述的计算机可读存储介质,其中,调整所述参数的当前值包括:
根据在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入来确定组合嵌入;以及
调整所述参数的当前值以减小所述组合嵌入与针对所述训练图像的所述嵌入空间中的所述预测点之间的余弦接近度。
25.根据权利要求24所述的计算机可读存储介质,其中,确定所述组合嵌入包括:对在针对所述训练图像的所述标签数据中识别的所述对象类别的数字嵌入求和。
26.根据权利要求20所述的计算机可读存储介质,其中,所述机器学习模型是深度卷积神经网络。
CN201780047055.XA 2016-07-14 2017-07-14 使用机器学习模型来对图像进行分类 Active CN109564575B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662362488P 2016-07-14 2016-07-14
US62/362,488 2016-07-14
PCT/US2017/042235 WO2018013982A1 (en) 2016-07-14 2017-07-14 Classifying images using machine learning models

Publications (2)

Publication Number Publication Date
CN109564575A CN109564575A (zh) 2019-04-02
CN109564575B true CN109564575B (zh) 2023-09-05

Family

ID=59558451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780047055.XA Active CN109564575B (zh) 2016-07-14 2017-07-14 使用机器学习模型来对图像进行分类

Country Status (4)

Country Link
US (1) US20190266487A1 (zh)
EP (1) EP3485396B1 (zh)
CN (1) CN109564575B (zh)
WO (1) WO2018013982A1 (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7345236B2 (ja) * 2017-11-10 2023-09-15 株式会社小松製作所 作業車両の動作を推定するための方法、システム、学習済みの分類モデルの製造方法、学習データ、及び学習データの製造方法
CN108197670B (zh) * 2018-01-31 2021-06-15 国信优易数据股份有限公司 伪标签生成模型训练方法、装置及伪标签生成方法及装置
CN113168417A (zh) * 2018-11-07 2021-07-23 谷歌有限责任公司 用于编录、检索和组织与对象相关联的用户生成的内容的计算系统和方法
CN109614303A (zh) * 2018-12-05 2019-04-12 国网北京市电力公司 一种违规信息处理方法及装置
US11153332B2 (en) 2018-12-10 2021-10-19 Bitdefender IPR Management Ltd. Systems and methods for behavioral threat detection
US11323459B2 (en) 2018-12-10 2022-05-03 Bitdefender IPR Management Ltd. Systems and methods for behavioral threat detection
US11089034B2 (en) * 2018-12-10 2021-08-10 Bitdefender IPR Management Ltd. Systems and methods for behavioral threat detection
US20200334442A1 (en) * 2019-04-18 2020-10-22 Microsoft Technology Licensing, Llc On-platform analytics
US11537664B2 (en) * 2019-05-23 2022-12-27 Google Llc Learning to select vocabularies for categorical features
US11250296B2 (en) 2019-07-24 2022-02-15 Nvidia Corporation Automatic generation of ground truth data for training or retraining machine learning models
US11263482B2 (en) 2019-08-09 2022-03-01 Florida Power & Light Company AI image recognition training tool sets
GB2586265B (en) * 2019-08-15 2023-02-15 Vision Semantics Ltd Text based image search
WO2021050285A1 (en) * 2019-09-09 2021-03-18 General Electric Company Systems and methods for detecting wind turbine operation anomaly using deep learning
US11487970B2 (en) * 2019-09-24 2022-11-01 Google Llc Distance-based learning confidence model
US11120311B2 (en) * 2019-10-18 2021-09-14 Midea Group Co., Ltd. Adjusting machine settings through multi-pass training of object detection models
EP3809279A1 (en) * 2019-10-18 2021-04-21 Amadeus S.A.S. Device, system and method for training machine learning models using messages associated with provider objects
CN112712097B (zh) * 2019-10-25 2024-01-05 杭州海康威视数字技术股份有限公司 一种基于开放平台的图像识别方法、装置及用户端
CN111783813B (zh) * 2019-11-20 2024-04-09 北京沃东天骏信息技术有限公司 图像的评估方法、训练图像模型方法、装置、设备和介质
US11513520B2 (en) * 2019-12-10 2022-11-29 International Business Machines Corporation Formally safe symbolic reinforcement learning on visual inputs
CN111597921B (zh) * 2020-04-28 2024-06-18 深圳市人工智能与机器人研究院 场景识别方法、装置、计算机设备和存储介质
WO2021230863A1 (en) * 2020-05-13 2021-11-18 Google Llc Image replacement inpainting
CN111666898B (zh) * 2020-06-09 2021-10-26 北京字节跳动网络技术有限公司 用于识别车辆所属类别的方法和装置
CN116034376A (zh) * 2020-08-13 2023-04-28 谷歌有限责任公司 减少机器学习推理的生成和传输期间硬件加速器的功耗
CN112132178B (zh) * 2020-08-19 2023-10-13 深圳云天励飞技术股份有限公司 对象分类方法、装置、电子设备及存储介质
WO2022047532A1 (en) * 2020-09-03 2022-03-10 Stockphoto.com Pty Ltd Content distribution
CN112926621B (zh) * 2021-01-21 2024-05-10 百度在线网络技术(北京)有限公司 数据标注方法、装置、电子设备及存储介质
US11714802B2 (en) * 2021-04-02 2023-08-01 Palo Alto Research Center Incorporated Using multiple trained models to reduce data labeling efforts
CN113887435A (zh) * 2021-09-30 2022-01-04 北京百度网讯科技有限公司 人脸图像处理方法、装置、设备、存储介质及程序产品
WO2023184359A1 (en) * 2022-03-31 2023-10-05 Qualcomm Incorporated System and method for image processing using mixed inference precision
CN114881242B (zh) * 2022-04-21 2023-03-24 西南石油大学 一种基于深度学习的图像描述方法及系统、介质和电子设备
CN114580794B (zh) * 2022-05-05 2022-07-22 腾讯科技(深圳)有限公司 数据处理方法、装置、程序产品、计算机设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105160397A (zh) * 2014-06-06 2015-12-16 谷歌公司 训练精炼的机器学习模型
CN109885842A (zh) * 2018-02-22 2019-06-14 谷歌有限责任公司 处理文本神经网络

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8553949B2 (en) * 2004-01-22 2013-10-08 DigitalOptics Corporation Europe Limited Classification and organization of consumer digital images using workflow, and face detection and recognition
US20120082371A1 (en) * 2010-10-01 2012-04-05 Google Inc. Label embedding trees for multi-class tasks
US9141916B1 (en) * 2012-06-29 2015-09-22 Google Inc. Using embedding functions with a deep network
EP2706684B1 (en) * 2012-09-10 2018-11-07 MStar Semiconductor, Inc Apparatus for MIMO channel performance prediction
US10769191B2 (en) * 2013-12-20 2020-09-08 Google Llc Classifying data objects
WO2016100717A1 (en) * 2014-12-17 2016-06-23 Google Inc. Generating numeric embeddings of images

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105160397A (zh) * 2014-06-06 2015-12-16 谷歌公司 训练精炼的机器学习模型
CN109885842A (zh) * 2018-02-22 2019-06-14 谷歌有限责任公司 处理文本神经网络

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Neural Word Embedding as Implicit Matrix Factorization";Omer Levy .etc;《NIPS》;20141231;论文第2-4节 *

Also Published As

Publication number Publication date
CN109564575A (zh) 2019-04-02
EP3485396A1 (en) 2019-05-22
WO2018013982A1 (en) 2018-01-18
EP3485396B1 (en) 2020-01-01
US20190266487A1 (en) 2019-08-29

Similar Documents

Publication Publication Date Title
CN109564575B (zh) 使用机器学习模型来对图像进行分类
US11636314B2 (en) Training neural networks using a clustering loss
US20210334624A1 (en) Neural architecture search using a performance prediction neural network
US11886998B2 (en) Attention-based decoder-only sequence transduction neural networks
CN111602148B (zh) 正则化神经网络架构搜索
US11443170B2 (en) Semi-supervised training of neural networks
US20240143700A1 (en) Multimodal Image Classifier using Textual and Visual Embeddings
US20200285934A1 (en) Capsule neural networks
US20220121906A1 (en) Task-aware neural network architecture search
US20240127058A1 (en) Training neural networks using priority queues
CN111652378B (zh) 学习来选择类别特征的词汇
US12118064B2 (en) Training machine learning models using unsupervised data augmentation
CN110462638B (zh) 使用后验锐化训练神经网络
US20220230065A1 (en) Semi-supervised training of machine learning models using label guessing
CN114175018A (zh) 新词分类技术
US20240062046A1 (en) Computer vision models using global and local information
US11354574B2 (en) Increasing security of neural networks by discretizing neural network inputs
WO2023121950A1 (en) Performing classification using post-hoc augmentation
EP3948679A1 (en) Energy-based associative memory neural networks

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
GR01 Patent grant
GR01 Patent grant