CN110297890B - 使用交互式自然语言对话的图像获取 - Google Patents
使用交互式自然语言对话的图像获取 Download PDFInfo
- Publication number
- CN110297890B CN110297890B CN201910211985.5A CN201910211985A CN110297890B CN 110297890 B CN110297890 B CN 110297890B CN 201910211985 A CN201910211985 A CN 201910211985A CN 110297890 B CN110297890 B CN 110297890B
- Authority
- CN
- China
- Prior art keywords
- image
- search
- features
- program instructions
- input
- 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
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
- G06F16/5838—Retrieval 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/243—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- 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/53—Querying
-
- 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/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
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)
- Mathematical Physics (AREA)
- Library & Information Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本公开涉及使用交互式自然语言对话的图像获取。使用迭代的自然语言(NL)交互来修改搜索引擎以执行越来越精确的图像搜索。修改从NL搜索输入提取输入特征的集合,输入特征的集合包括与NL搜索输入中的NL语句相对应的响应特征的集合和来自NL搜索输入中的种子图像的图像特征的集合。修改对在包括输入特征中的至少一些输入特征的查询的结果集中的图像结果执行图像分析。在NL交互的下一次迭代中,结果集中的至少一些被提供。迭代中的NL响应被添加到累积NL基础,并且修正的结果集被提供,修正的结果集包括与从累积NL基础提取的新响应特征相对应的新图像结果。
Description
技术领域
本发明总体上涉及用于搜索和获取(retrieve)图像的方法、系统和计算机程序产品。更具体地,本发明涉及用于使用交互式自然语言对话的图像获取的方法、系统和计算机程序产品。
背景技术
在下文中,除非在使用时明确消除歧义,否则数字图像可互换地简单称为“多个图像”或“图像”。图像可以是单帧静态图像、动画图像、视频中的帧、摄影图像、漫画,并且具有或没有文本。
图像是物理对象或物理对象的集合的数字表示或摹本。当前存在检测或识别存在于给定图像中的某些对象的技术。例如,数字相机可以识别存在于由相机的传感器上的相机镜头产生的图像中的诸如人脸或人眼的对象。照片编辑软件可以识别存在于正被编辑的图像中的诸如直线的对象。
搜索引擎被理解为在计算机上执行并被配置为搜索以电子形式可获得的信息的应用。许多搜索引擎当前可用于搜索本地或远程的信息储存库,包括但不限于使用互联网的搜索。搜索引擎能够搜索文本内容以及图像。
自然语言(NL)是具有由人类用于主要与其他人类或与具有自然语言接口的系统进行通信的形式的脚本化(书写)或有声化(口头)语言。
自然语言处理(NLP)是促进人类与数据处理系统之间的信息的交换的技术。例如,NLP的一个分支涉及将人类可读或人类可理解的内容转换成机器可用数据。例如,NLP引擎当前可用于接受诸如报纸文章或人类语音的输入内容,并且从给定内容产生结构化数据,诸如输入内容的概览、最显著和最不显著的部分、主体、参考、内容内的依赖性等。
NLP的另一分支涉及基于关于主题域可用的信息来回答关于主题的问题。这是认知分析的分支。认知系统是执行认知分析的数据处理系统,并且这样的系统还被称为问答系统(Q和A系统)。认知分析是分析可用的信息或知识以产生、推测、推断、或导出新信息的过程。认知系统可以基于自然语言输入来执行这样的分析。
发明内容
说明性实施例提供一种方法、系统以及计算机程序产品。一个实施例包括一种方法,其使用迭代的自然语言(NL)交互来修改搜索引擎以执行越来越精确的图像搜索。通过实施例的修改包括:从NL搜索输入提取输入特征的集合,输入特征的集合包括与NL搜索输入中的NL语句相对应的响应特征的集合和来自NL搜索输入中的种子图像的图像特征的集合;对结果集中的图像结果执行图像分析,结果集响应于包括输入特征的子集的查询;至少提供结果集的子集作为NL交互的下一次迭代中的NL交互的一部分;将在下一次迭代中获得的NL响应添加到NL搜索输入以形成用于图像搜索的累积NL基础;以及响应于NL交互的下一次迭代提供修正的结果集,其中修正的结果集包括新图像结果,并且其中新图像结果与从累积NL基础提取的新响应特征相对应。
一个实施例包括一种计算机可用程序产品。计算机可用程序产品包括计算机可读存储设备以及存储在存储设备上的程序指令。
一个实施例包括一种计算机系统。计算机系统包括处理器、计算机可读存储器、以及计算机可读存储设备、以及存储在存储设备上用于经由存储器由处理器执行的指令。
附图说明
在随附权利要求中阐述了证实本发明的特性的某些新颖特征。然而,本发明本身以及其优选使用模式、另外的目标和优点将通过在结合附图阅读时参考说明性实施例的下面的具体实施方式而得到更好地理解。
图1描绘了说明性实施例可以被实现于其中的数据处理系统的网络的框图;
图2描绘了说明性实施例可以被实现于其中的数据处理系统的框图;
图3描绘了根据一个说明性实施例的用于使用交互式自然语言对话的图像获取的示例配置的框图;
图4描绘了根据一个说明性实施例的用于使用交互式自然语言对话的图像获取的示例训练过程的框图;
图5A描绘了根据一个说明性实施例的示例交互式NL图像搜索;
图5B描绘了来自图5A的示例交互式NL图像搜索的继续;以及图6描绘了根据一个说明性实施例的用于使用交互式自然语言对话的图像获取的示例过程的流程图。
具体实施方式
搜索引擎和在线搜索是公知的技术研究领域。该研究领域的技术的当前状态具有某些缺陷和限制。说明性实施例的操作赋予附加的或新的能力来改进搜索引擎和在线搜索的技术研究领域中,特别是图像搜索的领域中的现有技术。
说明性实施例认识到当前用户必须向搜索引擎提供精确指定的搜索查询,以便使搜索引擎响应于查询而找到图像。说明性实施例认识到当前可用的搜索引擎返回包括一幅或多幅图像的结果集,其可以与用户的搜索目标相关或者可以不相关。
说明性实施例认识到,通常搜索以用户可能搜索的内容的不清楚或笼统的想法开始,并且仅在看到结果集时用户的搜索目标才变得更清楚。搜索的目标是来自搜索的期望结果。当前可用的搜索引擎允许用户提交针对新搜索的新搜索查询、或者通过在结果集内搜索来细化结果集。
说明性实施例认识到这两种搜索方法在许多情况下都不是高效的。例如,在许多情况下,用户可以以会话风格来表达搜索的目标,但是发现难以将目标置成搜索查询的形式。在许多其他情况下,用户仅具有关于用户搜索的内容的笼统想法,并且需要确定目标的辅助。这种情形在实体店中太熟悉,其中销售助理首先问购物者关于用户的选择、偏好、购买历史、体验历史、要满足的需求、对象将被用于的目的等一系列问题。基于购物者提供的回答,销售助理调整后续问题以努力确定用户的购物活动背后的对象。
说明性实施例认识到因为大多数购物已经从实体店转移到在线商店,所以这样的机制在集成到在线购物的当前使用的在线搜索技术中仍然不可用。当前,用户仅被提供有与用户指定的搜索查询相对应的结果集,并且在一些情况下可能还有建议的结果集。然而,当前可用的搜索技术不提供以类似人类的自然语言谈话与用户的交互式沟通的方法,该方法可能以实体店中的销售助理的方式辅助用户。
说明性实施例还认识到一般地,这样的交互式方法有用于增强与搜索任何类型的信息(包括但不限于搜索关于在线购物中的产品和服务的数字信息)相对应的任何结果集中的搜索结果的相关性。例如,绘制计算机辅助绘图的绘制者可能需要库存图像或图像组件以包括在绘图中,但是可能需要以类似的方式的交互式帮助以找到与绘制者心中的使用或目的最相关的一个图像或多个图像。
搜索引擎和信息搜索的技术研究领域的当前状态当前不包括交互式地且迭代地引导用户朝向用户搜索目标的越来越大的精度的机制。现有的交互式图像获取方法可能仅基于非常有限形式的用户反馈来逐步地细化结果。例如,现有的交互式图像获取系统的用户可以点击一些“好”结果和“坏”结果,并且系统基于该反馈来调整所有图像结果的排名并返回排名靠前的图像结果的重新排名的列表。这样的当前可用的方法不允许用户精确地表达什么视觉细节使一些图像“好/坏”。存在对如下的改进的搜索机制的需求:可以以类似人类自然语言谈话与用户交互,以不仅逐步地细化已经产生的结果集而且具有新的结果集。实施例的迭代的交互式方法允许用户在描述用户期望什么好特性或不期望什么坏特性的细节方面是具体的、模糊的、通俗的、冗长的或谈话式的。
说明性实施例认识到当前可用的工具或解决方案不处理这些需求/问题或者不提供针对这些需求/问题的足够的解决方案。用于描述本发明的说明性实施例总体上通过使用交互式自然语言对话的图像获取来处理并解决上述问题和其他相关问题。
一个实施例可以被实施为某些硬件组件和软件应用的组合。实施例的实现或其一个或多个组件可以被配置为现有搜索引擎的修改,其中伴随的软件应用执行在以下项的一些组合中:(i)搜索引擎本身,(ii)通过短程无线电或局域网(LAN)与搜索引擎通信的数据处理系统,以及(iii)通过广域网(WAN)与搜索引擎通信的数据处理系统。
一个实施例从用户接收针对搜索的初始请求。请求可以采取搜索查询、音频或文本自然语言语句、图像、或其一些组合的形式。初始搜索请求中呈现的图像在后文中被称为“种子图像”。例如,用户可以说出或文本地输入NL句子“像这样的一些手提包怎么样?”并且还输入包括手提包的种子图像。
实施例分析种子图像以提取图像特征的集合。图像特征是图像中的也在伴随的NL或关键词输入中提及的对象的可描述性质。例如,如果NL语句指的是手提包并且种子图像包括某个场景中的多个人,其中一个人拿着手提包,则图像特征可以是手提包的形状、大小、颜色、图案、品牌或材料,而不管在种子图像中还表示有其他什么。
如果搜索请求包括搜索查询,则实施例将查询和至少图像特征的子集传递给搜索引擎。搜索引擎使用来自一个或多个数据储存库的数据来准备结果集。
如果搜索请求包括NL语句,则实施例解析语句,例如使用被配置为从用户的NL语句中提取响应特征的集合的认知系统。响应特征是NL句子中根据NL的语法结构的语音的一部分并且引用NL句子的主体。例如,在NL语句“像这样的一些手提包怎么样”中,主体是“手提包”。因此,一个响应特征是“手提包”和“手提包”的同义词。附加的响应特征可以基于短语“像这样”,其导致产生指示与也在输入中提供以识别图像特征的内容的参考相似性的响应特征。
NL输入的简单示例和种子图像的简单示例被选择以用于描述的清楚并且不暗示对这种简单形式的输入的任何限制。根据本公开,本领域普通技术人员将能够设想包括多个响应特征的许多其他复杂的NL语句、包括图像特征的其他变型的其他类型的种子图像、或两者,并且其被预见在说明性实施例的范围内。
一个实施例使用至少响应特征的子集和至少图像特征的子集来构建查询。实施例将构建的查询传递给搜索引擎。另一实施例将响应特征的子集和图像特征的子集传递给搜索引擎。
用户输入还可以仅是标注的种子图像,其中标注标记种子图像中的感兴趣对象。标注可以采取任何合适的形式。如果图像是单个对象的图像,则标注可能不是必需的,并且实施例提取针对所描绘的单个对象的图像特征的集合。在这样的情况下,一个实施例仅使用与感兴趣对象相关的图像的集合或子集来构建搜索查询。
结果集包括图像作为结果。一旦结果集已经由搜索引擎产生,实施例就分析图像结果以提取与用户输入的主体相关的图像特征的集合。实施例将图像特征的集合与响应特征的集合匹配以确定图像结果与用户输入之间的对应程度。图像特征与响应特征之间的匹配可以在指定的容差内,并且可以使用任何合适的匹配算法来执行。基于图像结果与用户输入之间的匹配程度,实施例计算与图像结果相对应的置信度值。置信度值表示匹配程度,并且可用于确定图像结果与用户输入相对应的程度。置信度越高,对应性越高,并且反之亦然。
结果集可以包括相对于彼此实现不同的置信度程度的图像结果。一个实施例根据它们相应的置信度对结果集中的图像结果进行排名和重新排列。
一个实施例将结果集呈现给用户并发起与用户的NL谈话。实施例可以以NL问问题,例如“你喜欢这些中的哪个?”或者可以做出建议性的NL语句,例如“我想你会喜欢这些”。NL谈话模拟早前描述的人类销售助理的方法,并且被配置为逐渐地且交互式地将用户引导到良好限定的且精确的搜索目标。
基于用户的NL响应,实施例触发搜索的另一迭代。具体地,实施例收集用户输入和用户的每个NL响应作为用于搜索的累积NL基础。实施例分析累积NL基础以提取响应特征的新集合。如果用户指示针对来自呈现的结果集的一个或多个图像响应的偏好,则实施例还从每个这样的图像结果中提取图像特征的集合。
实施例然后使用至少来自累积NL输入的响应特征的子集以及至少从种子图像和任何偏好的图像结果提取的图像特征的子集来构建新的搜索查询。实施例将查询传递给搜索引擎。搜索引擎使用来自一个或多个储存库的数据来准备新结果集。一个实施例可以使得搜索引擎使用新查询来缩小先前结果集而不是构建新结果集。
这样的实施例(发起NL谈话和来自用户的NL响应)的任何数目的迭代可以用于逐步地改进结果集与用户的搜索目标的相关性。
一个实施例结果集是否满足确定退出条件。退出条件的一个非限制性示例可以是结果集的至少阈值分数(fraction)具有大于阈值置信度值的置信度值。退出条件的另一示例可以是指示用户对最后的结果集满意或已经以其他方式选择退出过程的用户输入。
训练过程训练以下项的组合:(i)实现一个实施例的应用和(ii)认知系统。训练允许该组合改进从用户输入的特征提取和NL中的响应、改进从种子图像和图像结果的特征提取、或者两者。
一个示例训练过程使用初始训练输入、地面真值(ground truth)图像、以及一个或多个NL交互来训练该组合。例如,初始输入将NL语句和种子图像提供给该组合。如本文中所描述的,输入特征和图像特征的集合通过该组合来提取。如本文中所描述的,图像结果与累积NL基础进行比较并且其置信度值相对于地面真值的特征被评估。基于一个或多个图像结果的置信度值,对应用、认知系统、或两者应用特征提取调整。调整被配置为改进后续训练迭代中的相同或相似图像结果的置信度值。
训练可以采用以这种方式的若干训练迭代。迭代的数目是实现特异性的。例如,在一种情况下,训练可以使用成百数千次迭代来完成,并且在另一种情况下,通过仅几十或几百次迭代来完成。当图像结果具有相对于地面真值高于阈值置信度值的置信度值或者满足退出条件,训练终止。训练产生实施例和认知系统的经训练的组合。经训练的组合然后可以被用在具有实际用户输入和种子图像的生产环境中。
本文中描述的使用交互式自然语言对话的图像获取的方式在涉及搜索引擎并且特别是涉及搜索图像的技术研究领域中的当前可用方法中是不可获得的。当被实现为在设备或数据处理系统上执行时,本文中描述的实施例的方法包括该设备或数据处理系统经由迭代的类似人类NL交互来辅助用户逐渐地以越来越大的精度限定从搜索引擎寻求的图像的特性的功能的实质进步。
关于某些类型的对象、图像、图像特征、输入、NL输入、NL响应和交互、响应特征、比较、置信度、阈值、容差、训练、条件、认知配置、实施例的位置、附加的数据、设备、数据处理系统、环境、组件、以及应用仅作为示例来描述说明性实施例。这些和其他类似制品的任何具体表现形式不旨在限制本发明。这些和其他类似制品的任何合适的表现形式可以在说明性实施例的范围内被选择。
另外,说明性实施例可以关于任何类型的数据、数据源、或通过数据网络对数据源的访问来实现。在本发明的范围内,任何类型的数据存储设备可以在数据处理系统本地或通过数据网络将数据提供给本发明的实施例。在实施例使用移动设备来描述的情况下,在说明性实施例的范围内,适合于与移动设备一起使用的任何类型的数据存储设备可以在移动设备本地或通过数据网络将数据提供给这样的实施例。
使用具体代码、设计、架构、协议、布局、示意图和工具仅作为示例来描述说明性实施例并且不限制说明性实施例。另外,在一些实例中使用具体软件、工具以及数据处理环境仅作为示例为了描述的清楚来描述说明性实施例。说明性实施例可以结合其他可比或类似目的的结构、系统、应用或架构来使用。例如,在本发明的范围内,其他可比的移动设备、针对其的结构、系统、应用或及其架构可以结合本发明的这样的实施例来使用。说明性实施例可以以硬件、软件或其组合来实现。
本公开中的示例仅为了描述的清楚并且不限制说明性实施例。附加的数据、操作、动作、任务、活动以及操纵将可根据本公开设想到并且其被预见在说明性实施例的范围内。
本文中列出的任何优点仅是示例并且不旨在限制说明性实施例。附加的或不同的优点可以通过具体的说明性实施例来实现。另外,特定的说明性实施例可以具有以上列出的优点中的一些、全部或者不具有以上列出的优点中的任何。
参考附图并且特别是参考图1和图2,这些附图是说明性实施例可以被实现于其中的数据处理环境的示例示图。图1和图2仅是示例并且不旨在断言或暗示关于不同实施例可以被实现于其中的环境的任何限制。具体实现可以基于以下描述做出对所描绘的环境的许多修改。
图1描绘了说明性实施例可以被实现于其中的数据处理系统的网络的框图。数据处理环境100是说明性可以被实现于其中的计算机的网络。数据处理环境100包括网络102。网络102是用于提供一起连接在数据处理环境100内的各种设备和计算机之间的通信链路的介质。网络102可以包括连接,诸如有线、无线通信链路、或光纤线缆。
客户端或服务器是连接到网络102的某些数据处理系统的仅示例角色,并且不旨在排除用于这些数据处理系统的其他配置或角色。服务器104和服务器106连同存储单元108耦合到网络102。软件应用可以在数据处理环境100中的任何计算机上执行。客户端110、112和114也耦合到网络102。诸如服务器104或106、或客户端110、112或114的数据处理系统可以包含数据并且可以具有在其上执行的软件应用或软件工具。
仅作为一个示例并且不暗示对这种架构的任何限制,图1描绘了可用在实施例的示例实现中的某些组件。例如,服务器104和106以及客户端110、112、114仅作为示例被描绘为服务器和客户端,并且不暗示对客户端服务器架构的限制。作为另一示例,一个实施例可以跨如所示出的若干数据处理系统和数据网络分布,而另一实施例可以在说明性实施例的范围内被实现单个数据处理系统上。数据处理系统104、106、110、112和114还表示适合于实现实施例的集群、分区和其他配置中的示例节点。
设备132是本文中描述的设备的一个示例。例如,设备132可以采取智能电话、平板计算机、膝上型计算机、固定或便携形式的客户端110、可穿戴计算设备、或任何其他合适的设备的形式。被描述为在图1中的另一数据处理系统中执行的任何软件应用可以被配置为以类似的方式在设备132中执行。存储或产生于图1中的另一数据处理系统中的任何数据或信息可以被配置为以类似的方式被存储或产生于设备132中。
应用105实现本文中描述的实施例并以本文中描述的方式来改进搜索引擎103的操作。对于本文中描述的操作,应用105使用认知系统107。应用105和认知系统107的组合以本文中描述的方式来训练。搜索客户端111是可用于将用户输入、种子图像、以及用户的NL响应提交给应用105并执行与应用105的NL交互的客户端应用。
服务器104和106、存储单元108以及客户端110、112和114以及设备132可以使用有线连接、无线通信协议、或其他合适的数据连接来耦合到网络102。客户端110、112和114可以例如是个人计算机或网络计算机。
在所描绘的示例中,服务器104可以将诸如启动文件、操作系统图像以及应用的数据提供给客户端110、112和114。在该示例中,客户端110、112和114可以是服务器104的客户端。客户端110、112和114或其一些组合可以包括它们自己的数据、启动文件、操作系统图像以及应用。数据处理环境100可以包括附加的服务器、客户端、以及未示出的其他设备。
在所描绘的示例中,数据处理环境100可以是互联网。网络102可以表示使用传输控制协议/互联网协议(TCP/IP)以及其他协议来彼此通信的网络和网关的汇集。在互联网中心是包括路由数据和消息的数千个商业、政府、教育和其他计算机系统的主要节点或主机计算机之间的数据通信链路的骨干。当然,数据处理环境100还可以被实现为多个不同类型的网络,诸如例如内联网、局域网(LAN)或广域网(WAN)。图1旨在作为一个示例,并且不旨在作为针对不同说明性实施例的架构限制。
除其他用途之外,数据处理环境100可以用于实现说明性实施例可以被实现于其中的客户端-服务器环境。客户端-服务器环境使得软件应用和数据能够跨网络分布,使得应用通过使用客户端数据处理系统与服务器数据处理系统之间的交互性来起作用。数据处理环境100还可以部署面向服务的架构,其中跨网络分布的可互操作的软件组件可以被打包在一起作为连贯的商业应用。数据处理环境100还可以采取云的形式,并且采用服务递送的云计算模型,以用于实现对可以以最小管理努力或与服务提供方的交互快速提供和释放的可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储设备、应用、虚拟机、以及服务)的共享池的方便的、按需的网络访问。
参考图2,该图描绘了说明性实施例可以被实现于其中的数据处理系统的框图。数据处理系统200是计算机的一个示例,诸如图1中的服务器104和106、或客户端110、112和114,或实现过程的计算机可用程序代码或指令可以针对说明性实施例而位于其中的任何类型的设备。
数据处理系统200还表示实现说明性实施例的过程的计算机可用程序代码或指令可以位于其中的、诸如图1中的数据处理系统132的数据处理系统或其中的配置。数据处理系统200仅作为一个示例被描述为计算机,但不限于此。以其他设备(诸如图1中的设备132)的形式的实现可以诸如通过添加触摸界面来修改数据处理系统200,并且甚至从数据处理系统200消除某些描绘的组件而不脱离本文中描述的数据处理系统200的操作和功能的总体描述。
在所描绘的示例中,数据处理系统200采用包括北桥和存储器控制器集线器(NB/MCH)202以及南桥和输入/输出(I/O)控制器集线器(SB/ICH)204的集线器架构。处理单元206、主存储器208、以及图形处理器210耦合到北桥和存储器控制器集线器(NB/MCH)202。处理单元206可以包含一个或多个处理器并且可以使用一个或多个异构处理器系统来实现。处理单元206可以是多核处理器。在某些实现中,图形处理器210可以通过加速的图形端口(AGP)而耦合到NB/MCH 202。
在所描绘的示例中,局域网(LAN)适配器212耦合到南桥和I/O控制器集线器(SB/ICH)204。音频适配器216、键盘和鼠标适配器220、调制调解器222、只读存储器(ROM)224、通用串行总线(USB)和其他端口232、以及PCI/PCIe设备233通过总线238耦合到南桥和I/O控制器集线器204。硬盘驱动器(HDD)或固态驱动器(SSD)226和CD-ROM 230通过总线240耦合到南桥和I/O控制器集线器204。PCI/PCIe设备234可以包括例如以太网适配器、插件卡和用于笔记本计算机的PC卡。PCI使用卡总线控制器,而PCIe不使用卡总线控制器。ROM 224可以例如为闪速二进制输入/输出系统(BIOS)。硬盘驱动器226和CD-ROM 230可以使用例如集成的驱动电子元件(IDE)、串行高级技术附件(SATA)接口、或诸如外部SATA(eSATA)和微型SATA(mSATA)的变型。超级I/O(SIO)设备236可以通过总线238耦合到南桥和I/O控制器集线器(SB/ICH)204。
诸如主存储器208、ROM 224或闪存的存储器是计算机可用存储设备的一些示例。硬盘驱动器或固态驱动器226、CD-ROM 230以及其他类似可用设备是包括计算机可用存储介质的计算机可用存储设备的一些示例。
操作系统运行在处理单元206上。操作系统协调和提供对图2中的数据处理系统200内的各种组件的控制。操作系统可以是用于任何类型的计算平台(包括但不限于服务器系统、个人计算机、以及移动设备)的商用操作系统。面向对象的或其他类型的编程系统可以结合操作系统操作并且提供从在数据处理系统200上执行的程序或应用对操作系统的调用。
用于操作系统、面向对象的编程系统、以及应用或程序(诸如图1中的应用105)的指令位于存储设备上,诸如以代码226A的形式位于硬盘驱动器226上,并且可以被记载到诸如主存储器208的一个或多个存储器中的至少一个中以用于由处理单元206执行。说明性实施例的过程可以由处理单元206使用计算机实现的指令来执行,计算机实现的指令可以位于诸如主存储器208、只读存储器224的存储器中或者一个或多个外围设备中。
另外,在一种情况下,代码226A可以通过网络201A从远程系统201B下载,其中类似的代码201C被存储在存储设备201D上。在另一种情况下,代码226A可以通过网络201A被下载到远程系统201B,其中下载的代码201C被存储在存储设备201D上。
图1-图2中的硬件可以取决于实现而改变。诸如闪存、等价非易失性存储器、或光盘驱动器等的其他内部硬件或外围设备可以除了图1-图2中描绘的硬件之外来使用或代替图1-图2中描绘的硬件来使用。另外,说明性实施例的过程可以被应用到多处理器数据处理系统。
在一些说明性示例中,数据处理系统200可以是个人数字助理(PDA),其通常被配置有闪存以提供用于存储操作系统文件和/或用户生成的数据的非易失性存储器。总线系统可以包括一个或多个总线,诸如系统总线、I/O总线、以及PCI总线。当然,总线系统可以使用任何类型的通信结构或架构来实现,该通信结构或架构提供在附接到结构或架构的不同组件或设备之间的数据的传送。
通信单元可以包括用于发射和接收数据的一个或多个设备,诸如调制解调器或网络适配器。存储器可以例如是主存储器208或高速缓存,诸如在北桥和存储器控制器集线器202中找到的高速缓存。处理单元可以包括一个或多个处理器或CPU。
图1-图2中描绘的示例和以上描述的示例不意味着暗示架构限制。例如,除了采取移动或可穿戴设备的形式之外,数据处理系统200还可以是平板计算机、膝上型计算机、或电话设备。
在计算机或数据处理系统被描述为虚拟机、虚拟设备或虚拟组件的情况下,虚拟机、虚拟设备或虚拟组件以数据处理系统200使用数据处理系统200中描绘的一些或所有组件的虚拟化表现形式的方式来操作。例如,在虚拟机、虚拟设备或虚拟组件中,处理单元206表现为主机数据处理系统中可用的所有或一些数目的硬件处理单元206的虚拟化实例,主存储器208表现为可以在主机数据处理系统中可用的所有或一些部分的主存储器208的虚拟化实例,并且盘226表现为可以在主机数据处理系统中可用的所有或一些部分的盘226的虚拟化实例。主机数据处理系统在这样的情况下由数据处理系统200表示。
参考图3,该图描绘了根据一个说明性实施例的用于使用交互式自然语言对话的图像获取的示例配置的框图。应用302是图1中的应用105的一个示例。搜索引擎304是图1中的搜索引擎103的一个示例。认知系统306是图1中的认知系统107的一个示例。搜索客户端308是图1中的搜索客户端111的一个示例。储存库310可以是一个或多个图像存储系统和/或计算资源的网络,其可以将图像数据提供给搜索引擎304。
用户使用客户端应用308来将初始搜索输入312提供给应用302。如本文中所描述的,初始搜索输入312包括可选的种子图像312A并且可选地包括文本或可听NL语句、搜索查询、或标注。发起搜索的这种方式不旨在为对说明性实施例的限制。搜索可以以许多其他方式来发起。例如,启动搜索的另一种可能方式可以是用户不提供任何信息,系统通过在初始迭代中提供图像的随机集合来强力启动(kick-start)交互并且寻求用户反馈作为下一次迭代。在发起搜索的另一种示例方式中,用户可以仅指定自然语言语句,例如“黄色系带手提包”,并且只有语句被用在初始迭代中以找到如本文中所描述的第一结果集。根据本公开,本领域普通技术人员将能够设想许多其他启动搜索的方式,并且其被预见在说明性实施例的范围内。
应用302使用认知系统306来从初始搜索输入312中提取响应特征。例如,应用302将初始搜索输入312作为NL响应314发送给认知系统306,并且认知系统306将响应特征316的集合返回给应用302。在一个实施例中,认知系统306结合与用户的过去交互式NL对话的历史记录来使用初始搜索输入312。如本文中所描述的,历史记录和输入312一起发起累积NL基础。与一个或多个用户的NL对话的历史记录可以以适合于给定实现的任何方式来维持,包括但不限于在认知系统306的储存库内。
应用302使用内置图像处理功能(未示出)或外部图像处理工具(未示出)来从种子图像312A中提取图像特征的集合。
应用302从初始搜索输入312来构建查询Q0并将Q0发送给搜索引擎304。查询Q0包括从初始搜索输入312中提取的一些或所有响应特征、在初始搜索输入312中由用户供应的关键字中的一些或所有(如果有的话)、从种子图像312A中提取的一些或所有图像特征、或其一些组合。
响应于Q0,搜索引擎304从储存库310中获取包括图像结果的结果集。搜索引擎304将结果集作为结果集R0返回给应用302。
应用302基于特征匹配和置信度计算来执行R0中的图像结果的相关性确定,如本文中所描述的。应用302可选地对结果集R0中的图像结果进行重新排序。应用302返回初始结果集318,其可以仅包括R0中具有大于阈值置信度值的置信度值的那些图像结果的子集。初始结果集318还可以包括与R0中的顺序相比不同的顺序的图像结果。
应用302经由客户端308执行与用户的NL交互320。具体地,NL交互320的迭代包括由应用302引用先前呈现的结果集构建并呈现的NL语句,例如引用NL交互320的第一次迭代中的初始结果集314。NL交互320还包括由用户经由客户端308提供给应用302的NL响应。
应用302将NL响应添加到累积NL基础。累积NL基础现在包括初始搜索输入312和来自NL交互320的先前迭代的所有NL响应。根据一个实施例,应用302将累积NL基础发送给认知系统306作为NL响应314。应用302从认知系统306接收响应特征316的修正的集合。
应用302使用响应特征316的最近集合和图像特征的修正的集合来构建修正的查询Q1。图像特征的修正的集合可以在应用302分析由用户提供的任何附加图像输入、由用户标识的图像结果、或其一些组合的情况下可用。
应用302将后续的修正的查询Q1提供给搜索引擎304。搜索引擎304响应于Q1返回修正的结果集R1。在根据具体情况需要的情况下,应用302参与NL交互320的另一迭代,并且重复关于Q1和R1描述的过程。因此,任何数目的迭代可以发生,得到修正的查询Q1…Qn和对应的R1…Rn。满足退出条件的迭代的结果集形成应用302发送给客户端308的最终结果集322。应用302此后结束NL交互320。
参考图4,该图描绘了根据一个说明性实施例的用于使用交互式自然语言对话的图像获取的示例训练过程的框图。训练环境400训练组合401,其包括应用402和认知系统406。应用402是图3中的应用302的一个示例。认知系统406是图3中的认知系统306的一个示例。搜索引擎404是图3中的搜索引擎304的一个示例。储存库410是图3中的储存库310的一个示例。
训练搜索输入412模拟在用于图像搜索的生产环境中预期从用户得到的搜索输入。地面真值412A是期望结果的图像,搜索应当找到该期望结果的图像使得结果确切地是地面真值412或者是其在指定容差内的近似。地面真值412A可以被认为是种子图像,如参考图3所描述的。
给定输入412和地面真值412A,组合401提取特征的集合414。取决于输入412和地面真值412A,集合414可以包括图像特征的集合、响应特征的集合、或其组合。例如,图像分析组件418可以是组合401中的认知系统406的组件或由组合401中的认知系统406使用的组件;并且组合401使用图像分析组件418来产生图像特征的集合412B。
从集合414形成的查询被发送给搜索引擎404。搜索引擎404使用储存库410来提取结果集。结果集包括一个或多个图像结果416。
图像分析组件418分析图像结果416以产生图像结果416的图像特征的集合420。置信度计算组件422使用(i)特征的集合414(其包括响应特征的集合并且还可以包括图像特征的集合412B)以及(ii)图像结果特征的集合420,以确定图像结果416与搜索输入412和地面真值412A的组合之间的匹配和匹配程度。组件422计算与早前所描述的图像结果416相对应的置信度值。组件424接收组件422的置信度值输出并确定应当被应用到组合401以引起特征提取过程的改变的调整。特征提取过程的改变应当使得针对相同输入412和相同地面真值412A,在调整之后提取的特征的修正的集合将找到不同的图像结果416,使得不同的图像结果416将得到改进的(更高的)置信度值。
组件422的输出还触发来自训练NL交互426的NL交互。在训练的下一次迭代中,组合401使用由输入412、地面真值412A、以及训练NL交互426形成的累积NL基础来获得早前所描述的修正的结果集。
当结果集包括为与地面真值412A的确切匹配或其在指定容差内的可接受近似的图像结果416时,训练终止。从由组件424进行的调整和训练NL交互426得到的经训练的组合402可以然后被部署在生产环境中以执行针对用户的交互式NL图像搜索。
参考图5A,该图描绘了根据一个说明性实施例的示例交互式NL图像搜索。搜索客户端500是图3中的搜索客户端308的一个示例。交互式购物代理501是从图4得到的经训练的组合401的一个示例。用户502是人类用户。
在所描绘的示例中,交互式图像搜索由代理501(例如通过问NL问题504)被发起为NL交互。用户502利用NL搜索输入506和种子图像508做出响应。
代理502连同NL交互512一起呈现结果集510。结果集510包括一个或多个图像结果,其可选地按早前所描述的顺序被重新排列或排名。NL交互512试图引出来自用户502的选择响应,代理501将以本文中描述的方式将该选择响应用在图像搜索的下一次迭代中。用户502提供NL响应514,代理501从其中可以提取附加的响应特征。
参考图5B,该图描绘了来自图5A的示例交互式NL图像搜索的继续。用户502可以提供多于一个的NL响应。如图5B所示,用户502提供除了NL响应514之外的NL响应516。代理501与输入506和种子图像508累积地处理NL响应514和516,以产生修正的结果集518。与结果集510中的图像结果相比,结果集518中的图像结果现在更接近用户502的搜索目标。
代理501通过结合结果集518输出NL语句520来发起与用户502的另一NL交互。用户502提供NL响应522,代理501将其添加到用于交互式NL图像搜索的累积NL基础。代理501使用累积NL基础以用于产生修正的结果集524。代理501还结合结果集524输出另一NL交互526。与结果集518中的图像结果相比,结果集524中的图像结果甚至更接近用户502的搜索目标,因为与当前可用的搜索方法不同,迭代的NL交互辅助用户502以类似人类的方式明确用户的搜索目标。
迭代的NL交互可以以图5A-图5B的方式继续任何数目的迭代。根据一个实施例,当用户502指示结果集中的图像结果满足用户的搜索目标或者用户已经出于某种其他原因而确定结束搜索时,迭代结束。在另一实施例中,当代理501确定已经满足退出条件时,例如当用户502从结果集中选择图像结果并继续执行与所选择的图像结果有关的下一动作(诸如参与购买交易)时,代理501可以终止迭代的NL交互。
参考图6,该图描绘了根据一个说明性实施例的用于使用交互式自然语言对话的图像获取的示例过程的流程图。过程600可以被实现于图3中的应用302中。
应用接收来自用户的NL搜索输入(框602)。应用优选地还在框602处接收来自用户的种子图像。根据具体情况,应用从框602的输入提取NL响应特征的集合和/或图像特征的集合。应用使用特征的集合来提取包括图像结果的结果集(框604)。
应用发起与用户的NL交互(框606)。应用接收来自用户的一个或多个NL响应(框608)。应用将(一个或多个)NL响应添加到累积NL基础并使用NLP从累积NL基础提取特征的修正的集合(框610)。
应用可以选择特征的修正的集合的子集(框612)并从所选择的子集或特征的修正的集合来构建修正的搜索查询(框614)。应用将修正的查询发送给搜索引擎。响应于修正的查询,应用获得图像的修正的结果集(框616)。针对结果集中的图像结果,应用分析图像结果以提取图像特征的集合(框618)。应用对于可以在给定实现中有用的尽可能多的图像结果重复框618。
应用(在容差内)将在框618处计算的图像特征与输入特征的集合进行比较(框620)。输入特征的集合包括可以从来自用户的单个用户输入或累积NL基础来计算的响应特征的集合以及当种子图像被提供时种子图像的图像特征的集合。
取决于框620的计算的匹配结果,应用从修正的结果集中选择图像结果的子集,其中子集中的图像与输入特征具有至少阈值程度的特征匹配(框622)。应用呈现所选择的图像结果的子集,具有根据图像结果的置信度值的可选的重新排列(框624)。
应用确定退出条件是否已经被满足(框626)。如果退出条件尚未被满足(框626的“否”路径),则应用返回到框606。如果退出条件已经被满足(框626的“是”路径),则应用此后结束过程600。
因此,计算机实现的方法、系统或装置以及计算机程序产品被提供在用于使用交互式自然语言对话和其他相关特征、功能或操作的图像获取的说明性实施例中。在关于一种类型的设备来描述实施例或其一部分的情况下,计算机实现的方法、系统或装置、计算机程序产品、或其一部分适于或被配置用于与该类型的设备的合适的且可比的表现形式一起使用。
在实施例被描述为被实现于应用中的情况下,应用以软件即服务(SaaS)模型的交付(delivery)被预见在说明性实施例的范围内。在SaaS模型中,应用实现实施例的能力通过在云基础设施中执行应用而被提供给用户。用户可以使用各种客户端设备通过诸如web浏览器(例如,基于web的电子邮件)或其他轻量级客户端应用的瘦客户端接口来访问应用。用户不管理或控制底层云基础设施,包括云基础设施的网络、服务器、操作系统、或存储。在一些情况下,用户可能甚至不管理或控制SaaS应用的能力。在一些其他情况下,应用的SaaS实现可以允许有限的用户特定应用配置设置的可能例外。
本发明可以是在任何可能的技术细节整合水平上的系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质(或多个介质),其上具有用于使得处理器执行本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质,包括并不限于计算机可读存储介质,不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (21)
1.一种用于搜索图像的方法,包括:
使用应用和认知系统的训练组合的迭代的自然语言(NL)交互来修改搜索引擎以执行越来越精确的图像搜索,所述修改包括:
从源自所述应用的NL搜索输入提取输入特征的集合,所述输入特征的集合包括与所述NL搜索输入中的NL语句相对应的、使用所述认知系统提取的响应特征的集合和来自所述NL搜索输入中的种子图像的图像特征的集合;
至少提供结果集的子集作为NL交互的下一次迭代中的NL交互的一部分,所述结果集响应于包括所述输入特征的子集的查询;
将在所述下一次迭代中获得的NL响应添加到所述NL搜索输入以形成用于所述图像搜索的累积NL基础;
分析所述累积NL基础以提取新的响应特征集合;
采用来自所述累积NL基础的新的响应特征集合的至少一个子集构建新的搜索查询;以及
提供响应于所述新的搜索查询的修正的结果集,其中所述修正的结果集包括新图像结果,并且其中所述新图像结果与从所述累积NL基础提取的新的响应特征集合的至少一个新响应特征相对应,
其中,所述应用和认知系统的训练组合通过向所述应用和所述认知系统提供初始训练输入作为另一NL语句以及训练种子图像来训练,其中,由所述应用和所述认知系统提取训练输入特征和训练图像特征的集合,并相对于所述训练种子图像的特征评估相应训练图像结果的训练置信度值。
2.根据权利要求1所述的方法,所述修改还包括:
构建针对所述搜索引擎的搜索查询,所述查询指定到所述搜索引擎的所述输入特征的所述子集;以及
从所述搜索引擎获得所述结果集。
3.根据权利要求1所述的方法,
其中所述分析所述累积NL基础在NL交互的所述下一次迭代中接收的所述NL响应上使用自然语言处理(NLP);以及
其中所述修改还包括从所述搜索引擎获得所述修正的结果集。
4.根据权利要求1所述的方法,所述修改还包括:
将所述图像结果的图像特征的集合与所述输入特征的所述子集在容差值内进行比较,其中所述图像结果的所述图像特征的集合是从执行图像分析而获得的;以及
根据通过所述比较而计算的匹配程度来计算置信度值。
5.根据权利要求4所述的方法,所述修改还包括:
选择所述结果集的所述子集,其中所述结果集的所述子集包括其置信度值超过阈值置信度值的那些图像结果;
根据所述结果集的所述子集中的所述图像结果的所述置信度值来重新排序所述结果集的所述子集中的图像结果;以及
呈现所述结果集的重新排序的子集作为所述提供的一部分。
6.根据权利要求1所述的方法,其中所述NL搜索输入包括NL语句和种子图像。
7.根据权利要求1所述的方法,其中所述NL搜索输入仅包括标注的种子图像。
8.根据权利要求1所述的方法,其中所述下一次迭代是迭代的集合的成员,其中所述迭代的集合中的每次迭代逐步地引起对应的修正的结果集的图像结果的相关性的增加,并且其中所述相关性的所述增加以与人类用户的类似人类NL交互来实现。
9.一种计算机可读存储介质,其上存储有程序指令,存储的所述程序指令包括:
用于使用应用和认知系统的训练组合的迭代的自然语言(NL)交互来修改搜索引擎以执行越来越精确的图像搜索的程序指令,用于修改的所述程序指令包括:
用于从源自所述应用的NL搜索输入提取输入特征的集合的程序指令,所述输入特征的集合包括与所述NL搜索输入中的NL语句相对应的、使用所述认知系统提取的响应特征的集合和来自所述NL搜索输入中的种子图像的图像特征的集合;
用于至少提供结果集的子集作为NL交互的下一次迭代中的NL交互的一部分的程序指令,所述结果集响应于包括所述输入特征的子集的查询;
用于将在所述下一次迭代中获得的NL响应添加到所述NL搜索输入以形成用于所述图像搜索的累积NL基础的程序指令;
用于分析所述累积NL基础以提取新的响应特征集合的程序指令;
用于采用来自所述累积NL基础的新的响应特征集合的至少一个子集构建新的搜索查询的程序指令;以及
用于提供响应于所述新的搜索查询的修正的结果集的程序指令,其中所述修正的结果集包括新图像结果,并且其中所述新图像结果与从所述累积NL基础提取的新的响应特征集合的至少一个新响应特征相对应,
其中,所述应用和认知系统的训练组合通过向所述应用和所述认知系统提供初始训练输入作为另一NL语句以及训练种子图像来训练,其中,由所述应用和所述认知系统提取训练输入特征和训练图像特征的集合,并相对于所述训练种子图像的特征评估相应训练图像结果的训练置信度值。
10.根据权利要求9所述的计算机可读存储介质,用于修改的所述程序指令还包括:
用于构建针对所述搜索引擎的搜索查询的程序指令,所述查询指定到所述搜索引擎的所述输入特征的所述子集;以及
用于从所述搜索引擎获得所述结果集的程序指令。
11.根据权利要求9所述的计算机可读存储介质,用于修改的所述程序指令还包括:
其中用于分析所述累积NL基础的程序产品在NL交互的所述下一次迭代中接收的所述NL响应上使用自然语言处理(NLP);以及
其中用于修改的所述程序指令还包括用于从所述搜索引擎获得所述修正的结果集的程序指令。
12.根据权利要求9所述的计算机可读存储介质,用于修改的所述程序指令还包括:
用于将所述图像结果的图像特征的集合与所述输入特征的所述子集在容差值内进行比较的程序指令,其中所述图像结果的所述图像特征的集合是从执行图像分析而获得的;以及
用于根据通过所述比较而计算的匹配程度来计算置信度值的程序指令。
13.根据权利要求12所述的计算机可读存储介质,用于修改的所述程序指令还包括:
用于选择所述结果集的所述子集的程序指令,其中所述结果集的所述子集包括其置信度值超过阈值置信度值的那些图像结果;
用于根据所述结果集的所述子集中的所述图像结果的所述置信度值来重新排序所述结果集的所述子集中的图像结果的程序指令;以及
用于呈现所述结果集的重新排序的子集作为所述提供的一部分的程序指令。
14.根据权利要求9所述的计算机可读存储介质,其中所述NL搜索输入包括NL语句和种子图像。
15.根据权利要求9所述的计算机可读存储介质,其中所述NL搜索输入仅包括标注的种子图像。
16.根据权利要求9所述的计算机可读存储介质,其中所述下一次迭代是迭代的集合的成员,其中所述迭代的集合中的每次迭代逐步地引起对应的修正的结果集的图像结果的相关性的增加,并且其中所述相关性的所述增加以与人类用户的类似人类NL交互来实现。
17.根据权利要求9所述的计算机可读存储介质,其中所述计算机可用代码被存储在数据处理系统中的计算机可读存储设备中,并且其中所述计算机可用代码通过网络从远程数据处理系统被传送。
18.根据权利要求9所述的计算机可读存储介质,其中所述计算机可用代码被存储在服务器数据处理系统中的计算机可读存储设备中,并且其中所述计算机可用代码通过网络下载到远程数据处理系统,以用于在与所述远程数据处理系统相关联的计算机可读存储设备中使用。
19.一种用于搜索图像的计算机系统,包括处理器、计算机可读存储器、以及计算机可读存储设备、以及存储在所述存储设备上用于经由所述存储器由所述处理器执行的程序指令,存储的所述程序指令包括:
用于使用应用和认知系统的训练组合的迭代的自然语言(NL)交互来修改搜索引擎以执行越来越精确的图像搜索的程序指令,用于修改的所述程序指令包括:
用于从源自所述应用的NL搜索输入提取输入特征的集合的程序指令,所述输入特征的集合包括与所述NL搜索输入中的NL语句相对应的、使用所述认知系统提取的响应特征的集合和来自所述NL搜索输入中的种子图像的图像特征的集合;
用于至少提供结果集的子集作为NL交互的下一次迭代中的NL交互的一部分的程序指令,所述结果集响应于包括所述输入特征的子集的查询;
用于将在所述下一次迭代中获得的NL响应添加到所述NL搜索输入以形成用于所述图像搜索的累积NL基础的程序指令;
用于分析所述累积NL基础以提取新的响应特征集合的程序指令;
用于采用来自所述累积NL基础的新的响应特征集合的至少一个子集构建新的搜索查询的程序指令;以及
用于提供响应于所述新的搜索查询的修正的结果集的程序指令,其中所述修正的结果集包括新图像结果,并且其中所述新图像结果与从所述累积NL基础提取的新的响应特征集合的至少一个新响应特征相对应,
其中,所述应用和认知系统的训练组合通过向所述应用和所述认知系统提供初始训练输入作为另一NL语句以及训练种子图像来训练,其中,由所述应用和所述认知系统提取训练输入特征和训练图像特征的集合,并相对于所述训练种子图像的特征评估相应训练图像结果的训练置信度值。
20.根据权利要求19所述的计算机系统,用于修改的所述程序指令还包括:
用于构建针对所述搜索引擎的搜索查询的程序指令,所述查询指定到所述搜索引擎的所述输入特征的所述子集;以及
用于从所述搜索引擎获得所述结果集的程序指令。
21.一种计算机系统,所述系统包括分别用于执行根据权利要求1-8中的任一项所述的方法的步骤的模块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/927,309 | 2018-03-21 | ||
US15/927,309 US10977303B2 (en) | 2018-03-21 | 2018-03-21 | Image retrieval using interactive natural language dialog |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110297890A CN110297890A (zh) | 2019-10-01 |
CN110297890B true CN110297890B (zh) | 2023-05-12 |
Family
ID=67983206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910211985.5A Active CN110297890B (zh) | 2018-03-21 | 2019-03-20 | 使用交互式自然语言对话的图像获取 |
Country Status (2)
Country | Link |
---|---|
US (2) | US10977303B2 (zh) |
CN (1) | CN110297890B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11416541B2 (en) | 2018-11-26 | 2022-08-16 | Loupe, Inc. | System and method for visual art streaming runtime platform |
US11100145B2 (en) | 2019-09-11 | 2021-08-24 | International Business Machines Corporation | Dialog-based image retrieval with contextual information |
JP2021068064A (ja) * | 2019-10-18 | 2021-04-30 | 富士ゼロックス株式会社 | クエリ修正システム、検索システム及びプログラム |
KR20210070029A (ko) | 2019-12-04 | 2021-06-14 | 삼성전자주식회사 | 반복적 생성을 통해 출력 콘텐트를 향상시키기 위한 디바이스, 방법, 및 프로그램 |
CN112528048B (zh) * | 2021-02-18 | 2021-05-14 | 腾讯科技(深圳)有限公司 | 一种跨模态检索方法、装置、设备及介质 |
CN113689437B (zh) * | 2021-07-26 | 2024-06-11 | 南京理工大学 | 基于迭代式选择-修正网络的交互式图像分割方法 |
CN113448477B (zh) * | 2021-08-31 | 2021-11-23 | 南昌航空大学 | 交互式图像编辑方法、装置、可读存储介质及电子设备 |
US20240095242A1 (en) * | 2022-09-19 | 2024-03-21 | Ebay Inc. | Deep navigation via a multimodal vector model |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103329126A (zh) * | 2010-10-28 | 2013-09-25 | 谷歌公司 | 利用联合图像-音频查询的搜索 |
CN105068661A (zh) * | 2015-09-07 | 2015-11-18 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机交互方法和系统 |
CN105900081A (zh) * | 2013-02-19 | 2016-08-24 | 谷歌公司 | 基于自然语言处理的搜索 |
CN106255968A (zh) * | 2014-05-16 | 2016-12-21 | 微软技术许可有限责任公司 | 自然语言图像搜索 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8190604B2 (en) * | 2008-04-03 | 2012-05-29 | Microsoft Corporation | User intention modeling for interactive image retrieval |
US9916538B2 (en) * | 2012-09-15 | 2018-03-13 | Z Advanced Computing, Inc. | Method and system for feature detection |
US10318575B2 (en) * | 2014-11-14 | 2019-06-11 | Zorroa Corporation | Systems and methods of building and using an image catalog |
CN108604237B (zh) | 2015-12-01 | 2022-10-14 | 英特吉姆公司股份有限公司 | 个性化交互式智能搜索方法和系统 |
WO2017112813A1 (en) * | 2015-12-22 | 2017-06-29 | Sri International | Multi-lingual virtual personal assistant |
US20170278135A1 (en) | 2016-02-18 | 2017-09-28 | Fitroom, Inc. | Image recognition artificial intelligence system for ecommerce |
US10360224B2 (en) * | 2016-03-28 | 2019-07-23 | International Business Machines Corporation | Image and data capture and machine learning for automatic generation of search queries |
US11080918B2 (en) * | 2016-05-25 | 2021-08-03 | Metail Limited | Method and system for predicting garment attributes using deep learning |
EP3267368B1 (en) * | 2016-07-06 | 2020-06-03 | Accenture Global Solutions Limited | Machine learning image processing |
US10481861B2 (en) | 2016-08-30 | 2019-11-19 | Google Llc | Using user input to adapt search results provided for presentation to the user |
US11004131B2 (en) * | 2016-10-16 | 2021-05-11 | Ebay Inc. | Intelligent online personal assistant with multi-turn dialog based on visual search |
US20180157681A1 (en) * | 2016-12-06 | 2018-06-07 | Ebay Inc. | Anchored search |
US10089742B1 (en) * | 2017-03-14 | 2018-10-02 | Adobe Systems Incorporated | Automatically segmenting images based on natural language phrases |
US10140421B1 (en) * | 2017-05-25 | 2018-11-27 | Enlitic, Inc. | Medical scan annotator system |
US11361018B2 (en) * | 2017-11-28 | 2022-06-14 | Adobe Inc. | Automatically curated image searching |
US10579737B2 (en) * | 2018-03-06 | 2020-03-03 | Adobe Inc. | Natural language image editing annotation framework |
-
2018
- 2018-03-21 US US15/927,309 patent/US10977303B2/en active Active
-
2019
- 2019-03-20 CN CN201910211985.5A patent/CN110297890B/zh active Active
-
2020
- 2020-12-21 US US17/129,176 patent/US11455335B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103329126A (zh) * | 2010-10-28 | 2013-09-25 | 谷歌公司 | 利用联合图像-音频查询的搜索 |
CN105900081A (zh) * | 2013-02-19 | 2016-08-24 | 谷歌公司 | 基于自然语言处理的搜索 |
CN106255968A (zh) * | 2014-05-16 | 2016-12-21 | 微软技术许可有限责任公司 | 自然语言图像搜索 |
CN105068661A (zh) * | 2015-09-07 | 2015-11-18 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机交互方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US10977303B2 (en) | 2021-04-13 |
US20190294702A1 (en) | 2019-09-26 |
CN110297890A (zh) | 2019-10-01 |
US11455335B2 (en) | 2022-09-27 |
US20210224315A1 (en) | 2021-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297890B (zh) | 使用交互式自然语言对话的图像获取 | |
JP7398402B2 (ja) | 実体リンキング方法、装置、電子機器、記憶媒体およびコンピュータプログラム | |
US11138212B2 (en) | Natural language response recommendation clustering for rapid retrieval | |
US10698932B2 (en) | Method and apparatus for parsing query based on artificial intelligence, and storage medium | |
KR102354716B1 (ko) | 딥 러닝 모델을 이용한 상황 의존 검색 기법 | |
CN107491534B (zh) | 信息处理方法和装置 | |
JP7412060B2 (ja) | 自然言語分類のための訓練データの拡張 | |
WO2021128729A9 (zh) | 确定搜索结果的方法、装置、设备和计算机存储介质 | |
US20200184307A1 (en) | Utilizing recurrent neural networks to recognize and extract open intent from text inputs | |
JP2022153441A (ja) | モデル事前訓練方法および装置、テキスト生成方法および装置、電子機器、記憶媒体並びにコンピュータプログラム | |
US11657802B2 (en) | Utilizing a dynamic memory network for state tracking | |
US11164026B2 (en) | Graphical user interface generation based on image analysis | |
CN110457708B (zh) | 基于人工智能的词汇挖掘方法、装置、服务器及存储介质 | |
JP6361351B2 (ja) | 発話ワードをランク付けする方法、プログラム及び計算処理システム | |
CN114429133A (zh) | 通过神经机器阅读理解依赖于话语分析来回答复杂问题 | |
WO2019154411A1 (zh) | 词向量更新方法和装置 | |
KR20180127622A (ko) | 텍스트 데이터 수집 및 분석을 위한 시스템 | |
CN114840671A (zh) | 对话生成方法、模型的训练方法、装置、设备及介质 | |
CN102314440A (zh) | 利用网络维护语言模型库的方法和系统 | |
US20230223112A1 (en) | Retrosynthesis using neural networks | |
US20210049476A1 (en) | Improving the accuracy of a compendium of natural language responses | |
JP2021170310A (ja) | 対話生成方法、装置、電子機器、プログラム及び記憶媒体 | |
CN116235246A (zh) | 基于个性化词汇和用户简档的语音响应系统-个性化语言学ai引擎 | |
CN114444462B (zh) | 模型训练方法及人机交互方法、装置 | |
JP2022088540A (ja) | ユーザ興味画像の生成方法、装置、電子機器及び記憶媒体 |
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 |