paperbot · PL 论文追踪

全部论文 待读 收藏

P1 ACWRecommender: A Tool for Validating Actionable Warnings with Weak Supervision

ACWRecommender:一个用弱监督验证可行动警告的工具
ASE 2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)2023匹配度 5/10 · 该论文聚焦静态分析警告的可行动性验证,属于“AI→PL”中用机器学习改进静态分析的方向,与用户的静态分析主题相关;但其采用弱监督加 UniXcoder 预训练模型,而非基于当前强 LLM/Agent,也未涉及浮点或贝叶斯程序分析,因此只算部分契合。引用 9 inbox
Zhipeng Xue, Zhipeng Gao, Xing Hu, Shanping Li
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出两阶段工具 ACWRecommender,用弱监督从静态分析警告中识别并推荐高概率真实缺陷的可行动警告。

静态分析工具误报率高达 90%,因此既有研究提出“可行动警告(actionable warning)”概念并借助机器学习区分误报,但其收集方式不可靠,导致大量无效可行动警告。本文从 Top-500 GitHub C 仓库挖掘 68,274 次 reversion,构建可行动警告数据集并为每条警告的真实缺陷可能性赋予弱标签,进而提出两阶段框架 ACWRecommender:第一阶段利用预训练模型 UniXcoder 从海量静态分析警告中识别可行动警告,第二阶段用弱监督学习对有效可行动警告重排序,将高概率真实缺陷者置于前列。实验表明该工具在可行动警告检测的 F1 与 AWHB 推荐的 nDCG、MRR 上优于多个基线;在 10 个随机项目的 2,197 条警告中人工验证 24 条,其中 22 条被开发者确认为真实缺陷。

问题
静态分析工具误报率极高(可达 90%),而现有可行动警告收集方法不可靠,导致大量无效的可行动警告。
方法
从 Top-500 GitHub C 仓库挖掘 68,274 次 reversion 构建带弱标签的可行动警告数据集;提出两阶段框架,先用 UniXcoder 识别可行动警告,再用弱监督学习对有效可行动警告重排序。
评估
与多个基线在 F1、nDCG 和 MRR 上比较,并在 10 个随机项目上做 in-the-wild 人工验证;2,197 条警告中验证 24 条,22 条被开发者确认为真实缺陷。
原文摘要(Abstract)

Static analysis tools have gained popularity among developers for finding potential bugs, but their widespread adoption is hindered by the accomnpanying high false alarm rates (up to 90%). To address this challenge, previous studies proposed the concept of actionable warnings, and apply machine-learning methods to distinguish actionable warnings from false alarms. Despite these efforts, our preliminary study suggests that the current methods used to collect actionable warnings are rather shaky and unreliable, resulting in a large proportion of invalid actionable warnings. In this work, we mined 68,274 reversions from Top-500 Github C repositories to create a substantia actionable warning dataset and assigned weak labels to each warning's likelihood of being a real bug. To automatically identify actionable warnings and recommend those with a high probability of being real bugs (AWHB), we propose a two-stage framework called ACWRecommender. In the first stage, our tool use a pre-trained model, i.e., UniXcoder, to identify actionable warnings from a huge number of SA tool's reported warnings. In the second stage, we rerank valid actionable warnings to the top by using weakly supervised learning. Experimental results showed that our tool outperformed several baselines for actionable warning detection (in terms of F1-score) and performed better for AWHB recommendation (in terms of nDCG and MRR). Additionaly, we also performed an in-the-wild evaluation, we manually validated 24 warnings out of 2,197 reported warnings on 10 randomly selected projects, 22 of which were confirmed by developers as real bugs, demonstrating the practical usage of our tool.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2309-09721,
  title = {ACWRecommender: A Tool for Validating Actionable Warnings with Weak Supervision},
  author = {Zhipeng Xue and Zhipeng Gao and Xing Hu and Shanping Li},
  booktitle = {ASE},
  year = {2023},
  doi = {10.1109/ase56229.2023.00169}
}