Learning deep representations by mutual information estimation and maximization

by   R Devon Hjelm, et al.

Many popular representation-learning algorithms use training objectives defined on the observed data space, which we call pixel-level. This may be detrimental when only a small fraction of the bits of signal actually matter at a semantic level. We hypothesize that representations should be learned and evaluated more directly in terms of their information content and statistical or structural constraints. To address the first quality, we consider learning unsupervised representations by maximizing mutual information between part or all of the input and a high-level feature vector. To address the second, we control characteristics of the representation by matching to a prior adversarially. Our method, which we call Deep INFOMAX (DIM), can be used to learn representations with desired characteristics and which empirically outperform a number of popular unsupervised learning methods on classification tasks. DIM opens new avenues for unsupervised learn-ing of representations and is an important step towards flexible formulations of representation learning objectives catered towards specific end-goals.


Graph Representation Learning via Graphical Mutual Information Maximization

The richness in the content of various information networks such as soci...

Which Mutual-Information Representation Learning Objectives are Sufficient for Control?

Mutual information maximization provides an appealing formalism for lear...

Neural Bayes: A Generic Parameterization Method for Unsupervised Representation Learning

We introduce a parameterization method called Neural Bayes which allows ...

Representation Learning for Conversational Data using Discourse Mutual Information Maximization

Although many pretrained models exist for text or images, there have bee...

M2IOSR: Maximal Mutual Information Open Set Recognition

In this work, we aim to address the challenging task of open set recogni...

On the Statistical and Information-theoretic Characteristics of Deep Network Representations

It has been common to argue or imply that a regularizer can be used to a...

Learning Adversarially Robust Representations via Worst-Case Mutual Information Maximization

Training machine learning models to be robust against adversarial inputs...

1 Introduction

One core objective of deep learning is to discover useful representations, and the simple idea explored here is to train a representation-learning function, i.e. an encoder, to maximize the mutual information (MI) between its inputs and outputs. MI is notoriously difficult to compute, particularly in continuous and high-dimensional settings. Fortunately, recent advances enable effective computation of MI between high dimensional input/output pairs of deep neural networks 

(Belghazi et al., 2018). We leverage MI estimation for representation learning and show that, depending on the downstream task, maximizing MI between the complete input and the encoder output (i.e., global MI) is often insufficient for learning useful representations. Rather, structure matters: maximizing the average MI between the representation and local regions of the input (e.g. patches rather than the complete image) can greatly improve the representation’s quality for, e.g., classification tasks, while global MI plays a stronger role in the ability to reconstruct the full input given the representation. Usefulness of a representation is not just a matter of information content: representational characteristics like independence also play an important role (Gretton et al., 2012; Hyvärinen & Oja, 2000; Hinton, 2002; Schmidhuber, 1992; Bengio et al., 2013; Thomas et al., 2017)

. We combine MI maximization with prior matching in a manner similar to adversarial autoencoders 

(AAE, Makhzani et al., 2015) to constrain representations according to desired statistical properties. This approach is closely related to the infomax optimization principle (Linsker, 1988; Bell & Sejnowski, 1995), so we call our method Deep InfoMax (DIM). Our main contributions are the following:

  • We formalize Deep InfoMax (DIM), which simultaneously estimates and maximizes the mutual information between input data and learned high-level representations.

  • Our mutual information maximization procedure can prioritize global or local information, which we show can be used to tune the suitability of learned representations for classification or reconstruction-style tasks.

  • We use adversarial learning (à la Makhzani et al., 2015) to constrain the representation to have desired statistical characteristics specific to a prior.

  • We introduce two new measures of representation quality, one based on Mutual Information Neural Estimation (MINE, Belghazi et al., 2018) and a neural dependency measure (NDM) based on the work by Brakel & Bengio (2017), and we use these to bolster our comparison of DIM to different unsupervised methods.

2 Related Work

There are many popular methods for learning representations. Classic methods, such as independent component analysis 

(ICA, Bell & Sejnowski, 1995)

and self-organizing maps 

(Kohonen, 1998), generally lack the representational capacity of deep neural networks. More recent approaches include deep volume-preserving maps (Dinh et al., 2014, 2016), deep clustering (Xie et al., 2016; Chang et al., 2017), noise as targets (NAT, Bojanowski & Joulin, 2017), and self-supervised or co-learning (Doersch & Zisserman, 2017; Dosovitskiy et al., 2016; Sajjadi et al., 2016). Generative models are also commonly used for building representations (Vincent et al., 2010; Kingma et al., 2014; Salimans et al., 2016; Rezende et al., 2016; Donahue et al., 2016), and mutual information (MI) plays an important role in the quality of the representations they learn. In generative models that rely on reconstruction (e.g., denoising, variational, and adversarial autoencoders, Vincent et al., 2008; Rifai et al., 2012; Kingma & Welling, 2013; Makhzani et al., 2015), the reconstruction error can be related to the MI as follows:


where and denote the input and output of an encoder which is applied to inputs sampled from some source distribution. denotes the expected reconstruction error of given the codes . and denote the marginal and conditional entropy of in the distribution formed by applying the encoder to inputs sampled from the source distribution. Thus, in typical settings, models with reconstruction-type objectives provide some guarantees on the amount of information encoded in their intermediate representations. Similar guarantees exist for bi-directional adversarial models (Dumoulin et al., 2016; Donahue et al., 2016)

, which adversarially train an encoder / decoder to match their respective joint distributions or to minimize the reconstruction error 

(Chen et al., 2016).

Mutual-information estimation

Methods based on mutual information have a long history in unsupervised feature learning. The infomax principle (Linsker, 1988; Bell & Sejnowski, 1995), as prescribed for neural networks, advocates maximizing MI between the input and output. This is the basis of numerous ICA algorithms, which can be nonlinear (Hyvärinen & Pajunen, 1999; Almeida, 2003) but are often hard to adapt for use with deep networks. Mutual Information Neural Estimation (MINE, Belghazi et al., 2018) learns an estimate of the MI of continuous variables, is strongly consistent, and can be used to learn better implicit bi-directional generative models. Deep InfoMax (DIM) follows MINE in this regard, though we find that the generator is unnecessary. We also find it unnecessary to use the exact KL-based formulation of MI. For example, a simple alternative based on the Jensen-Shannon divergence (JSD) is more stable and provides better results. We will show that DIM can work with various MI estimators. Most significantly, DIM can leverage local structure in the input to improve the suitability of representations for classification. Leveraging known structure in the input when designing objectives based on MI maximization is nothing new (Becker, 1992, 1996; Wiskott & Sejnowski, 2002), and some very recent works also follow this intuition. It has been shown in the case of discrete MI that data augmentations and other transformations can be used to avoid degenerate solutions (Hu et al., 2017). Unsupervised clustering and segmentation is attainable by maximizing the MI between images associated by transforms or spatial proximity (Ji et al., 2018). Our work investigates the suitability of representations learned across two different MI objectives that focus on local or global structure, a flexibility we believe is necessary for training representations intended for different applications. Proposed independently of DIM, Contrastive Predictive Coding (CPC, Oord et al., 2018) is a MI-based approach that, like DIM, maximizes MI between global and local representation pairs. CPC shares some motivations and computations with DIM, but there are important ways in which CPC and DIM differ. CPC processes local features sequentially to build partial “summary features”, which are used to make predictions about specific local features in the “future” of each summary feature. This equates to ordered autoregression over the local features, and requires training separate estimators for each temporal offset at which one would like to predict the future. In contrast, the basic version of DIM uses a single summary feature that is a function of all local features, and this “global” feature predicts all local features simultaneously in a single step using a single estimator. Note that, when using occlusions during training (see Section 4.3 for details), DIM performs both “self” predictions and orderless autoregression.

3 Deep InfoMax

Figure 1: The base encoder model in the context of image data. An image (in this case) is encoded using a convnet until reaching a feature map of feature vectors corresponding to input patches. These vectors are summarized into a single feature vector, . Our goal is to train this network such that useful information about the input is easily extracted from the high-level features.
Figure 2: Deep InfoMax (DIM) with a global objective. Here, we pass both the high-level feature vector, , and the lower-level feature map (see Figure 2) through a discriminator to get the score. Fake samples are drawn by combining the same feature vector with a feature map from another image.

Here we outline the general setting of training an encoder to maximize mutual information between its input and output. Let and be the domain and range of a continuous and (almost everywhere) differentiable parametric function, with parameters (e.g., a neural network). These parameters define a family of encoders, over . Assume that we are given a set of training examples on an input space, :

, with empirical probability distribution

. We define to be the marginal distribution induced by pushing samples from through . I.e., is the distribution over encodings produced by sampling observations and then sampling . An example encoder for image data is given in Figure 2, which will be used in the following sections, but this approach can easily be adapted for temporal data. Similar to the infomax optimization principle (Linsker, 1988), we assert our encoder should be trained according to the following criteria:

  • Mutual information maximization: Find the set of parameters, , such that the mutual information, , is maximized. Depending on the end-goal, this maximization can be done over the complete input, , or some structured or “local” subset.

  • Statistical constraints: Depending on the end-goal for the representation, the marginal should match a prior distribution, . Roughly speaking, this can be used to encourage the output of the encoder to have desired characteristics (e.g., independence).

The formulation of these two objectives covered below we call Deep InfoMax (DIM).

Figure 3: Maximizing mutual information between local features and global features. First we encode the image to a feature map that reflects some structural aspect of the data, e.g. spatial locality, and we further summarize this feature map into a global feature vector (see Figure 2). We then concatenate this feature vector with the lower-level feature map at every location. A score is produced for each local-global pair through an additional function (see the Appendix A.2 for details).

3.1 Mutual information estimation and maximization

Our basic mutual information maximization framework is presented in Figure 2. The approach follows Mutual Information Neural Estimation (MINE, Belghazi et al., 2018)

, which estimates mutual information by training a classifier to distinguish between samples coming from the joint,

, and the product of marginals,

, of random variables

and . MINE uses a lower-bound to the MI based on the Donsker-Varadhan representation (DV, Donsker & Varadhan, 1983) of the KL-divergence,


where is a discriminator function modeled by a neural network with parameters . At a high level, we optimize by simultaneously estimating and maximizing ,


where the subscript denotes “global” for reasons that will be clear later. However, there are some important differences that distinguish our approach from MINE. First, because the encoder and mutual information estimator are optimizing the same objective and require similar computations, we share layers between these functions, so that and ,111Here we slightly abuse the notation and use for both parts of . where is a function that combines the encoder output with the lower layer. Second, as we are primarily interested in maximizing MI, and not concerned with its precise value, we can rely on non-KL divergences which may offer favourable trade-offs. For example, one could define a Jensen-Shannon MI estimator (following the formulation of Nowozin et al., 2016),


where is an input sample, is an input sampled from , and is the softplus function. A similar estimator appeared in Brakel & Bengio (2017) in the context of minimizing the total correlation, and it amounts to the familiar binary cross-entropy. This is well-understood in terms of neural network optimization and we find works better in practice (e.g., is more stable) than the DV-based objective (e.g., see App. A.3). Intuitively, the Jensen-Shannon-based estimator should behave similarly to the DV-based estimator in Eq. 2, since both act like classifiers whose objectives maximize the expected -ratio of the joint over the product of marginals. We show in App. A.1

the relationship between the JSD estimator and the formal definition of mutual information. Noise-Contrastive Estimation 

(NCE, Gutmann & Hyvärinen, 2010, 2012) was first used as a bound on MI in Oord et al. (and called “infoNCE”, 2018), and this loss can also be used with DIM by maximizing:


For DIM, a key difference between the DV, JSD, and infoNCE formulations is whether an expectation over appears inside or outside of a . In fact, the JSD-based objective mirrors the original NCE formulation in Gutmann & Hyvärinen (2010), which phrased unnormalized density estimation as binary classification between the data distribution and a noise distribution. DIM sets the noise distribution to the product of marginals over , and the data distribution to the true joint. The infoNCE formulation in Eq. 5 follows a softmax-based version of NCE (Jozefowicz et al., 2016), similar to ones used in the language modeling community (Mnih & Kavukcuoglu, 2013; Mikolov et al., 2013), and which has strong connections to the binary cross-entropy in the context of noise-contrastive learning (Ma & Collins, 2018). In practice, implementations of these estimators appear quite similar and can reuse most of the same code. We investigate JSD and infoNCE in our experiments, and find that using infoNCE often outperforms JSD on downstream tasks, though this effect diminishes with more challenging data. However, as we show in the App. (A.3), infoNCE and DV require a large number of negative samples (samples from ) to be competitive. We generate negative samples using all combinations of global and local features at all locations of the relevant feature map, across all images in a batch. For a batch of size , that gives negative samples per positive example, which quickly becomes cumbersome with increasing batch size. We found that DIM with the JSD loss is insensitive to the number of negative samples, and in fact outperforms infoNCE as the number of negative samples becomes smaller.

3.2 Local mutual information maximization

The objective in Eq. 3

can be used to maximize MI between input and output, but ultimately this may be undesirable depending on the task. For example, trivial pixel-level noise is useless for image classification, so a representation may not benefit from encoding this information (e.g., in zero-shot learning, transfer learning, etc.). In order to obtain a representation more suitable for classification, we can instead maximize the average MI between the high-level representation and local patches of the image. Because the same representation is encouraged to have high MI with all the patches, this favours encoding aspects of the data that are shared across patches. Suppose the feature vector is of limited capacity (number of units and range) and assume the encoder does not support infinite output configurations. For maximizing the MI between the whole input and the representation, the encoder can pick and choose what type of information in the input is passed through the encoder, such as noise specific to local patches or pixels. However, if the encoder passes information specific to only some parts of the input, this

does not increase the MI with any of the other patches that do not contain said noise. This encourages the encoder to prefer information that is shared across the input, and this hypothesis is supported in our experiments below. Our local DIM framework is presented in Figure 3. First we encode the input to a feature map, that reflects useful structure in the data (e.g., spatial locality), indexed in this case by . Next, we summarize this local feature map into a global feature, . We then define our MI estimator on global/local pairs, maximizing the average estimated MI:


We found success optimizing this “local” objective with multiple easy-to-implement architectures, and further implementation details are provided in the App. (A.2).

3.3 Matching representations to a prior distribution

Absolute magnitude of information is only one desirable property of a representation; depending on the application, good representations can be compact (Gretton et al., 2012), independent (Hyvärinen & Oja, 2000; Hinton, 2002; Dinh et al., 2014; Brakel & Bengio, 2017), disentangled (Schmidhuber, 1992; Rifai et al., 2012; Bengio et al., 2013; Chen et al., 2018; Gonzalez-Garcia et al., 2018), or independently controllable (Thomas et al., 2017). DIM imposes statistical constraints onto learned representations by implicitly training the encoder so that the push-forward distribution, , matches a prior, . This is done (see Figure 7 in the App. A.2) by training a discriminator, , to estimate the divergence, , then training the encoder to minimize this estimate:


This approach is similar to what is done in adversarial autoencoders (AAE, Makhzani et al., 2015), but without a generator. It is also similar to noise as targets (Bojanowski & Joulin, 2017), but trains the encoder to match the noise implicitly rather than using a priori noise samples as targets. All three objectives – global and local MI maximization and prior matching – can be used together, and doing so we arrive at our complete objective for Deep InfoMax (DIM):


where and are the discriminator parameters for the global and local objectives, respectively, and , , and

are hyperparameters. We will show below that choices in these hyperparameters affect the learned representations in meaningful ways. As an interesting aside, we also show in the App. (

A.8) that this prior matching can be used alone to train a generator of image data.

4 Experiments

We test Deep InfoMax (DIM) on four imaging datasets to evaluate its representational properties:

  • CIFAR10 and CIFAR100 (Krizhevsky & Hinton, 2009): two small-scale labeled datasets composed of images with and classes respectively.

  • Tiny ImageNet: A reduced version of ImageNet 

    (Krizhevsky & Hinton, 2009) images scaled down to with a total of classes.

  • STL-10 (Coates et al., 2011): a dataset derived from ImageNet composed of images with a mixture of unlabeled training examples and labeled examples per class. We use data augmentation with this dataset, taking random crops and flipping horizontally during unsupervised learning.

  • CelebA (Yang et al., 2015, Appendix A.5 only): An image dataset composed of faces labeled with binary attributes. This dataset evaluates DIM’s ability to capture information that is more fine-grained than the class label and coarser than individual pixels.

For our experiments, we compare DIM against various unsupervised methods: Variational AutoEncoders (VAE, Kingma & Welling, 2013), -VAE (Higgins et al., 2016; Alemi et al., 2016), Adversarial AutoEncoders (AAE, Makhzani et al., 2015), BiGAN (a.k.a. adversarially learned inference with a deterministic encoder: Donahue et al., 2016; Dumoulin et al., 2016), Noise As Targets (NAT, Bojanowski & Joulin, 2017), and Contrastive Predictive Coding (CPC, Oord et al., 2018). Note that we take CPC to mean ordered autoregression using summary features to predict “future” local features, independent of the constrastive loss used to evaluate the predictions (JSD, infoNCE, or DV). See the App. (A.2) for details of the neural net architectures used in the experiments.

4.1 How do we evaluate the quality of a representation?

Evaluation of representations is case-driven and relies on various proxies. Linear separability is commonly used as a proxy for disentanglement and mutual information (MI) between representations and class labels. Unfortunately, this will not show whether the representation has high MI with the class labels when the representation is not disentangled. Other works (Bojanowski & Joulin, 2017) have looked at transfer learning classification tasks by freezing the weights of the encoder and training a small fully-connected neural network classifier using the representation as input. Others still have more directly measured the MI between the labels and the representation (Rifai et al., 2012; Chen et al., 2018), which can also reveal the representation’s degree of entanglement. Class labels have limited use in evaluating representations, as we are often interested in information encoded in the representation that is unknown to us. However, we can use mutual information neural estimation (MINE, Belghazi et al., 2018) to more directly measure the MI between the input and output of the encoder. Next, we can directly measure the independence of the representation using a discriminator. Given a batch of representations, we generate a factor-wise independent distribution with the same per-factor marginals by randomly shuffling each factor along the batch dimension. A similar trick has been used for learning maximally independent representations for sequential data (Brakel & Bengio, 2017). We can train a discriminator to estimate the KL-divergence between the original representations (joint distribution of the factors) and the shuffled representations (product of the marginals, see Figure 12). The higher the KL divergence, the more dependent the factors. We call this evaluation method Neural Dependency Measure (NDM) and show that it is sensible and empirically consistent in the App. (A.6). To summarize, we use the following metrics for evaluating representations. For each of these, the encoder is held fixed unless noted otherwise:

  • Linear classification

    using a support vector machine (SVM). This is simultaneously a proxy for MI of the representation with linear separability.

  • Non-linear classification using a single hidden layer neural network ( units) with dropout. This is a proxy on MI of the representation with the labels separate from linear separability as measured with the SVM above.

  • Semi-supervised learning (STL-10 here), that is, fine-tuning the complete encoder by adding a small neural network on top of the last convolutional layer (matching architectures with a standard fully-supervised classifier).

  • MS-SSIM (Wang et al., 2003), using a decoder trained on the reconstruction loss. This is a proxy for the total MI between the input and the representation and can indicate the amount of encoded pixel-level information.

  • Mutual information neural estimate (MINE), , between the input, , and the output representation, , by training a discriminator with parameters to maximize the DV estimator of the KL-divergence.

  • Neural dependency measure (NDM) using a second discriminator that measures the KL between and a batch-wise shuffled version of .

For the neural network classification evaluation above, we performed experiments on all datasets except CelebA, while for other measures we only looked at CIFAR10. For all classification tasks, we built separate classifiers on the high-level vector representation (

), the output of the previous fully-connected layer (fc) and the last convolutional layer (conv). Model selection for the classifiers was done by averaging the last 100 epochs of optimization, and the dropout rate and decaying learning rate schedule was set uniformly to alleviate over-fitting on the test set across all models.

4.2 Representation learning comparison across models

In the following experiments, DIM(G) refers to DIM with a global-only objective () and DIM(L) refers to DIM with a local-only objective (), the latter chosen from the results of an ablation study presented in the App. (A.5

). For the prior, we chose a compact uniform distribution on

, which worked better in practice than other priors, such as Gaussian, unit ball, or unit sphere.

Model CIFAR10 CIFAR100
conv fc conv fc
Fully supervised 75.39 42.27
DIM(L) (infoNCE)
Table 1: Classification accuracy (top 1) results on CIFAR10 and CIFAR100. DIM(L) (i.e., with the local-only objective) outperforms all other unsupervised methods presented by a wide margin. In addition, DIM(L) approaches or even surpasses a fully-supervised classifier with similar architecture. DIM with the global-only objective is competitive with some models across tasks, but falls short when compared to generative models and DIM(L) on CIFAR100. Fully-supervised classification results are provided for comparison.
Tiny ImageNet STL-10 (random crop pretraining)
conv fc conv fc SS
Fully supervised 36.60 68.7
DIM(L) (infoNCE)
Table 2: Classification accuracy (top 1) results on Tiny ImageNet and STL-10. For Tiny ImageNet, DIM with the local objective outperforms all other models presented by a large margin, and approaches accuracy of a fully-supervised classifier similar to the Alexnet architecture used here.
Model CIFAR10 (no data augmentation) STL10 (random crop pretraining)
DIM(L) single global
DIM(L) multiple globals
Table 3: Comparisons of DIM with Contrastive Predictive Coding (CPC, Oord et al., 2018)

. These experiments used a strided-crop architecture similar to the one used in

Oord et al. (2018). For CIFAR10 we used a ResNet-50 encoder, and for STL-10 we used the same architecture as for Table 2. We also tested a version of DIM that computes the global representation from a 3x3 block of local features randomly selected from the full 7x7 set of local features. This is a particular instance of the occlusions described in Section 4.3. DIM(L) is competitive with CPC in these settings.

Classification comparisons

Our classification results can be found in Tables 1, 2, and 3. In general, DIM with the local objective, DIM(L), outperformed all models presented here by a significant margin on all datasets, regardless of which layer the representation was drawn from, with exception to CPC. For the specific settings presented (architectures, no data augmentation for datasets except for STL-10), DIM(L) performs as well as or outperforms a fully-supervised classifier without fine-tuning, which indicates that the representations are nearly as good as or better than the raw pixels given the model constraints in this setting. Note, however, that a fully supervised classifier can perform much better on all of these benchmarks, especially when specialized architectures and carefully-chosen data augmentations are used. Competitive or better results on CIFAR10 also exist (albeit in different settings, e.g., Coates et al., 2011; Dosovitskiy et al., 2016), but to our knowledge our STL-10 results are state-of-the-art for unsupervised learning. The results in this setting support the hypothesis that our local DIM objective is suitable for extracting class information. Our results show that infoNCE tends to perform best, but differences between infoNCE and JSD diminish with larger datasets. DV can compete with JSD with smaller datasets, but DV performs much worse with larger datasets. For CPC, we were only able to achieve marginally better performance than BiGAN with the settings above. However, when we adopted the strided crop architecture found in Oord et al. (2018), both CPC and DIM performance improved considerably. We chose a crop size of of the image size in width and depth with a stride of the image size (e.g., crops with strides for CIFAR10, crops with strides for STL-10), so that there were a total of local features. For both DIM(L) and CPC, we used infoNCE as well as the same “encode-and-dot-product” architecture (tantamount to a deep bilinear model), rather than the shallow bilinear model used in Oord et al. (2018). For CPC, we used a total of such networks, where each network for CPC is used for a separate prediction task of local feature maps in the next rows of a summary predictor feature within each column.222Note that this is slightly different from the setup used in Oord et al. (2018), which used a total of such predictors, though we found other configurations performed similarly. For simplicity, we omitted the prior term, , from DIM. Without data augmentation on CIFAR10, CPC performs worse than DIM(L) with a ResNet-50 (He et al., 2016) type architecture. For experiments we ran on STL-10 with data augmentation (using the same encoder architecture as Table 2), CPC and DIM were competitive, with CPC performing slightly better. CPC makes predictions based on multiple summary features, each of which contains different amounts of information about the full input. We can add similar behavior to DIM by computing less global features which condition on blocks of local features sampled at random from the full sets of local features. We then maximize mutual information between these less global features and the full sets of local features. We share a single MI estimator across all possible blocks of local features when using this version of DIM. This represents a particular instance of the occlusion technique described in Section 4.3. The resulting model gave a significant performance boost to DIM for STL-10. Surprisingly, this same architecture performed worse than using the fully global representation with CIFAR10. Overall DIM only slightly outperforms CPC in this setting, which suggests that the strictly ordered autoregression of CPC may be unnecessary for some tasks.

Model Proxies Neural Estimators
SVM (conv) SVM (fc) SVM () MS-SSIM NDM
VAE 0.72 93.02 1.62
AAE 0.67 87.48 0.03
BiGAN 0.46 37.69 24.49
NAT 0.29 6.04 0.02
Table 4: Extended comparisons on CIFAR10. Linear classification results using SVM are over five runs. MS-SSIM is estimated by training a separate decoder using the fixed representation as input and minimizing the loss with the original input. Mutual information estimates were done using MINE and the neural dependence measure (NDM) were trained using a discriminator between unshuffled and shuffled representations.

Extended comparisons

Tables 4

shows results on linear separability, reconstruction (MS-SSIM), mutual information, and dependence (NDM) with the CIFAR10 dataset. We did not compare to CPC due to the divergence of architectures. For linear classifier results (SVC), we trained five support vector machines with a simple hinge loss for each model, averaging the test accuracy. For MINE, we used a decaying learning rate schedule, which helped reduce variance in estimates and provided faster convergence. MS-SSIM correlated well with the MI estimate provided by MINE, indicating that these models encoded pixel-wise information well. Overall, all models showed much lower dependence than BiGAN, indicating the marginal of the encoder output is not matching to the generator’s spherical Gaussian input prior, though the mixed local/global version of DIM is close. For MI, reconstruction-based models like VAE and AAE have high scores, and we found that combining local and global DIM objectives had very high scores (

, is presented here as DIM(L+G)). For more in-depth analyses, please see the ablation studies and the nearest-neighbor analysis in the App. (A.4, A.5).

4.3 Adding coordinate information and occlusions

Model CIFAR10 CIFAR100
fc conv fc conv
DIM (coord)
DIM (occlude)
DIM (coord + occlude)
Table 5: Augmenting infoNCE DIM with additional structural information – adding coordinate prediction tasks or occluding input patches when computing the global feature vector in DIM can improve the classification accuracy, particularly with the highly-compressed global features.

Maximizing MI between global and local features is not the only way to leverage image structure. We consider augmenting DIM by adding input occlusion when computing global features and by adding auxiliary tasks which maximize MI between local features and absolute or relative spatial coordinates given a global feature. These additions improve classification results (see Table 5). For occlusion, we randomly occlude part of the input when computing the global features, but compute local features using the full input. Maximizing MI between occluded global features and unoccluded local features aggressively encourages the global features to encode information which is shared across the entire image. For coordinate prediction, we maximize the model’s ability to predict the coordinates of a local feature after computing the global features . To accomplish this, we maximize (i.e., minimize the cross-entropy). We can extend the task to maximize conditional MI given global features between pairs of local features and their relative coordinates . This objective can be written as . We use both these objectives in our results. Additional implementation details can be found in the App. (A.7). Roughly speaking, our input occlusions and coordinate prediction tasks can be interpreted as generalizations of inpainting (Pathak et al., 2016) and context prediction (Doersch et al., 2015)

tasks which have previously been proposed for self-supervised feature learning. Augmenting DIM with these tasks helps move our method further towards learning representations which encode images (or other types of inputs) not just in terms of compressing their low-level (e.g. pixel) content, but in terms of distributions over relations among higher-level features extracted from their lower-level content.

5 Conclusion

In this work, we introduced Deep InfoMax (DIM), a new method for learning unsupervised representations by maximizing mutual information, allowing for representations that contain locally-consistent information across structural “locations” (e.g., patches in an image). This provides a straightforward and flexible way to learn representations that perform well on a variety of tasks. We believe that this is an important direction in learning higher-level representations.

6 Acknowledgements

RDH received partial support from IVADO, NIH grants 2R01EB005846, P20GM103472, P30GM122734, and R01EB020407, and NSF grant 1539067. AF received partial support from NIH grants R01EB020407, R01EB006841, P20GM103472, P30GM122734. We would also like to thank Geoff Gordon (MSR), Ishmael Belghazi (MILA), Marc Bellemare (Google Brain), Mikołaj Bińkowski (Imperial College London), Simon Sebbagh, and Aaron Courville (MILA) for their useful input at various points through the course of this research.


Appendix A Appendix

a.1 On the Jensen-Shannon divergence and mutual information

Here we show the relationship between the Jensen-Shannon divergence (JSD) between the joint and the product of marginals and the pointwise mutual information (PMI). Let and be two marginal densities, and define and as the conditional and joint distribution, respectively. Construct a probability mixture density, . It follows that , , and . Note that:


Discarding some constants:


The quantity inside the expectation of Eqn. 10 is a concave, monotonically increasing function of the ratio , which is exactly . Note this relationship does not hold for the JSD of arbitrary distributions, as the the joint and product of marginals are intimately coupled. We can verify our theoretical observation by plotting the JSD and KL divergences between the joint and the product of marginals, the latter of which is the formal definition of mutual information (MI). As computing the continuous MI is difficult, we assume a discrete input with uniform probability, (e.g., these could be one-hot variables indicating one of i.i.d. random samples), and a randomly initialized joint distribution, , such that . For this joint distribution, we sample from a uniform distribution, then apply dropout to encourage sparsity to simulate the situation when there is no bijective function between and , then apply a softmax. As the distributions are discrete, we can compute the KL and JSD between and . We ran these experiments with matched input / output dimensions of , , , , and , randomly drawing joint distributions, and computed the KL and JSD divergences directly. Our results (Figure 4) indicate that the KL (traditional definition of mutual information) and the JSD have an approximately monotonic relationship. Overall, the distributions with the highest mutual information also have the highest JSD.

Figure 4: Scatter plots of versus

with discrete inputs and a given randomized and sparse joint distribution, . indicates a square joint distribution with rows and columns. Our experiments indicate a strong monotonic relationship between and Overall, the distributions with the highest have the highest .

a.2 Experiment and architecture details

Here we provide architectural details for our experiments. Example code for running Deep Infomax (DIM) can be found at https://github.com/rdevon/DIM.


We used an encoder similar to a deep convolutional GAN (DCGAN, Radford et al., 2015) discriminator for CIFAR10 and CIFAR100, and for all other datasets we used an Alexnet (Krizhevsky et al., 2012) architecture similar to that found in Donahue et al. (2016)

. ReLU activations and batch norm 

(Ioffe & Szegedy, 2015) were used on every hidden layer. For the DCGAN architecture, a single hidden layer with units was used after the final convolutional layer, and for the Alexnet architecture it was two hidden layers with . For all experiments, the output of all encoders was a dimensional vector.

Figure 5: Concat-and-convolve architecture. The global feature vector is concatenated with the lower-level feature map at every location. A convolutional discriminator is then used to score the “real” feature map / feature vector pair, while the “fake” pair is produced by pairing the feature vector with a feature map from another image.
Figure 6: Encode-and-dot-product architecture. The global feature vector is encoded using a fully-connected network, and the lower-level feature map is encoded using 1x1 convolutions, but with the same number of output features. We then take the dot-product between the feature at each location of the feature map encoding and the encoded global vector for scores.
Figure 7: Matching the output of the encoder to a prior. “Real” samples are drawn from a prior while “fake” samples from the encoder output are sent to a discriminator. The discriminator is trained to distinguish between (classify) these sets of samples. The encoder is trained to “fool” the discriminator.

Mutual information discriminators

For the global mutual information objective, we first encode the input into a feature map, , which in this case is the output of the last convolutional layer. We then encode this representation further using linear layers as detailed above to get . is then flattened, then concatenated with . We then pass this to a fully-connected network with two -unit hidden layers (see Table 6).

Operation Size Activation
Input Linear layer ReLU
Linear layer ReLU
Linear layer
Table 6: Global DIM network architecture

We tested two different architectures for the local objective. The first (Figure 7) concatenated the global feature vector with the feature map at every location, i.e., . A convolutional discriminator is then used to score the (feature map, feature vector) pair,


Fake samples are generated by combining global feature vectors with local feature maps coming from different images, :


This architecture is featured in the results of Table 4, as well as the ablation and nearest-neighbor studies below. We used a convnet with two -unit hidden layers as discriminator (Table 7).

Operation Size Activation
Input conv ReLU
conv ReLU
Table 7: Local DIM concat-and-convolve network architecture

The other architecture we tested (Figure 7) is based on non-linearly embedding the global and local features in a (much) higher-dimensional space, and then computing pair-wise scores using dot products between their high-dimensional embeddings. This enables efficient evaluation of a large number of pair-wise scores, thus allowing us to use large numbers of positive/negative samples. Given a sufficiently high-dimensional embedding space, this approach can represent (almost) arbitrary classes of pair-wise functions that are non-linear in the original, lower-dimensional features. For more information, refer to Reproducing Kernel Hilbert Spaces. We pass the global feature through a fully connected neural network to get the encoded global feature, . In our experiments, we used a single hidden layer network with a linear shortcut (See Table 8).

Operation Size Activation Output
Input Linear ReLU
Linear Output 1
Input Linear ReLU Output 2
Output 1 Output 2
Table 8: Local DIM encoder-and-dot architecture for global feature

We embed each local feature in the local feature map using an architecture which matches the one for global feature embedding. We apply it via convolutions. Details are in Table 9.

Operation Size Activation Output
Input ReLU
conv Output 1
Input conv ReLU Output 2
Output 1 Output 2
Block Layer Norm
Table 9: Local DIM encoder-and-dot architecture for local features

Finally, the outputs of these two networks are combined by matrix multiplication, summing over the feature dimension ( in the example above). As this is computed over a batch, this allows us to efficiently compute both positive and negative examples simultaneously. This architecture is featured in our main classification results in Tables 1, 2, and 5. For the local objective, the feature map, , can be taken from any level of the encoder,

. For the global objective, this is the last convolutional layer, and this objective was insensitive to which layer we used. For the local objectives, we found that using the next-to-last layer worked best for CIFAR10 and CIFAR100, while for the other larger datasets it was the previous layer. This sensitivity is likely due to the relative size of the of the receptive fields, and further analysis is necessary to better understand this effect. Note that all feature maps used for DIM included the final batch normalization and ReLU activation.

Prior matching

Figure 7 shows a high-level overview of the prior matching architecture. The discriminator used to match the prior in DIM was a fully-connected network with two hidden layers of and units (Table 10).

Operation Size Activation
Input Linear layer ReLU
Linear layer ReLU
Linear layer
Table 10: Prior matching network architecture

Generative models

For generative models, we used a similar setup as that found in Donahue et al. (2016) for the generators / decoders, where we used a generator from DCGAN in all experiments. All models were trained using Adam with a learning rate of for epochs for CIFAR10 and CIFAR100 and for epochs for all other datasets.

Contrastive Predictive Coding

For Contrastive Predictive Coding (CPC, Oord et al., 2018), we used a simple a GRU-based PixelRNN (Oord et al., 2016) with the same number of hidden units as the feature map depth. All experiments with CPC had the global state dimension matched with the size of these recurrent hidden units.

Query DIM(G) DIM(L)
Figure 8: Nearest-neighbor using the distance on the encoded Tiny ImageNet images, with DIM(G) and DIM(L). The images on the far left are randomly-selected reference images (query) from the training set and the four images their nearest-neighbor from the test set as measured in the representation, sorted by proximity. The nearest neighbors from DIM(L) are much more interpretable than those with the purely global objective.

a.3 Sampling strategies

Figure 9: Classification accuracies (left: global representation, , right: convolutional layer) for CIFAR10, first training DIM, then training a classifier for epochs, keeping the encoder fixed. Accuracies shown averaged over the last epochs, averaged over runs, for the infoNCE, JSD, and DV DIM losses. x-axis is log base- of the number of negative samples (0 mean one negative sample per positive sample). JSD is insensitive to the number of negative samples, while infoNCE shows a decline as the number of negative samples decreases. DV also declines, but becomes unstable as the number of negative samples becomes too low.

We found both infoNCE and the DV-based estimators were sensitive to negative sampling strategies, while the JSD-based estimator was insensitive. JSD worked better ( accuracy improvement) by excluding positive samples from the product of marginals, so we exclude them in our implementation. It is quite likely that this is because our batchwise sampling strategy overestimate the frequency of positive examples as measured across the complete dataset. infoNCE was highly sensitive to the number of negative samples for estimating the log-expectation term (see Figure 9). With high sample size, infoNCE outperformed JSD on many tasks, but performance drops quickly as we reduce the number of images used for this estimation. This may become more problematic for larger datasets and networks where available memory is an issue. DV was outperformed by JSD even with the maximum number of negative samples used in these experiments, and even worse was highly unstable as the number of negative samples dropped.

a.4 Nearest-neighbor analysis

In order to better understand the metric structure of DIM’s representations, we did a nearest-neighbor analysis, randomly choosing a sample from each class in the test set, ordering the test set in terms of distance in the representation space (to reflect the uniform prior), then selecting the four with the lowest distance. Our results in Figure 8 show that DIM with a local-only objective, DIM(L), learns a representation with a much more interpretable structure across the image. However, our result potentially highlights an issue with using only consistent information across patches, as many of the nearest neighbors share patterns (colors, shapes, texture) but not class.

a.5 Ablation studies

To better understand the effects of hyperparameters , , and on the representational characteristics of the encoder, we performed several ablation studies. These illuminate the relative importance of global verses local mutual information objectives as well as the role of the prior.

Figure 10:

Results from the ablation studies with DIM on CIFAR10. Values calculated are points on the grid, and the heatmaps were derived by bilinear interpolation. Heatmaps were thresholded at the minimum value (or maximum for NDM) for visual clarity. Highest (or lowest) value is marked on the grid. NDM here was measured without the sigmoid function.

Figure 11: Ablation study on CelebA over the global and local parameters, and . The classification task is multinomial, so provided is the average, minimum, and maximum class accuracies across attibutes. While the local objective is crucial, the global objective plays a stronger role here than with other datasets.

Local versus global mutual information maximization

The results of our ablation study for DIM on CIFAR10 are presented in Figure 10. In general, good classification performance is highly dependent on the local term, , while good reconstruction is highly dependent on the global term, . However, a small amount of helps in classification accuracy and a small about of improves reconstruction. For mutual information, we found that having a combination of and yielded higher MINE estimates. Finally, for CelebA (Figure 11), where the classification task is more fine-grained (is composed of potentially locally-specified labels, such as “lipstick” or “smiling”), the global objective plays a stronger role than with classification on other datasets (e.g., CIFAR10).

The effect of the prior

We found including the prior term, , was absolutely necessary for ensuring low dependence between components of the high-level representation, , as measured by NDM. In addition, a small amount of the prior term helps improve classification results when used with the local term, . This may be because the additional constraints imposed on the representation help to encourage the local term to focus on consistent, rather than trivial, information.

a.6 Empirical consistency of Neural Dependency Measure (NDM)

Figure 12: A schematic of learning the Neural Dependency Measure. For a given batch of inputs, we encode this into a set of representations. We then shuffle each feature (dimension of the feature vector) across the batch axis. The original version is sent to the discriminator and given the label “real”, while the shuffled version is labeled as “fake”. The easier this task, the more dependent the components of the representation.
Figure 13: Neural Dependency Measures (NDMs) for various -VAE (Alemi et al., 2016; Higgins et al., 2016) models (). Error bars are provided over five runs of each VAE and estimating NDM with different networks. We find that there is a strong trend as we increase the value of and that the estimates are relatively consistent and informative w.r.t. independence as expected.

Here we evaluate the Neural Dependency Measure (NDM) over a range of -VAE (Alemi et al., 2016; Higgins et al., 2016) models. -VAE encourages disentangled representations by increasing the role of the KL-divergence term in the ELBO objective. We hypthesized that NDM would consistenly measure lower dependence (lower NDM) as the values increase, and our results in Figure 13 confirm this. As we increase , there is a strong downward trend in the NDM, though and give similar numbers. In addition, the variance over estimates and models is relatively low, meaning the estimator is empirically consistent in this setting.

a.7 Additional details on occlusion and coordinate prediction experiments

Here we present experimental details on the occlusion and coordinate prediction tasks.

Training without occlusion Training with occlusion
Figure 14: Visualizing model behaviour when computing global features with and without occlusion, for NCE-based DIM. The images in each block of images come in pairs. The left image in each pair shows the model input when computing the global feature vector. The right image shows the NCE loss suffered by the score between that global feature vector and the local feature vector at each location in the local feature map computed from the unoccluded image. This loss is equal to minus the value in Equation 5. With occluded inputs, this loss tends to be highest for local features with receptive fields that overlap the occluded region.


For the occlusion experiments, the sampling distribution for patches to occlude was ad-hoc. Roughly, we randomly occlude the input image under the constraint that at least one block of pixels remains visible and at least one block of pixels is fully occluded. We chose based on the receptive fields of local features in our encoder, since it guarantees that occlusion leaves at least one local feature fully observed and at least one local feature fully unobserved. Figure 14 shows the distribution of occlusions used in our tests.

Absolute coordinate prediction

For absolute coordinate prediction, the global features and local features are sampled by 1) feeding an image from the data distribution through the feature encoder, and 2) sampling a random spatial location from which to take the local features . Given and , we treat the coordinates and

as independent categorical variables and measure the required log probability using a sum of categorical cross-entropies. In practice, we implement the prediction function

as an MLP with two hidden layers, each with units, ReLU activations, and batchnorm. We marginalize this objective over all local features associated with a given global feature when computing gradients.

Relative coordinate prediction

For relative coordinate prediction, the global features and local features are sampled by 1) feeding an image from the data distribution through the feature encoder, 2) sampling a random spatial location from which to take source local features , and 3) sampling another random location from which to take target local features . In practice, our predictive model for this task uses the same architecture as for the task described previously. For each global feature we select one source feature and marginalize over all possible target features when computing gradients.

a) GAN b) Proxy c) LSGAN d) WGAN e) Our method
Figure 15: Histograms depicting the discriminator’s unnormalized output distribution for the standard GAN, GAN with loss, Least Squares GAN, Wasserstein GAN and our proposed method when trained with a 50:1 training ratio.

a.8 Training a generator by matching to a prior implicitly

We show here and in our experiments below that we can use prior objective in DIM (Equation 7) to train a high-quality generator of images by training to map to a one-dimensional mixture of two Gaussians implicitly. One component of this mixture will be a target for the push-forward distribution of through the encoder while the other will be a target for the push-forward distribution of the generator, , through the same encoder. Let be a generator function, where the input is drawn from a simple prior, (such as a spherical Gaussian). Let be the generated distribution and be the empirical distribution of the training set. Like in GANs, we will pass the samples of the generator or the training data through another function, , in order to get gradients to find the parameters, . However, unlike GANs, we will not play the minimax game between the generator and this function. Rather will be trained to generate a mixture of Gaussians conditioned on whether the input sample came from or :


where and

are normal distributions with unit variances and means

and respectively. In order to find the parameters , we introduce two discriminators, , and use the lower bounds following defined by the JSD f-GAN:


The generator is trained to move the first-order moment of

to :


Some intuition might help understand why this might work. As discussed in Arjovsky & Bottou (2017), if and have support on a low-dimensional manifolds on , unless they are perfectly aligned, there exists a discriminator that will be able to perfectly distinguish between samples coming from and , which means that and must also be disjoint. However, to train the generator, and need to share support on in order to ensure stable and non-zero gradients for the generator. Our own experiments by overtraining the discriminator (Figure 15) confirm that lack of overlap between the two modes of the discriminator is symptomatic of poor training. Suppose we start with the assumption that the encoder targets, and , should overlap. Unless and are perfectly aligned (which according to Arjovsky & Bottou (2017) is almost guaranteed not to happen with natural images), then the discriminator can always accomplish this task by discarding information about or . This means that, by choosing the overlap, we fix the strength of the encoder.

Model Inception score FID
Real data
IE (ours)
Table 11: Generation scores on the Tiny Imagenet dataset for non-saturating GAN with contractive penalty (NS-GAN-CP), Wasserstein GAN with gradient penalty (WGAN-GP) and our method. Our encoder was penalized using CP.

a.9 Generation experiments and results

For the generator and encoder, we use a ResNet architecture (He et al., 2016) identical to the one found in  Gulrajani et al. (2017). We used the contractive penalty (found in Mescheder et al. (2018)

but first introduced in contractive autoencoders 

(Rifai et al., 2011)

) on the encoder, gradient clipping on the discriminators, and no regularization on the generator. Batch norm 

(Ioffe & Szegedy, 2015) was used on the generator, but not on the discriminator. We trained on dimensional LSUN (Yu et al., 2015), CelebA (Liu et al., 2015), and Tiny Imagenet dataset.

a.10 Images Generation

a) NS-GAN-CP b) WGAN-GP c) Mapping to two Gaussians
Figure 16: Samples of generated results used to get scores in Table 11. For every methods, the sample are generated after 100 epochs and the models are the same. Qualitative results from these three methods show no qualitative difference.

Here, we train a generator mapping to two Gaussian implicitly as described in Section A.8. Our results (Figure 16) show highly realistic images qualitatively competitive to other methods (Gulrajani et al., 2017; Hjelm et al., 2018). In order to quantitatively compare our method to GANs, we trained a non-saturating GAN with contractive penalty (NS-GAN-CP) and WGAN-GP (Gulrajani et al., 2017) with identical architectures and training procedures. Our results (Table 11) show that, while our mehtod did not surpass NS-GAN-CP or WGAN-GP in our experiments, they came reasonably close.