1、doi:10.12052/gdutxb.220122改进判别式深度Dyna-Q的任务对话策略学习方法戴彬1,曾碧1,魏鹏飞1,黄永健2(1.广东工业大学计算机学院,广东广州510006;2.广州轩辕研究院有限公司广东广州510000)nQ摘要:作为任务型对话系统中的关键一环,对话策略可以通过判别式深度Dyna-Q框架训练得到。然而,该框架在直接强化学习阶段采用原始的深度Q网络方法学习对话策略,在世界模型方面采用多层感知机作为模型的基本结构,导致对话策略的训练效率、性能和稳定性降低。本文提出了一种改进判别式深度Dyna-Q的任务对话策略学习方法。在改进后的直接强化学习阶段,利用噪声网络改进了智能
2、体的探索方式,同时将竞争网络的双流架构、双Q网络与步自举法三者相结合,优化了值的计算过程。在世界模型方面,设计了一种基于软注意力的模型替代多层感知机结构。实验结果表明,本文提出的方法在对话成功率、平均对话轮数以及平均奖励3个指标上均优于现有的最佳结果,最后本文通过消融分析和鲁棒性分析,进一步验证了方法的有效性。关键词:任务型对话系统;对话策略学习;强化学习;用户模拟器中图分类号:TP391文献标志码:A文章编号:10077162(2023)04000909A Task-oriented Dialogue Policy Learning Method of ImprovedDiscriminat
3、ive Deep Dyna-QDaiBin1,ZengBi1,WeiPeng-fei1,HuangYong-jian2(1.SchoolofComputerScienceandTechnology,GuangdongUniversityofTechnology,Guangzhou510006,China;2.GuangzhouXuanyuanResearchInstituteCo.,Ltd.,Guangzhou510000,China)Abstract:Asapivotalpartofthetask-orienteddialoguesystem,dialoguepolicycanbetrain
4、edbyusingthediscriminativedeepDyna-Qframework.However,theframeworkusesvanilladeepQ-networkmethodinthedirectreinforcementlearningphaseandadoptsMLPsasthebasicnetworkofworldmodel,whichlimitstheefficiencyandstabilityofthedialoguepolicylearning.Inthispaper,wepurposeanimproveddiscriminativedeepDyna-Qmetho
5、dfortask-orienteddialoguepolicylearning.IntheimproveddirectRLphase,wefirstemployaNoisyNettoimprovetheexplorationmethod,andthencombinethedual-streamarchitectureofDuelingNetwork,Double-QNetworkandn-stepbootstrappingtooptimizethecalculationoftheQvalues.Moreover,wedesignasoft-attention-basedmodeltorepla
6、cetheMLPsintheworldmodel.Theexperimentalresultsshowthatourproposedmethodachievesbetterresultsthanotherbaselinemodelsintermsoftasksuccessrate,averagedialogturnsandaveragereward.Wefurthervalidatetheeffectivenessofproposedmethodbyconductingbothablationandrobustnessanalysis.Key words:task-orienteddialog
7、uesystem;dialoguepolicylearning;reinforcementlearning;usersimulator当前消费市场上已存在许多技术成熟的语音助手产品,例如苹果Siri、微软小娜、小爱同学等。这些产品内置了精心设计的对话系统,用户可直接使用自然语言与其交互,完成一系列指定的任务。与开放域对话系统不同的是,任务对话系统聚焦于完成用户指定的一个或多个领域的任务。当前任务对话系统的研究主要使用管道方法(PipelineMethod)和端到端方法(End-to-EndMethod)1。其中,第40卷第4期广东工业大学学报Vol.40No.42023年7月Journal o
8、f Guangdong University of TechnologyJuly2023收稿日期:2022-07-20基金项目:国家自然科学基金联合基金资助重点项目(U21A20478);广东省自然科学基金资助项目(2019A1515011056);顺德区核心技术攻关项目(2130218003002)作者简介:戴彬(1997),男,硕士研究生,主要研究方向为自然语言处理、任务型对话系统和强化学习通信作者:魏鹏飞(1991),男,助理实验师,主要研究方向为任务型对话系统和强化学习,E-mail:管道方法将任务对话系统分解成以下4个部分:自然语言理解(NaturalLanguageUndersta
9、nding,NLU)、对话状态跟踪(DialogStateTracking,DST)、对话策略学习(DialogPolicyLearning,DPL)和自然语言生成(NaturalLanguageGeneration,NLG)。端到端方法采用某种框架将管道方法中的部分或所有模块统一起来,根据用户的输入直接输出结果。然而,端到端方法面临着相当多的挑战,例如存在着难以与数据库相结合等问题,因此该方法仍处于探索阶段。对话策略作为管道方法中的关键一环,根据当前对话状态选择下一步要执行的动作,一般采用强化学习方法训练得到23。强化学习可分为基于值函数的方法和基于策略的方法4。在基于值函数的方法中,Mni
10、h等5将卷积神经网络(ConvolutionalNeuralNetworks,CNN)与传统的Q学习(Q-Learning)方法相结合,提出了深度Q网络(DeepQ-Network,DQN)。经典的基于策略的方法有演员评论家算法(Actor-Critic),它由演员和评论家两个模型组成:评论家模型用于更新价值函数,演员按照评论家引导的方向更新,以减小回报方差。Haarnoja等6在演员评论家算法的基础上进一步提出了软演员评论家(SoftActorCritic)算法,该算法引入了最大熵的概念,在确保训练稳定性的同时进一步鼓励探索。由于训练对话策略需要海量的数据,智能体需要与真实用户不断交互,而该
11、过程所需成本十分高昂,单独采用直接强化学习的方法只能满足小规模任务的需要。一种常见的解决思路是:设计一个由真实对话数据训练得到的用户模拟器与智能体进行交互78。2018年微软研究院提出了一种基于世界模型的方法910,该方法通过构建世界模型来训练智能体,在保证低成本的同时获取到海量的对话数据。然而,对话本身的复杂性和用户模拟器设计时产生的偏差11,给对话策略学习带来了挑战。为了应对该挑战,Peng等9将传统的Dyna-Q框架12与深度学习相结合,提出了深度Dyna-Q框架(DeepDyna-Q,DDQ)。该框架将世界模型视为一个可学习的环境模型,用于产生模拟经验以弥补真实经验在数量上的不足。而真
12、实经验一方面被用于训练智能体,另一方面被用于改进世界模型,使其表现更趋于真实用户。由于DDQ的性能深受模拟经验质量高低的影响,受对抗生成网络13的启发,Su等10在DDQ的基础上进一步提出了判别式深度Dyna-Q(DiscriminativeDeepDyna-Q,D3Q)框架。该框架在规划阶段加入了基于循环神经网络(RecurrentNeuralNetwork,RNN)的鉴别器,用于筛选出高质量的模拟经验,因而避免了采用依赖于经验的启发式方法,从而提高了训练的稳定性。然而D3Q框架仍存在着许多改进的空间,为了进一步优化对话策略的学习过程,本文提出了一种改进判别式深度Dyna-Q的任务对话策略学
13、习方法。本文的主要贡献有以下几点:Q(1)在直接强化学习阶段,本文采用噪声网络改进了智能体的探索方式,同时结合双流架构、双Q网络与n步自举法优化了 值的计算过程。(2)设计了一种基于软注意力机制的世界模型,通过提高模拟经验的质量,增强了对话策略学习的效率与鲁棒性。(3)与各基准模型相比,本文提出的模型取得较优结果。最后通过消融分析和鲁棒性分析证明了本文方法的有效性。1 改进判别式深度Dyna-Q的任务对话策略学习方法如图1所示,本文采用的对话系统框架包含6个模块。自然语言理解真实经验模拟经验鉴别器世界模型自然语言生成用户语义帧对话管理对话状态追踪状态表示对话策略学习系统动作(策略)图1本文采用
14、的对话系统框架Fig.1Illustrationofdialoguesystemframework(1)自然语言理解模块:采用文献14提出的基于双向RNN-LSTM模型,用于识别用户的意图以及提取相关的槽;(2)对话状态追踪模块:采用文献15提出的神经信念跟踪(NeuralBeliefTracking,NBT)框架,用于跟踪对话状态;(3)对话策略学习模块:采用本文提出的任务对话策略学习方法,根据当前的状态产生接下来的动作;(4)自然语言生成模块:采10广东工业大学学报第40卷用Wen等16提出的基于语义条件的长短期记忆(LongShort-TermMemory,LSTM)模型,用于将对话动作
15、转换成自然语言;(5)世界模型模块:采用基于软注意力的世界模型,用于模拟用户和提供奖励;(6)鉴别器模块:采用Su等10提出的基于循环神经网络的鉴别器,用于控制模拟经验的质量。图2(a)展示了本文提出的智能体模型结构,图2(b)展示了对话策略学习的步骤:(1)初始化:采用模仿学习和监督学习分别初始化策略模型和软注意力世界模型;(2)改进后的直接强化学习:首先收集智能体与用户交互所产生的真实经验,然后采用改进后的直接强化学习方法训练智能体;(3)世界模型学习:使用真实经验训练软注意力世界模型;(4)鉴别器学习:使用真实经验训练鉴别器,以鉴别出高质量的模拟经验;(5)控制规划:智能体使用高质量的模
16、拟经验改进对话策略。(a)智能体模型(b)对话策略学习步骤真实对话数据模仿学习监督学习世界模型学习策略模型执行动作控制规划鉴别器用户改进后的直接强化学习真实经验鉴别器学习软注意力世界模型优势V(价值函数)计算Q 值价值网络优势网络噪声线性层噪声线性层噪声线性层噪声线性层特征提取网络对话状态图2对话策略学习步骤及对话智能体的模型Fig.2Theprocessofdialoguepolicylearningandthemodelarchitecturesofthedialogagent 1.1 改进直接强化学习在该阶段,本文介绍改进后的直接强化学习方法。1.1.1噪声网络sQ在D3Q框架中,智能体
17、观察到当前的对话状态,根据贪婪策略选择动作:以的概率随机选择一个动作,以1的概率遵循贪婪策略选择 值最大的动作。然而贪婪策略依赖于启发式方法:需要在训练前期设定较高的值,促使智能体尽快探索到最优动作以提高探索效率。到了训练后期则逐步缩小值,以求取得最大化奖励。然而,智能体又因缺乏探索而导致局部最优的问题。为了解决探索与利用之间的矛盾,本文参考Fortunato等17提出的噪声网络(NoisyNet),通过在参数空间中添加噪声参数(该参数与智能体一同被训练),以参数学习的方式代替依赖于经验的启发式方法,改善了智能体探索方式,使智能体能够在不同的训练阶段实现探索与利用之间的平衡。pq考虑一个输入维
18、度为、输出维度为 的神经网络线性层:y=wx+b(1)x Rpw Rqpb Rq式中:为线性层的输入,为权重矩阵,为偏置。w+wwb+bbwb那么噪声线性层定义如下:用和代替式(1)中的权重矩阵 和偏置,得到式(2)。y=(w+ww)x+b+bb(2)w Rqp,b Rq,w Rqp,b Rqw Rqp,b Rqpiqj式中:为按元素乘法,均为可学习的参数;采用分解高斯噪声(FactorizedGaussiannoise)的方法生成,将个单位的高斯变量 作为噪声输入,个单位的高斯变量 作为噪声输出,如式(3)(4)所示。wi,j=f(i)f(j)(3)bj=f(j)(4)f=sgn(x)|x|
19、式中:。1.1.2竞争双流架构本文引入了Wang等18在竞争网络中提出的双第4期戴彬,等:改进判别式深度Dyna-Q的任务对话策略学习方法11|A|A|A|Q流架构,旨在提高智能体的训练效率。具体来说,双流架构的底层网络与DQN相同,均使用线性层提取特征,但双流架构在网络顶层处分离出2个流:一个流负责输出状态价值,另一个流负责输出具有维大小的优势函数(为动作集的大小),最后合并两者输出 值。AsaAA如式(5)所示,优势函数 体现了智能体处在状态 下执行动作 所产生的影响:若 值为正,表明执行该动作能够带来正面影响,是优于平均水平的选择;若 值为负则相反。A(s,a)=Q(s,a)V(s)(5
20、)Q(s,a)saV(s)s式中:为状态动作价值函数,代表在状态 下选择动作 所带来的价值,为价值函数,代表状态的价值。在定义了优势函数之后,动作价值函数如式(6)所示。Q(s,a;,)=V(s;,)+(A(s,a;,)1|A|aA(s,a;,)(6)a式中:为网络参数,和 为2个流各自的参数,为下一时间步的动作。1.1.3双Q网络QQQQD3Q框架采用原始DQN方法估计值,该方法使用同一个网络进行值的计算和动作的选取,从而易产生过度估计问题,即估计的值大于真实的值,并且估计的偏差随着动作集增大而增大,进而产生次优策略。QQaQ本文采用了文献19提出的双Q网络,利用原始方法中已有的2个网络 和
21、,在每次更新时一个网络负责根据策略生成动作,另一个网络用于计算其值,从而有效缓解了原始DQN所带来的过度估计问题。引入双Q网络后的时序差分目标(Temporal-DifferenceTarget,TD)如式(7)所示。YDDQN=r+Q(s,argmaxaQ(s,a;Q);Q)(7)r 0,1saQQQQ式中:为奖励,为折扣因子,为下一时间步的状态,为下一时间步的动作,为网络 的参数,为目标网络的参数。1.1.4n步自举法原始的DQN方法采用单步更新方法,即仅根据下一时间步的即时收益和状态估计值进行自举更新。受Sutton等20的启发,本文采用n步自举法改进单步Q学习,通过调节参数n解决强化学
22、习中偏差与方差的取舍问题。本文将n步自举法与双Q网络相结合得到n步DDQN的TD,如式(8)所示。YnDDQN=R(n)t+(n)tQ(st+n,argmaxaQ(st+n,a;Q);Q)(8)tst+nt+nR(n)tt+nR(n)t=n1k=0(k)tRt+k+1式中:为时间步,为个时间步的状态,为 后 续个 时 间 步 累 积 的 折 扣 奖 励,。最后给出直接强化学习的损失函数,如式(9)所示。L(Q)=EE(s,a,r,s)BuR(n)t+(n)tmaxaQ(st+n,a(st+n),;Q)Q(s,a,;Q)2(9)a(st+n)=argmaxaAQ(st+n,a,;Q)式中:。1.
23、2 世界模型学习Wang等18认为,在大多数状态下不同动作的选择并不会对最终的结果产生至关重要的影响,而某些状态却直接关系到任务的成功与否。考虑到单层感知器的学习能力存在不足,受文献21的启发,本文设计了一种基于软注意力机制的世界模型,使其聚焦于关键特征的提取,避免受到不重要信息的影响,从而提升世界模型的性能和学习效率。Ms基于软注意力机制的世界模型如图3所示,每次对话时,世界模型将当前的对话状态 以及上一个特定任务网络层用户回复 奖励 中止信号相加运算与最大池化运算注意力层系统动作aoo1ot1a1rz对话状态shShA模拟经验世界模型鉴别器真实经验Bhigh(s,a,r,s)Bsim(s,
24、a,r,s)0:低质量1:高质量对话上下文输入层输出层LSTM图3世界模型及鉴别器的模型结构Fig.3Themodelarchitecturesoftheworldmodelandthediscriminator12广东工业大学学报第40卷aorzozr系统动作(用独热向量表示)作为输入,输出模拟的用户回应、奖励 和二元变量(用于标识对话是否结束)。其中,输出用户回应 和二元变量 为分类任务,生成奖励 为回归任务。sahShA具体来讲,首先将对话状态 和动作 输入一个注意力层(AttentionLayer),得到各自的编码信息向量和,如式(10)(11)所示。hS=sigmoid(f1(s)t
25、anh(f2(s)(10)hA=sigmoid(f1(a)tanh(f2(a)(11)f()hShAMaxpoolingh式中:为多层感知机,为按元素乘法。前者为软注意力权重,后者为非线性特征变换。接着对2个编码信息和进行加权平均,再对二者施加最大池化函数以提取关键信息。最后将加权平均后的编码信息与经过最大池化函数的编码信息相加,得到最终的融合信息向量,如式(12)所示。h=1|V|VS,AhV+Maxpooling(hS,hA)(12)horz最后,将融合信息向量 作为多任务深度神经网络(见图3左侧部分)的输入,如式(13)(15)所示,分别输出用户回应、奖励 和二元变量。r=Wrh+br(
26、13)o=softmax(Woh+bo)(14)z=sigmoid(Wzh+bz)(15)Wr,Wo,Wzbr,bo,bzsoftmax(),sigmoid()式中:为权重矩阵,为偏置,为激活函数。1.3 鉴别器学习DPeng等9提出的DDQ框架在规划阶段采用启发式的方法调整规划步数,但该方法依赖调参的经验,使得智能体的训练过程缺乏稳定性,从而影响智能体的性能。本文参考Su等10提出的方法引入鉴别器,旨在筛选出高质量的模拟经验以训练对话策略。DMx如图3右侧所示,鉴别器D基于长短期记忆网络(LSTM)模型22,将对话编码成一个特征向量,然后通过多层感知机将特征向量映射为概率,该概率指示了某段对
27、话由真实用户产生的可能性。鉴别器的输入分别为世界模型生成的模拟经验和真实经验,其目标函数如式(16)所示。YD=1mmi=1logD(x(i)+log(1D(M()(i)(16)m式中:为批量(batch)大小。1.4 控制规划BrealBsimMBhighD在该阶段,本文定义3种重放缓存;重放缓存用于存储真实经验;重放缓存用于存储世界模型生成的模拟经验;重放缓存用于存储鉴别器 筛选出的高质量模拟经验。o1在对话开始之前,从外部数据库中均匀抽取用户目标G=(C,R)4,其中C为约束集,R为请求集,前者包含语义槽及其槽值,而后者只含语义槽。以预定电影票情景为例,约束可以是语义槽“movienam
28、e”和“numberofpeople”及其对应的槽值“Joker”和“3”,而请求可以为语义槽“price”和“starttime”等。首个用户动作 既可以是请求动作(request)也可以是告知动作(inform)。请求动作由一个请求和多个约束组成,分别从请求集和约束集中抽样得到,而告知动作只含约束。最后NLG模块将用户动作转换成自然语言。例如请求动作request(theater;moviename=TheBatt-leatLakeChangjin;city=Zhuhai)被转换为自然语言“珠海市哪一个电影院正在上映电影长津湖”。(s,a,r,s)BsimBhighKBhighK抽取到用户
29、目标后,智能体与世界模型围绕着用户目标进行交互并生成一系列模拟经验,其中模拟经验由四元组表示。然后将该模拟经验放进重放缓存中。只有处在鉴别器阈值区间(该项参数设置与D3Q一致)内的模拟经验才被放入重放缓存中。以上过程不断重复,直至 个高质量模拟经验被添加进重放缓存为止,其中 为预先定义的规划步数。本文提出的改进判别式深度Dyna-Q的任务对话策略学习方法的具体流程如算法1所示。算法算法1改进判别式深度Dyna-Q的任务对话策略学习方法1.采样得到一个噪声网络,其中,为噪声网络随机变量的集合数DQ(s,a,;Q)M(s,a;M)2.使用真实对话语料 预训练和Q Q3.初始化BrealBsimBh
30、igh4.初始化真实经验重放缓存,将模拟经验重放缓存,高质量模拟经验重放缓存,初始化为空缓存e=1:E5.fordo6./*直接强化学习部分开始*/au7.用户执行动作 以开始对话s8.生成初始对话状态9.采样得到一个噪声网络 s10.while 不是最终状态时don=1:N11.fordoa arg maxaAQ(st+n,a,;Q)12.选择动作aaur13.执行动作,收到用户回应 和奖励第4期戴彬,等:改进判别式深度Dyna-Q的任务对话策略学习方法13st+n14.更新对话状态至(s,a,r,au,st+n)Breal15.保存五元组至s=st+n16.17.endwhileBreal
31、(s,a,r,au,st+n)18.从中随机抽样得到样本Q19.公式(9)更新参数20./*直接强化学习部分结束*/21./*世界模型学习部分开始*/Breal(s,a,r,au,st+n)22.从中随机抽样得到样本G23.经过多任务学习更新网络24./*世界模型学习部分结束*/25./*鉴别器学习部分开始*/Breal(s,a,r,au,st+n)26.从中随机抽样得到训练样本27.式(16)更新鉴别器网络28./*鉴别器学习部分结束*/29./*控制规划部分开始*/k=1:K30.fordot=FALSE31.,l=0G32.抽样得到用户目标Gau33.从 中抽样得到用户动作s34.生成初
32、始对话状态35.采样得到噪声网络 jFALSEl L36.while 为且don=1:N37.fordoa arg maxaAQ(st+n,a,;Q)38.选择动作aaurz39.执行动作,世界模型返回用户回应、奖励 和二元变量st+n40.更新对话状态至discriminator_check=TRUE41.if:(s,a,r,au,st+n)Bhigh42.保存五元组至l=l+1,s=st+n43.44.endwhileBhigh(s,a,r,au,st+n)45.从中随机抽样得到样本Q46.式(9)更新参数47.endfor48./*控制规划部分结束*/CQ Q49.每 步更新目标网络网络
33、50.endfor 2 实验 2.1 数据集本文实验采用电影票预定数据集(MovieBookingDataset),其对话数据在亚马逊众包平台(AmazonMechanicalTurk)收集得到,再由Li等23手工标记,如表1所示。该数据集包含280场对话、11个意图和16个语义槽,每场对话的平均轮数约为11。其中,语义槽分成了告知槽和请求槽两类,前者表示用户提供的约束信息,后者表示用户向智能体问询的信息。例如语义槽“numberofpeople”是一个告知槽,表示用户告知智能体需要预定多少张电影票,因而电影票的数量即为用户提供的约束信息。又例如语义槽“closing”是一个请求槽,表示用户向
34、智能体问询电影院的闭店时间。此外,大部分语义槽既可以是告知槽,也可以是请求槽。表1MovieBooking数据集中的意图和语义槽Table1MovieBookingdatasetannotationschema意图request,inform,deny,confirm_question,confirm_answer,greeting,closing,not_sure,multiple_choice,thanks,welcome语义槽city,closing,date,distanceconstraints,greeting,moviename,numberofpeople,price,star
35、ttime,state,taskcompelete,theater,theater_chain,ticket,video_format,zip 2.2 评估指标评估任务型对话系统主要考察对话成本和任务成功率两方面,本文选取平均对话轮数、任务成功率和平均奖励作为评估指标。本文定义用户或用户模拟器发出对话,智能体根据对话内容进行回复为一轮对话。较高的平均对话轮数反映了较高的对话成本,但较少的对话轮数并不能表明智能体就能很好地完成任务,因此本文选用任务成功率作为第二项评估指标。本文定义当且仅当成功预约电影票且智能体满足用户目标中的所有约束条件时,方可视为任务成功。对话成功率为任务成功的对话场数与总对
36、话场数之比,该指标直接反映了对话系统解决用户问题的能力。本文定义对话成功时智能体收到2L的正值奖励,反之收到L的惩罚。其中L为最大对话轮数,若对话轮数超过L,则判定任务失败。为方便后续实验的对比分析,本文L值的设置与DDQ和D3Q保持一致。此外,智能体在每轮对话中还会收到值为1的惩罚,刺激智能体进行尽可能短的对话。平均奖励为每场对话所获奖励的和与总对话场数之比。该指标综合反映了对话成本和任务成功率,因此本文选用平均奖励作为第三项评估指标。2.3 基准模型为了验证模型的有效性,本文参考文献10设计了以下4种智能体学习方法作为基准模型进行比较。(1)DQN(1):通过DQN方法训练得到的智能体,即
37、只经过原始的直接强化学习训练得到。(2)DQN(K):通过DQN方法训练得到的智能体,该基准模型使用了比DQN(1)智能体多K倍的真实经验进行训练。此处DQN(K)的性能被视为DDQ(K)智能体和D3Q(K)智能体的上限,也可将其14广东工业大学学报第40卷视为完美模仿真实用户行为的理想模型。(3)DDQ(K):通过DDQ方法训练得到的智能体,该基准模型经过了预训练处理,采用原始的直接强化学习方法训练,使用原始的世界模型,并经过了原始的规划阶段。此处使用不同的K值得到不同版本的DDQ(K)。(4)D3Q(K):通过D3Q方法训练得到的智能体。该基准模型经过预训练处理,采用原始版本的直接强化学习
38、方法,使用原始的世界模型,经过鉴别器学习以及控制规划得到。2.4 实验设置本文的实验环境配置如下:代码采用版本为1.9.0+cu111的PyTorch深度学习框架编写,所使用的GPU为GoogleColab所提供的NVDIATeslaP100PCI-E16GB,本文实验所使用的超参数如表2所示。2.5 模拟评估在模拟评估中,本文采用Li等8提出的用户模拟器进行实验。在每轮对话中,用户模拟器模仿真人用户的反馈,并在对话结束后发出奖励信号。虽然用户模拟器与真实用户之间存在着不可避免的偏差,但是模拟评估能够在不耗费大量成本的情况下,对本文提出的模型进行详细的分析,同时降低复现实验结果的难度。E实验结
39、果如表3所示,该表展示了实验轮数 为100、200、300时每个基准模型的任务成功率、平均奖励和平均对话轮数(以上3个指标的数据为3次实验结果的平均值)。本文将基准模型DQN(1)、DQN(5)、DDQ(5)和D3Q(5)与本文提出的模型进行对比。表3各智能体在不同实验轮数中的实验结果(实验数据为3次实验的平均值)Table3Resultsofdifferentagentsattrainingepoch(eachnumberisaveragedover3runs)智能体任务成功率/%平均奖励平均对话轮数E=100E=200E=300E=100E=200E=300E=100E=200E=300D
40、QN(1)37.3358.6759.338.1818.9720.1327.9624.8724.13DQN(5)75.3374.0082.0044.6143.6955.0613.5712.4913.35DDQ(5)49.3364.0060.677.9629.3130.5724.4821.4516.73D3Q(5)50.6764.6770.0012.6730.5736.4819.0616.0517.04本文模型73.3376.6779.6741.5345.4448.2716.2715.1212.67实验结果表明,当训练进行至第100轮时,本文提出的模型在3个指标中的表现仅次于DQN(5),在任务成
41、功率、平均奖励两项指标中远高于D3Q(5)和DDQ(5),而DQN(1)的各项指标表现最差。当训练进入到第200轮时,本文提出的模型在任务成功率和平均奖励两项指标上达到了最优,在平均对话轮数方面,本文提出的模型同样优于除DQN(5)外的其他模型。这说明了只采用直接强化学习方法的模型已远远无法满足任务对话系统的需求。本文模型采用了双流架构、优势函数计算了每个动作产生的影响,为后续动作的选择提供了指引,从而提高了智能体的训练效率。同时基于软注意力机制的世界模型增强了对关键特征的提取,提高了模拟经验的质量和智能体的性能。当训练进行至第300轮时,本文提出的模型在3个指标上仍优于D3Q(5),其中任务
42、成功率高出9.67%,平均奖励高出11.79,平均对话轮数减少了4.37轮。这表明双Q网络的应用使本文模型克服了过度估计问题,避免了模型在训练末期收敛至次优策略。图4展现了不同的智能体在350轮实验中的成功率。在训练进行至第80轮之前,本文提出的模型在学习速度上低于除DQN(1)以外的其他模型。这是因为采用贪婪策略的智能体在训练初期被设定了较高的值,提高了探索效率。但噪声网络并不依赖于启发式方法,而是通过学习噪声参数来提高智能体的探索效率。在此之后至第150轮之间,学习速度显著表2实验参数Table2Experimentalparameters参数数值批量16智能体隐藏层80软注意力世界模型隐
43、藏层128鉴别器LSTM隐藏层128鉴别器多层感知机隐藏层80鉴别器阈值区间0.45,0.55规划步数5Breal重放缓存2000重放缓存Bhigh20005训练轮数350折扣因子0.9n步取值3第4期戴彬,等:改进判别式深度Dyna-Q的任务对话策略学习方法15加快。从第80轮至实验结束,本文提出的模型在任务成功率方面几乎保持在D3Q模型之上,仅次于被视为理想状态的DQN(5)模型。这意味着本文提出的模型使用少的真实经验,利用改进后的直接强化学习方法和软注意力世界模型取得了与DQN(5)模型相近的效果。值得注意的是,本文模型学习曲线周围的阴影面积显著小于DQN(1)、DQN(5)和D3Q(5
44、),这体现了n步自举法能够在保证智能体产生优异性能的同时,还保证了多次实验结果的方差处在较小区间范围内,实现了偏差与方差之间的平衡。任务成功率实验轮数0.80.70.60.50.40.30.20.1050100150200DQN(1)DQN(5)DDQ(5)D3Q(5)本文模型250300350图4模拟评估中各智能体的学习曲线Fig.4Thelearningcurvesofdifferentagentsinsimulationevaluation 2.6 消融分析在该阶段,本文进行消融分析以验证模型的有效性。本文设计了以下几种基准模型:(1)本文提出的融合双Q模型、n步自举法、竞争双流架构和噪
45、声网络的智能体。该基准模型在模拟评估中取得了最好的效果。(2)删去了噪声网络的模型:该模型采用双流架构,但仅使用线性层输出状态价值函数和优势函数,并恢复采用贪婪策略。Q(3)删去了双流架构的模型:该模型经过线性层进行特征提取,进入噪声网络后直接输出 值。QQQQQQ(4)恢复使用原方法的双Q网络模型:该模型仍存在网络 和目标网络。但此时动作的选取和 值的计算均通过网络进行,而目标网络只负责计算未来n步的 值。(5)删去了n步自举的模型:该模型只根据下一时间步的即时收益和状态估计值进行自举更新。消融分析的实验结果如表4和图5所示。在基准模型中删去噪声网络后,训练进行至第100轮时,该模型在对话成
46、功率、平均奖励和平均对话轮数3项指标上取得的结果均为全部基准模型中的最低水平。说明了仅采用传统贪婪策略的模型不仅降低了探索的效率,还缺乏对探索的刺激。从图5中可以看出,虽然该模型的表现较为平稳,维持在较小的波动范围之内,但直到训练后期,该模型的任务成功率仍然较低。表4各智能体在不同实验轮数中的消融实验结果(实验数据为3次实验的平均值)Table4Resultsofdifferentagentsattrainingepochinablationexperiment(eachnumberisaveragedover3runs)智能体任务成功率/%平均奖励平均对话轮数E=100E=200E=300E
47、=100E=200E=300E=100E=200E=300本文模型73.3376.6779.6741.5345.4448.2716.2715.1212.67恢复使用原方法62.6772.0070.6025.0937.2335.5522.2120.3321.03删去双流架构57.3370.0072.6726.1930.8340.5323.5321.7315.28删去噪声网络48.6766.6768.0017.7329.3729.7224.8521.9719.29删去n步自举60.0070.6774.0020.1836.4138.2019.1718.7714.87在基准模型中删去双流架构后,该模型
48、在训练前200轮时的学习速度在所有基准模型中并不突出,但在训练的后期(约250轮之后),该模型的任务成功率逐渐提高。这说明在删去双流架构之后,智能体在训练过程中只更新某个状态下的单个动作价值,一定程度上降低了智能体的训练效率。在基准模型中恢复使用双Q网络的原方法后,当训练进行至第100轮和第160轮时,与其他基准模型相比,该模型具有较快的学习效率。特别是训练进行至第150轮时,该模型在对话成功率、平均奖励两项指标上的表现仅次于本文提出的模型。然而在训练的中后期,该模型的任务成功率并没有明显的提升,说明过度估计问题诱使智能体错误地探索了那些实际上奖励并没有那么高的状态,使得无法收敛至较优的对话策
49、略。在基准模型中删去n步自举法后,在训练后期(第300轮之后),该模型在3个指标上取得了仅次于本文提出模型的表现,但是模型在训练前期,特别是在第60轮至第160轮期间经历了大幅的震荡。说明了n步自举法能够有效地平衡强化学习中的方差与偏差,较单步自举法取得更好、更稳定的效果。16广东工业大学学报第40卷任务成功率0.80.70.60.50.40.30.20.1实验轮数050100150200250300350本文模型恢复使用原方法删去双流架构删去噪声网络删去 n 步自举图5消融实验中各智能体的学习曲线Fig.5Thelearningcurvesofdifferentagentsinablatio
50、nexperiment 2.7 鲁棒性分析鲁棒性分析的实验结果如图6所示。训练初期时,除K=5之外的模型都存在不同程度的震荡。但是当训练进入到第180轮之后,实验各模型震荡幅度有所减缓。到了训练后期,特别是在第350轮之后,所有不同K值的模型均逐渐收敛于较高的成功率,这意味着采用不同批次的模拟经验进行训练都能够获得较高的性能,表明本文提出的模型具有较好的鲁棒性。任务成功率0.80.70.60.50.40.30.20.10实验轮数50100150200250300350K=2K=3K=5K=10K=15图6鲁棒性实验中不同K值时的学习曲线Fig.6Thelearningcurvesofourmo