Title: ADAPTIVE NETWORK SPARSIFICATION VIA 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.

1. INTRODUCTION:

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 data and task-dependent 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 known to be 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(1p) 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 regularizations 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 with variational distributions and compute asymptotically unbiased gradients for the binary random variables. Ba et al. 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. Han et al. (2016) proposed a strategy to iteratively prune weak network weights for efficient computations, and Wen et al. 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) . 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 (e.g., the categorical distribution for a classification task). In Bayesian neural networks, the parameter W is treated as a random variable drawn from a pre-specified prior distribution p(W), and the goal of learning 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, by mixing W from p(W|D) as follows:

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), D KL [q(W; φ) 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, namely

EQUATION

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,

EQUATION

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 (6) 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 intermediate units in neural networks. From this connection, we can think of a hierarchical Bayesian model where we place the IBP, or finite-dimensional beta-Bernoulli priors for the binary dropout indicators. We expect that due to the property of the IBP favoring sparse model, 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 assumption makes the posterior inference convenient, but 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. 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. In the main contribution section, we will further explain how we will construct this data-dependent dropout layers in detail.

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 n-th observation 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 of K dimension, and the resulting masked parameter W n for the n-th observation is given as

EQUATION

where W k, ,m is the (k, , m)-th element of W. From now on, with a slight abuse of notation, we denote this binary mask multiplication as

EQUATION

with appropriate sharing of binary mask random variables. The generative process of our Bayesian neural network is then described as

EQUATION

Note the difference between our model and the model in Gal & Ghahramani (2016) . In Gal & Ghahramani (2016) , only Gaussian prior is placed on the parameter W, and the dropout is applied in the variational distribution q(W) to approximate p(W|D). Our model, on the other hand, includes the binary mask z n in the prior, and the posterior for the binary masks should also be approximated.

The goal of the posterior inference is to compute the posterior distribution p(W, Z, π|D), where Z = {z 1 , . . . , z N }. We approximate this posterior with the variational distribution of the form

EQUATION

where we omitted the indices of layers for simplicity. For W, we conduct computationally efficient point-estimate to get the single value W, with the weight-decay regularization arising from the zero-mean Gaussian prior. For π, following Nalisnick & Smyth (2017), we use the Kumaraswamy distribution (Kumaraswamy, 1980) for q(π k ):

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 sampled by reparametrization with continuous relaxation (Maddison et al., 2017; Jang et al., 2017; Gal et al., 2017) ,

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 in closed form 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

p(y * |x * , D, W) = E p(z * ,π,W|D) [p(y * |f (x * ; z * ⊗ W))] ≈ E q(z * ,π) [p(y * |f (x * ; z * ⊗ W))], (17)

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

EQUATION

where 

EQUATION

)

4.2. VARIATIONAL DEPENDENT BETA-BERNOULLI DROPOUT:

Now we describe our Bayesian neural network model with input dependent beta-Bernoulli dropout prior constructed as follows:

EQUATION

Here, x n is the input to the dropout layer. For convolutional layers, we apply the global average pooling to tensors to get vectorized inputs. 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. Rather than adding parameters for fully connected layer, we propose simple yet effective way to generate input-dependent probability, with minimal parameters involved. Specifically, 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 to be learned, and > 0 is some small tolerance to prevent overflow. The parameterization in ( 21) is motivated by the batch normalization (Ioffe & Szegedy, 2015) . The intuition behind this construction is as follows. The inputs after the standardization would approximately be distributed as N (0, 1), and thus would be centered around zero. If we pass them through max( , min(1 -)), most of insignificant dimensions would have probability close to zero. However, some inputs may be important regardless of the significance of current activation. In that case, we expect the corresponding shifting parameter β k to be large. Thus by β = (β 1 , . . . , β K ) 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 distribution on β ∼ 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,

EQUATION

where the first term was described for beta-Bernoulli dropout and the second term can be computed analytically.

The prediction for the novel input x * is similarity done as in the beta-Bernoulli dropout, with the näive approximation for the expectation: where

EQUATION

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 followed a common setting to compare pruning algorithms by using LeNet 500-300, LeNet 5-Caffe2 , and VGG-like (Zagoruyko, 2015) 2018)), and generalized dropout (GD Srinivas & Babu (2016) ). We faithfully tuned 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 pretrained all networks using the standard training procedure before fine-tuning for network sparsification Molchanov et al. (2017) ; Neklyudov et al. (2017) . 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 chose to set the ratio α/K to be small number altogether. In the testing phase, we pruned the neurons/filters whose expected dropout mask probability E q [π k ] are smaller than a filxed threshold 10 -33 . 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 fixed the temperature parameter of concrete distribution τ = 10 -1 and the prior variance of β, ρ = √ 5 for all experiments. 

5.1. EXPERIMENTS ON MNIST DATASET:

We used LeNet 500-300 and LeNet 5-Caffe networks on MNIST for comparison. Following the conventions, we applied dropout to the inputs to the fully connected layers and right after the convolution for the convolutional layers. We report the results with basic settings in Table 1 . Please refer to the appendix where we presented various results to highlight the tradeoff between sparsity and accuracy (Table 3 ). For both neworks, BB and DBB achieved significantly higher accuracy than ther methods. On LeNet-500-300, DBB pruned 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 (Fig. 3 ). Also, we found 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 the appendix for the additional results on LeNet-5-Caffe showing this tendency (Fig. 3 ).

5.2. EXPERIMENTS ON CIFAR-10 AND CIFAR-100 DATASETS:

We compared the pruning algorithms on VGG-like network adapted for CIFAR-10 and CIFAR-100 datasets. Table 2 summarizes the performance of each algorithm on particular setting, where BB and DBB achieved impressive sparsity with significantly improved accuracy. 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 retained similar filters, while instances from different classes retained different filters. Please refer to the appendix, where we presented tradeoff between accuracy and sparsity with various settings (Table 4 ).

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. 

:

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 values such as 10 -2 or 10 -4 , but the difference was insignificant.

Figures and Tables:

Figure 1: An example to show the intuition behind Eq (21). Each block represents a histogram of output distribution. A set of activations (1st block) are standardized (2nd block), and rescaled and shifted (3rd block), and transformed into probabilities (4th block).

networks onMNIST LeCun  et al. (1998), CIFAR-10, and CIFAR-100 datasets(Krizhevsky & Hinton, 2009). We included recent Bayesian pruning methods for a fair comparison: sparse variational dropout (SVDMolchanov et al. (2017)), structured sparsity learning (SSLWen et al. (2016)) and structured Bayesian pruning(SBP Neklyudov et al. (2017)), variational information bottleneck (VIBDai et al. (

Figure 2: Parts of ϕ(x) in 3rd, 8th, 15th layer of VGG network for CIFAR-100, w.r.t. different inputs.

Results for LeNet-500-300 and LeNet5-Caffe on MNIST. Error and Memory are in %.

Table content: <table><tr><td/><td/><td colspan="2">LeNet 500-300</td><td/><td/><td>LeNet5-Caffe</td><td/><td/></tr><tr><td/><td>Error</td><td>Neurons</td><td colspan="2">Speedup Memory</td><td>Error</td><td colspan="3">Neurons/Filters Speedup Memory</td></tr><tr><td>Original</td><td>1.56</td><td>784-500-300</td><td>1.0</td><td>100.0</td><td>0.7</td><td>20-50-800-500</td><td>1.0</td><td>100.0</td></tr><tr><td>SSL</td><td colspan="2">2.30± 0.09 404-32-22</td><td>39.13</td><td>2.55</td><td>0.97 ± 0.06</td><td>6-8-107-10</td><td>12.74</td><td>10.97</td></tr><tr><td colspan="3">SVD 1.50 ± 0.04 532-64-35</td><td>14.73</td><td>6.78</td><td colspan="2">0.72 ± 0.01 10-16-238-29</td><td>5.18</td><td>13.97</td></tr><tr><td>SBP</td><td colspan="2">1.59 ± 0.05 255-100-43</td><td>17.91</td><td>5.57</td><td colspan="2">0.74 ± 0.02 10-18-128-38</td><td>4.81</td><td>13.75</td></tr><tr><td>BB</td><td colspan="2">1.34 ± 0.04 294-110-71</td><td>13.26</td><td>7.52</td><td colspan="2">0.57 ± 0.01 13-25-156-54</td><td>2.94</td><td>16.2</td></tr><tr><td colspan="3">DBB 1.38 ± 0.07 106-56-46</td><td>33.51</td><td>0.98</td><td colspan="2">0.63 ± 0.02 13-24-53-27</td><td>2.95</td><td>14.79</td></tr><tr><td>VIB</td><td colspan="2">1.48 ± 0.07 139-101-28</td><td>31.39</td><td>3.17</td><td colspan="2">0.71 ± 0.02 12-18-82-34</td><td>4.02</td><td>14.35</td></tr><tr><td>GD</td><td colspan="2">1.54 ± 0.04 488-142-136</td><td>6.04</td><td colspan="3">16.54 0.66 ± 0.03 14-29-368-174</td><td>2.36</td><td>28.15</td></tr></table>

Classification accuracy and sparsification performance of various pruning methods on CIFAR-10 and CIFAR-100 datasets. Error and Memory are in %.

Table content: <table><tr><td/><td/><td>CIFAR-10</td><td/><td/></tr><tr><td/><td>Error</td><td>Filters/Neurons</td><td colspan="2">Speedup Memory</td></tr><tr><td>Original</td><td>7.43</td><td>64-64-128-128-256-256-256-512-512-512-512-512-512-512-512</td><td>1.00</td><td>100.0</td></tr><tr><td>SSL</td><td>8.27 ± 0.11</td><td>64</td><td/><td/></tr></table>

Comparision 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>SSL SVD SBP BB DBB VIB GD</td><td>3.52 ± 0.12 2.63 ± 0.12 2.30 ± 0.09 2.06 ± 0.13 1.93 ± 0.09 2.75 ± 0.14 1.51 ± 0.04 1.50 ± 0.04 1.51 ± 0.03 1.45 ± 0.02 1.77 ± 0.04 1.70 ± 0.05 1.59 ± 0.05 1.52 ± 0.03 1.51 ± 0.01 1.60 ± 0.09 1.38 ± 0.04 1.34 ± 0.04 1.34 ± 0.02 1.26 ± 0.03 2.01 ± 0.07 1.50 ± 0.09 1.38 ± 0.07 1.32 ± 0.03 1.26 ± 0.02 2.06 ± 0.07 1.75 ± 0.08 1.48 ± 0.07 1.51 ± 0.09 1.48 ± 0.03 1.66 ± 0.07 1.53 ± 0.05 1.54 ± 0.04 1.50 ± 0.02 1.31 ± 0.05</td><td>75.69 54.83 39.13 27.68 22.99 21.44 18.39 14.73 11.99 8.40 24.81 21.60 17.91 14.76 11.46 30.35 17.24 13.26 10.78 5.08 64.88 43.24 33.51 23.47 5.97 54.50 35.80 31.39 28.57 20.33 10.68 8.02 6.04 4.37 3.18</td><td>1.32 1.82 2.55 3.61 4.34 4.66 5.43 6.78 8.33 11.89 4.01 4.61 5.57 6.75 8.70 3.28 5.78 7.52 9.25 19.68 0.50 0.69 0.98 2.08 14.28 1.82 2.78 3.17 3.48 4.90 9.34 12.44 16.54 22.84 31.42</td><td>1.44 ± 0.08 1.03 ± 0.05 0.97 ± 0.06 0.84 ± 0.05 0.83 ± 0.07 1.47 ± 0.11 0.74 ± 0.04 0.72 ± 0.01 0.71 ± 0.01 0.68 ± 0.02 1.06 ± 0.27 0.79 ± 0.05 0.74 ± 0.02 0.76 ± 0.03 0.73 ± 0.02 0.65 ± 0.03 0.63 ± 0.03 0.57 ± 0.01 0.58 ± 0.04 0.63 ± 0.01 0.77 ± 0.03 0.64 ± 0.02 0.63 ± 0.02 0.60 ± 0.04 0.58 ± 0.01 0.82 ± 0.07 0.77 ± 0.05 0.76 ± 0.02 0.71 ± 0.04 0.65 ± 0.04 0.73 ± 0.03 0.71 ± 0.06 0.66 ± 0.03 0.67 ± 0.01 0.60 ± 0.02</td><td>23.17 20.26 12.74 8.06 6.77 3.62 4.92 5.17 4.78 2.92 26.10 4.81 4.81 4.06 2.89 3.45 3.38 2.94 2.72 2.43 4.11 3.61 2.95 2.8 2.45 4.52 4.17 4.02 3.87 3.23 2.71 2.60 2.36 2.15 1.92</td><td>10.09 10.20 10.97 11.83 12.30 16.38 14.05 14.04 14.75 17.95 10.54 13.51 13.75 14.64 16.94 14.75 14.94 16.2 17.43 36.23 12.75 13.52 14.79 15.21 26.68 13.74 14.00 14.17 14.35 15.31 18.46 22.63 28.15 35.91 65.78</td></tr></table>

Comparision of pruning methods on VGG-like with CIFAR10 and CIFAR100. Error and Memory are in %.

Table content: <table><tr><td/><td colspan="2">VGG-CIFAR10</td><td/><td colspan="2">VGG-CIFAR100</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>SSL SVD SBP BB DBB VIB GD</td><td>9.56 ± 0.09 8.27 ± 0.11 7.32 ± 0.07 7.12 ± 0.16 9.71 ± 0.18 7.85 ± 0.08 7.78 ± 0.01 7.38 ± 0.05 14.68 ± 0.10 7.27 ± 0.06 7.40 ± 0.02 7.40 ± 0.02 7.43 ± 0.11 6.66 ± 0.11 6.61 ± 0.14 6.51 ± 0.06 8.89 ± 0.12 7.03 ± 0.16 6.59 ± 0.07 6.39 ± 0.04 7.87 ± 0.13 7.17 ± 0.06 6.93 ± 0.13 7.11 ± 0.08 8.06 ± 0.12 7.26 ± 0.15 6.98 ± 0.12 6.59 ± 0.09</td><td>2.09 1.67 1.42 1.41 1.41 1.41 1.40 1.40 1.43 1.41 1.40 1.40 1.89 1.49 1.42 1.40 2.36 1.54 1.44 1.42 2.32 1.78 1.45 1.41 1.58 1.41 1.41 1.40</td><td>12.01 14.78 19.04 20.30 18.48 21.18 21.71 22.47 17.72 18.55 21.03 22.54 12.45 16.09 17.79 22.51 8.62 14.08 6.64 22.02 10.42 12.93 16.51 17.77 17.84 20.97 21.55 22.54</td><td>36.27 ± 0.22 32.75 ± 0.16 30.64 ± 0.06 30.45 ± 0.19 34.26 ± 0.19 31.26 ± 0.06 31.31 ± 0.08 31.22 ± 0.06 45.03 ± 1.59 30.56 ± 0.03 30.82 ± 0.02 31.03 ± 0.09 40.13 ± 1.84 29.27 ± 0.27 28.89 ± 0.07 29.68 ± 0.08 40.45± 1.74 28.85± 0.06 28.48± 0.18 28.74± 0.10 31.64 ± 0.33 29.87 ± 0.19 29.90 ± 0.34 30.20 ± 0.18 36.35 ± 0.50 30.54 ± 0.23 29.94 ± 0.10 29.29 ± 0.01</td><td>1.43 1.28 1.25 1.25 1.25 1.25 1.25 1.25 1.27 1.25 1.25 1.25 2.40 1.26 1.25 1.25 2.63 1.29 1.27 1.26 1.65 1.31 1.25 1.25 1.56 1.29 1.25 1.25</td><td>23.21 28.24 34.44 36.14 35.76 36.77 36.89 36.80 31.01 35.74 36.84 36.90 11.26 26.15 29.15 36.90 9.39 22.64 26.93 36.41 17.84 22.74 27.26 31.69 23.93 34.42 36.34 36.90</td></tr></table>

Peer review (iclr2019):
 Summary ------------------ The authors propose a new method to sparsify DNNs based on a dropout induced by a Beta-Bernoulli prior. They further propose a data-dependent dropout by linking the Beta-Bernoulli prevalence to the inputs, achieving a higher sparsification rate. In the experimental section they show that the proposed method achieves better compression rates than other methods in the literature. However, experiments against some recent methods are missing. Also, some additional experiments using data-dependent dropouts not based on the Beta-Bernoulli prior would help to better disentangle the effects of the two contributions of the paper. Overall, the paper is well-written but the mentioning of the IBP is confusing. The authors devote quite a bit of space to the IBP when it is actually not used at all. Detailed comments ------------------------- 1) Introduction The paper is well motivated and the introduction of the paper clearly states the two main contributions of the paper: a Beta-Bernoulli dropout prior and a dependent Beta Bernoulli dropout prior. 2) Background Section 3.1 is a nice summary of variational inference for BNNs. On the other hand, Section 3.2 is misleading. The authors use this section to introduce the IBP process (a generative sequential process to generate samples from a random measure called the Beta-Bernoulli process). However, this is not used in the paper at all. Then they introduce the Beta-Bernoulli prior as a finite Beta-Bernoulli process. I find this quite convoluted. I would suggest to introduce the Beta-Bernoulli distribution as a prior directly, and state that for alpha/K this is a sparse-inducing prior (where the average number of features is given by .frac{.alpha}{1 + .frac{.alpha}{K} ). No need to mention the IBP or the Beta Bernoulli process. 3) Main Contribution I think the design of a link function that allows to implement a data-dependent Beta-Bernoulli dropout is one of the keys of the paper and I would suggest that the author clearly state this contribution at the beginning of the paper. I would also like to see the application of this link-function to other sparsity inducing priors different than the Beta-Bernoulli. This would allow to further understand the data-dependent contribution to the final performance and how transferable this is to other settings. Also, Have the authors try to train the data-dependent Beta-Bernoulli from scratch, i.e. without the two steps approach? I am assuming the performance is worse, but I would publish the results for completeness. 4) Experiments The main issues with the experimental section are: a) I am missing some recent methods (some of them even cited in the related work section): e.g. Louizos et al. (2017). I would be interested in comparisons against the horshoe-prior and a data-dependent version of it. Also, a recent paper based on the variational information bottleneck have been recently published outperforming the state of the art in the field (http://proceedings.mlr.press/v80/dai18d.html). b) Table 1 should report the variance or other uncertainty measure: Given that they run the experiments 5 times, I do not understand why they only report the median. I would encourage the authors to publish the mean and the variance (at least). In addition, one of my main question about the method is, once the network has been sparsified, how does this translate into a real performance improvement (in terms of memory and speed). In term of memory, you can always apply a standard compression algorithm. If the sparsity is about a certain threshold, you can resort to sparse-matrix implementations. However, regarding the speed only when you reach a certain sparsity level you would get a tangible improvement if your DL framework support sparse matrices. However, if you get an sparsity level below this threshold, e.g. 20%, you cannot resort to sparse matrices and therefore you would not get a speed improvement, unless you enforce structure sparsity or you optimize to low-level matrix multiplication routines. Are the Speedup/Memory results reported in Table 1 real or theoretical?