Title: ADAPTIVE NETWORK SPARSIFICATION WITH DEPEN-DENT VARIATIONAL BETA-BERNOULLI DROPOUT

Abstract: While variational dropout approaches have been shown to be effective for network sparsification, they are still suboptimal in the sense that they set the dropout rate for each neuron without consideration of the input data. With such input-independent dropout, each neuron is evolved to be generic across inputs, which makes it difficult to sparsify networks without accuracy loss. To overcome this limitation, we propose adaptive variational dropout whose probabilities are drawn from sparsity-inducing beta-Bernoulli prior. It allows each neuron to be evolved either to be generic or specific for certain inputs, or dropped altogether. Such input-adaptive sparsityinducing dropout allows the resulting network to tolerate larger degree of sparsity without losing its expressive power by removing redundancies among features. We validate our dependent variational beta-Bernoulli dropout on multiple public datasets, on which it obtains significantly more compact networks than baseline methods, with consistent accuracy improvements over the base networks.
One of the main obstacles in applying deep learning to large-scale problems and low-power computing systems is the large number of network parameters, as it can lead to excessive memory and computational overheads. To tackle this problem, researchers have explored network sparsification methods to remove unnecessary connections in a network, which is implementable either by weight pruning (Han et al., 2016) or sparsity-inducing regularizations (Wen et al., 2016) .
Recently, variational Bayesian approaches have shown to be useful for network sparsification, outperforming non-Bayesian counterparts. They take a completely different approach from the conventional methods that either uses thresholding or sparsity-inducing norms on parameters, and uses well-known dropout regularization instead. Specifically, these approaches use variational dropout (Kingma et al., 2015) which adds in multiplicative stochastic noise to each neuron, as a means of obtaining sparse neural networks. Removal of unnecessary neurons could be done by either setting the dropout rate individually for each neuron with unbounded dropout rate (Molchanov et al., 2017) or by pruning based on the signal-to-noise ratio (Neklyudov et al., 2017) .
While these variational dropout approaches do yield compact networks, they are suboptimal in that the dropout rate for each neuron is learned completely independently of the given input data and labels. With input-independent dropout regularization, each neuron has no choice but to encode generic information for all possible inputs, since it does not know what input and tasks it will be given at evaluation time, as each neuron will be retained with fixed rate regardless of the input. Obtaining high degree of sparsity in such as setting will be difficult as dropping any of the neurons will result in information loss. For maximal utilization of the network capacity and thus to obtain a more compact model, however, each neuron should be either irreplaceably generic and used by all tasks, or highly specialized for a task such that there exists minimal redundancy among the learned representations. This goal can be achieved by adaptively setting the dropout probability for each input, such that some of the neurons are retained with high probability only for certain types of inputs and tasks.
To this end, we propose a novel input-dependent variational dropout regularization for network sparsification. We first propose beta-Bernoulli dropout that learns to set dropout rate for each individual neuron, by generating the dropout mask from beta-Bernoulli prior, and show how to train it using variational inference. This dropout regularization is a proper way of obtaining a Bayesian neural network and also sparsifies the network, since beta-Bernoulli distribution is a sparsity-inducing

:

prior. Then, we propose dependent beta-Bernoulli dropout, which is an input-dependent version of our variational dropout regularization.

Such adaptive regularization has been utilized for general network regularization by a non-Bayesian and non-sparsity-inducing model (Ba & Frey, 2013 ); yet, the increased memory and computational overheads that come from learning additional weights for dropout mask generation made it less appealing for generic network regularization. In our case of network sparsification, however, the overheads at training time is more than rewarded by the reduced memory and computational requirements at evaluation time, thanks to the high degree of sparsification obtained in the final output model.

We validate our dependent beta-Bernoulli variational dropout regularizer on multiple public datasets for network sparsification performance and prediction error, on which it obtains more compact network with substantially reduced prediction errors, when compared with both the base network and existing network sparsification methods. Further analysis of the learned dropout probability for each unit reveals that our input-adaptive variational dropout approach generates a clearly distinguishable dropout mask for each task, thus enables each task to utilize different sets of neurons for their specialization.

Our contribution in this paper is threefold:

• We propose beta-Bernoulli dropout, a novel dropout regularizer which learns to generate Bernoulli dropout mask for each neuron with sparsity-inducing prior, that obtains high degree of sparsity without accuracy loss. • We further propose dependent beta-Bernoulli dropout, which yields significantly more compact network than input-independent beta-Bernoulli dropout, and further perform runtime pruning for even less computational cost. • Our beta-Bernoulli dropout regularizations provide novel ways to implement a sparse Bayesian Neural Network, and we provide a variational inference framework for learning it.

2. RELATED WORK:

Deep neural networks are prone to overfitting, due to its large number of parameters. Dropout (Srivastava et al., 2014) is an effective regularization that helps prevent overfitting by reducing coadaptations of the units in the networks. During dropout training, the hidden units in the networks are randomly dropped with fixed probability p, which is equivalent to multiplying the Bernoulli noises z ∼ Ber(1 -p) to the units. It was later found that multiplying Gaussian noises with the same mean and variance, z ∼ N (1, p 1-p ), works just as well or even better (Srivastava et al., 2014) . Dropout generally treat the dropout rate p as a hyperparameter to be tuned, but there have been several studies that aim to automatically determine proper dropout rate. Kingma et al. (2015) propose to determine the variance of the Gaussian dropout by stochastic gradient variational Bayes. Generalized dropout (Srinivas & Babu, 2016 ) places a beta prior on the dropout rate and learn the posterior of the dropout rate through variational Bayes. They showed that by adjusting the hyperparameters of the beta prior, we can obtain several regularization algorithms with different characteristics. Our beta-Bernoulli dropout is similar to one of its special cases, but while they obtain the dropout estimates via point-estimates and compute the gradients of the binary random variables with biased heuristics, we approximate the posterior distribution of the dropout rate using continuous relaxation. Ba & Frey (2013) proposed adaptive dropout (StandOut), where the dropout rates for each individual neurons are determined as function of inputs. This idea is similar in spirit to our dependent beta-Bernoulli dropout, but they use heuristics to model this function, while we use proper variational Bayesian approach to obtain the dropout rates. One drawback of their model is the increased memory and computational cost from additional parameters introduced for dropout mask generation, which is not negligible when the network is large. Our model also requires additional parameters, but with our model the increased cost at training time is rewarded at evaluation time, as it yields a significantly sparse network than the baseline model as an effect of the sparsity-inducing prior.

Recently, there has been growing interest in structure learning or sparsification of deep neural networks. Han et al. (2016) proposed a strategy to iteratively prune weak network weights for efficient computations, and Wen et al. (2016) proposed a group sparsity learning algorithm to drop neurons, filters or even residual blocks in deep neural networks. In Bayesian learning, various sparsity inducing priors have been demonstrated to efficiently prune network weights with little drop in accuracies (Molchanov et al., 2017; Louizos et al., 2017; Neklyudov et al., 2017; Louizos et al., 2018; Dai et al., 2018) . In the nonparametric Bayesian perspective, Feng et al. Feng & Darrell (2015) proposed IBP based algorithm that learns proper number of channels in convolutional neural networks using the asymptotic small-variance limit approximation of the IBP. While our dropout regularizer is motivated by IBP as with this work, our work is differentiated from it by the input-adaptive adjustments of dropout rates that allow each neuron to specialize into features specific for some subsets of tasks.

3. BACKGROUNDS:

3.1 BAYESIAN NEURAL NETWORKS AND STOCHASTIC GRADIENT VARIATIONAL BAYES Suppose that we are given a neural network f (x; W) parametrized by W, a training set D = {(x n , y n )} N n=1 , and a likelihood p(y|f (x; W)) chosen according to the problem of interest. In Bayesian neural networks, the parameter W is treated as a random variable drawn from a prespecified prior distribution p(W), and the goal is to compute the posterior distribution p(W|D):

p(W|D) ∝ p(W) N n=1 p(y n |f (x n ; W)).

(1)

When a novel input x * is given, the prediction y * is obtained as a distribution,

EQUATION

Unfortunately, p(W|D) is in general computationally intractable due to computing p(D), and thus we resort to approximate inference schemes. Specifically, we use variational Bayes (VB), where we posit a variational distribution q(W; φ) of known parametric form and minimize the KL-divergence between it and the true posterior p(W|D). It turns out that minimizing D KL [q(W; φ) p(W|D)] is equivalent to maximizing the evidence lower-bound (ELBO),

EQUATION

where the first term measures the expected log-likelihood of the dataset w.r.t. q(W; φ), and the second term regularizes q(W; φ) so that it does not deviate too much from the prior. The parameter φ is learned by gradient descent, but these involves two challenges. First, the expected likelihood is intractable in many cases, and so is its gradient. To resolve this, we assume that q(W; φ) is reparametrizable, so that we can obtain i.i.d. samples from q(W; φ) by computing differentiable transformation of i.i.d. noise (Kingma & Welling, 2014; Rezende et al., 2014) as

ε (s) ∼ r(ε), W (s) = T (ε (s) ; φ).

Then we can obtain a low-variance unbiased estimator of the gradient of the ELBO. The second challenge is that the number of training instances N may be too large, which makes it impossible to compute the summation of all expected log-likelihood terms. Regarding on this challenge, we employ the stochastic gradient descent technique where we approximate with the summation over a uniformly sampled mini-batch B.

Combining the reparametrization and the mini-batch sampling, we obtain an unbiased estimator of ∇ φ L(φ) to update φ. This procedure, often referred to as stochastic gradient variational Bayes (SGVB) (Kingma & Welling, 2014) , is guaranteed to converge to local optima under proper learningrate scheduling.

3.2. LATENT FEATURE MODELS AND INDIAN BUFFET PROCESSES:

In latent feature model, data are assumed to be generated as combinations of latent features:

EQUATION

where z n,k = 1 means that d n possesses the k-th feature w k , and f is an arbitrary function.

The Indian Buffet Process (IBP) (Griffiths & Ghahramani, 2005 ) is a generative process of binary matrices with infinite number of columns. Given N data points, IBP generates a binary matrix Z ∈ {0, 1} N ×K whose n-th row encodes the feature indicator z n . The IBP is suitable to use as a prior process in latent feature models, since it generates possibly infinite number of columns and adaptively adjust the number of features on given dataset. Hence, with an IBP prior we need not specify the number of features in advance.

One interesting observation is that while it is a marginal of the beta-Bernoulli processes (Thibaux & Jordan, 2007) , the IBP may also be understood as a limit of the finite-dimensional beta-Bernoulli process. More specifically, the IBP with parameter α > 0 can be obtained as

EQUATION

This beta-Bernoulli process naturally induces sparsity in the latent feature allocation matrix Z. As K → ∞, the expected number of nonzero entries in Z converges to N α (Griffiths & Ghahramani, 2005) , where α is a hyperparameter to control the overall sparsity level of Z.

In this paper, we relate the latent feature models (4) to neural networks with dropout mask. Specifically, the binary random variables z n,k correspond to the dropout indicator, and the features w correspond to the inputs or units in neural networks. From this connection, we can think of a hierarchical Bayesian model with IBP or finite-dimensional beta-Bernoulli priors . We expect that due to the property of the IBP, the resulting neural network would also be sparse.

3.3. DEPENDENT INDIAN BUFFET PROCESSES:

One important assumption in the IBP is that features are exchangeable -the distribution is invariant to the permutation of feature assignments. This restricts flexibility when we want to model the dependency of feature assignments to the input covariates x, such as times or spatial locations. To this end, Williamson et al. (2010) proposed dependent Indian Buffet processes (dIBP), which triggered a line of follow-up work (Zhou et al., 2011; Ren et al., 2011) . These models can be summarized as following generative process:

EQUATION

where g(•, •) is an arbitrary function that maps π and x to a probability. In our latent feature interpretation for neural network layers above, the input covariates x corresponds to the input or activations in the previous layer. In other words, we build a data-dependent dropout model where the dropout rates depend on the inputs.

4. MAIN CONTRIBUTION:



4.1. VARIATIONAL BETA-BERNOULLI DROPOUT:

Inspired by the latent-feature model interpretation of layers in neural networks, we propose a Bayesian neural network layer overlaid with binary random masks sampled from the finite-dimensional beta-Bernoulli prior. Specifically, let W be a parameter of a neural network layer, and let z n ∈ {0, 1} K be a binary mask vector to be applied for the x n . The dimension of W needs not be equal to K. Instead, we may enforce arbitrary group sparsity by sharing the binary masks among multiple elements of W. For instance, let W ∈ R K×L×M be a parameter tensor in a convolutional neural network with K channels.

To enforce a channel-wise sparsity, we introduce z n ∈ {0, 1} K to produce masked parameter W n for the n-th observation is given as

{z n,k W k, ,m | (k, , m) = (1, 1, 1), . . . , (K, L, M )}.

With a slight abuse of notation, we denote this binary mask multiplication as W n = z ⊗ W. The generative process of our Bayesian neural network is then described as

EQUATION

To approximate the posterior p(W, Z, π|D), we introduce variational distributions as1 

EQUATION

For W, we conduct computationally efficient point-estimate to get the single value W. For π, following Nalisnick & Smyth (2017) , we use the Kumaraswamy distribution (Kumaraswamy, 1980) ,

EQUATION

since it closely resembles the beta distribution and easily reparametrizable as

EQUATION

We further assume that q(z n, 

k |π k ) = p(z n,k |π k ) = Ber(π k ). z k is

EQUATION

)

where τ is a temperature of continuous relaxation, u ∼ unif([0, 1]), and sgm(x) = 1 1+e -x . The KL-divergence between the prior and the variational distribution is then obtained as follows (Nalisnick & Smyth, 2017) :

EQUATION

)

where γ is Euler-Mascheroni constant and Ψ(•) is the digamma function. Note that the infinite series in the KL-divergence vanishes because of the choice p(π k ) = beta(π k ; α/K, 1).

We can apply the SGVB framework described in Section 3.1 to optimize the variational parameters {a k , b k } K k=1 . After the training, the prediction for a novel input x * is given as

EQUATION

and we found that the following näive approximation works well in practice,

EQUATION

where

EQUATION

)

4.2 VARIATIONAL DEPENDENT BETA-BERNOULLI DROPOUT

We define a Bayesian neural network model with input-dependent beta-Bernoulli prior as follows:

EQUATION

Here, x n is the input to the dropout layer2 . In principle, we may introduce another fully connected layer as (ϕ 1 (x n,1 ), . . . , ϕ K (x n,K )) = sgm(Vx n + c), with additional parameters V ∈ R K×K and c ∈ R K , but this is undesirable for the network sparsification. Instead, we propose simple yet effective way to generate input-dependent probability with minimal parameters. Motivated by the batch normalization (Ioffe & Szegedy, 2015) , we construct each π k (x n,k ) independently as follows:

EQUATION

where µ k and σ k are the estimates of k-th components of mean and standard deviation of inputs, and γ k and β k are scaling and shifting parameters , and > 0 is some small tolerance value, and clamp(x, ) = min(1 -, max( , x)). The intuition behind this construction is as follows. The inputs after the standardization would approximately be distributed as N (0, 1). If we pass them through min(1 -, max( , x)), most of insignificant dimensions would have probability near zero. However, some inputs may be important regardless of the significance of activation, for which we expect the shifting β k to compensate. With β we control the overall sparsity, but we want them to be small unless required to get sparse outcomes. We enforce this by placing a prior β ∼ N (0, ρI).

The goal of variational inference is hence to learn the posterior distribution p(W, Z, π, β|D), and we approximate this with variational distribution of the form

EQUATION

where q(π k ) are the same as in beta-Bernoulli dropout,

q(β k ) = N (β k ; η k , κ 2 k ), and q(z n,k |π k ) = p(z n,k |π k , x n ) 3 The KL-divergence is computed as D KL [q(Z, π|X) p(Z, π)] + D KL [q(β) p(β)],

where both terms can be computed analytically.

The prediction for the novel input x * is similarity done as in the beta-Bernoulli dropout, with the naïve approximation for the expectation:

EQUATION

where

EQUATION

Two stage pruning scheme Since π k ≥ π k (x n,k ) for all x n,k , we expect the resulting network to be sparser than the network pruned only with the beta-Bernoulli dropout (only with π k ). To achieve this, we propose a two-stage pruning scheme, where we first prune the network with beta-Bernoulli dropout, and prune the network again with π k (x n,k ) while holding the variables π fixed. By fixing π the resulting network is guaranteed to be sparser than the network before the second pruning.

5. EXPERIMENTS:

We now compare our beta-Bernoulli dropout (BB) and input-dependent beta-Bernoulli dropout (DBB) to other structure learning/pruning algorithms on several neural networks using benchmark datasets.

Experiment Settings We follow a common experimental setting used by existing work to evaluate pruning performance, and use LeNet 500-300, LeNet 5-Caffe4 , and VGG-like (Zagoruyko, 2015) on MNIST (LeCun et al., 1998) , CIFAR-10, and CIFAR-100 datasets (Krizhevsky & Hinton, 2009) . For baselines, we use the following recent Bayesian pruning methods: 1) SBP: Structured Bayesian Pruning (Neklyudov et al., 2017) , 2) VIB: Variational Information Bottleneck (Dai et al., 2018) , 3) L 0 : L 0 regularization (Louizos et al., 2018) , 4) GD: Generalized Dropout (Srinivas & Babu, 2016) , 5) CD: Concrete Dropout (Gal et al., 2017) . We faithfully tune all hyperparameters of baselines on a validation set to find a reasonable solution that is well balanced between accuracy and sparsification, while fixing batch size (100) and the number of maximum epochs (200) to match our experiment setting.

Implementation Details:

We pretrain all networks using the standard training procedure before fine-tuning for network sparsification Neklyudov et al. (2017) ; Dai et al. (2018) ; Louizos et al. (2018) . While pruning, we set the learning rate for the weights W to be 0.1 times smaller than those for the variational parameters as in Neklyudov et al. (2017) . We used Adam (Kingma & Ba, 2015) for all methods. For DBB, as mentioned in Section 4.2, we first prune networks with BB, and then prune again with DBB whiling holding the variational parameters for q(π) fixed.

We report all hyperparameters of BB and DBB for reproducing our results. We set α/K = 10 -4 for all layers of BB and DBB. In principle, we may fix K to be large number and tune α. However, in the network sparsification tasks, K is given as the neurons/filters to be pruned. Hence, we choose to set the ratio α/K to be 10 -3 for all layers in all networks. For the inference, we prune neurons/filters whose expected binary mask E q [z k ] are smaller than a threshold, and excluded them from the computation, in order to show the performance of the pruned networks. We fixed the threshold to 10 -3 for all settings5 . For the input-dependent dropout, since the number of pruned neurons/filters differ according to the inputs, we report them as the running average over the test data. We fix the temperature parameter of concrete distribution τ = 10 -1 and the prior variance of β, ρ = √ 5 for all experiments. We ran all experiments three times to report mean and standard deviations for the error.

To control the tradeoff between classification error and pruned network size, we run each algorithm with various tradeoff parameters. For VIB and L 0 , we controlled the tradeoff parameters originally introduced in the papers. For variational inference based algorithms including SBP and BB, we scaled the KL terms in ELBO with tradeoff parameter γ > 1. Note that when γ > 1, the modified ELBO is a still lower bound on the marginal likelihood. For DBB we use fixed parameter settings but retrain the model with different runs of BBs, that are trained with different tradeoff parameters γ. For more detailed settings of tradeoff control, please refer to the appendix.

5.1. MNIST EXPERIMENTS:

We use LeNet 500-300 and LeNet 5-Caffe networks on MNIST for comparison. Following the conventions, we apply dropout to the inputs to the fully connected layers and right after the convolution for the convolutional layers. We report the trade-off between the error and speedup in terms of FLOPs in Fig. 1 , and show one representative result per each algorithm in Table 1 to compare the speedups and memory savings with respect to a particular error level. For DBB, we included additional overhead coming from input-dependent computation into FLOPs and memory computation. For LeNet 5-Caffe, following Dai et al. (2018) ; Neklyudov et al. (2017) , we used larger tradeoff parameters for the first two convolutional layers -please refer to the appendix for the detail.

Under review as a conference paper at ICLR 2020 With both neworks, BB and DBB either achieve significantly smaller error than the baseline methods, or significant speedup and memory saving at similar error rates. DBB, with its input-adaptive pruning, obtains larger speedup and memory saving compared to BB, which is better shown in the errorspeedup tradeoff plot. For LeNet 500-300, BB acheives the mean error 1.40% with 21.79 xFLOPs, while DBB acheives similar the mean error with 38.75% xFLOPs. Table 2 in the appendix clearly show this advantage.

On LeNet-500-300, DBB prunes large amount of neurons in the input layer, because the inputs to this network are simply vectorized pixel values, so it can prune the inputs according to the digit classes, which is shown in Fig. 1 Also, we observe that the dropout masks generated by DBB tend to be generic at lower network layers to extract common features, but become class-specific at higher layers to specialize features for class discriminativity (see Fig. 3 in the appendix). We observed similar behavior of DBB in the experiments with VGG on both CIFAR10 and CIFAR100 datasets.

5.2. CIFAR-10 AND CIFAR-100 EXPERIMENTS:

We further compare the pruning algorithms on VGG-like network on CIFAR-10 and CIFAR-100 datasets. Fig. 2 summarizes the performance of each algorithm on particular setting, where BB and DBB achieve both impressive speedups and memory savings with significantly improved accracy.

When compared with the baseline sparsification methods, they either achieve better error at similar sparsification rates, or achieve better speedup and memory saving at simlar error rates. DBB achieves larger speedup than BB at similar error rates, and to all other baselines. For instance, in CIFAR-100, BB achieves the error of 28.86% with 2.60 xFLOPs while DBB records the error 28.84% with 2.98 xFLOPs. As clearly depicted in the error-speedup tradeoff plot Fig. 2 , DBB provides the best tradeoff among the algorithms we tested. Please refer to Table 3 in the appendix for more detailed experimental results.

Further analysis of the filters retained by DBB in Fig. 2 shows that DBB either retains most filters (layer 3) or perform generic pruning (layer 8) at lower layers, while performing diversified pruning at higher layers (layer 15). Further, at layer 15, instances from the same class (bus) retained similar filters, while instances from different classes (bus vs. apple) retained different filters.

6. CONCLUSION:

We have proposed novel beta-Bernoulli dropout for network regularization and sparsification, where we learn dropout probabilities for each neuron either in an input-independent or input-dependent manner. Our beta-Bernoulli dropout learns the distribution of sparse Bernoulli dropout mask for each neuron in a variational inference framework, in contrast to existing work that learned the distribution of Gaussian multiplicative noise or weights, and obtains significantly more compact network compared to those competing approaches. Further, our dependent beta-Bernoulli dropout that input-adaptively decides which neuron to drop further improves on the input-independent beta-Bernoulli dropout, both in terms of size of the final network obtained and run-time computations. Future work may include network structure learning (e.g. a tree structure) using a generalized version of the method where dropout mask is applied to a block of weights rather than to each hidden unit. A APPENDIX

B MORE DETAILS ON THE EXPERIMENTS:

We first describe the tradeoff parameter settings we used in the experiments.

• For the variational inference based methods (BB, SBP), we scaled the KL-term by γ ≥ 1.

We tested with γ ∈ {1.0, 2.0, 4.0, 6.0, 8.0}. • For GD, we tested with hyperparameter α ∈ {10 -3 , 10 -4 , 10 -5 , 10 -6 }.

• For DBB, we didn't do any tradeoff control. Instead, we started from different results of BB produced with various tradeoff parameters. • For VIB, we tested with tradeoff parameter γ ∈ {10 -4 , 10 -5 , 5 • 10 -6 , 10 -6 , 5 • 10 -7 } for LeNet-500-300, γ ∈ {10 -6 , 5•10 -7 , 10 -7 , 5•10 -8 , 10 -8 } for LeNet5-Caffe and VGG-like. • For L 0 , we tested with λ ∈ {0.1/60000, 0.05/60000, 0.02/60000, 0.01/60000, 0.005/60000}

for LeNet-500-300 and LeNet5-Caffe, λ ∈ {10 -7 , 5 • 10 -8 , 2 • 10 -8 , 10 -8 , 5 • 10 -9 } for VGG-like.

For LeNet5-Caffe, we used larger tradeoff parameters for the first two conv layers, because the penalty for them are relatively underestimated due to the small number of filters (20, 50) compared to those of fully-connected layers (800-500).

• For BB, SBP, and GD, we multiplied the kl scaling factor γ by 20 and 8 for the first two convolutional layers. • For VIB, following the paper, we multiplied the sizes of feature maps, 24 × 24 and 8 × 8 to the tradeoff parameters of the first and second convolutional layers. • For L 0 reg, we used the setting specified in the paper (L 0 -sep).

C ADDITIONAL RESULTS:

We present the errors, speedup in FLOPs, and memory savings for all trade-off settings of every algorithm. The results of LeNet-500-300 and LeNet-5-Caffe are displayed in Table 2 , and the results for VGG-like on CIFAR-10 and CIFAR-100 are displayed in 

Here we wrote as if we only have one binary mask layer, but in practice every layer in a neural network is equipped with its own binary mask. We abbreviate those multiple binary masks with Z for simplicity.

For convolutional layers, we apply the global average pooling to tensors to get vectorized inputs.

In principle, we may introduce an inference network q(z|π, x, y) and minimizes the KL-divergence between q(z|π, x, y) and p(z|π, x), but this results in discrepancy between training and testing for sampling z, and also make optimization cumbersome. Hence, we chose to simply set them equal. Please refer toSohn et al. (2015) for discussion about this.

https://github.com/BVLC/caffe/blob/master/examples/mnist

We tried different threshold values ranging from 10 -2 to 10 -4 but the difference was insignificant.

Figures and Tables:

Figure 1: Top: Classification errors and sparsificaton performance of various pruning methods for LeNet-500-300 and LeNet5-Caffe on the MNIST dataset. Bottom: Error-Speedup tradeoff plots for LeNet 500-300 (left) and LeNet5-Caffe (right).

Figure 2: Top: Classification errors and sparsification performances of various pruning methods on CIFAR-10 and CIFAR-100 datasets. Bottom: Error-Speedup tradeoff plots (left, middle) and an empirical analysis of learned filters from DBB (right).

Figure 3: Correlation coefficients of class averages of ϕ(x) for the four layers in LeNet5-Caffe, where the darker shows the more correlation between the class average values of ϕ(x). The correlation between classes diminishes as layer goes up, implying that the input filters are being specialized to the classes.

reparametrized as in Maddison et al. (2017); Jang et al. (2017); Gal et al. (2017),

Table content: <table/>

Results for LeNet-500-300 and LeNet5-Caffe on MNIST.

Table content: <table><tr><td/><td/><td/><td/><td colspan="2">LeNet 500-300</td><td/><td/><td/><td/><td/><td/><td colspan="3">LeNet5-Caffe</td></tr><tr><td/><td colspan="2">Error (%)</td><td/><td>Neurons</td><td colspan="10">xFLOPs Memory (%) Error (%) Neurons/Filters xFLOPs Memory (%)</td></tr><tr><td>Original</td><td/><td>1.63</td><td colspan="2">784-500-300</td><td>1.0</td><td/><td>100.0</td><td/><td>0.71</td><td/><td colspan="3">20-50-800-500</td><td>1.0</td><td>100.0</td></tr><tr><td>CD</td><td colspan="4">1.54±0.04 784-500-300</td><td>1.0</td><td/><td>100.0</td><td/><td colspan="5">0.67±0.04 20-50-800-500</td><td>1.0</td><td>100.0</td></tr><tr><td>GD</td><td colspan="4">1.45±0.02 518-187-135</td><td>4.41</td><td/><td>22.68</td><td/><td colspan="5">0.67±0.02 12-37-496-300</td><td>2.21</td><td>41.29</td></tr><tr><td>SBP</td><td colspan="4">1.58±0.06 164-91-30</td><td>30.43</td><td/><td>3.30</td><td/><td colspan="2">0.70±0.02</td><td colspan="3">5-15-134-44</td><td>11.41</td><td>6.47</td></tr><tr><td>L 0</td><td colspan="5">1.64±0.03 148-116-127 16.16</td><td/><td>6.21</td><td/><td colspan="5">0.66±0.03 11-22-79-137</td><td>4.08</td><td>10.61</td></tr><tr><td>VIB</td><td colspan="4">1.60±0.05 138-98-26</td><td>33.63</td><td/><td>2.98</td><td/><td colspan="2">0.66±0.04</td><td colspan="3">7-25-297-38</td><td>5.80</td><td>8.75</td></tr><tr><td>BB</td><td colspan="4">1.59±0.07 137-90-37</td><td>33.81</td><td/><td>2.97</td><td/><td colspan="2">0.66±0.03</td><td colspan="3">7-17-132-56</td><td>7.30</td><td>7.85</td></tr><tr><td/><td colspan="4">1.26±0.04 288-114-65</td><td>13.38</td><td/><td>7.48</td><td/><td colspan="2">0.59±0.04</td><td colspan="3">9-24-174-58</td><td>4.55</td><td>9.5</td></tr><tr><td>DBB</td><td colspan="2">1.59±0.03</td><td/><td>93-35-25</td><td>47.07</td><td/><td>2.22</td><td/><td colspan="2">0.68±0.01</td><td colspan="3">7-17-64-38</td><td>7.27</td><td>7.10</td></tr><tr><td/><td colspan="4">1.42±0.06 104-31-29</td><td>34.98</td><td/><td>3.00</td><td/><td colspan="2">0.59±0.02</td><td colspan="3">9-23-61-32</td><td>4.55</td><td>8.28</td></tr><tr><td/><td/><td/><td/><td/><td/><td/><td/><td/><td>1.0</td><td/><td/><td/><td/></tr><tr><td/><td/><td>1.8</td><td/><td/><td/><td/><td/><td/><td/><td/><td/><td/><td/></tr><tr><td/><td/><td/><td/><td/><td/><td/><td/><td/><td>0.9</td><td/><td/><td/><td/></tr><tr><td/><td/><td>1.7</td><td/><td/><td/><td/><td/><td/><td/><td/><td/><td/><td/></tr><tr><td/><td>Error (%)</td><td>1.5 1.6</td><td/><td/><td/><td/><td>GD</td><td>Error (%)</td><td>0.7 0.8</td><td/><td/><td/><td/><td>DBB</td></tr><tr><td/><td/><td/><td/><td/><td/><td/><td>BB</td><td/><td/><td/><td/><td/><td/><td>GD</td></tr><tr><td/><td/><td>1.4</td><td/><td/><td/><td/><td>VIB</td><td/><td/><td/><td/><td/><td/><td>BB</td></tr><tr><td/><td/><td/><td/><td/><td/><td/><td>L0</td><td/><td>0.6</td><td/><td/><td/><td/><td>VIB</td></tr><tr><td/><td/><td>1.3</td><td/><td/><td/><td/><td>SBP</td><td/><td/><td/><td/><td/><td/><td>L0</td></tr><tr><td/><td/><td>1.2</td><td/><td/><td/><td/><td>DBB</td><td/><td>0.5</td><td/><td/><td/><td/><td>SBP</td></tr><tr><td/><td/><td>0</td><td>10</td><td>20</td><td>30</td><td>40</td><td>50</td><td/><td>2.5</td><td>5.0</td><td>7.5</td><td>10.0</td><td>12.5</td><td>15.0</td><td>17.5</td><td>20.0</td></tr><tr><td/><td/><td/><td/><td colspan="2">Speedup in FLOPs</td><td/><td/><td/><td/><td/><td colspan="3">Speedup in FLOPs</td></tr></table>

Comparison of pruning methods on LeNet-500-300 and LeNet5-Caffe with MNIST. Error and Memory are in %.

Table content: <table><tr><td/><td colspan="2">LeNet 500-300</td><td/><td colspan="2">LeNet5-Caffe</td><td/></tr><tr><td/><td>Error</td><td colspan="2">Speedup Memory</td><td>Error</td><td colspan="2">Speedup Memory</td></tr><tr><td>CD</td><td>1.54±0.04</td><td>1.0</td><td>100.0</td><td>0.67±0.04</td><td>1.0</td><td>100.0</td></tr><tr><td/><td>1.48±0.01</td><td>1.00</td><td>99.62</td><td>0.70±0.04</td><td>1.93</td><td>45.14</td></tr><tr><td>GD</td><td>1.47±0.02 1.53±0.04</td><td>4.23 4.44</td><td>23.64 22.55</td><td>0.73±0.03 0.68±0.02</td><td>2.01 1.96</td><td>45.84 45.56</td></tr><tr><td/><td>1.45±0.02</td><td>4.31</td><td>23.22</td><td>0.70±0.05</td><td>2.03</td><td>45.36</td></tr><tr><td/><td>1.93±0.09</td><td>22.99</td><td>4.34</td><td>0.83±0.07</td><td>6.77</td><td>12.3</td></tr><tr><td/><td>2.06±0.13</td><td>27.68</td><td>3.61</td><td>0.84±0.05</td><td>8.06</td><td>11.83</td></tr><tr><td>SSL</td><td>2.30±0.09</td><td>39.13</td><td>2.55</td><td>0.97±0.06</td><td>12.74</td><td>10.97</td></tr><tr><td/><td>2.63±0.12</td><td>54.83</td><td>1.82</td><td>1.03±0.05</td><td>20.26</td><td>10.20</td></tr><tr><td/><td>3.52±0.12</td><td>75.69</td><td>1.32</td><td>1.44±0.08</td><td>23.17</td><td>10.09</td></tr><tr><td/><td>1.45±0.02</td><td>8.4</td><td>11.89</td><td>0.68±0.02</td><td>2.92</td><td>17.95</td></tr><tr><td/><td>1.51±0.04</td><td>18.39</td><td>5.43</td><td>0.71±0.01</td><td>4.78</td><td>14.75</td></tr><tr><td>SVD</td><td>1.50±0.04</td><td>14.73</td><td>6.78</td><td>0.72±0.01</td><td>5.17</td><td>14.04</td></tr><tr><td/><td>1.51±0.03</td><td>18.39</td><td>5.43</td><td>0.74±0.04</td><td>4.92</td><td>14.05</td></tr><tr><td/><td>2.75±0.14</td><td>21.44</td><td>4.66</td><td>1.47±0.11</td><td>3.62</td><td>16.38</td></tr><tr><td/><td>1.59±0.03</td><td>18.92</td><td>5.30</td><td>0.70±0.02</td><td>11.41</td><td>6.47</td></tr><tr><td/><td>1.66±0.04</td><td>22.96</td><td>4.37</td><td>0.77±0.01</td><td>11.95</td><td>6.20</td></tr><tr><td>SBP</td><td>1.58±0.06</td><td>30.43</td><td>3.30</td><td>0.81±0.04</td><td>13.73</td><td>5.95</td></tr><tr><td/><td>1.64±0.04</td><td>38.68</td><td>2.60</td><td>0.88±0.06</td><td>15.30</td><td>5.68</td></tr><tr><td/><td>1.68±0.05</td><td>45.78</td><td>2.19</td><td>0.96±0.04</td><td>20.13</td><td>5.18</td></tr><tr><td/><td>1.64±0.03</td><td>16.16</td><td>6.21</td><td>0.70±0.06</td><td>5.23</td><td>9.77</td></tr><tr><td/><td>1.46±0.02</td><td>12.82</td><td>7.82</td><td>0.66±0.03</td><td>4.08</td><td>10.61</td></tr><tr><td>L 0</td><td>1.33±0.03</td><td>9.74</td><td>10.29</td><td>0.62±0.04</td><td>3.42</td><td>11.57</td></tr><tr><td/><td>1.28±0.03</td><td>8.27</td><td>12.10</td><td>0.55±0.05</td><td>3.15</td><td>12.64</td></tr><tr><td/><td>1.27±0.05</td><td>7.57</td><td>13.22</td><td>0.52±0.01</td><td>2.86</td><td>14.08</td></tr><tr><td/><td>1.60±0.05</td><td>33.63</td><td>2.98</td><td>0.67±0.03</td><td>8.46</td><td>8.17</td></tr><tr><td/><td>1.71±0.06</td><td>21.54</td><td>4.65</td><td>0.69±0.05</td><td>7.11</td><td>8.44</td></tr><tr><td>VIB</td><td>1.66±0.05</td><td>20.10</td><td>4.99</td><td>0.66±0.04</td><td>5.80</td><td>8.75</td></tr><tr><td/><td>1.80±0.06</td><td>18.44</td><td>5.43</td><td>0.69±0.04</td><td>5.25</td><td>9.15</td></tr><tr><td/><td>1.68±0.05</td><td>17.10</td><td>5.86</td><td>0.73±0.04</td><td>4.67</td><td>9.68</td></tr><tr><td/><td>1.26±0.04</td><td>13.38</td><td>7.48</td><td>0.59±0.04</td><td>4.55</td><td>9.50</td></tr><tr><td/><td>1.28±0.06</td><td>16.23</td><td>6.18</td><td>0.59±0.04</td><td>5.58</td><td>8.94</td></tr><tr><td>BB</td><td>1.40±0.09</td><td>21.79</td><td>4.60</td><td>0.66±0.03</td><td>7.30</td><td>7.85</td></tr><tr><td/><td>1.49±0.09</td><td>28.28</td><td>3.55</td><td>0.78±0.04</td><td>10.45</td><td>6.60</td></tr><tr><td/><td>1.59±0.07</td><td>33.81</td><td>2.97</td><td>0.86±0.05</td><td>13.77</td><td>5.87</td></tr><tr><td/><td>1.41±0.06</td><td>34.98</td><td>3.00</td><td>0.59±0.02</td><td>4.55</td><td>8.28</td></tr><tr><td/><td>1.40±0.06</td><td>38.75</td><td>2.71</td><td>0.63±0.02</td><td>5.58</td><td>7.83</td></tr><tr><td>DBB</td><td>1.52±0.05</td><td>43.27</td><td>2.42</td><td>0.68±0.01</td><td>7.27</td><td>7.10</td></tr><tr><td/><td>1.59±0.03</td><td>47.07</td><td>2.22</td><td>0.78±0.06</td><td>10.32</td><td>6.32</td></tr><tr><td/><td>1.69±0.03</td><td>52.09</td><td>2.00</td><td>0.86±0.05</td><td>13.53</td><td>5.78</td></tr></table>

Peer review (iclr2020):
The paper proposes a new method for learning to make neural networks sparse by adopting a beta-Bernoulli prior with variational dropout. One motivation for the method is to make the dropout rate dependent on the input, by introducing the input to a layer as a factor in the computation of the Bernoulli parameter for the layer which controls whether some parts of it will get turned off. The motivation for the goal of making neural networks sparse is clear, since it can potentially lead to significant memory and computation savings (although given that hardware architectures typically used for executing neural networks generally expect dense computations, it may be difficult to realize these savings in practice). Furthermore, it*s satisfying to see that the underlying method has a strong probabilistic justification. However, while a significant amount of the paper was devoted to the input-dependent version, it was unclear from the empirical results whether there is much actual advantage to the additional complexity. Empirical validation of the method with experiments on larger datasets such as ImageNet would lend further credence to the viability of the approach. I was also somewhat disappointed to see that in order to actually accomplish the pruning, the method involves a naive approximation (equations 14 and 19). I think an interesting experiment would be to see how the method performs when computing the expectation on equation 13 through empirical samples; given the savings in FLOPs and memory, we could run the network with several samples even without exceeding the original computation budget. Some other design choices (such as the factorization of q, and equation 17) seem somewhat arbitrary, so I would also prefer to see further justification or a sketch/empirical evidence of why alternative methods may not work as well. For the above reasons, I am rating the paper as weak accept. Small note: please use citep and citet (instead of cite, when using natbib) properly throughout the paper so that citations are formatted correctly.