Adversarial Robustness for Code
arXiv:2002.04694
Abstract
Machine learning and deep learning in particular has been recently used to successfully address many tasks in the domain of code such as finding and fixing bugs, code completion, decompilation, type inference and many others. However, the issue of adversarial robustness of models for code has gone largely unnoticed. In this work, we explore this issue by: (i) instantiating adversarial attacks for code (a domain with discrete and highly structured inputs), (ii) showing that, similar to other domains, neural models for code are vulnerable to adversarial attacks, and (iii) combining existing and novel techniques to improve robustness while preserving high accuracy.
arXiv commentProceedings of the 37th International Conference on Machine Learning, Online, PMLR 119, 2020
References in corpus (11)
- Simplifying Graph Convolutional Networks
- Adversarial Attacks on Neural Networks for Graph Data
- Certified Defenses against Adversarial Examples
- Deep Text Classification Can be Fooled
- Adversarial Attacks on Graph Neural Networks via Meta Learning
- Adaptive Computation Time for Recurrent Neural Networks
- Convolutional Neural Networks over Tree Structures for Programming Language Processing
- Structured Neural Summarization
- SelectiveNet: A Deep Neural Network with an Integrated Reject Option
- LambdaNet: Probabilistic Type Inference using Graph Neural Networks
- Inferring Javascript types using Graph Neural Networks
Cited by in corpus (7)
- Contrastive Code Representation Learning
- Semantic Robustness of Models of Source Code
- RoPGen: Towards Robust Code Authorship Attribution via Automatic Coding Style Transformation
- Understanding Neural Code Intelligence Through Program Simplification
- TreeCaps: Tree-Based Capsule Networks for Source Code Processing
- STRATA: Simple, Gradient-Free Attacks for Models of Code
- Generating Adversarial Computer Programs using Optimized Obfuscations