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 被