Page 278 - 《软件学报》2025年第5期
P. 278

2178                                                       软件学报  2025  年第  36  卷第  5  期


                    Llama 2-13B [36] 是一个具有  130  亿参数的开源自回归大语言模型        (large language model, LLM), 它在众多任务
                 中展示出了强劲的性能. 研究发现, 通过在测试问题之前附加相关的问题示例以及相应回答问题的推理链                                   (chain
                 of thought, CoT) [35] , 可以指导模型构建测试问题的推理链来生成答案, 进一步提升大语言模型的表现.
                    GPT-3.5-Turbo  [37] 是一个闭源的商业自回归大语言模型       (LLM), 其在很多任务上展现了强大的性能, 其也可以
                 通过  CoT  进一步提升其性能.
                    Human Expert/General Crowd Performance [5,8] 显示了专家/非专家在测试上的表现.

                 4.3   评价指标
                    对于  FinQA  数据集, 本文通过评价生成的计算程序正确率             (program accuracy) 和答案正确率  (answer accuracy)
                 来衡量问答模型的性能. 因为         MultiHiertt 数据集的部分问题不涉及计算程序, 这里参考相关工作                [8] , 用答案正确
                 率  (answer accuracy) 和答案单词的 F1  重合度指标来评价模型性能.
                    需要特别说明, 由于数据集         MultiHiertt 的测试集不公开答案, 需要通过在线榜单获取模型在测试集上性能结
                 果. 因此在  MultiHiertt 数据集, 本文报告的是两种类型问题综合结果. 同时需要强调的是, 在                 MutliHiertt 数据集中,
                 MGCC  仅用于提升生成器计算程序生成子模块, 没有作用于答案抽取子模块. 对于答案抽取部分的问题, 本文采
                 用  MT2Net 提供的答案抽取子模块来生成答案. 最终, 本文将                MGCC   提升的计算程序生成子模块的结果与
                 MT2Net 的答案抽取子模块结果结合         (MT2Net 介绍见第   4.2  节), 作为测试集的答案, 并在线提交到测评网站, 获得
                 在线榜单成绩     (https://codalab.lisn.upsaclay.fr/competitions/6738).

                 4.4   实验设置
                    本文通过    FinQA  和  MultiHiertt 两个数据集来验证多粒度单元格语义对比 (MGCC) 方法的有效性. 在这两个
                 数据集上, 本文通过验证集选取模型参数, 并在测试集上报告结果. 在主试验和消融实验中, 本文采用                              5  个随机种
                 子  (分别为  0、21、42、777  和  9 999) 进行实验, 并取这些实验结果的平均值作为模型最终结果, 同时报告                  5  次实
                 验结果的方差. 对于分析实验, 考虑到计算资源的限制, 本文报告随机种子                     42  时的模型结果.
                    对于   FinQA  数据集, 本文基于    FinQANet 来验证   MGCC  在生成器上的有效性. 具体而言, 检索器保持与
                                                                    [5]
                 FinQANet 一致, 检索器返回的     top 3  检索句子的召回率是     89.66% . 然后本文使用生成器       encoder 分别为  BERT-
                 base (110M  参数) [28] 的  FinQANet(BERT-base) 和  RoBERTa-large (355M  参数) [38] 的  FinQANet(RoBERTa-large) 来验
                 证  MGCC  有效性. 对于  FinQA  数据集, 问题表示和单元格句子整体语义表示采用               [SEP] 的表示.
                    对于  MultiHiertt 数据集, 本文采用  MT2Net 生成器的计算程序生成子模块验证             MGCC  有效性. 具体地, 检索
                                                                             [8]
                 器保持与    MT2Net 一致, 检索器返回的 top 10    的检索句子的召回率是         80.8% . 对于计算程序生成子模块, 采用
                 encoder 为  RoBETa-large 的计算程序生成子模块验证     MGCC  有效性. 对于    MultiHiertt 数据集, 问题表示和单元格
                 句子整体语义表示采用对应的经过分词器后所有子词的平均表示.
                    FinQANet(BERT-base)+MGCC: 使用最大序列长度为       512  的  BERT-base (110M  参数) 作为生成器的  encoder,
                 decoder 与  Chen  等人  [5] 提出  FinQANet 一致. 多粒度对比损失的温度系数   τ 为  0.8, 训练损失权重  λ 为  0.8. 优化器
                 采用  AdamW [39] , 其学习率是  2.0E–5, 同时采用线性预热方案在       10%  的数据上对学习率进行预热. 训练的           batch
                 size 设定为  32, 一共训练  300  个  epochs. 在这个模型中, 本文随机采样的正例数目         K1  和负例数目   K2  为  10, 这里
                 K1  和  K2  代表最多采样个数.
                    FinQANet(RoBERTa-large)+MGC: 这里  RoBERTa-large (355M  参数) 被作为  FinQANet 生成器的  encoder,
                 decoder 与  Chen  等人  [5] 提出  FinQANet 相同. 多粒度对比损失的温度系数   τ 为  0.6, 训练损失权重  λ 为  0.8. AdamW
                 被用于优化模型参数, 学习率是          1.5E–5, 也采用线性预热方案在      10%  的数据上进行学习率预热. 训练的          batch size
                 为  32, 训练的  epochs 是  300. 这个模型下, 随机采样的正例数目      K1  和负例数目   K2  为  30, 这里  K1  和  K2  代表最多
                 采样个数.
                    MT2Net(RoBERTa-large)+MGCC: 使用  RoBERTa-large 作为  MT2Net 生成器的计算程序生成子模块的       encoder,
                 decoder 与  Chen 等人  [5] 提出  FinQANet 一致. 多粒度对比损失的温度系数   τ 为  0.8, 训练损失权重  λ 为  1. AdamW  被
   273   274   275   276   277   278   279   280   281   282   283