semeru/code-code-CodeRefinement-Java-Small
收藏Hugging Face2023-03-27 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/semeru/code-code-CodeRefinement-Java-Small
下载链接
链接失效反馈官方服务:
资源简介:
---
license: mit
Programminglanguage: "Java"
version: "N/A"
Date: "May 2019 paper release date for https://arxiv.org/pdf/1812.08693.pdf"
Contaminated: "Very Likely"
Size: "Standard Tokenizer"
---
### Dataset is imported from CodeXGLUE and pre-processed using their script.
# Where to find in Semeru:
The dataset can be found at /nfs/semeru/semeru_datasets/code_xglue/code-to-code/code-refinement/data/small in Semeru
## Task Definition
Code refinement aims to automatically fix bugs in the code, which can contribute to reducing the cost of bug-fixes for developers.
In CodeXGLUE, given a piece of Java code with bugs, the task is to remove the bugs to output the refined code.
Models are evaluated by BLEU scores, accuracy (exactly match) and [CodeBLEU](https://github.com/microsoft/CodeXGLUE/blob/main/code-to-code-trans/CodeBLEU.MD).
## Dataset
We use the dataset released by this paper(https://arxiv.org/pdf/1812.08693.pdf). The source side is a Java function with bugs and the target side is the refined one.
All the function and variable names are normalized. Their dataset contains two subsets ( i.e.small and medium) based on the function length. This dataset is small.
### Data Statistics
Data statistics of this dataset are shown in the below table:
| | #Examples |
| ------- | :-------: |
| | Small |
| Train | 46,680 |
| Valid | 5,835 |
| Test | 5,835 |
# Reference
<pre><code>@article{tufano2019empirical,
title={An empirical study on learning bug-fixing patches in the wild via neural machine translation},
author={Tufano, Michele and Watson, Cody and Bavota, Gabriele and Penta, Massimiliano Di and White, Martin and Poshyvanyk, Denys},
journal={ACM Transactions on Software Engineering and Methodology (TOSEM)},
volume={28},
number={4},
pages={1--29},
year={2019},
publisher={ACM New York, NY, USA}
}</code></pre>
许可证:MIT协议
编程语言:Java
版本:无可用信息
发布日期:对应论文https://arxiv.org/pdf/1812.08693.pdf的2019年5月发布时间
数据污染状况:极有可能存在污染
分词方式:标准分词器
本数据集源自CodeXGLUE,并通过其官方脚本完成预处理。
### 数据集在Semeru集群中的存储路径
该数据集存储于Semeru集群的/nfs/semeru/semeru_datasets/code_xglue/code-to-code/code-refinement/data/small路径下。
## 任务定义
代码精修旨在自动修复代码中的漏洞,可有效降低开发者的漏洞修复成本。在CodeXGLUE基准任务中,本任务的输入为一段存在漏洞的Java代码,目标为移除其中的漏洞并输出精修后的代码。模型性能通过BLEU分数、准确率(完全匹配)以及CodeBLEU指标进行评估,评估细则详见https://github.com/microsoft/CodeXGLUE/blob/main/code-to-code-trans/CodeBLEU.MD。
## 数据集概况
本数据集采用论文https://arxiv.org/pdf/1812.08693.pdf发布的公开数据集。数据集的源侧为存在漏洞的Java函数,目标侧为对应的精修后函数。所有函数名与变量名均已完成归一化处理。该原始数据集依据函数长度分为两个子集,即small与medium,本数据集为small子集。
### 数据统计
本数据集的统计信息如下表所示:
| | 样本数量 |
| :-------: | :-------: |
| | Small子集 |
| 训练集 | 46,680 |
| 验证集 | 5,835 |
| 测试集 | 5,835 |
## 参考文献
<pre><code>@article{tufano2019empirical,
title={An empirical study on learning bug-fixing patches in the wild via neural machine translation},
author={Tufano, Michele and Watson, Cody and Bavota, Gabriele and Penta, Massimiliano Di and White, Martin and Poshyvanyk, Denys},
journal={ACM Transactions on Software Engineering and Methodology (TOSEM)},
volume={28},
number={4},
pages={1--29},
year={2019},
publisher={ACM New York, NY, USA}
}</code></pre>
提供机构:
semeru
原始信息汇总
数据集概述
数据集来源与处理
- 数据集从CodeXGLUE导入,并使用其脚本进行预处理。
存储位置
- 数据集位于Semeru的
/nfs/semeru/semeru_datasets/code_xglue/code-to-code/code-refinement/data/small路径下。
任务定义
- 任务目标:自动修复Java代码中的错误,以减少开发者修复错误的时间和成本。
- 输入:带有错误的Java代码。
- 输出:经过错误修正的代码。
- 评估指标:BLEU分数、准确度(完全匹配)和CodeBLEU。
数据集详情
- 数据来源:基于论文https://arxiv.org/pdf/1812.08693.pdf发布的研究。
- 数据结构:源代码为带有错误的Java函数,目标代码为修正后的版本。
- 数据处理:所有函数和变量名已进行规范化处理。
- 数据集大小:包含两个子集(小和中等),根据函数长度划分,本数据集为小规模。
数据统计
- 训练集:46,680个样本
- 验证集:5,835个样本
- 测试集:5,835个样本
引用信息
@article{tufano2019empirical, title={An empirical study on learning bug-fixing patches in the wild via neural machine translation}, author={Tufano, Michele and Watson, Cody and Bavota, Gabriele and Penta, Massimiliano Di and White, Martin and Poshyvanyk, Denys}, journal={ACM Transactions on Software Engineering and Methodology (TOSEM)}, volume={28}, number={4}, pages={1--29}, year={2019}, publisher={ACM New York, NY, USA} }
搜集汇总
数据集介绍

构建方式
在软件工程领域,代码缺陷修复是提升软件质量的关键环节。该数据集源自CodeXGLUE平台,其构建基于Tufano等人于2019年发表的实证研究,通过神经机器翻译方法从真实开源项目中采集Java函数级代码对。原始数据经过系统化处理,包括函数与变量名的标准化,并依据函数长度划分为小规模子集,最终形成包含训练、验证与测试分区的结构化语料,共计58,350个样本,旨在为自动化代码修复任务提供高质量基准。
特点
作为代码缺陷修复领域的专项数据集,其核心特点在于聚焦Java语言中的函数级bug修复场景。数据经过精心设计,所有标识符均被归一化处理,以消除命名偏差对模型学习的干扰。数据集规模适中,划分为小容量版本,便于快速实验与迭代。每个样本均以缺陷代码与修复后代码的配对形式呈现,为模型学习代码语义转换提供了清晰的对齐关系,并支持基于BLEU、精确匹配及CodeBLEU等多维度评估指标。
使用方法
该数据集适用于训练与评估自动化代码修复模型,典型应用场景包括基于序列到序列的神经机器翻译架构或预训练代码模型的微调。使用者可加载数据集的训练集进行模型训练,利用验证集调整超参数,最终在测试集上评估修复性能。评估时需遵循CodeXGLUE框架,计算BLEU分数、精确匹配率以及CodeBLEU指标,以全面衡量生成代码的功能正确性与结构相似性。数据文件可直接从指定路径读取,或通过HuggingFace平台集成至机器学习流水线中。
背景与挑战
背景概述
在软件工程领域,代码缺陷的自动修复一直是提升开发效率与软件质量的核心议题。semeru/code-code-CodeRefinement-Java-Small数据集由Tufano等研究人员于2019年构建,其研究基础源自论文《An empirical study on learning bug-fixing patches in the wild via neural machine translation》。该数据集聚焦于Java代码的精细化修复任务,旨在通过神经网络机器翻译技术,将含有缺陷的代码片段自动转换为修正后的版本。作为CodeXGLUE基准的重要组成部分,它为代码智能领域提供了标准化的评估框架,推动了自动化缺陷修复技术的实证研究与发展。
当前挑战
该数据集致力于解决代码缺陷自动修复这一复杂问题,其核心挑战在于如何准确理解代码语义与缺陷模式,并生成语法正确且功能等效的修复代码。构建过程中,研究人员需应对数据收集与标注的困难,包括从真实世界软件项目中提取配对的有缺陷与修复后代码,并确保数据质量与规模平衡。此外,代码的抽象化处理如函数与变量名归一化,虽增强了模型泛化能力,但也可能丢失部分上下文信息,增加了学习难度。
常用场景
经典使用场景
在软件工程与人工智能交叉领域,代码精炼任务致力于自动修复程序中的缺陷,这一过程对于提升软件开发效率至关重要。semeru/code-code-CodeRefinement-Java-Small数据集作为经典资源,其核心应用场景在于训练和评估基于神经机器翻译的代码修复模型。研究者利用该数据集中的错误Java函数与修正后版本配对,构建端到端的序列到序列学习框架,通过模型学习从缺陷代码到无缺陷代码的映射规律,从而自动化地识别并纠正编程错误,为智能编程辅助工具奠定基础。
实际应用
在实际开发环境中,该数据集支撑的智能代码修复技术已逐步集成到现代集成开发环境与持续集成流程中。例如,工具能够在代码审查阶段自动提示潜在缺陷并提供修正建议,显著降低人工调试成本。在教育培训领域,它可用于构建智能编程导师系统,实时分析学员代码并给出改进方案。此外,大型科技企业借助此类技术增强其代码质量检测平台,实现早期缺陷预警与自动补丁生成,从而提升软件产品的可靠性与开发团队的生产力。
衍生相关工作
围绕该数据集,学术界衍生出一系列经典研究工作。例如,原始论文提出的基于神经机器翻译的缺陷修复框架,开创了将代码变更视为翻译任务的先河。后续研究在此基础上引入了注意力机制、图神经网络以及预训练语言模型(如CodeBERT、PLBART),以更好地捕捉代码结构特征。同时,评估指标也从传统BLEU扩展到CodeBLEU等专为代码设计的度量标准。这些工作共同推动了自动程序修复领域的演进,形成了从序列建模到语义增强的技术脉络。
以上内容由遇见数据集搜集并总结生成



