title: Visual Concept Reasoning Networks
authors: Taesup Kim Sungwoong Kim Yoshua Bengio
text: 
  
  Entanglement bootstrap approach for gapped domain walls
      Isaac H. Kim
      December 30, 2023
  =======================================================
  
  
  
  
  A split-transform-merge strategy has been broadly used as an architectural constraint in convolutional neural networks for visual recognition tasks.
  It approximates sparsely connected networks by explicitly defining multiple branches to simultaneously learn representations with different visual concepts or properties.
  Dependencies or interactions between these representations are typically defined by dense and local operations, however, without any adaptiveness or high-level reasoning.
  In this work, we propose to exploit this strategy and combine it with our Visual Concept Reasoning Networks (VCRNet) to enable reasoning between high-level visual concepts.
  We associate each branch with a visual concept and derive a compact concept state by selecting a few local descriptors through an attention module.
  These concept states are then updated by graph-based interaction and used to adaptively modulate the local descriptors.
  We describe our proposed model by split-transform-attend-interact-modulate-merge stages, which are implemented by opting for a highly modularized architecture.
  Extensive experiments on visual recognition tasks such as image classification, semantic segmentation, object detection, scene recognition, and action recognition show that our proposed model, VCRNet, consistently improves the performance by increasing the number of parameters by less than 1%.
  
  
  
  
  § INTRODUCTION
  
  Convolutional neural networks have shown notable success in visual recognition tasks by learning hierarchical representations.
  The main properties of convolutional operations, which are local connectivity and weight sharing, are the key factors that make it more efficient than fully-connected networks for processing images.
  The local connectivity particularly comes up with a fundamental concept, receptive field, that defines how far the local descriptor can capture the context in the input image.
  In principle, the receptive field can be expanded by stacking multiple convolutional layers or increasing the kernel size of them.
  However, it is known that the effective receptive field only covers a fraction of the theoretical size of it <cit.>.
  This eventually restricts convolutional neural networks to capture the global context based on long-range dependencies.
  On the other hand, most of convolutional neural networks are characterized by dense and local operations that take the advantage of the weight sharing property. 
  It hence typically lacks internal mechanism for high-level reasoning based on abstract semantic concepts such those humans manipulate with natural language and inspired by modern theories of consciousness <cit.>.
  It is related to system 2 cognitive abilities, which include things like reasoning, planning, and imagination, that are assumed to capture the global context from interactions between a few abstract factors and accordingly give feedback to the local descriptor for decision-making.
  
  There have been approaches to enhance capturing long-range dependencies such as non-local networks <cit.>.
  The main concept of it, which is related to self-attention <cit.>, is to compute a local descriptor by adaptively aggregating other descriptors from all positions, regardless of relative spatial distance.
  In this setting, the image feature map is plugged into a fully-connected graph neural network, where all local positions are fully connected to all others. 
  It is able to capture long-range dependencies and extract the global context, but it still works with dense operations and lacks high-level reasoning. 
  Both LatentGNN <cit.> and GloRe <cit.> alleviate these issues by introducing compact graph neural networks with some latent nodes designed to aggregate local descriptors.
  
  In this work, we propose Visual Concept Reasoning Networks (VCRNet) to enable reasoning between high-level visual concepts.
  We exploit a modularized multi-branch architecture that follows a split-transform-merge strategy <cit.>.
  While it explicitly has multiple branches to simultaneously learn multiple visual concepts or properties, it only considers the dependencies or interactions between them by using dense and local operations.
  We extend the architecture by split-transform-attend-interact-modulate-merge stages, and this allows to capture the global context by reasoning with sparse interactions between high-level visual concepts from different branches.
  
  The main contributions of the paper are:
  
      
    * We propose Visual Concept Reasoning Networks (VCRNet) that efficiently capture the global context by reasoning over high-level visual concepts.
      
    * We compactly implement our propose model by exploiting a modularized multi-branch architecture composed of split-transform-attend-interact-modulate-merge stages. 
      
    * We showcase our proposed model improves the performance more than other models by increasing the number of parameters by less than 1% on multiple visual recognition tasks.
  
  
  
  
  § RELATED WORKS
  
  Multi-branch architectures are carefully designed with multiple branches characterized by different dense operations, and split-transform-merge stages are used as the building blocks.
  The Inception models <cit.> are one of the successful multi-branch architectures that define branches with different scales to handle multiple scales.
  ResNeXt <cit.> is another version of ResNet<cit.> having multiple branches with the same topology in residual blocks, and it is efficiently implemented by grouped convolutions.
  In this work, we utilize this residual block and associate each branch of it with a visual concept.
  
  There have been several works to adaptively modulate the feature maps based on the external context or the global context of input data.
  Squeeze-and-Excitation networks (SE) <cit.> use gating mechanism to do channel-wise re-scaling in accordance with the channel dependencies based on the global context.
  Gather-Excite networks (GE) <cit.> further re-scale locally that it is able to finely redistribute the global context to the local descriptors.
  Convolutional block attention module (CBAM) <cit.> independently and sequentially has channel-wise and spatial-wise gating networks to modulate the feature maps.
  All these approaches extract the global context by using the global average pooling that equally attends all local positions.
  Dynamic layer normalization (DLN) <cit.> and Feature-wise Linear Modulation (FiLM) <cit.> present a method of feature modulation on normalization layers by conditioning on the global context and the external context, respectively. 
  
  Content-based soft-attention mechanisms <cit.> have been broadly used on neural networks to operate on a set of interchangeable objects and aggregate it. 
  Particularly, Transformer models <cit.> have shown impressive results by using multi-head self-attention modules to improve the ability of capturing long-range dependencies. 
  Non-local networks (NL) <cit.> use this framework in pixel-level self-attention blocks to implement non-local operations.
  Global-context networks (GC) <cit.> simplify the non-local networks by replacing the pixel-level self-attention with a attention module having a single fixed query that is globally shared and learned.
  Attention-augmented convolutional networks <cit.> similarly augment convolutional operators with self-attention modules as the non-local networks, but concatenate feature maps from convolution path and self-attention path.
  LatentGNN <cit.> and Global reasoning module (GloRe) <cit.> differently simplifies the non-local networks that they first map local descriptors into latent nodes, where the number of nodes is relatively smaller than the number of local positions, and capture the long-range dependencies from interactions between the latent nodes. 
  Our proposed model is similar to these two models, but we take the advantage of the multi-branch architecture and the attention mechanism to efficiently extract a set of distinct visual concept states from the input data. 
  
  
  
  
  
  
  § METHODS
  
  In this section, we introduce our proposed model, Visual Concept Reasoning Network (VCRNet), and describe the overall architecture and its components in detail.
  The proposed model is designed to reason over high-level visual concepts and accordingly modulate feature maps based on its result.
  In the following, we assume the input data X ∈ℝ^HW × d is a 2D tensor as an image feature map, where H, W, and d refer to the height, width, and feature size of X, respectively.
  Moreover, for simplicity, we denote all modules by a function F_func(·; θ), where θ is a learnable parameter and the subscript func briefly explains the functionality of it.
  
  
  
   §.§ Modularized Multi-Branch Residual Block
  
  Residual blocks are composed of a skip connection and multiple convolutional layers <cit.>. 
  We especially take advantage of using a residual block of ResNeXt <cit.> that operates by grouped convolutions. 
  This block is explicable by a split-transform-merge strategy and a highly modularized multi-branch architecture.
  It has an additional dimension "cardinality" to define the number of branches used in the block.
  The branches are defined by separate networks, which are based on the same topology and implemented by grouped convolutions, processing non-overlapping low-dimensional feature maps.
  In this work, we use this block by regarding each branch as a network learning representation of a specific visual concept and, therefore, refer to the cardinality as the number of visuals concepts C. 
  
  The split-transform-merge strategy can be described by visual concept processing as the following.
  Each concept c has a compact concept-wise feature map Z_c ∈ℝ^HW × p, where p is a lot smaller than d.
  It is initially extracted from the input data X by splitting it into a low-dimensional feature map X̃_c  ∈ℝ^HW × p with a 1 × 1 convolution F_split(X; θ^split_c).
  Afterward, it is followed by a concept-wise transformation based on a 3 × 3 convolution F_trans(X̃_c;θ^trans_c) while keeping the feature size compact.
  The extracted concept-wise feature maps {Z_c}_c=1^C are then projected back into the input space to be merged as Y=X + ∑_c=1^CF_merge(Z_c; θ^merge_c). 
  This overall multi-branch procedure interestingly can be highly modularized and parallelized by grouped convolutions.
  However, it lacks the ability of reasoning over the high-level visual concepts that captures both local and global contexts.
  We propose to extend this approach by introducing additional modules to enable visual concept reasoning.
  Our proposed model is based on a new strategy with split-transform-attend-interact-modulate-merge stages.
  The new stages completely work into the residual block with the following modules: (a) concept sampler, (b) concept reasoner, and (c) concept modulator.
  The overall architecture is depitced in Figure <ref> showing how it is highly modularized by sharing the topology between different concepts.
  We refer to networks having residual blocks with these modules, as Visual Concept Reasonining Networks (VCRNet).
  
  
  
  
  
   §.§ Concept Sampler
  
  The concept-wise feature maps {Z_c}_c=1^C are composed of all possible pixel-level local descriptors, which contain spatially local feature information, as sets of vectors.
  To do efficient reasoning over the visual concepts, it first requires a set of abstract feature vectors representing the visual concepts.
  Therefore, a form of aggregation mechanism is necessary to derive a set of visual concept states, where each state is a vector, from the concept-wise feature maps.
  We implement this by presenting a concept sampler (CS) module.
  Each concept c has a separate concept sampler F_CS(Z_c; θ^CS_c) that aggregates the set of local descriptors in Z_c and converts it into a concept state h_c ∈ℝ^1 ×p̃, where we set p̃=min(p/4, 4).
  We introduce two types of concept samplers that are based on pooling and attention operations, respectively.
  
  Pooling-based sampler 
  Global average pooling is one of the simplest ways to extract the global context from a feature map without explicitly capturing long-range dependencies. 
  It equally and densely attends all local positions to aggregate the local descriptors.
  Our pooling-based sampler adopts this operation to compute the concept state h_c as shown in Figure <ref>.a, and it is formulated as:
  
      h_c =F_CS(Z_c; θ^CS_c) = F_GAP(Z_c) W^v_c = (1/HW∑_i=1^H∑_j=1^WZ_c[i, j])W^v_c,
  
  where Z_c[i,j] ∈ℝ^1 × p is a local descriptor at position (i, j), and W^v_c ∈ℝ^p ×p̃ is a learnable projection weight. 
  In comparison with the attention-based sampler, it is simple and compact having a small number of parameters, but there is no data-adaptive process.
  Due to its simplicity, similar approaches have been broadly used in the previous works such as SENet <cit.> and CBAM <cit.>.
  
  Attention-based sampler 
  The attention mechanism operates by mapping a query vector and a set of interchangeable key-value vector pairs into a single vector, which is a weighted sum of value vectors.
  It allows us to aggregate a set of local descriptors by sparsely and adaptively selecting them. 
  We hence apply this approach to our concept sampler.
  For each concept c, the query vector q_c ∈ℝ^1 ×p̃ describes what to focus on during aggregation. 
  The concept-wise feature map Z_c converts into a set of key-value vector pairs that we separately project it into a key map K_c = Z_c W^k_c and a value map V_c = Z_c  W^v_c, where W^k_c, W^v_c ∈ℝ^p ×p̃ are learnable projection weights.
  The concept state h_c is derived by computing the dot products of the query vector q_c with the key map K_c and subsequently applying a softmax function to obtain the attention weights over the value map V_c as:
  
      h_c =F_CS(Z_c; θ^CS_c) = softmax( q_c K_c^⊤/√(p̃))V_c = (softmax( q_c ( Z_c W^k_c )^⊤/√(p̃))  Z_c) W^v_c.
  
  The query vector q_c can be either learned as a model parameter or computed by a function of the feature map Z_c.
  The former approach defines a static query that is shared globally over all data.
  GCNet <cit.> uses this approach, instead of global average pooling, to extract the global context.
  It can be simplified and implemented by replacing the term q_c ( Z_c W^k_c )^⊤ in Equation <ref> with a 1 × 1 convolution as depicted in Figure <ref>.b.
  The latter approach, in contrast, uses a dynamic query that varies according to Z_c.
  We set the query as an output of the function as q_c = F_GAP(Z_c) W^q_c, which is equal to the pool-based sampler, as shown in Figure <ref>.c.
  
  The concept samplers can be viewed as multi-head attention modules in Transformer models <cit.> that we set each concept to be operated by a single-head attention module. 
  However, our concept samplers don't process the same input feature map as they do.
  Each concept is only accessible to its corresponding feature map, and this encourages the concept samplers to attend and process different features.
  
  
  
   §.§ Concept Reasoner
  
  The visual concept states are derived independently from separate branches in which no communication exists.
  Therefore, we introduce a reasoning module, Concept Reasoner (CR), to make the visual concept states to interact with the others and accordingly update them.
  We opt for using a graph-based method by defining a fully-connected graph 𝒢 = (𝒱, ℰ) with nodes 𝒱 and directional edges ℰ.
  The node v_c ∈𝒱 corresponds to a single visual concept c and is described by the visual concept state h_c.
  The edge e_cc'∈ℰ defines the relationship or dependency between visual concepts c and c'.
  It is further specified by an adjacency matrix A ∈ℝ^C × C to represent edge weight values in a matrix form.
  Based on this setting, we describe the update rule of the visual concept states as:
  
      h̃_c = F_CR(h_c, {h_c'}_c'=1^C;θ_c^CR)= ReLU(BN(h_c + ∑_c'=1^CA[c, c']h_c')),
  
  where A[c, c'] ∈ℝ is a edge weight value, and batch normalization (BN) and ReLU activation are used. 
  This can also be implemented in a matrix form as H̃ = ReLU(BN(H + AH)), where H=[h_1;h_2;...;h_C] ∈ℝ^C ×p̃ is of vertically stacked concept states. 
  The adjacency matrix A can be treated as a module parameter that is learned during training.
  This sets the edges to be static that all relationships between visual concepts are consistently applied to all data. 
  However, we relax this constraint by dynamically computing the edge weights based on the concept states.
  A function F_edge(h_c;W^edge)=tanh(h_c W^edge), where W^edge∈ℝ^p̃× C is a learnable projection weight, is used to get all edge weights A[c,:] related to the concept c as shown in Figure <ref>. 
  This function learns how each concept adaptively relates to the others based on its state.
  
  
  
  
  
   §.§ Concept Modulator
  
  The updated concept states are regarding not only a single concept, but also the others as a result of reasoning based on interactions. 
  This information has to be further propagated to local concept features, which are extracted from the mainstream of the network. 
  However, this is a non-trivial problem due to dimensional mismatch that the concept states are vectors not containing any explicit spatial information.
  We alleviate this issue by implementing a module, Concept Modulator (CM), which is based on a feature modulation approach.
  It modulates the concept-wise feature maps by channel-wise scaling and shifting operations.
  These operations are conditioned on the updated concept states to fine-tune the feature maps based on the result of reasoning.
  We design this module based on DLN <cit.> and FiLM <cit.>.
  Both models use feature-wise affine transformations on normalization layers by dynamically generating the affine parameters instead of learning them. 
  In this way, we define separate modules for the visual concepts as shown in Figure <ref>.
  Each concept-wise feature map X_c is modulated as:
  
      X̃_c = F_CM(h̃_c, X_c; θ_c^CM)= ReLU(α_c ⊙ X_c + β_c), 
      α_c =h̃_̃c̃W^scale_c + b_c^scale and β_c = h̃_̃c̃W^shift_c + b_c^shift,
  
  where ⊙ indicates channel-wise multiplication.
  α_c, β_c ∈ℝ^1 × p are scaling and shifting parameters, respectively, which are adaptively computed by linerly mapping the updated concept state h̃_c.
  
  
  
  
  
  § EXPERIMENTS
  
  In this section, we run experiments on visual recognition tasks such as image classification, object detection/segmentation, scene recognition, and action recognition with large-scale datasets. 
  In all experiments, we set ResNeXt <cit.>, which performs better than ResNet <cit.> with less parameters, as a base architecture with cardinality = 32 and base width =4d.
  Furthermore, our proposed model, VCRNet, is also defined by C=32 concepts in all residual blocks.
  We also compare VCRNet against other networks (modules), which have a form of attention or reasoning modules, such as Squeeze-and-Excitation (SE) <cit.>, Convolutional Block Attention Module (CBAM) <cit.>, Global Context block (GC) <cit.>, and Global Reasoning unit (GloRe) <cit.>.
  All networks are implemented in all residual blocks in the ResNeXt except GloRe, which is partially adopted in the second and third residual stages.
  
  
  
  
  
  
   §.§ Image Classification
  
  We conduct experiments on a large-scale image classification task on the ImageNet dataset <cit.>. 
  The dataset consists of 1.28M training images and 50K validation images from 1000 different classes.
  All networks are trained on the training set and evaluated on the validation set by reporting the top-1 and top-5 errors with single center-cropping.
  Our training setting is explained in detail in Appendix.
  
  
  
  
  
  
  
  
  The overall experimental results are shown in Table <ref>, where all results are reproduced by our training setting for a fair comparison.
  For evaluation, we always take the final model, which is obtained by exponential moving average (EMA) with the decay value 0.9999.
  VCRNet consistently outperforms than other networks in both ResNeXt-50 and ResNeXt-101 settings.
  Moreover, it is more compact than the others that only increases the number of parameters by less than 1%(≈ 0.95%).
  In contrast, GloRe <cit.>, which also does high-level reasoning as our model, requires more parameters than ours, although it is partially applied in the ResNeXt architecture. 
  In addition, we modify the concept modulators to reuse the attention maps extracted from the concept samplers to modulate local descriptors at pixel-level as GloRe has a pixel-level re-projection mechanism.
  The modification slightly improves the top-1 performance by using the same number of parameters, but it increases the computational cost (GFLOPs).
  We describe this approach in detail in Appendix.
  
  
  
   §.§ Object Detection and Segmentation
  
  We further do some experiments on object detection and instance segmentation on the MSCOCO 2017 dataset <cit.>. 
  MSCOCO dataset contains 115K images over 80 categories for training, 5K for validation. 
  Our experiments are based on the Detectron2 <cit.>.
  All backbone networks are based on the ResNeXt-50 and pre-trained on the ImageNet dataset by default.
  We employ and train the Mask R-CNN with FPN <cit.>.
  We follow the training procedure of the Detectron2 and use the 1× schedule setting. 
  Furthermore, synchronized batch normalization is used instead of freezing all related parameters.
  
  For evaluation, we use the standard setting of evaluating object detection and instance segmentation via the standard mean average-precision scores at different boxes and the mask IoUs, respectively. 
  
  Table <ref> is the list of results by only varying the backbone network.
  It shows similar tendencies to the results of ImageNet.
  However, GloRe <cit.> is showing the best performance.
  We assume that this result is from two factors.
  One is the additional capacity, which is relatively larger than other models, used by Glore.
  The other is that GloRe uses pixel-level re-projection mechanism that applies the result of reasoning by re-computing all local descriptors. 
  Especially, the task requires to do prediction on pixel-level so that it would be beneficial to use it.
  Therefore, we also make our model to use pixel-level feature modulation, and it further improves the performance.
  
  
  
  
  
  
  
  
  
   §.§ Scene Recognition and Action Recognition
  
  Places365 <cit.> is a dataset labeled with scene semantic categories for the scene recognition task. 
  This task is challenging due to the ambiguity between classes that several scene classes may share some similar objects causing confusion among them.
  We specifically use the Places365-Standard setting that the train set has up to 1.8M images from 365 scene classes, and the validation set has 50 images per each class.
  All networks are trained from random initialization and evaluated on the validation set by following the setting used in our ImageNet experiments.
  Additionally, we insert Dropout <cit.> layers in residual blocks with p=0.02 to avoid some over-fitting. 
  
  The human action recognition task is another task appropriate to demonstrate how the network can generalize well not only to 2D image data, but also to 3D video data.
  We use the Kinetics-400 dataset <cit.> including 400 human action categories with 235K training videos and 20K validation videos. 
  We follow the slow-only experiment setting used in <cit.> that simply takes the ImageNet pre-trained model with a parameter inflating approach <cit.>.
  
  Both tasks are classification tasks similar to the ImageNet image classification, and the results shown in Table <ref> and <ref> explain that our approach are generally performing better than other baselines in various visual classification tasks.
  Moreover, action recognition results prove that our model can be generally applied to all types of data. 
  
  
  
  
   §.§ Analysis: Ablation Study and Visualization
  
  Concept sampler  
  We have proposed different approaches for the concept sampler in Section <ref>. 
  To compare these approaches, we train our proposed networks (ResNeXt-50 + VCR) by having different concept samplers and keeping all other modules fixed.
  Table <ref>.(a) compares the performance of these approaches on the ImageNet image classification task. 
  The attention-based approach with dynamic queries (dynamic attn) outperforms the others, and we assume that this is due to having more adaptive power than the others.
  Furthermore, the results interestingly show that our models consistently perform better than other baseline networks except a network with GloRe, which are shown in Table <ref>, regardless of the type of concept sampler.
  
  Concept reasoner  
  To investigate the effectiveness of reasoning based on interactions between concepts, we conduct some experiments by modifying the concept reasoner.
  We first remove the concept interaction term in Equation <ref> and evaluate it to measure the effectiveness of reasoning. 
  Moreover, we also compare the performance between learned static edges and computed dynamic edges.
  In Table <ref>.(b), the results show that the reasoning module is beneficial in terms of the performance.
  Notably, it also reveals that using dynamic edges can improve the reasoning and reduce the number of parameters.
  
  Concept modulator 
  Our feature modulation consists of both channel-wise scaling and shifting operations. 
  Previous works have shown to use only scaling (gating) <cit.> or only shifting <cit.>.
  We compare different settings of the feature modulation as shown in Table <ref>.(c). 
  Using only shifting performs better than using only scaling, and combining both operations can be recommended as the best option.
  
  Visualization
  We use t-SNE <cit.> to visual how visual concept states are existing in the feature space.
  We collect a set of concept states, which are all extracted from the same concept sampler, by doing inference with the ImageNet validation set.
  In Figure <ref>, it is shown that the concept states are clustered and separated by concepts.
  This result can be further explained by observing the attention maps computed from the concept samplers.
  Interestingly, they reveal the fact that the concept samplers sparsely attend different regions or objects, and this would result in clustered concept states.
  We also visualize attention (projection) maps from other networks such as GCNet <cit.> and GloRe <cit.> in Figure <ref>.
  GCNet only produces a single attention map, and it tends to sparsely attend foreground objects.
  GloRe similarly computes projection maps as our approach, but the maps are densely attending regions with some redundancies between them.
  
  
  
  
  
  
  
  
  
  § CONCLUSION
  
  In this work, we propose Visual Concept Reasoning Networks (VCRNet) that efficiently capture the global context by reasoning over high-level visual concepts.
  Our proposed model precisely fits to a modularized multi-branch architecture by having split-transform-attend-interact-modulate-merge stages.
  The experimental results shows that it consistently outperforms other baseline models on multiple visual recognition tasks and only increases the number of parameters by less than 1%.
  We strongly believe research in these approaches will provide notable improvements on more difficult visual recognition tasks in the future.
  As future works, we are looking forward to remove dense interactions between branches as possible to encourage more specialized concept-wise representation learning and improve the reasoning process.
  Moreover, we expect to have consistent visual concepts that are shared and updated over all stages in the network.
  
  
  
  
  
  
  
  
  
  
  neurips
  
  
  
  
  
  § IMPLEMENTATION DETAILS
  
  Our proposed model is based on a modularized multi-branch architecture.
  Each branch can be described as a separate network that is associated to a single concept as shown in Figure <ref>.
  The concept reasoner is only shared between branches to make different concepts to interact.
  At the end, all branches are merged into a single output by summation.
  By using grouped convolutional operations, the overall architecture can be viewed as a single branch, but internally operates by separate networks in parallel.
  
  
  
  
  
  
  
  § IMAGE CLASSIFICATION TRAINING SETTING
  
  For training the networks, we follow the standard data loader that uses data augmentation with resizing and random flipping and cropping to get images with the size of 224 × 224. 
  All images are also normalized into [0, 1] by using the RGB-wise mean and standard deviation. 
  We train all networks from scratch on distributed learning system using synchronous SGD optimizer with weight decay 0.0001 and momentum 0.9. 
  The learning rate is warmed up for the initial 5 epochs that is linearly increased from 0.0 to 1.6 <cit.>. 
  This is the setting when the mini-batch size is 4096 with 32 GPUs (128 images per each GPU) for both ResNeXt-50 and ResNeXt-101. 
  Afterward, we use the cosine learning rate scheduler for 115 epochs that decays the learning rate from 1.6 to 0.0001.
  Moreover, we apply label-smoothing regularization <cit.> during training. 
  
  
  
  
  § PIXEL-LEVEL CONCEPT MODULATOR
  
  In this work, we mainly introduce a concept modulator with channel-level affine transformations that the related parameters are dynamically generated rather than learned.
  This approach treats all local positions equally during feature modulation.
  It is the simplest way to effectively propagate the global context into all local descriptors.
  However, we further implement a pixel-level concept modulator to propagate the global context differently into local descriptors.
  Each concept state h_c is derived by computing the attention map M_c ∈ℝ^HW × 1 from the corresponding concept sampler that it contains the spatial information related to the concept c.
  Therefore, we utilize this attention map for the pixel-level concept modulator.
  We first re-normalize the attention map by its maximum value:
  
      M̃_c = M_c/max(M_c), where  M_c = softmax( q_c ( Z_c W^k_c )^⊤/√(p̃)).
  
  Without this re-normalization, the learning doesn't work properly.
  The re-normalized attention map M̃_c is used to project the updated concept state h̃_c into all local positions as M̃_ch̃_c ∈ℝ^HW ×p̃.
  based on this projection, we are able to do pixel-level feature modulation as:
  
      X̃_c = F_CM(h̃_c, M̃_c, X_c; θ_c^CM)= ReLU(α_c · X_c + β_c), 
      α_c =(M̃_ch̃_c)W^scale_c + b_c^scale and β_c = (M̃_ch̃_c)W^shift_c + b_c^shift,
  
  where · is an element-wise multiplication.
  Both α_c and β_c are having the same size as the feature map X_c so that all local positions have separate scaling and shifting parameters.
  
  
  
  
  § ADDITIONAL EXPERIMENTAL RESULTS
  
  We do some additional experiments to investigate the effectiveness of normalization layers in our proposed modules.
  In our main implementation, we use batch normalization (BN) layers in concept samplers and reasoners.
  However, the effectiveness of batch normalization layers highly depends on the mini-batch size or the image size.
  In image classification experiments, we set the mini-batch size significantly large, which is 4096, and the batch normalization layers seem to properly improve the performance as shown in Table <ref>.
  
  
  
  We further run experiments on object detection and instance segmentation on the MSCOCO dataset.
  All experiments are initialized by using the pre-trained models and trained with the mini-batch size 16 that is relatively smaller than the setting of image classification.
  The results show that the batch normalization layers conversely degrade the performance in some cases.
  
  
  
  
  
  § VISUALIZATION: CLASS ACTIVATION MAPPING
  
  We visualize class activation mapping (CAM) <cit.> to localize class-specific regions in images.
  The visualization results are shown in Figure <ref>.
  
  
  
  
  
  