CN114817494A - 基于预训练和注意力交互网络的知识型检索式对话方法 - Google Patents

基于预训练和注意力交互网络的知识型检索式对话方法 Download PDF

Info

Publication number
CN114817494A
CN114817494A CN202210346843.1A CN202210346843A CN114817494A CN 114817494 A CN114817494 A CN 114817494A CN 202210346843 A CN202210346843 A CN 202210346843A CN 114817494 A CN114817494 A CN 114817494A
Authority
CN
China
Prior art keywords
background knowledge
lemma
context
training
bert
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.)
Granted
Application number
CN202210346843.1A
Other languages
English (en)
Other versions
CN114817494B (zh
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.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
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 South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN202210346843.1A priority Critical patent/CN114817494B/zh
Publication of CN114817494A publication Critical patent/CN114817494A/zh
Application granted granted Critical
Publication of CN114817494B publication Critical patent/CN114817494B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于预训练和注意力交互网络的知识型检索式对话方法,包括如下步骤:在目标语料库上使用领域适应性预训练方法训练预训练语言模型BERT,得到领域适应性BERT;使用领域适应性BERT作为注意力交互网络的编码器,对对话上下文、背景知识和若干候选响应文本分别编码得到相应表征;最后将对话上下文、背景知识和若干候选响应的表征分别输入到注意力交互网络进行匹配,训练注意力交互网络从若干候选响应中检索出最佳响应。本发明利用预训练语言模型强大的语义表征能力,通过两个预训练任务提高预训练语言模型在特定语料库上的语义表征能力,并采用注意力交互网络缓解为提高检索速度而采用的分离编码所带来的性能下降。

Description

基于预训练和注意力交互网络的知识型检索式对话方法
技术领域
本发明涉及深度学习和自然语言处理领域,特别是涉及一种基于预训练和注意力交互网络的知识型检索式对话方法。
背景技术
对话系统是自然语言处理的一个重要课题,其目标是使计算机理解人类的对话,并构建端到端的对话装置。当前主流的对话系统有两种,分别是生成式对话系统和检索式对话系统。生成式对话系统通过编码器-解码器结构理解对话并生成响应;检索式对话系统则从语料库中检索响应。知识型对话响应选择任务由基于角色的对话语料库(Persona-Chat)和基于文档的对话语料库(CMUDoG)提出,要求知识型检索式对话系统根据给定的对话上下文和背景知识从若干候选响应中选取最佳响应。目前主流的知识型检索式对话系统基于预训练语言模型,取得了一定的效果,但仍存在以下缺点:1)忽略了预训练语言模型在目标语料库上的继续预训练的收益;2)模型在推理阶段的准确度和速度未能取得一个令人满意的折中——串联编码的方法准确度高但检索速度慢,分离编码的方法检索速度快但准确度较低。
一个双交互式匹配网络(DIM)(Dually Interactive Matching Network forPersonalized Response Selectionin Retrieval-Based Chatbots),是目前最先进的知识型检索式对话系统之一。DIM分别在候选响应和对话上下文之间以及候选响应和背景知识之间进行交互式匹配,取得了一定的效果。但DIM采用LSTM作为编码器,忽略了预训练语言模型的强大的文本表征能力以及在特定语料库上的继续预训练的收益。
基于预训练语言模型BERT的检索式对话系统模型(BERT-ResSel)(An EffectiveDomain Adaptive Post-Training Methodfor BERT in Response Selection),是目前最先进的检索式对话系统之一。BERT-ResSel基于预训练语言模型BERT,并且在目标数据集上进行串联对话上下文和候选响应为输入的预训练,取得了一定的效果。但在检索阶段,BERT-ResSel串联候选响应和对话上下文进行串联编码,推理速度较慢,实用性不高。而且BERT-ResSel并未引入背景知识以辅助响应检索,在知识型检索式对话任务中的检索准确率较低。
发明内容
本发明的目的是针对现有技术的不足设计的一种基于预训练和注意力交互网络的知识型检索式对话方法。该方法基于预训练语言模型BERT,能有效利用BERT在大型通用语料库上预训练所学习的强大的语义捕捉能力,并且通过在目标语料库上继续预训练,使用学习到针对目标语料库的语义表征的领域适应性BERT作为编码器;该方法还包含了一个基交叉注意力的交互网络,以缓解分离编码带来的准确度下降的问题。
本发明至少通过如下技术方案之一实现。
基于预训练和注意力交互网络的知识型检索式对话方法,包括以下步骤:
首先在目标语料库上使用领域适应性预训练方法训练预训练语言模型BERT,得到领域适应性BERT;
然后使用领域适应性BERT作为注意力交互网络的编码器,对对话上下文、背景知识和若干候选响应文本分别进行编码得到相应表征;
最后将对话上下文、背景知识和若干候选响应的表征分别输入到注意力交互网络进行匹配交互,训练注意力交互网络从若干候选响应中检索出最佳响应。
进一步地,领域适应性预训练方法包括以下步骤:
S1、使用BERT分词器对获取的对话上下文、背景知识和候选响应文本分别进行分词,获得文本词元列表;
S2、在对话上下文和候选响应文本的每一句话语末尾添加代表对话话语的词元[EOU],在背景知识的每一个句子末尾添加代表背景知识的词元[EOK];
S3、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、候选响应词元列表和代表分段的词元[SEP]作为预训练语言模型BERT的第一输入,串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、背景知识词元列表和代表分段的词元[SEP]作为预训练语言模型BERT的第二输入;输入到BERT的词元列表总是以预测分类的词元[CLS]开始,以代表分段的词元[SEP]结束;
S4、根据第一输入和第二输入对预训练语言模型BERT进行下一句检测任务和掩码语言模型任务的领域适应性预训练,得到领域适应性BERT作为注意力交互网络的编码器。
进一步地,所述注意力交互网络检索最佳响应,包括以下步骤:
S1、使用领域适应性BERT作为注意力交互网络的编码器对对话上下文、背景知识和候选响应文本进行分离编码,分别得到三者的表征矩阵;
S2、对对话上下文、背景知识和候选响应文本的表征向量矩阵两两进行交叉注意力计算,并通过向量聚合得到最终的表征向量;
S3、在训练阶段,使用对话上下文、背景知识和候选响应文本的表征向量进行点积计算得到匹配评分,计算交叉熵损失,监督训练注意力交互网络;
S4、在推理阶段,将获取的对话上下文、背景知识和候选响应文本输入注意力交互网络,计算得到候选响应和对话上下文、背景知识的匹配评分,得分最高的候选响应即为检索出的最佳响应。
进一步地,在领域适应性预训练方法中,预训练语言模型BERT包括两种输入:
串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、候选响应词元列表和代表分段的词元[SEP]作为第一输入,表示为:
Figure BDA0003580971540000031
串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、背景知识词元列表和代表分段的词元[SEP]作为第二输入,表示为:
Figure BDA0003580971540000032
在第一输入和第二输入中,
Figure BDA0003580971540000033
代表对话上下文,nc为对话上下文话语句子数量;对话上下文第i句话语ui表示为
Figure BDA0003580971540000034
话语ui的每一个元素代表一个词元,其中
Figure BDA0003580971540000035
为对话上下文第i句话语ui的词元数量,
Figure BDA0003580971540000036
为对话上下文第i句话语ui的第
Figure BDA0003580971540000037
个词元;[EOU]为在对话上下文和候选响应文本的每一句话语末尾添加代表对话话语的词元;
Figure BDA0003580971540000038
代表背景知识,nk为背景知识句子数量;第j句背景知识句子kj表示为
Figure BDA0003580971540000039
句子kj的每一个元素代表一个词元,其中
Figure BDA00035809715400000310
为第j句背景知识句子kj的词元数量;
Figure BDA00035809715400000311
为第j句背景知识句子kj的第
Figure BDA00035809715400000312
个词元;[EOK]为在背景知识的每一个句子末尾添加代表背景知识的词元;
Figure BDA0003580971540000041
代表候选响应话语句子,候选响应话语句子r中的每一个元素代表一个词元,lr为候选响应话语的词元数量,
Figure BDA0003580971540000042
为候选响应话语句子r中的第lr个词元。
进一步地,步骤S4具体包括:
在下一句检测任务中,将预训练语言模型BERT输出的第一输入中用于预测分类的词元[CLS]的表征向量E[CLS]1通过单层感知机计算第一输入中对话上下文和候选响应的匹配分数gcd(c,r),将预训练语言模型BERT输出的第二输入中用于预测分类的词元[CLS]的表征向量E[CLS]2通过单层感知机计算第二输入中对话上下文和背景知识的匹配分数gcd(c,k),gcd(c,r)和gcd(c,k)计算公式分别如下:
gcd(c,r)=σ(Wcd1E[CLS]1+bcd1)
gcd(c,k)=σ(Wcd2E[CLS]2+bcd2)
其中,Wcd1、Wcd2、bcd1、bcd2为可训练参数,σ(·)是Logistic函数;
下一句检测任务的损失为
Figure BDA0003580971540000043
计算公式如下:
Figure BDA0003580971540000044
其中,ycd1为第一输入的数据标签,若第一输入中的候选响应是给定对话上下文的正确响应时ycd1=1,反之ycd1=0;ycd2为第二输入的数据标签,若给定的第二输入中对话上下文与背景知识来自同一组对话时ycd2=1,反之ycd2=0;
在掩码语言模型任务中,从输入预训练语言模型BERT的词元列表中随机抽取a%的词元替换为代表掩盖的词元[MASK],将BERT编码输出的[MASK]词元的表征向量E[MASK]通过一个线性层,预测被掩盖的词元,记被掩盖的词元在词汇表中的位置为id,掩码语言模型任务交叉熵损失
Figure BDA0003580971540000045
计算公式如下:
Figure BDA0003580971540000046
其中fid(·)为取softmax函数结果的第id维数值,
Figure BDA0003580971540000047
Figure BDA0003580971540000048
分别代表d×w、w维的实数空间,d为BERT的词元维度,w为BERT的词汇表长度。
进一步地,领域适应性预训练的损失
Figure BDA0003580971540000049
为下一句检测任务和掩码语言模型任务损失的和,计算公式如下:
Figure BDA00035809715400000410
进一步地,对对话上下文、背景知识和若干候选响应文本分别进行编码得到相应表征,包括以下步骤:
步骤S11、使用BERT分词器对获取的对话上下文、背景知识和候选响应进行分词,获得长度分别为lC、lK和lR的文本离散编码,对应的表征向量分别如下:
Figure BDA0003580971540000051
Figure BDA0003580971540000052
R′={[CLS],r,[EOU],[SEP]}
其中[CLS]为用于预测分类的词元,[EOU]为在对话上下文和候选响应文本的每一句话语末尾添加代表对话话语的词元,[EOK]为在背景知识的每一个句子末尾添加代表背景知识的词元,[SEP]为表示分段的词元;
Figure BDA0003580971540000053
为对话上下文的第nc个话语句子,
Figure BDA0003580971540000054
为背景知识的第nk个句子,r为候选响应话语句子;
步骤S12、将对话上下文、背景知识和候选响应的表征向量分别输入到领域适应性BERT进行分离编码,分别获得对应的表征矩阵如下:
Figure BDA0003580971540000055
Figure BDA0003580971540000056
R={E[CLS],Er,E[EoU],E[SEP]}
其中
Figure BDA0003580971540000057
Figure BDA0003580971540000058
Figure BDA0003580971540000059
分别代表维度为lC×d、lK×d和lR×d的实数空间,d为BERT的词元维度,E[CLS]、E[EOU]、E[SEP]、E[EOK]分别表示领域适应性BERT对词元[CLS]、[EOU]、[SEP]、[EOK]的编码结果,
Figure BDA00035809715400000510
Er分别表示领域适应性BERT对词元列表
Figure BDA00035809715400000511
r的编码结果。
进一步地,步骤S2包括:
交叉注意力计算方式如下:
对话上下文C和背景知识K的注意力矩阵为:MC,K=C×KT
感知背景知识的对话上下文表征为:CK=softmax(MC,K)×K;
感知对话上下文的背景知识表征为:KC=softmax(MC,K T)×C;
对话上下文C和候选响应R的注意力矩阵为:MC,R=C×RT
感知候选响应的对话上下文表征为:CR=softmax(MC,R)×R;
感知对话上下文的候选响应表征为:RC=softmax(MC,R T)×C;
背景知识K和候选响应R的注意力矩阵为:MK,R=K×RT
感知候选响应的背景知识表征为:KR=softmax(MK,R)×R;
感知背景知识的候选响应表征为:RK=softmax(MK,R T)×K;
其中softmax(·)为在矩阵第二维度上做归一化的指数函数;
分别将感知表征通过带有ReLU的线性层,然后通过向量加法聚合方法融合到原表征中,得到增强的表征,计算公式如下:
C*=C+max(0,CKW1+b1)+max(0,CRW2+b2);
K*=K+max(0,KCW3+b3)+max(0,KRW4+b4);
R*=R+max(0,RKW5+b5)+max(0,RCW6+b6);
其中
Figure BDA0003580971540000061
为可训练参数;
分别对增强的对话上下文表征C*、背景知识表征K*和候选响应表征R*进行第一维度的均值池化,得到最终的对话上下文表征向量
Figure BDA0003580971540000062
背景知识表征向量
Figure BDA0003580971540000063
候选响应表征向量
Figure BDA0003580971540000064
其中
Figure BDA0003580971540000065
代表d维的实数空间,d为BERT的词元维度;
将最终的背景知识表征向量
Figure BDA0003580971540000066
和最终的对话上下文表征向量
Figure BDA0003580971540000067
串联得到最终的查询向量,表述为:
Figure BDA0003580971540000068
将两个最终的候选响应表征向量
Figure BDA0003580971540000069
串联得到最终的响应向量,表述为:
Figure BDA00035809715400000610
其中
Figure BDA00035809715400000611
代表维度为2d的实数空间,d为BERT的词元维度。
进一步地,使用向量点积计算查询向量与响应向量的匹配评分g(c,k,r),计算公式如下:
g(c,k,r)=dot(xf,yf)
其中xf为最终的背景知识表征向量
Figure BDA00035809715400000612
和最终的对话上下文表征向量
Figure BDA00035809715400000613
串联得到最终的查询向量,yf为两个最终的候选响应表征向量
Figure BDA00035809715400000614
串联得到最终的响应向量,dot(·)表示向量点积计算。
进一步地,在训练阶段通过最小化目标语料库
Figure BDA00035809715400000615
上的交叉熵损失
Figure BDA00035809715400000616
来最优化注意力交互网络参数:
Figure BDA0003580971540000071
其中θ为注意力交互网络的模型参数,f(·)是softmax函数,c、k、r为对话上下文、背景知识和候选响应,g(c,k,r)为计算得到的c、k、r匹配评分,y为数据标签,若候选响应是对给定的对话上下文和背景知识的正确响应时y=1,反之y=-1。
与现有的技术相比,本发明的有益效果为:
(1)本发明能够有效利用预训练语言模型强大的语义表征能力,并通过在目标语料库上的领域适应性训练进一步增强预训练语言模型的表征能力,提高模型准确检索响应的能力;
(2)本发明通过对对话上下文、背景知识和候选响应进行分离编码,提高本发明模型的检索速度,并通过注意力交互充分利用对话上下文、背景知识和候选响应之间的相关特征,提高模型准确检索响应的能力;
(3)本发明在准确率和推理速度上取得了良好的折中,具有很高的实用价值。本发明的基于预训练和注意力交互网络的知识型检索式对话方法在基于角色的对话语料库(Persona-Chat)和基于文档的对话语料库(CMUDoG)上得到验证。
附图说明
图1为本发明的以对话上下文和候选响应为输入的领域适应性预训练示意图;
图2为本发明的以对话上下文和背景知识为输入的领域适应性预训练示意图;
图3为本发明基于预训练和注意力交互网络的知识型检索式对话方法示意图。
具体实施方式
下面结合说明书附图对本发明进一步说明。
实施例1
本实施例的基于预训练和注意力交互网络的知识型检索式对话方法,在基于角色的对话语料库(Persona-Chat)上实施。实施过程包括领域适应性预训练阶段和微调训练阶段。
图1、图2是本发明实施过程中领域适应性预训练阶段说明图,如图1、图2所示,在Persona-Chat语料库上实施的领域适应性预训练的基本步骤如下:
S1、本实施例的预训练语言模型选取由Google提出的基本的、不区分大小写的BERT模型,所述BERT模型为包括一个12层、768维、12个自注意头、110M参数的神经网络结构;领域适应性预训练超参数设定如下:训练批次大小为20,Dropout概率为0.2,优化器为Adam,初始学习率为0.00003,训练步数上限为50000;
S2、获取对话上下文、背景知识和候选响应文本并使用BERT分词器进行分词得到三者的词元列表如下:
对话上下文词元列表表示为
Figure BDA0003580971540000081
其中nc为对话上下文话语句子数量,
Figure BDA0003580971540000082
为对话上下文话语第nc个句子;对话上下文第i句话语ui表示为
Figure BDA0003580971540000083
话语ui的每一个元素代表一个词元,其中
Figure BDA0003580971540000084
为对话上下文第i句话语ui的词元数量,
Figure BDA0003580971540000085
为对话上下文第i句话语ui的第
Figure BDA0003580971540000086
个词元;
背景知识词元列表表示为
Figure BDA0003580971540000087
其中nk为背景知识句子数量;第j句背景知识句子kj表示为
Figure BDA0003580971540000088
句子kj的每一个元素代表一个词元,其中
Figure BDA0003580971540000089
为第j句背景知识句子kj的词元数量;
候选响应词元列表表示为
Figure BDA00035809715400000810
候选响应话语句子r中的每一个元素代表一个词元,lr为候选响应话语的词元数量;
对话上下文、背景知识和候选响保留的词元数量上限分别设置为128、128、32,超出长度限制时截尾;
S3、在对话上下文的每一句话语和候选响应话语末尾添加代表对话话语的词元[EOU],在背景知识的每个句子末尾添加代表背景知识的词元[EOK],有利于模型区分对话话语和背景知识;
S4、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、候选响应词元列表和代表分段的词元[SEP]作为预训练语言模型BERT的第一输入,表示为:
Figure BDA00035809715400000811
S4、串联用于预测分类的词元、对话上下文词元列表、代表分段的词元、背景知识词元列表和代表分段的词元作为预训练语言模型BERT的第二输入,表示为:
Figure BDA00035809715400000812
S5、使用步骤S4所述第一输入和步骤S5所述第二输入对预训练语言模型进行下一句检测任务和掩码语言模型任务的领域适应性预训练;
进一步地,在下一句检测任务中,将预训练语言模型BERT输出的第一输入中用于预测分类的词元[CLS]的表征向量E[CLS]1通过单层感知机计算第一输入中对话上下文和候选响应的匹配分数gcd(c,r),将预训练语言模型BERT输出的第二输入中用于预测分类的词元[CLS]的表征向量E[CLS]2通过单层感知机计算第二输入中对话上下文和背景知识的匹配分数gcd(c,k),gcd(c,r)和gcd(c,k)计算公式分别如下:
gcd(c,r)=σ(Wcd1E[CLS]1+bcd1)
gcd(c,k)=σ(Wcd2E[CLS]2+bca2)
其中,Wcd1、Wcd2、bcd1、bcd2为可训练参数,σ(·)是Logistic函数;
下一句检测任务的损失为
Figure BDA0003580971540000091
计算公式如下:
Figure BDA0003580971540000092
其中,ycd1为第一输入的数据标签,若第一输入中的候选响应是给定对话上下文的正确响应时ycd1=1,反之ycd1=0;ycd2为第二输入的数据标签,若给定的第二输入中对话上下文与背景知识来自同一组对话时ycd2=1,反之ycd2=0;
在掩码语言模型任务中,从输入预训练语言模型BERT的词元列表中随机抽取15%的词元替换为代表掩盖的词元[MASK],将预训练语言模型BERT编码输出的[MASK]词元的表征向量E[MASK]通过一个线性层,预测被掩盖的词元,记被掩盖的词元在词汇表中的位置为id,掩码语言模型任务交叉熵损失
Figure BDA0003580971540000093
汁算公式如下:
Figure BDA0003580971540000094
其中fid(·)为取softmax函数结果的第id维数值,
Figure BDA0003580971540000095
Figure BDA0003580971540000096
分别代表d×w、w维的实数空间,d为预训练语言模型BERT的词元维度,w为预训练语言模型BERT的词汇表长度;
S6、在Persona-Chat语料库重复步骤S1-S5直到达到训练步数上限,完成领域适应性预训练,得到领域适应性BERT作为注意力交互网络的编码器。
图3是本发明实施过程中采用的模型网络结构说明图,如图3所示,本发明的注意力交互网络在Persona-Chat语料库上实施的微调训练的超参数设定如下:训练批次大小为40,Dropout概率为0.2,优化器为Adam,初始学习率为0.00003,训练步数上限为20000。微调训练基本步骤如下:
S1、获取对话上下文、背景知识和候选响应并进行分词,对话上下文、背景知识和候选响应保留的最大词元长度分别设置为128、128、32,超出长度限制时截尾;
S2、在对话上下文的每一句话语和候选响应话语末尾添加代表对话话语的词元[EOU],在背景知识的每个句子末尾添加代表背景知识的词元[EOK];
S3、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP],串联后的对话上下文词元列表最大长度为128,表示为:
Figure BDA0003580971540000101
将C′输入领域适应性BERT进行编码,获得对话上下文表征矩阵C;
S4、串联用于预测分类的词元[CLS]、候选响应词元列表、代表分段的词元[SEP],串联后的词元列表最大长度为32,表示为:
R′={[CLS],r,[EOU],[SEP]}
将R′输入领域适应性BERT进行编码,获得候选响应表征矩阵R;
S5、串联用于预测分类的词元[CLS]、背景知识词元列表和代表分段的词元[SEP],其最大长度为128,表示为
Figure BDA0003580971540000102
将K′输入领域适应性BERT进行编码,获得背景知识表征矩阵K;词元有利于模型识别各种输入文本的类型,更好地表征相应文本;
S6、对话上下文、背景知识和候选响应的表征矩阵进行两两进行交叉注意力计算,并聚合得到最终的表征向量,计算方式如下:
对话上下文C和背景知识K的注意力矩阵为:MC,K=C×KT
感知背景知识的对话上下文表征为:CK=softmax(MC,K)×K;
感知对话上下文的背景知识表征为:KC=softmax(MC,K T)×C;
对话上下文C和候选响应R的注意力矩阵为:MC,R=C×RT
感知候选响应的对话上下文表征为:CR=softmax(MC,R)×R;
感知对话上下文的候选响应表征为:RC=softmax(MC,R T)×C;
背景知识K和候选响应R的注意力矩阵为:MK,R=K×RT
感知候选响应的背景知识表征为:KR=softmax(MK,R)×R;
感知背景知识的候选响应表征为:RK=softmax(MK,R T)×K;
其中softmax(·)为在矩阵第二维度上做归一化的指数函数;
分别将感知表征通过带有ReLU的线性层,然后通过向量加法聚合方法融合到原表征中,得到增强的表征:
C*=C+max(0,CKW1+b1)+max(0,CRW2+b2);
K*=K+max(0,KCW3+b3)+max(0,KRW4+b4);
R*=R+max(0,RKW5+b5)+max(0,RCW6+b6);
其中
Figure BDA0003580971540000111
为可训练变量;
分别对增强的对话上下文表征C*、背景知识表征K*和候选响应表征R*进行第一维度的均值池化,得到最终的对话上下文表征向量
Figure BDA0003580971540000112
背景知识表征向量
Figure BDA0003580971540000113
候选响应表征向量
Figure BDA0003580971540000114
其中
Figure BDA0003580971540000115
代表d维的实数空间,d为BERT的词元维度;
S7、将最终的背景知识表征向量
Figure BDA0003580971540000116
和最终的对话上下文表征向量
Figure BDA0003580971540000117
串联得到最终的查询向量,表述为:
Figure BDA0003580971540000118
将两个最终的候选响应表征向量
Figure BDA0003580971540000119
串联得到最终的响应向量,表述为:
Figure BDA00035809715400001110
其中
Figure BDA00035809715400001111
代表维度为2d的实数空间,d为BERT的词元维度;
S8、使用向量点积计算查询向量与响应向量的匹配评分g(c,k,r),计算公式如下:
g(c,k,r)=dot(xf,yf)
其中xf为最终的背景知识表征向量
Figure BDA00035809715400001112
和最终的对话上下文表征向量
Figure BDA00035809715400001113
串联得到最终的查询向量,yf为两个最终的候选响应表征向量
Figure BDA00035809715400001114
串联得到最终的响应向量,dot(·)表示向量点积计算;
S9、对给定上下文、背景知识和候选响应的匹配评分g(c,k,r)计算交叉熵损失
Figure BDA00035809715400001115
最优化注意力交互网络参数θ。交叉熵损失的计算公式如下:
Figure BDA00035809715400001116
其中
Figure BDA00035809715400001117
为目标语料库,f(·)是softmax函数,y为数据标签,若候选响应是对给定的对话上下文和背景知识的正确响应时y=1,反之y=-1;
S10、在Persona-Chat语料库中重复步骤S1-S9,直到达到训练步数上限,完成模型训练;
S11、给定新的对话上下文、背景知识文本和一组候选响应文本,根据步骤S1-S8分别计算每个候选响应与给定的对话上下文和背景知识的匹配评分,评分最高的候选响应即模型检索得到的最佳响应。
实施例2
本发明的基于预训练和注意力交互网络的知识型检索式对话方法,在基于文档的对话语料库(CMUDoG)上实施。实施过程包括领域适应性预训练阶段和微调训练阶段。
图1、图2是本发明实施过程中领域适应性预训练阶段说明图,如图1、图2所示,在CMUDoG语料库上实施的领域适应性预训练的基本步骤如下:
S1、本实施例的预训练语言模型选取由Google提出的基本的、不区分大小写的BERT模型,所述BERT模型为包括一个12层、768维、12个自注意头、110M参数的神经网络结构;领域适应性预训练超参数设定如下:训练批次大小为10,Dropout概率为0.2,优化器为Adam,初始学习率为0.00003,训练步数上限为50000;
S2、获取对话上下文、背景知识和候选响应文本并使用BERT分词器进行分词得到三者的词元列表如下:
对话上下文词元列表表示为
Figure BDA0003580971540000121
其中nc为对话上下文话语句子数量;对话上下文第i句话语ui表示为
Figure BDA0003580971540000122
话语ui的每一个元素代表一个词元,其中
Figure BDA0003580971540000127
为对话上下文第i句话语ui的词元数量;
背景知识词元列表表示为
Figure BDA0003580971540000123
其中nk为背景知识句子数量;第j句背景知识句子kj表示为
Figure BDA0003580971540000124
句子kj的每一个元素代表一个词元,其中
Figure BDA0003580971540000125
为第j句背景知识句子kj的词元数量;
候选响应词元列表表示为
Figure BDA0003580971540000126
候选响应话语句子r中的每一个元素代表一个词元,lr为候选响应话语的词元数量;
对话上下文、背景知识和候选响保留的词元数量上限分别设置为256、256、128,超出长度限制时截尾;
S3、在对话上下文的每一句话语和候选响应话语末尾添加代表对话话语的词元[EOU],在背景知识的每个句子末尾添加代表背景知识的词元[EOK];
S4、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、候选响应词元列表和代表分段的词元[SEP]作为预训练语言模型BERT的第一输入,表示为:
Figure BDA0003580971540000131
S4、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、背景知识词元列表和代表分段的词元[SEP]作为预训练语言模型BERT的第二输入,表示为:
Figure BDA0003580971540000132
S5、使用步骤S4所述第一输入和步骤S5所述第二输入对预训练语言模型进行下一句检测任务和掩码语言模型任务的领域适应性预训练;
S6、在CMUDoG语料库重复步骤S1-S5直到达到训练步数上限,完成领域适应性预训练,得到领域适应性BERT作为注意力交互网络的编码器。领域适应性BERT或称为领域适应性预训练语言模型,其作用是本发明注意力交互网络的编码器,或称为领域适应性编码器。
图3是本发明实施过程中采用的模型网络结构说明图,如图3所示,本发明的注意力交互网络在CMUDoG语料库上实施的微调训练的超参数设定如下:训练批次大小为20,Dropout概率为0.2,优化器为Adam,初始学习率为0.00003,训练步数上限为20000。微调训练基本步骤如下:
S1、获取对话上下文、背景知识和候选响应并进行分词,对话上下文、背景知识和候选响应保留的最大词元长度分别设置为256、256、128,超出长度限制时截尾;
S2、在对话上下文的每一句话语和候选响应话语末尾添加代表对话话语的词元[EOU],在背景知识的每个句子末尾添加代表背景知识的词元[EOK];
S3、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP],串联后的对话上下文词元列表最大长度为256,表示为:
Figure BDA0003580971540000133
将C′输入领域适应性BERT进行编码,获得对话上下文表征矩阵C;
S4、串联用于预测分类的词元[CLS]、候选响应词元列表、代表分段的词元[SEP],串联后的词元列表最大长度为128,表示为:
R′={[CLS],r,[EOU],[SEP]}
将R′输入领域适应性BERT进行编码,获得候选响应表征矩阵R;
S5、串联用于预测分类的词元[CLS]、背景知识词元列表和代表分段的词元[SEP],其最大长度为256,表示为
Figure BDA0003580971540000141
将K′输入领域适应性BERT进行编码,获得背景知识表征矩阵K;
S6、对话上下文、背景知识和候选响应的表征矩阵进行两两进行交叉注意力计算,并聚合得到最终的表征向量,计算方式如下:
对话上下文C和背景知识K的注意力矩阵为:MC,K=C×KT
感知背景知识的对话上下文表征为:CK=softmax(MC,K)×K;
感知对话上下文的背景知识表征为:KC=softmax(MC,K T)×C;
对话上下文C和候选响应R的注意力矩阵为:MC,R=C×RT
感知候选响应的对话上下文表征为:CR=softmax(MC,R)×R;
感知对话上下文的候选响应表征为:RC=softmax(MC,R T)×C;
背景知识K和候选响应R的注意力矩阵为:MK,R=K×RT
感知候选响应的背景知识表征为:KR=softmax(MK,R)×R;
感知背景知识的候选响应表征为:RK=softmax(MK,R T)×K;
其中softmax(.)为在矩阵第二维度上做归一化的指数函数;
分别将感知表征通过带有ReLU的线性层,然后通过向量加法聚合方法融合到原表征中,得到增强的表征:
C*=C+max(0,CKW1+b1)+max(0,CRW2+b2);
K*=K+max(0,KCW3+b3)+max(0,KRW4+b4);
R*=R+max(0,RKW5+b5)+max(0,RCW6+b6);
其中
Figure BDA0003580971540000142
为可训练变量;
分别对增强的对话上下文表征C*、背景知识表征K*和候选响应表征R*进行第一维度的均值池化,得到最终的对话上下文表征向量
Figure BDA0003580971540000143
背景知识表征向量
Figure BDA0003580971540000144
候选响应表征向量
Figure BDA0003580971540000145
其中
Figure BDA0003580971540000146
代表d维的实数空间,d为BERT的词元维度;
S7、将最终的背景知识表征向量
Figure BDA0003580971540000147
和最终的对话上下文表征向量
Figure BDA0003580971540000148
串联得到最终的查询向量,表述为:
Figure BDA0003580971540000149
将两个最终的候选响应表征向量
Figure BDA0003580971540000151
串联得到最终的响应向量,表述为:
Figure BDA0003580971540000152
其中
Figure BDA0003580971540000153
代表维度为2d的实数空间,d为BERT的词元维度;
S8、使用向量点积计算查询向量与响应向量的匹配评分g(c,k,r),计算公式如下:
g(c,k,r)=dot(xf,yf)
其中xf为最终的背景知识表征向量
Figure BDA0003580971540000154
和最终的对话上下文表征向量
Figure BDA0003580971540000155
串联得到最终的查询向量,yf为两个最终的候选响应表征向量
Figure BDA0003580971540000156
串联得到最终的响应向量,dot(·)表示向量点积计算;
S9、对给定上下文、背景知识和候选响应的匹配评分g(c,k,r)计算交叉熵损失
Figure BDA0003580971540000157
最优化注意力交互网络参数θ。交叉熵损失的计算公式如下:
Figure BDA0003580971540000158
其中
Figure BDA0003580971540000159
为目标语料库,f(·)是softmax函数,y为数据标签,若候选响应是对给定的对话上下文和背景知识的正确响应时y=1,反之y=-1;
S10、在CMUDoG语料库中重复步骤S1-S9,直到达到训练步数上限,完成模型训练;
S11、给定新的对话上下文、背景知识文本和一组候选响应文本,根据步骤S1-S8分别计算每个候选响应与给定的对话上下文和背景知识的匹配评分,评分最高的候选响应即模型检索得到的最佳响应。
实施例3
本发明的基于预训练和注意力交互网络的知识型检索式对话方法,在基于文档的对话语料库(Persona-Chat)上实施。实施过程包括领域适应性预训练阶段和微调训练阶段。
图1、图2是本发明实施过程中领域适应性预训练阶段说明图,如图1、图2所示,在Persona-Chat语料库上实施的领域适应性预训练的基本步骤如下:
S1、本实施例的预训练语言模型选取由Google提出的训练速度更快的ALBERT模型,所述ALBERT模型为包括一个12层、嵌入层128维、隐藏层128维、12个自注意头、10M参数的神经网络结构;领域适应性预训练超参数设定如下:训练批次大小为20,Dropout概率为0.2,优化器为Adam,初始学习率为0.00003,训练步数上限为50000;
S2、获取对话上下文、背景知识和候选响应文本并使用ALBERT分词器进行分词得到三者的词元列表如下:
对话上下文词元列表表示为
Figure BDA0003580971540000161
其中nc为对话上下文话语句子数量;对话上下文第i句话语ui表示为
Figure BDA0003580971540000162
话语ui的每一个元素代表一个词元,其中
Figure BDA0003580971540000163
为对话上下文第i句话语ui的词元数量;
背景知识词元列表表示为
Figure BDA0003580971540000164
其中nk为背景知识句子数量;第j句背景知识句子kj表示为
Figure BDA0003580971540000165
句子kj的每一个元素代表一个词元,其中
Figure BDA0003580971540000166
为第j句背景知识句子kj的词元数量;
候选响应词元列表表示为
Figure BDA0003580971540000167
候选响应话语句子r中的每一个元素代表一个词元,lr为候选响应话语的词元数量;
对话上下文、背景知识和候选响保留的词元数量上限分别设置为128、128、32,超出长度限制时截尾;
S3、在对话上下文的每一句话语和候选响应话语末尾添加代表对话话语的词元[EOU],在背景知识的每个句子末尾添加代表背景知识的词元[EOK];
S4、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、候选响应词元列表和代表分段的词元[SEP]作为预训练语言模型ALBERT的第一输入,表示为:
Figure BDA0003580971540000168
S4、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、背景知识词元列表和代表分段的词元[SEP]作为预训练语言模型ALBERT的第二输入,表示为:
Figure BDA0003580971540000169
S5、使用步骤S4所述第一输入和步骤S5所述第二输入对预训练语言模型进行下一句检测任务和掩码语言模型任务的领域适应性预训练;
进一步地,在下一句检测任务中,将预训练语言模型ALBERT输出的第一输入中用于预测分类的词元[CLS]的表征向量E[CLS]1通过单层感知机计算第一输入中对话上下文和候选响应的匹配分数gcd(c,r),将预训练语言模型ALBERT输出的第二输入中用于预测分类的词元[CLS]的表征向量E[CLS]2通过单层感知机计算第二输入中对话上下文和背景知识的匹配分数gcd(c,k),gcd(c,r)和gcd(c,k)计算公式分别如下:
gcd(c,r)=σ(Wcd1E[CLS]1+bcd1)
gcd(c,k)=σ(Wcd2E[CLS]2+bcd2)
其中,Wcd1、Wcd2、bcd1、bcd2为可训练参数,σ(·)是Logistic函数;
下一句检测任务的损失为
Figure BDA0003580971540000171
计算公式如下:
Figure BDA0003580971540000172
其中,ycd1为第一输入的数据标签,若第一输入中的候选响应是给定对话上下文的正确响应时ycd1=1,反之ycd1=0;ycd2为第二输入的数据标签,若给定的第二输入中对话上下文与背景知识来自同一组对话时ycd2=1,反之ycd2=0;
在掩码语言模型任务中,从输入预训练语言模型ALBERT的词元列表中随机抽取15%的词元替换为代表掩盖的词元[MASK],将预训练语言模型ALBERT编码输出的[MASK]词元的表征向量E[MASK]通过一个线性层,预测被掩盖的词元,记被掩盖的词元在词汇表中的位置为id,掩码语言模型任务交叉熵损失
Figure BDA0003580971540000173
计算公式如下:
Figure BDA0003580971540000174
其中fid(·)为取softmax函数结果的第id维数值,
Figure BDA0003580971540000175
Figure BDA0003580971540000176
分别代表d×w、w维的实数空间,d为ALBERT的词元维度,w为预训练语言模型ALBERT的词汇表长度;
S6、在Persona-Chat语料库重复步骤S1-S5直到达到训练步数上限,完成领域适应性预训练,得到领域适应性ALBERT作为注意力交互网络的编码器。
图3是本发明实施过程中采用的模型网络结构说明图,如图3所示,本发明的注意力交互网络在Persona-Chat语料库上实施的微调训练的超参数设定如下:训练批次大小为40,Dropout概率为0.2,优化器为Adam,初始学习率为0.00003,训练步数上限为20000。微调训练基本步骤如下:
S1、获取对话上下文、背景知识和候选响应并进行分词,对话上下文、背景知识和候选响应保留的最大词元长度分别设置为128、128、32,超出长度限制时截尾;
S2、在对话上下文的每一句话语和候选响应话语末尾添加代表对话话语的词元[EOU],在背景知识的每个句子末尾添加代表背景知识的词元[EOK];
S3、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP],串联后的对话上下文词元列表最大长度为128,表示为:
Figure BDA0003580971540000181
将C′输入领域适应性ALBERT进行编码,获得对话上下文表征矩阵C;
S4、串联用于预测分类的词元[CLS]、候选响应词元列表、代表分段的词元[SEP],串联后的词元列表最大长度为32,表示为:
R′={[CLS],r,[EOU],[SEP]}
将R′输入领域适应性ALBERT进行编码,获得候选响应表征矩阵R;
S5、串联用于预测分类的词元[CLS]、背景知识词元列表和代表分段的词元[SEP],其最大长度为128,表示为
Figure BDA0003580971540000182
将K′输入领域适应性ALBERT进行编码,获得背景知识表征矩阵K;
S6、对话上下文、背景知识和候选响应的表征矩阵进行两两进行交叉注意力计算,并聚合得到最终的表征向量,计算方式如下:
对话上下文C和背景知识K的注意力矩阵为:MC,K=C×KT
感知背景知识的对话上下文表征为:CK=softmax(MC,K)×K;
感知对话上下文的背景知识表征为:KC=softmax(MC,K T)×C;
对话上下文C和候选响应R的注意力矩阵为:MC,R=C×RT
感知候选响应的对话上下文表征为:CR=softmax(MC,R)×R;
感知对话上下文的候选响应表征为:RC=softmax(MC,R T)×C;
背景知识K和候选响应R的注意力矩阵为:MK,R=K×RT
感知候选响应的背景知识表征为:KR=softmax(MK,R)×R;
感知背景知识的候选响应表征为:RK=softmax(MK,R T)×K;
其中softmax(·)为在矩阵第二维度上做归一化的指数函数;
分别将感知表征通过带有ReLU的线性层,然后通过向量加法聚合方法融合到原表征中,得到增强的表征:
C*=C+max(0,CKW1+b1)+max(0,CRW2+b2);
K*=K+max(0,KCW3+b3)+max(0,KRW4+b4);
R*=R+max(0,RKW5+b5)+max(0,RCW6+b6);
其中
Figure BDA0003580971540000191
为可训练变量;
分别对增强的对话上下文表征C*、背景知识表征K*和候选响应表征R*进行第一维度的均值池化,得到最终的对话上下文表征向量
Figure BDA0003580971540000192
背景知识表征向量
Figure BDA0003580971540000193
候选响应表征向量
Figure BDA0003580971540000194
其中
Figure BDA0003580971540000195
代表d维的实数空间,d为ALBERT的词元维度;
S7、将最终的背景知识表征向量
Figure BDA0003580971540000196
和最终的对话上下文表征向量
Figure BDA0003580971540000197
串联得到最终的查询向量,表述为:
Figure BDA0003580971540000198
将两个最终的候选响应表征向量
Figure BDA0003580971540000199
串联得到最终的响应向量,表述为:
Figure BDA00035809715400001910
其中
Figure BDA00035809715400001911
代表维度为2d的实数空间,d为ALBERT的词元维度;
S8、使用向量点积计算查询向量与响应向量的匹配评分g(c,k,r),计算公式如下:
g(c,k,r)=dot(xf,yf)
其中xf为最终的背景知识表征向量
Figure BDA00035809715400001912
和最终的对话上下文表征向量
Figure BDA00035809715400001913
串联得到最终的查询向量,yf为两个最终的候选响应表征向量
Figure BDA00035809715400001914
串联得到最终的响应向量,dot(·)表示向量点积计算;
S9、对给定上下文、背景知识和候选响应的匹配评分g(c,k,r)计算交叉熵损失
Figure BDA00035809715400001915
最优化注意力交互网络参数θ。交叉熵损失的计算公式如下:
Figure BDA00035809715400001916
其中
Figure BDA00035809715400001917
为目标语料库,f(·)是softmax函数,y为数据标签,若候选响应是对给定的对话上下文和背景知识的正确响应则y=1,反之y=-1;
S10、在Persona-Chat语料库中重复步骤S1-S9,直到达到训练步数上限,完成模型训练;
S11、给定新的对话上下文、背景知识文本和一组候选响应文本,根据步骤S1-S8分别计算每个候选响应与给定的对话上下文和背景知识的匹配评分,评分最高的候选响应即模型检索得到的最佳响应。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (10)

1.基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,包括以下步骤:
首先在目标语料库上使用领域适应性预训练方法训练预训练语言模型BERT,得到领域适应性BERT;
然后使用领域适应性BERT作为注意力交互网络的编码器,对对话上下文、背景知识和若干候选响应文本分别进行编码得到相应表征;
最后将对话上下文、背景知识和若干候选响应的表征分别输入到注意力交互网络进行匹配交互,训练注意力交互网络从若干候选响应中检索出最佳响应。
2.根据权利要求1所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,领域适应性预训练方法包括以下步骤:
S1、使用BERT分词器对获取的对话上下文、背景知识和候选响应文本分别进行分词,获得文本词元列表;
S2、在对话上下文和候选响应文本的每一句话语末尾添加代表对话话语的词元[EOU],在背景知识的每一个句子末尾添加代表背景知识的词元[EOK];
S3、串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、候选响应词元列表和代表分段的词元[SEP]作为预训练语言模型BERT的第一输入,串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、背景知识词元列表和代表分段的词元[SEP]作为预训练语言模型BERT的第二输入;输入到BERT的词元列表总是以预测分类的词元[CLS]开始,以代表分段的词元[SEP]结束;
S4、根据第一输入和第二输入对预训练语言模型BERT进行下一句检测任务和掩码语言模型任务的领域适应性预训练,得到领域适应性BERT作为注意力交互网络的编码器。
3.根据权利要求1所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,所述注意力交互网络检索最佳响应,包括以下步骤:
S1、使用领域适应性BERT作为注意力交互网络的编码器对对话上下文、背景知识和候选响应文本进行分离编码,分别得到三者的表征矩阵;
S2、对对话上下文、背景知识和候选响应文本的表征向量矩阵两两进行交叉注意力计算,并通过向量聚合得到最终的表征向量;
S3、在训练阶段,使用对话上下文、背景知识和候选响应文本的表征向量进行点积计算得到匹配评分,计算交叉熵损失,监督训练注意力交互网络;
S4、在推理阶段,将获取的对话上下文、背景知识和候选响应文本输入注意力交互网络,计算得到候选响应和对话上下文、背景知识的匹配评分,得分最高的候选响应即为检索出的最佳响应。
4.根据权利要求1所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,在领域适应性预训练方法中,预训练语言模型BERT包括两种输入:
串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、候选响应词元列表和代表分段的词元[SEP]作为第一输入,表示为:
Figure FDA0003580971530000021
串联用于预测分类的词元[CLS]、对话上下文词元列表、代表分段的词元[SEP]、背景知识词元列表和代表分段的词元[SEP]作为第二输入,表示为:
Figure FDA0003580971530000022
Figure FDA0003580971530000023
在第一输入和第二输入中,
Figure FDA0003580971530000024
代表对话上下文,nc为对话上下文话语句子数量;对话上下文第i句话语ui表示为
Figure FDA0003580971530000025
话语ui的每一个元素代表一个词元,其中
Figure FDA0003580971530000026
为对话上下文第i句话语ui的词元数量,
Figure FDA0003580971530000027
为对话上下文第i句话语ui的第
Figure FDA0003580971530000028
个词元;[EOU]为在对话上下文和候选响应文本的每一句话语末尾添加代表对话话语的词元;
Figure FDA0003580971530000029
代表背景知识,nk为背景知识句子数量;第j句背景知识句子kj表示为
Figure FDA00035809715300000210
句子kj的每一个元素代表一个词元,其中
Figure FDA00035809715300000211
为第j句背景知识句子kj的词元数量;
Figure FDA00035809715300000212
为第j句背景知识句子kj的第
Figure FDA00035809715300000213
个词元;[EOK]为在背景知识的每一个句子末尾添加代表背景知识的词元;
Figure FDA00035809715300000214
代表候选响应话语句子,候选响应话语句子r中的每一个元素代表一个词元,lr为候选响应话语的词元数量,
Figure FDA00035809715300000215
为候选响应话语句子r中的第lr个词元。
5.根据权利要求2所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,步骤S4具体包括:
在下一句检测任务中,将预训练语言模型BERT输出的第一输入中用于预测分类的词元[CLS]的表征向量E[CLS]1通过单层感知机计算第一输入中对话上下文和候选响应的匹配分数gcd(c,r),将预训练语言模型BERT输出的第二输入中用于预测分类的词元[CLS]的表征向量E[CLS]2通过单层感知机计算第二输入中对话上下文和背景知识的匹配分数gcd(c,k),gcd(c,r)和gcd(c,k)计算公式分别如下:
gcd(c,r)=σ(Wcd1E[CLS]1+bcd1)
gcd(c,k)=σ(Wcd2E[CLS]2+bcd2)
其中,Wcd1、Wcd2、bcd1、bcd2为可训练参数,σ(·)是Logistic函数;
下一句检测任务的损失为
Figure FDA0003580971530000031
计算公式如下:
Figure FDA0003580971530000032
其中,ycd1为第一输入的数据标签,若第一输入中的候选响应是给定对话上下文的正确响应时ycd1=1,反之ycd1=0;ycd2为第二输入的数据标签,若给定的第二输入中对话上下文与背景知识来自同一组对话时ycd2=1,反之ycd2=0;
在掩码语言模型任务中,从输入预训练语言模型BERT的词元列表中随机抽取a%的词元替换为代表掩盖的词元[MASK],将BERT编码输出的[MASK]词元的表征向量E[MASK]通过一个线性层,预测被掩盖的词元,记被掩盖的词元在词汇表中的位置为id,掩码语言模型任务交叉熵损失
Figure FDA0003580971530000033
计算公式如下:
Figure FDA0003580971530000034
其中fid(·)为取softmax函数结果的第id维数值,
Figure FDA0003580971530000035
Figure FDA0003580971530000036
分别代表d×w、w维的实数空间,d为BERT的词元维度,w为BERT的词汇表长度。
6.根据权利要求5所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,领域适应性预训练的损失
Figure FDA0003580971530000037
为下一句检测任务和掩码语言模型任务损失的和,计算公式如下:
Figure FDA0003580971530000038
7.根据权利要求1所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,对对话上下文、背景知识和若干候选响应文本分别进行编码得到相应表征,包括以下步骤:
步骤S11、使用BERT分词器对获取的对话上下文、背景知识和候选响应进行分词,获得长度分别为lC、lK和lR的文本离散编码,对应的表征向量分别如下:
Figure FDA0003580971530000041
Figure FDA0003580971530000042
R′={[CLS],r,[EOU],[SEP]}
其中[CLS]为用于预测分类的词元,[EOU]为在对话上下文和候选响应文本的每一句话语末尾添加代表对话话语的词元,[EOK]为在背景知识的每一个句子末尾添加代表背景知识的词元,[SEP]为表示分段的词元;
Figure FDA0003580971530000043
为对话上下文的第nc个话语句子,
Figure FDA0003580971530000044
为背景知识的第nk个句子,r为候选响应话语句子;
步骤S12、将对话上下文、背景知识和候选响应的表征向量分别输入到领域适应性BERT进行分离编码,分别获得对应的表征矩阵如下:
Figure FDA0003580971530000045
Figure FDA0003580971530000046
R={E[CLS],Er,E[EOU],E[SEP]}
其中
Figure FDA0003580971530000047
Figure FDA0003580971530000048
分别代表维度为lC×d、lK×d和lR×d的实数空间,d为BERT的词元维度,E[CLS]、E[EOU]、E[SEP]、E[EOK]分别表示领域适应性BERT对词元[CLS]、[EOU]、[SEP]、[EOK]的编码结果,
Figure FDA0003580971530000049
Er分别表示领域适应性BERT对词元列表
Figure FDA00035809715300000410
r的编码结果。
8.根据权利要求3所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,步骤S2包括:
交叉注意力计算方式如下:
对话上下文C和背景知识K的注意力矩阵为:MC,K=C×KT
感知背景知识的对话上下文表征为:CK=softmax(MC,K)×K;
感知对话上下文的背景知识表征为:KC=softmax(MC,K T)×C;
对话上下文C和候选响应R的注意力矩阵为:MC,R=C×RT
感知候选响应的对话上下文表征为:CR=softmax(MC,R)×R;
感知对话上下文的候选响应表征为:RC=softmax(MC,R T)×C;
背景知识K和候选响应R的注意力矩阵为:MK,R=K×RT
感知候选响应的背景知识表征为:KR=softmax(MK,R)×R;
感知背景知识的候选响应表征为:RK=softmax(MK,R T)×K;
其中softmax(·)为在矩阵第二维度上做归一化的指数函数;
分别将感知表征通过带有ReLU的线性层,然后通过向量加法聚合方法融合到原表征中,得到增强的表征,计算公式如下:
C*=C+max(0,CKW1+b1)+max(0,CRW2+b2);
K*=K+max(0,KCW3+b3)+max(0,KRW4+b4);
R*=R+max(0,RKW5+b5)+max(0,RCW6+b6);
其中
Figure FDA0003580971530000051
为可训练参数;
分别对增强的对话上下文表征C*、背景知识表征K*和候选响应表征R*进行第一维度的均值池化,得到最终的对话上下文表征向量
Figure FDA0003580971530000052
背景知识表征向量
Figure FDA0003580971530000053
候选响应表征向量
Figure FDA0003580971530000054
其中
Figure FDA0003580971530000055
代表d维的实数空间,d为BERT的词元维度;
将最终的背景知识表征向量
Figure FDA0003580971530000056
和最终的对话上下文表征向量
Figure FDA0003580971530000057
串联得到最终的查询向量,表述为:
Figure FDA0003580971530000058
将两个最终的候选响应表征向量
Figure FDA0003580971530000059
串联得到最终的响应向量,表述为:
Figure FDA00035809715300000510
其中
Figure FDA00035809715300000511
代表维度为2d的实数空间,d为BERT的词元维度。
9.根据权利要求3所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,使用向量点积计算查询向量与响应向量的匹配评分g(c,k,r),计算公式如下:
g(c,k,r)=dot(xf,yf)
其中xf为最终的背景知识表征向量
Figure FDA00035809715300000512
和最终的对话上下文表征向量
Figure FDA00035809715300000513
串联得到最终的查询向量,yf为两个最终的候选响应表征向量
Figure FDA00035809715300000514
串联得到最终的响应向量,dot(·)表示向量点积计算。
10.根据权利要求3所述的基于预训练和注意力交互网络的知识型检索式对话方法,其特征在于,在训练阶段通过最小化目标语料库
Figure FDA00035809715300000515
上的交叉熵损头
Figure FDA00035809715300000516
来最优化注意力交互网络参数:
Figure FDA00035809715300000517
其中θ为注意力交互网络的模型参数,f(·)是softmax函数,c、k、r为对话上下文、背景知识和候选响应,g(c,k,r)为计算得到的c、k、r匹配评分,y为数据标签,若候选响应是对给定的对话上下文和背景知识的正确响应时y=1,反之y=-1。
CN202210346843.1A 2022-04-02 2022-04-02 基于预训练和注意力交互网络的知识型检索式对话方法 Active CN114817494B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210346843.1A CN114817494B (zh) 2022-04-02 2022-04-02 基于预训练和注意力交互网络的知识型检索式对话方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210346843.1A CN114817494B (zh) 2022-04-02 2022-04-02 基于预训练和注意力交互网络的知识型检索式对话方法

Publications (2)

Publication Number Publication Date
CN114817494A true CN114817494A (zh) 2022-07-29
CN114817494B CN114817494B (zh) 2024-06-21

Family

ID=82532996

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210346843.1A Active CN114817494B (zh) 2022-04-02 2022-04-02 基于预训练和注意力交互网络的知识型检索式对话方法

Country Status (1)

Country Link
CN (1) CN114817494B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116245197A (zh) * 2023-02-21 2023-06-09 北京数美时代科技有限公司 一种提升语言模型的训练速率的方法、系统、介质及设备
CN116386145A (zh) * 2023-04-17 2023-07-04 浙江金融职业学院 一种基于双摄像头的银行内人员异常行为识别方法
CN116662582A (zh) * 2023-08-01 2023-08-29 成都信通信息技术有限公司 基于自然语言的特定领域业务知识检索方法及检索装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112417877A (zh) * 2020-11-24 2021-02-26 广州平云信息科技有限公司 一种基于改进bert的文本蕴含关系识别方法
CN113065344A (zh) * 2021-03-24 2021-07-02 大连理工大学 一种基于迁移学习和注意力机制的跨语料库情感识别方法
CN114003698A (zh) * 2021-12-27 2022-02-01 成都晓多科技有限公司 一种文本检索方法、系统、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112417877A (zh) * 2020-11-24 2021-02-26 广州平云信息科技有限公司 一种基于改进bert的文本蕴含关系识别方法
CN113065344A (zh) * 2021-03-24 2021-07-02 大连理工大学 一种基于迁移学习和注意力机制的跨语料库情感识别方法
CN114003698A (zh) * 2021-12-27 2022-02-01 成都晓多科技有限公司 一种文本检索方法、系统、设备及存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116245197A (zh) * 2023-02-21 2023-06-09 北京数美时代科技有限公司 一种提升语言模型的训练速率的方法、系统、介质及设备
CN116245197B (zh) * 2023-02-21 2023-11-07 北京数美时代科技有限公司 一种提升语言模型的训练速率的方法、系统、介质及设备
CN116386145A (zh) * 2023-04-17 2023-07-04 浙江金融职业学院 一种基于双摄像头的银行内人员异常行为识别方法
CN116386145B (zh) * 2023-04-17 2023-11-03 浙江金融职业学院 一种基于双摄像头的银行内人员异常行为识别方法
CN116662582A (zh) * 2023-08-01 2023-08-29 成都信通信息技术有限公司 基于自然语言的特定领域业务知识检索方法及检索装置
CN116662582B (zh) * 2023-08-01 2023-10-10 成都信通信息技术有限公司 基于自然语言的特定领域业务知识检索方法及检索装置

Also Published As

Publication number Publication date
CN114817494B (zh) 2024-06-21

Similar Documents

Publication Publication Date Title
CN109992782B (zh) 法律文书命名实体识别方法、装置及计算机设备
CN112732916B (zh) 一种基于bert的多特征融合模糊文本分类系统
CN114817494A (zh) 基于预训练和注意力交互网络的知识型检索式对话方法
Kumar et al. Towards the Explainability of Multimodal Speech Emotion Recognition.
CN110619034A (zh) 基于Transformer模型的文本关键词生成方法
CN108170848B (zh) 一种面向中国移动智能客服的对话场景分类方法
CN107797987B (zh) 一种基于Bi-LSTM-CNN的混合语料命名实体识别方法
CN113987187B (zh) 基于多标签嵌入的舆情文本分类方法、系统、终端及介质
CN114757182A (zh) 一种改进训练方式的bert短文本情感分析方法
CN114429132B (zh) 一种基于混合格自注意力网络的命名实体识别方法和装置
CN114153971B (zh) 一种含错中文文本纠错识别分类设备
CN112749274A (zh) 基于注意力机制和干扰词删除的中文文本分类方法
CN110188195A (zh) 一种基于深度学习的文本意图识别方法、装置及设备
CN113255366B (zh) 一种基于异构图神经网络的方面级文本情感分析方法
CN111899766B (zh) 基于深度特征与声学特征寻优融合的语音情感识别方法
CN108536781B (zh) 一种社交网络情绪焦点的挖掘方法及系统
CN112988970A (zh) 一种服务于智能问答系统的文本匹配算法
CN116756303A (zh) 一种多主题文本摘要自动生成方法及系统
CN115238693A (zh) 一种基于多分词和多层双向长短期记忆的中文命名实体识别方法
CN115935975A (zh) 一种情感可控的新闻评论生成方法
CN111274359B (zh) 基于改进vhred与强化学习的查询推荐方法及系统
CN117648469A (zh) 一种基于对比学习的交叉双塔结构答案选择方法
CN114528835A (zh) 基于区间判别的半监督专业术语抽取方法、介质及设备
Zhao et al. Knowledge-aware bayesian co-attention for multimodal emotion recognition
CN116522894A (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