Page 70 - 《软件学报》2021年第10期
P. 70

3042                                 Journal of Software  软件学报 Vol.32, No.10, October 2021


                                  Transformer encoder              Transformer decoder

                                 1                                1

                                    DAE(S):AMR_BOS S 1,…,S n1     DAE(S):AMR_BOS T 1,…,T m1
                                2                               2

                                   DAE(T):TXT_BOS S 1,…,S n2     DAE(T):TXT_BOS T 1,…,T m2
                              3                                3
                                  A2T:AMR_BOS S 1,…,S n3         A2T:TXT_BOS T 1,…,T m3

                                    Fig.3    Illustration of MTL fine-tuning for multi-task pre-training
                                                 图 3   MTL 微调方法示意图
                 4    实   验

                    本节首先介绍实验所用数据集以及评价标准,然后设计实验对本文的方法进行验证并对实验结果进行分
                 析讨论.
                 4.1   实验数据集

                       预训练数据集
                    为了训练预训练模型,本文使用 WMT14 英语到德语翻译的 news-commentray-v11 数据集中的英语部分.该
                 数据集共包括 390 961 个英语句子.使用斯坦福分词工具进行分词后,平均每个句子包含 25 个单词.为了得到这
                 些句子的自动 AMR 图,本文分别基于 AMR2.0 和 AMR3.0 训练得到两个基于序列到序列的 AMR 分析器.这两
                 个 AMR 分析器在 AMR2.0 和 AMR3.0 测试集上的性能分别是 73.21 和 74.65 Smatch F1 值.紧接着,合并 AMR
                 人工标注数据集和自动标注数据集,使用 BPE 工具并设置操作数 2 万以获取子词词表,最后将人工标注数据和
                 自动标注数据按照此词表进行子词化处理.
                       AMR 数据集
                    为了评测 AMR 文本生成的性能,本文使用两个 AMR 数据集,分别是 AMR2.0 和 AMR3.0.这两个数据集的
                 统计见表 2.值得注意的是,AMR3.0 中的训练集、开发集和测试集均包含了 AMR2.0 的相应部分.本文根据第
                 2.1 节对 AMR 图进行线性化,同时对文本端使用斯坦福分词工具进行分词.然后,使用预训练数据集的子词词表,
                 将线性化后的 AMR 图和分词后的文本进行子词化处理.

                                           Table 2  Statistics on AMR2.0 and AMR3.0
                                              表 2   AMR2.0 和 AMR3.0 统计信息
                                           数据集       训练集       开发集        测试集
                                          AMR2.0     36 521     1 368     1 371
                                          AMR3.0     55 635     1 722     1 898

                 4.2   模型设置
                    本文使用 Open-NMT 作为 Transformer 模型的实现.模型参数参照文献[24]的 Transformer-base 模型的参数.
                 在该参数设置中,编码器和解码器的层数均设置为 6,多头注意力机制的头数设置为 8,词向量大小和隐藏状态
                 大小均设置为 512 维.同时,前向神经网络中间层状态大小设置为 2 048 维.本文模型中使用 Adam 优化器                          [40] ,并
                 设置 1 和 2 值分别为 0.9 和 0.98.学习率和预热步数(warmup step)分别设置为 2.0 和 16 000.以子词为单位的批
                 处理大小设置为 4 096.所有的模型皆训练 25 万次迭代,并且根据 news-commentray-v11 数据集的开发集选择最
                 优模型.
                    在微调模型时,模型参数与如上预训练模型参数设置一致.
   65   66   67   68   69   70   71   72   73   74   75