CN112084317B - 预训练语言模型的方法和装置 - Google Patents
预训练语言模型的方法和装置 Download PDFInfo
- Publication number
- CN112084317B CN112084317B CN202011009914.6A CN202011009914A CN112084317B CN 112084317 B CN112084317 B CN 112084317B CN 202011009914 A CN202011009914 A CN 202011009914A CN 112084317 B CN112084317 B CN 112084317B
- Authority
- CN
- China
- Prior art keywords
- sample
- sentence
- word
- task
- vector
- 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
- 238000012549 training Methods 0.000 title claims abstract description 101
- 238000000034 method Methods 0.000 title claims abstract description 41
- 239000013598 vector Substances 0.000 claims abstract description 167
- 238000012512 characterization method Methods 0.000 claims abstract description 49
- 239000013604 expression vector Substances 0.000 claims abstract description 38
- 230000000873 masking effect Effects 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000002432 robotic surgery Methods 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/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- 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
- G06F16/355—Class or cluster creation or modification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本说明书实施例提供一种预训练语言模型的方法和装置,方法包括:获取历史对话记录中的第一角色的第一语句,以及第二角色的第二语句;历史对话记录包括多轮对话中各轮对话的语句;将第一语句和第二语句拼接成第一样本;将第一样本中预设比例的字进行遮蔽,得到第二样本;对第二样本中任意一个字的字嵌入向量、字类型嵌入向量、位置嵌入向量和附加嵌入向量进行叠加,得到该字的初始字表达向量;将第二样本中各个字的初始字表达向量输入语言模型,基于包括第一任务在内的至少一项预训练任务对语言模型进行预训练,第一任务用于预测第二样本中被遮蔽的字。能够在预训练语言模型后,使得该语言模型更适用于对话领域的语言表征。
Description
技术领域
本说明书一个或多个实施例涉及计算机领域,尤其涉及预训练语言模型的方法和装置。
背景技术
随着人工智能的发展,出现了采用机器人代替人工与用户进行对话的方式,这种对话常常需要进行多轮,简称多轮对话。在机器人与用户的多轮对话过程中,通过意图识别模型识别用户的语句所表达的意图,来针对该意图给出相应的机器人应答语句,通过这种不断交互的方式来完成既定的业务目标,例如,解答用户问题,或者促使用户进行预定用户行为。
意图识别模型是一种分类模型,以语言模型得到的语言表征为基础,确定用户的语句所表达的意图。其中,现有的语言模型是在公开的百科语料上训练的通用的模型,无法很好的表征对话领域的语句,相应地,意图识别模型无法准确的识别用户的语句所表达的意图,进而无法完成既定的业务目标。
因此,希望能有改进的方案,能够在预训练语言模型后,使得该语言模型更适用于对话领域的语言表征。
发明内容
本说明书一个或多个实施例描述了一种预训练语言模型的方法和装置,能够在预训练语言模型后,使得该语言模型更适用于对话领域的语言表征。
第一方面,提供了一种预训练语言模型的方法,所述语言模型用于对话领域中的语言表征,方法包括:
获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;
将所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;
对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
将所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。
在一种可能的实施方式中,所述第二样本中被遮蔽的字作为样本标签,用于确定所述第一任务的预测损失。
在一种可能的实施方式中,所述预训练任务还包括第二任务,所述第二任务用于预测所述第一语句和所述第二语句是否为顺次相连的两个语句。
进一步地,所述第一样本对应于所述第二任务的正样本,所述第一语句和所述第二语句为顺次相连的两个语句;或者,所述第一样本对应于所述第二任务的负样本,所述第一语句和所述第二语句不为顺次相连的两个语句。
在一种可能的实施方式中,所述预训练任务还包括第三任务,所述第三任务用于预测所述第二样本中被遮蔽的字的拼音。
进一步地,所述第二样本中被遮蔽的字的拼音作为样本标签,用于确定所述第三任务的预测损失。
在一种可能的实施方式中,所述附加嵌入向量包括该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
所述预训练任务还包括第四任务,所述第四任务用于预测所述第一语句和所述第二语句是否为同一轮次的两个语句。
进一步地,所述第一样本对应于所述第四任务的正样本,所述第一语句和所述第二语句为同一轮次的两个语句;或者,所述第一样本对应于所述第四任务的负样本,所述第一语句和所述第二语句不为同一轮次的两个语句。
在一种可能的实施方式中,所述基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练之后,所述方法还包括:
获取历史对话记录中的第一角色的第三语句和第二角色的第四语句;所述第三语句和所述第四语句属于同一轮次;
将所述第三语句和所述第四语句拼接成第三样本;
将所述第三样本中各个字的初始字表达向量输入预训练之后的所述语言模型,得到所述第三样本的语言表征向量;
将所述第三样本的语言表征向量输入意图识别模型,得到所述第三样本对应的预测意图类别;
根据所述第三样本对应的实际意图类别和预测意图类别,对所述语言模型进行微调。
进一步地,所述对所述语言模型进行微调之后,所述方法还包括:
获取当前对话中的第一角色的第五语句和第二角色的第六语句;所述第五语句和所述第六语句属于同一轮次;
将所述第五语句和所述第六语句拼接成第四样本;
将所述第四样本输入微调之后的所述语言模型,得到所述第四样本的语言表征向量;
将所述第四样本的语言表征向量输入所述意图识别模型,得到所述第四样本对应的预测意图类别。
第二方面,提供了一种预训练语言模型的装置,所述语言模型用于对话领域中的语言表征,装置包括:
第一获取单元,用于获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;
第一样本生成单元,将所述第一获取单元获取的所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;
初始表达单元,用于对所述第一样本生成单元得到的第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
预训练单元,用于将所述初始表达单元得到的所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。
第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
通过本说明书实施例提供的方法和装置,首先获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;然后将所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;接着对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;最后将所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。由上可见,本说明书实施例,基于对话领域的历史对话记录获取第二样本,并利用该第二样本对语言模型进行预训练,从而使训练后的语言模型更适合于对话领域的语言表征;并且,在确定第二样本中各个字的初始字表达向量时,不仅对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量进行叠加,还对该字对应的附加嵌入向量进行叠加,所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种,上述附加嵌入向量体现了对话领域特有的信息,后续将所述第二样本中各个字的初始字表达向量输入所述语言模型,对语言模型进行预训练,可以使得语言模型更好的提取这些对话领域特有的信息,能够在预训练语言模型后,使得该语言模型更适用于对话领域的语言表征。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的预训练语言模型的方法流程图;
图3示出根据一个实施例的预训练语言模型的过程示意图;
图4示出根据一个实施例的预训练语言模型的装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及预训练语言模型,该语言模型用于对话领域中的语言表征。参照图1,至少将用户的语句输入语言模型,通过语言模型输出对应的语言表征向量,再将该语言表征向量输入意图识别模型,通过意图识别模型输出对应的预测意图类别。可以理解的是,意图识别模型是一种分类模型,以语言模型得到的语言表征为基础,因此语言模型是否能够很好的表征对话领域的语句,对于意图识别模型的识别效果影响很大。
语言模型可以采用基于转化器的双向编码表征(bidirectional encoderrepresentation from transformers,BERT)模型的结构设计,通常的,BERT模型经过预训练任务进行预先训练后得到,训练数据来源于百科语料,预训练任务包括字遮蔽训练和连续语句预测训练,上述字遮蔽训练为在一段话中遮蔽掉几个字然后对遮蔽掉的字做预测,上述连续语句预测训练为判断两句话是否为上下文的关系,这种方式训练得到的BERT模型比较通用,不能够很好的表征对话领域的语句。
本说明书实施例,基于对话领域的历史对话记录构造训练样本,并利用训练样本对语言模型基于至少一种预训练任务进行预训练;并且,在确定训练样本中各个字的初始字表达向量时,体现了对话领域特有的信息,后续将训练样本中各个字的初始字表达向量输入所述语言模型,对语言模型进行预训练,可以使得语言模型更好的提取这些对话领域特有的信息,能够在预训练语言模型后,使得该语言模型更适用于对话领域的语言表征。
图2示出根据一个实施例的预训练语言模型的方法流程图,所述语言模型用于对话领域中的语言表征,该方法可以基于图1所示的实施场景。如图2所示,该实施例中预训练语言模型的方法包括以下步骤:步骤21,获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;步骤22,将所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;步骤23,对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;步骤24,将所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。下面描述以上各个步骤的具体执行方式。
首先在步骤21,获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句。可以理解的是,对话双方通常分别属于不同的角色,例如,一方的角色为客服,另一方的角色为用户。
本说明书实施例中,历史对话记录对应于第一角色和第二角色的一次会话(session),例如,以客服和用户之间的对话为例,历史对话记录包括机器人客服与用户之间的多轮对话,以及在机器人客服无法达成预定目标时,人工客服与该用户之间的多轮对话。其中,一轮对话包括客服的语句和用户的语句,并以客服的语句开始。
可以理解的是,前述第一语句和第二语句可以属于同一轮对话,也可以属于不同轮的对话。本说明书实施例中,语句并不限定为一句话,以对话中的实际表达为准,可以为一个词、一句话或两句话等。上述语句为对话中各方的实际表达,因此也可以称为话术。
本说明书实施例中,上述历史对话记录可以为智能外呼场景的历史对话记录,智能外呼场景,即机器人通过电话外呼形式,和用户进行交互,来完成外呼任务以及特定目标;上述历史对话记录也可以为用户呼入场景的历史对话记录,用户呼入场景即用户通过电话呼入形式,和机器人或人工客服进行交互,来完成特定问题的咨询。
然后在步骤22,将所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本。可以理解的是,该第二样本与BERT模型的字遮蔽训练的预训练任务相对应。
其中,上述预设比例可以是一个较小的数值,例如,10%或15%等。
上述预设字可以为通常的汉字,也可以为特殊标记,例如特殊标记为“[mask]”标记。在一个示例中,按第一比例将需要遮蔽的字用“[mask]”标记来替换,按第二比例将需要遮蔽的字用随机采样的一个字来替换,按第三比例将需要遮蔽的字不做替换。
接着在步骤23,对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种。可以理解的是,对一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量进行叠加,得到该字的初始字表达向量,这是通常的BERT模型采用的方式,本说明书实施例中,在此基础上还叠加了该字对应的附加嵌入向量,上述附加嵌入向量是对话领域特有的,从而便于基于该初始字表达向量对语言模型预训练后,语言模型能够学习到对话领域特有的信息。
其中,当一个字的初始字表达向量中引入该字对应的拼音的拼音嵌入向量时,有利于预训练后的语言模型抑制自动语音识别(automatic speech recognition,ASR)错误。
最后在步骤24,将所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。可以理解的是,由于第二样本中只是预设比例的字被遮蔽了,因此语言模型可以基于被遮蔽的字的上下文预测所述第二样本中被遮蔽的字。该第一任务可以对应于通常的BERT模型的字遮蔽训练预训练任务,通过执行预训练任务可以使得语言模型更好的实现对话领域的语言表征。
在一个示例中,所述第二样本中被遮蔽的字作为样本标签,用于确定所述第一任务的预测损失。
在一个示例中,所述预训练任务还包括第二任务,所述第二任务用于预测所述第一语句和所述第二语句是否为顺次相连的两个语句。该第二任务可以对应于通常的BERT模型的连续语句预测训练预训练任务。
进一步地,所述第一样本对应于所述第二任务的正样本,所述第一语句和所述第二语句为顺次相连的两个语句;或者,所述第一样本对应于所述第二任务的负样本,所述第一语句和所述第二语句不为顺次相连的两个语句。下面以表一所示的历史对话记录为例,说明何为顺次相连的两个语句。
表一:历史对话记录
角色 | 语句 | 轮次 |
客服 | 语句1 | 1 |
用户 | 语句2 | 1 |
客服 | 语句3 | 2 |
用户 | 语句4 | 2 |
客服 | 语句5 | 3 |
用户 | 语句6 | 3 |
参见表一,历史对话记录中的各语句是依照时序顺次记录的,其中,语句1和语句2为顺次相连的两个语句,语句2和语句3也为顺次相连的两个语句,但是语句1和语句3不为顺次相连的两个语句。
在一个示例中,所述预训练任务还包括第三任务,所述第三任务用于预测所述第二样本中被遮蔽的字的拼音。该第三任务是与对话领域的特定场景相适应的,对话过程中常常要进行语音识别,也就是语音识别为文本,这一过程中有时会出现ASR错误,第三任务可以有效抑制这种错误。
进一步地,所述第二样本中被遮蔽的字的拼音作为样本标签,用于确定所述第三任务的预测损失。
在一个示例中,所述附加嵌入向量包括该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;所述预训练任务还包括第四任务,所述第四任务用于预测所述第一语句和所述第二语句是否为同一轮次的两个语句。该第四任务也是与对话领域的特定场景相适应的,有利于语言模型能够表达轮次信息。
进一步地,所述第一样本对应于所述第四任务的正样本,所述第一语句和所述第二语句为同一轮次的两个语句;或者,所述第一样本对应于所述第四任务的负样本,所述第一语句和所述第二语句不为同一轮次的两个语句。
本说明书实施例,为了语言模型更好的与目标任务相适应,还需要在目标任务上对语言模型进行微调训练,上述目标任务可以但不限于为意图识别任务。
在一个示例中,所述基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练之后,所述方法还包括:
获取历史对话记录中的第一角色的第三语句和第二角色的第四语句;所述第三语句和所述第四语句属于同一轮次;
将所述第三语句和所述第四语句拼接成第三样本;
将所述第三样本中各个字的初始字表达向量输入预训练之后的所述语言模型,得到所述第三样本的语言表征向量;
将所述第三样本的语言表征向量输入意图识别模型,得到所述第三样本对应的预测意图类别;
根据所述第三样本对应的实际意图类别和预测意图类别,对所述语言模型进行微调。
本说明书实施例,在目标任务上对语言模型进行微调训练之后,就可以基于该语言模型执行目标任务了。
在一个示例中,所述对所述语言模型进行微调之后,所述方法还包括:
获取当前对话中的第一角色的第五语句和第二角色的第六语句;所述第五语句和所述第六语句属于同一轮次;
将所述第五语句和所述第六语句拼接成第四样本;
将所述第四样本输入微调之后的所述语言模型,得到所述第四样本的语言表征向量;
将所述第四样本的语言表征向量输入所述意图识别模型,得到所述第四样本对应的预测意图类别。
图3示出根据一个实施例的预训练语言模型的过程示意图。参照图3,从不同的外呼应用场景的历史对话日志里面抽取机器人的话术(context)和对应的用户的话术(query)共同拼接成一条样本,该历史对话日志也可以称为历史对话记录。如图中的实例,机器人话术“还钱”,用户回答“没钱”。针对这样一个样本,首先获取样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量,这三种嵌入向量属于原始BERT模型的三种嵌入向量,在此基础上,额外添加了三种附加嵌入向量,包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量,其中轮次嵌入向量可以用来帮助语言模型更好的学习不同轮次的对话知识,角色嵌入向量引入角色信息,帮助语言模型更好的学习机器人和用户不同的话术风格知识,拼音嵌入向量用来抑制ASR错误带来的样本的不稳定性;然后将所有的嵌入向量相加,经过正则化处理输入语言模型,在BERT模型的传统预训练任务基础上,增加了两种预训练任务,传统的预训练任务包括前述第一任务和第二任务,第一任务利用周围的文本来预测缺失的文本,第二任务预测机器人的话术和用户的话术是否顺次相连的二分类任务,增加的两种预训练任务包括前述第三任务和第四任务,第三任务利用周围文本的拼音来预测缺失文本的拼音,第四任务预测机器人的话术和用户的话术是否属于同一轮次的二分类任务。
通过本说明书实施例提供的方法,首先获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;然后将所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;接着对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;最后将所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。由上可见,本说明书实施例,基于对话领域的历史对话记录获取第二样本,并利用该第二样本对语言模型进行预训练,从而使训练后的语言模型更适合于对话领域的语言表征;并且,在确定第二样本中各个字的初始字表达向量时,不仅对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量进行叠加,还对该字对应的附加嵌入向量进行叠加,所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种,上述附加嵌入向量体现了对话领域特有的信息,后续将所述第二样本中各个字的初始字表达向量输入所述语言模型,对语言模型进行预训练,可以使得语言模型更好的提取这些对话领域特有的信息,能够在预训练语言模型后,使得该语言模型更适用于对话领域的语言表征。
根据另一方面的实施例,还提供一种预训练语言模型的装置,该装置用于执行本说明书实施例提供的预训练语言模型的方法。图4示出根据一个实施例的预训练语言模型的装置的示意性框图。如图4所示,该装置400包括:
第一获取单元41,用于获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;
第一样本生成单元42,将所述第一获取单元41获取的所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;
初始表达单元43,用于对所述第一样本生成单元42得到的第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
预训练单元44,用于将所述初始表达单元43得到的所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。
可选地,作为一个实施例,所述第二样本中被遮蔽的字作为样本标签,用于确定所述第一任务的预测损失。
可选地,作为一个实施例,所述预训练任务还包括第二任务,所述第二任务用于预测所述第一语句和所述第二语句是否为顺次相连的两个语句。
进一步地,所述第一样本对应于所述第二任务的正样本,所述第一语句和所述第二语句为顺次相连的两个语句;或者,所述第一样本对应于所述第二任务的负样本,所述第一语句和所述第二语句不为顺次相连的两个语句。
可选地,作为一个实施例,所述预训练任务还包括第三任务,所述第三任务用于预测所述第二样本中被遮蔽的字的拼音。
进一步地,所述第二样本中被遮蔽的字的拼音作为样本标签,用于确定所述第三任务的预测损失。
可选地,作为一个实施例,所述附加嵌入向量包括该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
所述预训练任务还包括第四任务,所述第四任务用于预测所述第一语句和所述第二语句是否为同一轮次的两个语句。
进一步地,所述第一样本对应于所述第四任务的正样本,所述第一语句和所述第二语句为同一轮次的两个语句;或者,所述第一样本对应于所述第四任务的负样本,所述第一语句和所述第二语句不为同一轮次的两个语句。
可选地,作为一个实施例,所述装置还包括:
第二获取单元,用于在所述预训练单元基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练之后,获取历史对话记录中的第一角色的第三语句和第二角色的第四语句;所述第三语句和所述第四语句属于同一轮次;
第二样本生成单元,用于将所述第二获取单元获取的所述第三语句和所述第四语句拼接成第三样本;
语言表征单元,用于将所述第二样本生成单元得到的第三样本中各个字的初始字表达向量输入预训练之后的所述语言模型,得到所述第三样本的语言表征向量;
预测单元,用于将所述语言表征单元得到的所述第三样本的语言表征向量输入意图识别模型,得到所述第三样本对应的预测意图类别;
微调单元,用于根据所述第三样本对应的实际意图类别和所述预测单元得到的预测意图类别,对所述语言模型进行微调。
进一步地,所述装置还包括:
第三获取单元,用于在所述微调单元对所述语言模型进行微调之后,获取当前对话中的第一角色的第五语句和第二角色的第六语句;所述第五语句和所述第六语句属于同一轮次;
第三样本生成单元,用于将所述第三获取单元获取的所述第五语句和所述第六语句拼接成第四样本;
所述语言表征单元,还用于将所述第三样本生成单元得到的第四样本输入微调之后的所述语言模型,得到所述第四样本的语言表征向量;
所述预测单元,还用于将所述语言表征单元得到的所述第四样本的语言表征向量输入所述意图识别模型,得到所述第四样本对应的预测意图类别。
通过本说明书实施例提供的装置,首先第一获取单元41获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;然后第一样本生成单元42将所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;接着初始表达单元43对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;最后预训练单元44将所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。由上可见,本说明书实施例,基于对话领域的历史对话记录获取第二样本,并利用该第二样本对语言模型进行预训练,从而使训练后的语言模型更适合于对话领域的语言表征;并且,在确定第二样本中各个字的初始字表达向量时,不仅对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量进行叠加,还对该字对应的附加嵌入向量进行叠加,所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种,上述附加嵌入向量体现了对话领域特有的信息,后续将所述第二样本中各个字的初始字表达向量输入所述语言模型,对语言模型进行预训练,可以使得语言模型更好的提取这些对话领域特有的信息,能够在预训练语言模型后,使得该语言模型更适用于对话领域的语言表征。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (22)
1.一种预训练语言模型的方法,所述语言模型用于对话领域中的语言表征,所述方法包括:
获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;
将所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;
对所述第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
将所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。
2.如权利要求1所述的方法,其中,所述第二样本中被遮蔽的字作为样本标签,用于确定所述第一任务的预测损失。
3.如权利要求1所述的方法,其中,所述预训练任务还包括第二任务,所述第二任务用于预测所述第一语句和所述第二语句是否为顺次相连的两个语句。
4.如权利要求3所述的方法,其中,所述第一样本对应于所述第二任务的正样本,所述第一语句和所述第二语句为顺次相连的两个语句;或者,所述第一样本对应于所述第二任务的负样本,所述第一语句和所述第二语句不为顺次相连的两个语句。
5.如权利要求1所述的方法,其中,所述预训练任务还包括第三任务,所述第三任务用于预测所述第二样本中被遮蔽的字的拼音。
6.如权利要求5所述的方法,其中,所述第二样本中被遮蔽的字的拼音作为样本标签,用于确定所述第三任务的预测损失。
7.如权利要求1所述的方法,其中,所述附加嵌入向量包括该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
所述预训练任务还包括第四任务,所述第四任务用于预测所述第一语句和所述第二语句是否为同一轮次的两个语句。
8.如权利要求7所述的方法,其中,所述第一样本对应于所述第四任务的正样本,所述第一语句和所述第二语句为同一轮次的两个语句;或者,所述第一样本对应于所述第四任务的负样本,所述第一语句和所述第二语句不为同一轮次的两个语句。
9.如权利要求1所述的方法,其中,所述基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练之后,所述方法还包括:
获取历史对话记录中的第一角色的第三语句和第二角色的第四语句;所述第三语句和所述第四语句属于同一轮次;
将所述第三语句和所述第四语句拼接成第三样本;
将所述第三样本中各个字的初始字表达向量输入预训练之后的所述语言模型,得到所述第三样本的语言表征向量;
将所述第三样本的语言表征向量输入意图识别模型,得到所述第三样本对应的预测意图类别;
根据所述第三样本对应的实际意图类别和预测意图类别,对所述语言模型进行微调。
10.如权利要求9所述的方法,其中,所述对所述语言模型进行微调之后,所述方法还包括:
获取当前对话中的第一角色的第五语句和第二角色的第六语句;所述第五语句和所述第六语句属于同一轮次;
将所述第五语句和所述第六语句拼接成第四样本;
将所述第四样本输入微调之后的所述语言模型,得到所述第四样本的语言表征向量;
将所述第四样本的语言表征向量输入所述意图识别模型,得到所述第四样本对应的预测意图类别。
11.一种预训练语言模型的装置,所述语言模型用于对话领域中的语言表征,所述装置包括:
第一获取单元,用于获取对话领域的历史对话记录中的第一角色的第一语句,以及所述历史对话记录中的第二角色的第二语句;其中,所述历史对话记录包括所述第一角色和所述第二角色的多轮对话中各轮对话的语句;
第一样本生成单元,将所述第一获取单元获取的所述第一语句和所述第二语句拼接成第一样本;将所述第一样本中预设比例的字用预设字进行遮蔽,得到第二样本;
初始表达单元,用于对所述第一样本生成单元得到的第二样本中任意一个字的字嵌入向量、该字的字类型嵌入向量、该字的位置嵌入向量和该字对应的附加嵌入向量进行叠加,得到该字的初始字表达向量;所述附加嵌入向量包括该字对应的语句所属轮次的轮次嵌入向量、该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
预训练单元,用于将所述初始表达单元得到的所述第二样本中各个字的初始字表达向量输入所述语言模型,基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练,所述第一任务用于预测所述第二样本中被遮蔽的字。
12.如权利要求11所述的装置,其中,所述第二样本中被遮蔽的字作为样本标签,用于确定所述第一任务的预测损失。
13.如权利要求11所述的装置,其中,所述预训练任务还包括第二任务,所述第二任务用于预测所述第一语句和所述第二语句是否为顺次相连的两个语句。
14.如权利要求13所述的装置,其中,所述第一样本对应于所述第二任务的正样本,所述第一语句和所述第二语句为顺次相连的两个语句;或者,所述第一样本对应于所述第二任务的负样本,所述第一语句和所述第二语句不为顺次相连的两个语句。
15.如权利要求11所述的装置,其中,所述预训练任务还包括第三任务,所述第三任务用于预测所述第二样本中被遮蔽的字的拼音。
16.如权利要求15所述的装置,其中,所述第二样本中被遮蔽的字的拼音作为样本标签,用于确定所述第三任务的预测损失。
17.如权利要求11所述的装置,其中,所述附加嵌入向量包括该字对应的语句所属角色的角色嵌入向量、该字对应的拼音的拼音嵌入向量中的至少一种;
所述预训练任务还包括第四任务,所述第四任务用于预测所述第一语句和所述第二语句是否为同一轮次的两个语句。
18.如权利要求17所述的装置,其中,所述第一样本对应于所述第四任务的正样本,所述第一语句和所述第二语句为同一轮次的两个语句;或者,所述第一样本对应于所述第四任务的负样本,所述第一语句和所述第二语句不为同一轮次的两个语句。
19.如权利要求11所述的装置,其中,所述装置还包括:
第二获取单元,用于在所述预训练单元基于包括第一任务在内的至少一项预训练任务对所述语言模型进行预训练之后,获取历史对话记录中的第一角色的第三语句和第二角色的第四语句;所述第三语句和所述第四语句属于同一轮次;
第二样本生成单元,用于将所述第二获取单元获取的所述第三语句和所述第四语句拼接成第三样本;
语言表征单元,用于将所述第二样本生成单元得到的第三样本中各个字的初始字表达向量输入预训练之后的所述语言模型,得到所述第三样本的语言表征向量;
预测单元,用于将所述语言表征单元得到的所述第三样本的语言表征向量输入意图识别模型,得到所述第三样本对应的预测意图类别;
微调单元,用于根据所述第三样本对应的实际意图类别和所述预测单元得到的预测意图类别,对所述语言模型进行微调。
20.如权利要求19所述的装置,其中,所述装置还包括:
第三获取单元,用于在所述微调单元对所述语言模型进行微调之后,获取当前对话中的第一角色的第五语句和第二角色的第六语句;所述第五语句和所述第六语句属于同一轮次;
第三样本生成单元,用于将所述第三获取单元获取的所述第五语句和所述第六语句拼接成第四样本;
所述语言表征单元,还用于将所述第三样本生成单元得到的第四样本输入微调之后的所述语言模型,得到所述第四样本的语言表征向量;
所述预测单元,还用于将所述语言表征单元得到的所述第四样本的语言表征向量输入所述意图识别模型,得到所述第四样本对应的预测意图类别。
21.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-10中任一项的所述的方法。
22.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项的所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011009914.6A CN112084317B (zh) | 2020-09-23 | 2020-09-23 | 预训练语言模型的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011009914.6A CN112084317B (zh) | 2020-09-23 | 2020-09-23 | 预训练语言模型的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112084317A CN112084317A (zh) | 2020-12-15 |
CN112084317B true CN112084317B (zh) | 2023-11-14 |
Family
ID=73739659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011009914.6A Active CN112084317B (zh) | 2020-09-23 | 2020-09-23 | 预训练语言模型的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112084317B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112905772B (zh) * | 2021-02-10 | 2022-04-19 | 网易有道信息技术(北京)有限公司 | 语义相关性分析方法、装置及相关产品 |
CN113177113B (zh) * | 2021-05-27 | 2023-07-25 | 中国平安人寿保险股份有限公司 | 任务型对话模型预训练方法、装置、设备及存储介质 |
CN113609275B (zh) * | 2021-08-24 | 2024-03-26 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、设备及存储介质 |
CN113688245B (zh) * | 2021-08-31 | 2023-09-26 | 中国平安人寿保险股份有限公司 | 基于人工智能的预训练语言模型的处理方法、装置及设备 |
WO2024109546A1 (zh) * | 2022-11-22 | 2024-05-30 | 北京猿力未来科技有限公司 | 对话检测模型训练方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001057851A1 (en) * | 2000-02-02 | 2001-08-09 | Famoice Technology Pty Ltd | Speech system |
CN109992648A (zh) * | 2019-04-10 | 2019-07-09 | 北京神州泰岳软件股份有限公司 | 基于词迁徙学习的深度文本匹配方法及装置 |
CN111291166A (zh) * | 2020-05-09 | 2020-06-16 | 支付宝(杭州)信息技术有限公司 | 基于Bert的语言模型的训练方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111563208B (zh) * | 2019-01-29 | 2023-06-30 | 株式会社理光 | 一种意图识别的方法、装置及计算机可读存储介质 |
-
2020
- 2020-09-23 CN CN202011009914.6A patent/CN112084317B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001057851A1 (en) * | 2000-02-02 | 2001-08-09 | Famoice Technology Pty Ltd | Speech system |
CN109992648A (zh) * | 2019-04-10 | 2019-07-09 | 北京神州泰岳软件股份有限公司 | 基于词迁徙学习的深度文本匹配方法及装置 |
CN111291166A (zh) * | 2020-05-09 | 2020-06-16 | 支付宝(杭州)信息技术有限公司 | 基于Bert的语言模型的训练方法及装置 |
Non-Patent Citations (2)
Title |
---|
张鹏远 ; 卢春晖 ; 王睿敏 ; .基于预训练语言表示模型的汉语韵律结构预测.天津大学学报(自然科学与工程技术版).2020,(03),全文. * |
徐菲菲 ; 冯东升 ; .文本词向量与预训练语言模型研究.上海电力大学学报.2020,(04),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN112084317A (zh) | 2020-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112084317B (zh) | 预训练语言模型的方法和装置 | |
CN111309889B (zh) | 用于文本处理的方法和装置 | |
CN110413746B (zh) | 对用户问题进行意图识别的方法及装置 | |
CN109670035B (zh) | 一种文本摘要生成方法 | |
WO2019200923A1 (zh) | 基于拼音的语义识别方法、装置以及人机对话*** | |
CN110472224B (zh) | 服务质量的检测方法、装置、计算机设备和存储介质 | |
CN112951240B (zh) | 模型训练、语音识别方法及装置、电子设备及存储介质 | |
CN108897896B (zh) | 基于强化学习的关键词抽取方法 | |
CN109344242B (zh) | 一种对话问答方法、装置、设备及存储介质 | |
CN111930914A (zh) | 问题生成方法和装置、电子设备以及计算机可读存储介质 | |
CN110543554A (zh) | 针对多轮对话的分类方法和装置 | |
CN111339302A (zh) | 训练要素分类模型的方法和装置 | |
CN110021293A (zh) | 语音识别方法及装置、可读存储介质 | |
CN113268610A (zh) | 基于知识图谱的意图跳转方法、装置、设备及存储介质 | |
KR20210059995A (ko) | 학습 기반의 외국어 말하기 평가 방법 및 그 시스템 | |
CN110717021A (zh) | 人工智能面试中获取输入文本和相关装置 | |
CN110019305B (zh) | 知识库扩展方法及存储介质、终端 | |
CN112395887A (zh) | 对话应答方法、装置、计算机设备和存储介质 | |
CN116910220A (zh) | 多轮对话交互处理方法、装置、设备和存储介质 | |
CN110706710A (zh) | 一种语音识别方法、装置、电子设备及存储介质 | |
CN115269836A (zh) | 意图识别方法及装置 | |
CN112860873A (zh) | 智能应答方法、装置及存储介质 | |
CN111046674B (zh) | 语义理解方法、装置、电子设备和存储介质 | |
CN113792133B (zh) | 判题方法、装置、电子设备和介质 | |
CN115270728A (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 |