mlsanityData to 14 Oct 2026

DeepBugs: A Learning Approach to Name-based Bug Detection

arXiv 1805.11683 ↗First posted 30 Apr 2018cs.SE cs.PLcited by 65

Not on the map. Why?

Abstract (arXiv)

Natural language elements in source code, e.g., the names of variables and functions, convey useful information. However, most existing bug detection tools ignore this information and therefore miss some classes of bugs. The few existing name-based bug detection approaches reason about names on a syntactic level and rely on manually designed and tuned algorithms to detect bugs. This paper presents DeepBugs, a learning approach to name-based bug detection, which reasons about names based on a semantic representation and which automatically learns bug detectors instead of manually writing them. We formulate bug detection as a binary classification problem and train a classifier that distinguishes correct from incorrect code. To address the challenge that effectively learning a bug detector requires examples of both correct and incorrect code, we create likely incorrect code examples from an existing corpus of code through simple code transformations. A novel insight learned from our work is that learning from artificially seeded bugs yields bug detectors that are effective at finding bugs in real-world code. We implement our idea into a framework for learning-based and name-based bug detection. Three bug detectors built on top of the framework detect accidentally swapped function arguments, incorrect binary operators, and incorrect operands in binary operations. Applying the approach to a corpus of 150,000 JavaScript files yields bug detectors that have a high accuracy (between 89% and 95%), are very efficient (less than 20 milliseconds per analyzed file), and reveal 102 programming mistakes (with 68% true positive rate) in real-world code.

Key facts. Cited by 65 papers in the map (data through 14 Oct 2026). First posted on arXiv 30 Apr 2018.

Builds on

No reference list yet.

Built on by

Cited by year (2026 to 14 Oct)

Citing papers per year: 2021: 18; 2022: 20; 2023: 14; 2024: 7; 2025: 4; 2026: 2.

65 papers.

Sort:

  1. 2021Program Synthesis with Large Language Modelscited by 3,637
  2. 2021CodeXGLUE: A Machine Learning Benchmark Dataset for Code Understanding and Generationcited by 744
  3. 2023An Empirical Evaluation of Using Large Language Models for Automated Unit Test Generationcited by 194
  4. 2021Differentiable Learning Under Triagecited by 76
  5. 2021Break-It-Fix-It: Unsupervised Learning for Program Repaircited by 71
  6. 2021Self-Supervised Bug Detection and Repaircited by 59
  7. 2022On the Transferability of Pre-trained Language Models for Low-Resource Programming Languagescited by 30
  8. 2021Counterfactual Explanations for Models of Codecited by 25
  9. 2021A Survey on Machine Learning Techniques for Source Code Analysiscited by 24
  10. 2021Generating Adversarial Computer Programs using Optimized Obfuscationscited by 22
  11. 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkitcited by 22
  12. 2022Deep Learning Meets Software Engineering: A Survey on Pre-Trained Models of Source Codecited by 21
38 more
  1. 2024MdEval: Massively Multilingual Code Debuggingcited by 16
  2. 2022On Distribution Shift in Learning-based Bug Detectorscited by 15
  3. 2022AEON: A Method for Automatic Evaluation of NLP Test Casescited by 15
  4. 2022Learning to Reduce False Positives in Analytic Bug Detectorscited by 12
  5. 2022An Exploratory Study on Code Attention in BERTcited by 12
  6. 2021DeepCVA: Automated Commit-level Vulnerability Assessment with Deep Multi-task Learningcited by 11
  7. 2021VarCLR: Variable Semantic Representation Pre-training via Contrastive Learningcited by 11
  8. 2022Static Prediction of Runtime Errors by Learning to Execute Programs with External Resource Descriptionscited by 11
  9. 2025A Contemporary Survey of Large Language Model Assisted Program Analysiscited by 11
  10. 2022Improving Automated Program Repair with Domain Adaptationcited by 10
  11. 2023kTrans: Knowledge-Aware Transformer for Binary Code Embeddingcited by 10
  12. 2021SYNFIX: Automatically Fixing Syntax Errors using Compiler Diagnosticscited by 8
  13. 2023LExecutor: Learning-Guided Executioncited by 7
  14. 2023FLAG: Finding Line Anomalies (in code) with Generative AIcited by 7
  15. 2024DeepCode AI Fix: Fixing Security Vulnerabilities with Large Language Modelscited by 7
  16. 2024An Empirical Study on Capability of Large Language Models in Understanding Code Semanticscited by 7
  17. 2022MetaTPTrans: A Meta Learning Approach for Multilingual Code Representation Learningcited by 6
  18. 2021Software Vulnerability Detection via Deep Learning over Disaggregated Code Graph Representationcited by 5
  19. 2022Follow-up Attention: An Empirical Study of Developer and Neural Model Code Explorationcited by 5
  20. 2023Learning Defect Prediction from Unrealistic Datacited by 5
  21. 2025IFEvalCode: Controlled Code Generationcited by 5
  22. 2021Learning to Make Compiler Optimizations More Effectivecited by 4
  23. 2022Can we learn from developer mistakes? Learning to localize and repair real bugs from real bug fixescited by 4
  24. 2023Multi-Granularity Detector for Vulnerability Fixescited by 4
  25. 2021Senatus -- A Fast and Accurate Code-to-Code Recommendation Enginecited by 3
  26. 2022AdaptivePaste: Code Adaptation through Learning Semantics-aware Variable Usage Representationscited by 3
  27. 2023What are the Machine Learning best practices reported by practitioners on Stack Exchange?cited by 3
  28. 2023Automated Testing and Improvement of Named Entity Recognition Systemscited by 3
  29. 2022Leveraging Structural Properties of Source Code Graphs for Just-In-Time Bug Predictioncited by 2
  30. 2022JEMMA: An Extensible Java Dataset for ML4Code Applicationscited by 2
  31. 2023DSHGT: Dual-Supervisors Heterogeneous Graph Transformer -- A pioneer study of using heterogeneous graph learning for detecting software vulnerabilitiescited by 2
  32. 2023Transfer Attacks and Defenses for Large Language Models on Coding Taskscited by 2
  33. 2024Towards Non-Adversarial Algorithmic Recoursecited by 2
  34. 2024Genetic Auto-prompt Learning for Pre-trained Code Intelligence Language Modelscited by 2
  35. 2021Data-Driven AI Model Signal-Awareness Enhancement and Introspectioncited by 1
  36. 2021Energy-bounded Learning for Robust Models of Codecited by 1
  37. 2022LAMNER: Code Comment Generation Using Character Language Model and Named Entity Recognitioncited by 1
  38. 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Codecited by 1

50 most cited of 65 All 65 (JSON)