Understanding Neural Code Intelligence Through Program Simplification
Not on the map. Why?
Abstract (arXiv)
A wide range of code intelligence (CI) tools, powered by deep neural networks, have been developed recently to improve programming productivity and perform program analysis. To reliably use such tools, developers often need to reason about the behavior of the underlying models and the factors that affect them. This is especially challenging for tools backed by deep neural networks. Various methods have tried to reduce this opacity in the vein of "transparent/interpretable-AI". However, these approaches are often specific to a particular set of network architectures, even requiring access to the network's parameters. This makes them difficult to use for the average programmer, which hinders the reliable adoption of neural CI systems. In this paper, we propose a simple, model-agnostic approach to identify critical input features for models in CI systems, by drawing on software debugging research, specifically delta debugging. Our approach, SIVAND, uses simplification techniques that reduce the size of input programs of a CI model while preserving the predictions of the model. We show that this approach yields remarkably small outputs and is broadly applicable across many model architectures and problem domains. We find that the models in our experiments often rely heavily on just a few syntactic features in input programs. We believe that SIVAND's extracted features may help understand neural CI systems' predictions and learned behavior.
Key facts. Cited by 20 papers in the map (data through 7 Oct 2026). Builds on 28 of its 45 references that are in the map. First posted on arXiv 7 Jun 2021.
Builds on
28 of 45 references.
References · 28
- 2017Attention Is All You Needcited by 59,932
- 2014Explaining and Harnessing Adversarial Examplescited by 7,287
- 2016Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localizationcited by 6,690
- 2017Axiomatic Attribution for Deep Networkscited by 3,350
- 2016Towards Evaluating the Robustness of Neural Networkscited by 2,976
- 2013Deep Inside Convolutional Networks: Visualising Image Classification Models and Saliency Mapscited by 2,348
- 2013Visualizing and Understanding Convolutional Networkscited by 2,278
- 2019Adversarial Examples Are Not Bugs, They Are Featurescited by 950
- 2019Is BERT Really Robust? A Strong Baseline for Natural Language Attack on Text Classification and Entailmentcited by 663
- 2019Interpretable machine learning: definitions, methods, and applicationscited by 303
- 2018code2vec: Learning Distributed Representations of Codecited by 249
- 2017A Survey of Machine Learning for Big Code and Naturalnesscited by 220
16 more
- 2017Learning to Represent Programs with Graphscited by 219
- 2018code2seq: Generating Sequences from Structured Representations of Codecited by 177
- 2017The Shattered Gradients Problem: If resnets are the answer, then what is the question?cited by 156
- 2016A Convolutional Attention Network for Extreme Summarization of Source Codecited by 90
- 2020Semantic Robustness of Models of Source Codecited by 43
- 2016Deep API Learningcited by 41
- 2020On the Generalizability of Neural Program Models with respect to Semantic-Preserving Program Transformationscited by 41
- 2019Neural Program Repair by Jointly Learning to Localize and Repaircited by 39
- 2020Adversarial Robustness for Codecited by 36
- 2015On the "Naturalness" of Buggy Codecited by 35
- 2019How Often Do Single-Statement Bugs Occur? The ManySStuBs4J Datasetcited by 35
- 2019Learning and Evaluating Contextual Embedding of Source Codecited by 33
- 2020Explaining Deep Neural Networks and Beyond: A Review of Methods and Applicationscited by 22
- 2020Probing Model Signal-Awareness via Prediction-Preserving Input Minimizationcited by 14
- 2020Evaluation of Generalizability of Neural Program Analyzers under Semantic-Preserving Transformationscited by 9
- 2020Towards Demystifying Dimensions of Source Code Embeddingscited by 9
Built on by
Citing papers per year: 2021: 4; 2022: 3; 2023: 5; 2024: 4; 2025: 4.
20 papers.
Sort:
By area:
- 2021Counterfactual Explanations for Models of Codecited by 24
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkitcited by 22
- 2021Memorization and Generalization in Neural Code Intelligence Modelscited by 17
- 2023Do Large Language Models Pay Similar Attention Like Human Programmers When Generating Code?cited by 13
- 2024Graph Neural Networks for Vulnerability Detection: A Counterfactual Explanationcited by 12
- 2022Syntax-Guided Program Reduction for Understanding Neural Code Intelligence Modelscited by 7
- 2022Follow-up Attention: An Empirical Study of Developer and Neural Model Code Explorationcited by 5
- 2021Code2Snapshot: Using Code Snapshots for Learning Representations of Source Codecited by 4
- 2024A Critical Study of What Code-LLMs (Do Not) Learncited by 4
- 2023Study of Distractors in Neural Models of Codecited by 2
- 2024A Systematic Literature Review on Explainability for Machine/Deep Learning-based Software Engineering Researchcited by 2
- 2025Is Compression Really Linear with Code Intelligence?cited by 2
8 more
- 2021Data-Driven AI Model Signal-Awareness Enhancement and Introspectioncited by 1
- 2023Redundancy and Concept Analysis for Code-trained Language Modelscited by 1
- 2025Analyzing Latent Concepts in Code Language Modelscited by 1
- 2022Extracting Label-specific Key Input Features for Neural Code Intelligence Modelscited by 0
- 2023A Study of Variable-Role-based Feature Enrichment in Neural Models of Codecited by 0
- 2024Beyond Fidelity: Explaining Vulnerability Localization of Learning-based Detectorscited by 0
- 2025LEANCODE: Understanding Models Better for Code Simplification of Pre-trained Large Language Modelscited by 0
- 2025From User Interface to Agent Interface: Efficiency Optimization of UI Representations for LLM Agentscited by 0
- 2025From User Interface to Agent Interface: Efficiency Optimization of UI Representations for LLM Agents15 Dec 2025
- 2025Analyzing Latent Concepts in Code Language Models1 Oct 2025
- 2025LEANCODE: Understanding Models Better for Code Simplification of Pre-trained Large Language Models20 May 2025
- 2025Is Compression Really Linear with Code Intelligence?16 May 2025
- 2024A Critical Study of What Code-LLMs (Do Not) Learn17 Jun 2024
- 2024Graph Neural Networks for Vulnerability Detection: A Counterfactual Explanation24 Apr 2024
- 2024A Systematic Literature Review on Explainability for Machine/Deep Learning-based Software Engineering Research26 Jan 2024
- 2024Beyond Fidelity: Explaining Vulnerability Localization of Learning-based Detectors5 Jan 2024
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkit30 Dec 2023
- 2023Do Large Language Models Pay Similar Attention Like Human Programmers When Generating Code?2 Jun 2023
- 2023Redundancy and Concept Analysis for Code-trained Language Models1 May 2023
- 2023A Study of Variable-Role-based Feature Enrichment in Neural Models of Code8 Mar 2023
8 more
- 2023Study of Distractors in Neural Models of Code3 Mar 2023
- 2022Follow-up Attention: An Empirical Study of Developer and Neural Model Code Exploration11 Oct 2022
- 2022Syntax-Guided Program Reduction for Understanding Neural Code Intelligence Models28 May 2022
- 2022Extracting Label-specific Key Input Features for Neural Code Intelligence Models14 Feb 2022
- 2021Data-Driven AI Model Signal-Awareness Enhancement and Introspection10 Nov 2021
- 2021Counterfactual Explanations for Models of Code10 Nov 2021
- 2021Code2Snapshot: Using Code Snapshots for Learning Representations of Source Code1 Nov 2021
- 2021Memorization and Generalization in Neural Code Intelligence Models16 Jun 2021
- 2021Counterfactual Explanations for Models of Codecited by 24
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkitcited by 22
- 2021Memorization and Generalization in Neural Code Intelligence Modelscited by 17
- 2023Do Large Language Models Pay Similar Attention Like Human Programmers When Generating Code?cited by 13
- 2024Graph Neural Networks for Vulnerability Detection: A Counterfactual Explanationcited by 12
- 2022Syntax-Guided Program Reduction for Understanding Neural Code Intelligence Modelscited by 7
- 2022Follow-up Attention: An Empirical Study of Developer and Neural Model Code Explorationcited by 5
- 2021Code2Snapshot: Using Code Snapshots for Learning Representations of Source Codecited by 4
- 2024A Critical Study of What Code-LLMs (Do Not) Learncited by 4
- 2023Study of Distractors in Neural Models of Codecited by 2
- 2024A Systematic Literature Review on Explainability for Machine/Deep Learning-based Software Engineering Researchcited by 2
- 2025Is Compression Really Linear with Code Intelligence?cited by 2
12 most cited of 19 All 19 (JSON)
- 2025Analyzing Latent Concepts in Code Language Models1 Oct 2025
- 2025LEANCODE: Understanding Models Better for Code Simplification of Pre-trained Large Language Models20 May 2025
- 2025Is Compression Really Linear with Code Intelligence?16 May 2025
- 2024A Critical Study of What Code-LLMs (Do Not) Learn17 Jun 2024
- 2024Graph Neural Networks for Vulnerability Detection: A Counterfactual Explanation24 Apr 2024
- 2024A Systematic Literature Review on Explainability for Machine/Deep Learning-based Software Engineering Research26 Jan 2024
- 2024Beyond Fidelity: Explaining Vulnerability Localization of Learning-based Detectors5 Jan 2024
- 2023Deep Learning for Code Intelligence: Survey, Benchmark and Toolkit30 Dec 2023
- 2023Do Large Language Models Pay Similar Attention Like Human Programmers When Generating Code?2 Jun 2023
- 2023Redundancy and Concept Analysis for Code-trained Language Models1 May 2023
- 2023A Study of Variable-Role-based Feature Enrichment in Neural Models of Code8 Mar 2023
- 2023Study of Distractors in Neural Models of Code3 Mar 2023
12 newest of 19 All 19 (JSON)