{'fraction_non_alphanumeric': 0.03405935202831473, 'fraction_numerical': 0.011434794445956983, 'mean_word_length': 4.801769072816301, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Unsupervised Learning of Neural Networks to Explain Neural Networks

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.


Introduction
Convolutional neural networks (CNNs) [18,16,10] have achieved superior performance in many visual tasks, such as object classification and detection. In contrast to the significant discrimination power, the model interpretability has always been an Achilles' heel of deep neural networks.
In this paper, we aim to boost the interpretability of feature maps of a middle conv-layer in a CNN. Without additional human supervision, can we automatically disentangle human-interpretable features from chaotic middle-layer feature maps? For example, we attempt to force each channel of the disentangled feature map to represent a certain object part. Our task of improving network interpretability by exploring more interpretable middle-layer features is different from the passive visualization [39,22,29,7,9,27] and diagnosis [2,14,24] of CNN representations.
A major issue with network interpretability is that high interpretability is not necessarily equivalent to, and sometimes conflicts with a high discrimination power [2]. For example, disentangling middlelayer representations of a CNN into object parts [44] may sometimes decrease the classification performance. Thus, people usually have to trade off between the network interpretability and the network performance in real applications.
Tasks: In order to solve the above dilemma, given a pre-trained CNN, we propose to learn an additional neural network, namely an explainer network, to explain features inside the CNN. Accordingly, we call the pre-trained CNN a performer network. As shown in Fig. 1, the explainer network explains feature maps of a certain conv-layer of the performer network. We attach the explainer onto the performer like an appendix without affecting the original discrimination power of the performer.  Figure 1: Explainer network. We use an explainer network (green) to disentangle the feature map of a certain conv-layer in a pre-trained performer network (orange). The explainer network disentangles input features into object-part feature maps to explain knowledge representations in the performer, i.e. making each filter represent a specific object part. The explainer network can also invert the disentangled object-part features to reconstruct features of the performer without much loss of information. We compare ordinary feature maps in the performer and the disentangled feature maps in the explainer on the right. The orange and green lines indicate information-pass routes for the inference process and the explanation process, respectively.
The explainer performs like an auto-encoder. The encoder in the explainer contains hundreds of interpretable filters, each of which disentangles an object part from input feature maps. The decoder inverts the disentangled object-part features to reconstruct features of upper layers of the performer.
As shown in Fig. 1, the feature map of each filter in the performer usually represents a chaotic mixture of object parts and textures, whereas as a paraphrase of performer features, the disentangled object-part features in the explainer provide an insightful understanding of the performer. People can obtain answers to the following two questions from the disentangled features.
1. What part patterns are encoded in the performer? 2. Which patterns are activated and used for each specific prediction?
Learning: We learn the explainer by distilling feature representations from the performer to the explainer without any additional supervision. No annotations of sample labels, parts, or textures are used to guide feature disentanglement during the learning process. We add a loss to each interpretable filter in the explainer (see Fig. 2). The filter loss encourages an interpretable filter 1) to represent objects of a single category, and 2) to be triggered by a single region (part) of the object, rather than repetitively appear on different regions of an object. We assume that repetitive shapes on various regions are more likely to describe low-level textures (e.g. colors and edges), than high-level parts 1 . Thus, the filter loss pushes each interpretable filter towards the representation of an object part.
Meanwhile, the disentangled object-part features are also required to reconstruct features of upper layers of the performer. Successful feature reconstructions can avoid significant information loss during the disentanglement of features.
Potential values of the explainer: The high interpretability of a middle conv-layer is of great value when the performer network needs to earn trust from people. As discussed in [43], due to potential dataset bias and representation bias, a high accuracy on testing images cannot fully ensure that the performer encodes correct features. People usually need clear explanations for middle-layer features of a performer, in order to semantically or visually clarify the logic of each prediction made by the performer. For example, in Fig. 5, we use the disentangled object-part features to quantitatively identify which parts are learned and used for the prediction. Given an input image, some previous studies [9,27,24] estimated the top contributing image regions in each prediction. In comparisons, our explainer ensures each interpretable filter to exclusively describe a single object part of a category, which provides more fine-grained knowledge structures inside the performer at the part level.

Contributions:
We can summarize the contributions of this study as follows. 1) We tackle a new problem, i.e. learning an explainer network to mine and clarify potential feature components that are encoded in middle layers of a pre-trained performer network. The explainer disentangles chaotic feature maps of the performer into human-interpretable object parts. Compared to directly letting the performer encode disentangled/interpretable features, learning an additional explainer does not affect the discrimination power of the performer, thereby ensuring broader applicability. 2) We propose a simple yet effective method to learn the explainer without any annotations of object parts or textures for supervision. 3) Theoretically, besides the proposed explainer, our explainer-performer network structure also supports knowledge distillation into new explainers with novel interpretability losses. Meanwhile, the explainer can be broadly applied to different CNN performers. 4) Experiments show that our approach has considerably improved the feature interpretability.

Related work
Network interpretability: Recent studies of the interpretability of visual network are reviewed in [46]. Instead of analyzing network features from a global view [36,26,23], Bau et al. [2] defined six kinds of semantics for middle-layer feature maps of a CNN, i.e. objects, parts, scenes, textures, materials, and colors. We can roughly consider the first two semantics as object-part patterns with specific shapes, and summarize the last four semantics as texture patterns. In this study, we use the explainer to disentangle object-part patterns from feature maps.
Many studies for network interpretability mainly visualized image appearance corresponding to a neural unit inside a CNN [39,22,29,7,38,6] or extracted image regions that were responsible for network output [24,8,14,9,27,17]. Other studies retrieved mid-level representations with specific meanings from CNNs for various applications [15,35,32,19]. For example, Zhou et al. [47,48] selected neural units to describe "scenes". Simon et al. discovered objects from feature maps of unlabeled images [28]. Zhang et al. [41,42] extracted certain neural units to describe an object part in a weakly-supervised manner. Zhang et al. [40] also disentangled feature representations in middle layers of a CNN into a graphical model of object parts in an unsupervised manner. In fact, each filter in a middle conv-layer usually encodes a mixture of parts and textures, and these studies consider the most notable part/texture component as the semantic meaning of a filter. In contrast, our research uses a filter loss to purify the semantic meaning of each filter ( Fig. 1 visualizes the difference between the two types of filters).
A new trend related to network interpretability is to learn networks with disentangled, interpretable representations [12,31,21]. Many studies learn interpretable representations in a weakly-supervised or unsupervised manner. For example, capsule nets [25] and interpretable RCNN [37] learned interpretable middle-layer features. InfoGAN [3] and β-VAE [11] learned meaningful input codes of generative networks. The study of interpretable CNNs [44] developed a loss to push each middle-layer filter towards the representation of a specific object part during the learning process without given part annotations, which is the closest to our research. However, as mentioned in [2], an interpretable model cannot always ensure a high discrimination power, which limits the applicability of above interpretable models. Therefore, instead of directly boosting the interpretability of the performer network, we propose to learn an explainer network in an unsupervised fashion.
Meta-learning: Our study is also related to meta-learning [5,1,20,34]. Meta-learning uses an additional model to guide the learning of the target model. In contrast, our research uses an additional explainer network to interpret middle-layer features of the target performer network.

Explainer structure
As shown in Fig. 2, the explainer network has two modules, i.e. an encoder and a decoder, which transform performer features into interpretable object-part features and invert object-part features back to features of the performer, respectively. We applied the encoder and decoder with following structures to all types of performers in all experiments. However, people can edit the number of conv-layers and fully-connected (FC) layers in their specific applications.
Encoder: The encoder contains two tracks, namely an interpretable track and an ordinary track. The interpretable track disentangles performer features into object parts. This track has two interpretable conv-layers (namely conv-interp-1,conv-interp-2), each followed by a ReLU layer and a mask layer. The interpretable layer contains interpretable filters, and each interpretable filter can be only triggered by a specific object part. Since exclusively using object-part features is not enough to reconstruct performer features, we also design an ordinary track as a supplement to the interpretable track, in order to represent textural features that cannot be modeled by the interpretable track. The ordinary track contains a conv-layer (namely conv-ordin), a ReLU layer, and a pooling layer. We sum up output features of the interpretable track x interp and those of the ordinary track x ordin as the final output of the encoder, i.e. x enc = p · x interp + (1 − p) · x ordin , where a scalar weight p measures the quantitative contribution from the interpretable track. p is parameterized as a softmax probability p = sigmoid(w p ), w p ∈ θ, where θ is the set of parameters to be learned. Our method encourages a large p so that most information in x enc comes from the interpretable track.

Norm-layer:
We normalize x interp and x ordin to make the probability p accurately represent the ratio of the contribution from the interpretable track, i.e. making each channel of these feature maps produces the same magnitude of activation values. Thus, we add two norm-layers to the interpretable track and the ordinary track (see Fig. 2). For each input feature map x ∈ R L×L×D , the normalization operation is given asx denotes an element in the tensor x. We can update α during the learning process, which is similar to the learning for batch normalization.
Mask layer: We add mask layers after each of the two interpretable conv-layers to further remove noisy activations that are unrelated to the target object part. Let x f ∈ R L×L denote the feature map of an interpretable filter f after the ReLU operation. The mask layer localizes the potential target object part on x f as the neural unit with the strongest activationμ = argmax µ= indicates the activation value of this unit. Based on the part-localization resultμ, the mask layer assigns a mask mask f to x f to remove noises. I.e. x masked f = x f • mask f is the output feature map, where • denotes the Hadamard (element-wise) product. The mask w.r.t.μ is given as mask f = max(Tμ, 0), where Tμ is a pre-define template that will be introduced later. When mask f is determined, we treat mask f as a constant to enable gradient back-propagation.
Decoder: The decoder inverts x enc to x dec , which reconstructs performer features. The decoder has two FC layers, which followed by two ReLU layers. We use the two FC layers, namely fc-dec-1 and fc-dec-2, to reconstruct feature maps of two corresponding FC layers in the performer. The reconstruction loss will be introduced later. The better reconstruction of the FC features indicates that the explainer loses less information during the computation of x enc .

Learning
When we distill knowledge representations from the performer to the explainer, we consider the following three terms: 1) the quality of network distillation, i.e. the explainer needs to well reconstruct feature maps of upper layers in the performer, thereby minimizing the information loss; 2) the interpretability of feature maps of the interpretable track, i.e. each filter in conv-interp-2 should exclusively represent a certain object part; 3) the relative contribution of the interpretable track w.r.t. the ordinary track, i.e. we hope the interpretable track to make much more contribution to the final CNN prediction than the ordinary track. Therefore, we design the following loss for each input image to learn the explainer.
where θ denotes the set of parameters to be learned, including filter weights of conv-layers and FC layers in the explainer, w p for p, and α for norm-layers. λ (l) , λ f and η are scalar weights.

Conv-interp ReLU
Best fit this template

Loss f
Loss f Loss f Feature maps Figure 3: Templates of {T µi } for the toy case of L = 3. Each template T µi represents the ideal activation shape when the target part is localized at the i-th unit of x f . In real applications, we usually use 6 2 -14 2 templates since 6 ≤ L ≤ 14.
The first term indicates the corresponding feature in the performer. The second term − log p encourages the interpretable track to make more contribution to the CNN prediction. The third term Loss f (x f ) is the loss of filter interpretability. Without annotations of object parts, the filter loss forces x f to be exclusively triggered by a specific object part of a certain category. As shown in Fig. 2, we add a filter loss to each interpretable filter f in the two conv-layers (conv-interp-1 and conv-interp-2). x f ∈ R L×L denotes the feature map of the interpretable filter after the ReLU operation. Note that w p for p is updated based on both the − log p loss and other losses. The − log p loss encourages a high value of p, while the reconstruction loss usually requires a moderate value of p to balance neural activations from the interpretable and ordinary tracks to ensure a good reconstruction.

Filter loss
As a prior measurement of the fitness between a filter and an object part, the filter loss was formulated in [44] as the minus mutual information between feature maps and a set of pre-defined templates.
where M I(·) indicates the mutual information. X denotes a set of feature maps of the filter f , which are extracted from different input images. T = {T µ1 , T µ2 , . . . , T µ L 2 , T − } is referred to as a set of pre-defined templates. p(T ) is a constant prior probability of a template T , and p(x f |T ) measures the fitness between x f and T . Thus, we get The first L 2 templates, i.e. T µ1 , T µ2 , . . . , T µ L 2 . T µi ∈ R L×L represents the ideal distributions of neural activations in the feature map x f when the target part mainly triggers the unit µ i in x f (i ∈ {1, 2, . . . , L 2 }). Fig. 3 illustrates the L 2 templates for a toy case of L = 3. Besides the L 2 positive templates, we use a negative template T − (T −,(ij) = −τ ) for the case that the input image does not contain the target object so that the feature map should remain inactivated. τ is a positive constant. 1) When the input image contains the target object, we expect x f to be activated by a single part at a single location in the feature map. Thus, x f should match only one of the L 2 positive templates. 2) When the input image does not contain the target object, we expect x f not to be triggered, thereby matching the negative template T − . In this way, for each input image, its feature map x f needs to match exactly one of the (L 2 + 1) templates. Thus, high mutual information in Equation (2) indicates a high probability that the filter f represents the same object part through different images.

Experiments
In experiments, we learned explainers for performer networks with three types of structures to demonstrate the broad applicability of our method. Performer networks were pre-trained using object images in two different benchmark datasets for object classification. We visualized feature maps of interpretable filters in the explainer to illustrate semantic meanings of these filters. Experiments showed that interpretable filters in the explainer generated more semantically meaningful feature maps than conv-layers in the pre-trained performer.
Benchmark datasets: Because the evaluation of filter interpretability required ground-truth annotations of object landmarks 2 (parts), we used two benchmark datasets with part annotations for training and testing, i.e. the CUB200-2011 dataset [33] and the Pascal-Part dataset [4]. Note that previous studies [4,41,44] usually selected animal categories to test part localization, because animals usually contain non-rigid parts, which present great challenges for part localization. Therefore, we followed the experimental design in [41,44] that selected the seven animal categories in the two datasets for evaluation. Both the datasets provide object bounding boxes. The CUB200-2011 dataset [33] contains 11.8K bird images of 200 species with center positions of fifteen bird landmarks. Here, we considered all 200 bird species in the CUB200-2011 dataset as a single category. The Pascal-Part dataset [4] provides ground-truth segmentations of a total of 107 object parts for six animal categories.
Four types of CNNs as performers: We applied our method to four types of performers, including the AlexNet [16], the VGG-M network [30], the VGG-S network [30], the VGG-16 network [30]. For residual networks [10] and dense networks [13], skip connections in these networks usually make a single feature map contain rich features from different conv-layers, which increases the difficulty of understanding its feature maps. Thus, to simplify the story, we did not test the performance on residual networks and dense networks.
Two experiments: We followed experimental settings in [44] to conduct two experiments, i.e. an experiment of single-category classification and an experiment of multi-category classification. For single-category classification, we learned four performers with structures of the AlexNet [16], VGG-M [30], VGG-S [30], and VGG-16 [30] for each of the seven animal categories in the two benchmark datasets. Thus, we learned 28 performers, and each performer was learned to classify objects of a certain category from other objects. We cropped objects of the target category based on their bounding boxes as positive samples. Images of other categories were regarded as negative samples. For multi-category classification, we learned the VGG-M [30], VGG-S [30], and VGG-16 [30] to classify the six animal categories in the Pascal-Part dataset [4].
Experimental details: We considered the relu4 layer of the AlexNet/VGG-M/VGG-S (the 12th/12th/11th layer of the AlexNet/VGG-M/VGG-S) and the relu5-2 layer of the VGG-16 (the 28th layer) as target layers. We sent feature maps of the target layer in each performer network to an explainer network. We learned the explainer network to disentangle these feature maps for testing. The output of the explainer reconstructed the feature of the fc7 layer of the performer (the 19th/19th/18th/35th layer of the AlexNet/VGG-M/VGG-S/VGG-16) and was fed back to the performer. Thus, a reconstruction loss matched features between the fc-dec-2 layer of the explainer and the fc7 layer of the performer. Another reconstruction loss connected the fc-dec-1 layer of the explainer and the previous fc6 layer of the performer. Each conv-layer in the explainer had D filters with a 3 × 3 × D kernel and a biased term, where D is the channel number of its input feature map. We used zero padding to ensure the output feature map had the same size of the input feature map. We initialized the conv-interp-2 and conv-ordin layers with random weights. The conv-interp-1 layer in the explainer was initialized using weights of the conv5/conv5/conv5/conv5-3 layer of the AlexNet/VGG-M/VGG-S/VGG-16. The fc-dec-1 and fc-dec-2 layers in the explainer copied filter weights from the fc6 and fc7 layers of the performer, respectively. Pooling layers in the explainer were also parameterized considering the last pooling layer in the performer. Theoretically, we can use different activation shapes for T µi to construct the filter loss. For simplicity, we used part templates defined in [44] in our experiments. We set η = 1.0 × 10 6 for the AlexNet, VGG-M, and VGG-S and set η = 1.5 × 10 5 for the VGG-16, since the VGG-16 has more conv-layers than the other networks. We set λ (l) = 5 × 10 4 /E x * (l) [ max(x * (l) , 0) ] in all experiments, where the expectation was averaged over features of all images. We followed [44] to set templates T with the parameter τ and p(T ) = 1 L 2 +1 . Directly minimizing Loss f (x f ) is time-consuming, and [44] 2 To avoid ambiguity, a landmark is referred to as the central position of a semantic part with an explicit name (e.g. a head, a tail). In contrast, the part corresponding to an interpretable filter does not have an explicit name. We followed experiment settings in [44], which selected the head, neck, and torso of each category in the Pascal-Part dataset [4] as the landmarks and used the head, back, tail of birds in the CUB200-2011 dataset [33] as landmarks. It was because these landmarks appeared on testing images most frequently.   Evaluation metric: We compared the object-part interpretability between feature maps of the explainer and those of the performer. According to above network structures, we can parallel the explainer to the top conv-layer of the performer, because they both receive features from the relu4/relu5-2 layer of the performer and output features to the upper layers of the performer. Crucially, as discussed in [2], low conv-layers in a CNN usually represent colors and textures, while high convlayers mainly represent object parts; the top conv-layer of the CNN is most likely to model object parts among all conv-layers. Therefore, to enable a fair comparison, we compared feature maps of the conv-interp-2 layer of the explainer with feature maps of the top conv-layer of the performer.
We used the location instability as the evaluation metric, which has been widely used to measure the fitness between a filter f and the representation of a specific object part [44]. Given a feature map x f , we localized the part at the unitμ with the highest activation. We used [47] to project the part coordinateμ on the feature map onto the image plane and obtained pμ. We assumed that if the filter f consistently represented the same object part of a certain category through different images, then distances between the inferred part location pμ and some object landmarks 2 of the category should not change a lot among different objects. For example, if f always represented the head part on different objects, then the distance between the localized part pμ (i.e. the dog head) and the ground-truth landmark of the shoulder should keep stable, although the head location pμ may change in different images. Thus, for single-category classification, we computed the deviation of the distance between pμ and a specific landmark through objects of the category, and we used the average deviation w.r.t. various landmarks to evaluate the location instability of f . The location instability was reported as the average deviation, when we computed deviations using all pairs of filters and landmarks of the category. For multi-category classification, we first determined the target category of each filter f and then computed the location instability based on objects of the target category. We assigned each interpretable filter in the explainer to the category whose images can activate the filter most. Please see [44] for computational details of this evaluation metric. Table 1 compares the interpretability between feature maps in the performer and feature maps in the explainer. Feature maps in our explainers were much more interpretable than feature maps in performers in all comparisons. The explainer exhibited only 35.7%-68.8% of the location instability of the performer, which means that interpretable filters in the explainer more consistently described the same object part through different images than filters in the performer. The p value of an explainer Five feature maps of a single interpretable filter in each explainer Five feature maps of a single ordinary filter in each performer Figure 4: Visualization of interpretable filters in the explainer and ordinary filters in the performer. As discussed in [2], the top conv-layer of a CNN is the more likely to represent object parts than low conv-layers. We visualized and compared filters in the top conv-layer of the performer and interpretable filters in the conv-interp-2 layer of the explainer. We used [47] to estimate the RF 3 of neural activations to illustrate a filter's semantics. Interpretable filters are much more semantically meaningful than ordinary filters. Please see the appendix for more results.  Figure 5: Grad-CAM attention maps and quantitative analysis. We used [27] to compute grad-CAM attention maps of interpretable feature maps in the explainer and ordinary feature maps in the performer. Interpretable filters focused on a few distinct object parts, while ordinary filters separated its attention to both textures and parts. We can assign each interpretable filter with a semantic part. For example, we learned 58, 167, and 243 filters in the conv-interp-2 layer to represent the head, neck, and torso of the bird, respectively. We used [45] to compute quantitative contributions of different parts to the classification score on the right. Please see the appendix for more results.

Experimental results and analysis
indicates the quantitative ratio of the contribution from interpretable features. Table 2 lists p values of explainers that were learned for different performers. When we used an explainer to interpret feature maps of a VGG network, about 80%-96% activation scores came from interpretable features. To evaluate feature reconstructions of an explainer, we fed the reconstructed features back to the performer for classification. As shown in Table 3, we compared the classification accuracy of explainer's reconstructed features with the accuracy based on original performer features. Performers outperformed explainers in object classification. We used the explainer's increase of classification errors w.r.t. the performer (i.e. "∆ Error" in Table 3) to measure the information loss during feature transformation in the explainer. Furthermore, we added another baseline (Explainer+cls), which used the classification loss to replace the reconstruction loss to learned explainers. Explainer+cls learned from the classification loss, rather than distill knowledge from performers, so we did not consider feature maps in Explainer+cls as the explanation of performer features. However, with the help of the classification loss, Explainer+cls outperformed the performer in classification, which indicates potential boundaries of the discrimination power of explainers.

Visualization of filters:
We used the visualization method proposed by Zhou et al. [47] to compute the receptive field (RF) of neural activations of an interpretable filter (after ReLU and mask operations), which was scaled up to the image resolution. As mentioned in [47], the computed RF represented image regions that were responsible for neural activations of a filter, which was much smaller than the theoretical size of the RF. Fig. 4 used RFs 3 to visualize interpretable filters in the conv-interp-2 layer of the explainer and ordinary filters in the top conv-layer of the performer. Fig. 5 compares grad-CAM attention maps [27] of the conv-interp-2 layer in the explainer and those of the top conv-layer of the performer. Interpretable filters in an explainer mainly represented an object part, while feature maps of ordinary filters were usually activated by different image regions without clear semantic meanings.

Conclusion and discussions
In this paper, we have proposed a theoretical solution to a new task, i.e. learning an explainer network to disentangle and explain feature maps of a pre-trained performer network. Learning an explainer besides the performer does not decrease the discrimination power of the performer, which ensures the broad applicability. We have developed a simple yet effective method to learn the explainer, which guarantees the high interpretability of feature maps without using annotations of object parts or textures for supervision. Theoretically, our explainer-performer structure supports knowledge distillation into new explainer networks with different losses. People can revise network structures inside the ordinary track, the interpretable track, and the decoder and apply novel interpretability losses to the interpretable track for each specific application.
We have applied our method to different types of performers, and experimental results show that our explainers can disentangle most information of input feature maps into object-part feature maps, which significantly boosts the feature interpretability. E.g. for explainers for VGG networks, more than 80% signals came from interpretable filters. The explainer can also invert object-part feature maps back to reconstruct feature maps of the performer without losing much information.
Appendix: Visualization of feature maps of the explainer and feature maps of the performer Visualization of feature maps in the conv-interp-2 layer of the explainer. Each row corresponds to feature maps of a filter in the conv-interp-2 layer. We simply used a round RF for each neural activation and overlapped all RFs for visualization. Visualization of feature maps in the conv-interp-2 layer of the explainer. Each row corresponds to feature maps of a filter in the conv-interp-2 layer. We simply used a round RF for each neural activation and overlapped all RFs for visualization. Grad-CAM attention maps. We used [27] to compute grad-CAM attention maps of interpretable features of the conv-interp-2 layer in the explainer and those of ordinary features of the top conv-layer in the performer. Interpretable filters in the conv-interp-2 layer focused on distinct object parts, while ordinary filters in the performer separated its attention to both textures and parts.
The Quantitative analysis in Figure 5 of the paper shows an example of how to use the disentangled object-part features to quantitatively evaluate contributions of different parts to the output score of object classification. Based on prior semantic meanings of the interpretable filters, we show a prior explanation of the logic in the classification without manually checking activation distributions of each channel of the feature map. Thus, this is different from the visualization of CNN representations, which requires people to manually check the explanation based on visualization results.
Appendix: Detailed results of p values Appendix: More results of location instability In this section, we add another baseline for comparison. Because we considered feature maps of the relu4 layer of the AlexNet/VGG-M/VGG-S (the 12th/12th/11th layer of the AlexNet/VGG-M/VGG-S) and the relu5-2 layer of the VGG-16 (the 28th layer) as target feature maps to be explained, we sent feature maps of these layers feature into explainer networks to disentangle them. Thus, we measured the location instability of these target feature maps as the new baseline.
The following two tables show that our explainer networks successfully disentangled these target feature maps, and the disentangled feature maps in the explainer exhibited much lower location instability. Table 5: Location instability of feature maps in performers and explainers. Performers are learned based on the Pascal-Part dataset [4] Single-category  {T µ1 , T µ2 , . . . , T µ L 2 } ⊂ T and p(T + |x f ) = µ p(T µ |x f ). We define the set of all positive templates T + as a single label to represent category c. We use the negative template T − to denote other categories. This term encourages a low conditional entropy of inter-category activations, i.e. a well-learned filter f needs to be exclusively activated by a certain category c and keep silent on other categories. We can use a feature map x f of f to identify whether the input image belongs to category c or not, i.e. x f fitting to either Tμ or T − , without great uncertainty. a large value of p and trained the interpretable filter f , but we did not pass gradients of the filter loss to the ordinary track.
Appendix: Evaluating the reconstruction quality based on the object-classification accuracy In order to evaluate the feature-reconstruction quality, we used the classification accuracy based on explainer features as an evaluation metric. We fed output features of the explainer back to the performer for classification. Theoretically, a high classification accuracy may demonstrate that the explainer can well reconstruct performer features without losing much information. Note that explainers were learned to reconstruct feature maps of performers, rather than optimizing the classification loss, so explainers could only approximate the classification performance of performers but could not outperform performers.
In addition, we added another baseline, namely Explainer+cls, which used the object-classification loss to replace the reconstruction loss to learned explainer networks. Thus, output features of Explainer+cls exhibited higher classification accuracy than features of the original explainer.
The following table compares the classification accuracy between the performer and the explainer. For multi-category classification, the performance of explainers was quite close to that of performers. Learning explainers with classification losses exhibited significantly better classification performance than learning explainers with reconstruction losses. Because Explainer+cls directly learned from the classification loss, Explainer+cls sometimes even outperformed the performer.