Interpreting CNN Knowledge via an Explanatory Graph
arXiv:1708.01785
Abstract
This paper learns a graphical model, namely an explanatory graph, which reveals the knowledge hierarchy hidden inside a pre-trained CNN. Considering that each filter in a conv-layer of a pre-trained CNN usually represents a mixture of object parts, we propose a simple yet efficient method to automatically disentangles different part patterns from each filter, and construct an explanatory graph. In the explanatory graph, each node represents a part pattern, and each edge encodes co-activation relationships and spatial relationships between patterns. More importantly, we learn the explanatory graph for a pre-trained CNN in an unsupervised manner, i.e., without a need of annotating object parts. Experiments show that each graph node consistently represents the same object part through different images. We transfer part patterns in the explanatory graph to the task of part localization, and our method significantly outperforms other approaches.
in AAAI 2018
References in corpus (7)
- Detect What You Can: Detecting and Representing Objects using Holistic Models and Body Parts
- Neural Activation Constellations: Unsupervised Part Model Discovery with Convolutional Networks
- Part Detector Discovery in Deep Convolutional Neural Networks
- Understanding deep features with computer-generated imagery
- Interactively Transferring CNN Patterns for Part Localization
- Mining Object Parts from CNNs via Active Question-Answering
- Mining Deep And-Or Object Structures via Cost-Sensitive Question-Answer-Based Active Annotations
Cited by in corpus (6)
- Interpretable machine learning: definitions, methods, and applications
- Hierarchical interpretations for neural network predictions
- Interactively Transferring CNN Patterns for Part Localization
- Topology Aware Deep Learning for Wireless Network Optimization
- On monitoring development indicators using high resolution satellite images
- Semantic Network Interpretation