Unsupervised Learning of Neural Networks to Explain Neural Networks
arXiv:1805.07468
Abstract
This paper presents an unsupervised method to learn a neural network, namely an explainer, to interpret a pre-trained convolutional neural network (CNN), i.e., explaining knowledge representations hidden in middle conv-layers of the CNN. Given feature maps of a certain conv-layer of the CNN, the explainer performs like an auto-encoder, which first disentangles the feature maps into object-part features and then inverts object-part features back to features of higher conv-layers of the CNN. More specifically, the explainer contains interpretable conv-layers, where each filter disentangles the representation of a specific object part from chaotic input feature maps. As a paraphrase of CNN features, the disentangled representations of object parts help people understand the logic inside the CNN. We also learn the explainer to use object-part features to reconstruct features of higher CNN layers, in order to minimize loss of information during the feature disentanglement. More crucially, we learn the explainer via network distillation without using any annotations of sample labels, object parts, or textures for supervision. We have applied our method to different types of CNNs for evaluation, and explainers have significantly boosted the interpretability of CNN features.
References in corpus (14)
- Understanding Neural Networks Through Deep Visualization
- InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets
- Opening the Black Box of Deep Neural Networks via Information
- Learning to reinforcement learn
- Harnessing Deep Neural Networks with Logic Rules
- Learning to Learn without Gradient Descent by Gradient Descent
- Learning to Optimize
- Detect What You Can: Detecting and Representing Objects using Holistic Models and Body Parts
- Towards Interpretable Deep Neural Networks by Leveraging Adversarial Examples
- Neural Activation Constellations: Unsupervised Part Model Discovery with Convolutional Networks
- Interpreting CNNs via Decision Trees
- Explaining the Unexplained: A CLass-Enhanced Attentive Response (CLEAR) Approach to Understanding Deep Neural Networks
- Growing Interpretable Part Graphs on ConvNets via Multi-Shot Learning
- Mining Object Parts from CNNs via Active Question-Answering
Cited by in corpus (5)
- Concept Whitening for Interpretable Image Recognition
- Interpreting CNNs via Decision Trees
- Pair the Dots: Jointly Examining Training History and Test Stimuli for Model Interpretability
- Explaining AlphaGo: Interpreting Contextual Effects in Neural Networks
- Mining Deep And-Or Object Structures via Cost-Sensitive Question-Answer-Based Active Annotations