CN114117001A - 指代消解方法、指代消解模型的训练方法及装置 - Google Patents

指代消解方法、指代消解模型的训练方法及装置 Download PDF

Info

Publication number
CN114117001A
CN114117001A CN202111383634.6A CN202111383634A CN114117001A CN 114117001 A CN114117001 A CN 114117001A CN 202111383634 A CN202111383634 A CN 202111383634A CN 114117001 A CN114117001 A CN 114117001A
Authority
CN
China
Prior art keywords
predicted
utterance
word
current
deletion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111383634.6A
Other languages
English (en)
Inventor
王炳乾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BOE Technology Group Co Ltd
Original Assignee
BOE Technology Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BOE Technology Group Co Ltd filed Critical BOE Technology Group Co Ltd
Priority to CN202111383634.6A priority Critical patent/CN114117001A/zh
Publication of CN114117001A publication Critical patent/CN114117001A/zh
Priority to PCT/CN2022/122028 priority patent/WO2023087935A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Machine Translation (AREA)

Abstract

本公开提供一种指代消解方法、指代消解模型的训练方法及装置,该指代消解方法包括:获取待处理的当前话语;将所述当前话语输入至指代消解模型的指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。本公开可以解决指代消解方案在多轮对话中表现效果欠佳的问题。

Description

指代消解方法、指代消解模型的训练方法及装置
技术领域
本公开实施例涉及人工智能技术领域,尤其涉及一种指代消解方法、指代消解模型的训练方法及装置。
背景技术
人机对话是人工智能领域的重要研究方向,近年来在学术界和产业界都备受关注,在算法技术上取得了令人瞩目的进展,广泛的应用到智能音箱、客服机器人等产品中。
在当前话语系统中(如智能客服机器人、智能音箱等),由于人类口语化的表达方式,存在信息不完整的模糊语句。一种解决方法是,通过对话上下文信息,对当前不完整的模糊语句进行信息补全和指代消解,实现模糊问题澄清,又称为对话改写,然而,现有的指代消解方案在单轮对话语句的处理中效果很好,而在多轮对话中则表现效果欠佳。
发明内容
本公开实施例提供一种指代消解方法、指代消解模型的训练方法及装置,用于解决现有的指代消解方案在多轮对话中表现效果欠佳的问题。
为了解决上述技术问题,本公开是这样实现的:
第一方面,本公开实施例提供了一种指代消解方法,包括:
获取待处理的当前话语;
将所述当前话语输入至指代消解模型的指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
可选的,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
可选的,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure BDA0003366566350000021
Figure BDA0003366566350000022
其中,l用于表示是预测插入位置还是预测删除位置,
Figure BDA0003366566350000023
表示起始位置,
Figure BDA0003366566350000024
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure BDA0003366566350000025
Figure BDA0003366566350000026
表示权重向量,
Figure BDA0003366566350000027
Figure BDA0003366566350000028
表示偏置项,σ为sigmoid激活函数。
可选的,将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置,包括:
计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;
以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
将所述语义输出变量和所述当前话语的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
可选的,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
jl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;
Figure BDA0003366566350000031
Hc为所述平均向量;
Figure BDA0003366566350000032
Figure BDA0003366566350000033
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,hl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure BDA0003366566350000034
H为隐藏层维度,k等于1~H;
ε是一个极小值。
可选的,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示权重向量,bs和be表示偏置项,Hcln为所述语义输出变量。
第二方面,本公开实施例提供了一种指代消解模型的训练方法,包括:
获取多个对话样本,每个所述对话样本包括历史话语、当前话语和所述当前话语的参考话语,所述参考话句为对所述当前话语进行了语义缺失补全和/或指代消解后的话语;
获取所述对话样本的标注数据,所述标注数据包括:所述当前话语中的存在语义缺失的真实插入位置和/或需要被替换字词的真实删除位置,以及,所述真实插入位置处语义缺失的字词在所述历史话语中的真实位置和/或所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练,得到训练后的指代消解检测子模型,所述训练后的指代消解检测子模型的输入为一话语,输出为输入的话语中的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练,得到训练后的消解补全子模型,所述训练后的消解补全子模型的输入为话语的预测插入位置和/或预测删除位置,输出为所述预测插入位置处语义缺失的字词在输入话语的历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在输入话语的历史话语中的替换字词的预测位置。
可选的,获取所述对话样本的标注数据包括:
将所述对话样本的当前话语中的子串与参考话语中的子串进行匹配,得到匹配结果;
若所述匹配结果为一子串仅存在于所述当前话语中,确定所述子串为需要被替换字词,以及,所述当前话语中的需要被替换字词的真实删除位置,并在所述参考话语中找到所述需要被替换字词对应的替换字体,以及,在历史话语中标记所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
若所述匹配结果为一子串仅存在于所述参考话语中,确定当前话语存在语义缺失,并确定所述当前话语中的存在语义缺失的真实插入位置。
可选的,根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练包括:
输入步骤:将所述对话样本的当前话语输入至所述指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
将根据所述指代消解检测子模型输出的所述预测插入位置和/或预测删除位置,以及,与所述当前话语的真实插入位置和/或真实删除位置,确定第一目标函数的取值;
若所述第一目标函数的取值未满足第一条件,调整所述指代消解检测子模型的参数,并返回所述输入步骤,直至所述第一目标函数的取值满足所述第一条件,得到训练后的所述指代消解检测子模型。
可选的,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
可选的,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure BDA0003366566350000051
Figure BDA0003366566350000052
其中,l用于表示是预测插入位置还是预测删除位置,
Figure BDA0003366566350000053
表示起始位置,
Figure BDA0003366566350000054
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure BDA0003366566350000055
Figure BDA0003366566350000056
表示待训练的权重向量,
Figure BDA0003366566350000057
Figure BDA0003366566350000058
表示待训练的偏置项,σ为sigmoid激活函数。
可选的,所述第一目标函数采用如下公式表示:
Figure BDA0003366566350000059
其中,losstag为所述第一目标函数,n为所述当前话语的长度,
Figure BDA00033665663500000510
表示预测插入位置或预测删除位置的起始位置,
Figure BDA00033665663500000511
表示所述当前话语的预测插入位置或预测删除位置的结束位置,
Figure BDA00033665663500000512
表示所述当前话语真实插入位置或真实删除位置的起始位置,
Figure BDA00033665663500000513
表示所述当前话语真实插入位置或真实删除位置的结束位置,i表示所述当前话语中的第i个字,j表示所述当前话语中的第j个字。
可选的,根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练包括:
预处理步骤:计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
输入步骤:将所述语义输出变量和所述对话样本的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置;根据所述历史话语中的预测位置和真实位置,确定第二目标函数的取值;
若所述第二目标函数的取值未满足第二条件,调整所述消解补全子模型的参数,并返回所述输入步骤,直至所述第二目标函数的取值满足所述第二条件,得到训练后的所述消解补全子模型。
可选的,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
hl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;
Figure BDA0003366566350000061
Hc为所述平均向量;
Figure BDA0003366566350000062
Figure BDA0003366566350000063
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,jl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure BDA0003366566350000064
H为隐藏层维度,k等于1~H;
ε是一个极小值。
可选的,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示待训练的权重向量,bs和be表示待训练的偏置项,Hcln为所述语义输出变量。
可选的,所述第二目标函数采用如下公式表示:
Figure BDA0003366566350000071
其中,lossmrc为所述第二目标函数,n为所述历史话语的长度,ps表示所述历史话语的预测位置的起始位置,pe表示所述历史话语的预测位置的结束位置,ys表示所述历史话语的真实位置的起始位置,ye表示所述历史话语的真实位置的结束位置,i表示所述历史话语中的第i个字,j表示所述历史话语中的第j个字。
第三方面,本公开实施例提供了一种指代消解装置,包括:
第一获取模块,用于获取待处理的当前话语;
第一处理模块,用于将所述当前话语输入至指代消解模型的指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
第二处理模块,用于将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
第四方面,本公开实施例提供了一种指代消解模型的训练装置,包括:
第一获取模块,用于获取多个对话样本,每个所述对话样本包括历史话语、当前话语和所述当前话语的参考话语,所述参考话句为对所述当前话语进行了语义缺失补全和/或指代消解后的话语;
第二获取模块,用于获取所述对话样本的标注数据,所述标注数据包括:所述当前话语中的存在语义缺失的真实插入位置和/或需要被替换字词的真实删除位置,以及,所述真实插入位置处语义缺失的字词在所述历史话语中的真实位置和/或所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
第一训练模块,用于根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练,得到训练后的指代消解检测子模型,所述训练后的指代消解检测子模型的输入为一话语,输出为输入的话语中的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
第二训练模块,用于根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练,得到训练后的消解补全子模型,所述训练后的消解补全子模型的输入为话语的预测插入位置和/或预测删除位置,输出为所述预测插入位置处语义缺失的字词在输入话语的历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在输入话语的历史话语中的替换字词的预测位置。
第五方面,本公开实施例提供了一种电子设备,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现上述第一方面所述的指代消解方法的步骤,或者,所述程序或指令被所述处理器执行时实现上述第二方面所述的指代消解模型的训练方法的步骤。
第六方面,本公开实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现上述第一方面所述的指代消解方法,或者实现上述第二方面所述的指代消解模型的训练方法的步骤。
在本公开实施例中,在指代消解方案中,考虑需要处理的当前话语的历史话语,可以解决指代消解方案在多轮对话中表现效果欠佳的问题。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本公开的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本公开实施例的指代消解方法的流程示意图;
图2为本公开实施例的指代消解检测子模型的输出结果示意图;
图3为本公开实施例的transformer编码器的结构示意图;
图4为本公开实施例的指代消解模型的训练方法的流程示意图;
图5为本公开实施例的指代消解模型进行指代消解的一具体使用场景的示意图;
图6为本公开实施例的指代消解装置的结构示意图;
图7为本公开实施例的指代消解模型的训练装置的结构示意图;
图8为本公开实施例的电子设备的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
首先,简单介绍下“指代”的含义:一般在语言学及日常用语当中,在下文采用简称或代称来代替上文已经出现的某一词语,语言学中把这种情况称为“指代现象”,也即是指代。形式上,将代表同一实体(Entity)的不同指称(Mention)划分到一个等价集合的过程称为指代消解。实体(Entity):客观存在于现实世界的物体。指称(Mention)指代某一实体的表述。
请参考图1,本公开还提供一种指代消解方法,包括:
步骤11:获取待处理的当前话语(current utterance);
步骤12:将所述当前话语输入至指代消解模型的指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
步骤13:将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
本公开实施例中,在指代消解方案中,考虑需要处理的当前话语的历史话语,可以解决指代消解方案在多轮对话中表现效果欠佳的问题。
下面分别对指代消解检测子模型和消解补全子模型的实现方法进行说明。
(1)指代消解检测子模型
指代消解检测子模型用于检测输入的当前话语的存在语义缺失的预测插入位置和需要被替换字词的预测删除位置。
可选的,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
举例来说,多轮对话包括以下内容:
Utterance A:是什么电影评分挺高啊?
Utterance B:名字叫贫民窟的百万富翁,是洛夫琳坦丹导演的作品
Current Utterance:还是算了吧,不喜欢这位导演。
其中,“还是算了吧,不喜欢这位导演”为当前话语(Current Utterance),前两句为历史话语。将当前话语输入至指代消解检测子模型之后,可以得到如图2所示的两个序列,其中一个序列为detetion序列,包括两行序列,一行序列用于指示当前话语中的每一个字的位置是否为预测删除位置的起始位置(start),另一方序列用于指示当前话语中的每一个字的位置是否为预测删除位置的结束位置(end),从图2中可以看出,detetion序列的第一行序列中,“这”对应的位置为1,表示“这”对应的位置为预测删除位置的起始位置,第二行序列中,“演”对应的位置为1,表示“演”对应的位置为预测删除位置的结束位置。其中另一个序列为Inertaion序列,包括两行序列,一行序列用于指示当前话语中的每一个字的位置是否为预测插入位置的起始位置(start),另一方序列用于指示当前话语中的每一个字的位置是否为预测插入位置的结束位置(end),从图2中可以看出,Inertaion序列的第一行序列中,“还”对应的位置为1,表示“还”对应的位置为预测插入位置的起始位置,第二行序列中,“还”对应的位置为1,表示“还”对应的位置为预测插入位置的结束位置,“还”同时为起始位置和结束位置,表示需要在“还”之前插入语义缺失的字词。
当然,在本公开的其他一些实施例中,01序列中,0和1所指示的含义也可以互换。
本公开实施例中,可选的,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure BDA0003366566350000111
Figure BDA0003366566350000112
其中,l用于表示是预测插入位置还是预测删除位置,
Figure BDA0003366566350000113
表示起始位置,
Figure BDA0003366566350000114
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure BDA0003366566350000115
Figure BDA0003366566350000116
表示权重向量,
Figure BDA0003366566350000117
Figure BDA0003366566350000118
表示偏置项,σ为sigmoid激活函数。
需要说明的是,所述当前话语中的每一个字的位置是否为预测插入位置的起始位置,以及,所述当前话语中的每一个字的位置是否为预测插入位置的起始位置,均采用公式
Figure BDA0003366566350000119
但是,两者在使用公式时,公式中的权重向量
Figure BDA00033665663500001110
和/或偏置项
Figure BDA00033665663500001111
可以不同。
同样的,所述当前话语中的每一个字的位置是否为预测插入位置的结束位置,以及,所述当前话语中的每一个字的位置是否为预测插入位置的结束位置,均采用公式
Figure BDA00033665663500001112
但是,两者在使用公式时,公式中的权重向量
Figure BDA00033665663500001113
和/或偏置项
Figure BDA00033665663500001114
可以不同。本公开实施例中,transformer编码器可以采用如下方式实现:
h0=XWt+Wp+Ws
hl=Transformer(hn-1),n∈[1,2,3,..,N]
其中,Wt、Wp、Ws分别为字嵌入矩阵、位置嵌入矩阵和段落嵌入矩阵,n表示transformer编码器的层数,以上述内容中的对话为例,X表示输入的当前话语,包含Utterance A,Utterance B,Current Utterance三个部分,本公开实施例中,在将X输入到transformer编码器时,可以将Utterance A和Utterance B用“,”进行连接,然后用[CLS]Utterance A,Utterance B[SEP]Current Utterance[SEP]的方式输入到transformer编码器。
请参考图3,图3为本公开实施例的transformer编码器的结构示意图,transformer编码器可以包括至少一个如图3所示的transformer block,每个transformerblock包括:Multi-Head Attention(多头注意力机制)层和Feed Forward(前馈网络),其中,Multi-Head Attention层将注意力的计算分散到不同的子空间进行,以期能从多方面进行注意力的学习。Multi-Head Attention和Feed Forward之后均连接一Add&Norm层,该Add&Norm层包含残差结构以及层归一化。
(2)消解补全子模型
消解补全子模型用于从历史话语中确定指代消解检测子模型检测出的预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
本公开实施例中,在消解补全上,可以利用检测出的当前话语的预测插入位置和/或预测删除位置的起始位置或结束位置的平均向量作为条件,通过条件层规范化(Conditional Layer Normalization,CLN)对经过transformer编码器编码处理过的当前话语进行语义处理,然后利用机器阅读理解(Machine Reading Comprehension,MRC)的方式进行消解补全文本预测。
本公开实施例中,可选的,将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置,包括:
步骤131:计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;
步骤132:以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
步骤133:将所述语义输出变量和所述当前话语的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
即,若检测出当前话语中存在语义缺失的预设插入位置,计算预测插入位置的起始位置和结束位置的平均向量,然后以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量,将所述语义输出变量和所述当前话语的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置。
若检测出当前话语中存在需要被替换字词的预设删除位置,计算预测删除位置的起始位置和结束位置的平均向量,然后以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量,将所述语义输出变量和所述当前话语的历史话语输入至所述消解补全子模型中,得到预测删除位置处需要被替换字词在所述历史话语中的替换字词的预测位置。
可选的,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
hl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;
Figure BDA0003366566350000131
Hc为所述平均向量;其中,公式中的前一个λ对后一个λ而言相当于增加了一个偏移量
Figure BDA0003366566350000132
在训练好的消解补全子模型中,后一个λ为一个固定值;
Figure BDA0003366566350000133
Figure BDA0003366566350000134
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;同样的,其中,公式中的前一个β对后一个β而言相当于增加了一个偏移量
Figure BDA0003366566350000135
在训练好的消解补全子模型中,后一个β为一个固定值;
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,hl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure BDA0003366566350000141
H为隐藏层维度,k等于1~H;
ε是一个极小值(防止分母为0)。
可选的,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示权重向量,bs和be表示偏置项,Hcln为所述语义输出变量。
需要说明的是,所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置的起始位置,以及,所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置的起始位置,均采用公式
ps=softmax(WsHcln+bs),但是,两者在使用公式时,公式中的权重向量Ws和/或偏置项bs,可以不同。
同样的,所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置的结束位置,以及,所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置的结束位置,均采用公式pe=softmax(WeHcln+be),但是,两者在使用公式时,公式中的权重向量We和/或偏置项be,可以不同。
请参考图4,本公开实施例还提供一种指代消解模型的训练方法,包括:
步骤41:获取多个对话样本,每个所述对话样本包括历史话语、当前话语(currentutterance)和所述当前话语的参考话语(reference utterance),所述参考话句为对所述当前话语进行了语义缺失补全和/或指代消解后的话语;
步骤42:获取所述对话样本的标注数据,所述标注数据包括:所述当前话语中的存在语义缺失的真实插入位置和/或需要被替换字词的真实删除位置,以及,所述真实插入位置处语义缺失的字词在所述历史话语中的真实位置和/或所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
步骤43:根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练,得到训练后的指代消解检测子模型,所述训练后的指代消解检测子模型的输入为一话语,输出为输入的话语中的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
步骤44:根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练,得到训练后的消解补全子模型,所述训练后的消解补全子模型的输入为话语的预测插入位置和/或预测删除位置,输出为所述预测插入位置处语义缺失的字词在输入话语的历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在输入话语的历史话语中的替换字词的预测位置。
本公开实施例中,在指代消解模型的训练中,考虑需要处理的当前话语的历史话语,可以使得训练得到的指代消解模型在多轮对话中表现效果较好。
本公开实施例中,可选的,获取所述对话样本的标注数据包括:
步骤421:将所述对话样本的当前话语中的子串与参考话语中的子串进行匹配,得到匹配结果;
步骤422:若所述匹配结果为一子串仅存在于所述当前话语中,确定所述子串为需要被替换字词,以及,所述当前话语中的需要被替换字词的真实删除位置,并在所述参考话语中找到所述需要被替换字词对应的替换字体,以及,在历史话语中标记所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
步骤423:若所述匹配结果为一子串仅存在于所述参考话语中,确定当前话语存在语义缺失,并确定所述当前话语中的存在语义缺失的真实插入位置。
举例来说,一对话样本可以如下:
A:是什么电影评分挺高啊?
B:名字叫贫民窟的百万富翁,是洛夫琳坦丹导演的作品
A:还是算了吧,不喜欢这位导演。
A+:贫民窟的百万富翁还是算了吧,不喜欢洛夫琳坦丹。
其中,前两句为历史话语,第三句为当前话语,第四句为参考话语。
以上述对话样本为例,将所述对话样本的当前话语(还是算了吧,不喜欢这位导演)中的子串与参考话语中的子串(贫民窟的百万富翁还是算了吧,不喜欢洛夫琳坦丹)进行匹配。
(1)若所述匹配结果为一子串同时存在于当前话语和参考话语中,该部分子串保持不变,例如“还是算了吧不喜欢”;
(2)若所述匹配结果为一子串仅存在于所述当前话语中,确定所述子串为需要被替换字词,以及,所述当前话语中的需要被替换字词的真实删除位置,并在所述参考话语中找到所述需要被替换字词对应的替换字体,以及,在历史话语中标记所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置,例如“这位导演”应该被替换成“洛夫琳坦丹”;
(3)若所述匹配结果为一子串仅存在于所述参考话语中,确定当前话语存在语义缺失,并确定所述当前话语中的存在语义缺失的真实插入位置,如需要在“还是”前插入“贫民窟的百万富翁”。
通过以上操作,即可获取用于训练模型的标注数据。
可选的,根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练包括:
输入步骤:将所述对话样本的当前话语输入至所述指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
将根据所述指代消解检测子模型输出的所述预测插入位置和/或预测删除位置,以及,与所述当前话语的真实插入位置和/或真实删除位置,确定第一目标函数的取值;
若所述第一目标函数的取值未满足第一条件,调整所述指代消解检测子模型的参数,并返回所述输入步骤,直至所述第一目标函数的取值满足所述第一条件,得到训练后的所述指代消解检测子模型。
下面分别对指代消解检测子模型和消解补全子模型的训练方法进行说明。
(1)指代消解检测子模型的训练方法
本公开实施例中,可选的,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
本公开实施例中,可选的,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure BDA0003366566350000171
Figure BDA0003366566350000172
其中,l用于表示是预测插入位置还是预测删除位置,
Figure BDA0003366566350000173
表示起始位置,
Figure BDA0003366566350000174
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure BDA0003366566350000175
Figure BDA0003366566350000176
表示待训练的权重向量,
Figure BDA0003366566350000177
Figure BDA0003366566350000178
表示待训练的偏置项,σ为sigmoid激活函数。
本公开实施例中,可选的,所述第一目标函数采用如下公式表示:
Figure BDA0003366566350000179
其中,losstag为所述第一目标函数,n为所述当前话语的长度,
Figure BDA00033665663500001710
表示预测插入位置或预测删除位置的起始位置,
Figure BDA00033665663500001711
表示所述当前话语的预测插入位置或预测删除位置的结束位置,
Figure BDA00033665663500001712
表示所述当前话语真实插入位置或真实删除位置的起始位置,
Figure BDA00033665663500001713
表示所述当前话语真实插入位置或真实删除位置的结束位置,i表示所述当前话语中的第i个字,j表示所述当前话语中的第j个字。
公式中n+2是指输入方式采用“[CLS]Utterance A,Utterance B[SEP]CurrentUtterance[SEP]”的方式输入到transformer时,额外输入的CLS和SEP占据的长度。
当然,本申请实施例中,如果采用其他方式输入,公式中的n+2的也可以随之更新。
(2)消解补全子模型的训练方法
本公开实施例中,可选的,根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练包括:
预处理步骤:计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
输入步骤:将所述语义输出变量和所述对话样本的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置;根据所述历史话语中的预测位置和真实位置,确定第二目标函数的取值;
若所述第二目标函数的取值未满足第二条件,调整所述消解补全子模型的参数,并返回所述输入步骤,直至所述第二目标函数的取值满足所述第二条件,得到训练后的所述消解补全子模型。
本公开实施例中,可选的,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
hl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;h的下标的索引值的起始值为0,hl-1表示l层网络的最后一层索引值为l-1。
Figure BDA0003366566350000181
Hc为所述平均向量;其中,公式中的前一个λ对后一个λ而言相当于增加了一个偏移量
Figure BDA0003366566350000182
后一个λ具有一个初始值,在消解补全子模型的训练过程中,后一个λ不断更新;
Figure BDA0003366566350000183
Figure BDA0003366566350000184
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;其中,公式中的前一个β对后一个β而言相当于增加了一个偏移量
Figure BDA0003366566350000185
后一个β具有一个初始值,在消解补全子模型的训练过程中,后一个β不断更新。
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,hl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure BDA0003366566350000191
H为隐藏层维度,k等于1~H;μh、σh中h是指网络隐藏层的维度;
ε是一个极小值。
本公开实施例中,可选的,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示待训练的权重向量,bs和be表示待训练的偏置项,Hcln为所述语义输出变量。
本公开实施例中,可选的,所述第二目标函数采用如下公式表示:
Figure BDA0003366566350000192
其中,lossmrc为所述第二目标函数,n为所述历史话语的长度,ps表示所述历史话语的预测位置的起始位置,pe表示所述历史话语的预测位置的结束位置,ys表示所述历史话语的真实位置的起始位置,ye表示所述历史话语的真实位置的结束位置,i表示所述历史话语中的第i个字,j表示所述历史话语中的第j个字。
本公开实施例中,将两个任务(指代消解检测和消解补全)以级联结构的方式进行多任务学习,即在第一级任务中,进行指代消解检测任务,在第二级任务中,进行消解补全任务,两级任务可以共享同一个编码层(Transformer Encoder)(请参考图5),同时进行训练和优化,训练优化目标为两个任务的优化目标之和,即:
loss=losstag+lossmrc
通过指代消解检测任务,得到当前话语中的需要进行指代消解或者语义补全词的位置,然后依次通过条件Layer Normalization(层规划化),将指代消解词的语义信息融入到消解补全的文本预测任务中,利用机器阅读理解(Machine Reading Comprehension,MRC)的方式进行消解补全文本预测。
请参考图6,本公开实施例还提供了一种指代消解装置60,包括:
第一获取模块61,用于获取待处理的当前话语;
第一处理模块62,用于将所述当前话语输入至指代消解模型的指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
第二处理模块63,用于将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
可选的,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
可选的,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure BDA0003366566350000201
Figure BDA0003366566350000202
其中,l用于表示是预测插入位置还是预测删除位置,
Figure BDA0003366566350000203
表示起始位置,
Figure BDA0003366566350000204
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure BDA0003366566350000205
Figure BDA0003366566350000206
表示权重向量,
Figure BDA0003366566350000207
Figure BDA0003366566350000208
表示偏置项,σ为sigmoid激活函数。
可选的,所述第二处理模块63包括:
计算子模块631,用于计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;
第一处理子模块,用于以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
第二处理子模块,用于将所述语义输出变量和所述当前话语的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
可选的,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
hl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;
Figure BDA0003366566350000211
Hc为所述平均向量;
Figure BDA0003366566350000212
Figure BDA0003366566350000213
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,hl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure BDA0003366566350000214
H为隐藏层维度,k等于1~H;
ε是一个极小值。
可选的,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示权重向量,bs和be表示偏置项,Hcln为所述语义输出变量。
请参考图7,本公开实施例还提供了一种指代消解模型的训练装置70,包括:
第一获取模块71,用于获取多个对话样本,每个所述对话样本包括历史话语、当前话语和所述当前话语的参考话语,所述参考话句为对所述当前话语进行了语义缺失补全和/或指代消解后的话语;
第二获取模块72,用于获取所述对话样本的标注数据,所述标注数据包括:所述当前话语中的存在语义缺失的真实插入位置和/或需要被替换字词的真实删除位置,以及,所述真实插入位置处语义缺失的字词在所述历史话语中的真实位置和/或所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
第一训练模块73,用于根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练,得到训练后的指代消解检测子模型,所述训练后的指代消解检测子模型的输入为一话语,输出为输入的话语中的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
第二训练模块74,用于根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练,得到训练后的消解补全子模型,所述训练后的消解补全子模型的输入为话语的预测插入位置和/或预测删除位置,输出为所述预测插入位置处语义缺失的字词在输入话语的历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在输入话语的历史话语中的替换字词的预测位置。
可选的,所述第二获取模块72,用于将所述对话样本的当前话语中的子串与参考话语中的子串进行匹配,得到匹配结果;若所述匹配结果为一子串仅存在于所述当前话语中,确定所述子串为需要被替换字词,以及,所述当前话语中的需要被替换字词的真实删除位置,并在所述参考话语中找到所述需要被替换字词对应的替换字体,以及,在历史话语中标记所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;若所述匹配结果为一子串仅存在于所述参考话语中,确定当前话语存在语义缺失,并确定所述当前话语中的存在语义缺失的真实插入位置。
可选的,所述第一训练模块73,用于执行以下操作:
输入步骤:将所述对话样本的当前话语输入至所述指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
将根据所述指代消解检测子模型输出的所述预测插入位置和/或预测删除位置,以及,与所述当前话语的真实插入位置和/或真实删除位置,确定第一目标函数的取值;
若所述第一目标函数的取值未满足第一条件,调整所述指代消解检测子模型的参数,并返回所述输入步骤,直至所述第一目标函数的取值满足所述第一条件,得到训练后的所述指代消解检测子模型。
可选的,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
可选的,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure BDA0003366566350000231
Figure BDA0003366566350000232
其中,l用于表示是预测插入位置还是预测删除位置,
Figure BDA0003366566350000233
表示起始位置,
Figure BDA0003366566350000234
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure BDA0003366566350000235
Figure BDA0003366566350000236
表示待训练的权重向量,
Figure BDA0003366566350000237
Figure BDA0003366566350000238
表示待训练的偏置项,σ为sigmoid激活函数。
可选的,所述第一目标函数采用如下公式表示:
Figure BDA0003366566350000239
其中,losstag为所述第一目标函数,n为所述当前话语的长度,
Figure BDA00033665663500002310
表示预测插入位置或预测删除位置的起始位置,
Figure BDA0003366566350000241
表示所述当前话语的预测插入位置或预测删除位置的结束位置,
Figure BDA0003366566350000242
表示所述当前话语真实插入位置或真实删除位置的起始位置,
Figure BDA0003366566350000243
表示所述当前话语真实插入位置或真实删除位置的结束位置,i表示所述当前话语中的第i个字,j表示所述当前话语中的第j个字。
可选的,所述第二训练模块74,用于执行以下操作:
预处理步骤:计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
输入步骤:将所述语义输出变量和所述对话样本的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置;根据所述历史话语中的预测位置和真实位置,确定第二目标函数的取值;
若所述第二目标函数的取值未满足第二条件,调整所述消解补全子模型的参数,并返回所述输入步骤,直至所述第二目标函数的取值满足所述第二条件,得到训练后的所述消解补全子模型。
可选的,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
hl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;
Figure BDA0003366566350000244
Hc为所述平均向量;
Figure BDA0003366566350000245
Figure BDA0003366566350000246
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,hl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure BDA0003366566350000251
H为隐藏层维度,k等于1~H;
ε是一个极小值。
可选的,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示待训练的权重向量,bs和be表示待训练的偏置项,Hcln为所述语义输出变量。
可选的,所述第二目标函数采用如下公式表示:
Figure BDA0003366566350000252
其中,lossmrc为所述第二目标函数,n为所述历史话语的长度,ps表示所述历史话语的预测位置的起始位置,pe表示所述历史话语的预测位置的结束位置,ys表示所述历史话语的真实位置的起始位置,ye表示所述历史话语的真实位置的结束位置,i表示所述历史话语中的第i个字,j表示所述历史话语中的第j个字。
请参考图8,本公开实施例还提供了一种电子设备80,包括处理器81,存储器82及存储在所述存储器82上并可在所述处理器81上运行的程序或指令,所述程序或指令被所述处理器81执行时实现上述指代消解方法的步骤,或者,所述程序或指令被所述处理器81执行时实现上述指代消解模型的训练方法的步骤。
本公开实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现上述指代消解方法,或者实现上述指代消解模型的训练方法的步骤。
所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本公开的实施例进行了描述,但是本公开并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本公开的启示下,在不脱离本公开宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本公开的保护之内。

Claims (20)

1.一种指代消解方法,其特征在于,包括:
获取待处理的当前话语;
将所述当前话语输入至指代消解模型的指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
2.根据权利要求1所述的方法,其特征在于,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
3.根据权利要求2所述的方法,其特征在于,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure FDA0003366566340000011
Figure FDA0003366566340000012
其中,l用于表示是预测插入位置还是预测删除位置,
Figure FDA0003366566340000013
表示起始位置,
Figure FDA0003366566340000014
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure FDA0003366566340000015
Figure FDA0003366566340000016
表示权重向量,
Figure FDA0003366566340000017
Figure FDA0003366566340000018
表示偏置项,σ为sigmoid激活函数。
4.根据权利要求1所述的方法,其特征在于,将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置,包括:
计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;
以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
将所述语义输出变量和所述当前话语的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
5.根据权利要求4所述的方法,其特征在于,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
hl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;
Figure FDA0003366566340000021
Hc为所述平均向量;
Figure FDA0003366566340000022
Figure FDA0003366566340000023
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,hl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure FDA0003366566340000024
H为隐藏层维度,k等于1~H;
ε是一个极小值。
6.根据权利要求4所述的方法,其特征在于,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示权重向量,bs和be表示偏置项,Hcln为所述语义输出变量。
7.一种指代消解模型的训练方法,其特征在于,包括:
获取多个对话样本,每个所述对话样本包括历史话语、当前话语和所述当前话语的参考话语,所述参考话句为对所述当前话语进行了语义缺失补全和/或指代消解后的话语;
获取所述对话样本的标注数据,所述标注数据包括:所述当前话语中的存在语义缺失的真实插入位置和/或需要被替换字词的真实删除位置,以及,所述真实插入位置处语义缺失的字词在所述历史话语中的真实位置和/或所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练,得到训练后的指代消解检测子模型,所述训练后的指代消解检测子模型的输入为一话语,输出为输入的话语中的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练,得到训练后的消解补全子模型,所述训练后的消解补全子模型的输入为话语的预测插入位置和/或预测删除位置,输出为所述预测插入位置处语义缺失的字词在输入话语的历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在输入话语的历史话语中的替换字词的预测位置。
8.根据权利要求7所述的方法,其特征在于,获取所述对话样本的标注数据包括:
将所述对话样本的当前话语中的子串与参考话语中的子串进行匹配,得到匹配结果;
若所述匹配结果为一子串仅存在于所述当前话语中,确定所述子串为需要被替换字词,以及,所述当前话语中的需要被替换字词的真实删除位置,并在所述参考话语中找到所述需要被替换字词对应的替换字体,以及,在历史话语中标记所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
若所述匹配结果为一子串仅存在于所述参考话语中,确定当前话语存在语义缺失,并确定所述当前话语中的存在语义缺失的真实插入位置。
9.根据权利要求7所述的方法,其特征在于,根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练包括:
输入步骤:将所述对话样本的当前话语输入至所述指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
将根据所述指代消解检测子模型输出的所述预测插入位置和/或预测删除位置,以及,与所述当前话语的真实插入位置和/或真实删除位置,确定第一目标函数的取值;
若所述第一目标函数的取值未满足第一条件,调整所述指代消解检测子模型的参数,并返回所述输入步骤,直至所述第一目标函数的取值满足所述第一条件,得到训练后的所述指代消解检测子模型。
10.根据权利要求9所述的方法,其特征在于,所述指代消解检测子模型包括两组二分类网络,其中,一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测插入位置的起始位置或结束位置的01序列,另一组二分类网络的输入为所述当前话语,输出为用于指示所述当前话语中的每一个字的位置是否为预测删除位置的起始位置或结束位置的01序列。
11.根据权利要求10所述的方法,其特征在于,所述二分类网络采用如下公式确定所述当前话语中的每一个字的位置是否为预测插入位置或预测删除位置的起始位置或结束位置:
Figure FDA0003366566340000041
Figure FDA0003366566340000042
其中,l用于表示是预测插入位置还是预测删除位置,
Figure FDA0003366566340000043
表示起始位置,
Figure FDA0003366566340000051
表示结束位置,hl[i]为所述当前话语中的第i个字经过transformer编码器后的编码向量表示,
Figure FDA0003366566340000052
Figure FDA0003366566340000053
表示待训练的权重向量,
Figure FDA0003366566340000054
Figure FDA0003366566340000055
表示待训练的偏置项,σ为sigmoid激活函数。
12.根据权利要求9所述的方法,其特征在于,所述第一目标函数采用如下公式表示:
Figure FDA0003366566340000056
其中,losstag为所述第一目标函数,n为所述当前话语的长度,
Figure FDA0003366566340000057
表示预测插入位置或预测删除位置的起始位置,
Figure FDA0003366566340000058
表示所述当前话语的预测插入位置或预测删除位置的结束位置,
Figure FDA0003366566340000059
表示所述当前话语真实插入位置或真实删除位置的起始位置,
Figure FDA00033665663400000510
表示所述当前话语真实插入位置或真实删除位置的结束位置,i表示所述当前话语中的第i个字,j表示所述当前话语中的第j个字。
13.根据权利要求7所述的方法,其特征在于,根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练包括:
预处理步骤:计算所述当前话语的预测插入位置的起始位置和结束位置的平均向量和/或预测删除位置的起始位置和结束位置的平均向量;以所述平均向量作为条件,采用条件层规范化对采用transformer编码器对所述当前话语进行编码后得到的编码向量进行语义处理,得到条件层规范化后的语义输出变量;
输入步骤:将所述语义输出变量和所述对话样本的历史话语输入至所述消解补全子模型中,得到预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置;根据所述历史话语中的预测位置和真实位置,确定第二目标函数的取值;
若所述第二目标函数的取值未满足第二条件,调整所述消解补全子模型的参数,并返回所述输入步骤,直至所述第二目标函数的取值满足所述第二条件,得到训练后的所述消解补全子模型。
14.根据权利要求13所述的方法,其特征在于,所述语义输出变量可以表示为:
Hcln=λ×(hl-1h)/(σh+ε)+β
其中,Hcln为所述语义输出变量;
jl-1为采用transformer编码器对所述当前话语进行编码后得到的编码向量;
Figure FDA0003366566340000061
Hc为所述平均向量;
Figure FDA0003366566340000062
Figure FDA0003366566340000063
为两个变换矩阵,作用是将输入的平均向量维度转化为与λ和β的维度一致;
Hc=avg(hl[s],hl[e]),avg()表示求平均值函数,s表示起始位置,e表示结束位置,hl为采用transformer编码器对输入进行编码后得到的编码向量;
μh、σh分别为所述当前话语对应的编码向量在当前层不同维度特征向量的均值和方差,
Figure FDA0003366566340000064
Figure FDA0003366566340000065
H为隐藏层维度,k等于1~H;
ε是一个极小值。
15.根据权利要求13所述的方法,其特征在于,所述消解补全子模型采用如下公式确定所述历史话语中的预测位置:
ps=softmax(WsHcln+bs)
pe=softmax(WeHcln+be)
其中,ps为所述历史话语中的预测位置的起始位置,pe为所述历史话语中的预测位置的结束位置,softmax为归一化指数函数,Ws和We表示待训练的权重向量,bs和be表示待训练的偏置项,Hcln为所述语义输出变量。
16.根据权利要求13所述的方法,其特征在于,所述第二目标函数采用如下公式表示:
Figure FDA0003366566340000066
其中,lossmrc为所述第二目标函数,n为所述历史话语的长度,ps表示所述历史话语的预测位置的起始位置,pe表示所述历史话语的预测位置的结束位置,ys表示所述历史话语的真实位置的起始位置,ye表示所述历史话语的真实位置的结束位置,i表示所述历史话语中的第i个字,j表示所述历史话语中的第j个字。
17.一种指代消解装置,其特征在于,包括:
第一获取模块,用于获取待处理的当前话语;
第一处理模块,用于将所述当前话语输入至指代消解模型的指代消解检测子模型中,得到所述当前话语的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
第二处理模块,用于将所述当前话语的预测插入位置和/或预测删除位置,以及,所述当前话语对应的历史对话,输入至所述指代消解模型的消解补全子模型中,得到所述预测插入位置处语义缺失的字词在所述历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在所述历史话语中对应的替换字词的预测位置。
18.一种指代消解模型的训练装置,其特征在于,包括:
第一获取模块,用于获取多个对话样本,每个所述对话样本包括历史话语、当前话语和所述当前话语的参考话语,所述参考话句为对所述当前话语进行了语义缺失补全和/或指代消解后的话语;
第二获取模块,用于获取所述对话样本的标注数据,所述标注数据包括:所述当前话语中的存在语义缺失的真实插入位置和/或需要被替换字词的真实删除位置,以及,所述真实插入位置处语义缺失的字词在所述历史话语中的真实位置和/或所述真实删除位置处的需要被替换字词在所述历史话语中对应的替换字词的真实位置;
第一训练模块,用于根据所述对话样本的当前话语和标注数据,对待训练的指代消解模型的指代消解检测子模型进行训练,得到训练后的指代消解检测子模型,所述训练后的指代消解检测子模型的输入为一话语,输出为输入的话语中的存在语义缺失的预测插入位置和/或需要被替换字词的预测删除位置;
第二训练模块,用于根据所述对话样本的所述标注数据以及所述对话样本的当前话语的预测插入位置和/或预测删除位置,对待训练的指代消解模型的消解补全子模型进行训练,得到训练后的消解补全子模型,所述训练后的消解补全子模型的输入为话语的预测插入位置和/或预测删除位置,输出为所述预测插入位置处语义缺失的字词在输入话语的历史话语中的预测位置和/或所述预测删除位置处需要被替换字词在输入话语的历史话语中的替换字词的预测位置。
19.一种电子设备,其特征在于,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-6任一项所述的指代消解方法的步骤,或者,所述程序或指令被所述处理器执行时实现如权利要求7-16任一项所述的指代消解模型的训练方法的步骤。
20.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-6任一项所述的指代消解方法,或者实现如权利要求7-16任一项所述的指代消解模型的训练方法的步骤。
CN202111383634.6A 2021-11-22 2021-11-22 指代消解方法、指代消解模型的训练方法及装置 Pending CN114117001A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111383634.6A CN114117001A (zh) 2021-11-22 2021-11-22 指代消解方法、指代消解模型的训练方法及装置
PCT/CN2022/122028 WO2023087935A1 (zh) 2021-11-22 2022-09-28 指代消解方法、指代消解模型的训练方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111383634.6A CN114117001A (zh) 2021-11-22 2021-11-22 指代消解方法、指代消解模型的训练方法及装置

Publications (1)

Publication Number Publication Date
CN114117001A true CN114117001A (zh) 2022-03-01

Family

ID=80438951

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111383634.6A Pending CN114117001A (zh) 2021-11-22 2021-11-22 指代消解方法、指代消解模型的训练方法及装置

Country Status (2)

Country Link
CN (1) CN114117001A (zh)
WO (1) WO2023087935A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023087935A1 (zh) * 2021-11-22 2023-05-25 京东方科技集团股份有限公司 指代消解方法、指代消解模型的训练方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108549662B (zh) * 2018-03-16 2021-08-06 云知声智能科技股份有限公司 多轮会话中语义解析结果的补充消解方法及装置
US11195523B2 (en) * 2019-07-23 2021-12-07 Microsoft Technology Licensing, Llc Ambiguity resolution with dialogue search history
CN112183060B (zh) * 2020-09-28 2022-05-10 重庆工商大学 多轮对话系统的指代消解方法
CN112989043B (zh) * 2021-03-17 2024-03-12 中国平安人寿保险股份有限公司 指代消解方法、装置、电子设备及可读存储介质
CN113609824A (zh) * 2021-08-10 2021-11-05 上海交通大学 基于文本编辑和语法纠错的多轮对话改写方法及系统
CN114117001A (zh) * 2021-11-22 2022-03-01 京东方科技集团股份有限公司 指代消解方法、指代消解模型的训练方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023087935A1 (zh) * 2021-11-22 2023-05-25 京东方科技集团股份有限公司 指代消解方法、指代消解模型的训练方法及装置

Also Published As

Publication number Publication date
WO2023087935A1 (zh) 2023-05-25

Similar Documents

Publication Publication Date Title
CN109101537B (zh) 基于深度学习的多轮对话数据分类方法、装置和电子设备
WO2020177282A1 (zh) 一种机器对话方法、装置、计算机设备及存储介质
CN109670035B (zh) 一种文本摘要生成方法
CN112613308B (zh) 用户意图识别方法、装置、终端设备及存储介质
CN111695352A (zh) 基于语义分析的评分方法、装置、终端设备及存储介质
CN112732911A (zh) 基于语义识别的话术推荐方法、装置、设备及存储介质
CN112069811A (zh) 多任务交互增强的电子文本事件抽取方法
CN109344242B (zh) 一种对话问答方法、装置、设备及存储介质
CN113268609A (zh) 基于知识图谱的对话内容推荐方法、装置、设备及介质
CN111026840B (zh) 文本处理方法、装置、服务器和存储介质
CN113705315B (zh) 视频处理方法、装置、设备及存储介质
CN112860871B (zh) 自然语言理解模型训练方法、自然语言理解方法及装置
EP4268115A1 (en) Punctuation and capitalization of speech recognition transcripts
CN112632244A (zh) 一种人机通话的优化方法、装置、计算机设备及存储介质
CN112825114A (zh) 语义识别方法、装置、电子设备及存储介质
CN110597968A (zh) 一种回复选择方法及装置
CN116341651A (zh) 实体识别模型训练方法、装置、电子设备及存储介质
CN114386426B (zh) 一种基于多元语义融合的金牌话术推荐方法及装置
CN115810068A (zh) 一种图像描述生成方法、装置、存储介质及电子设备
CN114117001A (zh) 指代消解方法、指代消解模型的训练方法及装置
CN110717027A (zh) 多轮智能问答方法、系统以及控制器和介质
CN110795531B (zh) 一种意图识别方法、装置及存储介质
CN112395887A (zh) 对话应答方法、装置、计算机设备和存储介质
CN115688758A (zh) 一种语句意图识别方法、装置和存储介质
WO2023017568A1 (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