TL;DR
This paper introduces SIVAND, a simple, model-agnostic method that simplifies input programs to identify key features influencing neural code intelligence models, aiding interpretability across various architectures.
Contribution
Proposes SIVAND, a novel, model-agnostic program simplification technique based on delta debugging to interpret neural code intelligence models.
Findings
Models rely heavily on few syntactic features
SIVAND produces small, meaningful input simplifications
Applicable across multiple neural network architectures
Abstract
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
