Title: DEEP CONVOLUTIONAL NETWORKS AS SHALLOW GAUSSIAN PROCESSES

Abstract: We show that the output of a (residual) convolutional neural network (CNN) with an appropriate prior over the weights and biases is a Gaussian process (GP) in the limit of infinitely many convolutional filters, extending similar results for dense networks. For a CNN, the equivalent kernel can be computed exactly and, unlike "deep kernels", has very few parameters: only the hyperparameters of the original CNN. Further, we show that this kernel has two properties that allow it to be computed efficiently; the cost of evaluating the kernel for a pair of images is similar to a single forward pass through the original CNN with only one filter per layer. The kernel equivalent to a 32-layer ResNet obtains 0.84% classification error on MNIST, a new record for GPs with a comparable number of parameters. 1

1. INTRODUCTION:

Convolutional Neural Networks (CNNs) have powerful pattern-recognition capabilities that have recently given dramatic improvements in important tasks such as image classification (Krizhevsky et al., 2012) . However, as CNNs are increasingly being applied in real-world, safety-critical domains, their vulnerability to adversarial examples (Szegedy et al., 2013; Kurakin et al., 2016) , and their poor uncertainty estimates are becoming increasingly problematic. Bayesian inference is a theoretically principled and demonstrably successful (Snoek et al., 2012; Deisenroth & Rasmussen, 2011) framework for learning in the face of uncertainty, which may also help to address the problems of adversarial examples (Gal & Smith, 2018) . Unfortunately, Bayesian inference in CNNs is extremely difficult due to the very large number of parameters, requiring highly approximate factorised variational approximations (Blundell et al., 2015; Gal & Ghahramani, 2015) , or requiring the storage (Lakshminarayanan et al., 2017) of large numbers of posterior samples (Welling & Teh, 2011; Mandt et al., 2017) .

Other methods such as those based on Gaussian Processes (GPs) are more amenable to Bayesian inference, allowing us to compute the posterior uncertainty exactly (Rasmussen & Williams, 2006) . This raises the question of whether it might be possible to combine the pattern-recognition capabilities of CNNs with exact probabilistic computations in GPs. Two such approaches exist in the literature. First, deep convolutional kernels (Wilson et al., 2016) parameterise a GP kernel using the weights and biases of a CNN, which is used to embed the input images into some latent space before computing their similarity. The CNN parameters of the resulting kernel then have to be optimised by gradient descent. However, the large number of kernel parameters in the CNN reintroduces the risk of overconfidence and overfitting. To avoid this risk, we need to infer a posterior over the CNN kernel parameters, which is as difficult as directly inferring a posterior over the parameters of the original CNN. Second, it is possible to define a convolutional GP (van der Wilk et al., 2017) or a deep convolutional GP (Kumar et al., 2018) by defining a GP that takes an image patch as input, and using that GP as a component in a larger CNN-like system. However, inference in such systems is very computationally expensive, at least without the use of potentially severe variational approximations (van der Wilk et al., 2017) .

An alternative approach is suggested by the underlying connection between Bayesian neural networks (NNs) and GPs. In particular, Neal (1996) showed that the function defined by a single-layer fully-connected NN with infinitely many hidden units, and random independent zero-mean weights and biases is equivalent to a GP, implying that we can do exact Bayesian inference in such a NN by working with the equivalent GP. Recently, this result was extended to arbitrarily deep fullyconnected NNs with infinitely many hidden units at each layer (Lee et al., 2017; Matthews et al., 2018a) . However, these fully-connected networks are rarely used in practice, as they are unable to exploit important properties of images such as translational invariance, raising the question of whether state-of-the-art architectures such as CNNs (LeCun et al., 1990) and ResNets (He et al., 2016a) have equivalent GP representations. Here, we answer in the affirmative, giving the GP kernel corresponding to arbitrarily deep CNNs and to (convolutional) residual neural networks (He et al., 2016a) . In this case, if each hidden layer has an infinite number of convolutional filters, the network prior is equivalent to a GP. Furthermore, we show that two properties of the GP kernel induced by a CNN allow it to be computed very efficiently. First, in previous work it was necessary to compute the covariance matrix for the output of a single convolutional filter applied at all possible locations within a single image (van der Wilk et al., 2017) , which was prohibitively computationally expensive. In contrast, under our prior, the downstream weights are independent with zero-mean, which decorrelates the contribution from each location, and implies that it is necessary only to track the patch variances, and not their covariances. Second, while it is still necessary to compute the variance of the output of a convolutional filter applied at all locations within the image, the specific structure of the kernel induced by the CNN means that the variance at every location can be computed simultaneously and efficiently as a convolution.

Finally, we empirically demonstrate the performance increase coming from adding translationinvariant structure to the GP prior. Without computing any gradients, and without augmenting the training set (e.g. using translations), we obtain 0.84% error rate on the MNIST classification benchmark, setting a new record for nonparametric GP-based methods.

2. GP BEHAVIOUR IN A CNN:

For clarity of exposition, we will treat the case of a 2D convolutional NN. The result applies straightforwardly to nD convolutions, dilated convolutions and upconvolutions ("deconvolutions"), since they can be represented as linear transformations with tied coefficients (see Fig. 1 ).

2.1. A 2D CONVOLUTIONAL NETWORK PRIOR:

The network takes an arbitrary input image X of height H (0) and width D (0) , as a C (0) ×(H (0) D (0) ) real matrix. Each row, which we denote x 1 , x 2 , . . . , x C (0) , corresponds to a channel of the image (e.g. C (0) = 3 for RGB), flattened to form a vector. The first activations A (1) (X) are a linear transformation of the inputs. For i ∈ {1, . . . , C (1) }:

a (1) i (X) := b (1) i 1 + C (0) j=1 W (1) i,j x j .

(1)

We consider a network with L hidden layers. The other activations of the network, from A (2) (X) up to A (L+1) (X), are defined recursively: i,j corresponds to applying the filter to the µth convolutional patch of the channel x j .

EQUATION

The activations A ( ) (X) are C ( ) × (H ( ) D ( ) ) matrices. Each row a ( +1) i represents the flattened jth channel of the image that results from applying a convolutional filter to φ(A ( ) (X)).

The structure of the pseudo-weight matrices W ( +1) i,j and biases b ( +1) i , for i ∈ {1, . . . , C ( +1) } and j ∈ {1, . . . , C ( ) }, depends on the architecture. For a convolutional layer, each row of W ( +1) i,j represents a position of the filter, such that the dot product of all the rows with the image vector x j represents applying the convolutional filter U ( +1) i,j to the jth channel. Thus, the elements of each row of W ( +1) i,j are: 0 where the filter does not apply and the corresponding element of U ( +1) i,j where it does, as illustrated in Fig. 1 .

The outputs of the network are the last activations, A (L+1) (X). In the classification or regression setting, the outputs are not spatially extended, so we have H (L+1) = D (L+1) = 1, which is equivalent to a fully-connected output layer. In this case, the pseudo-weights W (L+1) i,j only have one row, and the activations a (L+1) i are single-element vectors.

Finally, we define the prior distribution over functions by making the filters U ( ) i,j and biases b ( ) i be independent Gaussian random variables (RVs). For each layer , channels i, j and locations within the filter x, y:

EQUATION

Note that, to keep the activation variance constant, the weight variance is divided by the number of input channels. The weight variance can also be divided by the number of elements of the filter, which makes it equivalent to the NN weight initialisation scheme introduced by He et al. (2016a).

2.2. ARGUMENT FOR GP BEHAVIOUR:

We follow the proofs by Lee et al. (2017) and Matthews et al. (2018a) to show that the output of the CNN described in the previous section, A (L+1) , defines a GP indexed by the inputs, X. Their proof (Lee et al., 2017) proceeds by applying the multivariate Central Limit Theorem (CLT) to each layer in sequence, i.e. taking the limit as N (1) → ∞, then N (2) → ∞ etc, where N ( ) is the number of hidden units in layer . By analogy, we sequentially apply the multivariate CLT by taking the limit as the number of channels goes to infinity, i.e. C (1) → ∞, then C (2) → ∞ etc. While this is the simplest approach to taking the limits, other potentially more realistic approaches also exist (Matthews et al., 2018a) .

The fundamental quantity we consider is a vector formed by concatenating the feature maps (or equivalently channels), a ( ) j (X) and a ( ) j (X ) from data points X and X , a

( ) i (X, X ) = a ( ) i (X) a ( ) i (X )

.

(4)

This quantity (and the following arguments) can all be extended to the case of countably finite numbers of input points.

Induction base case. For any pair of data points, X and X the feature-maps corresponding to the jth channel, a

(1) j (X, X ) have a multivariate Gaussian joint distribution. This is because each element is a linear combination of shared Gaussian random variables: the biases, b (0) j and the filters, U (0) j,: . Following Eq. (1),

EQUATION

)

where 1 is a vector of all-ones. While the elements within a feature map display strong correlations, different feature maps are independent and identically distributed (iid) conditioned on the data (i.e. a

(1)

i (X, X ) and a

(1)

i (X, X ) are iid for i = i ), because the parameters for different feature-maps (i.e. the biases, b

i and the filters, W

i,: ) are themselves iid.

Induction step. Consider the feature maps at the th layer, a ( ) j (X, X ), to be iid multivariate Gaussian RVs (i.e. for j = j , a ( ) j (X, X ) and a ( ) j (X, X ) are iid). Our goal is to show that, taking the number of channels at layer to infinity (i.e. C ( ) → ∞), the same properties hold at the next layer (i.e. all feature maps, a ( +1) i (X, X ), are iid multivariate Gaussian RVs). Writing eq. ( 2) for two training examples, X and X , we obtain,

EQUATION

We begin by showing that a

( +1) i (X, X ) is a multivariate Gaussian RV. The first term is multi- variate Gaussian, as it is a linear function of b ( +1) i

, which is itself iid Gaussian. We can apply the multivariate CLT to show that the second term is also Gaussian, because, in the limit as C ( ) → ∞, it is the sum of infinitely many iid terms: a ( ) j (X, X ) are iid by assumption, and W ( +1) i,j are iid by definition. Note that the same argument applies to all feature maps jointly, so all elements of A ( +1) (X, X ) (defined by analogy with eq. 4) are jointly multivariate Gaussian.

Following Lee et al. (2017) , to complete the argument, we need to show that the output feature maps are iid, i.e.

a ( +1) i (X, X ) and a ( +1) i (X, X ) are iid for i = i . They are identically distributed, as b ( +1) i and W ( +1) i,j

are iid and φ(a ( ) j (X, X )) is shared. To show that they are independent, remember that a ( +1) i (X, X ) and a ( +1) i (X, X ) are jointly Gaussian, so it is sufficient to show that they are uncorrelated, and we can show that they are uncorrelated because the weights, W ( +1) i,j are independent with zero-mean, eliminating any correlations that might arise through the shared RV, φ(a ( ) j (X, X )). In the appendix, we consider the more complex case where we take limits simultaneously.

3. THE CONVNET AND RESNET KERNELS:

Here we derive a computationally efficient kernel corresponding to the CNN described in the previous section. It is surprising that we can compute the kernel efficiently because the feature maps, a ( ) i (X), display rich covariance structure due to the shared convolutional filter. Computing and representing these covariances would be prohibitively computationally expensive. However, in many cases we only need the variance of the output, e.g. in the case of classification or regression with a final dense layer. It turns out that this propagates backwards through the convolutional network, implying that for every layer, we only need the "diagonal covariance" of the activations: the covariance between the corresponding elements of a ( ) j (X) and a ( )

j (X ) (i.e. diag C a ( ) j (X), a ( ) j (X ) ).

3.1. GP MEAN AND COVARIANCE:

A GP is completely specified by its mean and covariance (kernel) functions. These give the parameters of the joint Gaussian distribution of the RVs indexed by any two inputs, X and X . For the purposes of computing the mean and covariance, it is easiest to consider the network as being written entirely in index notation,

A ( +1) i,µ (X) = b ( +1) i + C ( ) j=1 H ( ) D ( ) ν=1 W ( +1) i,j,µ,ν φ(A ( ) j,ν (X)).

where and + 1 denote the input and output layers respectively, j and i ∈ {1, . . . , C ( +1) } denote the input and output channels, and ν and µ ∈ {1, . . . , H ( +1) D ( +1) } denote the location within the input and output channel or feature-maps.

The mean function is thus easy to compute

E A ( +1) i,µ (X) = E b ( +1) i + C ( ) j=1 H ( ) D ( ) ν=1 E W ( +1) i,j,µ,ν φ(A ( ) j,ν (X)) = 0. as b ( +1) i and W ( +1)

i,j,µ,ν have zero mean, and W ( +1) i,j,ν,µ are independent of the activations at the previous layer, φ(A ( ) j,ν (X)). Now we show that it is possible to efficiently compute the covariance function. This is surprising because for many networks, we need to compute the covariance of activations between all pairs of locations in the feature map (i.e. C A

( +1) i,µ (X), A ( +1)

i,µ (X ) for µ, µ ∈ {1, . . . , H ( +1) D ( +1) }) and this object is extremely high-dimensional, N 2 (H ( +1) D ( +1) ) 2 . However, it turns out that we only need to consider the "diagonal" covariance, (i.e. we only need C A

( +1) i,µ (X), A ( +1) i,µ (X ) for µ ∈ {1, . . . , H ( +1) D ( +1) }), which is a more manageable quantity of size N 2 (H ( +1) D ( +1) ).

This is true at the output layer (L + 1): in order to achieve an output suitable for classification or regression, we use only a single output location H (L+1) = D (L+1) = 1, with a number of "channels" equal to the number of of outputs/classes, so it is only possible to compute the covariance at that single location. We now show that, if we only need the covariance at corresponding locations in the outputs, we only need the covariance at corresponding locations in the inputs, and this requirement propagates backwards through the network.

Formally, as the activations are composed of a sum of terms, their covariance is the sum of the covariances of all those underlying terms,

C A ( +1) i,µ (X), A ( +1) i,µ (X ) = V b ( ) i + C ( ) j=1 C ( ) j =1 H ( ) D ( ) ν=1 H ( ) D ( ) ν =1 C W ( +1) i,j,µ,ν φ(A ( ) j,ν (X)), W ( +1) i,j ,µ,ν φ(A ( ) j ,ν (X )) . (7)

As the terms in the covariance have mean zero, and as the weights and activations from the previous layer are independent,

EQUATION

)

Algorithm 1 The ConvNet kernel k(X, X )

EQUATION

µ (X, X ), and K

(1) µ (X , X ) for µ ∈ {1, . . . , H (1) D (1) }; using Eq. ( 10). 3: for = 1, 2, . . . , L do

4: Compute V ( ) µ (X, X ), V ( ) µ (X, X ) and V ( )

µ (X, X ) for µ ∈ {1, . . . , H ( ) D ( ) }; using Eq. ( 13), or some other nonlinearity. 

EQUATION

K ( +1) µ

(X , X ) for µ ∈ {1, . . . , H ( +1) D ( +1) }; using Eq. ( 11). 6: end for 7: Output the scalar

K (L+1) 1 (X, X ).

The weights are independent for different channels:

W ( +1) i,j and W ( +1) i,j

are iid for j = j , so

E W ( +1) i,j,µ,ν W ( +1) i,j ,µ,ν

= 0 for j = j Further, each row µ of the weight matrices W ( +1) i,j only contains independent variables or zeros (Fig. 1 ), so E W ( +1) i,j,µ,ν W ( +1) i,j ,µ,ν = 0 for ν = ν . Thus, we can eliminate the sums over j and ν :

EQUATION

The µth row of W

( +1) i,j

is zero for indices ν that do not belong to its convolutional patch, so we can restrict the sum over ν to that region. We also define v

(1) g (X, X ), to emphasise that the covariances are independent of the output channel, j. The variance of the first layer is

EQUATION

And we do the same for the other layers,

EQUATION

where

EQUATION

is the covariance of the activations, which is again independent of the channel.

3.2. COVARIANCE OF THE ACTIVITIES:

The elementwise covariance in the right-hand side of Eq. ( 11) can be computed in closed form for many choices of φ if the activations are Gaussian. For each element of the activations, one needs to keep track of the 3 distinct entries of the bivariate covariance matrix between the inputs, K

EQUATION

For example, for the ReLU nonlinearity (φ(x) = max(0, x)), one can adapt Cho & Saul (2009) in the same way as Matthews et al. (2018a, section 3) to obtain

EQUATION

)

where θ

( ) ν = cos -1 K ( ) ν (X, X )/ K ( ) ν (X, X)K ( )

ν (X , X ) .

3.3. EFFICIENCY OF THE CONVNET KERNEL:

We now have all the pieces for computing the kernel, as written in Algorithm 1.

Putting together Eq. ( 11) and Eq. ( 13) gives us the surprising result that the diagonal covariances of the activations at layer + 1 only depend on the diagonal covariances of the activations at layer . This is very important, because it makes the computational cost of the kernel be within a constant factor of the cost of a forward pass for the equivalent CNN with 1 filter per layer.

Thus, the algorithm is more efficient that one would naively think. A priori, one needs to compute the covariance between all the elements of a ( ) j (X) and a ( ) j (X ) combined, yielding a 2H ( ) D ( ) × 2H ( ) D ( ) covariance matrix for every pair of points. Instead, we only need to keep track of a H ( ) D ( ) -dimensional vector per layer and pair of points.

Furthermore, the particular form for the kernel (eq. 1 and eq. 2) implies that the required variances and covariances at all required locations can be computed efficiently as a convolution.

3.4. KERNEL FOR A RESIDUAL CNN:

The induction step in the argument for GP behaviour from Sec. 2.2 depends only on the previous activations being iid Gaussian. Since all the activations are iid Gaussian, we can add skip connections between the activations of different layers while preserving GP behaviour, e.g. A ( +1) and A ( -s) where s is the number of layers that the skip connection spans. If we change the NN recursion (Eq. 2) to

EQUATION

then the kernel recursion (Eq. 11) becomes

EQUATION

)

This way of adding skip connections is equivalent to the "pre-activation" shortcuts described by He et al. (2016b) . Remarkably, the natural way of adding residual connections to NNs is the one that performed best in their empirical evaluations.

4. EXPERIMENTS:

We evaluate our kernel on the MNIST handwritten digit classification task. Classification likelihoods are not conjugate for GPs, so we must make an approximation, and we follow Lee et al. (2017) , in re-framing classification as multi-output regression. Training is exact conjugate likelihood GP regression with noiseless targets Y (Rasmussen & Williams, 2006). First we compute the N ×N kernel matrix K xx , which contains the kernel between every pair of examples. Then we compute K -1 xx Y using a linear system solver. The test set has N T = 10000 examples. We compute the N T × N matrix K x * x , the kernel between each test example and all the training examples. The predictions are given by the row-wise maximum of K x * x K -1 xx Y. For the "ConvNet GP" and "Residual CNN GP", (Table 1 ) we optimise the kernel hyperparameters by random search. We draw M random hyperparameter samples, compute the resulting kernel's performance in the validation set, and pick the highest performing run. The kernel hyperparameters are: σ 2 b , σ 2 w ; the number of layers; the convolution stride, filter sizes and edge behaviour; the nonlinearity (we consider the error function and ReLU); and the frequency of residual skip connections (for Residual CNN GPs). We do not retrain the model on the validation set after choosing hyperparameters. The "ResNet GP" (Table 1 ) is the kernel equivalent to a 32-layer version of the basic residual architecture by He et al. (2016a) . The differences are: an initial 3 × 3 convolutional layer and a final dense layer instead of average pooling. We chose to remove the pooling because computing its output variance requires the off-diagonal elements of the filter covariance, in which case we could not exploit the efficiency gains described in Sec. 3.3.

Method:

We found that the despite it not being optimised, the 32-layer ResNet GP outperformed all other comparable architectures (Table 1 ), including the NNGP in Lee et al. (2017) , which is state-ofthe-art for non-convolutional networks, and convolutional GPs (van der Wilk et al., 2017; Kumar et al., 2018) . That said, our results have not reached state-of-the-art for methods that incorporate a parametric neural network, such as a standard ResNet (Chen et al., 2018) and a Gaussian process with a deep neural network kernel Bradshaw et al. (2017) .

To check whether the GP limit is applicable to relatively small networks used practically (with of the order of 100 channels in the first layers), we randomly sampled 10, 000 32-layer ResNets, with 3, 10, 30 and 100 channels in the first layers, and, following the usual practice for ResNets we increase the number the number of hidden units when we downsample the feature maps. The probability density plots show a good match around 100 channels (Fig. 2A ), which matches a more sensitive graphical procedure based on quantile-quantile plots (Fig. 2B ). Notably, even for only 30 channels, the moments match closely (Fig. 2C ). For comparison, typical ResNets use from 64 (He et al., 2016a ) to 192 (Zagoruyko & Komodakis, 2016 ) channels in their first layers. We believe that this is because the moment propagation equations only require the Gaussianity assumption for propagation through the relu, and presumably this is robust to non-Gaussian input activations.

Computational efficiency. Asymptotically, computing the kernel matrix takes O(N 2 LD) time, where L is the number of layers in the network and D is the dimensionality of the input, and inverting the kernel matrix takes O(N 3 ). As such, we expect that for very large datasets, inverting the kernel matrix will dominate the computation time. However, on MNIST, N 3 is only around a factor of 10 larger than N 2 LD. In practice, we found that it was more expensive to compute the kernel matrix than to invert it. For the ResNet kernel, the most expensive, computing K xx , and K xx * for validation and test took 3h 40min on two Tesla P100 GPUs. In contrast, inverting K xx and computing validation and test performance took 43.25 ± 8.8 seconds on a single Tesla P100 GPU.

5 RELATED WORK Van der Wilk et al. (van der Wilk et al., 2017) also adapted GPs to image classification. They defined a prior on functions f that takes an image and outputs a scalar. First, draw a function g ∼ GP(0, k p (X, X )). Then, f is the sum of the output of g applied to each of the convolutional patches. Their approach is also inspired by convolutional NNs, but their kernel k p is applied to all pairs of patches of X and X . This makes their convolutional kernel expensive to evaluate, requiring -4 0 4 sampled q.

-4 0 4 limiting q.

-4 0 4 -4 0 4 limiting q.

-4 0 4 -4 0 4 limiting q.

-4 inter-domain inducing point approximations to remain tractable. The kernels in this work, directly motivated by the infinite-filter limit of a CNN, only apply something like k p to the corresponding pairs of patches within X and X (Eq. 10). As such, the CNN kernels are cheaper to compute and exhibit superior performance (Table 1 ), despite the use of an approximate likelihood function. Kumar et al. (2018) define a prior over functions by stacking several GPs with van der Wilk's convolutional kernel, forming a "Deep GP" (Damianou & Lawrence, 2013) . In contrast, the kernel in this paper confines all hierarchy to the definition of the kernel, and the resulting GPs is shallow. 2017) improved deep kernel learning. The inputs to a classic GP kernel k (e.g. RBF) are preprocessed by applying a feature extractor g (a deep NN) prior to computing the kernel: k deep (X, X ) := k(g(X; θ), g(X , θ)). The NN parameters are optimised by gradient ascent using the likelihood as the objective, as in standard GP kernel learning (Rasmussen & Williams, 2006, Chapter 5) . Since deep kernel learning incorporates a state-of-the-art NN with over 10 6 parameters, we expect it to perform similarly to a NN applied directly to the task of image classification. At present both CNNs and deep kernel learning display superior performance to the GP kernels in this work. However, the kernels defined here have far fewer parameters (around 10, compared to their 10 6 ). Borovykh (2018) also suggests that a CNN exhibits GP behaviour. However, they take the infinite limit with respect to the filter size, not the number of filters. Thus, their infinite network is inapplicable to real data which is always of finite dimension.

0 4 0 1 2 limiting cov.

Finally, there is a series of papers analysing the mean-field behaviour of deep NNs and CNNs which aims to find good random initializations, i.e. those that do not exhibit vanishing or exploding gradients or activations (Schoenholz et al., 2016; Yang & Schoenholz, 2017) . Apart from their very different focus, the key difference to our work is that they compute the variance for a single training-example, whereas to obtain the GPs kernel, we additionally need to compute the output covariances for different training/test examples (Xiao et al., 2018) .

6. CONCLUSIONS AND FUTURE WORK:

We have shown that deep Bayesian CNNs with infinitely many filters are equivalent to a GP with a recursive kernel. We also derived the kernel for the GP equivalent to a CNN, and showed that, in handwritten digit classification, it outperforms all previous GP approaches that do not incorporate a parametric NN into the kernel. Given that most state-of-the-art neural networks incorporate structure (convolutional or otherwise) into their architecture, the equivalence between CNNs and GPs is potentially of considerable practical relevance. In particular, we hope to apply GP CNNs in domains as widespread as adversarial examples, lifelong learning and k-shot learning, and we hope to improve them by developing efficient multi-layered inducing point approximation schemes. 

7. APPENDIX:



7.1. TECHNICAL NOTES ON LIMITS:

The key technical issues in the proof (and the key differences between Lee et al. 2017 and Matthews et al. 2018b ) arise from exactly how and where we take limits. In particular, consider the activations as being functions of the activities at the previous layer,

EQUATION

Now, there are two approaches to taking limits. First, both our argument in the main text, and the argument in Lee et al. (2017) is valid if we are able to take limits "inside" the network, A

L = lim

EQUATION

)

However, Matthews et al. (2018a; b) argue that is preferable to take limits "outside" the network. In particular, Matthews et al. (2018b) take the limit with all layers simultaneously, A

EQUATION

where C ( ) = C ( ) (n) goes to infinity as n → ∞. That said, similar technical issues arise if we take limits in sequence, but outside the network.

7.2. EXTENDING THE DERIVATIONS OF MATTHEWS ET AL. (2018B) TO THE CONVOLUTIONAL CASE:

In the main text, we follow Lee et al. (2017) in sequentially taking the limit of each layer to infinity (i.e. C (1) → ∞, then C (2) → ∞ etc.). This dramatically simplified the argument, because taking the number of units in the previous layer to infinity means that the inputs from that layer are exactly Gaussian distributed. However, Matthews et al. (2018b) argue that the more practically relevant limit is where we take all layers to infinity simultaneously. This raises considerable additional difficulties, because we must reason about convergence in the case where the previous layer is finite. Note that this section is not intended to stand independently: it is intended to be read alongside Matthews et al.

(2018b), and we use several of their results without proof.

Mirroring Definition 3 in Matthews et al. (2018b), we begin by choosing a set of "width" functions, C ( ) (n), for ∈ {1, . . . , L} which all approach infinity as n → ∞. In Matthews et al. (2018b), these functions described the number of hidden units in each layer, whereas here they describe the number of channels. Our goal is then to extend the proofs in Matthews et al. (2018b) (in particular, of theorem 4), to show that the output of our convolutional networks converge in distribution to a Gaussian process as n → ∞, with mean zero and covariance given by the recursion in Eqs. (10 -12).

The proof in Matthews et al. (2018b) has three main steps. First, they use the Cramér-Wold device, to reduce the full problem to that of proving convergence of scalar random variables to a Gaussian with specified variance. Second, if the previous layers have finite numbers of channels, then the channels a ( ) j (X) and a ( ) j (X ) are uncorrelated but no longer independent, so we cannot apply the CLT directly, as we did in the main text. Instead, they write the activations as a sum of exchangeable random variables, and derive an adapted CLT for exchangeable (rather than independent) random variables (Blum et al., 1958) . Third, they show that moment conditions required by their exchangeable CLT are satisfied.

To extend their proofs to the convolutional case, we begin by defining our networks in a form that is easier to manipulate and as close as possible to Eq. (21-23) in Matthews et al. (2018b) ,

EQUATION

A ( +1) i,µ = f ( +1) i,µ (x) = σ w C ( ) (n) C ( ) (n) j=1 ν∈µth patch ( +1) i,j,µ,ν g ( ) j,ν (x) + b ( +1) i , i ∈ N (21)

where, i,j,µ,ν ∼ N (0, 1).

The first step is to use the Cramér-Wold device (Lemma 6 in Matthews et al., 2018b) , which indicates that convergence in distribution of a sequence of finite-dimensional vectors is equivalent to convergence on all possible linear projections to the corresponding real-valued random variable. Mirroring Eq. 25 in Matthews et al. (2018b), we consider convergence of random vectors, f

EQUATION

)

where L ⊂ X × N × {1, . . . , H ( ) D ( ) } is a finite set of tuples of data points and channel indicies, i, and indicies of elements within channels/feature maps, µ. The suffix [n] indicates width functions that are instantiated with input, n. Now, we must prove that these projections converge in distribution a Gaussian. We begin by defining summands, as in Eq. 26 in Matthews et al.

EQUATION

such that the projections can be written as a sum of the summands, exactly as in Eq. 27 in Matthews et al. (2018b),

EQUATION

Now we can apply the exchangeable CLT to prove that T ( ) (L, α) [n] converges to the limiting Gaussian implied by the recursions in the main text. To apply the exchangeable CLT, the first step is to mirror Lemma 8 in Matthews et al. (2018b) , in showing that for each fixed n and ∈ {2, . . . , L + 1}, the summands, γ ( ) j (L, α) [n] are exchangeable with respect to the index j. In particular, we apply de Finetti's theorem, which states that a sequence of random variables is exchangeable if and only if they are i.i.d. conditional on some set of random variables, so it is sufficient to exhibit such a set of random variables. Mirroring Eq. 29 in Matthews et al. (2018b) , we apply the recursion, 

:

Code to replicate this paper is available at https://github.com/convnets-as-gps/convnets-as-gps

Figures and Tables:

Figure 1: The 2D convolution U (0) i,j * x j as the dot product W (0) i,j x j . The blank elements of W (0) i,j

5

The training set is split into N = 50000 training and 10000 validation examples. The regression targets Y ∈ {-1, 1} N ×10 are a one-hot encoding of the example's class: y n,c = 1 if the nth example belongs to class c, and -1 otherwise.

Figure 2: Comparison of the infinite limit, and outputs from finite 32-layer ResNets with 3, 10, 30, and 100 channels in their first layers. A Comparison of the empirical and limiting probability densities. B A more sensitive test of Gaussianity is a quantile-quantile plot, which shows converges with 100 channels. C The moments (variances and covariances) for 100 training inputs shows gives a match for all numbers of channels.

Wilson et al. (2016) introduced and Bradshaw et al. (

the summands are iid conditional on the finite set of random variables g ( -2) k,ξ (x)[n]  : k ∈ {1, . . . , C( -2) }, ξ ∈ {1, . . . , H ( -2) D ( -2) }, x ∈ L X , where L X is the set of input points in L.The exchangeable CLT inLemma 10 in Matthews et al. (2018b) indicates that T ( ) (L, α) [n] converges in distribution to N 0, σ 2 * if the summands are exchangeable (which we showed above), and if three conditions hold, a) E n γ Condition a) follows immediately as the summands are uncorrelated and zero-mean. Conditions b) and c) are more involved as convergence in distribution in the previous layers does not imply convergence in moments for our activation functions. We begin by considering the extension of Lemma 20 in Matthews et al. (2018b), which allow us to show conditions b) and c) above, even in the case of unbounded but linearly enveloped nonlinearities (Definition 1 in Matthews et al., 2018b). Lemma 20 states that the eighth moments of f (t) i,µ (x)[n] are bounded by a finite constant independent of n ∈ N. We prove this by induction. The base case is trivial, as f (1) j,µ (x)[n] is Gaussian. Following Matthews et al. (2018b), assume the condition holds up to -1, and show that the condition holds for layer . Using Eq. (21), we can bound the activations at layer , 48 in Matthews et al. (2018b), which uses Lemma 19 in Matthews et al. (2018b), we have, ..,C ( -1) (n)},ν∈µth patch (x)[n] is the set of post-nonlinearities corresponding to j ∈ {1, . . . , C ( -1) (n)} and ν ∈ µth patch. Following Matthews et al. (2018b), observe that,

MNIST classification results. #samples gives the number of kernels that were randomly sampled for the hyperparameter search. "ConvNet GP" and "Residual CNN GP" are random CNN architectures with a fixed filter size, whereas "ResNet GP" is a slight modification of the architecture byHe et al. (2016b). Entries labelled "SGD" used stochastic gradient descent for tuning hyperparameters, by maximising the likelihood of the training set. The last two methods use parametric neural networks. The hyperparameters of the ResNet GP were not optimised (they were fixed based on the architecture fromHe et al., 2016b).

Table content: <table><tr><td>#samples Validation error Test error</td></tr></table>

Max Welling and Yee W Teh. Bayesian learning via stochastic gradient langevin dynamics. In Proceedings of the 28th International Conference on Machine Learning (ICML-11), pp. 681-688, 2011. Andrew Gordon Wilson, Zhiting Hu, Ruslan Salakhutdinov, and Eric P. Xing. Deep kernel learning. In Arthur Gretton and Christian C. Robert (eds.), Proceedings of the 19th International Conference on Artificial Intelligence and Statistics, volume 51 of Proceedings of Machine Learning Research, pp. 370-378, Cadiz, Spain, 09-11 May 2016. PMLR. URL http: //proceedings.mlr.press/v51/wilson16.html.

Table content: <table><tr><td colspan="3">Lechao Xiao, Yasaman Bahri, Jascha Sohl-Dickstein, Samuel S Schoenholz, and Jeffrey Penning-</td></tr><tr><td colspan="3">ton. Dynamical isometry and a mean field theory of cnns: How to train 10,000-layer vanilla</td></tr><tr><td colspan="2">convolutional neural networks. arXiv preprint arXiv:1806.05393, 2018.</td><td/></tr><tr><td colspan="3">Ge Yang and Samuel Schoenholz. Mean field residual networks: On the edge of chaos. In Advances</td></tr><tr><td colspan="2">in neural information processing systems, pp. 7103-7114, 2017.</td><td/></tr><tr><td>Sergey Zagoruyko and Nikos Komodakis.</td><td>Wide residual networks.</td><td>arXiv preprint</td></tr><tr><td>arXiv:1605.07146, 2016.</td><td/><td/></tr></table>

Peer review (iclr2019):
 This paper 1) extends an argument for the GP behaviour of deep, infinitely-wide fully-connected networks to convolutional and residual deep neural networks with infinitely many channels and 2) provides a computationally tractable approach to compute the corresponding GP kernel. This kernel has few hyper-parameters, and achieves state-of-the-art results on the MNIST dataset. While point (1) is a relatively straightforward adaptation of Lee et. al (2017) and Matthews et al. (2018) to a different network structure, point (2) is original and non-trivial. All in all, I think this paper makes a significant contribution that I believe will spark interesting follow-up work (hinted at in the last section of the paper). Questions: - In my understanding, the kernels of Section 3 do not require the weight matrices W to share the same values across rows. Accordingly, their performance cannot necessarily be explained by properties of convolutional filters (in particular translation invariance). Can the authors comment on that? - What would be the performance of a parametric CNN trained with SGD that matches the architecture (# layers) & the squared loss function of ResNet GP? The only point of comparison is Chen & al. (2018), which I suppose optimizes a log loss? Specifically, I would like to understand the impact of the loss function and of the number of layers on the relative performance of the two approaches. The paper is clear and easy to follow. A few suggestions: - I recommend turning the argument in section 2.2 into a formal, self-contained theorem that states a result on A_L, defined in eq. 17 (which I would move to the main text). This would make the precise claim easier to understand. - I suggest including a more thorough discussion of the results. Table 1 is only introduced in the related work section. - If space is a concern, I would move part of Section 2.2 outside of the main text, since it mostly follows Lee et al. & Matthews et al Small questions/comments: - Eqs 1 and 2: b_j should be multiplied by the all-ones vector, just like in (5) and (6). - Below eq. 5: "while the *elements of the* feature maps themselves display..." - Paragraph above eq. 7: "in order to achieve an output suitable for *binary* classification or *univariate* regression" - Paragraph above eq. 7: "if we only need the covariance at *certain* locations in the outputs..." - Algorithm 1: you might want to add a loop over g for clarity