基于语句改写的面向端到端对话的数据增强方法.pdf
《基于语句改写的面向端到端对话的数据增强方法.pdf》由会员分享,可在线阅读,更多相关《基于语句改写的面向端到端对话的数据增强方法.pdf(19页完成版)》请在专利查询网上搜索。
1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010151751.9 (22)申请日 2020.03.06 (71)申请人 国网浙江省电力有限公司电力科学 研究院 地址 310014 浙江省杭州市下城区朝晖八 区华电弄1号 申请人 国网浙江玉环市供电有限公司 (72)发明人 胡若云王正国沈然吕诗宁 江俊军丁麒朱斌孙钢 金良峰汪一帆谷泓杰 (74)专利代理机构 浙江翔隆专利事务所(普通 合伙) 33206 代理人 王晓燕 (51)Int.Cl. G06F 16/332(2019.01) G06F 16/33(2019.0。
2、1) G06F 16/36(2019.01) G06N 3/04(2006.01) (54)发明名称 一种基于语句改写的面向端到端对话的数 据增强方法 (57)摘要 本发明公开了一种基于语句改写的面向端 到端对话的数据增强方法, 涉及一种数据处理方 法。 目前现场增强难以实现系统层面的整体优 化。 本发明通过构建并训练一个语句改写模型来 扩充对话生成模型的训练数据, 通过定义用户语 句的对话功能来构造语句改写模型的训练参考; 采用基于序列到序列的框架, 使用两个解码器依 次解码前一轮系统对话动作和改写后的用户语 句, 前一轮系统对话动作可以为用户语句的改写 提供对话历史背景, 使得生成的改写语。
3、句更加符 合对话语境。 本技术方案在语句改写模型和对话 生成模型的解码器之间加入了注意机制, 实现端 到端对话系统的搭建, 并使得改写语句可以直接 辅助对话生成, 同时对话生成的结果也可以监督 语句改写模型的训练。 权利要求书3页 说明书13页 附图2页 CN 111522921 A 2020.08.11 CN 111522921 A 1.一种基于语句改写的面向端到端对话的数据增强方法, 其特征在于包括以下步骤: 1)模型训练 101)搜索原始对话文本并考察所有用户语句的对话功能, 为每一个用户语句匹配一个 参考改写语句; 102)将用户语句输入语句改写模型, 并对其进行预处理, 包括分词、 。
4、正规化操作; 103)对输入的用户语句以及前一轮系统回复进行编码, 得到语句的向量表示; 104)根据上一步编码结果解码前一轮系统对话动作; 105)根据步骤(3)编码结果和前一轮系统对话动作, 解码改写后的用户语句; 106)检查改写后的用户语句, 筛选出改动较大但含义不变的语句, 用以替换原对话文 本中的用户语句, 生成新的对话文本, 并将其并入原对话文本, 得到扩充的训练数据, 得到 对话生成模型; 2)当用户提出请求时, 将用户语句输入语句改写模型, 并对其进行预处理; 3)对输入的用户语句以及前一轮系统回复进行编码, 得到语句的向量表示; 4)根据上一步编码结果解码前一轮系统对话动作。
5、; 5)根据步骤3)编码结果和前一轮系统对话动作, 解码改写后的用户语句; 6)将用户语句输入对话生成模型, 并将其连同前一轮系统回复和前一轮对话状态重新 进行编码, 获得向量表示; 7)根据上一步编码结果和步骤5)语句改写的解码结果, 进行对话状态解码, 解码过程 中依次输出识别到的对话领域、 属性槽和属性值; 8)根据对话状态, 在数据库中查询符合要求的实体; 9)判断模型类别; 当模型为DAMD时, 根据对话状态解码结果和数据库查询结果进行系 统对话动作的解码, 当模型为TSCP时, 则直接跳至下一步; 10)根据之前所有的编解码和查询结果, 生成系统的自然语言回复; 11)对生成的回复。
6、进行后处理, 后处理包括单词合并、 添加标点, 得到呈现给用户的自 然语言, 并回复。 2.根据权利要求1所述的一种基于语句改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤1)中, 联合训练一个语句改写模型和一个对话生成模型; 两模型都采用基于 序列到序列(seq2seq)的框架, 由一个对话上下文编码器(encoder)和多个串联的解码器 (decoder)组成; 语句改写模型包含系统对话动作解码器和改写语句解码器; 对话生成模型 则有两种, TSCP模型包含对话状态解码器和自然语言回复解码器, DAMD模型则在TSCP模型 的两解码器之间又加入了一个系统对话动作解码器。 3.根。
7、据权利要求2所述的一种基于语句改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤102)及步骤2)中, 对输入的用户语句进行分词, 再将其送入语句改写模型的 上下文编码器。 4.根据权利要求3所述的一种基于语句改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤103)及步骤3)中, 将前一轮系统回复和输入的用户语句串联为自然语言单 词序列, 并使用一个层数为1、 隐层神经元数量为50或100的双向GRU模型作为编码器, 将该 单词序列编码为等长的向量序列, 称为隐状态; 编码过程实现了在隐状态空间融合并理解 对话中包含的语义信息; 该编码器的输出结果将依次送到语句改写模型的。
8、两个解码器, 用 权利要求书 1/3 页 2 CN 111522921 A 2 于后续模型输出的解码。 5.根据权利要求4所述的一种基于语句改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤104)及步骤4)中, 语句改写模型通过系统对话动作解码器(Action Decoder)进行前一轮系统对话动作At-1的解码; 对话动作使用自然语言序列加以表示; 且认 为前一轮系统对话动作与前一轮系统回复Rt-1直接相关, 并且用当前轮次用户语句Ut进行 反向推演, 基于此两者的编码结果解码出前一轮系统对话动作: At-1seq2seq(Rt-1,Ut)。 6.根据权利要求5所述的一种基于语句。
9、改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤105)及步骤5)中, 语句改写模型通过改写语句解码器(Paraphrase Decoder)进 行改写语句的解码, 改写语句与原用户语句Ut含义相同, 但表述方式有区别, 改写语句与 原用户语句Ut直接相关, 并且受到前一轮系统回复Rt-1和系统对话行为At-1的影响, 基于此 三者解码出改写语句: 在语句改写模型的系统对话动作解码器和改写语句解码器之间加入注意(attention) 机制, 从而模型在解码改写语句时关注到前一轮系统的对话行为, 以使得生成的改写语句 与前一轮系统回复衔接得更加连贯, 更加符合对话语境; 在语句改写模。
10、型中, 通过应用seq2seq框架下编码器与解码器之间的拷贝(copy)机制, 从前一轮系统回复中拷贝与系统对话行为直接相关的信息, 或从用户语句中拷贝用于构建 改写语句的属性值, 以提高解码系统对话行为和改写语句的准确率。 7.根据权利要求6所述的一种基于语句改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤106)中, 采用语句过滤器(Utterance Filter)检查改写后的用户语句的质 量, 并滤除质量较差的改写语句; 具体过滤方法分为三步: 首先, 考察改写语句和原用户语 句所包含的属性值, 若两者包含的属性值不同, 则说明改写语句错误地增添、 修改或删除了 一些原语句。
11、中的关键信息, 应将其滤除; 之后, 考察改写语句和原用户语句之间的BLEU分 数, 若该分数低于0.2, 我们则认为改写语句相比原语句的语义内容差别较大, 不适合代替 原语句, 因此将其滤除; 最后, 考察改写语句和原用户语句之间的多样性分数, 即diversity score, 若该分数低于3.4, 则认为改写语句和原语句在表达方式上过于相似, 即改写语句没 有在原语句上进行过多改变, 因而代替原语句没有太大意义, 应将其滤除; 滤除了质量较低 的改写语句之后, 用剩下的改写语句替换原对话文本中的用户语句, 以此构造出新的对话 文本, 从而扩充了对话生成模型的训练数据。 8.根据权利要求7。
12、所述的一种基于语句改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤6)中, 将对话生成模型在前一轮解码出的系统回复和对话状态, 连同当前输 入的用户语句, 重新串联为自然语言单词序列, 并送入对话生成模型编码器进行重新编码; 采用层数为1、 隐层神经元数量为50或100的双向GRU模型作为编码器; 该编码器的输出结果 将依次送到对话生成模型的解码器, 用于后续模型输出的解码。 9.根据权利要求8所述的一种基于语句改写的面向端到端对话的数据增强方法, 其特 征在于: 在步骤7)中, 基于步骤6)的编码结果和步骤4)的解码输出, 通过对话生成模型的第 权利要求书 2/3 页 3 CN 。
13、111522921 A 3 一个解码器对话状态解码器(Belief Span Decoder)进行对话状态的解码; 对话状态 使用自然语言序列表示, 其具体形式为:“领域1属性槽1槽值1; 属性值2槽值2; 领域 2” , 每一轮的对话状态Bt由当前轮次的用户语句Ut、 上一轮的系统回复Rt-1、 上一轮的对 话状态Bt-1和用户语句的改写共同决定: 在语句改写模型的改写语句解码器和对话生成模型的对话状态解码器之间加入注意 (attention)机制, 从而对话生成模型在解码对话状态时能关注到原用户语句的改写; 改写 语句作为一种释义, 辅助了对话生成模型理解输入的用户语句, 从而可以提升解码。
14、对话状 态的准确率; 同时, 由于语句改写模型和对话生成模型之间存在注意机制, 对话生成模型的 各种解码结果能监督语句改写模型的训练, 这实现了端到端系统的搭建以及多模型的联合 训练; 在步骤8)中, 系统根据更新后的对话状态在数据库中进行查询, 达到查询结果的one- hot编码向量DBt; 在步骤9)中, 对于使用DAMD作为对话生成模型, 数据库查询结果DBt、 对话状态Bt和用户 语句Ut将输入第二个解码器系统对话动作解码器(Action Span Decoder), 用于解码 当前系统应采用的对话动作At: Atseq2seq(Ut,Bt,DBt) 在步骤(S10)中, 使用最后一个。
15、解码器自然语言回复解码器(Response Decoder), 基于之前的解码结果生成系统的自然语言回复Rt; 对于使用TSCP作为对话生成模型的系统, 这一过程可表示为: Rtseq2seq(Ut,Bt,DBt) 对于使用DAMD作为对话生成模型的系统, 这一过程可表示为: Rtseq2seq(At,Ut,Bt,DBt) 在seq2seq模型框架下, 对话生成模型的编码器与解码器以及不同的解码器之间存在 有拷贝(copy)机制, 这使得该模型的各个解码器都可以从用户语句表达中拷贝其对属性槽 取值的要求(例如从 “我要找便宜的餐馆” 中拷贝 “价格便宜” ), 以及其包含的属性槽名称 和领域指。
16、示符等信息, 从而以更高的准确率完成自然语言理解、 对话状态跟踪、 对话动作预 测和系统回复生成。 10.根据权利要求1-9任一权利要求所述的一种基于语句改写的面向端到端对话的数 据增强方法, 其特征在于: 在进行模型训练时, 所有的seq2seq结构都采用有监督训练的方 式; 步骤1)中匹配到的参考改写语句, 以及数据集中提供的标准系统回复和对话状态、 系统 对话动作标签作为训练参考, 并计算它们与解码器生成的概率分布之间的交叉熵, 之后将 各个交叉熵相加得到最终的损失函数, 进行端到端的联合优化。 权利要求书 3/3 页 4 CN 111522921 A 4 一种基于语句改写的面向端到端对。
17、话的数据增强方法 技术领域 0001 本发明涉及一种数据处理方法, 尤其涉及一种基于语句改写的面向端到端对话的 数据增强方法。 背景技术 0002 搭建基于自然语言的智能对话系统来与人类进行交流, 是人工智能的一个重要研 究目标。 对话系统的种类多样, 其中, 任务型对话系统能够协助人类完成特定领域下的特定 任务, 因而在电子客服、 个人助理、 自助终端等业务中有广泛的应用前景, 得到了研究界和 工业界的重点关注。 一般而言, 任务型对话系统需要构建并训练一个面向某个或某些特定 领域的对话生成模型, 来为输入的用户语句产生相应的有关特定任务的系统回复。 随着深 度学习的日趋成熟, 神经网络模型。
18、被成功地应用到了对话生成模型的构建当中, 使得基于 神经网络的模块化结构成为了主流的构建对话生成模型的解决方案。 0003 这种模块化的模型结构可以描述为: 首先用户语句被送入自然语言理解模块进行 领域检测、 用户意图检测和语义解析, 得到的语义标签; 然后识别结果送入对话状态跟踪模 块, 进行多轮信息的整合, 得到当前对话轮次的对话状态表示; 接下来, 根据对话状态进行 数据库的查询, 搜索用户希望查询的信息, 送入对话策略选择模块中, 确定系统的回复策略 (称为系统对话动作); 最后, 系统根据所选择的系统动作, 在自然语言生成模块中生成符合 人类语言习惯的自然语言回复。 特别地, Lei。
19、在2018年提出了一种基于复制机制的两阶段序 列到序列(seq2seq)模型Sequicity, 或称TSCP, 该模型通过一个统一的seq2seq架构完成了 自然语言理解、 对话状态跟踪和自然语言生成这三个模块的功能, 并在公开的单领域数据 集上取得了很好的实验结果。 之后, Zhang在2019年对TSCP进行改进并提出了模型DAMD, 该 模型在seq2seq架构中加入了对话策略选择模块的功能, 实现了多领域自适应对话, 并在公 开的多领域数据集上取得了很好的实验结果。 0004 然而, 训练这种基于神经网络的对话生成模型通常需要大量的高质量的对话文本 数据。 由于需要寻找并记录在特定领。
20、域的特定任务中人与人或人与机器之间的对话, 收集 这样的训练数据是十分困难且耗费时间的。 即使获得了足够多的对话文本记录, 我们还需 要对这些文本进行标注, 以便更好地指导对话生成模型的训练。 这种标注通常需要招募大 量的工人完成, 因而非常耗费人力和资金。 这些困难造成了高质量对话文本的稀缺, 从而限 制了对话系统性能的提升。 0005 对此, 数据增强技术旨在构建模型自动地产生更多的训练样本, 从而缓解训练数 据缺乏的问题。 然而, 现阶段人们提出的一系列面向文本的数据增强方法都只是针对于独 立的单个语句, 并没有考虑语句在一段对话中所处的语境, 因而直接应用于对话文本的数 据扩充时效果较。
21、差。 0006 目前, 针对于文本的数据增强方法中最为常用的是语句改写, 这种方法试图在不 改变语义的条件下改写文本中的句子, 从而生成更多的语句用以扩充文本数据。 但是, 现有 的基于语句改写的数据增强方法都是单独训练一个语句改写模型用以扩充数据, 再使用扩 说明书 1/13 页 5 CN 111522921 A 5 充后的数据单独训练目标模型。 这种依赖于多训练阶段的方法会导致训练误差在不同的模 型间累积, 难以实现系统层面的多模型的整体优化, 因而限制了数据增强的效果。 0007 总结: 目前的面向文本的数据增强方法存在以下问题: 0008 (1)大部分现有的端到端对话系统在训练对话生成。
22、模型时, 都需要有关特定领域 内特定任务的大量的有标注的对话文本数据, 但人工搜集并标注这样的文本数据实施困难 且开销较大。 0009 (2)现有的针对于文本的数据增强方法没有考虑文本中语句在一段对话中所处的 语境, 因而不适用于扩充对话文本数据。 0010 (3)现有的基于语句改写的数据增强方法依赖于多个模型在多阶段下的单独训 练, 没有实现多模型联合训练和端到端系统的搭建, 因而难以进行系统的整体优化。 发明内容 0011 本发明要解决的技术问题和提出的技术任务是对现有技术方案进行完善与改进, 提供一种基于语句改写的面向端到端对话的数据增强方法, 以达到适用于对话文本的数据 增强的目的。 。
23、为此, 本发明采取以下技术方案。 0012 一种基于语句改写的面向端到端对话的数据增强方法, 包括以下步骤: 0013 1)模型训练 0014 101)搜索原始对话文本并考察所有用户语句的对话功能, 为每一个用户语句匹配 一个参考改写语句; 0015 102)将用户语句输入语句改写模型, 并对其进行预处理, 包括分词、 正规化操作; 0016 103)对输入的用户语句以及前一轮系统回复进行编码, 得到语句的向量表示; 0017 104)根据上一步编码结果解码前一轮系统对话动作; 0018 105)根据步骤(3)编码结果和前一轮系统对话动作, 解码改写后的用户语句; 0019 106)检查改写后。
24、的用户语句, 筛选出改动较大但含义不变的语句, 用以替换原对 话文本中的用户语句, 生成新的对话文本, 并将其并入原对话文本, 得到扩充的训练数据, 得到对话生成模型; 0020 2)当用户提出请求时, 将用户语句输入语句改写模型, 并对其进行预处理; 0021 3)对输入的用户语句以及前一轮系统回复进行编码, 得到语句的向量表示; 0022 4)根据上一步编码结果解码前一轮系统对话动作; 0023 5)根据步骤3)编码结果和前一轮系统对话动作, 解码改写后的用户语句; 0024 6)将用户语句输入对话生成模型, 并将其连同前一轮系统回复和前一轮对话状态 重新进行编码, 获得向量表示; 002。
25、5 7)根据上一步编码结果和步骤5)语句改写的解码结果, 进行对话状态解码, 解码 过程中依次输出识别到的对话领域、 属性槽和属性值; 0026 8)根据对话状态, 在数据库中查询符合要求的实体; 0027 9)判断模型类别; 当模型为DAMD时, 根据对话状态解码结果和数据库查询结果进 行系统对话动作的解码, 当模型为TSCP时, 则直接跳至下一步; 0028 10)根据之前所有的编解码和查询结果, 生成系统的自然语言回复; 0029 11)对生成的回复进行后处理, 后处理包括单词合并、 添加标点, 得到呈现给用户 说明书 2/13 页 6 CN 111522921 A 6 的自然语言, 并。
26、回复。 0030 作为优选技术手段: 在步骤1)中, 联合训练一个语句改写模型和一个对话生成模 型; 两模型都采用基于序列到序列(seq2seq)的框架, 由一个对话上下文编码器(encoder) 和多个串联的解码器(decoder)组成; 语句改写模型包含系统对话动作解码器和改写语句 解码器; 对话生成模型则有两种, TSCP模型包含对话状态解码器和自然语言回复解码器, DAMD模型则在TSCP模型的两解码器之间又加入了一个系统对话动作解码器。 0031 作为优选技术手段: 在步骤102)及步骤2)中, 对输入的用户语句进行分词, 再将其 送入语句改写模型的上下文编码器。 0032 作为优选。
27、技术手段: 在步骤103)及步骤3)中, 将前一轮系统回复和输入的用户语 句串联为自然语言单词序列, 并使用一个层数为1、 隐层神经元数量为50或100的双向GRU模 型作为编码器, 将该单词序列编码为等长的向量序列, 称为隐状态; 编码过程实现了在隐状 态空间融合并理解对话中包含的语义信息; 该编码器的输出结果将依次送到语句改写模型 的两个解码器, 用于后续模型输出的解码。 0033 作为优选技术手段: 在步骤104)及步骤4)中, 语句改写模型通过系统对话动作解 码器(Action Decoder)进行前一轮系统对话动作At-1的解码; 对话动作使用自然语言序列 加以表示; 且认为前一轮系。
28、统对话动作与前一轮系统回复Rt-1直接相关, 并且用当前轮次用 户语句Ut进行反向推演, 基于此两者的编码结果解码出前一轮系统对话动作: 0034 At-1seq2seq(Rt-1,Ut)。 0035 0036 作为优选技术手段: 在步骤105)及步骤5)中, 语句改写模型通过改写语句解码器 (Paraphrase Decoder)进行改写语句的解码, 改写语句与原用户语句Ut含义相同, 但表 述方式有区别, 改写语句与原用户语句Ut直接相关, 并且受到前一轮系统回复Rt-1和系统对 话行为At-1的影响, 基于此三者解码出改写语句: 0037 0038 在语句改写模型的系统对话动作解码器和改。
29、写语句解码器之间加入注意 (attention)机制, 从而模型在解码改写语句时关注到前一轮系统的对话行为, 以使得生成 的改写语句与前一轮系统回复衔接得更加连贯, 更加符合对话语境; 0039 在语句改写模型中, 通过应用seq2seq框架下编码器与解码器之间的拷贝(copy) 机制, 从前一轮系统回复中拷贝与系统对话行为直接相关的信息, 或从用户语句中拷贝用 于构建改写语句的属性值, 以提高解码系统对话行为和改写语句的准确率。 0040 作为优选技术手段: 在步骤106)中, 采用语句过滤器(Utterance Filter)检查改 写后的用户语句的质量, 并滤除质量较差的改写语句; 具体。
30、过滤方法分为三步: 首先, 考察 改写语句和原用户语句所包含的属性值, 若两者包含的属性值不同, 则说明改写语句错误 地增添、 修改或删除了一些原语句中的关键信息, 应将其滤除; 之后, 考察改写语句和原用 户语句之间的BLEU分数, 若该分数低于0.2, 我们则认为改写语句相比原语句的语义内容差 别较大, 不适合代替原语句, 因此将其滤除; 最后, 考察改写语句和原用户语句之间的多样 性分数, 即diversity score, 若该分数低于3.4, 则认为改写语句和原语句在表达方式上过 于相似, 即改写语句没有在原语句上进行过多改变, 因而代替原语句没有太大意义, 应将其 说明书 3/13。
31、 页 7 CN 111522921 A 7 滤除; 滤除了质量较低的改写语句之后, 用剩下的改写语句替换原对话文本中的用户语句, 以此构造出新的对话文本, 从而扩充了对话生成模型的训练数据。 0041 作为优选技术手段: 在步骤6)中, 将对话生成模型在前一轮解码出的系统回复和 对话状态, 连同当前输入的用户语句, 重新串联为自然语言单词序列, 并送入对话生成模型 编码器进行重新编码; 采用层数为1、 隐层神经元数量为50或100的双向GRU模型作为编码 器; 该编码器的输出结果将依次送到对话生成模型的解码器, 用于后续模型输出的解码; 0042 作为优选技术手段: 在步骤7)中, 基于步骤6。
32、)的编码结果和步骤4)的解码输出, 通 过对话生成模型的第一个解码器对话状态解码器(Belief Span Decoder)进行对话状 态的解码; 对话状态使用自然语言序列表示, 其具体形式为:“领域1属性槽1槽值1; 属性 值2槽值2; 领域2” , 每一轮的对话状态Bt由当前轮次的用户语句Ut、 上一轮的系统回复 Rt-1、 上一轮的对话状态Bt-1和用户语句的改写共同决定: 0043 0044 在语句改写模型的改写语句解码器和对话生成模型的对话状态解码器之间加入 注意(attention)机制, 从而对话生成模型在解码对话状态时能关注到原用户语句的改写; 改写语句作为一种释义, 辅助了对。
33、话生成模型理解输入的用户语句, 从而可以提升解码对 话状态的准确率; 同时, 由于语句改写模型和对话生成模型之间存在注意机制, 对话生成模 型的各种解码结果能监督语句改写模型的训练, 这实现了端到端系统的搭建以及多模型的 联合训练; 0045 在步骤8)中, 系统根据更新后的对话状态在数据库中进行查询, 达到查询结果的 one-hot编码向量DBt; 0046 在步骤9)中, 对于使用DAMD作为对话生成模型, 数据库查询结果DBt、 对话状态Bt和 用户语句Ut将输入第二个解码器系统对话动作解码器(Action Span Decoder), 用于 解码当前系统应采用的对话动作At: 0047。
34、 Atseq2seq(Ut,Bt,DBt) 0048 在步骤(S10)中, 使用最后一个解码器自然语言回复解码器(Response Decoder), 基于之前的解码结果生成系统的自然语言回复Rt; 0049 对于使用TSCP作为对话生成模型的系统, 这一过程可表示为: 0050 Rtseq2seq(Ut,Bt,DBt) 0051 对于使用DAMD作为对话生成模型的系统, 这一过程可表示为: 0052 Rtseq2seq(At,Ut,Bt,DBt) 0053 在seq2seq模型框架下, 对话生成模型的编码器与解码器以及不同的解码器之间 存在有拷贝(copy)机制, 这使得该模型的各个解码器都。
35、可以从用户语句表达中拷贝其对属 性槽取值的要求(例如从 “我要找便宜的餐馆” 中拷贝 “价格便宜” ), 以及其包含的属性槽 名称和领域指示符等信息, 从而以更高的准确率完成自然语言理解、 对话状态跟踪、 对话动 作预测和系统回复生成。 0054 作为优选技术手段: 在进行模型训练时, 所有的seq2seq结构都采用有监督训练的 方式; 步骤1)中匹配到的参考改写语句, 以及数据集中提供的标准系统回复和对话状态、 系 统对话动作标签作为训练参考, 并计算它们与解码器生成的概率分布之间的交叉熵, 之后 说明书 4/13 页 8 CN 111522921 A 8 将各个交叉熵相加得到最终的损失函数。
36、, 进行端到端的联合优化。 0055 有益效果: 0056 一、 本技术方案解决对话生成模型训练数据稀缺问题中的有效性。 适用范围广, 可 适用于TSCP和DAMD模型, 包含对话状态跟踪模块的对话生成模型, 并可以实现端到端系统 的搭建。 前一轮系统对话动作可以为用户语句的改写提供对话历史背景, 使得生成的改写 语句更加符合对话语境。 通过对改写后的用户语句进行筛选并用之替代原语句, 该方法可 以构造出新的对话文本, 从而扩充对话生成模型的训练数据。 此外, 该方法在语句改写模型 和对话生成模型的解码器之间加入了注意机制, 实现了端到端对话系统的搭建, 并使得改 写语句可以直接辅助对话生成,。
37、 同时对话生成的结果也可以监督语句改写模型的训练。 0057 二、 解决对话系统构建中存在的以下困难: 0058 (1)大部分现有的端到端对话系统在训练对话生成模型时, 都需要有关特定领域 内特定任务的大量的有标注的对话文本数据, 但人工搜集并标注这样的文本数据实施困难 且开销较大。 0059 (2)现有的针对于文本的数据增强方法没有考虑文本中语句在一段对话中所处的 语境, 因而不适用于扩充对话文本数据。 0060 (3)现有的基于语句改写的数据增强方法依赖于多个模型在多阶段下的单独训 练, 没有实现多模型联合训练和端到端系统的搭建, 因而难以进行系统的整体优化。 附图说明 0061 图1是本。
38、发明的为寻找参考改写语句所使用的用户语句的对话功能示例图。 0062 图2是本发明的应用基于语句改写的数据增强方法的对话系统结构图。 具体实施方式 0063 以下结合说明书附图对本发明的技术方案做进一步的详细说明。 0064 本发明提出一种基于语句改写的面向端到端对话的数据增强方法, 称为PARG, 它 通过构建并训练一个语句改写模型来扩充对话生成模型的训练数据。 首先, 该方法通过定 义用户语句的对话功能来构造语句改写模型的训练参考。 之后, 该方法采用基于序列到序 列(seq2seq)的框架, 使用两个解码器依次解码前一轮系统对话动作和改写后的用户语句, 其中, 前一轮系统对话动作可以为用。
39、户语句的改写提供对话历史背景, 使得生成的改写语 句更加符合对话语境。 通过对改写后的用户语句进行筛选并用之替代原语句, 该方法可以 构造出新的对话文本, 从而扩充对话生成模型的训练数据。 此外, 该方法在语句改写模型和 对话生成模型的解码器之间加入了注意机制, 实现了端到端对话系统的搭建, 并使得改写 语句可以直接辅助对话生成, 同时对话生成的结果也可以监督语句改写模型的训练。 本发 明通过以下步骤来实现上述应用对话数据增强的对话系统: 0065 S1: 搜索原始对话文本并考察所有用户语句的对话功能, 为每一个用户语句匹配 一个参考改写语句。 (仅针对于模型训练阶段, 应用阶段可跳过此步骤)。
40、 0066 S2: 将用户语句输入语句改写模型, 并对其进行预处理, 即分词、 正规化等操作。 0067 S3: 对输入的用户语句以及前一轮系统回复进行编码, 得到语句的向量表示。 0068 S4: 根据上一步编码结果解码前一轮系统对话动作。 说明书 5/13 页 9 CN 111522921 A 9 0069 S5: 根据步骤S3编码结果和前一轮系统对话动作, 解码改写后的用户语句。 0070 S6: 检查改写后的用户语句, 筛选出改动较大但含义不变的语句, 用以替换原对话 文本中的用户语句, 生成新的对话文本, 并将其并入原对话文本, 得到扩充的训练数据。 (仅 针对于模型训练阶段, 应用。
41、阶段可跳过此步骤) 0071 S7: 将用户语句输入对话生成模型, 并将其连同前一轮系统回复和前一轮对话状 态重新进行编码, 获得向量表示。 0072 S8: 根据上一步编码结果和步骤(5)语句改写的解码结果, 进行对话状态解码, 解 码过程中依次输出识别到的对话领域、 属性槽和属性值。 0073 S9: 根据对话状态, 在数据库中查询符合要求的实体。 0074 S10: 根据对话状态解码结果和数据库查询结果进行系统对话动作的解码(仅针对 于模型DAMD, 模型TSCP可跳过此步骤)。 0075 S11: 根据之前所有的编解码和查询结果, 生成系统的自然语言回复。 0076 S12: 对生成的。
42、回复进行后处理, 即单词合并、 添加标点等, 得到呈现给用户的自然 语言回复。 0077 下面将对PARG的具体实现原理进行介绍。 0078 在步骤S1中, 我们通过定义用户语句的对话功能来构造用户语句改写的训练参 考。 一个用户语句的对话功能包含三个部分: 前一轮系统对话动作(previous system action), 表示系统在上一轮对话当中的历史行为, 如 “问候” 、“询问-菜系” 等; 对话领域 (domain), 即对话所涉及到的主题, 如 “餐厅” 、“旅馆” 等; 用户语句中提及到的属性槽 (slots mentioned), 即用户语句中的关键词类型, 如 “地点” 、。
43、“食物” 等。 我们认为对话功能 相同的用户语句, 包含有相同的用户意图且处于相同的对话语境, 因而在属性值(提及的关 键词)相同的条件下, 可以在一段对话中相互替换, 并作为彼此的改写参考。 因此, 我们通过 搜索原始对话文本, 为每一个用户语句(原始语句)匹配到另一个对话功能相同的用户语句 (参考语句), 并将匹配到的参考语句中的属性值(关键词)修改为与原始语句中的相同, 如 将 “昂贵” 改为 “便宜” , 将 “中国菜” 改为 “越南菜” 等, 以此构造出每个用户语句的改写参考。 对话功能的示例见图1。 0079 在应用对话数据增强方法PARG的对话系统中, 我们联合训练了一个语句改写。
44、模型 和一个对话生成模型。 两模型都采用基于序列到序列(seq2seq)的框架, 由一个对话上下文 编码器(encoder)和多个串联的解码器(decoder)组成。 具体而言: 语句改写模型包含系统 对话动作解码器和改写语句解码器; 而对话生成模型则有两种, TSCP模型包含对话状态解 码器和自然语言回复解码器, 而DAMD模型则在TSCP模型的两解码器之间又加入了一个系统 对话动作解码器。 应用PARG的对话系统的结构见图2(图中的对话生成模型使用的是TSCP模 型)。 0080 在步骤S2中, 我们首先对输入的用户语句进行分词(针对中文没有自然分隔符的 特点), 再将其送入语句改写模型的。
45、上下文编码器。 0081 在步骤S3中, 我们将前一轮系统回复和输入的用户语句串联为自然语言单词序列 (系统回复和用户语句间会加入一个分隔符), 并使用一个层数为1、 隐层神经元数量为50 (针对使用TSCP进行对话生成)或100(针对使用DAMD进行对话生成)的双向GRU模型作为编 码器, 将该单词序列编码为等长的向量序列, 称为隐状态。 编码过程实现了在隐状态空间融 说明书 6/13 页 10 CN 111522921 A 10 合并理解对话中包含的语义信息。 该编码器的输出结果将依次送到语句改写模型的两个解 码器, 用于后续模型输出的解码。 0082 在步骤S4中, 语句改写模型通过系统。
46、对话动作解码器(Action Decoder)进行前一 轮系统对话动作At-1的解码。 这里的系统对话动作使用自然语言序列加以表示, 如 “餐厅-告 知-价格; 综合-是否继续” 可以表示为 “餐厅告知价格综合是否继续” 。 我们认为前一轮 系统对话动作与前一轮系统回复Rt-1直接相关, 并且可用当前轮次用户语句Ut进行反向推 演, 因而我们基于此两者的编码结果解码出前一轮系统对话动作: 0083 At-1seq2seq(Rt-1,Ut) 0084 在步骤S5中, 语句改写模型通过改写语句解码器(Paraphrase Decoder)进行改写 语句的解码, 改写语句与原用户语句Ut含义相同, 。
47、但表述方式有区别, 如 “我需要一家便 宜的餐馆” 和 “请帮助我找到一个餐厅, 并确保它是便宜的” 。 改写语句与原用户语句Ut直接 相关, 并且受到前一轮系统回复Rt-1和系统对话行为At-1的影响, 因此我们基于此三者解码 出改写语句: 0085 0086 注意到, 我们在语句改写模型的系统对话动作解码器和改写语句解码器之间加入 了注意(attention)机制, 从而模型在解码改写语句时还可以关注到前一轮系统的对话行 为, 使得生成的改写语句与前一轮系统回复衔接得更加连贯, 更加符合对话语境。 0087 在语句改写模型中, 通过应用seq2seq框架下编码器与解码器之间的拷贝(copy。
48、) 机制, 可以从前一轮系统回复中拷贝与系统对话行为直接相关的信息, 如从 “这家餐厅价格 昂贵” 中拷贝 “餐厅” 和 “价格” , 也可以从用户语句中拷贝用于构建改写语句的属性值(关键 词), 如从 “我要寻找一家便宜的餐厅” 中拷贝 “便宜” 。 因此, 这种框架可以提高解码系统对 话行为和改写语句的准确率。 0088 在步骤S6中, 我们使用了一个语句过滤器(Utterance Filter)来检查改写后的用 户语句的质量, 并滤除质量较差的改写语句。 具体过滤方法分为三步: 首先, 我们考察改写 语句和原用户语句所包含的属性值(关键词), 若两者包含的属性值不同, 则说明改写语句 错。
49、误地增添、 修改或删除了一些原语句中的关键信息, 应将其滤除; 之后, 我们考察改写语 句和原用户语句之间的BLEU(Papineni et al.,2002)分数, 若该分数低于0.2, 我们则认为 改写语句相比原语句的语义内容差别较大, 不适合代替原语句, 因此将其滤除; 最后, 我们 考察改写语句和原用户语句之间的多样性分数, 即diversity score(Hou et al.,2018), 若该分数低于3.4, 我们则认为改写语句和原语句在表达方式上过于相似, 即改写语句没有 在原语句上进行过多改变, 因而代替原语句没有太大意义, 应将其滤除。 滤除了质量较低的 改写语句之后, 我。
50、们用剩下的改写语句替换原对话文本中的用户语句, 以此构造出新的对 话文本, 从而扩充了对话生成模型的训练数据。 0089 在步骤S7中, 我们将对话生成模型在前一轮解码出的系统回复和对话状态, 连同 当前输入的用户语句, 重新串联为自然语言单词序列, 并送入对话生成模型编码器进行重 新编码。 我们仍使用层数为1、 隐层神经元数量为50(针对使用TSCP进行对话生成)或100(针 对使用DAMD进行对话生成)的双向GRU模型作为编码器。 该编码器的输出结果将依次送到对 话生成模型的解码器, 用于后续模型输出的解码。 说明书 7/13 页 11 CN 111522921 A 11 0090 在步骤。
- 内容关键字: 基于 语句 改写 面向 端到端 对话 数据 增强 方法
农业育苗盘.pdf
污水厂处理用空气介入的药剂搅拌装置.pdf
选粉机.pdf
氧气管收纳装置.pdf
中频感应电炉冷炉装置.pdf
玩具变形车.pdf
复合纤维的快速烘干装置.pdf
可折叠伸缩式电井盖板提升转运装置.pdf
过滤元件旋转焊接装置的接电模块.pdf
漂染废水处理和中水回用设备.pdf
具有旋转装饰部件的玩具泡泡棒.pdf
LED光源模组.pdf
用于标液精确取样装置.pdf
用于制备二氧化碳吸附储存材料的装置.pdf
节能保温断桥铝合金型材.pdf
多节联动节距机构.pdf
气体防倾倒运输装置.pdf
条装食品的整理机.pdf
石墨型钛合金底注式浇注排气系统.pdf
大挠度伸缩闸阀.pdf
薄膜吹塑用冷却装置.pdf
红外图像超分辨重建系统及方法.pdf
数码云相框智能照片优化处理系统.pdf
玄武岩纤维管材检测装置及方法.pdf
桥梁梁板加固焊接设备.pdf
宽范围任意频点的时频参数综合测方法.pdf
高分子颗粒筛选系统.pdf
纳米硅复合隔热材料及其制备方法.pdf
气浮轴承刚度测试装置.pdf
金属软管与燃气灶的连接结构.pdf
基于点云深度学习的机械零部件装配特征测量方法.pdf
基于车身颜色的车辆事故预测方法、设备和存储介质.pdf
一种回转式空气预热器的密封装置.pdf
用于处理程序升级的方法和装置.pdf
一种信息配置及获取网络服务的方法及装置.pdf
内存回收与分配的方法及装置.pdf
支持SD模式下IP实现的SD存储卡接口.pdf
一种基于视频运动目标的快速关键帧提取算法.pdf
管壳式换热器.pdf
关系型数据库序列号应用方法和系统.pdf
空调器室内机出风装置.pdf
一种轴瓦式轴承.pdf
基于NOSQL数据库的分布式遥感数据组织查询方法.pdf
一种处理工业有机废水的方法.pdf
一种挺柱.pdf
一种光催化处理含对苯二甲酸微污染地表水的方法.pdf
用于冰箱的风道组件及具有它的冰箱.pdf
一种比马前列素中间体的制备方法.pdf
高压容器端部环面自适应补偿增强液压密封装置.pdf
高效低磷水处理剂及其制备方法.pdf
一种事件提示的方法及系统.pdf