返回
Evaluating LLMs for Source Code Generation and Summarization Using Machine Learning Classification and Ranking
DOI:10.3390/computers15020119.png)
摘要
En 中文
近期,大型语言模型(LLMs)在代码生成和代码摘要任务中的应用已被软件工程领域广泛采用。新的LLMs不断涌现,其功能、效率和数据集的扩展使得模型能够更有效地学习。由于缺乏针对编码任务选择合适LLMs的指导方针,开发者只能主观选择,而非基于代码复杂度、代码正确性和语言相似性分析进行选择。本研究探讨了使用机器学习分类和排序方法来选择最适合代码生成和代码摘要任务的开放源代码LLMs。本研究对四个开放源代码LLMs(Mistral、CodeLlama、Gemma 2和Phi-3)进行了比较实验,并使用MBPP编码问题数据集,通过收集代码复杂度、可维护性、圈复杂度、代码结构和LLM困惑度作为一组特征,来分析代码生成的输出。在相关性最高的特征对上进行了SVM分类问题,模型通过包括准确率、ROC曲线下面积(AUC)、精确率、召回率和F1分数在内的性能指标进行评估。采用RankNet排序方法评估代码摘要模型的能力,通过测量LLM代码生成摘要与数据集中使用的编码问题之间的ROUGE和BERTScore准确率。研究结果在代码生成实验中显示最高准确率为49%,在四个最相关的特征对中,最高AUC分数达到86%。最高精确率分数达到90%,召回率分数达到92%。代码摘要实验结果显示,Gemma 2获得了1.93的RankNet胜率分数,代表了其他模型中最高的排名。Phi-3模型以1.66的分数排名第二。该研究强调了基于编码指标选择LLMs的机器学习潜力,并为未来在准确率、数据集多样性以及探索其他机器学习算法方面的进步奠定了基础。
Keyword:
large language models
LLM applications
code generation
summarization
Halstead complexity
linguistic similarity
期刊
C
IF:
4.2
论文数:
1.5K
被引数:
3.3K

