首页> 中国专利> 用于组织和优化对话系统中内容的方法和装置

用于组织和优化对话系统中内容的方法和装置

摘要

描述了在对话系统中使用的可配置的内容优化器的实施例。在一个实施例中,内容优化器是可配置的组件,其在查询过程期间充当对话系统的对话管理模块和知识管理模块之间的中间件。内容优化器充分利用系统本体、组织由知识库返回的项目并调节查询以便返回合理数目的应答。将每个查询分解为若干约束条件,约束条件的特征是类型,并且通过包括放宽或收紧查询中的约束条件的策略进行调节。用于潜在调节的一般性策略以可配置的方式表示以便内容优化模块可以容易地应用在新的领域。

著录项

  • 公开/公告号CN1984190A

    专利类型发明专利

  • 公开/公告日2007-06-20

    原文格式PDF

  • 申请/专利权人 罗伯特·博世公司;

    申请/专利号CN200610142104.1

  • 发明设计人 翁富良;希瑟·庞-巴里;

    申请日2006-09-30

  • 分类号H04M3/493;H04M3/51;G06F17/30;

  • 代理机构永新专利商标代理有限公司;

  • 代理人钟胜光

  • 地址 美国伊利诺斯

  • 入库时间 2023-12-17 18:42:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-05-29

    授权

    授权

  • 2008-11-19

    实质审查的生效

    实质审查的生效

  • 2007-06-20

    公开

    公开

说明书

技术领域

本发明的实施例一般涉及对话系统,并且特别涉及优化、组织用于人机对话系统的内容。

背景技术

对话系统是其中人用自然语言讲话或相反用自然语言将输入输入到计算机的系统,以便实现某种结果。随着微处理器控制的器具或设备的兴起,对话系统正逐渐地用于为许多应用中的人机接口提供方便,例如计算机、汽车、工业机械、家用电器、自动电话服务等。对话系统允许用户以用户熟悉的表达或者方式输入请求或查询,而不需要用户学习由计算机规定的特定语言或结构。对话系统处理查询并访问一个或多个数据库以搜索该查询的应答。为了在尽可能少的用户交互下提供有意义的结果,应该将对话系统设计并实现为适应查询的内容和格式以及应答数据的内容和格式上的大的变化。

当前的自然语音对话系统一般是数据驱动系统,其中处理查询并从数据库中搜索可能的应答。数据驱动系统基于量化应答有多接近查询的分布模型、基于诸如关键词命中这样的可计量的度量来返回应答。这些对话系统可以执行结构数据库查询或者非结构数据库查询,但是以同一方式表示结果:如项目列表。当前这种系统具有几个缺陷。一个严重的缺陷是这些系统经常向用户不提供任何应答或者提供过多的应答。在这两种情况下,用户实际上没有收到有意义的信息,因为对查询的零应答或者对查询的过多应答可能使用户感到困惑或者不知所措。尽管这些系统可以提供一定程度的用户交互以修正该查询进而获得有意义的结果,但是在许多情况下,用户需要背诵特定的表达法、听冗长的提示或另外使他们的查询遵守系统规定的格式。当用户全神贯注在其它重要的工作时,例如开车或者操作重型机械,当前对话系统的这种缺点特别严重。对于诸如在拥挤的交通中驾驶等需要认知的情况下,允许用户自然地讲话并且允许对话流具有灵活性是非常重要的。因为驾驶员正集中驾驶而不是集中在读图形显示,因此以不使他们不知所措或者不使他们从驾驶任务中分心的方式来传递系统内容是必需的。

一般当前的对话系统的另一个缺点是他们依靠静态的规则、数据结构和/或数据内容来处理并返回用户查询的应答。这些系统经常限于特定的使用或应用,并且无法容易地为用于每个应用或服务不同地定制。此外,这种系统经常不会动态地说明或者修正处理方法以响应用户的优先选择、历史数据和查询过程中相关的其它显著因素。

附图说明

本发明的实施例由实例说明,而不是附图中图的限制,其中相似的标记表示相似的元件,其中:

图1是根据实施例的包括内容优化器的对话系统的框图;

图2是说明根据实施例的内容优化器的功能组件的框图;

图3A是根据实施例的结构文件的实例;

图3B是根据实施例的基于结果集的大小来指定操作的表;

图4是根据实施例的流程图,其说明在对话系统中处理查询的方法;

图5是根据实施例的流程图,其说明用于本体约束条件的放宽策略(relaxation Strategy);

图6A是根据实施例的表,其说明基于内容优化器的对话系统处理的查询的实例;

图6B说明用于图6A中实例的分级本体的一部分;

图6C是列出图6A的实例中相应类型和值的各种约束条件的实例的表。

详细说明

说明应用在对话系统中的可配置内容优化器的实施例。在一个实施例中,内容优化器是可配置的组件,其在查询过程期间充当对话系统的对话管理模块和知识管理模块之间的媒介。内容优化器模块充分利用系统本体(ontology)、组织由知识库返回的项目并且调节查询以便返回合理数目的应答。将每个查询分解为若干约束条件,约束条件的特征是类型,并且通过包括放宽或紧缩查询中的约束条件的策略进行调节。以可配置的方式表示用于潜在调节的一般性策略以便内容优化模块可以容易地应用在新的领域。此外,本体论知识用于帮助组织数据并积累对话管理器可以使用的统计量。这种对话系统改进了当前口语对话系统中存在的大量非自然性,并且由此改进了对话系统的可用性。

在下面的说明中,介绍了许多具体细节以提供基于内容优化器的对话系统的实施例的全面理解,并且为该实施例提供能使用的描述。然而,相关领域技术人员将会认识到可以在缺少一个或多个具体细节或具有其他组件、系统等的情况下实施这些实施例。在其它实例中,没有示出,或者没有详细说明众所周知的结构或操作,以避免使公开实施例的各个方面不清晰。

在现有的对话系统中,用户查询的应答一般由对话管理器过程基于各种事件和它们的状态触发。应答中提供的内容一般是预编程的、以预定的方式存储的并且直接从数据库搜索的。对于具有大数据库的系统,这引起了潜在的问题,因为用户可能经常收到空的答案或者过多可能的答案。根据本发明实施例的对话系统包括内容优化模块(这里称为“内容优化器”),其通过可配置的方式并基于包括来自用户的请求、他们以往的优先选择以及一般本体结构的各种规则对内容进行组织和优化。通常,从用户中输入到对话系统的查询可以是要求答案的问题、执行特定操作的请求或者问题和请求的组合。数据库(也称为“知识库”)可以是存储在持久稳固的存储设备中的数据存储器、数据高速缓冲存储器以及任何其它类型的结构数据并且对话系统响应用户查询对其进行访问。

图1是根据实施例的包括内容优化器的对话系统的框图。图1说明的系统100一般为与多个设备的交互提供端到端口语(或基于文本)的处理。这些设备(未示出)可以包括多种不同类型的计算机、器具、机械以及其它类型的计算机控制或自动的装置。系统100可以在包括通过网络连接在一起的许多计算机或工作站的分布式计算机系统中实施。或者,系统100的功能块可以在表示单元对话系统的单个计算机中实施。

与许多当前对话系统利用的集线器结构相比,系统100使用基于事件、面向消息的中间件模块。基于事件的体系结构提供了分布式系统中过程的有利实施,例如允许新组件的动态登记。

对于图1中说明的实施例,对话系统100包括几个模块,例如语音识别模块116、语言理解模块110、对话管理模块112、应答生成模块114、语音合成模块118、知识管理模块104、知识库102以及设备管理模块106。系统100说明了可以用在基于语音的对话系统和基于文本(例如计算机输入)的对话系统这两者中的系统。应该注意的是语音识别模块116和语音合成器模块118仅在口语对话系统中是必需的。作为替换,基于文本或图形的对话系统可以具有一个或更多文本输入和输出显示模块来代替语音识别模块116和语音合成模块118。图1中的每个管理模块也可以简单称为“管理器”。

在基于语音系统的实施例中,语音识别模块116接收包括用户讲话的声学信号并输出具有诸如置信度评分这样的附加标签的词序列或词串列(lattice)。语言理解模块110从语音识别模块116接收具有附上置信度评分的词序列或词串列,并且基于在领域中的语言数据上训练的统计模型和可用的知识库102输出结构化意义表示。对话管理模块112从语言理解模块110接收结构化意义表示并根据上下文和它的知识库在上下文中对它们进行解释以向其它模块发出适当的指令。

在一个实施例中,语言理解模块110由四个子模块组成:统计标志器、统计依存句法分析器、特征映象程序以及主题分类器。统计标志器使用隐马尔可夫模型基于历史来说明预测词类(part-of-speech)标签的概率,并且使用Viterbi算法寻找最好的标签序列。特征映象程序从统计依存句法分析器接收依存关系并且产生XML特征结构表示。与这个过程并行,在对话管理器不能理解所发现的句法分析的情况下,主题分类器将说出的字符串(说话)分为前n个主题并且将这些主题发送到对话管理器112。语言理解模块110还支持知识库102的动态更新使得知识库能够在运行时间中被更新。例如,如果对话系统用在音乐应用中,例如MP3领域的MP3播放器,包括知识库的数据可以不含任何具体的歌曲名,而是一般性的“歌曲名”类。这使歌曲数据库能够在运行时间中被更新、扩展或者替代。

在一个实施例中,根据特定领域的本体来构建领域知识。一般地,从用户的观点来看,本体是在感兴趣的领域中存在的项目的分级类型。它可以称为项目或项目类型的分级,或者从中可以生成分级的级别架构。领域指用户查询的一般应用、范围或者机器。知识管理模块104充当到一个或多个知识库102的网关,并且管理一般本体、具体领域的本体、设备信息以及用于任何有效领域的数据库。它还更新并且同步不同模块中的当前知识库102。

对话管理模块112使用对话移动方法来维持对话上下文,然后其被用于解释引入的说话(包括片断和修正)、分解名词短语、构建突出的应答、跟踪结果等。对话状态也可以用于偏置语音识别期望并且提高语音识别性能。在典型的交互中,对话管理器112将用户的查询转换为语意结构(即一组语意约束条件)并且将其发送到知识管理器104。例如在MP3领域,“播放U2的一些摇滚音乐”的命令导致使用类型=摇滚、艺术家=U2来查询分类歌曲中的对象,这里类型和摇滚是歌曲种类的(继承的)属性。可以在任何时刻使用新的实例对知识库102进行动态更新。

设备管理器106封装来自对话系统其他部分的应用专用信息和格式用于传送或者控制一个或多个连接设备。它还使应用状态与知识管理器104同步。应答产生器114也称为“语言产生模块”,其接收来自对话管理器112的内容并且以简洁并且符合语法的方式对其进行组织以用于语音合成器(文语转换(Text to Speech)模块)118。语音合成器118接收具有被标签的特征的词序列并且产生用于通过扬声器或类似的声音产生设备输出的语音波形。

对于图1说明的实施例,对话管理器112将表达用户查询的语意结构通过内容优化器模块108发送到知识管理器104。内容优化器108在查询过程期间充当对话管理器112和知识管理器104之间的媒介。它从对话管理器112接收语意结构、解决可能的语意模糊、将用于查询的修正结构与初始查询合并以及查询知识管理器104。根据查询结果集中的项目、为系统定义的任何可配置的属性以及用户模型提供的任何用户的优先选择,内容优化器108选择并执行关于查询的适当优化策略。

对于系统100,还包括几个附加的处理块以增强对文本或语音输入和输出的处理。例如,对于基于语音的系统,系统100的语音识别级可以包括韵律检测模块(未示出)以纠正语音输入在声调、时间安排以及音量上的变化。类似地,对于基于文本的对话系统,可以包括拼写和语法检查模块(未示出)以便于文本输入。

图2是说明根据实施例的内容优化器的功能组件的框图。如图1和图2所示,内容优化器108接合在对话管理器112和知识管理器104之间。内容优化器108从对话管理器112接收查询,在对查询进行特定的组织以及改进步骤后,将他们传送到知识管理器104。查询一般包括定义要素的一个或多个约束条件,其允许系统从知识库返回结果。一般地,如果初始查询导致返回过少或过多的应答,那么内容优化器对查询进行改进或修正。在一个实施例中,内容优化器调用一个或多个策略以修正约束条件中的一个或多个进而使系统返回有意义的结果或结果集。内容优化器含有或者访问与领域无关的策略库并且利用内部或外部的配置文件来指定条件,在该条件下,使用特定的策略。

对于图2所示的实施例,内容优化器108从用户模型202接收用户优先选择数据以基于用户或用户组独特的特性对初始或者经修正的查询进行改进。可以将用户优先选择数据存储为数据存储器中的数据库或数据结构,该数据存储器紧密或宽松地连接到内容优化器模块。用户优先选择数据包括与用户相关的预定数据和/或通过使用系统而逐渐产生的数据。

进一步如图2所示,内容优化器108还含有领域配置文件204或者具有领域配置文件204的访问权。领域配置文件表示可以为每个领域(即应用或服务)不同定制的一组或多组可配置属性。一般地,不同的应用在不同的条件下需要不同的策略。因此,配置文件204容易更新以促进内容优化器模块108的应用性。如图2所示,领域配置文件204在内容优化器的外部。这增强了内容优化器模块108在对话系统100内部的可移植性,并且便于该配置文件的修改。通过这种机制,添加新领域所需要的工作最少,一般仅需要定义或者增加新的配置文件和领域本体。在另一实施例中,可以将领域配置文件204保持为内容优化器108中的内部文件。

内容优化器108的主要功能性工作包括:保持查询中指定的约束条件的跟踪并且当需要时对该查询进行修正;基于领域本体或者用户模型202中指定的其它知识对知识管理器返回的项目进行组织和总结;以及基于返回的项目、领域模型中的信息以及与领域无关的修正策略建议对查询进行可能的调节或改进。为了实现这个功能,领域配置文件204包括用于适应性206的多种修正策略208及其相关条件。条件-操作对206指定诸如查询结果集大小这样的条件和需要采取的相关操作。策略文件208包括一组策略,为了知识管理器的进一步处理,优化器将自动执行该策略来修正查询中的约束条件。策略文件208还可以包括一组策略,当存在过少或过多合格项目时,或者如果用户指示返回的应答不合适,则向用户建议该组策略。

当内容优化器108接收到查询时,每个查询被分解为包括该查询的一个或多个约束条件。作为查询的实例,例如可以是用于汽车导航系统的实例,用户可以请求系统寻找在Palo Alto的便宜日本饭店。每个约束条件表示用户正在查询的目标或操作的关键特征。因此,在这个实例中,约束条件包括:目标类型-饭店,烹调风格-日本,价格范围-便宜以及位置-Palo Alto。取决于诸如查询表述、系统中的知识库以及响应查询用于支配提取数据的规则这样的各种因素,初始查询可能向用户返回过少或过多的结果。内容优化器108将存储在配置文件204中的一个或多个策略208应用于约束条件以向用户返回最优数目的结果。内容优化器应用的策略可以包括放宽约束条件、增加约束条件、去掉约束条件或者紧缩约束条件。一般地,如果初始查询返回过少的结果,则放宽或者去掉一个或多个约束条件,而如果初始查询返回过多的结果,则紧缩或增加一个或多个约束条件。由因素的组合来确定选择哪个约束条件进行修正或者执行哪个修正(若有的话),该因素包括结果集中的项目数目、系统本体、韵律信息、来自用户模型的信息和诸如环境条件这样的其它信息。

在一个实施例中,包括查询的约束条件可以根据不同特点分为多种类型。例如,约束类型可以包括:字符串、二进制、数值(scalar)或者分级类型。约束类型决定多少个值以及什么类型的值可以归于约束条件。字符串类型约束条件包括文字数字文本的字符串,二进制类型约束条件采用是/否值,数值类型约束条件采用被排序的值范围(例如1-10,A-F等),和本体类型约束条件(分级约束条件)提出从超类到类别再到子类范围的类别分级。约束类型规定查询修正策略如何作用于约束条件。例如对于给定的策略(例如放宽),修正数值类型约束条件不同于修正二进制或本体类型约束条件。

图3A是根据实施例的配置文件的实例。如图3所示,配置文件具有3个属性方框。第一方框302指定选择约束条件进行修正的默认特征(约束条件)顺序,以及修正它们的顺序,图3中表示为约束条件1-4。第二属性框304将框302中定义的领域约束条件与适当的与领域无关的策略(图3中表示为策略1-4)进行关联。策略字符串的名称,此处的“relaxation Strategy”(放宽策略)定义所要被使用的策略的类型和实际指定的策略,策略n指定应用在特定约束条件的策略类型。虽然约束条件放宽是内容优化器可以执行的修正策略的一种类型,然而,其它策略也是可用的。因此,方框304中的额外输入项可以读“tighten Strategy.constraintn(紧缩策略.约束条件n)”、“delete Strategy.constraintn(删除策略.约束条件n)”、“add Strategy.constraintn(增加策略.约束条件n)”等。图3A中的第三属性框306将内容优化器处理与结果集合的适当大小范围进行关联,下面将参照图3B对其详细说明。

出于说明的目的,图3A中的每个框包括用于饭店查询的特定实例的示例配置文件要素。以斜体字显示饭店选择应用的输入项。对于示例饭店应用而言,约束条件,按照可能修正的顺序是:烹调风格、位置、价格以及信用卡接收政策,如方框302所示。如方框304所示,取决于其类型,每个约束条件具有与其相关联的放宽策略。烹调风格约束条件是分级类型约束条件,因此放宽策略是本体策略。位置和价格约束条件都是数值类型约束条件,因此它们的放宽策略是数值策略。信用卡接收政策是二进制值(例如,是或否),因此放宽策略是二进制策略。关于方框306中指定结果集的大小范围,饭店应用实例指定了四种可能操作的具体范围。对于图3A的实例,如果结果集在1到3个应答的范围内,则内容优化器将不会调用修正策略并且对话管理器将仅列出结果集中的项目。然而,如果没有返回应答或者返回的应答多于5个,则内容优化器将调用策略,该策略包括按照方框302中指定的顺序对约束条件进行修正并且使用方框304指定的策略。

图3B是根据实施例的取决于结果集大小来指定操作的表。出于说明的目的,图3B中的结果集大小对应于图3A的方框306中所说明范围大小。如图3B的列312所示,为查询返回n个结果。对于所示的实例,内容优化器根据n的值进行不同的操作,如列314所示。

如果没有返回结果(n=0),那么处理空结果集(Process Empty Result Set)操作引起内容优化器声明没有任何匹配,然后对空集执行适当的修正。这个操作使内容优化器决定修正哪个约束条件、执行该修正、再次查询知识管理器并且将经修正的结果集(连同初始结果集)发送到对话管理器中。或者,系统可以从用户中引出放宽的约束条件。

如果有一到三个返回结果(0<n<=3),那么列出结果集(List Result Set)操作引起内容优化器声明匹配的数目并且随后列出结果集中的项目。可以将返回结果的这个范围定义为最优应答,因此内容优化器不需要进行进一步的修正或操作。

如果有四到十个返回结果(3<n<=10),则处理中等结果集(Process Medium Result Set)操作使内容优化器声明匹配的数目、通过确定修正哪一个约束条件来对过多结果集执行适当的修正、执行该修正,再次查询知识管理器并且将经修正的结果集(连同初始结果集)发送到对话管理器中。或者系统可以从用户中引出进一步的约束条件修正。

如果有大于10个返回结果(10<n),则处理大结果集(Process Large Result Set)操作引起内容优化器声明匹配的近似数目、通过确定修正哪一个约束条件对过多结果集执行适当的修正、执行该修正、再次查询知识管理器并且将经修正的结果集(连同初始结果集)发送到对话管理器,或者从用户中引出进一步的约束条件修正。

如图2所示,在内容优化器108和对话管理器112以及知识管理器104之间的数据链路是双向的。就大体的流动来讲,查询从对话管理器112传递到内容优化器108,然后传递到知识管理器104。在访问知识库后,查询结果从知识管理器104通过内容优化器108并回到对话管理器112。图4是根据实施例的流程图,其说明在基于内容优化器的对话系统中处理查询的方法。在启动时,内容优化器在402进行初始化。初始化过程一般包括载入配置文件204、任何用户模型或者优先选择文件202以及操作需要的任何其它文件或实用程序。一旦接收到查询,内容优化器首先在404解决任何不明确的类型或者术语。不明确术语的例子可以是寻找“轿车的某些东西”的请求,这里术语轿车可能指音乐乐队或者对象的类型。在406中,系统确定接收的查询或发声是用于初始查询的附加术语。该确定由对话管理器112处理。如果该查询含有附加术语,那么在408含有附加术语的结构与初始查询合并。在这个过程中,内容优化器108确定如何将新的约束条件与旧的约束条件合并。序列402-406表示将查询从对话管理器通过内容优化器发送到知识管理器的过程。图4的方法从在410开始的序列继续,其表示将查询结果从知识管理器通过内容优化器返回对话管理器的处理。在410中,内容优化器基于配置文件中的条件选择高级过程。它还采用了用于结果数目集的初始阈值。如果返回过少或过多的结果,则内容优化器将对初始或经修正的查询中的一个或多个约束条件进行修正,例如图3B所示。在412中,内容优化器选择要修正的约束条件并且在414选择用于所选的约束条件修正的适当策略。然后在416内容优化器对查询进行修正并且记录修正的细节。然后在418它将修正的查询送回用于产生应答的知识管理器。图4说明的过程可以包括一种或多种超时机制,在过程执行期间,该超时机制在延迟、异常或类似触发事件的条件下中断、改向或重启过程流(例如从初始化402开始)。

在一个实施例中,内容优化器可以调用的策略包括放宽或者去掉约束条件(例如,如果返回过少的结果)或者增加或紧缩约束条件(例如如果返回过多的结果)。每个策略可以应用在每个不同类型的约束条件上(例如本体、数值和二进制)。因此,如图4所示,内容优化器首先基于配置文件中提供的详细说明选择约束条件进行修正,然后选择用于该约束条件的策略。因此,可能出现在查询中的每个约束类型,本体、数值和二进制可以被放宽、去掉、紧缩或者增加。图3A列出了一些命令的实例,该命令可以包含在用于约束条件的不同可能类型(即二进制、数值和本体)的放宽策略的配置文件中。在一个实施例中,内容优化器是可升级的模块,其可以为除二进制、数值和本体约束条件之外的各种类型的约束条件提供不同或额外的放宽策略,包括不同放宽策略的组合。当开发出新的放宽策略时,可以将他们添加到在根据实施例的对话系统中实现的内容优化器中。

在一个实施例中,紧缩或者增加约束条件的策略需要从用户中引入关于在所获得的所有结果的组内指定小组的进一步输入,而放宽或去掉约束条件的策略需要自动去掉或者放宽由配置文件指定的约束条件,或去掉或者放宽产生大于0的最小结果集的约束条件。对于二进制约束条件,放宽约束条件的处理需要接收每个状态为可接受的状态。对于数值约束条件,放宽约束条件的处理需要扩大对于那个约束条件的值的可能范围。例如,如果对于五星级饭店的饭店查询没有返回结果,则内容优化器可以放宽约束条件以返回可能在知识库中列出的三或四星饭店的结果。

在一个实施例中,首要的策略包括放宽领域本体约束条件以拓宽查询的可能应答的范围。图6A-6C说明了查询对话的实例,其中内容优化器放宽本体领域以向用户返回结果。对于下面将更加详细地说明的图6的实例,内容优化器放宽基于本体的约束条件(烹调风格)以应答特定饭店的搜索。图5是说明根据实施例的用于本体放宽策略的流程图。在502中,找到了在领域本体中的当前值的父值(parentvalue)。对于图6A和6B中提供的实例,烹饪风格类型领域的父值是“亚洲”。在504中,将父值代入初始结构以产生修正的查询。然后在506将这个修正的查询送到知识管理器。在508中,确定对于该经修正的查询而言结果的数量是否大于0。如果是,则系统向对话管理器510发送新的结果集和修正信息。如果结果的数量不大于0,则过程从502开始重复,其中找到在领域中当前值的父值,然后将其代入以前的结构。图5说明根据实施例的本体放宽策略的一个实例。也可以实现其它本体放宽策略,例如挑选优选的兄弟节点和其它类似的策略。在一个实施例中,父值表示当前领域或者当前值的更广领域或者概念。

图6A是根据实施例的表,其说明由内容优化器处理的查询的实例。图6A说明内容优化器放宽本体约束条件的实例。列602提供在没有内容优化的对话系统中处理的查询的实例,而列604提供根据实施例的使用内容优化处理的相同查询的实例。如图6所示,在没有内容优化的条件下,对话系统容易提供查询的零应答答复。当用户的查询没有返回结果时,系统仅仅报告没有结果,这使得用户不确定如何处理。正如上述一样容易,这种系统可能提供过多的应答。无论哪种情况,结果都不能令人满意并且为了得到适当的答案需要进一步与用户交互。根据实施例的内容优化器是基于领域本体的并且以这样一种方式组织查询中的项目,即,对话管理器可以以有用的方式提供内容,例如列604所示的那样。一般地,内容优化过的系统传送与内容未优化的系统相同的信息,但除此之外,它还建议合理的选择。对于图6A的实例,没有找到Palo Alto中的日本饭店,因此将初始约束条件烹调风格=日本放宽到烹调风格=亚洲,其导致可能存在4个可供选择的亚洲饭店选择。

应该放宽哪个约束条件的方式取决于它采用哪类值。例如,对于烹调风格约束条件,值是分级相关的(例如中国、越南和日本是亚洲的所有子类型)。图6B说明根据实施例的用于图6A所示实例的部分分级的本体。本体610说明烹调风格类型的领域的各种子类型和子-子类型。对于图6A的实例,如列604所示,放宽的约束条件是烹调风格,因此相关的策略可以是restaurant.relaxation Strategy.cuisine=Ontology Strategy,如图3A所示。

尽管由默认特征顺序命令将烹调风格约束条件选择为第一待放宽的约束条件,但是作为替代可以放宽其它约束条件。例如参考图6A,如果放宽价格约束条件,那么在这种情况下系统可能返回可在Palo Alto是可得到具有更大价格范围的日本饭店的应答,或者可以放宽位置约束条件,使得系统返回在诸如San Jose这样的临近城市可得到便宜日本饭店的应答。

在一个实施例中,内容优化器可以基于本体信息执行特定协商策略。利用这种方式,内容优化器可以向用户提供一系列的选项以允许用户放宽或者指定用于多于一个约束条件的其它策略。这种策略对更复杂的领域是有帮助的。

在一个实施例中,对话系统保持配置文件中的数据结构,该配置文件列出用于特定领域或应用的约束条件以及与该约束条件相关联的各种特征。图6C是根据实施例的表,其列出具有用于图6A的饭店实例的相应的类型和值的各种约束条件的实例。使用搜索饭店的实例,图6C的表在列612中列出9种不同的约束条件,在列614中列出每种约束条件的约束类型和在列616中列出每种约束条件的可能约束值。对于图6C说明的实例,约束类型包括:字符串、二进制、数值或者分级类型。价格值是数值(例如便宜、适中、昂贵),而信用卡值是二进制(例如接受或者不接受)。配置文件将每种特征与内容优化模块核心中的特定策略集相关联。

在一个实施例中,内容优化器包括用于组织大量返回结果集的设备。它向对话管理器提供关于查询结果中相对于本体中的概念的项目的分布的统计数字。统计数字为超类和子类计算。基于本体结构,内容优化器为由知识管理器应答用户查询所返回的每个项目集计算描述性的统计。如果结果集具有过多项目,那么对话管理器可以使用这些数字以给出有意义的应答进而使用户能够进一步改进查询。例如,在搜索音乐中,对话管理器可能返回应答:“有85首歌。你想按照诸如摇滚、流行、灵魂音乐或者爵士等流派列出他们吗?”

根据这里所描述的实施例的内容优化器提供超过当前对话系统的一些优点。对来自用户的约束条件的调整是独特的,同样以可配置方式提供的多种修正策略,以便于可以容易地对他们进行更新或切换。这极大地便于对用于特定应用的对话系统进行调整以及输入新的领域。此外,系统提供将由对话管理器使用的返回结果的摘要使得对话管理器可以向用户提供高级概述而不提供过多的信息或不必要的细节。

插入有如这里所述的内容优化器的对话系统的实施例可以用在各种不同的应用、工业或工业部门中,例如汽车、飞机、手持设备、蜂窝式便携无线电话等。对话系统可以是基于语音的,具有按照口语提供的用户输入和系统输出,或者它可以是基于文本的,具有通过计算机设备或类似接口设备输入和输出的文字数字文本。

此处说明的可配置内容优化器的各个方面可以实施为编程进入各种电路的任意一个中的功能,包括诸如现场可编程门阵列(“FPGA”)这样的可编程逻辑器件(“PLD”)、可编程阵列逻辑(“PAL”)器件、电可编程逻辑和存储器件和标准的基于单元的器件以及专用集成电路。用于实施内容优化器各个方面的一些其它可能性包括:具有存储器(例如EEPROM)的微控制器、嵌入式微处理器、固件、软件等。此外,可以在微处理器中实现内容优化器程序的各个方面,该微处理器具有基于软件的电路仿真、离散逻辑(时序和组合)、定制器件、模糊(神经)逻辑、量子器件以及上述器件类型的任意组合。可以在各种元件类型中提供底层器件工艺,例如,像互补金属氧化物半导体(“CMOS”)这样的金属氧化物半导体场效应晶体管(“MOSFET”)、如发射极耦合逻辑(“ECL”)的双极工艺、聚合体工艺(例如硅-共轭聚合物和金属-共轭聚合物-金属结构)、混合的模拟和数字等。

还应该注意的是:可以使用硬件、固件和/或如在各种机器可读或计算机可读的介质中实现的数据和/或指令的任意数量组合,根据它们的行为、寄存器传送、逻辑元件和/或其它特点来描述此处公开的各种功能。其中可以实施这种格式数据和/或指令的计算机可读介质包括但不限于各种形式的非易失性存储介质(例如光、磁或者半导体存储介质)和可以用于通过无线、光或者有线信号介质或者其中的任意组合传送这种格式数据和/或指令的载波。载波传送这种格式数据和/或指令的实例包括但不限于通过一种或多种数据传输协议(例如HTTP、FTP、SMTP等)经由因特网和/或其它计算机网络进行传输(上载、下载、电子邮件等)。

除语境清楚要求外,否则在整个说明和权利要求中,将单词“包括”等理解成是与独占或者穷举意义相对的包含意义,也就是说理解为“包括但不限于的意义”。使用单数或复数的单词也分别包括复数或单数。另外,单词“此处”、“在下文”、“上面”、“下面”以及类似意义的单词是指将这种应用的总体而不是指这个应用的任意特定部分。当单词“或者”涉及两个或多个项目的罗列时,那个单词包含所有该单词的以下解释:清单中的任意项目、清单中的所有项目以及清单中项目的任意组合。

对可配置内容优化器所说明的实施例的上述描述不是旨在彻底的或者将该实施例限制为已公开的精确形式或者指令。然而,此处出于示例性目的,说明了对话系统中内容优化的具体实施例和实例,但是相关领域的技术人员将认识到在内容优化器的范围内各种等效改进是可能的。

可以结合上述多种实施例的元件和操作以提供更多的实施例。根据上面的详细说明,可以对内容优化器进行这些和其它改变。

一般地,在下面的权利要求中,使用的术语不应该理解为将内容优化器限制为说明书和权利要求公开的具体的实施例,而是应该理解为包括在权利要求下操作的所有操作或者过程。因此,公开内容不是对内容优化器的限制,相反陈述方法的范围将完全由权利要求确定。

尽管下文以某些权利要求的方式介绍了内容优化器的某些方面,但是本发明人考虑权利要求形式任何数字中的方法的多种方面。例如,尽管仅将内容优化器的一个方面陈述为实施在机器可读介质中,但是其它方面也可以实施在机器可读介质中。因此,本发明人保留在提交申请后增加附加权利要求的权利以追加这种用于可配置内容优化器其它方面的附加权利要求形式。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号