Java-small benchmark
收藏arXiv2024-01-12 更新2024-06-21 收录
下载链接:
https://s3.amazonaws.com/code2seq/datasets/java-small.tar.gz
下载链接
链接失效反馈官方服务:
资源简介:
Java-small benchmark是一个包含七个开源Java项目的代码分析数据集,用于研究大型语言模型在代码分布变化下的不确定性意识。该数据集包括elasticsearch, gradle, presto, wildfly, hadoop, hibernate-orm, spring-framework等项目,用于模拟和研究代码分布的三种真实世界变化模式:时间线变化、项目变化和作者变化。数据集通过提取和合成Java代码片段,与每个识别的变化模式及其相应的强度对齐,以支持对不同概率方法在提高CodeLlama预测质量方面的相对有效性的全面研究。
The Java-small benchmark is a code analysis dataset comprising seven open-source Java projects, designed to investigate the uncertainty awareness of large language models (LLMs) under code distribution shifts. This dataset includes projects such as elasticsearch, gradle, presto, wildfly, hadoop, hibernate-orm, and spring-framework, and is employed to simulate and research three real-world code distribution change patterns: temporal shifts, project shifts, and author shifts. By extracting and synthesizing Java code snippets, the dataset aligns each snippet with the identified change patterns and their corresponding intensities, to support comprehensive studies on the relative effectiveness of diverse probabilistic methods for enhancing the predictive quality of CodeLlama.
提供机构:
加州大学河滨分校, 德克萨斯大学达拉斯分校
创建时间:
2024-01-12
搜集汇总
数据集介绍

构建方式
在代码分析领域,分布偏移对大型语言模型的可靠性构成显著挑战。Java-small benchmark数据集通过系统化构建,以探究此类偏移对模型不确定性的影响。该数据集从七个开源Java项目中提取代码片段,并依据三种现实世界分布偏移模式进行组织:时间线偏移、项目偏移和作者偏移。每种偏移模式均细分为三个强度等级,通过计算代码片段的KL散度和余弦相似度来量化偏移强度,从而形成一个层次化、多强度的基准数据集,为深入分析模型在动态代码环境中的表现提供了坚实基础。
特点
该数据集的核心特征在于其高度结构化的偏移模拟与精细的强度分级。它不仅涵盖了代码库更新、跨项目迁移及开发者风格差异等常见现实场景,还通过引入渐进式强度变化,实现了对分布偏移影响的动态观测。数据集规模庞大,包含数十万代码片段,并采用抽象语法树进行标准化处理,确保了数据的代表性与一致性。这种设计使得研究者能够系统评估模型在不同偏移条件下的校准质量与不确定性估计精度,为代码生成与分析任务的可靠性研究提供了关键实验平台。
使用方法
该数据集主要用于评估大型语言模型在代码分布偏移下的不确定性感知能力。研究者可基于数据集中的训练集、验证集及不同强度的偏移测试集,对模型进行微调与测试。典型应用包括代码补全与代码摘要任务,通过对比确定性基线模型与多种概率方法(如蒙特卡洛丢弃、深度集成等)在偏移数据上的表现,分析模型预测的校准误差、不确定性估计精度及选择性预测效能。数据集支持对模型鲁棒性的多层次量化,为优化代码分析工具的可靠性提供实证依据。
背景与挑战
背景概述
Java-small benchmark 数据集由加州大学河滨分校与德克萨斯大学达拉斯分校的研究团队于2024年构建,旨在探究大语言模型在代码分布偏移下的不确定性感知能力。该数据集聚焦于编程语言分析领域,核心研究问题在于评估CodeLlama等模型在面临真实世界代码演化场景时的可靠性退化现象。通过整合时间线偏移、项目偏移和作者偏移三种现实分布模式,并引入细粒度的偏移强度分级,该数据集为不确定性校准与估计方法提供了系统化评估基准,显著推动了代码生成与分析中模型鲁棒性的前沿探索。
当前挑战
Java-small benchmark 数据集致力于解决代码分析任务中模型对分布偏移的敏感性问题,其核心挑战在于如何有效量化与缓解大语言模型在代码补全和代码摘要等任务中因数据分布变化而导致的性能下降。构建过程中的挑战包括:真实世界代码偏移模式的定义与提取,需从开源Java项目中精确分离时间、项目和作者维度的演化特征;偏移强度的量化与分级,需基于KL散度和余弦相似度设计可扩展的度量标准;以及大规模代码片段的预处理与对齐,涉及抽象语法树解析和词汇归一化等复杂技术步骤。
常用场景
经典使用场景
在软件工程与人工智能交叉领域,Java-small benchmark数据集被广泛用于评估大型语言模型在代码分析任务中的不确定性感知能力。该数据集通过构建时间线迁移、项目迁移和作者迁移三种真实代码分布偏移模式,为研究者提供了系统探究模型在非独立同分布数据下性能退化的基准平台。其经典应用场景包括代码补全和代码摘要任务,通过量化模型在逐步增强的分布偏移下的预测准确性与校准误差,深入揭示了概率性方法如蒙特卡洛丢弃和深度集成在提升模型鲁棒性方面的有效性。
解决学术问题
该数据集有效解决了代码生成与分析模型中因分布偏移导致的可靠性下降这一核心学术问题。通过引入细粒度的偏移强度分级,数据集使研究者能够量化不同偏移程度对模型性能的影响,从而系统评估不确定性校准与估计方法的效能。研究揭示了概率性方法普遍能缓解分布偏移的负面影响,提升预测质量与低质量输出的检测精度,同时凸显了不同方法在特定评估准则下的性能差异,为面向实际场景的方法选择提供了实证依据。
衍生相关工作
基于Java-small benchmark数据集,多项经典研究工作得以推进,进一步拓展了代码不确定性研究的深度与广度。例如,研究团队利用该数据集系统比较了蒙特卡洛丢弃、深度集成、突变测试等多种概率性方法在CodeLlama模型上的校准效果与估计精度,揭示了不同方法在偏移强度变化下的动态性能模式。这些工作不仅验证了不确定性感知在代码领域的普适价值,还催生了针对特定偏移模式(如时间线迁移)的专用优化策略,为后续研究提供了方法论基础与性能基准。
以上内容由遇见数据集搜集并总结生成



