Page 127 - 《软件学报》2026年第6期
P. 127

2446                                                       软件学报  2026  年第  37  卷第  6  期


                 生模型相较于教师模型的精度损失.
                    进一步地, 本文将      KD  及  RKD  方法训练模型的时长提高       30%, 即训练占用的时间与       AKD  方法一致, 评估其
                 实验效果, 如表    8  所示, 即使给  KD  和  RKD  方法相同的时间和资源, 仍然与       AKD  方法存在   16.9%  的差距.

                    表 8 相同训练时间下       AKD  方法与其他知识蒸馏方法在          HumanEval 与  MBPP  数据集上的性能对比     (%)

                                                         HumanEval                      MBPP
                       模型             方法
                                                    Pass@1        精度损失           Pass@1       精度损失
                    StarCoder-7B    教师模型             29.3           -             32.0           -
                                       KD         18.3 (↑ 1.23)    37.0         24.2 (↓ 0.2)    24.0
                    StarCoder-1B      RKD         14.0 (↓ 3.07)    52.0         24.6 (↑ 5.2)    23.0
                                      AKD            20.7          29.3           30.4          5.0

                    综上所述, 关于推理显存需求情况, KD           和  RKD  方法需要  54.7 GB, 而  AKD  方法仅增加  3 GB. 关于训练时间
                 方面, AKD  方法所需训练时间增加        30%; 相较而言, 即使    KD  和  RKD  方法训练至相同时长, 它们的平均效果仅提
                 升  3%, 相比  AKD  方法低  16.9%. 因此, AKD  方法增加的训练成本是值得的.
                  4.4.5    RQ5: Prompt 对  AKD  方法的训练效果有什么影响?
                    为研究不同     prompt 对教师模型的生成质量的影响及教师模型的生成质量对学生模型训练效果的影响, 本文
                 从  CodeAlpaca 数据集中随机采样     200  个样本, 采用不同的    prompt 模板结合数据集的内容作为教师模型的输入,
                 对每个样本预期输出的词求平均概率和平均熵, 得到的结果如表                     9  所示.

                                     表 9 不同   prompt 模板下教师模型对预期输出词的统计分析

                             模板类别             来源           平均概率值最大的次数           平均熵最大的次数
                              模板1           StarCoder             24                 11
                              模板2           Instruct-Eval         7                   0
                              模板3         Stanford-Alpaca        171                 189

                    使用模板    3  时, 教师模型赋予预期输出词更高的概率, 其平均概率值最高的样本数为                     171, 显著高于模板    1  和
                 模板  2; 平均熵最高的样本数达       189, 也远超模板   1  和模板  2, 表明模板  3  使模型输出更集中、更接近预期.
                    接着, 本文采用结合不同模板的           prompt 对学生模型进行知识蒸馏, 实验结果如表            10  所示, 使用模板   1  和模
                 板  2 训练的学生模型在     HumanEval 数据集上的表现一致, Pass@1 准确率均为         20.1%, 精度损失为   31.0%. 在  MBPP
                 数据集上, 模板的     Pass@1  准确率为  27.6%, 精度损失为   14%; 模板  2  的准确率略低, 为  27.2%, 精度损失为   15.0%.


                                        表 10 不同   prompt 模板对知识蒸馏效果的影响         (%)

                                                          HumanEval                     MBPP
                        模型             方法
                                                    Pass@1        精度损失          Pass@1        精度损失
                     StarCoder-7B     教师模型           29.3           -             32.0          -
                                      学生模型           13.4          54.0           14.0          56.0
                                       模板1           20.1          31.0           27.6          14.0
                     StarCoder-1B
                                       模板2           20.1          31.0           27.2          15.0
                                       模板3           20.7          29.0           30.4          5.0

                    模板  3  训练的学生模型在      HumanEval 数据集上的 Pass@1 准确率为      20.7%, 精度损失为   29.0%, 较模板  1  和
                 模板  2  略有提升. 在  MBPP  数据集上表现更优, Pass@1    准确率达到     30.4%, 精度损失仅为    5.0%.
                    综上所述, 实验结果表明不同提示词模板会影响教师模型的生成质量, 进而影响学生模型的知识蒸馏效果. 其
                 中, 采用  Stanford-Alpaca 模板进行知识蒸馏的效果最佳.
                  4.4.6    RQ6: AKD  方法的学习策略是否对训练效果有影响?
                    为分析   AKD  方法中   β 值对模型性能的影响, 本文设计了          3  种   β 值学习策略并开展消融实验研究. 实验结果
   122   123   124   125   126   127   128   129   130   131   132