CN117150023B - 一种面向智能对话系统的对话状态追踪方法 - Google Patents

一种面向智能对话系统的对话状态追踪方法 Download PDF

Info

Publication number
CN117150023B
CN117150023B CN202311406214.4A CN202311406214A CN117150023B CN 117150023 B CN117150023 B CN 117150023B CN 202311406214 A CN202311406214 A CN 202311406214A CN 117150023 B CN117150023 B CN 117150023B
Authority
CN
China
Prior art keywords
slot
dialogue
value
word
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
Application number
CN202311406214.4A
Other languages
English (en)
Other versions
CN117150023A (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.)
Jiangsu Zhimeng Intelligent Technology Co ltd
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202311406214.4A priority Critical patent/CN117150023B/zh
Publication of CN117150023A publication Critical patent/CN117150023A/zh
Application granted granted Critical
Publication of CN117150023B publication Critical patent/CN117150023B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • 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/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • 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/047Probabilistic or stochastic networks
    • 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/048Activation functions

Landscapes

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

Abstract

本发明公开了一种面向智能对话系统的对话状态追踪方法,涉及深度学习、自然语言处理技术领域,包括获取智能对话系统中的对话语句以及对话状态,并对对话语句以及对话状态进行预处理;根据预处理后的数据,结合BERT预训练模型,获取词向量特征表示矩阵;对词向量特征表示矩阵中的特征向量进行第一领域分类;对带有领域信息的槽位上下文向量进行第二状态分类,根据分类后的操作状态的标识符确定槽位对应的新槽词,根据新槽词完成对智能对话系统的对话状态追踪。本发明提高了可以相关的公开数据集的准确率,在减少数据量的同时对历史对话信息的高度提炼保存关键信息,在智能对话系统中具有良好的实用性。

Description

一种面向智能对话系统的对话状态追踪方法
技术领域
本发明涉及深度学习、自然语言处理技术领域,尤其涉及一种面向智能对话系统的对话状态追踪方法。
背景技术
对话状态追踪是任务型对话系统的重要组成部分,在任务型对话系统中,对话状态是对当前所有轮次对话信息的紧凑的表示,通常由一组槽值对组成。对话状态追踪的目标是在对话的每一轮根据用户的输入更新对话状态,从而理解用户的目标和意图。高效准确的对话状态追踪的结果对于下一步的系统反馈、对话生成具有重要的意义。
现有的基于深度学习的对话状态追踪方法大多基于三种策略:基于预定义本体、基于跨度预测和基于文本生成。基于本体的方法假定所有的槽位候选值都是给定的,这类方法实现简单且容易理解。然而,这种方法不能识别出预先定义的值以外的结果。基于跨度的预测方法通过在用户语句中标记出槽位对应的值的开始和结束位置从用户语句中提取出槽词对应的值。但是由于对话领域的多样性,很难获得足够的标注数据,导致模型泛化能力较差。随着对话轮次的不断增加,历史对话语句的拼接也越来越长,将会产生大量的训练数据和推理的计算复杂度。
发明内容
鉴于上述现有技术中存在的问题,提出了本发明。
因此,本发明提供了一种面向智能对话系统的对话状态追踪方法解决现有的方法忽视了数据量巨大、保存大量噪声信息和领域在对话状态追踪任务中的指导性作用以及对高效上下文进行编码存在信息不完整的问题。
为解决上述技术问题,本发明提供如下技术方案:
本发明实施例提供了一种面向智能对话系统的对话状态追踪方法,包括:
获取智能对话系统中的对话语句以及对话状态,并对所述对话语句以及对话状态进行预处理;
根据预处理后的数据,结合BERT预训练模型,获取词向量特征表示矩阵;
对所述词向量特征表示矩阵中的特征向量进行第一领域分类,结合槽门机制,获得带有领域信息的槽位上下文向量;
对所述带有领域信息的槽位上下文向量进行第二状态分类,根据分类后的操作状态的标识符确定槽位对应的新槽词,根据所述新槽词完成对智能对话系统的对话状态追踪。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:所述根据分类后的操作状态确定槽位对应的新槽词,根据所述新槽词完成对智能对话系统的对话状态追踪包括:
当操作状态的标识符为第一标识时,新槽词对应的值结果不变,和上一轮次的结果保持一致;
当操作状态的标识符为第二标识时,将槽词对应的值置为第一槽值,此时新槽词对应的值为第一槽值;
当操作状态的标识符为第三标识时,将槽词对应的值置为第二槽值,此时新槽词对应的值为第二槽值;
当操作状态的标识符为第四标识时,槽位对应的新槽词使用循环神经网络作为解码器生成对应的值,并利用包含领域信息的向量和带有领域信息的槽位上下文向量初始化循环神经网络。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:还包括:
在每一步都使用上一时间步生成的隐藏向量和当前输入的词嵌入向量生成新的隐藏向量,直至结束标记符生成;
将每个时间步的隐藏向量转换为词表上的分布;
使用软复制机制来获得基于候选词的最终单词分布,确定新槽词的值,根据所述新槽词完成对智能对话系统的对话状态追踪。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:第二状态分类包括:
其中,为前馈神经网络参数,/>为其偏置,/>表示第个对话回合中第/>个槽的操作状态分布,|O|=4,表示操作状态的标识符种类,/>为第/>对话轮次中第/>个槽所对应的操作的索引值,/>为第/>轮次中第/>个槽位的隐藏向量。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:对所述词向量特征表示矩阵中的特征向量进行第一领域分类,结合槽门机制,获得带有领域信息的槽位上下文向量包括:
所述第一领域分类包括:
其中,为包含领域信息的向量,/>为前馈神经网络的参数,/>为其偏置,/>为第/>轮次的对话语句在各个领域上的概率分布,/>表示占位符“[CLS]”对应的特征向量。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:所述槽门机制包括:抽取编码器输出中/>对应的特征向量/>表示为:
其中,,/>为第/>轮次中第/>个槽位的表征向量,Gather函数的作用是按照索引收集特征向量,/>表示/>所在的位置索引。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:还包括:将领域信息向量和槽信息向量输入槽门机制中以获得上下文加权特征,表示为:
其中,和/>为可训练的参数,/>为槽位数量;
基于上下文加权特征获取带有领域信息的槽位上下文向量/>,表示为:
其中,为可以学习的参数,/>为第/>轮次中第/>个槽位的表征向量,为第/>轮次中第/>个槽位的隐藏向量。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:对对话语句以及对话状态进行预处理包括:拼接处理与格式转换;
记每个对话轮次的语句拼接为
其中,表示轮次,/>为第/>轮次的系统回复,/>为用户输入的语句,公式中符号“;”是系统回复和用户语句之间的分隔符,[SEP]是用于标记对话回合结束的特殊符号。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:还包括:
记对话状态是固定大小的槽值对集合
其中,是第/>个槽位的槽词,/>是其对应的值;
记每个轮次的对话状态表示为
其中,为第/>个槽词及其对应的结果词,-是槽词和值之/>间的连接符,/>是一种特殊的标记,用于将第/>个槽的槽值对的信息汇聚为单个向量。
作为本发明所述的面向智能对话系统的对话状态追踪方法的一种优选方案,其中:根据预处理后的数据,结合BERT预训练模型,获取词向量特征表示矩阵包括:
预处理后的数据表示为:
其中,表示高效上下文,/>表示对话状态,/>至/>为第/>轮次的L轮对话语句;
将普通单词形式的数据转化为数据形式。
与现有技术相比,本发明的有益效果:本发明通过获取智能对话系统中的对话语句以及对话状态,并对对话语句以及对话状态进行预处理;再根据预处理后的数据,结合BERT预训练模型,获取词向量特征表示矩阵;再对词向量特征表示矩阵中的特征向量进行第一领域分类,结合槽门机制,获得带有领域信息的槽位上下文向量;再对带有领域信息的槽位上下文向量进行第二状态分类,根据分类后的操作状态的标识符确定槽位对应的新槽词,根据新槽词完成对智能对话系统的对话状态追踪。减少了数据量的同时也使用了历史对话信息的高度提炼保存了关键信息。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。其中:
图1为本发明一个实施例所述的一种面向智能对话系统的对话状态追踪方法的方法流程图;
图2为本发明一个实施例所述的一种面向智能对话系统的对话状态追踪方法的模型结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
实施例1
参照图1~图2,为本发明的一个实施例,该实施例提供了一种面向智能对话系统的对话状态追踪方法,包括:
S1:获取智能对话系统中的对话语句以及对话状态,并对对话语句以及对话状态进行预处理;
应说明的是,本发明实施例中获取智能对话系统中的对话语句包括当前轮次的对话语句以及当前轮次的前L轮对话语句,对话状态包括当前轮次的前一轮对话状态;其中L的取值可根据具体模型训练进行获取且本发明实施例中最少应获取前1轮的对话语句。
更进一步的,对对话语句以及对话状态进行预处理包括:拼接处理与格式转换;
记每个对话轮次的语句拼接为
其中,表示轮次,/>为第/>轮次的系统回复,/>为用户输入的语句,公式中符号“;”是系统回复和用户语句之间的分隔符,[SEP]是用于标记对话回合结束的特殊符号。
更进一步的,还包括:
记对话状态是固定大小的槽值对集合
其中,是第/>个槽位的槽词,/>是其对应的值;
记每个轮次的对话状态表示为
其中,为第/>个槽词及其对应的结果词;-是槽词和值之/>间的连接符;/>是一种特殊的标记,用于将第/>个槽的槽值对的信息汇聚为单个向量。
S2:根据预处理后的数据,结合BERT预训练模型(BERT,Bidirectional EncoderRepresentation from Transformers),获取词向量特征表示矩阵;
具体的,BERT预训练模型可以通过海量数据训练得来,更好地学到了数据中的普遍特征,比起在自己的数据集上从头开始训练参数,使用预训练模型参数通常会有更好的泛化效果。
更进一步的,根据预处理后的数据,结合BERT预训练模型,获取词向量特征表示矩阵包括:
预处理后的数据表示为:
其中,表示高效上下文,/>表示对话状态,/>至/>为第/>轮次的L轮对话语句;
将普通单词形式的数据转化为数据形式。
具体的,将普通单词形式的数据转化为机器能够理解的数据形式。
S3:对词向量特征表示矩阵中的特征向量进行第一领域分类,结合槽门机制,获得带有领域信息的槽位上下文向量;
在本发明实施例中,对词向量特征表示矩阵中的特征向量进行第一领域分类,结合槽门机制,获得带有领域信息的槽位上下文向量包括:
第一领域分类包括:
其中,为包含领域信息的向量,/>为前馈神经网络的参数,/>为其偏置,/>为第/>轮次的对话语句在各个领域上的概率分布,/>表示占位符“[CLS]”对应的特征向量。
更进一步的,槽门机制包括:抽取编码器输出中/>对应的特征向量表示为:
其中,,/>为第/>轮次中第/>个槽位的表征向量,Gather函数的作用是按照索引收集特征向量,/>表示/>所在的位置索引。
更进一步的,还包括:将领域信息向量和槽信息向量输入槽门机制中以获得上下文加权特征,表示为:
其中,和/>为可训练的参数,/>为槽位数量;
更进一步的,基于上下文加权特征获取带有领域信息的槽位上下文向量/>,表示为:
其中,为可以学习的参数,/>为第/>轮次中第/>个槽位的表征向量,为第/>轮次中第/>个槽位的隐藏向量。
S4:对带有领域信息的槽位上下文向量进行第二状态分类,根据分类后的操作状态的标识符确定槽位对应的新槽词,根据新槽词完成对智能对话系统的对话状态追踪。
在本发明实施例中,第二状态分类包括:
其中,为前馈神经网络参数,/>为其偏置,/>表示第个对话回合中第/>个槽的操作状态分布,|O|=4,表示操作状态的标识符种类,/>为第/>对话轮次中第/>个槽所对应的操作的索引值,/>为第/>轮次中第/>个槽位的隐藏向量。
更进一步的,根据分类后的操作状态确定槽位对应的新槽词,根据新槽词完成对智能对话系统的对话状态追踪包括,
当操作状态的标识符为第一标识时,新槽词对应的值结果不变,和上一轮次的结果保持一致;
当操作状态的标识符为第二标识时,将槽词对应的值置为第一槽值,此时新槽词对应的值为第一槽值;
当操作状态的标识符为第三标识时,将槽词对应的值置为第二槽值,此时新槽词对应的值为第二槽值;
当操作状态的标识符为第四标识时,槽位对应的新槽词使用循环神经网络作为解码器生成对应的值,并利用包含领域信息的向量和带有领域信息的槽位上下文向量初始化循环神经网络。
应说明的是,本发明实施例中第一标识为“CARRYVOER”表示槽值和上一轮次对话的结果保持一致,第二标识为“DELETE”表示删除槽值,第一槽值为“NULL”表示当操作状态的标识符为“DELETE”时,此次信息对话里不存在槽词,新槽词对应的值即为空值;第三标识为“DONTCARE”表示用户不关心槽值;第二槽值为“DONTCARE”表示当操作状态的标识符为“DONTCARE”时,此次信息对话里用户可忽略槽值结果,新槽词对应的值即为任意值;第四标识为“UPDATE”表示槽值需要生成。
具体的,当操作状态的标识符为“CARRYVOER”时,新槽词对应的值结果不变,和上一轮次的结果保持一致;
当操作状态的标识符为“DELETE”时,将槽词对应的值置为“NULL”,此时新槽词对应的值为“NULL”;
当操作状态的标识符为“DONTCARE”时,将槽词对应的值置为“DONTCARE”,此时新槽词对应的值为“DONTCARE”;
当操作状态的标识符为“UPDATE”时,通过神经网络生成新的值。
在本发明实施例中,通过神经网络生成新的值包括,使用循环神经网络解码器来生成值并且使用初始化/>,用/>来初始化/>,即令/>。在每一步都使用上一时间步生成的隐藏向量/>和当前输入的词嵌入向量/>来生成新的隐藏向量,直至结束标记符[EOS]生成:
将每个时间步的隐藏向量转换为词表上的分布:
其中,为单词的嵌入矩阵,其与BERT编码层的嵌入一致。
使用软复制机制来获得基于候选词的最终的单词分布,表示为:
其中,是候选词上的单词分布,/>为最终的单词分布,/>是控制值生成器的数值,决定从词汇表中生成值还是从历史上下文中复单词。
在一个可选的实施例中,根据分类后的操作状态确定槽位对应的新槽词可表示为:
其中,是第/>轮次中第/>个槽位对应的值,/>是第t-1轮次中第/>个槽位对应的值,/>为/>第轮次中第/>个槽对应的操作状态,v为待生成的新的值。
实施例2
参照图2,为本发明的一个实施例,为了验证本发明的有益效果,通过具体实例进行科学论证。
如图2所示,本实施例以下面对话为例:
System: "welcome, can I help you? "
User: "please find a restaurant called nusha ."
System: "i do not seem to be finding anything called nusha . whattype of food does the restaurant serve ?"
User: "could you double check that you've spelled the name correctly? the closest i can find is nandos .”
System: "oh its okay . that is an entertainment type located in thesouth at unit g6 , cambridge leisure park , clifton road . do you need theirphone number ?"
User: "no , but please confirm their address again and their postcode."
System: "their address is unit g6 , cambridge leisure park , cliftonroad . the postcode is cb17dy . is their anything else i can do " ?"
User: "i want indian food in the center area ."
……
此时目标是对这组对话进行对话状态追踪,分析得出第四轮对话结束后的对话状态。
此时["their","address",……";"……,"center","area",".","[SEP]"]
上一轮次的对话状态为{"attraction-name":"nusha"}。
步骤如下:
S1:将每个对话轮次的语句拼接为。将每个轮次的对话状态表示为/>
S2:将当前对话的前L轮对话轮次的对话语句进行拼接,形成高效上下文,按照BERT的输入习惯,在最前面添加特殊的[CLS]标记符,用于获取包含整条语句的特征。最后得到的高效上下文表示为
[“[CLS]”,“welcome”,……,”their”,……,”[SLOT]”,”attraction”,”name”,”-”,”nusha”,……]
S3:使用BERT结构对高效上下文和对话状态进行编码,从而得到富含丰富信息的词向量特征表示矩阵为:
[[[-0.3045, 0.3733, -0.4296, ..., -0.9419, 0.7848, 0.3402],
[ 0.0069, 0.2648, 0.3984, ..., -0.5691, 0.7703, -0.3334],
[-0.0260, 0.8135, 0.2491, ..., -0.4297, 0.4152, 0.1569],
[ 0.0910, -0.0856, 0.4875, ..., -0.0786, 0.0827, -0.3627]],
[[-0.6867, 0.2182, -0.4707, ..., -0.8594, 0.4270, 0.4843],
[-0.2719, -0.0946, -0.0214, ..., 0.4164, 0.0084, -0.0580],
[-0.6545, -0.3216, 0.7921, ..., -0.1104, 0.1965, -0.3110],
[-0.0382, 0.0447, 0.4592, ..., -0.0030, 0.0241, -0.4892]]]
S4:将[CLS]对应的表征向量学习为当前轮次对话所属的领域的上下文向量,通过前馈神经网络和softmax进行分类,获得其在各个领域的概率分布/>,将编码器的输出/>中/>对应的特征向量抽取出来,得到/>
[[[-0.2089, 0.2530, 0.7112, ..., -0.1031, 0.3069, -0.0039],
[-0.3772, 0.3662, 0.6901, ..., -0.5201, 0.2472, 0.0513],
[-0.6194, 0.1114, 1.0342, ..., 0.1301, 0.3578, 0.0674],
[-0.2261, -0.0372, 0.8240, ..., -0.5093, 0.4106, -0.7763]],
[[-0.2306, 0.6945, 0.5782, ..., 0.1405, 0.6111, 0.0092],
[-0.0293, -0.1715, 0.8088, ..., 0.0057, 0.4641, -0.5622],
[-0.7954, -0.4232, 0.6152, ..., 0.1506, 0.4282, -0.8156],
[-0.2563, -0.0673, 0.7723, ..., -0.1419, 0.5508, -0.7588]]]
最后通过本发明提出的槽门机制获得有带有领域信息的槽位上下文向量:
[[[-0.2089, 0.2530, 0.7112, ..., -0.1342, -0.3117, 0.3384],
[-0.3772, 0.3662, 0.6901, ..., -0.1342, -0.3117, 0.3384],
[-0.6194, 0.1114, 1.0342, ..., -0.1342, -0.3117, 0.3384],
[-0.2261, -0.0372, 0.8240, ..., -0.1342, -0.3117, 0.3384]],
[[-0.2306, 0.6945, 0.5782, ..., -0.0073, -0.1739, 0.4790],
[-0.0293, -0.1715, 0.8088, ..., -0.0073, -0.1739, 0.4790],
[-0.7954, -0.4232, 0.6152, ..., -0.0073, -0.1739, 0.4790],
[-0.2563, -0.0673, 0.7723, ..., -0.0073, -0.1739, 0.4790]]]
S5:槽位状态,针对每个槽位上下文向量使用前馈神经网络和softmax函数进行状态分类得到其概率分布,表示为:
[[[ 2.3372e-01, -1.2665e-02, 3.8068e-01, 1.6126e-02],
[-6.0666e-03, -1.9777e-01, 1.3868e-01, -1.9411e-01],
[-3.4462e-01, -4.5960e-02, 3.0783e-01, -1.9549e-01],
……
[ 9.2064e-02, -1.2710e-01, 3.8057e-02, -2.3526e-01],
[-2.6684e-01, 9.9543e-02, 2.1678e-01, 2.1085e-01],
[-4.9891e-01, 2.0059e-01, 1.9970e-01, -1.4336e-01]]]
通过argmax函数获得操作状态对应的索引值,表示为:
[2,2,2,……0,0,1]
S6:槽词对应的值的生成方式由操作状态决定。当操作状态为CARRYVOER时,槽词对应的值结果不变,和上一轮次的结果保持一致;当操作状态为DELETE时,将槽词对应的值置为NULL;当操作状态为DONTCARE时,将槽词对应的值置为DONTCARE;对操作状态分类结果为UPDATE的槽生成新的值,使用循环神经网络解码器来生成值并且使用初始化,用/>来初始化/>,即令/>,/>。在每一步都使用上一时间步生成的隐藏向量/>和当前输入的词嵌入向量/>来生成新的隐藏向量,直至结束标记符[EOS]生成。将每个时间步的隐藏向量转换为词表上的分布/>,再使用软复制机制来获得基于候选词的最终的单词分布/>,更新上一轮次的对话状态从而得到本轮次的对话状态为:
{("restaurant-food", "indian"),("restaurant-area", "centre"),("attraction-name", "nusha")}。
本发明方法使用高效上下文和上一轮次的对话状态作为输入,减少了数据量的同时也使用了历史对话信息的高度提炼保存了关键信息。通过Bert预训练模型进行编码,生成包含丰富信息的单词特征向量。进一步利用领域上下文向量对领域和槽的关系进行建模,以提高槽信息向量的表征能力。其中,领域分类对当前轮次对话所属的领域进行分类以获得正确的领域表征向量,槽门机制将领域表征作用于槽信息向量之上。
充分发挥语句所属领域对对话状态追踪模型的作用,使用槽门机制充分发挥领域对槽的指导性作用。通过对每个槽的操作状态进行分类,当操作状态为CARRYVOER时,槽词对应的值结果不变,和上一轮次的结果保持一致;当操作状态为DELETE时,将槽词对应的值置为NULL;当操作状态为DONTCARE时,将槽词对应的值置为DONTCARE;只有当操作状态为UPDATE时,使用值生成器为其生成新的值。通过本发明方法不必为每个槽位都生成新的值,大大提高了效率。本发明还充分提取了对话系统中用户前后输入的句子中的信息,可以在公开数据上都取得优异的效果,在对准确率要求较高的对话系统中具有良好的实用性。
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (7)

1.一种面向智能对话系统的对话状态追踪方法,其特征在于,包括:
获取智能对话系统中的对话语句以及对话状态,并对所述对话语句以及对话状态进行预处理;
根据预处理后的数据,结合BERT预训练模型,获取词向量特征表示矩阵;
对所述词向量特征表示矩阵中的特征向量进行第一领域分类,结合槽门机制,获得带有领域信息的槽位上下文向量;
所述第一领域分类包括:
其中,为包含领域信息的向量,Wd为前馈神经网络的参数,cd为其偏置,/>为第t轮次的对话语句在各个领域上的概率分布,/>表示占位符“[CLS]”对应的特征向量;
所述槽门机制包括:抽取编码器输出Ut中[SLOT]对应的特征向量Ht表示为:
Ht=Gather(Ut,pos)
其中, 为第t轮次中第i个槽位的表征向量,Gather函数的作用是按照索引收集特征向量,pos表示[SLOT]所在的位置索引,[SLOT]是一种特殊的标记,用于将第j个槽的槽值对的信息汇聚为单个向量;
还包括:将领域信息向量和槽信息向量输入槽门机制中以获得上下文加权特征g,表示为:
其中,v和Wg为可训练的参数,J为槽位数量;
基于上下文加权特征g获取带有领域信息的槽位上下文向量St,表示为:
其中,Wds为可以学习的参数,为第t轮次中第i个槽位的表征向量,/>为第t轮次中第i个槽位的隐藏向量;
对所述带有领域信息的槽位上下文向量进行第二状态分类,根据分类后的操作状态的标识符确定槽位对应的新槽词,根据所述新槽词完成对智能对话系统的对话状态追踪。
2.如权利要求1所述的面向智能对话系统的对话状态追踪方法,其特征在于,所述根据分类后的操作状态确定槽位对应的新槽词,根据所述新槽词完成对智能对话系统的对话状态追踪包括:
当操作状态的标识符为第一标识时,新槽词对应的值结果不变,和上一轮次的结果保持一致;
当操作状态的标识符为第二标识时,将槽词对应的值置为第一槽值,此时新槽词对应的值为第一槽值;
当操作状态的标识符为第三标识时,将槽词对应的值置为第二槽值,此时新槽词对应的值为第二槽值;
当操作状态的标识符为第四标识时,槽位对应的新槽词使用循环神经网络作为解码器生成对应的值,并利用包含领域信息的向量和带有领域信息的槽位上下文向量初始化循环神经网络;
其中,第一标识为“CARRYVOER”表示槽值和上一轮次对话的结果保持一致,第二标识为“DELETE”表示删除槽值,第一槽值为“NULL”表示当操作状态的标识符为“DELETE”时,此次信息对话里不存在槽词,新槽词对应的值即为空值;第三标识为“DONTCARE”表示用户不关心槽值;第二槽值为“DONTCARE”表示当操作状态的标识符为“DONTCARE”时,此次信息对话里用户可忽略槽值结果,新槽词对应的值即为任意值;第四标识为“UPDATE”表示槽值需要生成。
3.如权利要求2所述的面向智能对话系统的对话状态追踪方法,其特征在于,还包括:
在每一步都使用上一时间步生成的隐藏向量和当前输入的词嵌入向量生成新的隐藏向量,直至结束标记符生成;
将每个时间步的隐藏向量转换为词表上的分布;
使用软复制机制来获得基于候选词的最终单词分布,确定新槽词的值,根据所述新槽词完成对智能对话系统的对话状态追踪。
4.如权利要求1或3所述的面向智能对话系统的对话状态追踪方法,其特征在于,第二状态分类包括:
其中,Wopr为前馈神经网络参数,copr为其偏置,表示第t个对话回合中第i个槽的操作状态分布,|O|=4,表示操作状态的标识符种类,/>为第t对话轮次中第i个槽所对应的操作的索引值,/>为第t轮次中第i个槽位的隐藏向量。
5.如权利要求4所述的面向智能对话系统的对话状态追踪方法,其特征在于,对对话语句以及对话状态进行预处理包括:拼接处理与格式转换;
记每个对话轮次的语句拼接为
其中,t表示轮次,Mt为第t轮次的系统回复,Ut为用户输入的语句,公式中符号“;”是系统回复和用户语句之间的分隔符,[SEP]是用于标记对话回合结束的特殊符号。
6.如权利要求5所述的面向智能对话系统的对话状态追踪方法,其特征在于,还包括:
记对话状态是固定大小的槽值对集合Bt={(Sj,Vt j)|1≤j≤J};
其中,Sj是第j个槽位的槽词,Vt j是其对应的值;
记每个轮次的对话状态表示为
其中,为第j个槽词及其对应的结果词,-是槽词和值[SLOT]之间的连接符,[SLOT]是一种特殊的标记,用于将第j个槽的槽值对的信息汇聚为单个向量。
7.如权利要求6所述的面向智能对话系统的对话状态追踪方法,其特征在于,根据预处理后的数据,结合BERT预训练模型,获取词向量特征表示矩阵包括:
预处理后的数据表示为:
其中,Xt表示高效上下文,Bt表示对话状态,Dt-l+1至Dt为第t轮次的L轮对话语句;
将普通单词形式的数据转化为数据形式。
CN202311406214.4A 2023-10-27 2023-10-27 一种面向智能对话系统的对话状态追踪方法 Active CN117150023B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311406214.4A CN117150023B (zh) 2023-10-27 2023-10-27 一种面向智能对话系统的对话状态追踪方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311406214.4A CN117150023B (zh) 2023-10-27 2023-10-27 一种面向智能对话系统的对话状态追踪方法

Publications (2)

Publication Number Publication Date
CN117150023A CN117150023A (zh) 2023-12-01
CN117150023B true CN117150023B (zh) 2024-01-05

Family

ID=88884618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311406214.4A Active CN117150023B (zh) 2023-10-27 2023-10-27 一种面向智能对话系统的对话状态追踪方法

Country Status (1)

Country Link
CN (1) CN117150023B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446045A (zh) * 2016-08-31 2017-02-22 上海交通大学 基于对话交互的用户画像的构建方法及系统
CN111026857A (zh) * 2019-12-10 2020-04-17 苏州思必驰信息科技有限公司 对话状态跟踪方法、人机对话方法及系统
CN112364659A (zh) * 2020-07-08 2021-02-12 西湖大学 一种无监督的语义表示自动识别方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10181322B2 (en) * 2013-12-20 2019-01-15 Microsoft Technology Licensing, Llc Multi-user, multi-domain dialog system
US11568000B2 (en) * 2019-09-24 2023-01-31 Salesforce.Com, Inc. System and method for automatic task-oriented dialog system
CN116956942A (zh) * 2023-05-16 2023-10-27 中国科学院新疆理化技术研究所 基于槽位共享跨度预测的多领域对话状态追踪方法、装置、设备及存储介质
CN116956881A (zh) * 2023-07-28 2023-10-27 中移(杭州)信息技术有限公司 一种面向任务式对话系统的纠错方法、装置、设备及介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446045A (zh) * 2016-08-31 2017-02-22 上海交通大学 基于对话交互的用户画像的构建方法及系统
CN111026857A (zh) * 2019-12-10 2020-04-17 苏州思必驰信息科技有限公司 对话状态跟踪方法、人机对话方法及系统
CN112364659A (zh) * 2020-07-08 2021-02-12 西湖大学 一种无监督的语义表示自动识别方法及装置

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Domain-Aware Dialogue State Tracker for Multi-Domain Dialogue Systems;Vevake Balaraman 等;《 IEEE/ACM Transactions on Audio, Speech, and Language Processing》;866-873 *
Efficient Context and Schema Fusion Networks for Multi-Domain Dialogue State Tracking;Su Zhu 等;《arxiv》;1-16 *
Find or Classify? Dual Strategy for Slot-Value Predictions on Multi-Domain Dialog State Tracking;JG Zhang 等;《arxiv》;1-14 *
任务型对话系统中状态追踪(DST);你好世界_zhy;《https://www.jianshu.com/p/085eb0262284》;1-11 *
基于BERT的跨领域任务型对话状态跟踪方法;林伦凯 等;《东莞理工学院学报》;66-73 *
基于利用BERT不同层信息的微调策略的对话状态追踪;叶正 等;《中南民族大学学报(自然科学版)》;327-333 *

Also Published As

Publication number Publication date
CN117150023A (zh) 2023-12-01

Similar Documents

Publication Publication Date Title
Kim et al. Efficient dialogue state tracking by selectively overwriting memory
US11194972B1 (en) Semantic sentiment analysis method fusing in-depth features and time sequence models
CN111324744B (zh) 一种基于目标情感分析数据集的数据增强方法
CN111783462A (zh) 基于双神经网络融合的中文命名实体识别模型及方法
CN112183064B (zh) 基于多任务联合学习的文本情绪原因识别系统
CN109992669B (zh) 一种基于语言模型和强化学习的关键词问答方法
CN109858041A (zh) 一种半监督学习结合自定义词典的命名实体识别方法
CN112101044B (zh) 一种意图识别方法、装置及电子设备
CN115831102A (zh) 基于预训练特征表示的语音识别方法、装置及电子设备
CN111368542A (zh) 一种基于递归神经网络的文本语言关联抽取方法和系统
Tündik et al. Joint word-and character-level embedding CNN-RNN models for punctuation restoration
CN116306652A (zh) 一种基于注意力机制和BiLSTM的中文命名实体识别模型
CN115545033A (zh) 融合词汇类别表征的中文领域文本命名实体识别方法
CN116955579B (zh) 一种基于关键词知识检索的聊天回复生成方法和装置
CN112417118B (zh) 一种基于标记文本和神经网络的对话生成方法
CN111666375B (zh) 文本相似度的匹配方法、电子设备和计算机可读介质
CN117150023B (zh) 一种面向智能对话系统的对话状态追踪方法
CN111199152A (zh) 一种基于标签注意力机制的命名实体识别方法
CN115116433A (zh) 一种基于音素嵌入的语音识别方法
CN113590745B (zh) 一种可解释的文本推断方法
CN115186670A (zh) 一种基于主动学习的领域命名实体识别方法及系统
CN115169363A (zh) 一种融合知识的增量编码的对话情感识别方法
CN114121018A (zh) 语音文档分类方法、系统、设备及存储介质
CN114330352A (zh) 一种命名实体识别方法和系统
CN110990385A (zh) 一套基于Sequence2Sequence的自动生成新闻标题的软件

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240401

Address after: 210033 10th Floor, Building A1, Huizhi Science and Technology Park, Hengtai Road, Nanjing Economic and Technological Development Zone, Nanjing City, Jiangsu Province

Patentee after: Jiangsu Zhimeng Intelligent Technology Co.,Ltd.

Country or region after: China

Address before: 210003, No. 66, new exemplary Road, Nanjing, Jiangsu

Patentee before: NANJING University OF POSTS AND TELECOMMUNICATIONS

Country or region before: China