CN114020887B - 用于确定响应语句的方法、设备、装置和介质 - Google Patents
用于确定响应语句的方法、设备、装置和介质 Download PDFInfo
- Publication number
- CN114020887B CN114020887B CN202111275265.9A CN202111275265A CN114020887B CN 114020887 B CN114020887 B CN 114020887B CN 202111275265 A CN202111275265 A CN 202111275265A CN 114020887 B CN114020887 B CN 114020887B
- Authority
- CN
- China
- Prior art keywords
- sequence
- source
- sentence
- dialog
- response
- 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
- 230000004044 response Effects 0.000 title claims abstract description 281
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012549 training Methods 0.000 claims abstract description 70
- 238000002372 labelling Methods 0.000 claims abstract description 27
- 239000003550 marker Substances 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 28
- 238000003860 storage Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 37
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 17
- 238000013434 data augmentation Methods 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 7
- 238000003058 natural language processing Methods 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
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/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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Human Computer Interaction (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
根据本公开的实施例,提供了一种用于确定响应语句的方法、设备、装置和介质。该方法包括基于源语句序列和候选响应语句,根据响应确定模型,确定候选响应语句与正确响应语句间的匹配得分。基于匹配得分和表示候选响应语句是否是正确响应语句的标注信息来确定第一损失。基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失。源对话序列包括源语句序列和候选响应语句。正样本对话序列至少包括正确响应语句。负样本对话序列包括源语句序列和针对源语句序列的错误响应语句。第二损失表示相比负样本对话序列,正样本对话序列与源对话序列之间的相似程度。该方法还包括基于第一损失和第二损失的值,训练响应确定模型。
Description
技术领域
本公开的示例实施例总体涉及计算机领域,特别地涉及用于确定响应语句的方法、设备、装置和计算机可读存储介质。
背景技术
在自然语言处理(NLP)领域中,基于人工智能的各种对话处理技术已经得到显著发展,并且具有广泛应用。自然语言处理可以应用于多种不同的对话处理系统和应用。例如,对话处理技术可以应用于能够与用户进行交互的智能对话系统,以协助用户执行具体的任务。针对这些对话处理系统,通常需要利用诸如语言理解模型等的模型来确定准确的响应语句。所确定的响应语句的准确性影响着对话处理任务的准确性。因此,期望用于确定响应语句的模型具有良好的处理能力和准确性。
发明内容
根据本公开的示例实施例,提供了一种用于确定响应语句的方案。
在本公开的第一方面,提供了一种的方法。该方法包括基于源语句序列和候选响应语句,根据响应确定模型,确定候选响应语句与对应于源语句序列的正确响应语句之间的匹配得分。该方法还包括基于匹配得分和候选响应语句的标注信息来确定第一损失。第一损失表示匹配得分与标注信息之间的相似程度。标注信息表示候选响应语句是否是正确响应语句。该方法还包括基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失。源对话序列包括源语句序列和候选响应语句。正样本对话序列至少包括正确响应语句。负样本对话序列包括源语句序列和针对源语句序列的错误响应语句。第二损失表示相比负样本对话序列,正样本对话序列与源对话序列之间的相似程度。该方法还包括基于第一损失和第二损失的值,训练响应确定模型。
在本公开的第二方面,提供了一种电子设备。该设备包括至少一个处理单元;以及至少一个存储器,至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令。指令在由至少一个处理单元执行时使设备执行以下动作:基于源语句序列和候选响应语句,根据响应确定模型,确定候选响应语句与对应于源语句序列的正确响应语句之间的匹配得分;基于匹配得分和候选响应语句的标注信息来确定第一损失,第一损失表示匹配得分与标注信息之间的相似程度,标注信息表示候选响应语句是否是正确响应语句;基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失,源对话序列包括源语句序列和候选响应语句,正样本对话序列至少包括正确响应语句,负样本对话序列包括源语句序列和针对源语句序列的错误响应语句,第二损失表示相比负样本对话序列,正样本对话序列与源对话序列之间的相似程度;以及基于第一损失和第二损失的值,训练响应确定模型。
在本公开的第三方面,提供了一种用于确定响应语句的装置,该装置包括匹配得分确定模块,被配置为基于源语句序列和候选响应语句,根据响应确定模型,确定候选响应语句与对应于源语句序列的正确响应语句之间的匹配得分。该装置还包括第一损失确定模块,被配置为基于匹配得分和候选响应语句的标注信息来确定第一损失。第一损失表示匹配得分与标注信息之间的相似程度。标注信息表示候选响应语句是否是正确响应语句。该装置还包括第二损失确定模块,被配置为基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失。源对话序列包括源语句序列和候选响应语句。正样本对话序列至少包括正确响应语句。负样本对话序列包括源语句序列和针对源语句序列的错误响应语句。第二损失表示相比负样本对话序列,正样本对话序列与源对话序列之间的相似程度。该装置还包括模型训练模块,被配置为基于第一损失和第二损失的值,来训练响应确定模型。
在本公开的第四方面,提供了一种计算机可读存储介质。介质上存储有计算机程序,程序被处理器执行时实现第一方面的方法。应当理解,本发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的描述而变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本公开的实施例能够在其中实现的示例环境的示意图;
图2示出了根据本公开的一些实施例的模型训练架构的示意图;
图3示出了根据本公开的一些实施例的正负样本对话序列的示意图;
图4示出了根据本公开的一些实施例的用于确定响应语句的过程的流程图;
图5示出了根据本公开的一些实施例的用于确定响应语句的装置的框图;以及
图6示出了能够实施本公开的多个实施例的设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中示出了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“一些实施例”应当理解为“至少一些实施例”。下文还可能包括其他明确的和隐含的定义。
如本文中所使用的,术语“模型”可以从训练数据中学习到相应的输入与输出之间的关联,从而在训练完成后可以针对给定的输入,生成对应的输出。模型的生成可以基于机器学习技术。深度学习是一种机器学习算法,通过使用多层处理单元来处理输入和提供相应输出。神经网络模型是基于深度学习的模型的一个示例。在本文中,“模型”也可以被称为“机器学习模型”、“学习模型”、“机器学习网络”或“学习网络”,这些术语在本文中可互换地使用。如本文所使用的,属于“确定模型的参数”或类似表达是指确定模型的参数的值(又称为参数值),包括具体值、取值集合或取值范围等。
“神经网络”是一种基于深度学习的机器学习网络。神经网络能够处理输入并且提供相应输出,其通常包括输入层和输出层以及在输入层与输出层之间的一个或多个隐藏层。在深度学习应用中使用的神经网络通常包括许多隐藏层,从而增加网络的深度。神经网络的各个层按顺序相连,从而前一层的输出被提供作为后一层的输入,其中输入层接收神经网络的输入,而输出层的输出作为神经网络的最终输出。神经网络的每个层包括一个或多个节点(也称为处理节点或神经元),每个节点处理来自上一层的输入。
通常,机器学习大致可以包括三个阶段,即训练阶段、测试阶段和应用阶段(也称为推理阶段)。在训练阶段,给定的模型可以使用大量的训练数据进行训练,不断迭代更新模型的参数值,直到模型能够从训练数据中获取一致的满足预期目标的推理。通过训练,模型可以被认为能够从训练数据中学习从输入到输出之间的关联(也称为输入到输出的映射)。训练后的模型的参数值被确定。在测试阶段,将测试输入应用到训练后的模型,测试模型是否能够提供正确的输出,从而确定模型的性能。在应用阶段,模型可以被用于基于训练得到的参数值,对实际的输入进行处理,确定对应的输出。
在一些机器学习方案中,训练阶段又可以包括预训练和微调。预训练是指针对通用任务来训练模型,即迭代更新模型的参数值。经预训练的模型具有广泛的应用范围,可应用于多种不同的下游任务。微调是指针对将要应用模型的具体下游任务来训练经预训练的模型。微调后的模型更适于处理具体下游任务。
如前文提及的,在自然语言处理领域中,针对各种对话处理系统和应用,通常需要利用语言理解模型来确定对应于多轮历史对话的准确的响应语句。例如,在一些应用中,通常需要模型在候选对话语句集合中,确定出针对多轮历史对话的目标响应语句。如何提高模型确定目标响应语句的准确性,是值得关注的问题。
已经提出了一些常规方案来将对话确定作为匹配任务来执行。例如,一些方案使用诸如基于变换器(Transformer)的双向编码器(BERT)来确定候选对话的匹配得分。目前已经提出了一些基于诸如交叉熵的损失函数来训练BERT模型以确定出准确的响应语句的方法。然而,这种基于交叉熵的损失函数的训练方式对于噪声数据(诸如噪声标签或噪声标注信息)敏感。训练数据集中的错误标注的噪声数据会对训练结果造成影响。由基于交叉熵的损失函数所训练出的模型,例如BERT模型无法得到令人满意的结果。
在计算机视觉(CV)领域中,存在一些有监督学习方式以用于模型的训练。例如,基于对比学习的有监督学习方式取得了很好的效果。与之相比,在自然语言处理领域中,这种基于对比学习的有监督学习方式尚未得到应用。因此,在自然语言处理领域中,缺少利用基于对比学习来确定响应语句的有效方案。
根据本公开的实施例,提供了一种用于确定响应语句的方案,旨在解决上述问题以及其他潜在问题中的一个或多个。在该方案中,基于源语句序列和候选响应语句,根据响应确定模型,确定候选响应语句与正确响应语句之间的匹配得分。基于匹配得分和表示该候选响应语句是否是正确响应语句的标注信息来确定第一损失。基于由源语句序列和候选响应语句组成的源对话序列、包括正确响应语句的正样本对话序列和包括错误响应语句的负样本对话序列来确定第二损失。基于第一损失和第二损失的值,调整响应确定模型的参数。
在该方案中,通过优化第一损失来提高响应确定模型所得到的匹配得分的准确性。此外,通过优化第二损失来使响应确定模型更好地学习正确的样本与错误的样本之前的区分度。以此方式,能够更好地去除数据中的噪声。因此,这是一种基于对比学习的有监督的学习方案。使用这种基于对比学习的有监督的学习学习,能够得到准确的响应语句确定结果。
示例环境
图1示出了本公开的实施例能够在其中实现的示例环境100的示意图。在图1的环境100中,期望训练和应用响应确定模型120来确定出准确的响应语句。在本文中,响应语句指的是在已发生的一轮或多轮对话语句之后的接下来的应答语句。在一些实施例中,对话可以是在两个或多个用户之间发生的。附加地或备选地,对话也可以是在一个或多个用户与一个或多个设备,例如智能语音助手之间发生的。
如图1所示,响应确定模型120被配置为基于源语句序列102和候选响应语句104来生成候选响应语句104的匹配得分130。匹配得分130表示候选响应语句104与对应于源语句序列102的正确响应语句之间的匹配程度。源语句序列102可以包括多个语句。在本文中,源语句序列102可以是之前已发生的一轮或多轮对话。正确响应语句表示紧接着源语句序列102的正确的或真实的下一句对话。
在一些实施例中,源语句序列102中的语句可以是从用户或其他系统接收的自然语言输入。在本公开中语句也被称为话语。语句可以具有多种格式,例如口头的、文本的等。在本公开中,文本语句将用于说明目的,但本公开不限于此,并且本公开将涵盖任何形式的语句。
总体而言,环境100包括计算系统110。在图1的示例实施例以及下文将会描述的一些示例实施例中,计算系统110被配置为利用源语句序列102、候选响应语句104以及附加的其他训练数据(未示出)来训练响应确定模型120,从而确定响应确定模型120的参数。在一些实施例中,响应确定模型120可以是经过预训练的模型。计算系统110被配置为利用源语句序列102、候选响应语句104以及附加的其他训练数据来微调响应确定模型120,从而更新和调整响应确定模型120的参数。
应当理解,虽然图1中仅示出了一个源语句序列102和一个候选响应语句104,但这仅仅是示意性的,计算系统110可以利用N个源语句序列以及N个候选响应语句以及其他N个附加的其他训练数据,其中N为大于等于1的整数。
如前所述,计算系统110还使用附加的其他训练数据来训练或微调响应确定模型120。将在下文中结合图2和图3更详细的描述对响应确定模型120的训练或微调过程。
在对响应确定模型120训练或微调之后,计算系统110可以利用响应确定模型120来确定候选响应语句104的匹配得分130。以这样,可以从多个候选响应语句中将匹配得分最高的候选响应语句确定为对应于源语句序列的响应语句。通过使用经训练或微调的响应语句确定模型,能够得到准确的响应语句。
在图1中,计算系统110可以是任何具有计算能力的系统,例如各种计算设备/系统、终端设备、服务器等。终端设备可以是任意类型的移动终端、固定终端或便携式终端,包括移动手机、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、媒体计算机、多媒体平板、或者前述各项的任意组合,包括这些设备的配件和外设或者其任意组合。服务器包括但不限于大型机、边缘计算节点、云环境中的计算设备,等等。
应当理解,图1示出的环境中的部件和布置仅是示例,适于用于实现本公开所描述的示例实施例的计算系统可以包括一个或多个不同的部件、其他部件和/或不同的布置方式。本公开的实施例在此方面不受限制。
以下将继续参考附图,描述模型训练或微调的示例实施例。
模型训练架构
图2示出了根据本公开的一些实施例的模型训练架构200的示例。图2的架构200可以被实现在图1的计算系统110中或者其他适当的系统或设备中。架构200中的各个模块/组件可以由硬件、软件、固件或者它们的任意组合来实现。
在图2中,除了源语句序列102和候选响应语句104外,还示出了用于模型训练的附加的其他训练数据,诸如正样本对话序列240、负样本对话序列260、源对话序列250以及标注信息204。如图2所示,源对话序列250可以由源语句102和候选响应语句104组成。
图2中的标注信息204是与候选响应语句104相关联的。标注信息204表示该候选响应语句104是否是对应于源语句102的正确响应语句。例如,标注信息204为0可以表示该候选响应语句104是错误的响应语句,而标注信息204为1则可以表示该候选响应语句104是正确响应语句。应当理解,标注信息204也可以采用其他方式(例如,字母“T”或“F”)或其他数值来表示该候选响应语句104是否是正确响应语句。
在一些实施例中,仅使用标注信息为1的候选响应语句104作为训练数据。即,仅选择是正确响应语句的候选响应语句104作为训练数据。附加地或备选地,也可以选择正确的或者错误的候选响应语句两者作为训练数据。
如前所述,响应确定模型120基于源语句序列102和候选响应语句104来生成候选响应语句104的匹配得分130。如图2中所示,计算系统110可以基于匹配得分130和标注信息204,根据第一损失函数210来确定第一损失。第一损失表示匹配得分130与标注信息204之间的相似程度。即,第一损失可以表示匹配得分130是否准确。例如,第一损失的值越大,表示匹配得分130与标注信息204之间越不相似,即匹配得分130越不准确。
在一些实施例中,第一损失函数210可以是,例如交叉熵函数。应当理解,第一损失函数210也可以采用其他的适当的损失函数,例如二次代价函数等,本公开的实施例在此方面不受限制。
附加地或备选地,在一些实施例中,还可以基于对应于源语句序列102的匹配得分130、标注信息204,以及正样本对话序列240和负样本对话序列260,根据第一损失函数210,来确定第一损失。将在下文中详细描述正样本对话序列240和负样本对话序列。
图2中还示出了基于源对话序列250、正样本对话序列240和负样本对话序列260,根据第二损失函数220,来确定第二损失。如前所述,源对话序列250包括源语句序列102和候选响应语句104。正样本对话序列240至少包括正确响应语句,而负样本对话序列260包括源语句序列102和针对源语句序列102的错误响应语句。第二损失表示相比负样本对话序列260,正样本对话序列240与源对话序列250之间的相似程度。例如,第二损失的值越高,则表明相比负样本对话序列260,正样本对话序列240与源对话序列250之间的相似程度越低。在这种第二损失值较高的情况下,也表明响应确定模型120没有很好地学习到正负样本对话序列之间的区别特征。
在一些实施例中,正样本对话序列240可以通过数据增广操作而生成。例如,可以基于源语句序列102和正确响应语句来确定正样本对话序列。图3示出了根据本公开的一些实施例的正负样本对话序列的示意图。
如图3所示,对话序列300表示从训练数据集中获取的正确的对话序列。图3中的A与B分别表示进行对话的双方,例如两个用户或者一个用户与一个对话设备。如图3所示,语句序列305包括A与B之间的之前进行的对话的语句序列305和紧接着语句序列305的响应语句310。应当理解,图3中所示出的语句序列305仅仅是示意性的,在一些实施例中,语句序列305可以涉及除A与B之外的其他用户。语句序列305还可以包括更少的或者更多的语句。
在一些实施例中,可以将对话序列300用作源对话序列250。例如,可以将语句序列305用作源语句序列102,并且将响应语句310用作候选响应语句104。在这一示例中,与候选响应语句104相关联的标注信息204可以表示该候选响应语句104是正确响应语句(例如,标注信息204可以为1)。
图3中还示出了负样本对话序列320。负样本对话序列320包括语句序列305以及错误响应语句330。错误响应语句330可以是从训练数据集中任选的与正确响应语句310不同的语句。
图3中还示出了通过数据增广操作而生成的正样本对话序列340。在正样本对话序列340中,语句序列305中的两个语句被交换了顺序。即,经交换顺序的语句序列345与语句序列305相比,语句350与语句355的顺序被交换了。应当理解,虽然图3的示例中,仅示出了其中两个语句的顺序发生了交换,但也可以将语句序列305中的多于两个语句的语句交换顺序。在一些实施例中,经交换顺序的语句不是语句序列305中的最后语句。如图3所示,将经交换顺序的语句序列345与正确响应语句310组合,可以获得正样本对话序列340。
图3中还示出了通过另一数据增广操作而生成的正样本对话序列360。在正样本对话序列360中,语句序列305中的某个语句中的词语被改变了顺序。即,经改变词语顺序的语句序列365与语句序列305相比,语句370中的词语的顺序被改变了。应当理解,虽然图3的示例中,仅示出了其中一个语句中词语的顺序发生了交换,但也可以将语句序列305中的两个或更多的语句中的词语顺序进行改变。在一些实施例中,经改变词语顺序的语句不是语句序列305中的最后语句。如图3所示,将经改变词语顺序的语句序列365与正确响应语句310组合,可以获得正样本对话序列360。
应当理解,以上所描述的两种数据增广操作的示例仅仅是示意性的,还可以使用其他数据增广操作来获取正样本对话序列。附加地或备选地,以上所描述的两种示例数据增广操作可以相结合。例如,可以通过改变语句序列305中的某些语句的顺序,并且同时改变语句序列305中的某个或某些语句中词语的顺序,以获得正样本对话序列。
应当理解,虽然在图3的示例中,以英语语句为例示出了各个对话序列。在一些实施例中,对话序列可以采用任意适当的语言,例如还可以使用中文的对话语句序列。
通过使用诸如上述描述的数据增广操作来获取正样本对话序列,能够获得更多的正样本对话序列以更好地对模型进行训练或微调。通过使用正样本对话序列以及负样本对话序列,能够使模型更好地学习正负样本之间的区别,从而降低噪声对模型的影响。
以上结合图3描述了示例正负样本对话序列。继续参考图2,计算系统110可以基于源对话序列250、正样本对话序列240和负样本对话序列260,根据第二损失函数220,来确定第二损失。在一些实施例中,计算系统110可以将所确定的第一损失的值以及所确定的第二损失的值传输给响应确定模型120。通过这样,计算系统110可以利用第一损失的值和第二损失的值,通过反向传播的方式,训练响应确定模型120。
在一些实施例中,计算系统110可以预先设置第一损失阈值和第二损失阈值。当确定第一损失的值不超过第一损失阈值并且第二损失的值不超过第二损失阈值时,计算系统110完成对响应确定模型120的训练。以这种方式,可以简化响应确定模型120的训练过程。此外,通过预先设置的第一损失阈值和第二损失阈值,可以确保训练的响应确定模型120具有较高的准确度。
附加地或备选地,在一些实施例中,计算系统110还可以基于第一损失与第二损失的线性组合,来获得总损失230。例如,计算系统110可以将第一损失与第二损失相加而确定出总损失230。总损失230的值可以反映出响应确定模型120的性能表现。总损失230的值越小,表示响应确定模型120的结果越准确。计算系统110可以将总损失230传输给响应确定模型120,通过优化总损失230来训练响应确定模型120。
在一些实施例中,计算系统110还可以改变第一损失与第二损失在总损失230中各自的权重,以获得总损失230。例如,在以上所描述的两者相加的示例中,第一损失与第二损失在总损失230中各自的权重均为1。在一些实施例中,可以改变第一损失或第二损失的权重,例如将第一损失的权重设置为高于第二损失、或者低于第二损失。通过动态调整第一损失与第二损失的权重,可以更好地适应不同的训练数据集以及适应不同的响应确定模型。
根据总损失230的值,计算系统110可以通过例如反向传播来调整响应确定模型120的参数。例如,计算系统110可以通过最小化总损失230,来优化响应确定模型120的参数。附加地或备选地,在一些实施例中,计算系统110还可以预先设置总损失阈值。当确定总损失230低于总损失阈值时,计算系统110完成对响应确定模型120的训练。以这种方式,可以简化响应确定模型120的训练过程。此外,通过预先设置的总损失阈值,由此所训练的响应确定模型120的准确度可以得到保证。
在一些实施例中,响应确定模型120可以包括预训练的语言模型。例如,响应确定模型120可以包括预训练的BERT模型或者其他适当的神经网络模型。例如,计算系统110可以基于源对话序列250、正样本对话序列240和负样本对话序列260,根据预训练的语言模型,分别确定源对话标记序列、正样本对话标记序列和负样本对话标记序列。对话标记序列也被称为对话的隐式表示。
在一些实施例中,预训练的语言模型在被应用之前,计算系统110还可以对其进行后训练。例如,可以从训练数据集中任选样本数据(ci,ri,yi),其中表示源语句序列,li表示ci中语句的数目,ui表示ci中的语句,ri表示候选响应语句,yi∈{0,1}表示ri的标注信息。根据样本数据(ci,ri,yi)可以得到样本上下文对话数据di=ci∪{ri}。
在一些实施例中,可以对样本上下文对话数据di进行数据增广操作。例如,可以以50%的可能性将样本上下文对话数据di截掉一部分,而获得新的样本上下文对话数据d′i,d′i中至少包括两个语句。对于另外的50%可能性,使d′i=di。
附加地或备选地,针对下一语句预测(NSP)任务,采样语句。例如,以25%的概率,生成以di的最后语句作为响应语句并且以di的其他语句作为响应语句之前的上下文的正样本。此外,针对负样本,以三分之二的从语料库中任选的错误的响应语句和上下文语句,以及从相同上下文中选择的三分之一的语句来构建负样本d″i。
在一些实施例中,基于以上所描述的正负样本,针对诸如掩码语言模型(MLM)等任务,对预训练的语言模型进行后训练。MLM从输入中随机掩盖了一些标记,然后根据其上下文信息预测被掩盖的标记。在一些实施例中,响应确定模型120可以包括利用诸如以上所描述的方式经过后训练的语言模型。
以下将详细描述使用预训练或者预训练及后训练的语言模型确定对话标记序列的过程。以源对话序列250为例,计算系统110可以将源对话序列250表示为如下:
其中,i表示源对话序列250是第i个源对话序列,xi表示源对话序列250,良示源语句序列102,ri表示候选响应语句104。源对话序列250的开始元素“[CLS]”为语句分类标识,其表示对话序列的分类。元素“[SEP]”为对话分隔标识,其表示对活序列与响应语句之间的分隔。元素“[EOT]”为语句结束标识,其用于分隔对话序列间的不同语句。
在一些实施例中,可以将例如表示为式(1)的源对话序列250输入到预训练的语言模型,以获得与之相对应的源对话标记序列。对活标记序列在本文中也被称为对话嵌入(Embedding)序列。示例源对话标记序列可以表示为如下:
其中E[CLS]表示对应于源对话序列250的开始元素“[CLS]”的分类标记,E[SEP]表示对应于源对话序列250的末尾元素“[SEP]”的标记,其他Em,n,1,Em,n,2,…,Em,n,k表示对应于源对话序列250中的其他元素的标记。
附加地或备选地,在一些实施例中,还可以使用数据增广操作还获得经数据增广的分类标记E′[CLS]。例如,可以对源对话序列250进行不同的掩码,将经掩码的源对话序列250输入到经训练的语言模型,可以获得经数据增广获得的分类标记E′[CLS]。通过数据增广操作,可以获得更多的训练数据,从而能够更好地训练模型。
在一些实施例中,可以将由经训练的语言模型所输出的E[CLS],即分类标记作为源对话序列250的代表标记表示。计算系统110可以基于源对话序列250的分类标记,根据响应确定模型120,来确定匹配得分130。
在一些实施例中,响应确定模型120可以包括预训练的分类器。例如,响应确定模型120可以包括预训练的两层神经网络分类器。预训练的分类器可以通过例如以下方式来确定对应于源对话序列250(即,候选响应语句104)的匹配得分130:
F(cm,rm)=σ2(Woσ1(WhE[CLS]+bh)+bo) (3)
其中,Wo、Wh、bo和bh表示分类器的可调整的参数。σ1是激活函数,例如GELU激活函数。σ2是sigmoid函数。F(cm,rm)表示匹配得分130。在一些实施例中,匹配得分130可以是介于0与1之间的数值。例如,匹配得分130越接近1越表示候选响应语句104是正确响应语句的可能性越大。即,匹配得分130越接近1越表示候选响应语句104越接近正确响应语句。
应当理解,以上所描述的分类器仅仅是示意性的,而不是限制性的。可以采用其他适当的分类器,也可以使用其他适当的激活函数。分类器的参数,例如Wo、Wh、bo和bh,可以通过优化总损失230来被调整和优化。接下来将描述总损失230的示例确定方法。
如前所述,可以通过第一损失与第二损失的线性组合,例如将第一损失与第二损失相加来确定总损失230。第一损失可以通过使用诸如交叉熵的第一损失函数210来确定。第二损失可以通过使用第二损失函数220来确定。以下将详细描述根据第二损失函数220确定第二损失的若干示例。
如前所述,可以基于源对话序列250,根据预训练的语言模型,确定源对话标记序列以及确定源对话序列250的分类标记及增广的分类标记。类似地,计算系统110可以基于正样本对话序列240和负样本对话序列260,根据预训练的语言模型,分别确定正样本对话标记序列和负样本对话标记序列。此外,还可以分别确定对应于正样本对话序列240和负样本对话序列260的正样本分类标记和负样本分类标记。
在一些实施例中,可以基于源对话标记序列与正样本对话标记序列之间的相似程度以及源对话标记序列与负样本对话标记序列之间的相似程度,来确定第二损失。例如,可以基于源对话分类标记、正样本分类标记和负样本分类标记,根据第二损失函数220,确定第二损失。
应当理解,虽然图2中仅示出了一个源对话序列250、一个正样本对话序列240,以及一个负样本对话序列260,但是也可以采用源对话序列集合以及相应的正样本对话序列集合和负样本对话序列集合来训练响应确定模型120。
以下描述了基于源对话序列集合以及相应的正样本对话序列集合和负样本对话序列集合,根据示例第二损失函数220确定第二损失的示例:
其中,表示第二损失,H、H+和H-分别表示源对话分类标记集合、正样本分类标记集合和负样本分类标记集合。H、H+和H-分别对应于源对话序列集合、正样本对话序列集合和负样本对话序列集合。在式(4)所描述的示例中,H、H+和H-各自包括N个分类标记。N可以是任意自然数。hi和/>分别表示源对话分类标记集合和正样本分类标记集合中的第i个分类标记。f()表示相似度函数。例如,可以使用余弦相似度函数来作为相似度函数。表示源对话分类标记集合和正样本分类标记集合中的第i个分类标记之间的相似度。τ表示预设的温度参数。τ可以是介于0与1之间的数值。温度参数τ可以根据实际应用的训练数据集而被调整。
Z(H,H+,H-)可以用来表示源对话分类标记集合中的源对话分类标记与正样本分类标记集合和负样本分类标记集合中的其他分类标记的相似程度。在一些实施例中,可以使用以下方式来计算Z(H,H+,H-)
其中知/>分别表示正样本分类标记集合和负样本分类标记集合中的第j个分类标记。j与i不相等。通过使用以上方式所确定的第二损失,能够反映出相比负样本对话序列,正样本对话序列与源对话序列之间的相似程度。
以上描述了第二损失函数220的一个示例。在一些实施例中,还可以使用其他的第二损失函数。以下示出了另一示例第二损失函数220。
与(4)类似,(6)中的第二损失函数使用了不同于(4)的Z″(H,H+,H-)。
在一些实施例中,Z″(H,H+,H-)可以被计算为如下:
与(5)相比,Z″(H,H+,H-)增加了其中α表示惩罚系数。惩罚系数α可以是介于0与1之间的数值。惩罚系数α可以根据不同的训练数据集而被调整。/>其中仅当i=j时,/>为1,其他情况均为0。
通过使用以上参考(6)与(7)所描述的第二损失函数,能够通过在hi与之间的相似度/>之上增加惩罚项。通过这样,能够增加负样本对话序列在Z″(H,H+,H-)中的占比。以这样,特别是对于通过使用从质量高的训练数据集中获得的负样本对话序列的情况,能够更加充分的学习到正负样本序列之间的差别特征。
在一些实施例中,在确定了第一损失与第二损失之后,可以通过以下方式来确定总损失230:
其中,表示总损失230,/>表示第一损失,/>表示第二损失,λ表示权重系数。权重系数λ的值可以是预先设置的,例如可以是介于0与1之间的数值。权重系数λ的值也可以根据训练数据集或者实际应用而被调整。通过使用权重系数λ,可以调整第一损失与第二损失在总损失230中的比重,进而能够更好地适应不同的训练数据集或者不同的实际应用。
在一些实施例中,基于上文所描述的损失函数(例如,式(8)),可以进行多次迭代优化,直到迭代收敛或达到预定次数,则模型训练完成。通过这样,可以调整和优化响应确定模型的120的参数。例如,可以调整和优化诸如Wo、Wh、bo和bh,等的分类器的参数。附加地,还可以调整预训练的语言模型的参数。
附加地或备选地,在一些实施例中,计算系统110还可以预先设置总损失阈值。当确定总损失230的值低于总损失阈值时,计算系统110完成对响应确定模型120的训练。以这种方式,可以简化响应确定模型120的训练过程。此外,通过预先设置的总损失阈值,由此训练的响应确定模型120的准确度可以得到保证。应当理解,总损失阈值可以根据不同的训练数据集、不同的响应确定模型以及不同的任务而进行调整。
应当理解,虽然以上所描述的响应确定模型包括经过预训练的模型,但在一些实施例中,响应确定模型可以包括未经预训练的模型。该未经预训练的模型可以具有初始参数。未经预训练的响应确定模型可以使用参考图2所描述的训练过程来被训练,以调整该模型的参数。
通过以上所描述的方式,可以通过基于对比学习的方式实现确定响应语句。以这种方式训练或微调的模型,能够更好的学习正负样本对话之间的差别特征。以这样,能够去除噪声数据对模型的影响,进而能够确定出更加准确的响应语句。
此外,本方案的模型训练或微调过程也可以被应用于除了确定响应语句之外的其他的自然语言处理任务,诸如话语理解、意图分类等等。使用本文所描述的训练过程所得到的模型可以应用于诸如数字助理、聊天机器人、自动化系统和其他这样的系统等对话系统中。
示例结果
表1示出了基于不同的训练数据集、使用本方案的训练方式得到的响应确定模型在响应语句确定任务中的准确性与常规模型的准确性的对比。
表1模型准确度对比
如表1所示,使用本方案所训练的模型,与常规方案的模型相比,在各种不同的训练数据集上,均具有更好地准确性。通过使用本方案这种基于对比学习的训练方式,能够得到表现更好的响应对话确定模型。利用本方案的响应对话确定模型的对话系统,能够具有更好的表现。
示例过程
图4示出了根据本公开的一些实施例的用于确定响应语句的过程400的流程图。过程400可以被实现在计算系统110处。过程400也可以被实现在其他适当的计算系统或者计算设备处。
在框410处,基于源语句序列102和候选响应语句104,根据响应确定模型120,确定候选响应语句104与对应于源语句序列102的正确响应语句之间的匹配得分130。在框420处,基于匹配得分130和候选响应语句104的标注信息来确定第一损失。第一损失表示匹配得分130与标注信息之间的相似程度。标注信息表示候选响应语句104是否是正确响应语句。例如,标注信息为1表示该候选响应语句104是正确响应语句,而标注信息为0表示该候选响应语句104是错误的响应语句。
在框430处,基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失。源对话序列包括源语句序列102和候选响应语句104。正样本对话序列至少包括正确响应语句。负样本对话序列包括源语句序列102和针对源语句序列102的错误响应语句。第二损失表示相比负样本对话序列,正样本对话序列与源对话序列之间的相似程度。
在一些实施例中,可以基于源语句序列102和正确响应语句来确定正样本对话序列。例如,可以交换源语句序列102中的第一语句和第二语句的顺序。第一语句和第二语句不是源语句序列102中的最后语句。还可以基于经交换语句顺序的源语句序列102和正确响应语句,来确定正样本对话序列。
附加地或备选地,可以改变源语句序列102中的第三语句中的词语的顺序。第三语句不是源语句序列102中的最后语句。还可以基于经改变词语顺序的源语句序列102和正确响应语句,来确定正样本对话序列。
在一些实施例中,响应确定模型120可以包括预训练的语言模型。为了确定第二损失,可以基于源对话序列、正样本对话序列和负样本对话序列,根据预训练的语言模型,分别确定源对话标记序列、正样本对话标记序列和负样本对话标记序列。还可以基于源对话标记序列与正样本对话标记序列之间的相似程度以及源对话标记序列与负样本对话标记序列之间的相似程度,来确定第二损失。
在框440处,基于第一损失和第二损失的值,训练响应确定模型120。在一些实施例中,响应确定模型120可以包括预训练的语言模型。在一些实施例中,响应确定模型120还可以包括预训练的分类器。为了确定匹配得分,可以基于源语句序列102和候选响应语句104,根据预训练的语言模型,确定源对话分类标记。还可以基于源对话分类标记,根据预训练的分类器,确定匹配得分。在一些实施例中,可以通过最小化第一损失与第二损失的和,调整预训练的分类器和预训练的语言模型各自的参数,以获得经训练的响应确定模型120。
示例装置和设备
图5示出了根据本公开的一些实施例的用于确定响应语句的装置500的框图。装置500可以被实现为或者被包括在例如计算系统110中。装置500中的各个模块/组件可以由硬件、软件、固件或者它们的任意组合来实现。
如图所示,装置500包括匹配得分确定模块510,被配置为基于源语句序列102和候选响应语句104,根据响应确定模型120,确定候选响应语句104与对应于源语句序列102的正确响应语句之间的匹配得分130。装置500还包括第一损失确定模块520,被配置为基于匹配得分130和候选响应语句104的标注信息来确定第一损失。第一损失表示匹配得分130与标注信息之间的相似程度。标注信息表示候选响应语句104是否是正确响应语句。
装置500还包括第二损失确定模块530,被配置为基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失。源对话序列包括源语句序列102和候选响应语句104。正样本对话序列至少包括正确响应语句。负样本对话序列包括源语句序列102和针对源语句序列102的错误响应语句。第二损失表示相比负样本对话序列,正样本对话序列与源对话序列之间的相似程度。
在一些实施例中,还可以包括正样本对话序列确定模块,被配置为基于源语句序列102和正确响应语句来确定正样本对话序列。例如,在一些实施例中,正样本对话序列确定模块可以被配置为交换源语句序列102中的第一语句和第二语句的顺序。第一语句和第二语句不是源语句序列102中的最后语句。正样本对话序列确定模块还可以被配置为基于经交换语句顺序的源语句序列102和正确响应语句,来确定正样本对话序列。
附加地或备选地,在一些实施例中,正样本对话序列确定模块可以被配置为改变源语句序列102中的第三语句中的词语的顺序。第三语句不是源语句序列102中的最后语句。正样本对话序列确定模块还可以被配置为基于经改变词语顺序的源语句序列102和正确响应语句,来确定正样本对话序列。
在一些实施例中,响应确定模型120可以包括预训练的语言模型。第二损失确定模块530可以被配置为基于源对话序列、正样本对话序列和负样本对话序列,根据预训练的语言模型,分别确定源对话标记序列、正样本对话标记序列和负样本对话标记序列。第二损失确定模块530还可以被配置为基于源对话标记序列与正样本对话标记序列之间的相似程度以及源对话标记序列与负样本对话标记序列之间的相似程度,来确定第二损失。
装置500还包括模型训练模块540,被配置为基于第一损失和第二损失,训练响应确定模型120。
在一些实施例中,响应确定模型120可以包括预训练的语言模型。在一些实施例中,响应确定模型120还可以包括预训练的分类器。在一些实施例中,匹配得分确定模块510可以被配置为基于源语句序列102和候选响应语句104,根据预训练的语言模型,确定源对话分类标记。匹配得分确定模块510还可以被配置为基于源对话分类标记,根据预训练的分类器,确定匹配得分。附加地或备选地,在一些实施例中,模型训练模块540可以被配置为可以通过最小化第一损失与第二损失的和,调整预训练的分类器和预训练的语言模型各自的参数,以获得经训练的响应确定模型120。
图6示出了示出了其中可以实施本公开的一个或多个实施例的计算设备600的框图。应当理解,图6所示出的计算设备600仅仅是示例性的,而不应当构成对本文所描述的实施例的功能和范围的任何限制。图6所示出的计算设备600可以用于实现图1的计算系统110。
如图6所示,计算设备600是通用计算设备的形式。计算设备600的组件可以包括但不限于一个或多个处理器或处理单元610、存储器620、存储设备630、一个或多个通信单元640、一个或多个输入设备650以及一个或多个输出设备660。处理单元610可以是实际或虚拟处理器并且能够根据存储器620中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备600的并行处理能力。
计算设备600通常包括多个计算机存储介质。这样的介质可以是计算设备600可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器620可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或它们的某种组合。存储设备630可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在计算设备600内被访问。
计算设备600可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图6中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器620可以包括计算机程序产品625,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实施例的各种方法或动作。
通信单元640实现通过通信介质与其他计算设备进行通信。附加地,计算设备600的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备600可以使用与一个或多个其他服务器、网络个人计算机(PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
输入设备650可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备660可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备600还可以根据需要通过通信单元640与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备600交互的设备进行通信,或者与使得计算设备600与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有计算机可执行指令,其中计算机可执行指令被处理器执行以实现上文描述的方法。根据本公开的示例性实现方式,还提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括计算机可执行指令,而计算机可执行指令被处理器执行以实现上文描述的方法。
这里参照根据本公开实施例的方法、装置、设备和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实施例中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各个实现方式。
Claims (16)
1.一种用于确定响应语句的方法,包括:
基于源语句序列和候选响应语句,根据响应确定模型,确定所述候选响应语句与对应于所述源语句序列的正确响应语句之间的匹配得分;
基于所述匹配得分和所述候选响应语句的标注信息来确定第一损失,所述第一损失表示所述匹配得分与所述标注信息之间的相似程度,所述标注信息表示所述候选响应语句是否是所述正确响应语句;
基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失,所述源对话序列包括所述源语句序列和所述候选响应语句,所述正样本对话序列至少包括所述正确响应语句,所述负样本对话序列包括所述源语句序列和针对所述源语句序列的错误响应语句,所述第二损失表示相比所述负样本对话序列,所述正样本对话序列与所述源对话序列之间的相似程度,其中确定所述第二损失包括:
基于所述源对话序列、所述正样本对话序列和所述负样本对话序列,根据所述响应确定模型,分别确定源对话标记序列、正样本对话标记序列和负样本对话标记序列,以及
基于所述源对话标记序列与所述正样本对话标记序列之间的相似程度以及所述源对话标记序列与所述负样本对话标记序列之间的相似程度,确定所述第二损失;以及
基于所述第一损失和所述第二损失的值,训练所述响应确定模型。
2.根据权利要求1所述的方法,还包括:
基于所述源语句序列和所述正确响应语句来确定所述正样本对话序列。
3.根据权利要求2所述的方法,其中确定所述正样本对话序列包括:
交换所述源语句序列中的第一语句和第二语句的顺序,所述第一语句和所述第二语句不是所述源语句序列中的最后语句;以及
基于经交换语句顺序的所述源语句序列和所述正确响应语句,确定所述正样本对话序列。
4.根据权利要求2所述的方法,其中确定所述正样本对话序列包括:
改变所述源语句序列中的第三语句中的词语的顺序,所述第三语句不是所述源语句序列中的最后语句;以及
基于经改变词语顺序的所述源语句序列和所述正确响应语句,确定所述正样本对话序列。
5.根据权利要求1所述的方法,其中所述响应确定模型包括预训练的语言模型。
6.根据权利要求5所述的方法,其中所述响应确定模型还包括预训练的分类器;并且
其中确定所述匹配得分包括:
基于所述源语句序列和所述候选响应语句,根据所述预训练的语言模型,确定源对话分类标记;以及
基于所述源对话分类标记,根据所述预训练的分类器,确定所述匹配得分。
7.根据权利要求6所述的方法,其中训练所述响应确定模型包括:
通过最小化所述第一损失与所述第二损失的和,调整所述预训练的分类器和所述预训练的语言模型各自的参数,以获得经训练的所述响应确定模型。
8.一种电子设备,包括:
至少一个处理单元;以及
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理单元并且存储用于由所述至少一个处理单元执行的指令,所述指令在由所述至少一个处理单元执行时使所述电子设备执行以下动作:
基于第一参考图像,根据第一模型,生成所述第一参考图像的第一特征表示;
基于源语句序列和候选响应语句,根据响应确定模型,确定所述候选响应语句与对应于所述源语句序列的正确响应语句之间的匹配得分;
基于所述匹配得分和所述候选响应语句的标注信息来确定第一损失,所述第一损失表示所述匹配得分与所述标注信息之间的相似程度,所述标注信息表示所述候选响应语句是否是所述正确响应语句;
基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失,所述源对话序列包括所述源语句序列和所述候选响应语句,所述正样本对话序列至少包括所述正确响应语句,所述负样本对话序列包括所述源语句序列和针对所述源语句序列的错误响应语句,所述第二损失表示相比所述负样本对话序列,所述正样本对话序列与所述源对话序列之间的相似程度,其中确定所述第二损失包括:
基于所述源对话序列、所述正样本对话序列和所述负样本对话序列,根据所述响应确定模型,分别确定源对话标记序列、正样本对话标记序列和负样本对话标记序列,以及
基于所述源对话标记序列与所述正样本对话标记序列之间的相似程度以及所述源对话标记序列与所述负样本对话标记序列之间的相似程度,确定所述第二损失;以及
基于所述第一损失和所述第二损失的值,训练所述响应确定模型。
9.根据权利要求8所述的电子设备,其中所述动作还包括:
基于所述源语句序列和所述正确响应语句来确定所述正样本对话序列。
10.根据权利要求9所述的电子设备,其中确定所述正样本对话序列包括:
交换所述源语句序列中的第一语句和第二语句的顺序,所述第一语句和所述第二语句不是所述源语句序列中的最后语句;以及
基于经交换语句顺序的所述源语句序列和所述正确响应语句,确定所述正样本对话序列。
11.根据权利要求9所述的电子设备,其中确定所述正样本对话序列包括:
改变所述源语句序列中的第三语句中的词语的顺序,所述第三语句不是所述源语句序列中的最后语句;以及
基于经改变词语顺序的所述源语句序列和所述正确响应语句,确定所述正样本对话序列。
12.根据权利要求8所述的电子设备,其中所述响应确定模型包括预训练的语言模型。
13.根据权利要求12所述的电子设备,其中所述响应确定模型还包括预训练的分类器;并且
其中确定所述匹配得分包括:
基于所述源语句序列和所述候选响应语句,根据所述预训练的语言模型,确定源对话分类标记;以及
基于所述源对话分类标记,根据所述预训练的分类器,确定所述匹配得分。
14.根据权利要求13所述的电子设备,其中训练所述响应确定模型包括:
通过最小化所述第一损失与所述第二损失的和,调整所述预训练的分类器和所述预训练的语言模型各自的参数,以获得经训练的所述响应确定模型。
15.一种用于确定响应语句的装置,包括
匹配得分确定模块,被配置为基于源语句序列和候选响应语句,根据响应确定模型,确定所述候选响应语句与对应于所述源语句序列的正确响应语句之间的匹配得分;
第一损失确定模块,被配置为基于所述匹配得分和所述候选响应语句的标注信息来确定第一损失,所述第一损失表示所述匹配得分与所述标注信息之间的相似程度,所述标注信息表示所述候选响应语句是否是所述正确响应语句;
第二损失确定模块,被配置为基于源对话序列、正样本对话序列和负样本对话序列来确定第二损失,所述源对话序列包括所述源语句序列和所述候选响应语句,所述正样本对话序列至少包括所述正确响应语句,所述负样本对话序列包括所述源语句序列和针对所述源语句序列的错误响应语句,所述第二损失表示相比所述负样本对话序列,所述正样本对话序列与所述源对话序列之间的相似程度,其中确定所述第二损失包括:
基于所述源对话序列、所述正样本对话序列和所述负样本对话序列,根据所述响应确定模型,分别确定源对话标记序列、正样本对话标记序列和负样本对话标记序列,以及
基于所述源对话标记序列与所述正样本对话标记序列之间的相似程度以及所述源对话标记序列与所述负样本对话标记序列之间的相似程度,确定所述第二损失;以及
模型训练模块,被配置为基于所述第一损失和所述第二损失的值,来训练所述响应确定模型。
16.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现根据权利要求1至7中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111275265.9A CN114020887B (zh) | 2021-10-29 | 2021-10-29 | 用于确定响应语句的方法、设备、装置和介质 |
PCT/CN2022/118787 WO2023071581A1 (zh) | 2021-10-29 | 2022-09-14 | 用于确定响应语句的方法、设备、装置和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111275265.9A CN114020887B (zh) | 2021-10-29 | 2021-10-29 | 用于确定响应语句的方法、设备、装置和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114020887A CN114020887A (zh) | 2022-02-08 |
CN114020887B true CN114020887B (zh) | 2023-11-07 |
Family
ID=80058897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111275265.9A Active CN114020887B (zh) | 2021-10-29 | 2021-10-29 | 用于确定响应语句的方法、设备、装置和介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114020887B (zh) |
WO (1) | WO2023071581A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020887B (zh) * | 2021-10-29 | 2023-11-07 | 北京有竹居网络技术有限公司 | 用于确定响应语句的方法、设备、装置和介质 |
CN114969306B (zh) * | 2022-05-31 | 2024-04-05 | 平安科技(深圳)有限公司 | 医疗信息推荐模型的训练方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110162596A (zh) * | 2019-04-01 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 自然语言处理的训练方法、装置、自动问答方法和装置 |
CN111930992A (zh) * | 2020-08-14 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 神经网络训练方法、装置及电子设备 |
CN112287069A (zh) * | 2020-10-29 | 2021-01-29 | 平安科技(深圳)有限公司 | 基于语音语义的信息检索方法、装置及计算机设备 |
CN112347278A (zh) * | 2019-10-25 | 2021-02-09 | 北京沃东天骏信息技术有限公司 | 用于训练表征模型的方法和装置 |
CN112860848A (zh) * | 2021-01-20 | 2021-05-28 | 平安科技(深圳)有限公司 | 信息检索方法、装置、设备及介质 |
CN112966102A (zh) * | 2021-02-10 | 2021-06-15 | 万翼科技有限公司 | 分类模型构建及文本语句分类方法、设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11669860B2 (en) * | 2019-12-11 | 2023-06-06 | Google Llc | Methods, systems, and media for automated compliance determination of content items |
CN111737952A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 一种序列标注模型的训练方法及装置 |
CN112199479B (zh) * | 2020-09-15 | 2024-08-02 | 北京捷通华声科技股份有限公司 | 优化语言语义理解模型方法、装置、设备及存储介质 |
CN114020887B (zh) * | 2021-10-29 | 2023-11-07 | 北京有竹居网络技术有限公司 | 用于确定响应语句的方法、设备、装置和介质 |
-
2021
- 2021-10-29 CN CN202111275265.9A patent/CN114020887B/zh active Active
-
2022
- 2022-09-14 WO PCT/CN2022/118787 patent/WO2023071581A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110162596A (zh) * | 2019-04-01 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 自然语言处理的训练方法、装置、自动问答方法和装置 |
CN112347278A (zh) * | 2019-10-25 | 2021-02-09 | 北京沃东天骏信息技术有限公司 | 用于训练表征模型的方法和装置 |
CN111930992A (zh) * | 2020-08-14 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 神经网络训练方法、装置及电子设备 |
CN112287069A (zh) * | 2020-10-29 | 2021-01-29 | 平安科技(深圳)有限公司 | 基于语音语义的信息检索方法、装置及计算机设备 |
CN112860848A (zh) * | 2021-01-20 | 2021-05-28 | 平安科技(深圳)有限公司 | 信息检索方法、装置、设备及介质 |
CN112966102A (zh) * | 2021-02-10 | 2021-06-15 | 万翼科技有限公司 | 分类模型构建及文本语句分类方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114020887A (zh) | 2022-02-08 |
WO2023071581A1 (zh) | 2023-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111783462B (zh) | 基于双神经网络融合的中文命名实体识别模型及方法 | |
US10726061B2 (en) | Identifying text for labeling utilizing topic modeling-based text clustering | |
Ji et al. | A latent variable recurrent neural network for discourse relation language models | |
CN109887484B (zh) | 一种基于对偶学习的语音识别与语音合成方法及装置 | |
CN114020887B (zh) | 用于确定响应语句的方法、设备、装置和介质 | |
JP6461308B2 (ja) | 音声認識装置およびリスコアリング装置 | |
US12073181B2 (en) | Systems and methods for natural language processing (NLP) model robustness determination | |
Hori et al. | Dialog state tracking with attention-based sequence-to-sequence learning | |
CN116127953B (zh) | 一种基于对比学习的中文拼写纠错方法、装置和介质 | |
CN110909144A (zh) | 问答对话方法、装置、电子设备及计算机可读存储介质 | |
WO2014073206A1 (ja) | 情報処理装置、及び、情報処理方法 | |
WO2016122967A1 (en) | Transcription correction using multi-token structures | |
CN116011470A (zh) | 翻译、对抗样本生成、模型鲁棒性增强方法及相关装置 | |
CN115511104A (zh) | 用于训练对比学习模型的方法、装置、设备和介质 | |
CN113705222B (zh) | 槽识别模型训练方法及装置和槽填充方法及装置 | |
CN114266252A (zh) | 命名实体识别方法、装置、设备及存储介质 | |
WO2023061107A1 (zh) | 基于层预测的语言翻译的方法、设备、装置和介质 | |
CN113779199B (zh) | 用于文档和摘要的一致性检测的方法、设备、装置和介质 | |
CN114239559B (zh) | 文本纠错和文本纠错模型的生成方法、装置、设备和介质 | |
CN113362809B (zh) | 语音识别方法、装置和电子设备 | |
CN113806489A (zh) | 用于数据集创建的方法、电子设备和计算机程序产品 | |
Kreyssig | Deep learning for user simulation in a dialogue system | |
Wang et al. | Sequence adversarial training and minimum bayes risk decoding for end-to-end neural conversation models | |
CN113962275A (zh) | 样本评估 | |
CN115631746B (zh) | 热词识别方法、装置、计算机设备及存储介质 |
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 |