基于隐式相关性反馈来提供QA训练数据以及训练QA模型
文献发布时间:2023-06-19 11:52:33
背景技术
搜索引擎可以在搜索结果页面(SERP)中提供针对用户查询的搜索结果。传统的搜索结果包括指向与用户查询最相关的web文档的链接。此处,web文档也可以被称为例如网页等。链接可以指超链接、网址、URL等。近年来,一些web搜索引擎开始在SERP中进一步提供问题回答(QA:question answering)服务,其也被称为web QA服务。例如,如果查询具有问题意图,则web搜索引擎将会从web文档中提取最相关的文段(passage)以回答用户的问题,并且将该文段放置到SERP中的单独的QA块内。文段可以指从对应的web文档中提取的一个或多个语句、一个或多个段落、摘要等。QA服务越来越受到搜索引擎用户的欢迎,因为其可以避免点击web文档链接、浏览web文档、寻找答案等用户操作。
发明内容
提供本发明内容以便介绍一组概念,这组概念将在以下的具体实施方式中做进一步描述。本发明内容并非旨在标识所保护主题的关键特征或必要特征,也不旨在用于限制所保护主题的范围。
本公开的实施例提出了用于基于隐式相关性反馈来提供QA训练数据以及训练QA模型的方法和装置。可以从搜索日志中获得问题-文段对以及对应的用户行为。可以从所述用户行为中提取行为特征。可以通过隐式相关性反馈模型,基于所述行为特征来确定所述问题与所述文段之间的相关性分数。可以基于所述相关性分数,向所述问题-文段对添加相关性标记。可以利用所获得的自动标记的QA训练数据来对QA模型进行预训练,并且利用人为标记的QA训练数据来对经预训练的QA模型进行精调。
应当注意,以上一个或多个方面包括以下详细描述以及权利要求中具体指出的特征。下面的说明书及附图详细提出了所述一个或多个方面的某些说明性特征。这些特征仅仅指示可以实施各个方面的原理的多种方式,并且本公开旨在包括所有这些方面和其等同变换。
附图说明
以下将结合附图描述所公开的多个方面,这些附图被提供用以说明而非限制所公开的多个方面。
图1示出了示例性的搜索结果页面。
图2示出了根据实施例的提供QA训练数据的示例性过程。
图3示出了根据实施例的基于标记聚合策略来提供QA训练数据的示例性过程。
图4示出了根据实施例的基于分数聚合策略来提供QA训练数据的示例性过程。
图5示出了根据实施例的基于特征聚合策略来提供QA训练数据的示例性过程。
图6示出了根据实施例的训练QA模型的示例性过程。
图7示出了根据实施例的用于基于隐式相关性反馈来提供QA训练数据的示例性方法的流程图。
图8示出了根据实施例的用于基于隐式相关性反馈来训练QA模型的示例性方法的流程图。
图9示出了根据实施例的用于基于隐式相关性反馈来提供QA训练数据的示例性装置。
图10示出了根据实施例的用于基于隐式相关性反馈来训练QA模型的示例性装置。
图11示出了根据实施例的用于基于隐式相关性反馈来提供QA训练数据和/或训练QA模型的示例性装置。
具体实施方式
现在将参考多种示例性实施方式来讨论本公开。应当理解,这些实施方式的讨论仅仅用于使得本领域技术人员能够更好地理解并从而实施本公开的实施例,而并非教导对本公开的范围的任何限制。
Web QA需要准确地确定文段相关性,例如识别文段与问题的相关性,这将决定一个文段是否能够回答给定的问题。在一些传统的方式中采用了语言规则或模式(pattern)。这些基于规则的方式可以处理一些已知的搜索情形。为了实现web规模的开放域的问题回答,机器学习模型也可以被用于进行文段相关性确定。例如,近年来,基于深度神经网络的深度学习模型已被用于确定文段相关性。然而,机器学习模型的挑战在于对大量QA训练数据的需求,其中每个训练数据实例包括一个问题-文段对以及对应的相关性标记。通常,在参数数量方面,模型大小会随着目标任务的复杂性而增加,所需要的训练数据量也会随着模型大小而增加。特别地,用于web QA的文段相关性确定的深度学习模型的参数数量是极其巨大的,从而也需要更多的训练数据。此外,搜索引擎通常在使用各种语言的多个国家提供服务。人为地对每一种语言的大量训练数据进行标记是不现实的。除了巨大的标记成本外,标记的质量也是需要关注的问题。特别地,针对一些专业性查询的标记可能并不可靠。因此,如何收集采用不同语言的大量的高质量训练数据是web QA所亟待解决的问题。
一种收集QA训练数据的方式要求用户针对文段的相关性提供显式相关性反馈。针对文段的显式相关性反馈指用户采取动作以主动地表达其对搜索结果的满意度,例如,主动地表达其是否认为所提供的文段确实与问题相关或回答了问题。作为示例,可以在SERP中提供文段的同时还呈现反馈链接或投票按钮,使得用户可以显式地提交针对所提供的文段的反馈。显式相关性反馈可以用于形成QA训练数据中的指示问题与文段之间的相关性的标记。然而,在实际应用中,只有很少部分的搜索引擎用户会尝试发送显式相关性反馈。此外,用户通常倾向于发送否定性反馈,例如指出文段具有与问题的较低相关性,而很少发送肯定性反馈,例如指出文段具有与问题的较高相关性,从而导致在所标记的数据中反例明显多于正例。为了形成均衡的QA训练数据,需要从不均衡的标记分布中取出基本相同数量的正例和反例,这进一步减少了可以从显式相关性反馈导出的有效训练数据的数量。因此,显式相关性反馈不能有效地用于收集QA训练数据。此外,显式相关性反馈还可能在用户与搜索引擎的交互中干扰用户。
在搜索引擎对web文档或网页进行排序的场景下,已经提出了将用户针对web文档的隐式相关性反馈用于确定文档相关性,例如,识别web文档与查询的相关性,并从而收集训练数据。针对web文档的隐式相关性反馈指在不增加搜索引擎用户负担的情况下,根据用户在搜索和/或浏览会话中针对web文档的行为而对用户满意度的推断。针对web文档的隐式相关性反馈的收集成本较低,数量较大,而且不会增加用户负担。已经提出了用于从用户行为中挖掘针对web文档的隐式相关性反馈的多种特征,例如,点击信息、平均停留时间、页面访问数量等。
然而,确定web文档的相关性与确定文段的相关性不同。文档级别的用户行为并不能被简单地应用于推断文段相关性。以点击行为为例,如果用户对SERP中的某个网页进行了点击,这通常表明该网页与用户的查询相关性较高,而如果某个网页未被用户点击,这通常表明该网页与用户的查询相关性较低。也就是说,对于web文档而言,用户点击行为与文档相关性具有强关联。然而,对于文段而言,情况可能并非如此。例如,假设用户的问题为“小孩的正常体温是多少?”并且在SERP中提供了关于小孩体温的文段,由于所提供的文段中已经包含了用户想要获得的信息,用户可能并不会执行任何进一步的点击操作。例如,假设用户的问题为“成人的正常体温是多少?”并且在SERP中提供了关于小孩体温的文段,则该文段中的信息可能并未准确地匹配用户的问题。用户可能想要在提取了该文段的源页面内寻找更多信息,因此,用户可能点击源页面的链接并且读取该页面中的更多内容。上面的示例揭示了QA场景的特有属性,例如,文段内容已经在QA块中呈现给用户,因此,在文段内容包含了用户想要的信息的情况下,用户可能并不需要点击源页面链接或其它网页链接以便获得答案,而在文段内容未包含满意的答案的情况下,用户反而可能执行进一步的操作。
此外,在SERP中,QA块在数量上也与web文档不同。给定一个用户问题,搜索引擎通常能够在SERP中返回一系列web文档链接,但是仅返回单个QA块。大多数现有的点击模型利用文档的相关性排列次序来获得更可靠的隐式相关性反馈。然而,这种方式并不能应用于单个QA块。
因此,现有的通过挖掘用户对web文档的隐式相关性反馈的方式并不能被有效地应用于web QA的场景。
本公开的实施例提出了从用户行为中挖掘针对web QA的隐式相关性反馈。可以考虑用户对SERP施加的不同类型的行为,例如,点击行为、重查询行为、浏览行为等。可以将隐式相关性反馈模型用于从用户行为中挖掘针对web QA的隐式相关性反馈。隐式相关性反馈模型可以基于从用户行为中提取的行为特征来预测一个问题-文段对的相关性分数。为了减少个体用户和个体行为动作的随机性的影响,隐式相关性反馈模型还可以采用不同的聚合策略以对大量不同用户的行为进行聚合。由隐式相关性反馈模型提供的相关性分数可以形成用于指示问题与文段之间的相关性的标记。具有相关性标记的问题-文段对可以被用作QA训练数据实例,并且添加到QA训练数据集中。得益于隐式相关性反馈模型的使用,所提供的相关性标记具有较高的准确性。
本公开的实施例可以从搜索日志中获得大量的问题-文段对以及对应的用户行为,并且基于用户行为来自动地为问题-文段对添加相关性标记。由此,可以提供大规模的基于隐式相关性反馈所形成的QA训练数据集。所形成的QA训练数据集可以进而被用于训练QA模型,其也可被称为QA相关性模型。例如,可以以弱监督方式来将该QA训练数据集用于预训练QA模型。
通过本公开的实施例,可以提供大量的自动标记的QA训练数据,并且QA训练数据的标记具有较高的准确性,从而可以有助于训练出具有更高性能的QA模型。此外,由于标记的添加是基于用户行为的,其不受到语言的限制,因此,本公开的实施例也可以容易地构建采用不同语言的QA训练数据。
图1示出了示例性的搜索结果页面(SERP)100。该SERP 100可以是搜索引擎在用户界面中响应于用户的问题而向用户呈现的。SERP 100中的组件可以被示例性地分为搜索块110、QA块120、相关问题块130、网页链接块140等。此处,块(block)仅是对SERP 100中的组件的不同逻辑划分,在显示和功能方面,不同的块及其中的组件既可以相互独立也可以相互组合。
在搜索块110中,用户可以输入问题或查询,例如“夏季流感治疗”。
响应于确定在搜索块110中的用户输入具有问题意图,搜索引擎可以在SERP 100中提供QA块120。QA块120可以包括,例如,用于回答用户问题的文段122、文段122的扩展选项124、文段122的源页面链接126等。文段122是从web文档中提取的与用户问题最相关的内容。例如,在图1中,文段122可以包括用于治疗夏季感冒的多个技巧。由于页面显示大小的限制,文段122可能仅被部分地显示。在这种情况下,用户可以通过点击扩展选项124,例如“更多项”链接,以便查看文段122的被隐藏的部分。源页面链接126是指向从中提取了文段122的源页面或源web文档的超链接。当用户点击源页面链接126时,可以在用户界面中呈现文段122的源页面。此外,可选地,SERP 100还可以包括反馈按钮或链接128,以便收集用户针对文段122所提供的显式相关性反馈。例如,当用户点击反馈按钮或链接128时,可以呈现反馈页面或反馈选项,使得用户可以提供其认为当前文段122是否令人满意地回答了问题的反馈。反馈按钮或链接128可以被呈现在QA块120之内或之外。
相关问题块130可以包括与搜索块110中的用户问题相关或类似的问题。这些相关问题可以包括例如被其他用户频繁搜索的问题等。在图1中,在相关问题块130中示出了与用户问题“夏季流感治疗”相关的多个问题,例如,“什么引起夏季流感?”、“治疗夏季流感的药物?”等等。当用户点击了一个相关问题时,搜素引擎可以发起针对该点击的相关问题的搜索,并且在用户界面中呈现对应的SERP。
网页链接块140中包括指向与搜索块110中的用户问题相关的网页或web文档的超链接。网页链接块140中的网页链接可以是搜索引擎基于文档相关性而排序的。当用户点击了一个网页链接时,可以在用户界面中呈现该网页。
应当理解,图1的SERP 100中的所有块和组件都是示例性的,根据具体的设计和应用需求,SERP 100可以包括更多或更少的块和组件,并且这些块和组件可以以任何其它方式进行布局和呈现。
图2示出了根据实施例的提供QA训练数据的示例性过程200。过程200可以被执行用于基于从用户行为中挖掘的针对web QA的隐式相关性反馈,来形成用于训练或改进QA模型的训练数据集。
可以将QA系统210部署在搜索引擎中,以提供web QA服务。QA系统210可以获得用户输入的问题,并且通过QA模型212来回答问题。例如,QA模型212可以响应于用户的问题而在SERP中的QA块内提供文段。
可能存在QA系统210与大量的搜索引擎用户之间的交互,并且可以将交互相关的信息存储在搜索日志220中。搜索日志220可以包括来自大量用户的历史使用的多个信息项。每个信息项可以对应于一次展示(impression)。在本文中,一次展示可以指针对一个用户问题或查询的搜索结果的呈现,例如,图1中的SERP 100。假设QA系统210接收到来自一个用户u的问题q,QA系统210可以响应于问题q而在用户界面中向用户提供展示i,该展示i至少包括用于回答问题q的文段p。用户u可能针对该展示i而执行一些操作或不执行任何操作。相应地,对应于该展示i的信息项可以包括问题q、文段p、反映用户操作状况的一组用户行为等。
过程200旨在从搜索日志220中的信息项所包括的用户行为中挖掘隐式相关性反馈,以便为问题-文段对自动地添加相关性标记。
作为示例,图2示出了从搜索日志220中的信息项中取出了一个示例性的问题-文段对222以及与该问题-文段对222的多个展示分别对应的多组用户行为224。此处,问题-文段对222的多个展示可以指在不同用户处分别呈现的多个展示,这些展示包括例如问题-文段对222中的相同的问题、问题-文段对222中的相同的文段等。此外,应当理解,由于过程200旨在挖掘隐式相关性反馈,因此,用户行为224可以指来自用户的与针对web QA的隐式相关性反馈对应的那些行为。用户行为224可以被分类为不同的类型,例如,点击(Click)行为类型、重查询(Re-query)行为类型、浏览(Browsing)行为类型等。点击行为类型可以包括关于“点击”操作的各种行为。在一种实施方式中,属于点击行为类型的用户行为可以被进一步分类为不同的点击行为子类型,例如,答案点击(Answer Click)子类型、答案扩展点击(Answer Expansion Click)子类型、答案外点击(Outside Answer Click)子类型、相关点击(Related Click)子类型等。Answer Click指对文段的源页面链接的点击,例如,对图1中的源页面链接126的点击。Answer Expansion Click指对文段的扩展选项的点击以便显示文段的隐藏部分,例如,对图1中的扩展选项124的点击。Outside Answer Click指对SERP中除了文段的源页面链接之外的其它网页链接的点击,例如,对图1中的网页链接块140中的网页链接的点击。Related Click指对相关问题的点击,例如,对图1中的相关问题块130中的相关问题的点击。重查询行为类型可以包括涉及重构查询的行为,例如,用户可能修改原来的查询或问题,并且向搜索引擎发出新的查询或问题。浏览行为类型可以包括涉及用户阅读SERP中的文段或任何其它内容而并不产生任何输入的行为。应当理解,本公开的实施例并不局限于任何上述的用户行为及用户行为类型,而是可以包括更多或更少的用户行为和用户行为类型。
在230处,可以对用户行为224执行行为特征提取,以便获得与问题-文段对222相关联的行为特征232。例如,可以将用户行为224转换为布尔(Boolean)特征或数值化特征。
在一种实施方式中,行为特征232可以包括从与每个展示对应的一组用户行为中提取的原始行为特征,该组用户行为是单个用户针对该展示所产生的行为。在下面的表1中示出了一些示例性的原始行为特征的名称、行为类型、描述等。
表1
在表1中的“描述”部分给出了相应的原始行为特征的含义,并且给出了在不同用户行为情形下的原始行为特征的取值。应当理解,本公开的实施例可以采用表1中所列的原始行为特征中的一些或全部,或者采用任何其它原始行为特征,并且不局限于表1中所列的取值设置方式。此外,表1中的“满意地点击”(SatClick)可以指在执行了点击行为后,在接着所呈现的页面上的停留时间大于或等于预定阈值。此外,原始行为特征“Abandonment”可以指用户在SERP上停留了一段时间以浏览SERP,但是没有做出点击行为就结束了搜索。与原始行为特征“NoClick”相比,“Abandonment”在SERP上的停留时间长于“NoClick”在SERP上的停留时间。
在一种实施方式中,行为特征232可以包括从多组用户行为中提取的聚合行为特征。例如,问题-文段对222的N个展示可能被分别提供给多个用户,并且这些用户可能对于这些展示分别做出了各自的一组行为。通过对这些用户的行为进行聚合,可以避免个体用户和个体行为动作的随机性的影响。
本公开的实施例定义了针对SERP中的组件的点击率(CTR),所述组件可以是文段、文段的源页面链接、文段的扩展选项、相关问题、网页链接等以及SERP中的任何其它部分中的任何一个。例如,可以将CTR计算为:
其中,N
此外,本公开的实施例还定义了满意点击率(SatCTR)。例如,可以将SatCTR计算为:
其中,N
在下面的表2中示出了一些示例性的聚合行为特征的名称、行为类型、描述等。
表2
在表2中,“比率”可以指对应行为的发生数量与展示的总数量之比。以RFRate为例,该聚合行为特征指执行重查询的数量与展示的总数量之比。在表2中的“描述”部分给出了相应的聚合行为特征的含义,并且给出了在不同用户行为情形下聚合行为特征的计算。应当理解,本公开的实施例可以采用表2中所列的聚合行为特征中的一些或全部,或者采用任何其它聚合行为特征,并且不局限于表2中所列的计算方式。
在过程200中,可以将行为特征232进一步用于确定问题-文段对222中的问题与文段之间的相关性。例如,可以采用预先训练的隐式相关性反馈模型240,以基于行为特征232来确定问题与文段之间的相关性分数242。
隐式相关性反馈模型240旨在从行为特征的集合中挖掘出用户针对QA的隐式相关性反馈。隐式相关性反馈模型240的架构可以是基于各种技术的,例如,逻辑回归、决策树、随机森林、梯度提升决策树等。用于训练隐式相关性反馈模型240的训练数据可以采用例如<问题,文段,行为特征,标记>的形式,其中,“行为特征”是针对由“问题”和“文段”所构成的问题-文段对所获得的,并且“标记”指对“问题”与“文段”之间的相关性的人为标记。对隐式相关性反馈模型240的训练目标是使得由该模型基于行为特征所预测出的相关性分数能够拟合人为标记。隐式相关性反馈模型240可以采用不同的聚合策略来对用户行为进行聚合。后面将结合图3-图5具体讨论不同的聚合策略。
可以基于相关性分数242来形成相关性标记250,其指示在问题-文段对222中的问题与文段之间的相关性。
在一种实施方式中,相关性标记250可以是由相关性分数242所转换成的布尔标记。可以根据以下公式来生成相关性标记250:
score
其中,F
应当理解,本公开的实施例并不局限于上面讨论的从相关性分数242形成相关性标记250的方式,而是可以采用任何其它方式。例如,替代使得标记仅具有0和1的取值,也可以使得标记被设置为更多的可能值。例如,替代将相关性分数转换为离散的整数值,也可以直接将相关性分数作为标记。
可以将相关性标记250与问题-文段对222相关联以形成一个QA训练数据实例。该QA训练数据实例可以被添加到用于训练QA模型的、自动标记的训练数据集260中。
在过程200中,隐式相关性反馈模型240能够从行为特征的集合中挖掘出用户针对QA的隐式相关性反馈。不同的行为特征和/或其组合可能对隐式相关性反馈的挖掘具有不同的贡献。例如,行为特征SERPDwellTime指示了用户停留在SERP上的持续时间。由于文段的内容被作为对用户问题的回答而呈现在SERP中的QA块内,因此SERPDwellTime可以是对文段与问题的相关性的良好指示。例如,如前面所讨论的,行为特征AnswerClick和AnswerSatClick可能对于文段相关性判断具有较低的重要性。此外,不同行为特征的值的组合可能对文段相关性判断是更有帮助的。例如,当SERPDwellTime较长且NoClick=1时,即当SERP被放弃时,文段可能具有较高的相关性,因为用户可能仅仅浏览了一会儿文段就获得了所需的信息。例如,当AnswerClick=0且OTAnswerClick=1时,其通常是文段具有较低相关性的显著指示,因为用户可能并不满意文段的回答,并去点击其它网页链接。例如,当AnswerClickOnly=1且SERPDwellTime较长,这通常是文段相关性的正面信号,因为所显示的文段内容可能并不能完全回答用户问题,从而用户点击文段的源页面链接以进一步查看。例如,如果NoClick=1且HasRF=1,这可能指示文段与用户问题不相关,从而用户修改了问题以进一步表达其需要。
可以针对从搜索日志220中取出的每一个问题-文段对以及对应的用户行为来执行过程200。由于搜索日志220中可以包括来自实际应用场景的大量的问题-文段对以及对应的用户行为,因此,可以通过过程200来提供大量的自动标记的QA训练数据。QA训练数据可以用于训练或改进QA模型。例如,可以将训练数据集260用于训练QA模型,并且部署在QA系统210中。例如,可以将训练数据集260用于对QA模型212进行改进。
图3示出了根据实施例的基于标记聚合策略来提供QA训练数据的示例性过程300。过程300是图2的过程200的一种示例性具体实现,图3与图2中的相同标号指代相同的处理步骤或信息。在过程300中,隐式相关性反馈模型可以采用标记聚合策略来对用户行为进行聚合。标记聚合策略可以指针对一个问题-文段的多个展示中的每个展示预测相应的相关性分数并且形成相应的相关性标记,然后再将这些展示的相关性标记组合成最终的相关性标记。
可以通过230处的行为特征提取,从用户行为224中提取对应于不同展示的原始行为特征,例如,对应于展示1的原始行为特征332-1、对应于展示2的原始行为特征332-2、…、对应于展示n的原始行为特征332-n,其中,n是搜索日志220中记录的问题-文段对222的展示的数量。
隐式相关性反馈模型240可以被训练为基于每个展示的原始行为特征生成对应于该展示的初始相关性分数。例如,基于原始行为特征332-1来生成对应于展示1的初始相关性分数342-1,基于原始行为特征332-2来生成对应于展示2的初始相关性分数342-2,…,基于原始行为特征332-n来生成对应于展示n的初始相关性分数342-n。
在过程300中,可以进一步根据每个展示的初始相关性分数形成对应于该展示的初始相关性标记。例如,基于初始相关性分数342-1来生成对应于展示1的初始相关性标记344-1,基于初始相关性分数342-2来生成对应于展示2的初始相关性标记344-2,…,基于初始相关性分数342-n来生成对应于展示n的初始相关性标记344-n。从初始相关性分数形成初始相关性标记的方式类似于以上结合图2描述的从相关性分数形成相关性标记的方式。
根据过程300,可以将对应于多个展示的多个初始相关性标记组合成最终的相关性标记。例如,可以将初始相关性标记344-1、初始相关性标记344-2、…、初始相关性标记344-n组合成最终的相关性标记250。可以通过各种方式来进行标记的组合。例如,可以在多个初始相关性标记之间进行投票,将获得最多票数的值作为最终的相关性标记。
相关性标记250与问题-文段对222一起作为一个QA训练数据实例而添加到自动标记的训练数据集260中。
图4示出了根据实施例的基于分数聚合策略来提供QA训练数据的示例性过程400。过程400是图2的过程200的一种示例性具体实现,图4与图2中的相同标号指代相同的处理步骤或信息。在过程400中,隐式相关性反馈模型可以采用分数聚合策略来对用户行为进行聚合。分数聚合策略可以指针对一个问题-文段的多个展示中的每个展示预测相应的相关性分数,然后将这些展示的相关性分数组合成最终的相关性分数,最后基于最终的相关性分数来形成相关性标记。
可以通过230处的行为特征提取,从用户行为224中提取对应于不同展示的原始行为特征,例如,对应于展示1的原始行为特征432-1、对应于展示2的原始行为特征432-2、…、对应于展示n的原始行为特征432-n,其中,n是搜索日志220中记录的问题-文段对222的展示的数量。
隐式相关性反馈模型240可以被训练为基于每个展示的原始行为特征生成对应于该展示的初始相关性分数。例如,基于原始行为特征432-1来生成对应于展示1的初始相关性分数442-1,基于原始行为特征432-2来生成对应于展示2的初始相关性分数442-2,…,基于原始行为特征432-n来生成对应于展示n的初始相关性分数442-n。
在过程400中,可以将对应于多个展示的多个初始相关性分数组合成最终的相关性分数。例如,可以将初始相关性分数442-1、初始相关性分数442-2、…、初始相关性分数442-n组合成最终的相关性分数242。可以通过各种方式来进行分数的组合。例如,可以将多个初始相关性分数的平均值作为最终的相关性分数。
过程400可以进而从相关性分数242形成相关性标记250。相关性标记250与问题-文段对222一起作为一个QA训练数据实例而添加到自动标记的训练数据集260中。
图5示出了根据实施例的基于特征聚合策略来提供QA训练数据的示例性过程500。过程500是图2的过程200的一种示例性具体实现,图5与图2中的相同标号指代相同的处理步骤或信息。在过程500中,隐式相关性反馈模型可以采用特征聚合策略来对用户行为进行聚合。特征聚合策略可以指采用聚合行为特征来预测问题-文段对的相关性分数,然后基于相关性分数来形成相关性标记。
可以通过230处的行为特征提取,从用户行为224中提取在问题-文段对222的多个展示上的聚合行为特征532。假设问题-文段对222具有n个展示,则可以从与这n个展示分别对应的n组用户行为中提取如表2所示的聚合行为特征中一些或全部。隐式相关性反馈模型240可以被训练为基于聚合行为特征532来生成相关性分数242。相关性分数242可以进而形成相关性标记250。相关性标记250与问题-文段对222一起作为一个QA训练数据实例而添加到自动标记的训练数据集260中。
图6示出了根据实施例的训练QA模型的示例性过程600。过程600可以至少基于隐式相关性反馈来训练QA模型。
在图6中所示的QA模型610可以具有基于各种技术的架构。例如,QA模型610可以基于深度神经网络,如双向长短期记忆(BiLSTM)、来自变换器的双向编码器表征(BERT)等。应当理解,本公开的实施例旨在采用通过例如图2的过程200所获得的QA训练数据来对各种QA模型进行训练,而不局限于任何具体的QA模型。
在过程600中,示例性地通过两个阶段来训练QA模型610。在第一阶段中,可以在620处对QA模型610进行预训练。可以预先获得自动标记的训练数据集622,其对应于图2中的训练数据集260,从而,训练数据集622中包括基于隐式相关性反馈而获得的大量的自动标记的QA训练数据。可以以弱监督方式,利用训练数据集622来对QA模型610执行预训练。在第二阶段中,可以在630处对经预训练的QA模型610进行精调(fine-tune),以便改进模型性能。可以预先获得用于执行精调的人为标记的训练数据集632。如前所述,训练数据集632可能仅包括相对少量的QA训练数据。
可以将例如交叉熵(CE)用作两个训练阶段的损失函数,其可被定义为:
y=F
其中,F
由于本公开的实施例为QA模型610的训练提供了包括大量QA训练数据的训练数据集622,因此,与仅使用有限数量的训练数据所训练的现有QA模型相比,通过过程600所训练的QA模型610将具有更好的性能。
应当理解,图6的训练QA模型的过程600是示例性的,可以以任何其它方式来使用根据本公开实施例所获得的训练数据集622。例如,替代具有两个训练阶段的过程600,可以在仅包括一个阶段的训练过程中使用训练数据集622来训练QA模型610。例如,替代使用人为标记的训练数据集632对QA模型进行精调,可以采用根据本公开实施例所获得的训练数据集622对已有的QA模型进行精调和改进。
图7示出了根据实施例的用于基于隐式相关性反馈来提供QA训练数据的示例性方法700的流程图。
在710处,可以从搜索日志中获得问题-文段对以及对应的用户行为。
在720处,可以从所述用户行为中提取行为特征。
在730处,可以通过隐式相关性反馈模型,基于所述行为特征来确定所述问题与所述文段之间的相关性分数。
在740处,可以基于所述相关性分数,向所述问题-文段对添加相关性标记。
在一种实施方式中,所述用户行为可以包括以下至少一种类型;点击行为类型、重查询行为类型、以及浏览行为类型。
在一种实施方式中,所述获得用户行为可以包括:获得与所述问题-文段对的多个展示分别对应的多组用户行为。
所述提取行为特征可以包括:从与所述多个展示中的每个展示对应的一组用户行为中提取对应于该展示的原始行为特征。所述确定相关性分数可以包括:对于所述多个展示中的每个展示,通过所述隐式相关性反馈模型,基于对应于该展示的原始行为特征,确定所述问题与所述文段之间的、对应于该展示的初始相关性分数。所述确定相关性分数还可以包括:将对应于所述多个展示的多个初始相关性分数组合成所述相关性分数。可选地,所述添加相关性标记可以包括:对于所述多个展示中的每个展示,基于对应于该展示的初始相关性分数,确定对应于该展示的初始相关性标记;以及将对应于所述多个展示的多个初始相关性标记组合成所述相关性标记。
所述提取行为特征可以包括:从所述多组用户行为中提取聚合行为特征。所述确定相关性分数可以包括:通过所述隐式相关性反馈模型,基于所述聚合行为特征来确定所述问题与所述文段之间的相关性分数。
所述多个展示中的每个展示可以包括以下至少之一:所述文段、所述文段的源页面链接、所述文段的扩展选项、相关问题、以及网页链接。
在一种实施方式中,方法700还可以包括:将所述问题-文段对和所述相关性标记作为一个QA训练数据实例,添加到QA训练数据集中。
在一种实施方式中,所述相关性标记可以是基于所述相关性分数而生成的布尔值。
应当理解,方法700还可以包括根据上述本公开实施例的用于基于隐式相关性反馈来提供QA训练数据的任何步骤/过程。
图8示出了根据实施例的用于基于隐式相关性反馈来训练QA模型的示例性方法800的流程图。
在810处,可以获得自动标记的训练数据集。所述自动标记的训练数据集中的每个训练数据实例可以包括问题-文段对和相关性标记,所述相关性标记是至少通过隐式相关性反馈模型、基于与所述问题-文段对相对应的用户行为而生成的。
在820处,可以利用所述自动标记的训练数据集,以弱监督方式对所述QA模型进行预训练。
在830处,可以利用人为标记的训练数据集,对所述QA模型进行精调。
在一种实施方式中,所述隐式相关性反馈模型可以用于:基于从所述用户行为中提取的行为特征来确定所述问题与所述文段之间的相关性分数。所述相关性标记可以是基于所述相关性分数而生成的。
应当理解,方法800还可以包括根据上述本公开实施例的用于基于隐式相关性反馈来训练QA模型的任何步骤/过程。
图9示出了根据实施例的用于基于隐式相关性反馈来提供QA训练数据的示例性装置900。
装置900可以包括:信息获得模块910,用于从搜索日志中获得问题-文段对以及对应的用户行为;行为特征提取模块920,用于从所述用户行为中提取行为特征;相关性分数确定模块930,用于通过隐式相关性反馈模型,基于所述行为特征来确定所述问题与所述文段之间的相关性分数;以及相关性标记添加模块940,用于基于所述相关性分数,向所述问题-文段对添加相关性标记。
在一种实施方式中,所述信息获得模块910可以用于:获得与所述问题-文段对的多个展示分别对应的多组用户行为。
所述行为特征提取模块920可以用于:从与所述多个展示中的每个展示对应的一组用户行为中提取对应于该展示的原始行为特征。所述相关性分数确定模块930可以用于:对于所述多个展示中的每个展示,通过所述隐式相关性反馈模型,基于对应于该展示的原始行为特征,确定所述问题与所述文段之间的、对应于该展示的初始相关性分数;以及将对应于所述多个展示的多个初始相关性分数组合成所述相关性分数。
所述行为特征提取模块920可以用于:从与所述多个展示中的每个展示对应的一组用户行为中提取对应于该展示的原始行为特征。所述相关性分数确定模块930可以用于:对于所述多个展示中的每个展示,通过所述隐式相关性反馈模型,基于对应于该展示的原始行为特征,确定所述问题与所述文段之间的、对应于该展示的初始相关性分数。所述相关性标记添加模块940可以用于:对于所述多个展示中的每个展示,基于对应于该展示的初始相关性分数,确定对应于该展示的初始相关性标记;以及将对应于所述多个展示的多个初始相关性标记组合成所述相关性标记。
所述行为特征提取模块920可以用于:从所述多组用户行为中提取聚合行为特征。所述相关性分数确定模块930可以用于:通过所述隐式相关性反馈模型,基于所述聚合行为特征来确定所述问题与所述文段之间的相关性分数。
此外,装置900还可以包括被配置用于基于隐式相关性反馈来提供QA训练数据的任何操作的任何其它模块。
图10示出了根据实施例的用于基于隐式相关性反馈来训练QA模型的示例性装置1000。
装置1000可以包括:训练数据集获得模块1010,用于获得自动标记的训练数据集,所述自动标记的训练数据集中的每个训练数据实例包括问题-文段对和相关性标记,所述相关性标记是至少通过隐式相关性反馈模型、基于与所述问题-文段对相对应的用户行为而生成的;预训练模块1020,用于利用所述自动标记的训练数据集,以弱监督方式对所述QA模型进行预训练;以及精调模块1030,用于利用人为标记的训练数据集,对所述QA模型进行精调。
此外,装置1000还可以包括被配置用于基于隐式相关性反馈来训练QA模型的任何操作的任何其它模块。
图11示出了根据实施例的用于基于隐式相关性反馈来提供QA训练数据和/或训练QA模型的示例性装置1100。
装置1100可以包括至少一个处理器1110。装置1100还可以包括与处理器1110连接的存储器1120。存储器1120可以存储计算机可执行指令,当所述计算机可执行指令被执行时,使得处理器1110执行根据上述本公开实施例的用于基于隐式相关性反馈来提供QA训练数据的方法的任何操作,或者用于基于隐式相关性反馈来训练QA模型的方法的任何操作。
本公开的实施例可以实施在非暂时性计算机可读介质中。该非暂时性计算机可读介质可以包括指令,当所述指令被执行时,使得一个或多个处理器执行根据上述本公开实施例的用于基于隐式相关性反馈来提供QA训练数据和/或训练QA模型的方法的任何操作。
应当理解,以上描述的方法中的所有操作都仅仅是示例性的,本公开并不限制于方法中的任何操作或这些操作的顺序,而是应当涵盖在相同或相似构思下的所有其它等同变换。
还应当理解,以上描述的装置中的所有模块都可以通过各种方式来实施。这些模块可以被实施为硬件、软件、或其组合。此外,这些模块中的任何模块可以在功能上被进一步划分成子模块或组合在一起。
已经结合各种装置和方法描述了处理器。这些处理器可以使用电子硬件、计算机软件或其任意组合来实施。这些处理器是实施为硬件还是软件将取决于具体的应用以及施加在系统上的总体设计约束。作为示例,本公开中给出的处理器、处理器的任意部分、或者处理器的任意组合可以实施为微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、状态机、门逻辑、分立硬件电路、以及配置用于执行在本公开中描述的各种功能的其它适合的处理部件。本公开给出的处理器、处理器的任意部分、或者处理器的任意组合的功能可以实施为由微处理器、微控制器、DSP或其它适合的平台所执行的软件。
软件应当被广泛地视为表示指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、运行线程、过程、函数等。软件可以驻留在计算机可读介质中。计算机可读介质可以包括例如存储器,存储器可以例如为磁性存储设备(如,硬盘、软盘、磁条)、光盘、智能卡、闪存设备、随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、寄存器或者可移动盘。尽管在本公开给出的多个方面中将存储器示出为是与处理器分离的,但是存储器也可以位于处理器内部(如,缓存或寄存器)。
以上描述被提供用于使得本领域任何技术人员可以实施本文所描述的各个方面。这些方面的各种修改对于本领域技术人员是显而易见的,本文限定的一般性原理可以应用于其它方面。因此,权利要求并非旨在被局限于本文示出的方面。关于本领域技术人员已知或即将获知的、对本公开所描述各个方面的元素的所有结构和功能上的等同变换都旨在由权利要求所覆盖。
- 基于隐式相关性反馈来提供QA训练数据以及训练QA模型
- 基于训练数据与性能趋势的相关性的计算机模型机器学习