Page 131 - 《软件学报》2026年第6期
P. 131
2450 软件学报 2026 年第 37 卷第 6 期
StarCoder 系列模型, AKD 方法在 HumanEval(+) 数据集上的精度损失从学生模型的 54.2% (50.2%) 降低至 29.3%
(26.6%), 在 MBPP 数据集上的精度损失从 56.3% 降低至 5.0%. 其他方法在 HumanEval(+) 和 MBPP 数据集上的精
度损失在 41.7%–44.0% (39.9%–42.5%) 和 23.1%–39.4%. AKD 方法在 3 种评估数据集上较其他基准方法平均降低
了 13.6% (14.6%) 和 26.3% 的精度损失.
表 15 CodeAlpaca 数据集上不同方法对 StarCoder 和 DeepSeek-Coder 性能的影响 (%)
HumanEval(+) MBPP
模型 方法
Pass@1 精度损失 Pass@1 精度损失
StarCoder-7B 教师模型 29.3 (23.3) - (-) 32.0 -
学生模型 13.4 (11.6) 54.2 (50.2) 14.0 56.3
RKD 16.4 (14.0) 44.0 (39.9) 19.4 39.4
StarCoder-1.1B
KD 17.1 (13.4) 41.7 (42.5) 24.6 23.1
AKD 20.7 (17.1) 29.3 (26.6) 30.4 5.0
DeepSeek-Coder-6.7B 教师模型 47.6 (40.9) - (-) 57.6 -
学生模型 29.9 (26.2) 37.2 (35.9) 42.4 26.4
RKD 32.9 (26.2) 30.9 (35.9) 43.6 24.3
DeepSeek-Coder-1.3B
KD 31.1 (26.2) 34.7 (35.9) 41.2 28.5
AKD 34.1 (27.4) 28.4 (33.0) 44.2 23.3
表 16 Magicoder-OSS-Instruct 数据集上不同方法对 StarCoder 和 DeepSeek-Coder 性能的影响 (%)
HumanEval(+) MBPP
模型 方法
Pass@1 精度损失 Pass@1 精度损失
StarCoder-7B 教师模型 29.3 (23.3) - (-) 32.0 -
学生模型 13.4 (11.6) 54.2 (50.2) 14.0 56.3
RKD 18.3 (12.8) 37.5 (45.1) 24.8 22.5
StarCoder-1.1B
KD 18.9 (12.2) 35.4 (47.6) 25.0 21.9
AKD 19.5 (13.4) 33.4 (42.5) 28.8 10.0
DeepSeek-Coder-6.7B 教师模型 47.6 (40.9) - (-) 57.6 -
学生模型 29.9 (26.2) 37.2 (35.9) 42.4 26.4
RKD 33.5 (29.9) 29.6 (26.9) 46.8 18.8
DeepSeek-Coder-1.3B
KD 34.8 (32.3) 26.9 (21.0) 47.8 17.0
AKD 36.6 (32.3) 23.1 (21.0) 48.6 15.6
对于 DeepSeek-Coder 系列模型, AKD 方法在 HumanEval(+) 数据集上的精度损失从学生模型的 37.2%
(35.9%) 降低至 28.4% (33.0%), 在 MBPP 数据集上的精度损失从 26.4% 降低至 23.3%. 其他方法在 HumanEval(+)
和 MBPP 数据集上的精度损失则在 31.1%–32.9% (34.7%–35.9%) 和 24.3%–28.5%. AKD 方法在 3 种评估数据集
上较其他基准方法平均降低了 4.4% (2.9%) 和 3.1% 的精度损失.
从表 16 的实验可以得知, 在 Magicoder-OSS-Instruct 数据集上, 对于 StarCoder 系列模型, AKD 方法在
HumanEval(+) 数据集上的精度损失从学生模型的 54.2% (50.2%) 降低至 33.4% (42.5%), 在 MBPP 数据集上的精
度损失从 56.3% 降低至 10.0%. 其他方法在 HumanEval(+) 和 MBPP 数据集上的精度损失则在 35.4%–37.5%
(45.1%–47.6%) 和 21.9%–22.5%. AKD 方法在 3 种评估数据集上较其他基准方法平均降低了 3.1% (3.9%) 和
12.2% 的精度损失.
对于 DeepSeek-Coder 系列模型, AKD 方法在 HumanEval(+) 数据集上的精度损失从学生模型的 37.2%
(35.9%) 降低至 23.1% (21.0%), 在 MBPP 数据集上的精度损失从 26.4% 降低至 15.6%. 其他方法在 HumanEval(+)
和 MBPP 数据集上的精度损失则在 26.9%–29.6% (21.0%–26.9%) 和 17.0%–18.8%. AKD 方法在 3 种评估数据集
上较其他基准方法平均降低了 5.2% (3.0%) 和 2.3% 的精度损失.
实验结果显示, AKD 方法在不同的训练数据集及评估标准中, 均能显著降低模型的精度损失, 提升代码生成

