中文

代码壁垒:LLM实际理解了什么?

机器学习 2025-07-08 v1 人工智能 信息论 math.IT

摘要

理解代码代表了自动化软件开发任务所需的核心能力。虽然基础模型如LLM在众多软件工程挑战中显示出惊人的成果,但其对超越简单标记识别的真实语义理解程度尚不清晰。本研究以代码混淆为结构化测试框架来评估LLM的语义理解能力。我们系统性地对源代码施加受控的混淆变更,并通过两个互补任务测量理解:生成对混淆代码的准确描述和执行去混淆,这一技能在逆向工程应用中具有重要意义。我们的测试方法包括13个最前沿的模型,涵盖代码专用模型(如StarCoder2)和通用型模型(如GPT-4o),在由CodeNet构建的基准测试上进行评估,该基准测试包含经筛选的250个Java编程问题及其解决方案。研究结果显示,随着混淆复杂度的增加,模型性能显著下降,尽管通用型模型相较于专注代码的模型表现出意外的韧性。虽然一些模型成功识别了混淆技术,但其重构底层程序逻辑的能力仍受限,这表明其语义表示机制存在局限。该研究引入了新的评估方法,用于衡量语言模型的代码理解能力,并为向前沿研究树立实证基线,这些研究包括逆向工程和对抗性代码分析等安全关键型应用。

关键词

引用

@article{arxiv.2504.10556,
  title  = {VAE-based Feature Disentanglement for Data Augmentation and Compression in Generalized GNSS Interference Classification},
  author = {Lucas Heublein and Simon Kocher and Tobias Feigl and Alexander Rügamer and Christopher Mutschler and Felix Ott},
  journal= {arXiv preprint arXiv:2504.10556},
  year   = {2025}
}

备注

7 pages, 9 figures