Title: REPRESENTING INFERENTIAL UNCERTAINTY IN DEEP NEURAL NETWORKS THROUGH SAMPLING

Abstract: As deep neural networks (DNNs) are applied to increasingly challenging problems, they will need to be able to represent their own uncertainty. Modelling uncertainty is one of the key features of Bayesian methods. Bayesian DNNs that use dropout-based variational distributions and scale to complex tasks have recently been proposed. We evaluate Bayesian DNNs trained with Bernoulli or Gaussian multiplicative masking of either the units (dropout) or the weights (dropconnect). We compare these Bayesian DNNs ability to represent their uncertainty about their outputs through sampling during inference. We tested the calibration of these Bayesian fully connected and convolutional DNNs on two visual inference tasks (MNIST and CIFAR-10). By adding different levels of Gaussian noise to the test images in z-score space, we assessed how these DNNs represented their uncertainty about regions of input space not covered by the training set. These Bayesian DNNs represented their own uncertainty more accurately than traditional DNNs with a softmax output. We find that sampling of weights, whether Gaussian or Bernoulli, led to more accurate representation of uncertainty compared to sampling of units. However, sampling units using either Gaussian or Bernoulli dropout led to increased convolutional neural network (CNN) classification accuracy. Based on these findings we use both Bernoulli dropout and Gaussian dropconnect concurrently, which approximates the use of a spike-andslab variational distribution. We find that networks with spike-and-slab sampling combine the advantages of the other methods: they classify with high accuracy and robustly represent the uncertainty of their classifications for all tested architectures.

1. INTRODUCTION:

Deep neural networks (DNNs), particularly convolutional neural networks (CNN), have recently been used to solve complex perceptual and decision tasks (Krizhevsky et al., 2012; Mnih et al., 2015; Silver et al., 2016) . However, these networks fail to model the uncertainty of their predictions or actions. Although many networks deterministically map an input to a probabilistic prediction, they do not model the uncertainty of that mapping. In contrast, Bayesian neural networks (NNs) attempt to learn a distribution over their parameters thereby offering uncertainty estimates for their outputs (MacKay, 1992; Neal, 2012) . However, these methods do not scale well due to the difficulty in computing the posterior of a network's parameters.

One type of method for sampling from the posteriors of these networks is Hamiltonian Monte Carlo (HMC) (Neal, 2012) . These techniques use the gradient information calculated using backpropagation to perform Markov chain Monte Carlo (MCMC) sampling by randomly walking through parameter space. proposed stochastic gadient Langevien dynamcis (SGLD) Approximate methods, in particular variational inference, have been used to make Bayesian NNs more tractable (Hinton & Van Camp, 1993; Barber & Bishop, 1998; Graves, 2011; Blundell et al., 2015) . Due in large part to the fact that these methods substantially increase the number of parameters in a network, they have not been applied to large DNNs, such as CNNs. Gal & Ghahramani (2016) and Kingma et al. (2015) bypassed this issue by developing Bayesian CNNs using dropout (Srivastava et al., 2014) . Dropout is a widely used regularization technique where units are dropped out of a network with a probability p during training and the output of all unit are multiplied by p during inference. A similar technique is dropconnect (Wan et al., 2013) , which drops network connections instead of units. Gal & Ghahramani (2015) detailed how dropping units was equivalent to sampling weights from a Bernoulli-based variational distribution and that in order to make a DNN with dropout Bayesian, sampling should be used during both training and inference. Monte-Carlo (MC) sampling at inference allows a DNN to efficiently model a distribution over its outputs. One limitation of the Bayesian dropout method is that it does not model the uncertatiniy of each network parameter. The uncertainty of a DNN can then be calculated using this probability distribution. In addition to Bernoulli and Gaussian distributions, there has also been work done using spike-anslab distributions (Louizos, 2015) , a combination of the two, which has been shown to increase the quality of linear regression (Ishwaran & Rao, 2005) . Interestingly, dropout and dropconnect can be seen as approximations to spike-and-slab distributions for units and weights, respectively (Louizos, 2015; Gal, 2016; Li et al., 2016) . Dropout-and dropconnect-based variational DNNs are dependent on the dropout probability, which is often used as a hyperparameter. However, work has been done on automatically learning the dropout probability during training for dropconnect (Louizos, 2015) using spike-and-slab distributions and Gaussian dropout (Kingma et al., 2015) .

In this paper, we investigate how using MC sampling to model uncertainty affects a network's probabilistic predictions. Specifically, we test if using MC sampling improves the calibration of the probabilistic predictions made by Bayesian DNNs with softmax output layers. We used variational distributions based on dropout and dropconnect with either Bernoulli or Gaussian sampling during both training and inference. Additonally, we propose a formulation of a spike-and-slab variational distribution based on Bernoulli dropout and Gaussian dropconnect. We find that the spike-and-slab networks robustly represented their uncertainty like Bayesian dropconnect networks and have the increased CNN classification accuracy of Bayesian dropout networks. Each of these variational distributions scale extremely well and make the results of this work applicable to a large range of state-of-the-art DNNs.

2. METHODS:



2.1. BAYESIAN NEURAL NETWORKS:

Artificial neural networks (NNs) can be trained using Bayesian learning by finding the maximum a posteriori (MAP) weights given the training data (D train ) and a prior over the weight matrix W (p(W )):

EQUATION

This is usually done by minimizing the mean squared error (MSE) or cross entropy error for either regression or classification, respectively, while using L2 regularization, which corresponds to a Gaussian prior over the weights. At inference, the probability of the test data (D test ) is then calculated using only the maximum likelihood estimate (MLE) of the weights (W * ):

p(D test |W * ) (2)

However, ideally the full posterior distribution over the weights would be learned instead of just the MLE:

EQUATION

This can be intractable due to both the difficulty in calculating p(D train ) and in calculating the joint distribution of a large number of parameters. Instead, p(W |D train ) can be approximated using a variational distribution q(W ). This distribution is constructed to allow for easy generation of samples. Using variational inference, q(W ) is learned by minimizing:

-log p(D train |W )q(W )dW + KL(q(W )||p(W )) (4)

Monte-Carlo (MC) sampling can then be used to estimate the probability of test data using q(W ):

p(D test ) ≈ 1 n n i p(D test | Ŵ i ) where Ŵ i ∼ q(W ) (5) Baseline Neural Network X X Bernoulli DropConnect Gaussian DropConnect X X X Bernoulli Dropout

Gaussian Dropout

Spike-and-Slab Dropout X X X Figure 1 : A visualization of the different variational distributions on a simple neural network.

2.2. VARIATIONAL DISTRIBUTIONS:

The number and continuous nature of the parameters in DNNs makes sampling from the entire distribution of possible weight matrices computationally challenging. However, variational distributions can make sampling easier. In deep learning, the most common sampling method is dropout with Bernoulli variables. However, dropconnect, which independently samples a Bernoulli for each weight, and Gaussian weights have also been used. A visualization of the different methods is shown in Figure 1 . All of these methods can be formulated as variational distributions where weights are sampled by element-wise multiplying the variational parameters V , the n × n connection matrix with an element for each connection between the n units in the network, by a mask M , which is sampled from some probability distribution. Mathematically, this can be written as:

EQUATION

From this perspective, the difference between dropout and dropconnect, as well as Bernoulli and Gaussian methods, is simply the probability distribution used to generate the mask sample, M (Figure 2 ). 

2.2.1. BERNOULLI DROPCONNECT & DROPOUT:

Bernoulli distributions are simple distributions which return 1 with probability p and 0 with probability (1 -p). In Bernoulli dropconnect, each element of the mask is sampled independently, so mi,j ∼ Bernoulli(p). This sets ŵi,j to v i,j with probability p and 0 with a probability (1 -p).

In dropout, however, the weights are not sampled independently. Instead, one Bernoulli variable is sampled for each row of the weight matrix, so mi, * ∼ Bernoulli(p).

2.2.2. GAUSSIAN DROPCONNECT & DROPOUT:

In Gaussian dropconnect and dropout, the elements of the mask are sampled from normal distributions. This corresponds to sampling ŵi,j from a Gaussian distribution centered at variational parameter v i,j . Srivastava et al. (2014) proposed using Gaussian distribution with a mean of 1 and a variance of σ 2 dc = (1 -p)/p, which matches the mean and variance of dropout when training time scaling is used. In Gaussian dropconnect, each element of the mask is sampled independently, which results in mi,j ∼ N (1, σ 2 dc ). In Gaussian dropout, each element in a row has the same random variable, so mi, * ∼ N (1, σ 2 dc ).

2.2.3. SPIKE-AND-SLAB DROPOUT:

A spike-and-slab distribution is the normalized linear combination of a "spike" of probability mass at zero and a "slab" consisting of a Gaussian distribution. This spike-and-slab returns a 0 with probability p spike or a random sample from a Gaussian distribution N (µ slab , σ 2 slab ). We propose concurrently using Bernoulli dropout and Gaussian dropconnect to approximate the use of a spikeand-slab variational distribution by optimizing a lower-bound of the objective function (See Appendix A). In this formulation, m i,j ∼ b i, * N (1, σ 2 dc ), where b i, * ∼ Bern(p do ) for each mask row and σ 2 dc = p dc /(1 -p dc ). As for Bernoulli dropout, each row of the mask M , m i, * , is multiplied by 0 with probability (1 -p do ), otherwise each element in that row is multiplied by a value independently sampled from a Gaussian distribution as in Gaussian dropconnect. During non-sampling inference, spike-and-slab dropout uses the mean weight values and, per Bernoulli dropout, multiplies unit outputs by p do . This differs from the work done by Louizos (2015) and Gal (2016) in that they used additive Gaussian noise and learn separate means and variances for each weight. In contrast, we define the variance as a function of the learned weight mean v i,j . Tying the variance of a weight to its magnitude makes it only beneficial to learn large weights if they are robust to variance (Wang & Manning, 2013) . Although we treat p do and p dc as a hyperparameters thereby reducing the space of variational distributions we optimize over, similar methods could potentially learn these during training (Louizos, 2015; Kingma et al., 2015; Gal, 2016) . 

3. RESULTS:

In this paper, we investigate how using MC sampling affects a DNN's ability to represent the uncertainty of it's probabalistic predictions. To test this, we trained several networks differing only in whether no sampling was performed (baseline DNN and DNN with L2-regularization), sampling was only performed during training (dropout and dropconnect), or sampling was performed both during training and inference (MC dropout and MC dropconnect). We used the MNIST and CIFAR-10 datasets to train networks that sampled from different variational distribution using the above methods.

For these DNNs, we compared the test classification error, the uncertainty of the softmax output, and the calibration of the softmax output for each type of sampling and variational distribution. The test classification error shows how well the probability distribution learned by each DNN models the data. The uncertainty shows how the probability distribution learned by each DNN is distributed across classes. A low entropy means that the probability mass is primarily located at a few labels and a high entropy means that the probability mass is distributed across many labels. The calibration shows how well the probability distribution learned by the DNN models it's own uncertainty. We evaluated how calibrated a prediction was by the following procedure: (1) We binned test set predictions by predicted probability. (2) We calculated the percentage of predictions in each predicted-probability bin that correctly predicted a target label. Perfect calibration means that targets predicted with probability z are correct in z times 100% of the cases. We therefore (3) calculated the mean squared calibration error (i.e. the mean across bins of the squared deviations between the bin-mean predicted probability and the proportion of correct predictions in that bin). We evaluated these three measures for the trained networks on the MNIST and CIFAR test set with noise sampled from Gaussian distributions with varying standard deviations (Figure 3 ). This tested how well modelled each network's uncertainty was for the test sets and the regions of input space not seen in the training set. For dropout and dropconnect, p was set to 0.5, which corresponds to the best value for regularizing a linear layer Baldi & Sadowski (2013) . However in practice, different values for p have been used Srivastava et al. (2014) . We found that 0.5 was a robust choice for different networks, measures and sampling methods we used. The one exception were the dropconnect parameter used for spike-and-slab distributions where 0.5 made learning difficult due to the variance during training.

Through validation, we found that using larger values spike-and-slab probabilities (0.75 for the fully connected and 0.9 for the convolutional) allowed the networks to fit to the training data better while still maintaining good generalization.

3.1. MNIST:

We trained two groups of DNNs, one with a fully connected (FC) architecture and one with a convolutional architecture, on digit classification using the MNIST dataset (LeCun et al., 1998) . This set contains 60,000 training images and 10,000 testing images. No data augmentation was used.

3.1.1. FULLY CONNECTED NEURAL NETWORKS:

First, we trained DNNs with two FC hidden layers, each with 800 units and ReLU non-linearities.

For the L2-regularized network, an L2-coefficient of 1e-5 was used for all weights. For the dropout methods, unit sampling was performed after each FC layer. For the dropconnect methods, every weight was sampled. The classification errors of the FC networks on the MNIST test set are shown in Table 1 . Sampling during learning significantly increased accuracy in comparison to the baseline NNs, with the dropconnect-based networks being the most accurate. MC sampling at inference did not significantly increase accuracy. We found that Gaussian dropconnect and spike-and-slab dropout had the best accuracy.

The classification error, uncertainty, and calibration of the learned probability distributions of each FC network for varying levels of noise are shown in Figure 4 . While not improving accuracy, MC sampling led to networks that better represent their own uncertainty. As the noise in the test set was increased, the uncertainty of the networks with MC sampling highly increased, especially when compared to networks with no sampling at inference. This resulted in better calibrated FC networks for all levels of noise.

The calibration curves show that sampling only during training, especially when using only dropout, led to overconfidence through placing too much probability mass on the most predicted label (Figure 5 ). In particular, sampling only during training resulted in under-confidence for low predicted probabilities and over-confidence for high predicted probabilities. By distributing probability mass over several labels, the DNNs that sampled at inference better represented the uncertainty of their predictions. 

3.1.2. CONVOLUTIONAL NEURAL NETWORKS:

We also trained CNNs on MNIST. Every network had two convolutional layers and a fully-connected layer (See Appendix B for details). For the L2-regularized network, an L2-coefficient of 1e-5 was used for all weights. For Bernoulli and Gaussian dropout, dropout was performed after each convolutional layer and after the FC layer. For Bernoulli and Gaussian dropconnect, every weight was sampled. The classification error of the CNNs on the MNIST test set is shown in Table 2 . Sampling during training significantly increased the accuracy for the all of the networks, but especially for the Gaussian dropout network. However, unlike for the FC networks, the dropout-based methods were more accurate than the dropconnect-based methods. Unlike for the FC networks, spike-and-slab had accuracies more similar to Bernoulli dropout, which classified more accurately than Gaussian dropconnect. MC sampling during inference did not significantly increase the accuracy of the networks.

The classification error, uncertainty, and calibration of the learned probability distributions of each network for varying levels of noise are shown in Figure 6 . As with the FC networks, MC sampling at inference greatly increased the CNNs' ability to estimate their own uncertainty, particularly for inputs that are different from the training set. MC sampling led to increased entropy as inputs became more noisy, which resulted in better calibration. In particular, this was true of both the Bernoulli and Gaussian dropconnect networks, which very accurately represented their uncertainty even for highly noisy inputs. The spike-and-slab CNN had similar robust calibration. The calibration curves show that not using MC sampling at inference led networks that were under-confident when making low probability predictions and over-confident when making high probability predictions (Figure 7 ).

3.2. CIFAR-10:

We trained large CNNs on natural image classification using the CIFAR-10 dataset, which contains 50,000 training images and 10,000 testing images (Krizhevsky & Hinton, 2009) . The CNNs had 13 convolutional layer followed by a fully connected layer (See Appendix B for details). For L2regularization, an L2-coefficient of 5e-4 was used for all weights. For the dropout networks, was used after each convolutional layer, but before the non-linearities. For the dropconnect networks, all weights were sampled. During training, random horizontal flipping was used. The classification error of the CNNs on the CIFAR-10 test set is shown in Table 3 . For each variational distribution, MC sampling significantly increased test accuracy. Also, the that used dropout, including spike-andslab, had significantly higher accuracies than the networks that only used dropconnect.

The classification error, uncertainty, and calibration of the learned probability distributions of each network for varying levels of noise are shown in Figure 8 . One of the major differences between the CIFAR-10 and the MNIST results was that using the layer-wise expectation for dropout did not produce good models, regardless of what variational distribution was used. Instead, the standard test time dropout methods led to relatively inaccurate networks with very high output entropy even when no input noise was used. This agrees with the results reported by Gal & Ghahramani (2015) ), who also found that using dropout at every layer can reduce accuracy if MC sampling is not used. However, these results differ from those of Srivastava et al. (2014) . In our experience, deeper networks with higher regularization (e.g. Bernoulli dropout probabilities closer to 0.5) result in traditional dropout inference performing significantly worse than MC dropout. As for the MNIST networks, MC sampling at inference overall greatly increased the CIFAR-10 trained CNNs' ability to estimate their own uncertainty when no or little noise was added to the test images.

The classification accuracies and the ability to model uncertainty of the networks with dropconnect sampling were far more robust to noise than the networks with only dropout. However, the MC dropconnect networks are significantly less accurate than the MC dropout networks for the CIFAR-10 test set when no noise was added. Networks that used traditional dropout inference instead of sampling were consistently uncertain, regardless of the noise. These networks have worse calibration than the MC dropout networks at low levels of noise but better calibration than the MC dropout networks at low levels of noise because they always had high uncertainty. For CIFAR-10, not using MC sampling resulted in networks that were generally over-confident when making predictions (Figure 9 ). However, this was not true for the non-sampling dropout networks when no input noise was used. In that case, the networks were highly under-confident.

4. DISCUSSION:

In this paper, we investigated the ability of MC sampling to improve a DNN's representation of its own uncertainty. We did this by training Bayesian DNNs with either multiplicative masking of the weights (dropconnect) or units (dropout) using Bernoulli, Gaussian, or spike-and-slab sampling. Based on the results, we draw the following main conclusions:

1. Sampling during both learning and inference improved a network's ability to represent its own uncertainty MC sampling at inference improved the calibration of a network's predictions. Overall, this improvement was particularly large for inputs from outside the training set, which traditional models classified with high confidence despite not being trained on similar inputs.

2.. Sampling weights independently led to networks that best represented their own uncertainty:

For all the network architectures and datasets tested, using dropconnect sampling at training and inference resulted in the best calibrated networks overall. This was true regardless of whether dropconnect sampling led to the most accurate network. This is in contrast to CNNs with Gaussian dropout sampling, which were significantly the most accurate and also the worst calibrated of the networks with sampling both during training an inference 3. Sampling weights independently led to the most accurate FC networks, but sampling units led to the most accurate CNNs For the FC networks, using dropconnect, particularly with Gaussian sampling, resulted in the most accurate networks. However, using dropout led to the most accurate CNNs. A potential cause of this is the large correlation in the information contained by adjacent elements in an image, which are often covered by the same convolutional kernel. This could mean that sampling the weights of a kernel does not provide as much regularization as the dropout methods. 4. Sampling using both Bernoulli dropout and Gaussian dropconnect led to accurate and well calibrated networks Using spike-and-slab dropout, which combines Bernoulli dropout and Gaussian dropconnect, resulted in networks that performed well for all architectures. Spike-and-slab networks had accuracies similar to the Bernoulli dropout or Gaussian dropconnect depending on which performed better for a given architecture and task, Gaussian dropconnect for FC networks and Bernoulli dropout for CNNs. Spike-and-slab networks also were robustly well calibrated similar to all of the other dropconnect methods.

These scalable methods for improving a network's representation of its own uncertainty are widely applicable, since most DNNs already use dropout and getting uncertainty estimates only requires using MC sampling at inference. We plan to further investigate the use of different variational distributions. We also plan to evaluate the use of dropout and dropconnect sampling on large recurrent neural networks. Our results suggest that sampling at inference allows DNNs to efficiently represent their own uncertainty, an essential part of real-world perception and decision making.

:



Figures and Tables:

Figure 2: An illustration of sampling network weights using the different variational distributions.

Figure 3: Examples of MNIST images with added Gaussian noise with varying standard deviations.

Figure 4: The MNIST test classification error, entropy, and calibration of the predictions of the fully connected networks: NN, NN+L2, Bernoulli DropConnect (BDC) with and without Monte-Carlo (MC) sampling, Gaussian DropConnect (GDC) with and without MC sampling, Bernoulli Dropout (BDO) with and without MC sampling, Gaussian Dropout with and without MC sampling, and spike-and-slab Dropout (SSD) with and without MC sampling.

Figure 6: The MNIST test classification error, entropy, and calibration of the predictions of the convolutional networks: CNN, CNN+L2, Bernoulli DropConnect (BDC) with and without Monte-Carlo (MC) sampling, Gaussian DropConnect (GDC) with and without MC sampling, Bernoulli Dropout (BDO) with and without MC sampling, Gaussian Dropout with and without MC sampling, and spike-and-slab Dropout (SSD) with and without MC sampling.

Figure 8: The CIFAR-10 test classification error, entropy, and calibration of the predictions of the convolutional neural networks: CNN, CNN+L2, Bernoulli DropConnect (BDC) with and without Monte-Carlo (MC) sampling, Gaussian DropConnect (GDC) with and without MC sampling, Bernoulli Dropout (BDO) with and without MC sampling, Gaussian Dropout with and without MC sampling, and spike-and-slab Dropout (SSD) with and without MC sampling.

MNIST test error for the trained fully connected neural networks with and without Monte-Carlo (MC) sampling using 100 samples.

Table content: <table><tr><td>Method</td><td>Mean Error (%)</td><td>Std. Dev.</td></tr><tr><td>NN</td><td>1.68</td><td>-</td></tr><tr><td>NN+L2</td><td>1.64</td><td>-</td></tr><tr><td>Bernoulli DropConnect</td><td>1.33</td><td>-</td></tr><tr><td>MC Bernoulli DropConnect</td><td>1.30</td><td>0.04</td></tr><tr><td>Gaussian DropConnect</td><td>1.24</td><td>-</td></tr><tr><td>MC Gaussian DropConnect</td><td>1.27</td><td>0.03</td></tr><tr><td>Bernoulli Dropout</td><td>1.45</td><td>-</td></tr><tr><td>MC Bernoulli Dropout</td><td>1.42</td><td>0.03</td></tr><tr><td>Gaussian Dropout</td><td>1.36</td><td>-</td></tr><tr><td>MC Gaussian Dropout</td><td>1.37</td><td>0.03</td></tr><tr><td>Spike-and-Slab Dropout</td><td>1.23</td><td>-</td></tr><tr><td>MC Spike-and-Slab Dropout</td><td>1.23</td><td>0.03</td></tr></table>

MNIST test error for the trained convolutional neural networks (CNNs) with and without Monte-Carlo (MC) sampling using 100 samples.

Table content: <table><tr><td>Method</td><td>Mean Error (%)</td><td>Error Std. Dev.</td></tr><tr><td>CNN</td><td>0.70</td><td>-</td></tr><tr><td>CNN+L2</td><td>0.70</td><td>-</td></tr><tr><td>Bernoulli DropConnect</td><td>0.59</td><td>-</td></tr><tr><td>MC Bernoulli DropConnect</td><td>0.59</td><td>0.02</td></tr><tr><td>Gaussian DropConnect</td><td>0.49</td><td>-</td></tr><tr><td>MC Gaussian DropConnect</td><td>0.49</td><td>0.01</td></tr><tr><td>Bernoulli Dropout</td><td>0.45</td><td>-</td></tr><tr><td>MC Bernoulli Dropout</td><td>0.46</td><td>0.01</td></tr><tr><td>Gaussian Dropout</td><td>0.38</td><td>-</td></tr><tr><td>MC Gaussian Dropout</td><td>0.37</td><td>0.01</td></tr><tr><td>Spike-and-Slab Dropout</td><td>0.43</td><td>-</td></tr><tr><td>MC Spike-and-Slab Dropout</td><td>0.44</td><td>0.01</td></tr></table>

CIFAR-10 test error for the trained convolutional neural networks (CNNs) with and without Monte-Carlo (MC) sampling using 100 samples.

Table content: <table><tr><td>Method</td><td>Mean Error (%)</td><td>Error Std. Dev.</td></tr><tr><td>CNN</td><td>19.63</td><td>-</td></tr><tr><td>CNN+L2</td><td>19.44</td><td>-</td></tr><tr><td>Bernoulli DropConnect</td><td>17.64</td><td>-</td></tr><tr><td>MC Bernoulli DropConnect</td><td>17.29</td><td>0.05</td></tr><tr><td>Gaussian DropConnect</td><td>16.00</td><td>-</td></tr><tr><td>MC Gaussian DropConnect</td><td>15.63</td><td>0.04</td></tr><tr><td>Bernoulli Dropout</td><td>37.47</td><td>-</td></tr><tr><td>MC Bernoulli Dropout</td><td>10.19</td><td>0.06</td></tr><tr><td>Gaussian Dropout</td><td>24.10</td><td>-</td></tr><tr><td>MC Gaussian Dropout</td><td>9.29</td><td>0.10</td></tr><tr><td>Spike-and-Slab Dropout</td><td>18.05</td><td>-</td></tr><tr><td>MC Spike-and-Slab Dropout</td><td>10.44</td><td>0.03</td></tr></table>

Peer review (iclr2017):
This paper presents an empirical evaluation of the effect of training with noise by dropout or dropconnect, on the predictive uncertainty of neural networks and convnets. The conclusion seems to be that applying both training and inference with noise can help the network produce better uncertainty estimates in terms of better calibrated predictions. Although the experiments were thorough, the issue with an empirical paper like this is that it is very difficult to ensure that the lessons learned will generalize across problems and domains. This paper only investigated two simple image datasets and two neural network architectures on the task of classification. There are several ways in which I think this paper could be made stronger. First, the problem is not well motivated: why do we care about uncertainty (although I believe we do)? A good application, or a motivation section would be beneficial here. Next, what about investigating a different domain such as text or speech recognition? Or other problems such as regression? Do the results hold across different domains? Finally, if we really care about uncertainty, there are a number of other techniques for inference in Bayesian neural networks such as stochastic variational inference using the reparameterization trick, or MCMC methods like stochastic gradient Langevin dynamics. The advantage of dropout is that it’s simple and fast, but do we lose anything by doing this in terms of calibration? Other than the empirical comparison, there is little novelty to this paper, and therefore I think the conclusions drawn need to be more general or the motivation more compelling. Even addressing a subset of these suggestions would make the paper stronger in my opinion. In Figure 4 the calibration MSE does not look so robust when MC sampling is not used. Do you have any hypothesis on why MC sampling is so important here? In Figure 5, the legend says “CNN” when it should just be “NN”. Also the caption says convolutional, when it should say fully connected. In Table 3, why are the results so poor for non-MC-based dropout? Although this agrees with Gal and Ghahramani, this seems to be in direct contradiction to Table 4 of the original JMLR dropout paper by Srivastava et al from 2014. How is the noise in the test set applied for Figures 5-10? Is it Gaussian noise applied to the pixels?