收藏 分销(赏)

基于槽位相关信息提取的对话状态追踪模型_石利锋.pdf

上传人:自信****多点 文档编号:275960 上传时间:2023-06-26 格式:PDF 页数:8 大小:1.80MB
下载 相关 举报
基于槽位相关信息提取的对话状态追踪模型_石利锋.pdf_第1页
第1页 / 共8页
基于槽位相关信息提取的对话状态追踪模型_石利锋.pdf_第2页
第2页 / 共8页
基于槽位相关信息提取的对话状态追踪模型_石利锋.pdf_第3页
第3页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、2023-05-10计算机应用,Journal of Computer Applications2023,43(5):1430-1437ISSN 1001-9081CODEN JYIIDUhttp:/基于槽位相关信息提取的对话状态追踪模型石利锋,倪郑威*(浙江工商大学 信息与电子工程学院,杭州 310018)(通信作者电子邮箱)摘要:对话状态追踪(DST)是任务型对话系统中一个重要的模块,但现有的基于开放词表的DST模型没有充分利用槽位的相关信息以及数据集本身的结构信息。针对上述问题,提出基于槽位相关信息提取的DST模型SCEL-DST(SCE and LOW for Dialogue Sta

2、te Tracking)。首先,构建槽位相关信息提取器(SCE),利用注意力机制学习槽位之间的相关信息;然后,在训练过程中应用学习最优样本权重(LOW)策略,在未大幅增加训练时间的前提下,加强模型对数据集信息的利用;最后,优化模型细节,搭建完整的SCEL-DST模型。实验结果表明,SCE和LOW对SCEL-DST模型性能的提升至关重要,该模型在两个实验数据集上均取得了更高的联合目标准确率,其中在 MultiWOZ 2.3(Wizard-of-OZ 2.3)数据集上与相同条件下的TripPy(Triple coPy)相比提升了1.6个百分点,在WOZ 2.0(Wizard-of-OZ 2.0)数

3、据集上与AG-DST(Amendable Generation for Dialogue State Tracking)相比提升了2.0个百分点。关键词:对话状态追踪;注意力机制;任务型对话;课程学习;预训练模型中图分类号:TP183 文献标志码:ADialogue state tracking model based on slot correlation information extractionSHI Lifeng,NI Zhengwei*(School of Information and Electronic Engineering,Zhejiang Gongshang Unive

4、rsity,Hangzhou Zhejiang 310018,China)Abstract:Dialogue State Tracking(DST)is an important module in task-oriented dialogue systems,but the existing open-vocabulary-based DST models do not make full use of the slot correlation information as well as the structural information of the dataset itself.To

5、 solve the above problems,a new DST model named SCEL-DST(SCE and LOW for Dialogue State Tracking)was proposed based on slot correlation information extraction.Firstly,a Slot Correlation Extractor(SCE)was constructed,and the attention mechanism was used to learn the correlation information between sl

6、ots.Then the Learning Optimal sample Weights(LOW)strategy was applied in the training process to enhance the models utilization of the dataset information without substantial increase in training time.Finally,the model details were optimized to build the complete SCEL-DST model.Experimental results

7、show that SCE and LOW are critical to the performance improvement of SCEL-DST model,making SCEL-DST achieve higher joint goal accuracy on both experimental datasets.The SCEL-DST model has the joint goal accuracy improved by 1.6 percentage points on the MultiWOZ 2.3(Wizard-of-OZ 2.3)dataset compared

8、to TripPy(Triple coPy)under the same conditions,and by 2.0 percentage points on the WOZ 2.0(Wizard-of-OZ 2.0)dataset compared to AG-DST(Amendable Generation for Dialogue State Tracking).Key words:Dialogue State Tracking(DST);attention mechanism;task-oriented dialogue;Curriculum Learning(CL);pre-trai

9、ned model0 引言 自然语言交互越来越多地融入人们的日常生活,传统的图形化界面已经无法满足人们多元的需要。现今基于自然语言处理(Natural Language Processing,NLP)技术的人机对话系统受到人们的青睐。任务型对话系统是人机对话系统的一个重要分支,它主要为用户完成特定领域中的任务,如餐厅预订、景点推荐、车票查询等。任务型对话系统需要从用户的输入中提取出用户意图等关键信息,并将其表示成三元组domain,slot,value这种任务被称为对话状态追踪(Dialogue State Tracking,DST)。DST 作为任务型对话系统的核心组件,决定了系统的后续响应

10、,在对话系统中至关重要,一直是科研领域的研究热点。最初的DST利用人工编写的更新规则更新状态1,需要大量的人工和专家知识,而且无法定制复杂状态的更新机制,缺乏灵活性。随着近几年深度学习的相关方法被用于DST,现在的模型无需复杂的规则也能取得良好的表现。DST 有基于固定词表(Fixed-vocabulary-based)和基于开放词表(Open-vocabulary-based)两种做法,二者的差别在于是否预定义所有可能出现的本体。在DST问题中,本体指一组槽位(域槽对)-槽值组合,称为槽值对。例如在图1表格中轮 次 为 0 的 第 一 行,槽 位 为 restaurant-pricerang

11、e,槽 值 为expensive,则restaurant,pricerange,expensive就是一组槽值文章编号:1001-9081(2023)05-1430-08DOI:10.11772/j.issn.1001-9081.2022040508收稿日期:2022-04-11;修回日期:2022-08-10;录用日期:2022-08-16。基金项目:浙江省自然科学基金资助项目(LQ22F010008)。作者简介:石利锋(1998),男,浙江绍兴人,硕士研究生,CCF会员,主要研究方向:自然语言处理、机器学习;倪郑威(1989),男,湖北荆州人,副研究员,博士,CCF会员,主要研究方向:自然

12、语言处理、机器学习。第 5 期石利锋等:基于槽位相关信息提取的对话状态追踪模型对。传统的基于固定词表的做法存在两个问题:一是实际中无法获得一个完整的本体,那些在预定义本体之外的值将无法被捕获到;二是即便存在这样的本体,那么这个本体势必会相当庞大。以订餐为例,我们需要餐厅的名称以及订餐的时间,这两个槽值存在大量可能的候选值。因此基于固定词表的做法并不适合现实场景,而基于开放词表的做法因无须依赖本体,减少了大量的人力成本,受到了学者广泛的关注2。近些年来,诸如文献 3-4,基于开放词表的多领域对话状态追踪一般直接从输入的对话中抽取单词作为预测槽值的输出。这类抽取式方法存在一个致命的缺点,即无法提取

13、隐式的槽值,而自然语言往往存在共指指代以及隐式选择等现象。例如,在图 1的第二轮人机对话中,用户的最后一句话 为“A 3 star hotel in the same area and price range as my restaurant”。本句表明酒店的区域与价格与餐厅的一致,应该预测的值是 hotel,pricerange,expensive 和 hotel,area,south。但句中没有expensive和south,因此无法被抽取。为了解决抽取式方案中无法处理的共指问题,Heck等5提出了三重复制(Triple copy,TripPy)机制。TripPy指槽值被三种复制方式填充,

14、分别是显式的跨度预测、系统通知的存储以及前面存在的对话状态槽值。TripPy虽然改善了部分共指问题,但仍然存在诸多不足:首先,该机制的模型结构没有考虑不同槽位之间存在的联系,而这部分信息可被用于判断共指以及槽位复制方式;此外,模型在训练过程中没有充分分析和 利 用 数 据 集 结 构 信 息。例 如 课 程 学 习(Curriculum Learning,CL)6中通过规划样本训练的先后顺序,由易到难,能够加快模型收敛。针对基于开放词表的现有模型对各个槽位之间的相关信息利用不充分的问题,本文在TripPy的基础上设计了槽位相关信息提取器(Slot Correlation Extractor,S

15、CE)学习槽位之间的相关信息;针对训练过程中对于数据集本身信息利用不足的问题,应用学习最优样本权重(Learning Optimal sample Weights,LOW)优化训练过程。结合上述两部分,在经过多次优化之后,提出了新的对话状态跟踪模型SCEL-DST(SCE and LOW for Dialogue State Tracking)。1 相关工作 1.1对话状态追踪多轮对话对话状态追踪可以分为基于固定词表和基于开放词表两种。如文献 7-8 中提出的方法一样,基于固定词表的方法大多使用一个分类模块在给定预定义词表里预测对话状态。为了解决固定词表中本体不完整的问题,Wang等9提出了槽

16、位注意力和值归一化来巧妙地利用本体信息。基于开放词表的方法使用一个生成式的编码器生成文字或者抽取文本。Xu等10提出的模型中引入了基于索引的复制方法对之前提出的指针网络11进行完善,但这种抽取式方法无法提取隐性的值,因此 Heck 等5提出了三重复制机制,进一步克服了抽取式方法的缺陷。生成方法大多都存在 状 态 生 成 器,Wu 等12提 出 了 TRADE(TRAnsferable Dialogue statE generator)模型,它的编码器和状态生成器使用的都是门控循环单元(Gated Recurrent Unit,GRU);而且该模型提出了槽位门(Slot Gate)模块,使模型只

17、需在槽位的子集中预测槽值,大幅提高了效率,这一模块也被后来出现的对话状态追踪模型所效仿。此外,Zhang等13还提出了一种融合了跨度预测和基于候选表的方法。在多领域的背景下,一些槽位之间可能存在关联,例如两个槽位的槽值共享,景点的位置可能和餐厅的位置相同。为了获取槽位之间的信息联系,有关域槽之间建模的研究也在一直进行。Le等14提出了一种非自回归的对话状态追踪框架,该框架考虑了槽位之间的潜在依赖性,从而更好地预测完整的对话状态。Chen等15提出了图注意力网络,构建了域槽的模式图。An等16引入了特殊符号 DS 对槽位进行建 模,它 类 似 于 特 殊 符 号CLS在 BERT(Bidirec

18、tional Encoder Representations from Transformers)17中的作用。Ye等18通过构建槽位符号注意力网络和槽位自注意力网络来对不同槽位取值之间的相关信息进行建模,这与文献 8 中的网络有着异曲同工之妙;但它们都是基于固定词表的做法,整个模型的扩展性较差。1.2课程学习在一些自然语言处理任务中,数据集的标注通常都非常昂贵,而对话状态追踪拥有庞大的数据量,因此如何通过学习策略充分利用有限数据训练出一个鲁棒的模型非常关键。课程学习的出现在一定程度上解决了这一问题,它是一种训练策略,模仿人类的学习过程,主张让模型先从容易的样本User(0):Can you

19、help me find a place to eat in the expensive price range in the south part of town?Sys(1):What about the cambridge chop house.The address is:1 Kings Parade.You you like me to book a table?User(1):Yes!Can you book for 2 people at 14:15 on this Sunday?Sys(2):I was able to book your party of 2 into The

20、 Chop House on Sunday at 14:15 Reference:MUWLBLLW.User(2):Actually yes I will be needing somewhere to stay too please.A 3 star hotel in the same area and price range as my restaurantSys(3):I have one matching result.It is the lensfield hotel.Do you want to reserve a room?User(3):Yes please,two peopl

21、e for two nights on Sunday.轮次(Turn)0011112223333域槽对(Domain-slot pair)restaurant-pricerangerestaurant-arearestaurant-namerestaurant-book_peoplerestaurant-book_timerestaurant-book_timehotel-starshotel-areahotel-pricerangehotel-namehotel-book_peoplehotel-book_stayhotel-book_day槽值(Value)expensivesouthca

22、mbridge chop house214:15Sunday3 starsouthexpensivelensfield hoteltwotwo nightssunday类型(Type)spanspaninformedspanspanspanspancoreferencecoreferenceinformedspanspanspan共指(Coreference)restaurant-arearestaurant-pricerange图1MultiWOZ 2.3中的对话样例Fig.1Example dialogues in MultiWOZ 2.31431第 43 卷计算机应用开始学习,并逐渐进阶

23、到复杂的样本和知识。课程学习是近几年逐渐热门的一个前沿方向,在自然语言处理与计算机视觉任务上都展示出了卓越的性能。课程学习又可以分为预定义的课程学习和自动的课程学习,其中自动的课程学习主要包含自定进度学习、教师模型的知识迁移和教师模型的强化学习指导。但这些方法应用到对话状态追踪之上需要耗费的资源都很昂贵,尤其是强化学习教师模型,它几乎难以实现。Dai等19提出了一种混合的预定义的课程学习,结合了模型和人的先验知识对数据集进行难度划分,并应用在对话状态追踪上,在同等情况下与未使用混合的预定义的课程学习相比取得了更高的联合目标准确率。虽然它简化了任务,节省了大量的计算资源,但还是难以实际操作。课程

24、学习认为训练样本在训练过程中并不是都起到一样的作用,受到这一启发,Santiago等20提出了一种学习最优样本权重算法,通过训练中损失函数下降最快的方向来计算当前样本中每个样本对损失下降的影响,并给样本赋予相应的权重。这种方法只需要在训练过程中计算出样本的权重,大幅减少了计算资源消耗。学习最优样本权重已经在计算机视觉和医学数据中取得了很好的效果。2 本文模型 本文模型结构如图2所示,包括4个部分:1)上下文编码器(右下侧),它将输入的对话编码,输出为语义向量表示;2)SCE(左上侧),用于提取槽位之间的相关信息;3)槽位判决门,它实际上是一个线性分类器,用于判断当前输入对话和槽位之间的联系,判

25、断哪些槽需要进行接下来的分类任务以及采用哪一种复制机制;4)预测模块,它采用三重复制机制来填充槽值。本文假定对话总轮次为T,在第t(1 t T)轮对话中,用户输入为Ut,系统输入为St,任务要求是根据历史对话和本轮对话(U1,S1),(U2,S2),(Ut,St)预测相应的对话状态 domain,slot,value 。2.1上下文编码器本文采用预训练模型 BERT 对对话进行编码,轮次为t的上下文对话被编码成:Rt=BERT(CLSUtSEP StSEP BtSEP)(1)BERT的输入可以被看作是三部分,其中:Ut和St分别是第t轮 对 话 时 的 用 户 会 话 以 及 系 统 会 话;

26、Bt=()Ut-1,St-1,()Ut-2,St-2,()U1,S1是截止到当前轮次t的对话历史;特殊符号CLS位于输入序列的开始,SEP 则代表将输入序列进行分隔。由于BERT的输入长度有限制,而多轮对话历史Bt的长度会随着对话轮数增加,因此本文模型对超出长度的序列作启发式的截短处理。假定Ut、St和Bt经过分词器后的序列分别为token_u、token_s和token_b,BERT 的输入最大长度为max_seq_length。由式(1)可得加入的特殊符号数量为4。因此BERT输入序列的长度为token_u、token_s和token_b三者长度之和再加上4。启发式截短的算法简单直观,当总

27、长度大于最大输入长度时开始循环截短,一次删去一个符号。若存在历史对话,那么首先从信息相对不重要的历史对话末端开始删去符号。当历史对话长度为 0且仍未满足总长度小于最大输入长度要求时,对用户会话以及系统会话,每次选择删去较长的序列末尾的一个符号。这是因为相较于较长的序列,较短序列中的每一个符号可能含有更多信息。循环上述过程直至总长度小于等于最大长度。截短伪代码如下:算法1 启发式截短。输入 token_u、token_s和token_b拼接成的序列;输出 处理后长度小于等于max_seq_length的序列。while True dototal_length=len(token_u)+len(t

28、oken_s)+len(token_b)+4;if total_length 0 thentoken_b.pop();else if len(token_u)len(token_s)thentoken_u.pop();elsetoken_s.pop();end ifend while经过 BERT 编码后可以得到本轮对话的信息表征Rt=rCLSt,r1t,r2t,rmaxt Rd (max+1),其中:max指序列最大长度;rCLSt是整个序列的聚合表达;r1t,r2t,rmaxt是符号级别的特征向量,每个符号的特征向量维度是d,它会作为接下去的槽位相关信息提取器以及基于跨度的预测模块的输入。

29、2.2槽位相关信息提取现在的模型还不能有效解决对话中出现的共指问题,其中一个原因是没有很好地考虑槽位之间的相关信息。而目前都是基于固定词表对槽位相关信息提出建模方式,还没有对开放词表提出解决的方案。受文献 7 研究的启发,可以将槽位输入由 BERT 进行编码再通过注意力网络从而获得当前槽位对于上下文的相关信息,所以将所有槽位由BERT编码就可以获得所有槽位对于上下文的消息。本文使用另一个BERT对槽进行编码:IDS(i,j)=BERTDS()CLS XDS(i,j)SEP(2)其中:DS(i,j)代表domain(i),slot(j);XDS(i,j)代表经过数据处理后图2本文模型结构Fig.

30、2Structure of proposed model1432第 5 期石利锋等:基于槽位相关信息提取的对话状态追踪模型的输入。需要注意的是在训练的过程中BERTDS()的参数是固定的,这使它可以被迁移到其他领域。得到的单个槽位表征为IDS(i,j)=ICLS(i,j),I1(i,j),I2(i,j),Imax(i,j),将特殊符号CLS对应的表征ICLS(i,j)看作是整个序列的聚合表达,由此可以得到domain(i),slot(j)的编码信息。将所有域槽对的信息拼接得到:ICLSDS=concat()ICLS(1,1),ICLS(1,2),ICLS(5,3)Rd N(3)其 中 N 代

31、表 域 槽 对 总 数。把 拼 接 得 到 的 信 息ICLSDS与r1t,r2t,rmaxt经过一个多头注意力机制来引入槽位的信息:IDS,rt=MutiHead(Q,K,V)Rd N(4)其中:Q是ICLSDS;K和V都是上下文编码器 BERT 符号级别的特征向量r1t,r2t,rmaxt。之后利用自注意力网络学习不同槽位取值之间的相关信息:rDSt=MutiHead()IDS,rt,IDS,rt,IDS,rt Rd N(5)对这部分输出进行层归一化,可得到不同槽位取值之间的相关信息的向量表征:r?DSt=LayerNorm(rDSt)(6)2.3槽位判决门在一轮多领域对话状态追踪任务中存

32、在多个槽值对需要被追踪,因此模型需要精确预测当前轮次槽位以及槽值。不同于文献 5 中为每一个槽值对构建一个线性分类器,本文模型使用一个线性分类器进行预测。这么做的原因是:1)为每一个槽值对构建线性分类器增加了网络的复杂度,而且每个网络是为特定槽位训练的,泛化能力差;2)上文中提出的槽位相关信息提取器中存在每一个槽位的信息。在每一轮中,对于每一个domain(i),slot(j)共有5种类别none,dontcare,span,inform,refer。其中:none代表当前槽位在本轮没有槽值;dontcare代表当前槽位在本轮的槽值可以是任意的。后面的三种就是文献 5 中的复制机制:span代

33、表槽值通过跨度预测填充;inform代表槽值存在于系统发出的回答中;refer指槽值与先前存在槽位的槽值相同,即共指现象。槽位判决门是一个可训练的线性网络,它的输入是rDSt,因此在轮次t,所有槽位在5种类别上的概率分布是:Pgatet(r?DSt)=softmax(Wgate r?DSt+bgate)R5 N(7)2.4预测由于采用三重复制机制,因此预测模块分为:基于跨度的值预测(Span-based Value Prediction)、系统告知的值预测(System Informed Memory for Value Prediction)以及共指消融的槽位信息存储(DS Memory f

34、or Coreference Resolution)。2.4.1基于跨度的值预测本文为每一个槽单独设计一个线性分类器,使用上下文经过BERT编码之后的语义向量作为当前轮次的输入,最后连接两个 Softmax 层用来预测起始和结束位置。对于每一个domain(i),slot(j)有:DS(i,j)t,DS(i,j)t=Wspanr1t,r2t,rmaxt+bspan(8)pDS(i,j)t,start=softmax()DS(i,j)t(9)pDS(i,j)t,end=softmax()DS(i,j)t(10)采用交叉熵作为损失函数,可以得到:Lspan=-t=1T DS(i,j)DSlb()y

35、spant,startTpDS(i,j)t,sart-t=1T DS(i,j)DSlb()yspant,endTpDS(i,j)t,end(11)其中:DS代表所有域槽对的集合;yspant,start和yspant,end分别是第t轮经过独热编码后的始末标签。2.4.2系统告知的值预测定义一个系统缓存It=I1t,I2t,INt存储当前轮次t内系统告知的所有槽值。当用户使用肯定的隐式表达时,使用这种复制方法(例如图 1 中的 restaurant-name,复制方式是informed,槽值填充为cambridge chop house)。2.4.3共指消融的槽位信息存储第三种复制方式利用DS

36、作为存储来消解共指即将对话出现过的槽位储存下来,利用一个线性分类器预测当前槽位指向哪一个先前已被填充的槽位,如果没有找到就填充为none。该线性分类器的输入为r?DSt,被指向的槽位概率分布为:Prefert(r?DSt)=softmax(Wrefer r?DSt+brefer)R()N+1 N(12)采用交叉熵作为损失函数,可以得到:Lrefer=-t=1T i=1Nlb()yrefert,iTprefert,i(13)其中:yrefert,i是第t轮第j个槽位经过独热编码后的共指标签;prefert,i是式(12)槽位概率分布的第j个分量即对应共指标签的预测值。3 学习最优样本权重策略 学

37、习策略能够帮助训练得到一个性能更好的模型。传统的课程学习分为预定义和自动两种,这两者所需的计算资源都十分昂贵。自动课程学习例如学生-教师模型使用强化学习寻找数据集合理的分布。在实际的场景中,由于数据集较大,动作空间(Action Space)也会很大,因此这一训练过程所需的资源十分庞大。预定义的课程学习例如文献 19 中使用人工规则和模型规则相结合的难度测量器(Difficulty Measurer)作为预习模块来训练对话状态追踪模型,虽然得到了不错的效果,但所耗费的资源仍然很昂贵,在实际的场景中很难达到类似的效果。本文采用学习最优样本权重的方法,它在训练过程中动态调整样本的权重以加速模型的收

38、敛,并且不会增加模型的参数。假定训练集样本(xi,yi)Ni=1,其中x RD,y ,并且在参数网络输出为()xi|时,损失函数为L。因此当使用小批次随机下降时参数的更新公式是:t+1=t-1Mj=1MtL()()xj|t,yj(14)其中:是学习率;M是批次样本数量;t是梯度更新的次数。1433第 43 卷计算机应用由式(14)可知,每个样本的权重都是 1,因此每一个样本在参数更新时的作用一样。但实际在模型的训练过程中,不同样本的贡献不同,学习最优样本权重的思想就是通过分配给样本不同的权重来帮助模型更好地训练。因此参数更新公式可以修改成如下形式:t+1=t-1Mj=1MwtjtL()()xj

39、|t,yj(15)在文献 20 中选取了损失函数下降最快的方向作为最优样本的衡量,最终得到了:arg maxw WTt(16)s.t.wj 0,j=1Mwj=M;j=1,2,M 其中:W=|w1w2wM;t=|tL()()x1|t,y12tL()()x2|t,y22tL()()xM|t,yM2。这是一个二次规划问题,可以使用优化算法如拉格朗日乘子法进行求解。对于对话状态追踪来说,槽位分类问题是接下去任务的基础,因此本文对于槽位判决门应用了学习最优样本权重的方法,可以得到槽位判决门的损失函数:Lgate=1Mj=1MwjLj;Lj=-t=1Ti=1Nlb()ygatet,iTpgatet,i(1

40、7)其中ygatet,i是本轮经过独热编码后的对应域槽对标签。4 实验与结果分析 4.1数据集本文实验所用的数据集是 MultiWOZ 2.3(Multi-domain Wizard-of-OZ 2.3)21和 WOZ 2.0(Wizard-of-OZ 2.0)22。MultiWOZ 2.3 是 一 个 多 领 域 多 轮 对 话 的 数 据 集,它 在MultiWOZ 2.1的基础上进一步优化了数据集,修改了原先不完整和错误的注释并增加了共指的注释,提升了很多模型的性能。MultiWOZ 2.3 涵盖了 7 个领域train,restaurant,hotel,taxi,attraction,

41、hospital,police,域槽对共有 35 个,多领域对话超过 10 000 组。由于数据集的验证集和测试集都不含hospital与 police两个领域,因此本文在训练过程中只使用 5个领域,包含 30个域槽对。WOZ 2.0是一个单领域的相对较小的数据集,它只包含1 200个参观域的单个域对话,是一个相对简单的任务。4.2评价标准本文采用联合目标准确率(Joint Goal Accuracy)作为评价标准。联合目标准确率定义为数据集中每一轮的三元组都预测正确的对话轮次的比率,并且在每一回合只有全部的domain,slot,value 三元组都被正确预测时才认为对话状态预测正确,因此联

42、合准确率是一个具有挑战性的指标。需要注意,在实际操作时每一轮一般都只有一个或几个槽位被提及,本文模型将那些不需要填充值的槽位填充为none,而不是什么都不填。4.3训练为了方便与其他模型进行对比,本文采用的预训练模型是 BERT-base-uncased transformer23,优 化 器 选 用 AdamW(Adam Weight decay optimizer),学习率设置为10-5,并且应用预热和线性衰退策略。由于采用的是三重复制机制,所以使用文献 5 中计算损失函数的公式:L=0.8Lgate+0.1Lspan+0.1Lrefer(18)其中:Lgate来自式(17),Lspan来

43、自式(11),Lrefer来自式(13)。需要注意的是,在评估单领域时没有共指现象,总的损失函数将只包含前两项且第二项的系数变为0.2。本文对模型细节进行了优化:1)测试了槽位判决门使用一个线性分类器判断所有槽位和为每一个槽位设计一个分类器对准确率的影响,发现前者的准确率更高,因此消融实验中模型带有SCE的都是前者的做法,而LOW为了方便对比采用的是后者的做法。2)由于模型主要包含 SCE和 BERT,而 SCE的参数随机初始化,因此与 BERT 共用一个优化器并不合适,所以本文在实验中设置了两个优化器分别更新两个模型的参数。在训练过程中若显存不足时,可以使用梯度累计的方法变相增大批次。具体做

44、法是固定输入序列长度为180,迭代轮次为10,批次为48,使用一块RTX3090训练所有模型。4.4实验结果表 1、2将本文模型与其他对话状态追踪方法在数据集MultiWOZ 2.3 和 WOZ 2.0 上进行了对比。其中:TripPy*是TripPy 源码在 Transformers 版本为 4.12.5,PyTorch 版本为1.9.0 下运行的结果;其他模型的数据则是原论文提供在Github网站上代码的测试结果。在实验过程中,模型的改变以及学习最优样本权重策略的加入并没有导致训练时间的大幅度增加。实验结果表明,本文模型SCEL-DST取得了更高的联合目标准确率,在 MultiWOZ 2.

45、3 数据集上与相同条件下的TripPy相比提升了1.6个百分点,在WOZ 2.0数据集上 与 AG-DST(Amendable Generation for Dialogue State Tracking)相比提升了 2.0个百分点。表1MultiWOZ 2.3数据集上不同模型的联合目标准确率对比单位:%Tab.1Comparison of joint goal accuracies of different models on MultiWOZ 2.3 datasetunit:%模型TRADESUMBTCOMERSOM-DST联合目标准确率49.252.950.255.5模型SimpleTO

46、DSAVNTripPy*SCEL-DST联合目标准确率51.358.061.663.2表2WOZ 2.0数据集上不同模型的联合目标准确率对比单位:%Tab.2Comparison of joint goal accuracies of different models on WOZ 2.0 datasetunit:%模型SUMBTGLADGCE联合目标准确率91.088.188.5模型TripPy*AG-DSTSCEL-DST联合目标准确率90.991.493.41434第 5 期石利锋等:基于槽位相关信息提取的对话状态追踪模型图3是SCEL-DST在MultiWOZ 2.3测试集上的一些预测

47、例子,由于篇幅问题,图 3 最多只选取了每段对话的前 3 轮(第一段用户会话也算1轮)。在图3可以很清楚看到对于用户 会 话 中 显 式 出 现 的 槽 值 如train,departure,norwich,train,day,monday,hotel,area,north 等,模型往往能准确地预测;对于那些隐式的槽值如 restaurant,area,east,有时也能给出比较可靠的预测。4.5LOW与SCE的作用分析利用消融实验检验LOW与SCE在模型中的作用。由表3 可知,对于 MultiWOZ 2.3 数据集来说,SCE 起到的作用要大于 LOW,而对于 WOZ 来说 LOW 的效果又

48、明显比 SCE更好。4.5.1SCE的影响本文引入 SCE的原因是希望利用它学习槽位之间的关联信息。对于单领域来说,由于槽位数量比较少,槽位之间的关联信息和任务都比较简单,因此SCE对模型性能也有不错的提升。对于多领域来说,从图 4 中可以看到,加入 SCE后的 TripPy 在除了 restaurant 领域之外的 4 个领域上都获得了提升,其中train和attraction领域的提升相对较大(分别为0.91与 0.76个百分点)。在观察这几个领域槽位特点之后可以发现,train、attraction和taxi领域的槽位几乎全部都能在其 他 领 域 中 找 到 类 似 的 槽 位(比 如

49、train-leaveAt 与 taxi-leaveAt,attraction-area、hotel-area 和 restaurant-area)。说 明SCE确实学到了这些槽位之间的关系,这些信息可以帮助它们更好地分类和跨度预测(见图 5)。相比之下,taxi领域提升不明显的原因是它的准确率本就远高于其他几个领域,继续提升的空间相对有限。而restaurant与hotel领域虽然也能与其他领域一样找到类似的槽位,但它们的槽位数量都很多(restaurant 有 7 个,hotel有10个),本文猜想是因为过多数量的槽位影响了模型的判断。原因在于槽位编码是按照 domain-slot的形式送

50、入BERT,由于槽位编码的BERT参数固定,因此经过编码之后的输出也是固定的,无法更新。同领域槽位数量过多,前缀domain出现的频次也就越高,编码后输入到SCE的相似的向量也就越多,SCE模型可能无法精确学习到这些槽位与其他领域槽位之间的关系。举例来说,对于hotel-area,与它相近的除了 restaurant-area与 attraction-area,还有本身的 9个其他hotel-slot(如hotel-type、hotel-stars等)。为了验证上述猜想,本文计算了 hotel 领域的每一个槽位的槽位准确率。在图 6中可以看到那些在其他领域能找到 类 似 槽 位 的 如 hto

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服