BioCoder: A Benchmark for Bioinformatics Code Generation with Contextual Pragmatic Knowledge

解决问题:本论文旨在解决生物信息学领域中代码生成的问题,以及评估目前预训练语言模型在生成生物信息学代码方面的效果。相较于其他领域的代码生成,生物信息学领域中的代码生成需要考虑更多的领域知识、复杂的数据操作和操作之间的依赖关系。

关键思路:本论文提出了一个名为BioCoder的基准测试集,用于评估预训练语言模型在生成生物信息学代码方面的效果。BioCoder包括1026个Python和Java函数和1243个方法,以及来自Rosalind项目的253个样例。与其他代码生成任务相比,BioCoder考虑了潜在的包依赖关系、类声明和全局变量。此外,本论文还提出了实用的代码生成框架,用于评估多个预训练语言模型的效果。对这些模型的详细分析强调了领域知识、实用代码生成和上下文理解的重要性。

其他亮点:本论文提出的BioCoder基准测试集为生物信息学领域的代码生成提供了一个可靠的评估标准,并提供了用于测试的Docker镜像和脚本。此外,本论文还评估了多个预训练语言模型的效果,为后续研究提供了重要的参考。

相关研究:近期其他相关研究包括:

  • "CodeBERT: A Pre-Trained Model for Programming and Natural Language Processing" by Ke Wang et al. from Microsoft Research Asia.
  • "Learning to Generate Pseudo-code from Source Code using Generative Adversarial Networks" by Miltiadis Allamanis and Marc Brockschmidt from Microsoft Research Cambridge.
  • "Code Generation as Dual Task of Code Summarization" by Pengcheng Yin et al. from Microsoft Research Asia.

论文摘要:本文介绍了一个名为BioCoder的基准测试,该测试旨在评估现有的预训练模型在生成生物信息学代码方面的表现。在生物信息学中,生成功能性程序面临着额外的挑战,因为需要大量的领域知识、复杂的数据操作和操作之间错综复杂的功能依赖关系。BioCoder涵盖了潜在的包依赖关系、类声明和全局变量等方面,包括1026个Python和Java函数和1243个方法,以及来自Rosalind项目的253个示例。本文还介绍了一个模糊测试框架,用于评估多个模型,包括InCoder、CodeGen、CodeGen2、SantaCoder、StarCoder、StarCoder+、InstructCodeT5+和ChatGPT。对这些模型的详细分析强调了领域知识、实用代码生成和上下文理解的重要性。本文提供了用于测试的数据集、基准测试、Docker镜像和脚本,均可在https://github.com/gersteinlab/biocoder获取。

内容中包含的图片若涉及版权问题,请及时与我们联系删除