Skip to main content
QUICK REVIEW

[论文解读] Generative AI for Software Metadata: Overview of the Information Retrieval in Software Engineering Track at FIRE 2023

Srijoni Majumdar, Soumen Paul|arXiv (Cornell University)|Oct 27, 2023
Software Engineering Research被引用 5
一句话总结

本文评估了使用大型语言模型(LLM)生成的'银标准'标签,以改进对代码注释是否'有用'或'无用'的二元分类,从而提升软件可维护性。基于包含9,048个基于C语言的GitHub注释的数据集及LLM增强数据,17支团队提交了56项实验;结果表明,LLM标签可减少模型过拟合,并适度提升F1分数(最高提升4%),验证了其在最小化人工标注黄金标准数据量的前提下,规模化评估注释质量的实用性。

ABSTRACT

The Information Retrieval in Software Engineering (IRSE) track aims to develop solutions for automated evaluation of code comments in a machine learning framework based on human and large language model generated labels. In this track, there is a binary classification task to classify comments as useful and not useful. The dataset consists of 9048 code comments and surrounding code snippet pairs extracted from open source github C based projects and an additional dataset generated individually by teams using large language models. Overall 56 experiments have been submitted by 17 teams from various universities and software companies. The submissions have been evaluated quantitatively using the F1-Score and qualitatively based on the type of features developed, the supervised learning model used and their corresponding hyper-parameters. The labels generated from large language models increase the bias in the prediction model but lead to less over-fitted results.

研究动机与目标

  • 探究LLM生成的标签是否能有效增强黄金标准数据集,用于分类软件工程中代码注释的有用性。
  • 评估来自LLM的银标准标签对模型泛化能力和注释质量分类性能的影响。
  • 分析在使用混合黄金标准与LLM生成标签训练时,不同特征、嵌入技术及机器学习模型对分类性能的影响。
  • 理解LLM标签引入的偏差与在注释质量预测模型中减少过拟合之间的权衡。
  • 建立一种可扩展、数据高效的方法,适用于多种软件系统和编程语言的注释质量评估。

提出的方法

  • 本研究采用二元分类任务,根据代码注释对代码理解的贡献,将其标记为'有用'或'无用'。
  • 从开源GitHub项目中收集了9,048个基于C语言的代码-注释对作为种子数据集,并由人工标注了'黄金'标签。
  • 利用LLM(如GPT-2、BERT)生成额外数据集,以产生用于数据增强的'银标准'标签。
  • 各团队应用了多种文本、结构和语义特征,如TF-IDF、word2vec、BERT嵌入、词性标注以及基于抽象语法树(AST)的相关性,以表示代码与注释对。
  • 在混合黄金标准与银标准数据上训练监督学习模型(如神经网络、SVM),并通过F1分数、精确率和召回率评估性能。
  • 通过黄金标准测试集进行定量评估,并基于特征设计、模型选择和超参数调优进行定性分析。

实验结果

研究问题

  • RQ1LLM生成的标签能否有效提升机器学习模型在分类代码注释是否'有用'或'无用'方面的性能?
  • RQ2在注释质量分类中,引入LLM生成的银标准标签如何影响模型偏差与过拟合?
  • RQ3在使用混合黄金标准与LLM生成标签训练时,哪些类型的特征与嵌入技术能实现最稳健的性能表现?
  • RQ4使用LLM生成标签进行数据增强,在多样化代码库与注释风格之间实现泛化的能力有多强?
  • RQ5不同LLM及提示策略在软件元数据任务中如何影响合成标签的质量与可靠性?

主要发现

  • LLM生成的银标准标签的整合带来了适度但一致的F1分数提升,多个提交结果的增益在2%至4%之间。
  • 尽管引入了部分偏差,LLM生成的标签显著减少了模型过拟合,尤其是在使用较小的黄金标准数据集训练时。
  • 使用BERT和ELMo嵌入的团队取得了更高的F1分数(例如,在DDU-1数据集上达到0.885),优于TF-IDF或独热编码等简单方法。
  • 表现最佳的模型结合了文本特征(如词性标注、词频)与代码-注释相关性特征(如类似grep的字符串匹配),以增强语义对齐。
  • DDU-1团队在综合数据集上取得了0.893的最高F1分数,表明在LLM增强数据下具有出色的泛化能力。
  • 多个团队报告称,仅使用LLM生成数据时性能下降,凸显了将LLM生成数据与黄金标准标签结合使用以获得最佳结果的重要性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。