five

AhmedSSoliman/CodeXGLUE-CONCODE

收藏
Hugging Face2022-09-13 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/AhmedSSoliman/CodeXGLUE-CONCODE
下载链接
链接失效反馈
官方服务:
资源简介:
## Concode dataset A large dataset with over 100,000 examples consisting of Java classes from online code repositories, and develop a new encoder-decoder architecture that models the interaction between the method documentation and the class environment. Concode dataset is a widely used code generation dataset from Iyer's EMNLP 2018 paper [Mapping Language to Code in Programmatic Context](https://www.aclweb.org/anthology/D18-1192.pdf). Data statistics of concode dataset are shown in the below table: | | #Examples | | --------- | :---------: | | Train | 100,000 | | Validation | 2,000 | | Test | 2,000 | ## Data Format Code corpus are saved in json lines format files. one line is a json object: ``` { "nl": "Increment this vector in this place. con_elem_sep double[] vecElement con_elem_sep double[] weights con_func_sep void add(double)", "code": "public void inc ( ) { this . add ( 1 ) ; }" } ``` `nl` combines natural language description and class environment. Elements in class environment are seperated by special tokens like `con_elem_sep` and `con_func_sep`. ## Task Definition Generate source code of class member functions in Java, given natural language description and class environment. Class environment is the programmatic context provided by the rest of the class, including other member variables and member functions in class. Models are evaluated by exact match and BLEU. It's a challenging task because the desired code can vary greatly depending on the functionality the class provides. Models must (a) have a deep understanding of NL description and map the NL to environment variables, library API calls and user-defined methods in the class, and (b) decide on the structure of the resulting code. ## Reference Concode dataset: <pre><code>@article{iyer2018mapping, title={Mapping language to code in programmatic context}, author={Iyer, Srinivasan and Konstas, Ioannis and Cheung, Alvin and Zettlemoyer, Luke}, journal={arXiv preprint arXiv:1808.09588}, year={2018} }</code></pre>

### Concode数据集(Concode dataset) 该数据集包含超过10万条样本,均源自在线代码仓库中的Java类,相关研究同时提出了一种全新的编码器-解码器架构,用于建模方法文档与类环境之间的交互。 Concode数据集是由Iyer等人在2018年自然语言处理经验方法会议(EMNLP)论文《在程序化上下文中将语言映射至代码》(*Mapping Language to Code in Programmatic Context*)中提出并广泛使用的代码生成数据集,论文链接为:https://www.aclweb.org/anthology/D18-1192.pdf。 #### 数据集统计 Concode数据集的样本统计信息如下表所示: | | 样本数量 | | --------- | :---------: | | 训练集 | 100,000 | | 验证集 | 2,000 | | 测试集 | 2,000 | #### 数据格式 代码语料以JSON Lines格式存储,每行对应一个JSON对象: json { "nl": "在此处对该向量进行增量操作。con_elem_sep double[] vecElement con_elem_sep double[] weights con_func_sep void add(double)", "code": "public void inc ( ) { this . add ( 1 ) ; }" } 其中`nl`字段将自然语言描述与类环境进行拼接,类环境中的元素通过`con_elem_sep`与`con_func_sep`这类特殊Token进行分隔。 #### 任务定义 本任务的目标为:给定自然语言描述与类环境,生成Java类成员函数的源代码。其中类环境指由类的其余部分提供的程序化上下文,涵盖类中其他成员变量与成员函数。模型将通过精确匹配率(exact match)与BLEU指标进行性能评估。 该任务具备较高挑战性,因为所需生成的代码会因类所提供的功能差异而产生显著变化。模型需同时满足两项核心要求:(a) 深度理解自然语言描述,并将其映射至环境变量、库API调用以及类中自定义的方法;(b) 确定最终生成代码的结构。 #### 参考文献 Concode数据集的引用信息如下: bibtex @article{iyer2018mapping, title={Mapping Language to Code in Programmatic Context}, author={Iyer, Srinivasan and Konstas, Ioannis and Cheung, Alvin and Zettlemoyer, Luke}, journal={arXiv preprint arXiv:1808.09588}, year={2018} }
提供机构:
AhmedSSoliman
原始信息汇总

Concode 数据集

概述

Concode 数据集是一个包含超过 100,000 个示例的大型数据集,这些示例由在线代码仓库中的 Java 类组成。该数据集旨在开发一种新的编码器-解码器架构,该架构模拟方法文档与类环境之间的交互。

数据统计

以下是 Concode 数据集的数据统计信息:

#Examples
Train 100,000
Validation 2,000
Test 2,000

数据格式

代码语料库以 JSON Lines 格式文件保存,每行是一个 JSON 对象: json { "nl": "Increment this vector in this place. con_elem_sep double[] vecElement con_elem_sep double[] weights con_func_sep void add(double)", "code": "public void inc ( ) { this . add ( 1 ) ; }" }

nl 结合了自然语言描述和类环境。类环境中的元素由特殊标记(如 con_elem_sepcon_func_sep)分隔。

任务定义

给定自然语言描述和类环境,生成 Java 类成员函数的源代码。类环境是由类中其他成员变量和成员函数提供的编程上下文。模型通过精确匹配和 BLEU 进行评估。

这是一个具有挑战性的任务,因为所需的代码会根据类提供的功能而有很大差异。模型必须:

  1. 深入理解自然语言描述,并将自然语言映射到类环境中的变量、库 API 调用和用户定义的方法。
  2. 决定生成代码的结构。

参考文献

Concode 数据集的参考文献: plaintext @article{iyer2018mapping, title={Mapping language to code in programmatic context}, author={Iyer, Srinivasan and Konstas, Ioannis and Cheung, Alvin and Zettlemoyer, Luke}, journal={arXiv preprint arXiv:1808.09588}, year={2018} }

搜集汇总
数据集介绍
main_image_url
构建方式
AhmedSSoliman/CodeXGLUE-CONCODE数据集的构建,是通过对线上代码仓库中的Java类进行采集,进而形成了一个包含超过10万示例的大型数据集。此数据集的构建,旨在发展一种新的编码器-解码器架构,用以模拟方法文档与类环境之间的互动。
特点
该数据集的特点在于,它是一个程序化上下文中语言映射到代码的广泛使用的数据集。它不仅规模庞大,而且涵盖了Java类成员函数的源代码生成任务,其中包含了自然语言描述和类环境。此外,数据集在训练、验证和测试三个子集上均有着均衡的示例分布,确保了模型的泛化能力和评估的全面性。
使用方法
在使用该数据集时,研究者可以依据其提供的json lines格式文件,每一行是一个包含自然语言描述和代码的JSON对象。此类对象中的`nl`字段融合了自然语言描述和类环境,而`code`字段则包含了相应的Java代码。通过训练模型以生成类成员函数的源代码,并使用精确匹配和BLEU指标进行评估,以完成数据集所定义的任务。
背景与挑战
背景概述
在编程语言处理领域,代码生成作为自然语言处理与软件开发的重要交叉点,日益受到研究者的关注。CodeXGLUE-CONCODE数据集,创建于2018年,源自Iyer等人的EMNLP论文,其旨在推动代码生成任务的研究。该数据集汇聚了超过10万份Java类代码实例,主要来自于在线代码仓库,其研究核心在于构建一种新的编码器-解码器架构,以模拟方法文档与类环境之间的互动,为代码生成任务提供了一种新的视角和方法。
当前挑战
该数据集在构建和应用过程中面临的挑战主要体现在两个方面:一是如何准确地将自然语言描述映射到代码环境中的变量、库API调用以及用户定义的方法,这要求模型具备深度的语义理解和映射能力;二是生成的代码结构必须符合预期的功能需求,模型需要在理解自然语言描述的基础上做出结构化的决策。此外,由于代码的功能多样性,数据集的构建过程中还需要克服如何平衡样本多样性、保证数据质量等问题。
常用场景
经典使用场景
在程序语言处理领域,AhmedSSoliman/CodeXGLUE-CONCODE数据集的典型应用场景是构建能够理解自然语言描述并生成相应Java代码的编码器-解码器架构。该数据集通过提供带有自然语言描述和类环境信息的Java类,促使模型学习如何将自然语言映射到编程环境中。
衍生相关工作
基于AhmedSSoliman/CodeXGLUE-CONCODE数据集的研究,衍生出了众多探索代码生成和理解的工作,包括但不限于对编码器-解码器架构的优化、代码生成模型的评估方法以及更复杂的代码生成任务,如多语言代码生成和代码修复。这些研究进一步拓展了该数据集的应用范围和影响力。
数据集最近研究
最新研究方向
在程序语言处理领域,AhmedSSoliman/CodeXGLUE-CONCODE数据集正成为研究的热点。该数据集以其庞大的规模和独特的编码环境与自然语言描述相结合的特点,促使学者们探索编码生成的深层次理解。近期研究方向主要聚焦于提升编码生成模型的准确性和结构决策能力,通过深入解析自然语言描述与编程环境之间的互动,进而生成符合功能需求的Java类成员函数代码。此类研究不仅提高了编码自动生成的技术水平,也对软件开发自动化领域产生了深远影响。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作