CN112823345A - 使用机器学习模型对图像搜索结果进行排名 - Google Patents

使用机器学习模型对图像搜索结果进行排名 Download PDF

Info

Publication number
CN112823345A
CN112823345A CN201980066763.7A CN201980066763A CN112823345A CN 112823345 A CN112823345 A CN 112823345A CN 201980066763 A CN201980066763 A CN 201980066763A CN 112823345 A CN112823345 A CN 112823345A
Authority
CN
China
Prior art keywords
image search
image
search results
ranking
features
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
Application number
CN201980066763.7A
Other languages
English (en)
Inventor
M.A.帕塔克
S.蒂鲁马拉雷迪
W.尹
S.K.巴苏
S.弗马
S.卡兰杰卡
T.R.斯特罗曼
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 CN112823345A publication Critical patent/CN112823345A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • 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/53Querying
    • G06F16/538Presentation of query results
    • 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/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • 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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

用于使用机器学习模型对图像搜索结果进行排名的方法、系统和装置,其包括编码在计算机存储介质上的计算机程序。在一个方面中,一种方法包括:从用户设备接收图像搜索查询;获得多个候选图像搜索结果;对于候选图像搜索结果中的每一个:使用图像搜索结果排名机器学习模型处理(i)图像搜索查询的特征和(ii)通过候选图像搜索结果识别的相应图像的特征,以生成关联性得分,该关联性得分测量候选图像搜索结果与图像搜索查询的关联性;基于关联性得分对候选图像搜索结果进行排名;生成图像搜索结果呈现;以及提供图像搜索结果以供用户设备呈现。

Description

使用机器学习模型对图像搜索结果进行排名
相关申请的交叉引用
本申请要求于2019年1月31日提交的第16/263,398号美国专利申请的优先权,该申请要求于2018年12月20日提交的第62/783,134号美国临时申请的优先权。先前申请的公开内容被视作本申请的公开的一部分,并且以引用方式并入本申请的公开中。
背景技术
本说明书一般地涉及对图像搜索结果进行排名(rank)。
在线搜索引擎通常响应于接收到的搜索查询来对资源(例如,图像)进行排名以呈现搜索结果,所述搜索结果识别对搜索查询响应的资源。搜索引擎通常以排名限定的顺序来呈现搜索结果。搜索引擎可以基于各种因素,即,基于各种搜索引擎排名信号,并使用各种排名技术,来对资源进行排名。
一些常规的图像搜索引擎(即,被配置成响应于接收到的搜索查询而识别登陆页面(landing page)上(例如,互联网(Internet)的网页上)的图像的搜索引擎)从i)图像的特征和ii)登陆页面的特征生成单独的(separate)信号,然后根据对于每个接收到的搜索查询相同的固定加权方案来组合单独的信号。
发明内容
本说明书描述了用于生成图像-登陆页面对的关联性值并且基于对应图像搜索查询的关联性得分而对图像搜索结果进行排名的技术。
在一个方面中,从用户设备接收图像搜索查询;获得针对图像搜索查询的多个候选图像搜索结果,每个候选图像搜索结果识别相应图像和用于相应图像的相应登陆页面;对于候选图像搜索结果中的每一个:使用已训练的图像搜索结果排名机器学习模型来处理(i)图像搜索查询的特征、(ii)通过候选图像搜索结果识别的相应图像的特征、以及(iii)通过候选图像搜索结果识别的相应登陆页面的特征,以生成关联性得分,该关联性得分测量候选图像搜索结果与图像搜索查询的关联性;基于图像搜索结果排名机器学习模型生成的关联性得分对候选图像搜索结果进行排名;生成显示根据排名进行排序的候选图像搜索结果的图像搜索结果呈现;以及提供图像搜索结果以供用户设备呈现。此方面的其他实施例包括对应计算机系统、装置以及记录在一个或多个计算机存储设备上的计算机程序,其中的每一个被配置成执行所述方法的动作。对于要配置成执行特定操作或动作的一个或多个计算机的系统,意味着系统上已安装有在操作中致使系统执行操作或动作的软件、固件、硬件或它们的组合。对于要被配置成执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括在被数据处理装置执行时致使装置执行操作或动作的指令。
本说明书中描述的主题可以在特定实施例中实施,以实现以下优势中的一个或多个。基于由机器学习模型生成的关联性得分来对图像搜索查询对进行排名改善了响应于图像搜索查询的图像搜索结果的关联性。与对资源进行排名的常规方法不同,机器学习模型接收包括通过给定图像搜索结果识别的图像的特征、登陆页面的特征、以及图像搜索查询的特征的单个输入,并且预测图像搜索结果与接收到的查询的关联性。这允许机器学习模型以特定于查询的方式对登陆页面特征或图像特征赋予更高权重,从而改善返回给用户的图像搜索结果的质量。具体地,通过使用所描述的机器学习模型,所描述的图像搜索引擎不是针对每个接收到的查询、对登陆页面特征和图像特征应用相同的固定加权方案,并且替代地以查询相关方式来组合登陆页面特征和图像特征。
此外,已训练的机器学习模型可以基于初始信号分布或附加特征的变化而容易且优化地调整分配给各种特征的权重。常规上,需要大量的工程工作来基于初始信号分布的变化来调整传统手动调谐模型的权重。但是,基于信号分布的变化来调整已训练的机器学习模型的权重明显更为容易,从而改善了图像搜索引擎的维护容易度。此外,如果添加了新特征,则手动调谐函数独立于目标来调整对新特征的函数,即损失函数,同时保持现有特征函数恒定。在没有关于新特征调整现有特征函数的情况下,模型相对于最终目标变得不太理想(less optimal)。但是,如果添加了新特征,则已训练的机器学习模型可以自动调整特征权重。机器学习模型可以包括新特征,并且适当地重新平衡其所有现有权重,以针对最终目标进行优化。因此,可以改善图像搜索引擎的准确性、效率和维护。
将在附图和以下描述中阐述本说明书的主题的一个或多个实施例的细节。从说明书、附图和权利要求书中,本主题的其他特征、方面和优势将变得清晰。
附图说明
图1A是示例搜索系统的框图。
图1B是用于从图像、登陆页面和查询特征生成关联性(relevance)得分的示例搜索系统的框图。
图2是用于从用户提交的图像搜索查询生成图像搜索结果的示例过程的流程图。
图3是用于训练机器学习模型以针对图像搜索查询生成图像-登陆页面对的关联性得分的示例过程的流程图。
各个附图中的相同附图标记和指定指示相同的元素。
具体实施方式
图1A示出示例图像搜索系统114。图像搜索系统114是其中可实施下文所描述的系统、组件和技术的信息检索(retrieval)系统的示例。
用户102可以通过用户设备104与图像搜索系统114交互。例如,用户设备104可以是通过数据通信网络112(例如,局域网(LAN)或广域网(WAN),例如,互联网或网络的组合)耦合到图像搜索系统114的计算机。在某些情况下,例如,如果用户在用户设备104上安装了执行搜索的应用,则图像搜索系统114可以被实施在用户设备104上。用户设备104通常将包括用于存储指令和数据的存储器,例如随机存取存储器(RAM)106,以及用于执行所存储的指令的处理器108。存储器可以包括只读存储器和可写存储器。
图像搜索系统114被配置成搜索图像的集合。通常,集合中的图像是在互联网或私有网络(例如,内联网(Intranet))上的网页上找到的图像。在其上找到图像的网页(即,其中包括图像的网页)在本说明书中将被称为图像的登陆页面。
用户102可以使用用户设备104向图像搜索系统114提交搜索查询110。当用户102提交搜索查询110时,搜索查询110通过网络112被发送到图像搜索系统114。
当图像搜索系统114接收到搜索查询110时,图像搜索系统114内的搜索引擎130识别满足搜索查询110的图像-登陆页面对,并且通过生成各自识别满足搜索查询110的相应图像-登陆页面对的搜索结果128来对查询110进行响应。每个图像-登陆页面对包括图像及在其上找到图像的登陆页面。例如,图像搜索结果可以包括较低分辨率版本的图像或者来自图像的裁切(crop)以及识别登陆页面的数据,例如,登陆页面的资源定位符、登陆页面的标题或其他识别信息。图像搜索系统114通过网络112将搜索结果128发送到用户设备104以呈现给用户102,即以可以呈现给用户102的形式来呈现。
搜索引擎130可以包括索引引擎132和排名引擎134。索引引擎132对图像-登陆页面对编制索引(index),并且将编制索引后的图像-登陆页面对添加到索引数据库122。也就是说,索引数据库122包括识别图像的数据、以及针对每个图像的对应登陆页面。
索引数据库122还将图像-登陆页面对与以下项相关联:(i)图像搜索查询的特征;(ii)图像的特征,即,表征图像的特征;以及(iii)登陆页面的特征,即,表征登陆页面的特征。将在下文中更详细地描述图像和登陆页面的特征的示例。可选地,索引数据库122还将图像-登陆对的集合中的编制索引后的图像-登陆页面对与编制索引后的图像-登陆页面对的图像搜索引擎排名信号的值相关联。在响应于接收到的搜索查询来对图像-登陆页面对进行排名时,排名引擎134使用每个图像搜索引擎排名信号。
排名引擎134基于图像-登陆页面对的图像搜索引擎排名信号(例如,从索引数据库122访问的信号或在查询时间计算出的信号)的值生成在索引数据库122中编制索引的图像-登陆页面对的相应排名得分,并且基于相应的排名得分而对图像-登陆页面对进行排名。给定图像-登陆页面对的排名得分反映图像-登陆页面对与接收到的搜索查询110的关联性、给定图像-登陆页面对的质量、或这两者。
图像搜索引擎130可以使用机器学习模型150以响应于接收到的搜索查询来对图像-登陆页面对进行排名。
机器学习模型150是被配置成接收输入并生成测量候选图像搜索结果与图像搜索查询的关联性的关联性得分的机器学习模型,所述输入包括:(i)图像搜索查询的特征;(ii)图像的特征;以及(iii)图像的登陆页面的特征。一旦机器学习模型150生成了用于图像-登陆页面对的关联性得分,排名引擎134然后可以响应于接收到的搜索查询,使用关联性得分来生成图像-登陆页面对的排名得分。
在一些实施方式中,排名引擎134使用索引数据库122中的信号生成多个图像-登陆页面对中的每一个的初始排名得分。然后,排名引擎134可以选择一定数量的最高得分图像-登陆页面对,以供机器学习模型150处理。然后,排名引擎134可以基于由机器学习模型150生成的关联性得分来对候选图像-登陆页面对进行排名,或者使用关联性得分作为附加信号来调整候选图像-登陆页面对的初始排名得分。
机器学习模型150可以是各种机器学习模型中的任何机器学习模型。例如,机器学习模型150可以是深度机器学习模型,例如,包括多层非线性操作的神经网络。作为另一个示例,机器学习模型可以是不同类型的机器学习模型,例如,广义线性模型(generalizedlinear model)、随机森林、决策树模型等等。
下文将参考图2和图3更详细地描述使用机器学习模型对图像-登陆页面对进行排名。
为了训练机器学习模型150,使得可以使用机器学习模型150来准确地生成索引数据库122中的图像-登陆页面对的关联性得分,图像搜索系统114包括训练引擎160。训练引擎160在使用已经与关联性得分的真值(ground truth)或已知值相关联的图像-登陆页面对生成的训练数据上训练机器学习模型150。将在下文中参照图3更详细地描述训练机器学习模型。
图1B示出机器学习模型136的示例,机器学习模型从图像、登陆页面和查询特征生成针对特定图像搜索结果的关联性得分180。
在图1B的示例中,用户提交图像搜索查询170。系统基于用户提交的图像搜索查询170生成图像查询特征172。下文将参照图2来描述查询特征172的示例。
系统还生成或获得通过特定图像搜索结果识别的登陆页面的登陆页面特征174以及通过特定图像搜索结果识别的图像的图像特征176。下文将参照图2来描述登陆页面特征174和图像特征176的示例。之后,系统将查询特征172、登陆页面特征174和图像特征176作为输入提供给机器学习模型136。
具体地,机器学习模型136接收包括图像搜索查询的特征、登陆页面的特征以及图像的特征的单个输入,并且预测特定图像搜索结果与用户图像查询170的关联性,即,关联性得分180。这允许机器学习模型以特定于查询的方式对登陆页面特征174、图像特征176或图像搜索查询特征172赋予更高权重,从而改善返回给用户的图像搜索结果的质量。
图2是用于从用户提交的图像搜索查询生成图像搜索结果的示例过程的流程图。为方便起见,将过程200描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当地编程的图像搜索系统,例如,图1A的图像搜索系统114,可以执行过程200。
图像搜索系统从用户设备接收图像搜索查询(步骤202)。在某些情况下,图像搜索查询是通过图像搜索系统所提供的专用图像搜索界面,即,用于提交图像搜索查询的用户界面来提交的。在其他情况下,搜索查询是通过通用(generic)互联网搜索界面来提交的,并且响应于图像搜索查询来与其他类型的搜索结果(即,识别互联网上可用的其他类型的内容的搜索结果)一起显示图像搜索结果。
在接收到图像搜索查询时,图像搜索系统识别满足图像搜索查询的初始图像-登陆页面对(步骤204)。例如,系统可以基于测量对的质量、对与搜索查询的关联性或这两者的信号,从在搜索引擎索引数据库中编制索引的对中识别初始图像-登陆页面对。
对于每个对,系统识别(i)图像搜索查询的特征、(ii)图像的特征、以及(iii)登陆页面的特征(步骤206)。这可以来自索引数据库,或者可以来自将图像和登陆页面与相应特征相关联的系统所维护的其他数据。
例如,图像的特征可以包括表示图像的内容的向量。通过嵌入式神经网络处理图像,可得出表示图像的向量。替选地,可以通过用于特征提取的其他图像处理技术来生成向量。示例特征提取技术包括边缘、拐角、隆起和斑点(blob)检测。作为另一个示例,特征向量可以包括使用形状提取技术(例如,阈值化、模板匹配等)生成的向量。作为特征向量的替代或附加,当机器学习模型是神经网络时,特征可以包括图像的像素数据。
从登陆页面提取的特征的示例包括:首次爬网(crawl)或更新页面的日期、表征登陆页面的作者的数据、登陆页面的语言、登陆页面所属域的特征、表示登陆页面的内容的关键字、指向图像和登陆页面的链接的特征(例如链接的锚文本或源页面)、描述登陆页面中图像的上下文的特征等。
从登陆页面提取的描述登陆页面中图像的上下文的特征的示例包括表征登陆页面内图像的位置的数据、登陆页面上图像的显著性(prominence)、登陆页面上图像的文本描述等。登陆页面内图像的位置可以使用水平和垂直尺度上基于像素的几何位置、水平和垂直尺度上基于用户设备的长度(例如,以英寸为单位)、基于HTML/XML DOM的类XPATH识别符、基于CSS的选择器等来准确地找到(pin-point)。图像在登陆页面上的显著性可以使用显示在通用设备和特定用户设备上的图像的相对大小来测量。登陆页面上图像的文本描述可以包括图像的替代文本标签、图像周围的文本等。
图像搜索查询的特征的示例可以包括搜索查询的语言、搜索查询中的一些或所有术语、提交搜索查询的时间、提交搜索查询的地点、表征从中接收查询的用户设备的数据等。
这些特征可以分类或离散地表示。此外,可以通过预先存在的特征来创建附加的相关特征。例如,系统可以通过加法、乘法或其他数学运算的组合来创建一个或多个特征之间的关系。
对于每个图像-登陆页面对,系统使用图像搜索结果排名机器学习模型来处理特征以生成关联性得分输出(步骤208)。关联性得分测量候选图像搜索结果与图像搜索查询的关联性。在一个示例中,候选图像搜索结果的关联性得分测量提交搜索查询的用户将点击搜索结果或以其他方式与搜索结果交互的可能性。更高的关联性得分指示提交搜索查询的用户将认为候选图像搜索更相关,并点击它。在另一个示例中,候选图像搜索结果的关联性得分可以是对由人类评定者会产生的得分的预测,以测量图像搜索查询的结果的质量。下文将参照图3描述训练机器学习模型以生成准确的关联性得分。
如上所述,排名机器学习模型可以是各种机器学习模型中的任何一种。
系统基于针对相应的图像搜索结果-登陆页面对的关联性得分来对图像搜索结果进行排名(步骤210)。
在一些实施方式中,系统基于关联性得分依序对图像搜索结果进行排名,即,关联性得分更高的搜索结果在排名中更高。
在一些其他实施方式中,系统基于关联性得分来调整图像搜索结果的初始排名得分,即,以提升(promote)关联性得分较高的搜索结果、降级(demote)关联性得分较低的搜索结果、或这两者。例如,系统可以使用搜索结果的关联性得分来确定每个搜索结果的修正因数(modification factor)。然后,系统可以将修正因数应用于搜索结果的初始排名得分,例如,通过将修正因数与初始排名得分相加,或者将初始排名得分乘以修正因数,以生成最终排名得分并且然后依据最终排名得分来对初始搜索结果进行排名。
系统生成根据排名示出图像搜索结果的图像搜索结果呈现(步骤212),并且通过经由网络将搜索结果呈现发送给用户设备(按照能够向用户呈现的形式从该用户设备接收了图像搜索查询)来提供图像搜索结果呈现以用于呈现(步骤214)。
图3是用于训练排名机器学习模型的示例过程300的流程图。为方便起见,将过程300描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当地编程的图像搜索系统,例如图1A的图像搜索系统114,可以执行过程300。
系统接收一组训练图像搜索查询,并且对于每个训练图像搜索查询,对各自与真值关联性得分相关联的、针对查询的图像搜索结果进行训练(步骤302)。真值关联性得分是机器学习模型应当为图像搜索结果生成的关联性得分。例如,当关联性得分测量用户将响应于给定搜索查询而选择搜索结果的可能性时,每个真值关联性得分可以识别提交给定搜索查询的用户是否实际上选择了图像搜索结果,或提交给定搜索查询的用户实际上选择了图像搜索结果的次数的比例。作为另一示例,当由模型生成的关联性得分是对将由人分配给图像搜索结果的得分的预测时,真值关联性得分是由人类评定者分配给搜索结果的实际得分。
对于训练图像搜索查询中的每一个,系统生成每个关联图像-登陆页面对的特征(步骤304)。
对于每个对,系统识别(i)图像搜索查询的特征、(ii)图像的特征、以及(iii)登陆页面的特征。提取、生成和选择特征可以在训练或使用机器学习模型之前发生。上文参照图2描述了特征的示例。
排名引擎通过针对每个图像搜索查询处理(i)图像搜索查询的特征、(ii)通过候选图像搜索结果识别的相应图像的特征、以及(iii)通过候选图像搜索结果识别的相应登陆页面的特征和测量候选图像搜索结果与图像搜索查询的关联性的相应真值关联性,来训练排名机器学习模型(步骤306)。
系统以适于所使用的机器学习模型的类型的方式来训练机器学习模型,以最小化损失函数。例如,如果模型是神经网络,则系统可以通过下述方式训练神经网络模型以从初始权重值确定神经网络的训练后权重值:重复执行神经网络训练过程以计算关于权重的损失函数的梯度,例如,使用反向传播,并且例如使用对应于神经网络训练过程的更新规则来从梯度确定对权重的更新。
系统可以在训练机器学习模型时使用各种损失函数中的任何一种。
可以用于训练模型的损失函数的示例包括成对(pairwise)损失、逐点(pointwise)损失和列表(listwise)损失函数。
成对损失函数评估两个输入图像搜索结果。成对损失试图使与真值相比,对的关联性排序的反演或不正确估计最少。也就是说,当使用成对损失函数时,对模型进行训练以生成搜索结果对的得分,以使得模型对真值关联性得分较高的搜索结果分配较高的关联性得分。在每个训练步骤中,系统使用机器学习模型处理一对图像搜索结果中的每个图像搜索结果的特征,以生成该对中的两个搜索结果的相应预测的关联性得分。之后,当通过预测的关联性得分对该对的关联性进行排序与通过真值关联性得分对该对的关联性进行排序不匹配时,系统调整机器学习模型的权重以对模型进行罚分(penalize)。
逐点损失函数评估单个搜索图像结果。也就是说,当使用逐点损失函数时,对模型进行训练以生成与真值得分相匹配的搜索结果的得分。在每个训练步骤中,系统使用机器学习模型处理单个图像搜索结果的特征,以生成图像搜索结果的预测的关联性得分。之后,系统调整机器学习模型的权重以针对预测的关联性得分与真值关联性得分之间的偏差,对模型进行罚分。
列表损失函数评估图像搜索结果的列表以找到最佳关联性排名,即,与通过真值关联性得分对搜索结果进行排名相匹配的关联性排名。也就是说,在每个训练步骤中,系统使用机器学习模型处理搜索结果列表中的每个搜索结果的特征,以生成每个搜索结果的相应预测的关联性得分。然后,当通过预测的关联性得分对搜索结果进行排名与通过真值关联性得分对搜索结果进行排名偏差时,系统调整模型的权重值,以对模型进行罚分。
本说明书中将术语“配置”与系统和计算机程序组件结合使用。对于要配置成执行特定操作或动作的一个或多个计算机的系统,意味着系统上已安装有在操作中致使系统执行操作或动作的软件、固件、硬件或它们的组合。对于要被配置成执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括在被数据处理装置执行时致使装置执行操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可以在数字电子电路、以有形方式实施的计算机软件或固件、计算机硬件,包括本说明书中所公开的结构及其结构等同物,或者它们中的一者或多者中实施。本说明书中描述的主题的实施例可以被实施为一个或多个计算机程序,即,编码在有形非暂态存储介质上的计算机程序指令的一个或多个模块,以便被数据处理装置执行或控制数据处理装置的操作。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备或它们中的一者或多者的组合。替选地或附加地,程序指令可以被编码在人工生成的传播信号,例如机器生成的电信号、光信号或电磁信号上,其被生成以对信息进行编码以发送到适当的接收器装置以被数据处理装置执行。
术语“数据处理装置”是指数据处理硬件,并且包括用于处理数据的各种装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。装置还可以是,或者进一步包括,专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除硬件之外,装置还可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议堆栈、数据库管理系统、操作系统或者它们中的一者或多者的组合的代码。
也可以被称为或描述为程序、软件、软件应用、App(应用)、模块、软件模块、脚本或代码的计算机程序可以以任何形式的编程语言来编写,包括编译或解译的语言,或说明性或程序性语言;并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境中的其他单元。程序可以但不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中,例如存储在标记语言文档中的一个或多个脚本、专用于所讨论的程序的单个文件中,或者多个协调文件中,例如,存储一个或多个模块、子程序或代码部分的文件中。可以将计算机程序部署成在一个计算机上执行,或者在位于一个地点,或者分布在多个地点并通过数据通信网络互连的多个计算机上执行。
在本说明书中,术语“数据库”被广泛地用于指代任何数据集合:数据不需要以任何特定方式进行结构化或根本不需要结构化,并且数据可以存储在一个或多个位置处的存储设备中。因此,例如,索引数据库可以包括多个数据集合,其中的每个数据集合可以以不同方式组织和访问。
类似地,在本说明书中,术语“引擎”被广泛地用于指代被编程以执行一个或多个特定功能的基于软件的系统、子系统或过程。通常,引擎将被实施成安装在一个或多个位置处的一个或多个计算机上的一个或多个软件模块或组件。在某些情况下,一个或多个计算机将专用于特定引擎;在其他情况下,可以在相同的一个或多个计算机上安装并运行多个引擎。
本说明书中描述的过程和逻辑流可以由一个或多个可编程计算机执行,一个或多个可编程计算机执行一个或多个计算机程序以通过对输入数据进行运算并且生成输出来执行功能。过程和逻辑流还可以通过专用逻辑电路,例如,FPGA或ASIC,或者通过专用逻辑电路与一个或多个编程的计算机的组合来执行。
适于执行计算机程序的计算机可以基于通用或专用微处理器或这两者,或者基于任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或这两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如,磁盘、磁光盘或光盘,或可操作地耦合以从其接收数据或向其传送数据。但是,计算机不必具有此类设备。此外,计算机可以嵌入到另一设备中,例如举几个例子:移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备,例如通用串行总线(USB)闪存驱动器。
适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如,EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移除盘;磁光盘;以及CD ROM和DVD-ROM盘。
为提供与用户的交互,本说明书中描述的主题的实施例可以在计算机上实施,该计算机具有用于向用户显示信息的显示设备,例如CRT(阴极射线管)或LCD(液晶显示器)监视器,以及用户可借助其向计算机提供输入的键盘和指向设备,例如鼠标或跟踪球。其他类型的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且来自用户的输入,包括声音、语音或触觉输入可以以任何形式被接收。此外,计算机可以通过向用户使用的设备发送文档并且从用户使用的设备接收文档来与用户进行交互;例如,通过响应于从网络浏览器接收到的请求而将网页发送到用户设备上的网络浏览器。此外,计算机可以通过将文本消息或其他形式的消息发送到个人设备,例如,运行消息收发应用的智能手机,并且从用户接收响应消息作为回应来与用户交互。
用于实施机器学习模型的数据处理装置还可以包括例如专用硬件加速器单元,以用于处理机器学习训练或生产,即推理,工作负荷的公共和计算密集性部分。
机器学习模型可以使用机器学习框架,例如TensorFlow框架、MicrosoftCognitive Toolkit框架、Apache Singa框架或Apache MXNet框架来实施和部署。
本说明书中描述的主题的实施例可以在计算系统中实施,该计算系统包括后端组件,例如作为数据服务器,或者包括中间件组件,例如应用服务器,或者包括前端组件,例如具有用户可通过其与本说明书中描述的主题的实施方案进行交互的图形用户界面、网络浏览器或app的客户端计算机,或者一个或多个此类后端、中间件或前端组件的任意组合。系统的组件可以通过数字数据通信的任何形式或介质(例如通信网络)互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如互联网(Internet)。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且典型地通过通信网络进行交互。客户端与服务器的关系是通过在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序产生的。在一些实施例中,服务器将数据(例如HTML页面)发送到用户设备,例如,以用于向与充当客户端的设备交互的用户显示数据,并且接收来自该用户的用户输入。可以在服务器处从设备接收在用户设备处生成的数据,例如,用户交互的结果。
尽管本说明书包含许多特定的实施细节,但是这些不应解释为对任何发明的范围或可以要求保护的范围的限制,而是应解释为可以特定于特定发明的特定实施例的特征的描述。本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中结合实施。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何适当的子组合来实施。此外,尽管上文可能将特征描述为以某些组合形式作用,甚至最初如此要求保护,但是在某些情况下,可以从要求保护的组合中剔除来自该组合的一个或多个特征,并且可以将所要求保护的组合定向为子组合或子组合的变体。
类似地,尽管操作已在附图中描绘并且以特定顺序在权利要求中阐述,但是这不应被理解为要求此类操作必须以图示的特定顺序或者顺次顺序来执行,或者所有示出的操作都必须执行以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中需要这种分离,并且应当理解,所描述的程序组件和系统通常可以被一起集成在单个软件产品中,或封装成多个软件产品。
已经描述了主题的特定实施例。其他实施例在所附权利要求的范围内。例如,权利要求中提到的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或顺次顺序来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。

Claims (12)

1.一种方法,包括:
从用户设备接收图像搜索查询;
获得针对图像搜索查询的多个候选图像搜索结果,每个候选图像搜索结果识别相应图像以及用于相应图像的相应登陆页面;
对于候选图像搜索结果中的每一个:
使用已训练的图像搜索结果排名机器学习模型来处理(i)通过候选图像搜索结果识别的相应图像的特征、以及(ii)通过候选图像搜索结果识别的相应登陆页面的特征,以通过基于图像搜索查询的特征以查询相关方式将通过候选图像搜索结果识别的相应图像的特征与通过候选图像搜索结果识别的相应登陆页面的特征进行组合来生成关联性得分,该关联性得分测量候选图像搜索结果与图像搜索查询的关联性;
基于图像搜索结果排名机器学习模型生成的关联性得分对候选图像搜索结果进行排名;
生成图像搜索结果呈现,该图像搜索结果呈现显示根据排名进行排序的候选图像搜索结果;以及
提供图像搜索结果以供用户设备呈现。
2.根据权利要求1所述的方法,其中,候选图像搜索结果根据初始排名进行排名,并且其中,基于图像搜索结果排名机器学习模型生成的关联性得分对候选图像搜索结果进行排名包括:
基于图像搜索结果排名机器学习模型生成的关联性得分来调整初始排名。
3.根据权利要求1或2中的任一权利要求所述的方法,其中,图像搜索查询的特征包括图像搜索查询的文本。
4.根据任一前述权利要求所述的方法,其中,图像的特征包括下述各项中的一个或多个:图像的像素数据、或图像的嵌入。
5.根据任一前述权利要求所述的方法,其中,登陆页面的特征包括下述各项中的一个或多个:来自登陆页面的文本、登陆页面的标题,或登陆页面的资源定位符。
6.根据任一前述权利要求所述的方法,其中,登陆页面的特征包括表征登陆页面的新鲜度的特征。
7.根据任一前述权利要求所述的方法,其中,图像搜索结果排名机器学习模型是神经网络。
8.根据任一前述权利要求所述的方法,还包括:
生成多个训练示例;以及
在训练示例上训练图像搜索结果排名机器学习模型。
9.根据权利要求8所述的方法,其中,每个训练示例包括训练查询、一对训练图像搜索结果、以及表征所述一对训练图像搜索结果与查询的相对关联性的标签,并且其中训练图像搜索结果排名模型包括在训练示例上训练图像搜索结果排名模型,以最小化成对损失函数。
10.根据权利要求8所述的方法,其中,每个训练示例包括训练查询、训练图像搜索结果、以及目标关联性得分,并且其中训练图像搜索结果排名模型包括在训练示例上训练图像搜索结果排名模型,以生成与目标关联性得分相匹配的关联性得分。
11.一种系统,包括一个或多个计算机以及一个或多个存储设备,所述一个或多个存储设备存储指令,所述指令在由一个或多个计算机执行时,使一个或多个计算机执行任何前述权利要求所述的方法的相应操作。
12.一种或多种非暂态计算机可读存储介质,其存储指令,所述指令在由一个或多个计算机执行时,使一个或多个计算机执行权利要求1到10中的任一权利要求所述的方法的相应操作。
CN201980066763.7A 2018-12-20 2019-12-20 使用机器学习模型对图像搜索结果进行排名 Pending CN112823345A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862783134P 2018-12-20 2018-12-20
US62/783,134 2018-12-20
US16/263,398 US20200201915A1 (en) 2018-12-20 2019-01-31 Ranking image search results using machine learning models
US16/263,398 2019-01-31
PCT/US2019/068135 WO2020132623A1 (en) 2018-12-20 2019-12-20 Ranking image search results using machine learning models

Publications (1)

Publication Number Publication Date
CN112823345A true CN112823345A (zh) 2021-05-18

Family

ID=71097411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980066763.7A Pending CN112823345A (zh) 2018-12-20 2019-12-20 使用机器学习模型对图像搜索结果进行排名

Country Status (3)

Country Link
US (1) US20200201915A1 (zh)
CN (1) CN112823345A (zh)
WO (1) WO2020132623A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022519367A (ja) * 2019-02-05 2022-03-23 グーグル エルエルシー 複数のコンテンツタイプの教育コンテンツの理解度ベースの識別
US10972802B1 (en) 2019-09-26 2021-04-06 Dish Network L.L.C. Methods and systems for implementing an elastic cloud based voice search using a third-party search provider
US11475018B2 (en) * 2020-01-22 2022-10-18 Salesforce.Com, Inc. Determining user and data record relationships based on vector space embeddings
US11715023B2 (en) * 2020-07-21 2023-08-01 Bayerische Motoren Werke Aktiengesellschaft Methods and apparatuses for training one or more model parameters of a predictive parking difficulty model
CN112417287A (zh) * 2020-11-24 2021-02-26 乐聚(深圳)机器人技术有限公司 积木块搜索方法、模型训练方法、装置、设备及存储介质
US11734376B2 (en) * 2020-12-30 2023-08-22 Yandex Europe Ag Method and server for ranking digital documents in response to a query
CN114077682B (zh) * 2022-01-19 2022-04-29 广州拟实网络科技有限公司 一种图像检索智能识别匹配处理方法、系统和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10324993B2 (en) * 2016-12-05 2019-06-18 Google Llc Predicting a search engine ranking signal value

Also Published As

Publication number Publication date
US20200201915A1 (en) 2020-06-25
WO2020132623A1 (en) 2020-06-25

Similar Documents

Publication Publication Date Title
US10387437B2 (en) Query rewriting using session information
CN112823345A (zh) 使用机器学习模型对图像搜索结果进行排名
US11782998B2 (en) Embedding based retrieval for image search
US9177046B2 (en) Refining image relevance models
US10102482B2 (en) Factorized models
US10410060B2 (en) Generating synthesis videos
US8832096B1 (en) Query-dependent image similarity
RU2691840C1 (ru) Фильтры результатов поиска из содержимого ресурсов
US8515212B1 (en) Image relevance model
CN110023928B (zh) 预测搜索引擎排名信号值
US9940367B1 (en) Scoring candidate answer passages
US20200250538A1 (en) Training image and text embedding models
US10019513B1 (en) Weighted answer terms for scoring answer passages
US20160378863A1 (en) Selecting representative video frames for videos
US20230205813A1 (en) Training Image and Text Embedding Models
US10180964B1 (en) Candidate answer passages
US10565265B2 (en) Accounting for positional bias in a document retrieval system using machine learning
US20200372076A1 (en) Learning to select vocabularies for categorical features
US9218366B1 (en) Query image model
US20150169633A1 (en) Ranking over hashes
CN107408125B (zh) 用于查询答案的图像
US8676812B1 (en) Dynamic weighting of indicator values for item scoring
US20190332682A1 (en) Automated selection of search ranker

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