Venue: NeurIPS 2021 Conference

Reviews:

final_score: rating: 6: Marginally above the acceptance threshold
review_content: summary: The paper proposes a particle based inference method that, unlike Deep Ensembles, approximates the Bayesian posterior of a deep neural network. The proposed approaches are variants of Stein Variational Gradient Descent. They employ a repulsive force (in the form of a kernel) that prevents the particles from collapsing into the same mode.

The main contribution of the work is showing that this particle-based training method is equivalent to gradient descent minimizing the KL-divergence of the true posterior and the particle approximation in Wasserstein space.

The paper also presents empirical results. On a 1d synthetic benchmark, it is shown that the proposed methods are able to capture in-between uncertainty. On a 2d synthetic benchmark, it is shown that the uncertainty estimates are akin to that of HMC. On larger, image classification datasets, it is shown that the methods outperform both deep ensembles and svgd.
main_review: ### Quality:

The work is good quality. The theoretical results are convincing and the results are interesting and relevant to researchers working on ensembles. It interprets repulsive ensembles as an approximate particle based inference method by showcasing that the proposed update rules correspond to the gradient flow of the KL-divergence in Wasserstein space. This is very interesting as it allows practitioners to use these particle-based methods with the confidence that they approximate the Bayesian posterior.

The theoretical results are well presented in an organized way. Related works are clearly explained and contrasted.

A shortcoming is that the experiments section has almost no detail on the implementation. Basic information, such as the number of particles used, is missing. I was able to locate some of these in the supplementary material, but I believe they should be in the main text. It would not be possible to replicate these results based on the level of detail given here.

The baseline methods slightly underperform. A ResNet 32 should achieve higher than 85% accuracy on Cifar 10.

* From the experiments in Figure 3, it seems that the weight-space methods are all identical to Deep Ensembles. Is this the case because of the high dimensional weight space? That the distances of the particles are too large to be able to affect each other?

### Novelty:

The paper heavily builds on the results of [1], but formulates the update rules slightly differently. To my knowledge, the theoretical results are also novel, although it is possible that I am unfamiliar with related works.

### Presentation:

The motivation and the narrative are presented very well, but I found parts of the paper difficult to understand. Here are some parts that are unclear to me:

* What form does $k(f_1, f_2)$ take in practice? The RBF kernel is mentioned as an example, but is this the one used in the experiments? Is it computed over a batch of training points? How are the kernel hyperparameters determined?
* How is $\log \pi(f)$ computed? Given a weight-space prior, the prior density is difficult to estimate due to the non-identifiability problem.
* What are the advantages and drawbacks of SGE and SSGE? Does one give a more accurate approximation? Are there computational tradeoffs?

[1] Wang, Ziyu, et al. "Function space particle optimization for Bayesian neural networks.”

limitations_and_societal_impact: They are addressed adequately.
review_title: null

final_score: rating: 7: Good paper, accept
review_content: summary: The paper tackles the problem of building ensemble methods to improve prediction accuracy and uncertainty estimates. The authors propose adding a repulsive term to the gradient update rule for each ensemble element to produce diverse ensembles, and they design repulsive terms for which the empirical distribution over ensemble members converges to the true posterior distribution. Specifically, the authors propose three repulsive terms that arise from three alternative approximations of the gradient of the empirical distribution over ensemble members, and they compare the resulting ensembles with standard deep ensembles in synthetic tasks and image classification tasks. Finally, to account for the fact that different weights can parameterize the same function (and therefore a repulsive term in the weight space may not achieve the desired effect), the authors consider updates (and repulsive terms) in both weight space and function space and compare both approaches in each evaluation task.

The claims are that the proposed approach:
* enables using deep ensembles to perform proper Bayesian inference,
* improves the quality of the uncertainty estimates in synthetic tasks,
* improves OOD detection on image datasets.
main_review: *Significance*: Deep ensemble methods enable improving prediction accuracy as well as producing better-calibrated uncertainty estimates. The paper proposes introducing a kernel-based repulsive term that improves ensemble performance as well as improves the theoretical motivation for the ensemble, therefore I think the paper is relevant and will be impactful for the community.

*Experiments*:
* The synthetic experiments illustrate how the proposed approaches operating in function space can produce better uncertainty estimates than standard ensembles and weight-space methods. Furthermore, the 2D classification experiment also illustrates how the proposed approaches in function space can produce better estimates than f-SVGD in some OOD regions. The synthetic experiments do not generally show significant differences between the three repulsion terms, though SGE-WGD appears to fit the target better in Figure 2.
* The image experiments show that the proposed approaches generally outperform the standard ensembles, although the ranking is not consistent across evaluation tasks/metrics.
* Overall, the empirical evaluation is not very thorough but it supports the claim that the repulsive terms are beneficial. I think that the section could be improved by 1) more analysis or discussion on the potential trade-offs in using each repulsive term so as to provide guidelines for future use, 2) highlighting how the proposed approach does not plateau as discussed in the abstract.

*Clarity*:
* The paper is generally well written. That said, the plots could use a bit more information, e.g. the colors for the densities at the top and right of each plot in Figure 2 are not described, and the captions do not highlight the take-aways.
* Minor: \beta appears only in line 196 and is not described, seems to be equal to the inverse of the normalizing term in eq (16).
limitations_and_societal_impact: The paper proposes a method whose end goal is to improve accuracy and uncertainty prediction across a wide range of machine learning prediction problems. From this perspective, the general benefits and potential negative societal impact of these problems, such as reinforcing certain biases, could be applied here.
review_title: null

final_score: rating: 7: Good paper, accept
review_content: summary: Maintaining functional diversity between ensemble members are a large, and still not completely solved problem. The authors are introducing a kernelized repulsive term to the update rule of an ensemble. They show empirically that this increases the functional diversity between ensemble members. The authors also demonstrate that their improvement translates into a proper Bayesian inference.
main_review: I like the paper. It addresses an important and still unsolved problem of maintaining functional diversity among ensemble members.  I don't have much to critique. I think this is a worthwhile contribution and that it should get published.

QUESTIONS AND SUGGESTIONS:

1) Do we need to train the full ensemble simultaneously? It seems to me that we do. What are the requirements for how simultaneous exactly does the training have to be in order for this method to work?

2) The models you are looking at on CIFAR-10 in Table 1 are surprisingly week, reaching only mid 80s % of test accuracy. It might be a good idea to show that your technique actually works on SOTA-like models. I can imagine that the effect you observe could be a consequences of your models not being trained to their full potential. A CIFAR-100 verification might also be worth adding, given that CIFAR-10 is a relatively simple and small task.

UPDATE AFTER REBUTTAL:
I am happy with the authors' response and will therefore increase my score from 6 to 7.
limitations_and_societal_impact: Yes
review_title: null

final_score: rating: 8: Top 50% of accepted NeurIPS papers, clear accept
review_content: summary: This paper introduces a novel but simple repulsive term to the training objective for deep ensembles which prevents the ensemble members from collapsing to the same point in *function* space. This training procedure is closely related to that of Stein variational gradient descent. Furthermore, the authors show that this repulsive term turns deep ensemble training into approximate Bayesian inference. Finally, the authors demonstrate that this method improves on both SVGD and deep ensembles in a range of benchmark tasks. 
main_review: Overall, I found this to be an interesting and thought-provoking paper which I am glad to have had the chance to review. I believe that this is an important area of research and that this paper could lead to interesting future work (or be otherwise of significance). As far as I can tell the proposed method is sound and well-motivated from multiple perspectives. 

However, while the experimental evaluation is decent, I think there is definitely room for improvement, which I will describe in more detail below. Furthermore, I think that the biggest weakness of the paper is in clarity. I found section 3, and to a lesser extent section 2, difficult to follow. I'll elaborate on the clarity issues below. I also think that the authors should add a discussion of the limitations of their method. For example, it seems to me that one potential issue in this work is that it requires that all of the ensemble members fit in GPU memory in order to do the training efficiently, but perhaps this isn't the case? Similarly, it also seems that the choice of kernel function must matter a lot for the performance of the method, but this isn't discussed. In particular, I am wondering whether a poor choice might lead to worse performance if the repulsive term dominates the training objective (i.e. how much tuning was required to get training to work)?

### Experimental suggestions

The major weakness of the experimental evaluation was the omission of hyper-deep ensembles as a baseline in at least the MNIST and CIFAR10 experiments. The authors do cite this method, but I think that, as a simple to implement and highly performant baseline which also relies on the increased diversity of ensemble members, this is a must-have comparison. 

The other missing ingredient in the experimental sections were some studies to investigate/confirm why/how the proposed method works. For example, it would be interesting to confirm that flipping the sign of the repulsive term does degrade performance as one would expect. It would also be very interesting to see how the LL and repulsive terms evolve during training for a few different datasets. For example, one might imagine that the repulsive term is larger relative to the LL term as training progresses because the ensemble elements might converge to similar functions. 



#### Minor suggestions 

1. In the toy regression plots (fig 1), please show some of the individual functions so that one case see how different the fits are for each ensemble member. 

2. I would also like to see the same toy regression experiments but with a larger more flexible network i.e. a width of 100 rather than 50 and a depth of 3 instead of 2. In my experience standard deep ensembles of this size are able to capture "in-between" uncertainty, so it would be interesting to see what the repulsive term does in this case. 

3. In fig 2, it would be great to have a colour bar to give more context for the uncertainty values. It would also be great to have a larger range so that the behaviour as we ger further away from the training date can be understood better. In particular, it seems like the function space methods will behave nicely but it isn't quite clear given the current range of the plots. 

For the CIFAR10 experiments, it would be interesting to see results using CIFAR100 as the OOD dataset. This is much more challenging than SVHN and might be a case where the functional methods can shine given their potential "distance-aware" behaviour.

4. I would also like to see rejection-classification experiments (see "Uncertainty Estimation Using a Single Deep Deterministic Neural Network" by van Amersfoort et al. for examples).

5. I think table 1 should be split into two. One which compares the various methods for WGD, and one which compares the best WGD method for each dataset to the baselines. Comparing all of the WGD methods to the baselines is a slightly unfair comparison.

### Clarity Issues

Unfortunately, I can't give as many concrete suggestions for how to improve sections 2 and 3. However, at a high level, I would say that while the technical details provided are important, perhaps some of the detail should be moved to the appendix. The space in the main text could be used to help the reader by providing further explanation, discussion, and intuition building. 

Here is a list of specific (but individually minor) difficulties I had when readings these sections, I hope they provide some insight into why I struggled:

1. The symbols $\mathcal{R}$,  $\mathcal{F}$, and $\mathcal{X}$, were never explicitly introduced and their meaning had to be inferred. 

2. In section 3.2, there is a switch from Euclidian space to a Riemannian manifold but it isn't explained why this is done. Some intuition would be very useful.

3. The metric tensor in 3.2 needs more explanation. What is this and why has it been introduced. Some intuition would also be great here.

4. In the equation after line 173 it isn't clear if $rho$ is the same as in Eq. 8. 

5. The definition of the Wasserstein metric is confusing and ultimately unnecessary since it is the same as one would find from a quick Google search. I think it should be removed (or moved to an appendix) to improve the flow of the section.

6. On line 176 it isn't clear why we have an "equivalent of the gradient" and not simply a gradient. 

7. Equation 12 seems to come out of nowhere. Some intuition would be great.

8. Comparing equations 14 and 3 is difficult when they are on different pages, so it would be helpful if the text explicitly compared the repulsive terms. Also, the sentence from line 186 to 189 is too long and should be split into two.

9. Eqn 16 would be more clear if the substitution of the posterior was already made.

10. Is $\beta$ on line 196 simply the denominator of the fraction in Eqn 16?

11. The fact that the true Bayesian posterior is only recovered in the limit as $n \to \infty$ should be mentioned much earlier in the text. 


### Summary

While I enjoyed this paper and hope to see it published, I am unable to give a higher score due to the clarity and experimental issues described above. However, if the authors can make section 3 more approachable, and address my two main experimental concerns, I would be happy to increase my score from 5 to 7 or 8. 


### Post-author response

The authors have addressed the majority of my concerns, have provided additional experimental results (and committed to adding further results in the camera ready), and have also acknowledge and proposed solutions to the issues of clarity. Thus, I am raising my score to 8.

limitations_and_societal_impact: The authors have not gone into much detail about the limitations of their method. As mentioned above it would be great to have a discussion of:
1. Memory requirements for training repulsive ensembles.
2. The importance of the choice of kernel and the general importance of hyperparameter tuning.
review_title: null

Meta-review: In this paper the authors proposed the addition of a repulsive term to the training objective of deep ensembles, based on Stein variational inference.  They show that this turns the standard deep ensemble training into an approximation to the Bayesian posterior.  The reviewers found the proposed method compelling and found the paper to be of high writing and technical quality.  They also found the work timely and that it addresses an important open problem.  Thus the recommendation is to accept.

Decision: Accept (Spotlight)