From 93ffde18f635cf7d310277f7b83675de1bbafa59 Mon Sep 17 00:00:00 2001 From: Eduardo Cueto Mendoza Date: Fri, 7 Aug 2020 13:58:04 -0600 Subject: [PATCH] Added new revisions to corpus --- Corpus/CORPUS.txt | 2188 +++++++++++++++++ ...DEEP DOUBLE DESCENT - Preetum Nakkiran.txt | Bin 68456 -> 0 bytes ...esidual Learning for Image Recognition.txt | Bin 73762 -> 0 bytes ... Deep Learning Tasks and Architectures.txt | 1161 --------- ...cient Behavior of Small-World Networks.txt | Bin 26573 -> 0 bytes ...Neural Networks- A Tutorial and Survey.txt | Bin 220829 -> 198887 bytes 6 files changed, 2188 insertions(+), 1161 deletions(-) delete mode 100644 Corpus/DEEP DOUBLE DESCENT - Preetum Nakkiran.txt delete mode 100644 Corpus/Deep Residual Learning for Image Recognition.txt delete mode 100644 Corpus/Direct Feedback Alignment Scales toModern Deep Learning Tasks and Architectures.txt delete mode 100644 Corpus/Efficient Behavior of Small-World Networks.txt diff --git a/Corpus/CORPUS.txt b/Corpus/CORPUS.txt index 23fb525..b7e7925 100644 --- a/Corpus/CORPUS.txt +++ b/Corpus/CORPUS.txt @@ -6598,4 +6598,2192 @@ D. Anguelov, D. Erhan, V. Vanhoucke, and A. Rabinovich. Going deeper with convol multiplications consume2xenergy than sparse ones because it is accelerated with multi-threading. <> +<> <> <> + + +<> <> <> + DEEP DOUBLE DESCENT: WHERE BIGGER MODELS AND MORE DATA HURT + + Preetum Nakkiran Gal Kaplun y Yamini Bansal y Tristan Yang + Harvard University Harvard University Harvard University Harvard University + + Boaz Barak Ilya Sutskever + Harvard University OpenAI + + + ABSTRACT + + We show that a variety of modern deep learning tasks exhibit a “double-descent” + phenomenon where, as we increase model size, performance first gets worse and + then gets better. Moreover, we show that double descent occurs not just as a + function of model size, but also as a function of the number of training epochs. + We unify the above phenomena by defining a new complexity measure we call + the effective model complexity and conjecture a generalized double descent with + respect to this measure. Furthermore, our notion of model complexity allows us to + identify certain regimes where increasing (even quadrupling) the number of train + samples actually hurts test performance. + + + 1 INTRODUCTION + + <
> + + Figure 1:Left:Train and test error as a function of model size, for ResNet18s of varying width + on CIFAR-10 with 15% label noise.Right:Test error, shown for varying train epochs. All models + trained using Adam for 4K epochs. The largest model (width64) corresponds to standard ResNet18. + + + The bias-variance trade-off is a fundamental concept in classical statistical learning theory (e.g., + Hastie et al. (2005)). The idea is that models of higher complexity have lower bias but higher vari- + ance. According to this theory, once model complexity passes a certain threshold, models “overfit” + with the variance term dominating the test error, and hence from this point onward, increasing model + complexity will only decrease performance (i.e., increase test error). Hence conventional wisdom + in classical statistics is that, once we pass a certain threshold,“larger models are worse.” + However, modern neural networks exhibit no such phenomenon. Such networks have millions of + parameters, more than enough to fit even random labels (Zhang et al. (2016)), and yet they perform + much better on many tasks than smaller models. Indeed, conventional wisdom among practitioners + is that“larger models are better’’ (Krizhevsky et al. (2012), Huang et al. (2018), Szegedy et al. + + <
> + + Figure 2:Left:Test error as a function of model size and train epochs. The horizontal line corre- + sponds to model-wise double descent–varying model size while training for as long as possible. The + vertical line corresponds to epoch-wise double descent, with test error undergoing double-descent + as train time increases.RightTrain error of the corresponding models. All models are Resnet18s + trained on CIFAR-10 with 15% label noise, data-augmentation, and Adam for up to 4K epochs. + + + (2015), Radford et al. (2019)). The effect of training time on test performance is also up for debate. + In some settings, “early stopping” improves test performance, while in other settings training neu- + ral networks to zero training error only improves performance. Finally, if there is one thing both + classical statisticians and deep learning practitioners agree on is“more data is always better”. + In this paper, we present empirical evidence that both reconcile and challenge some of the above + “conventional wisdoms.” We show that many deep learning settings have two different regimes. + In the under-parameterized regime, where the model complexity is small compared to the number + of samples, the test error as a function of model complexity follows the U-like behavior predicted + by the classical bias/variance tradeoff. However, once model complexity is sufficiently large to + interpolate i.e., achieve (close to) zero training error, then increasing complexity only decreases test + error, following the modern intuition of “bigger models are better”. Similar behavior was previously + observed in Opper (1995; 2001), Advani & Saxe (2017), Spigler et al. (2018), and Geiger et al. + (2019b). This phenomenon was first postulated in generality by Belkin et al. (2018) who named + it “double descent”, and demonstrated it for decision trees, random features, and 2-layer neural + networks with‘2 loss, on a variety of learning tasks including MNIST and CIFAR-10. + + + Main contributions. We show that double descent is a robust phenomenon that occurs in a variety + of tasks, architectures, and optimization methods (see Figure 1 and Section 5; our experiments are + summarized in Table A). Moreover, we propose a much more general notion of “double descent” + that goes beyond varying the number of parameters. We define the effective model complexity (EMC) + of a training procedure as the maximum number of samples on which it can achieve close to zero + training error. The EMC depends not just on the data distribution and the architecture of the classifier + but also on the training procedure—and in particular increasing training time will increase the EMC. + We hypothesize that for many natural models and learning algorithms, double descent occurs as a + function of the EMC. Indeed we observe “epoch-wise double descent” when we keep the model fixed + and increase the training time, with performance following a classical U-like curve in the underfitting + stage (when the EMC is smaller than the number of samples) and then improving with training time + once the EMC is sufficiently larger than the number of samples (see Figure 2). As a corollary, early + stopping only helps in the relatively narrow parameter regime of critically parameterized models. + + + Sample non-monotonicity. Finally, our results shed light on test performance as a function of + the number of train samples. Since the test error peaks around the point where EMC matches the + number of samples (the transition from the under- to over-parameterization), increasing the number + of samples has the effect of shifting this peak to the right. While in most settings increasing the + number of samples decreases error, this shifting effect can sometimes result in a setting wheremore + data is worse!For example, Figure 3 demonstrates cases in which increasing the number of samples + by a factor of4:5results in worse test performance. + + Figure 3: Test loss (per-token perplexity) as a + function of Transformer model size (embed- + ding dimension d model) on language trans- + <
> lation (IWSLT‘14 German-to-English). The + curve for 18k samples is generally lower than + the one for 4k samples, but also shifted to + the right, since fitting 18k samples requires + a larger model. Thus, for some models, the + performance for 18k samples is worse than + for 4k samples. + + + + 2 OUR RESULTS + + To state our hypothesis more precisely, we define the notion of effective model complexity. We define + a training procedure T to be any procedure that takes as input a set <> + of labeled training samples and outputs a classifier <> mapping data to labels. We define the + effective model complexity of T (w.r.t. distributionD) to be the maximum number of samples non + which T achieves on average <> training error. + + Definition 1 (Effective Model Complexity)TheEffective Model Complexity(EMC) of a training + procedureT, with respect to distribution D and parameter <>, is defined as: + + <> + + whereError <> is the mean error of modelMon train samplesS. + + Our main hypothesis can be informally stated as follows: + + Hypothesis 1 (Generalized Double Descent hypothesis, informal)For any natural data distribu- + tion D, neural-network-based training procedureT, and small <>, if we consider the task of + predicting labels based on n samples from D then: + + Under-parametrized regime.If <> is sufficiently smaller than n, any perturbation of T + that increases its effective complexity will decrease the test error. + Over-parameterized regime.If <> is sufficiently larger than n, any perturbation of T + that increases its effective complexity will decrease the test error. + Critically parameterized regime.If <>, then a perturbation of T that increases its + effective complexity might decrease or increase the test error. + + Hypothesis 1 is informal in several ways. We do not have a principled way to choose the parameter + <> (and currently heuristically use <>). We also are yet to have a formal specification for + “sufficiently smaller” and “sufficiently larger”. Our experiments suggest that there is a critical + interval around the interpolation threshold when <>: below and above this interval + increasing complexity helps performance, while within this interval it may hurt performance. The + width of the critical interval depends on both the distribution and the training procedure in ways we + do not yet completely understand. + + We believe Hypothesis 1 sheds light on the interaction between optimization algorithms, model size, + and test performance and helps reconcile some of the competing intuitions about them. The main + result of this paper is an experimental validation of Hypothesis 1 under a variety of settings, where + we considered several natural choices of datasets, architectures, and optimization algorithms, and + we changed the “interpolation threshold” by varying the number of model parameters, the length of + training, the amount of label noise in the distribution, and the number of train samples. + Model-wise Double Descent.In Section 5, we study the test error of models of increasing size, + for a fixed large number of optimization steps. We show that “model-wise double-descent” occurs + for various modern datasets (CIFAR-10, CIFAR-100, IWSLT‘14 de-en, with varying amounts of + label noise), model architectures (CNNs, ResNets, Transformers), optimizers (SGD, Adam), number + of train samples, and training procedures (data-augmentation, and regularization). Moreover, the + peak in test error systematically occurs at the interpolation threshold. In particular, we demonstrate + realistic settings in which bigger models are worse. + + Epoch-wise Double Descent.In Section 6, we study the test error of a fixed, large architecture over + the course of training. We demonstrate, in similar settings as above, a corresponding peak in test + performance when models are trained just long enough to reach <> train error. The test error of a + large model first decreases (at the beginning of training), then increases (around the critical regime), + then decreases once more (at the end of training)—that is,training longer can correct overfitting. + Sample-wise Non-monotonicity.In Section 7, we study the test error of a fixed model and training + procedure, for varying number of train samples. Consistent with our generalized double-descent + hypothesis, we observe distinct test behavior in the “critical regime”, when the number of samples + is near the maximum that the model can fit. This often manifests as a long plateau region, in which + taking significantly more data might not help when training to completion (as is the case for CNNs on + CIFAR-10). Moreover, we show settings (Transformers on IWSLT‘14 en-de), where this manifests + as a peak—and for a fixed architecture and training procedure,more data actually hurts. + Remarks on Label Noise.We observe all forms of double descent most strongly in settings with + label noise in the train set (as is often the case when collecting train data in the real-world). How- + ever, we also show several realistic settings with a test-error peak even without label noise: ResNets + (Figure 4a) and CNNs (Figure 20) on CIFAR-100; Transformers on IWSLT‘14 (Figure 8). More- + over, all our experiments demonstrate distinctly different test behavior in the critical regime— often + manifesting as a “plateau” in the test error in the noiseless case which develops into a peak with + added label noise. See Section 8 for further discussion. + + 3 RELATED WORK + + Model-wise double descent was first proposed as a general phenomenon by Belkin et al. (2018). + Similar behavior had been observed in Opper (1995; 2001), Advani & Saxe (2017), Spigler et al. + (2018), and Geiger et al. (2019b). Subsequently, there has been a large body of work studying the + double descent phenomenon. A growing list of papers that theoretically analyze it in the tractable + setting of linear least squares regression includes Belkin et al. (2019); Hastie et al. (2019); Bartlett + et al. (2019); Muthukumar et al. (2019); Bibas et al. (2019); Mitra (2019); Mei & Montanari (2019). + Moreover, Geiger et al. (2019a) provide preliminary results for model-wise double descent in con- + volutional networks trained on CIFAR-10. Our work differs from the above papers in two crucial + aspects: First, we extend the idea of double-descent beyond the number of parameters to incorpo- + rate the training procedure under a unified notion of “Effective Model Complexity”, leading to novel + insights like epoch-wise double descent and sample non-monotonicity. The notion that increasing + train time corresponds to increasing complexity was also presented in Nakkiran et al. (2019). Sec- + ond, we provide an extensive and rigorous demonstration of double-descent for modern practices + spanning a variety of architectures, datasets optimization procedures. An extended discussion of the + related work is provided in Appendix C. + + 4 EXPERIMENTAL SETUP + + We briefly describe the experimental setup here; full details are in Appendix B1. We consider three + families of architectures: ResNets, standard CNNs, and Transformers.ResNets:We parameterize + a family of ResNet18s (He et al. (2016)) by scaling the width (number of filters) of convolutional + layers. Specifically, we use layer widths [k;2k;4k;8k] for varying k. The standard ResNet18 + corresponds tok= 64. Standard CNNs:We consider a simple family of 5-layer CNNs, with + 4 convolutional layers of widths [k;2k;4k;8k] for varying k, and a fully-connected layer. For + context, the CNN with width k=64, can reach over 90% test accuracy on CIFAR-10 with data- + augmentation.Transformers:We consider the 6 layer encoder-decoder from Vaswani et al. (2017), + as implemented by Ott et al. (2019). We scale the size of the network by modifying the embedding + dimension d model , and setting the width of the fully-connected layers proportionally (<>). + + The raw data from our experiments are available at: https://gitlab.com/harvard-machine-learning/double-descent/tree/master + + For ResNets and CNNs, we train with cross-entropy loss, and the following optimizers: (1) Adam + with learning-rate0:0001for 4K epochs; (2) SGD with learning rate/p1 for 500K gradient steps. T We train Transformers for 80K gradient steps, with 10% label smoothing and no drop-out. + + Label Noise. In our experiments, label noise of probability prefers to training on a samples which + have the correct label with probability (<>), and a uniformly random incorrect label otherwise + (label noise is sampled only once and not per epoch). Figure 1 plots test error on the noisy distribu- + tion, while the remaining figures plot test error with respect to the clean distribution (the two curves + are just linear rescaling of one another). + + 5 MODEL-WISE DOUBLE DESCENT + + <
> + + Figure 4:Model-wise double descent for ResNet18s.Trained on CIFAR-100 and CIFAR-10, with + varying label noise. Optimized using Adam with LR0:0001for 4K epochs, and data-augmentation. + + In this section, we study the test error of models of increasing size, when training to completion + (for a fixed large number of optimization steps). We demonstrate model-wise double descent across + different architectures, datasets, optimizers, and training procedures. The critical region exhibits + distinctly different test behavior around the interpolation point and there is often a peak in test error + that becomes more prominent in settings with label noise. + For the experiments in this section (Figures 4, 5, 6, 7, 8), notice that all modifications which increase + the interpolation threshold (such as adding label noise, using data augmentation, and increasing the + number of train samples) also correspondingly shift the peak in test error towards larger models. + Additional plots showing the early-stopping behavior of these models, and additional experiments + showing double descent in settings with no label noise (e.g. Figure 19) are in Appendix E.2. We + also observed model-wise double descent for adversarial training, with a prominent robust test error + peak even in settings without label noise. See Figure 26 in Appendix E.2. + + Discussion. Fully understanding the mechanisms behind model-wise double descent in deep neu- + ral networks remains an important open question. However, an analog of model-wise double descent + occurs even for linear models. A recent stream of theoretical works analyzes this setting (Bartlett + et al. (2019); Muthukumar et al. (2019); Belkin et al. (2019); Mei & Montanari (2019); Hastie et al. + (2019)). We believe similar mechanisms may be at work in deep neural networks. + Informally, our intuition is that for model-sizes at the interpolation threshold, there is effectively + only one model that fits the train data and this interpolating model is very sensitive to noise in the + + <
> + + Figure 5: Effect of Data Augmentation. 5-layer CNNs on CIFAR10, with and without data- + augmentation. Data-augmentation shifts the interpolation threshold to the right, shifting the test + error peak accordingly. Optimized using SGD for 500K steps. See Figure 27 for larger models. + + <
> <
> + + Figure 6:SGD vs. Adam.5-Layer CNNs Figure 7: Noiseless settings. 5-layer + on CIFAR-10 with no label noise, and no CNNs on CIFAR-100 with no label noise; + data augmentation. Optimized using SGD note the peak in test error. Trained with + for 500K gradient steps, and Adam for 4K SGD and no data augmentation. See Fig- + epochs. ure 20 for the early-stopping behavior of + these models. + + + train set and/or model mis-specification. That is, since the model is just barely able to fit the train + data, forcing it to fit even slightly-noisy or mis-specified labels will destroy its global structure, and + result in high test error. (See Figure 28 in the Appendix for an experiment demonstrating this noise + sensitivity, by showing that ensembling helps significantly in the critically-parameterized regime). + However for over-parameterized models, there are many interpolating models that fit the train set, + and SGD is able to find one that “memorizes” (or “absorbs”) the noise while still performing well + on the distribution. + The above intuition is theoretically justified for linear models. In general, this situation manifests + even without label noise for linear models (Mei & Montanari (2019)), and occurs whenever there + + Figure 8:Transformers on language trans- + lation tasks:Multi-head-attention encoder- + decoder Transformer model trained for + <
> 80k gradient steps with labeled smoothed + cross-entropy loss on IWSLT‘14 German- + to-English (160K sentences) and WMT‘14 + English-to-French (subsampled to 200K sen- + tences) dataset. Test loss is measured as per- + token perplexity. + + + + + + is model mis-specification between the structure of the true distribution and the model family. We + believe this intuition extends to deep learning as well, and it is consistent with our experiments. + + + 6 EPOCH-WISE DOUBLE DESCENT + + In this section, we demonstrate a novel form of double-descent with respect to training epochs, + which is consistent with our unified view of effective model complexity (EMC) and the generalized + double descent hypothesis. Increasing the train time increases the EMC—and thus a sufficiently + large model transitions from under- to over-parameterized over the course of training. + + <
> + + Figure 9:Left:Training dynamics for models in three regimes. Models are ResNet18s on CIFAR10 + with 20% label noise, trained using Adam with learning rate0:0001, and data augmentation.Right: + Test error over (Model size Epochs). Three slices of this plot are shown on the left. + + + As illustrated in Figure 9, sufficiently large models can undergo a “double descent” behavior where + test error first decreases then increases near the interpolation threshold, and then decreases again. In + contrast, for “medium sized” models, for which training to completion will only barely reach 0 + error, the test error as a function of training time will follow a classical U-like curve where it is + better to stop early. Models that are too small to reach the approximation threshold will remain in + the “under parameterized” regime where increasing train time monotonically decreases test error. + Our experiments (Figure 10) show that many settings of dataset and architecture exhibit epoch-wise + double descent, in the presence of label noise. Further, this phenomenon is robust across optimizer + variations and learning rate schedules (see additional experiments in Appendix E.1). As in model- + wise double descent, the test error peak is accentuated with label noise. + Conventional wisdom suggests that training is split into two phases: (1) In the first phase, the net- + work learns a function with a small generalization gap (2) In the second phase, the network starts + to over-fit the data leading to an increase in test error. Our experiments suggest that this is not the + complete picture—in some regimes, the test error decreases again and may achieve a lower value at + the end of training as compared to the first minimum (see Fig 10 for 10% label noise). + + <
> + + Figure 10:Epoch-wise double descent for ResNet18 and CNN (width=128). ResNets trained using + Adam with learning rate0:0001, and CNNs trained with SGD with inverse-square root learning rate. + + + 7 SAMPLE-WISE NON-MONOTONICITY + + In this section, we investigate the effect of varying the number of train samples, for a fixed model and + training procedure. Previously, in model-wise and epoch-wise double descent, we explored behavior + in the critical regime, where <>, by varying the EMC. Here, we explore the critical + regime by varying the number of train samples n. By increasing n, the same training procedure T + can switch from being effectively over-parameterized to effectively under-parameterized. + We show that increasing the number of samples has two different effects on the test error vs. model + complexity graph. On the one hand, (as expected) increasing the number of samples shrinks the area + under the curve. On the other hand, increasing the number of samples also has the effect of “shifting + the curve to the right” and increasing the model complexity at which test error peaks. + + <
> + + Figure 11: Sample-wise non-monotonicity. + + + These twin effects are shown in Figure 11a. Note that there is a range of model sizes where the + effects “cancel out”—and having 4% more train samples does not help test performance when + training to completion. Outside the critically-parameterized regime, for sufficiently under- or over- + parameterized models, having more samples helps. This phenomenon is corroborated in Figure 12, + which shows test error as a function of both model and sample size, in the same setting as Figure 11a. + + <
> + + Figure 12:Left:Test Error as a function of model size and number of train samples, for 5-layer + CNNs on CIFAR-10 +20% noise. Note the ridge of high test error again lies along the interpolation + threshold. Right: Three slices of the left plot, showing the effect of more data for models of + different sizes. Note that, when training to completion, more data helps for small and large models, + but does not help for near-critically-parameterized models (green). + + In some settings, these two effects combine to yield a regime of model sizes where more data actually + hurts test performance as in Figure 3 (see also Figure 11b). Note that this phenomenon is not unique + to DNNs: more data can hurt even for linear models (see Appendix D). + + 8 CONCLUSION AND DISCUSSION + + We introduce a generalized double descent hypothesis: models and training procedures exhibit atyp- + ical behavior when their Effective Model Complexity is comparable to the number of train samples. + We provide extensive evidence for our hypothesis in modern deep learning settings, and show that + it is robust to choices of dataset, architecture, and training procedures. In particular, we demon- + strate “model-wise double descent” for modern deep networks and characterize the regime where + bigger models can perform worse. We also demonstrate “epoch-wise double descent,” which, to the + best of our knowledge, has not been previously proposed. Finally, we show that the double descent + phenomenon can lead to a regime where training on more data leads to worse test performance. + Preliminary results suggest that double descent also holds as we vary the amount of regularization + for a fixed model (see Figure 22). + We also believe our characterization of the critical regime provides a useful way of thinking for + practitioners—if a model and training procedure are just barely able to fit the train set, then small + changes to the model or training procedure may yield unexpected behavior (e.g. making the model + slightly larger or smaller, changing regularization, etc. may hurt test performance). + + Early stopping. We note that many of the phenomena that we highlight often do not occur with + optimal early-stopping. However, this is consistent with our generalized double descent hypothesis: + if early stopping prevents models from reaching0train error then we would not expect to see double- + descent, since the EMC does not reach the number of train samples. Further, we show at least one + + setting where model-wise double descent can still occur even with optimal early stopping (ResNets + on CIFAR-100 with no label noise, see Figure 19). We have not observed settings where more data + hurts when optimal early-stopping is used. However, we are not aware of reasons which preclude + this from occurring. We leave fully understanding the optimal early stopping behavior of double + descent as an important open question for future work. + + Label Noise. In our experiments, we observe double descent most strongly in settings with label + noise. However, we believe this effect is not fundamentally about label noise, but rather about + model mis-specification. For example, consider a setting where the label noise is not truly random, + but rather pseudorandom (with respect to the family of classifiers being trained). In this setting, + the performance of the Bayes optimal classifier would not change (since the pseudorandom noise + is deterministic, and invertible), but we would observe an identical double descent as with truly + random label noise. Thus, we view adding label noise as merely a proxy for making distributions + “harder”— i.e. increasing the amount of model mis-specification. + + Other Notions of Model Complexity. Our notion of Effective Model Complexity is related to + classical complexity notions such as Rademacher complexity, but differs in several crucial ways: + (1) EMC depends on the true labels of the data distribution, and (2) EMC depends on the training + procedure, not just the model architecture. + Other notions of model complexity which do not incorporate features (1) and (2) would not suffice + to characterize the location of the double-descent peak. Rademacher complexity, for example, is + determined by the ability of a model architecture to fit a randomly-labeled train set. But Rademacher + complexity and VC dimension are both insufficient to determine the model-wise double descent + peak location, since they do not depend on the distribution of labels— and our experiments show + that adding label noise shifts the location of the peak. + Moreover, both Rademacher complexity and VC dimension depend only on the model family and + data distribution, and not on the training procedure used to find models. Thus, they are not capable + of capturing train-time double-descent effects, such as “epoch-wise” double descent, and the effect + of data-augmentation on the peak location. + + ACKNOWLEDGMENTS + We thank Mikhail Belkin for extremely useful discussions in the early stages of this work. We + thank Christopher Olah for suggesting the Model SizeEpoch visualization, which led to the + investigation of epoch-wise double descent, as well as for useful discussion and feedback. We also + thank Alec Radford, Jacob Steinhardt, and Vaishaal Shankar for helpful discussion and suggestions. + P.N. thanks OpenAI, the Simons Institute, and the Harvard Theory Group for a research environment + that enabled this kind of work. + We thank Dimitris Kalimeris, Benjamin L. Edelman, and Sharon Qian, and Aditya Ramesh for + comments on an early draft of this work. + This work supported in part by NSF grant CAREER CCF 1452961, BSF grant 2014389, NSF US- + ICCS proposal 1540428, a Google Research award, a Facebook research award, a Simons Investiga- + tor Award, a Simons Investigator Fellowship, and NSF Awards CCF 1715187, CCF 1565264, CCF + 1301976, IIS 1409097, and CNS 1618026. Y.B. would like to thank the MIT-IBM Watson AI Lab + for contributing computational resources for experiments. + + + REFERENCES + Madhu S Advani and Andrew M Saxe. High-dimensional dynamics of generalization error in neural + networks.arXiv preprint arXiv:1710.03667, 2017. + + Peter L Bartlett, Philip M Long, Gabor Lugosi, and Alexander Tsigler. Benign overfitting in linear´ + regression.arXiv preprint arXiv:1906.11300, 2019. + + Mikhail Belkin, Daniel Hsu, Siyuan Ma, and Soumik Mandal. Reconciling modern machine learning + and the bias-variance trade-off.arXiv preprint arXiv:1812.11118, 2018. + + Mikhail Belkin, Daniel Hsu, and Ji Xu. Two models of double descent for weak features.arXiv + preprint arXiv:1903.07571, 2019. + + Koby Bibas, Yaniv Fogel, and Meir Feder. A new look at an old problem: A universal learning + approach to linear regression.arXiv preprint arXiv:1905.04708, 2019. + + Mauro Cettolo, Christian Girardi, and Marcello Federico. Wit 3 : Web inventory of transcribed and + translated talks. InProceedings of the 16 th Conference of the European Association for Machine + Translation (EAMT), pp. 261–268, Trento, Italy, May 2012. + + Mario Geiger, Arthur Jacot, Stefano Spigler, Franck Gabriel, Levent Sagun, Stephane d’Ascoli,´ + Giulio Biroli, Clement Hongler, and Matthieu Wyart. Scaling description of generalization with´ + number of parameters in deep learning.arXiv preprint arXiv:1901.01608, 2019a. + + Mario Geiger, Stefano Spigler, Stephane d’Ascoli, Levent Sagun, Marco Baity-Jesi, Giulio Biroli,´ + and Matthieu Wyart. Jamming transition as a paradigm to understand the loss landscape of deep + neural networks.Physical Review E, 100(1):012115, 2019b. + + Ian J Goodfellow, Jonathon Shlens, and Christian Szegedy. Explaining and harnessing adversarial + examples.arXiv preprint arXiv:1412.6572, 2014. + + Trevor Hastie, Robert Tibshirani, Jerome Friedman, and James Franklin. The elements of statistical + learning: data mining, inference and prediction.The Mathematical Intelligencer, 27(2):83–85, + 2005. + + Trevor Hastie, Andrea Montanari, Saharon Rosset, and Ryan J Tibshirani. Surprises in high- + dimensional ridgeless least squares interpolation.arXiv preprint arXiv:1903.08560, 2019. + + Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Identity mappings in deep residual + networks. InEuropean conference on computer vision, pp. 630–645. Springer, 2016. + + Yanping Huang, Yonglong Cheng, Dehao Chen, HyoukJoong Lee, Jiquan Ngiam, Quoc V. Le, and + Zhifeng Chen. Gpipe: Efficient training of giant neural networks using pipeline parallelism. + CoRR, abs/1811.06965, 2018. URLhttp://arxiv.org/abs/1811.06965. + + Alex Krizhevsky. Learning multiple layers of features from tiny images. Technical report, 2009. + + Alex Krizhevsky, Ilya Sutskever, and Geoffrey E Hinton. Imagenet classification with deep convo- + lutional neural networks. InAdvances in neural information processing systems, pp. 1097–1105, + 2012. + + Aleksander Madry, Aleksandar Makelov, Ludwig Schmidt, Dimitris Tsipras, and Adrian Vladu. + Towards deep learning models resistant to adversarial attacks.arXiv preprint arXiv:1706.06083, + 2017. + + Song Mei and Andrea Montanari. The generalization error of random features regression: Precise + asymptotics and double descent curve.arXiv preprint arXiv:1908.05355, 2019. + + Partha P. Mitra. Understanding overfitting peaks in generalization error: Analytical risk curves for + l2 and l1 penalized interpolation.ArXiv, abs/1906.03667, 2019. + + Vidya Muthukumar, Kailas Vodrahalli, and Anant Sahai. Harmless interpolation of noisy data in + regression.arXiv preprint arXiv:1903.09139, 2019. + + Preetum Nakkiran, Gal Kaplun, Dimitris Kalimeris, Tristan Yang, Benjamin L Edelman, Fred + Zhang, and Boaz Barak. Sgd on neural networks learns functions of increasing complexity.arXiv + preprint arXiv:1905.11604, 2019. + + Manfred Opper. Statistical mechanics of learning: Generalization.The Handbook of Brain Theory + and Neural Networks, 922-925., 1995. + + Manfred Opper. Learning to generalize.Frontiers of Life, 3(part 2), pp.763-775., 2001. + + Myle Ott, Sergey Edunov, Alexei Baevski, Angela Fan, Sam Gross, Nathan Ng, David Grangier, + and Michael Auli. fairseq: A fast, extensible toolkit for sequence modeling. InProceedings of + NAACL-HLT 2019: Demonstrations, 2019. + + David Page. How to train your resnet. https://myrtle.ai/how-to-train-your-resnet-4-architecture/, 2018. + + Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan, Edward Yang, Zachary DeVito, + Zeming Lin, Alban Desmaison, Luca Antiga, and Adam Lerer. Automatic differentiation in + PyTorch. InNeurIPS Autodiff Workshop, 2017. + + Alec Radford, Jeff Wu, Rewon Child, David Luan, Dario Amodei, and Ilya Sutskever. Language + models are unsupervised multitask learners. 2019. + + Ali Rahimi and Benjamin Recht. Random features for large-scale kernel machines. InAdvances in + neural information processing systems, pp. 1177–1184, 2008. + + Rico Sennrich, Barry Haddow, and Alexandra Birch. Neural machine translation of rare words with + subword units.ArXiv, abs/1508.07909, 2015. + + Stefano Spigler, Mario Geiger, Stephane d’Ascoli, Levent Sagun, Giulio Biroli, and Matthieu Wyart.´ + A jamming transition from under-to over-parametrization affects loss landscape and generaliza- + tion.arXiv preprint arXiv:1810.09665, 2018. + + Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Du- + mitru Erhan, Vincent Vanhoucke, and Andrew Rabinovich. Going deeper with convolutions. In + Computer Vision and Pattern Recognition (CVPR), 2015. URLhttp://arxiv.org/abs/ + 1409.4842. + + Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, + Lukasz Kaiser, and Illia Polosukhin. Attention is all you need.CoRR, abs/1706.03762, 2017. + + Chiyuan Zhang, Samy Bengio, Moritz Hardt, Benjamin Recht, and Oriol Vinyals. Understanding + deep learning requires rethinking generalization.ICLR, abs/1611.03530, 2016. + + + + A SUMMARY TABLE OF EXPERIMENTAL RESULTS + + <
> + + + B APPENDIX: EXPERIMENTAL DETAILS + + B.1 MODELS + + We use the following families of architectures. The PyTorch Paszke et al. (2017) + specification of our ResNets and CNNs are available at https://gitlab.com/harvard-machine-learning/double-descent/tree/master. + + ResNets. We define a family of ResNet18s of increasing size as follows. We follow the Preac- + tivation ResNet18 architecture of He et al. (2016), using 4 ResNet blocks, each consisting of two + BatchNorm-ReLU-Convolution layers. The layer widths for the 4 blocks are [k;2k;4k;8k] for + varyingk2Nand the strides are [1, 2, 2, 2]. The standard ResNet18 corresponds to k=64 con- + volutional channels in the first layer. The scaling of model size withkis shown in Figure 13b. Our + implementation is adapted from https://github.com/kuangliu/pytorch-cifar. + + Standard CNNs. We consider a simple family of 5-layer CNNs, with four Conv-BatchNorm- + ReLU-MaxPool layers and a fully-connected output layer. We scale the four convolutional layer + widths as [k;2k;4k;8k]. The MaxPool is [1, 2, 2, 8]. For all the convolution layers, the kernel + size = 3, stride = 1 and padding=1. This architecture is based on the “backbone” architecture from + Page (2018). For k=64, this CNN has 1558026 parameters and can reach >90% test accuracy on + CIFAR-10 (Krizhevsky (2009)) with data-augmentation. The scaling of model size with k is shown + in Figure 13a. + + Transformers. We consider the encoder-decoder Transformer model from Vaswani et al. (2017) + with 6 layers and 8 attention heads per layer, as implemented by fairseq Ott et al. (2019). We scale + the size of the network by modifying the embedding dimension (d model), and scale the width of the + fully-connected layers proportionally (dff = 4d model). We train with 10% label smoothing and no + drop-out, for 80 gradient steps. + + <
> + + Figure 13: Scaling of model size with our parameterization of width & embedding dimension. + + + B.2 IMAGE CLASSIFICATION: EXPERIMENTAL SETUP + + We describe the details of training for CNNs and ResNets below. + Loss function:Unless stated otherwise, we use the cross-entropy loss for all the experiments. + Data-augmentation: In experiments where data-augmentation was used, we apply + RandomCrop(32, padding=4)andRandomHorizontalFlip. In experiments with + added label noise, the label for all augmentations of a given training sample are given the same + label. + Regularization:No explicit regularization like weight decay or dropout was applied unless explic- + itly stated. + Initialization:We use the default initialization provided by PyTorch for all the layers. + Optimization: + + Adam: Unless specified otherwise, learning rate was set at constant to 1e^4 and all other + parameters were set to their default PyTorch values. + SGD: Unless specified otherwise, learning rate schedule inverse-square root (defined be- + low) was used with initial learning rate <> and updates every L=512 gradient steps. + No momentum was used. + + We found our results are robust to various other natural choices of optimizers and learning rate + schedule. We used the above settings because (1) they optimize well, and (2) they do not require + experiment-specific hyperparameter tuning, and allow us to use the same optimization across many + experiments. + Batch size: All experiments use a batchsize of 128. + Learning rate schedule descriptions: + + Inverse-square root (<>): At gradient stept, the learning rate is set to <>. We set learning-rate with respect to number of gradient steps, and not epochs, <> + in order to allow comparison between experiments with varying train-set sizes. + Dynamic drop (<>, drop, patience): Starts with an initial learning rate of 0 and drops by + a factor of ’drop’ if the training loss has remained constant or become worse for ’patience’ + number of gradient steps. + + B.3 NEURAL MACHINE TRANSLATION: EXPERIMENTAL SETUP + + Here we describe the experimental setup for the neural machine translation experiments. + Training procedure. + + In this setting, the distributionDconsists of triples + + <> + + where V_src and V_tgt are the source and target vocabularies, the stringxis a sentence in the source + language,yis its translation in the target language, andiis the index of the token to be predicted by + the model. We assume that <> is distributed uniformly on <>. + A standard probabilistic model defines an autoregressive factorization of the likelihood: + + <> + + Given a set of training samplesS, we define + + <> + + In practice,S is not constructed from independent samples from D, but rather by first sampling + <<(x,y)>> and then including all <> in S. + For training transformers, we replicate the optimization procedure specified in Vaswani et al. (2017) + section 5.3, where the learning rate schedule consists of a “warmup” phase with linearly increasing + learning rate followed by a phase with inverse square-root decay. We preprocess the data using byte + pair encoding (BPE) as described in Sennrich et al. (2015). We use the implementation provided by + fairseq (https://github.com/pytorch/fairseq). + + Datasets. The IWSLT’14 German to English dataset contains TED Talks as described in Cettolo + et al. (2012). The WMT’14 English to French dataset is taken from http://www.statmt.org/wmt14/translation-task.html. + + B.4 PER-SECTION EXPERIMENTAL DETAILS + + Here we provide full details for experiments in the body, when not otherwise provided. + Introduction: Experimental Details Figure 1: All models were trained using Adam with learning- + rate 0.0001 for 4K epochs. Plotting means and standard deviations for 5 trials, with random network + initialization. + + Model-wise Double Descent: Experimental Details Figure 7: Plotting means and standard devia- + tions for 5 trials, with random network initialization. + Sample-wise Nonmonotonicity: Experimental DetailsFigure 11a: All models are trained with + SGD for 500K epochs, and data-augmentation. Bottom: Means and standard deviations from 5 + trials with random initialization, and random subsampling of the train set. + + C EXTENDED DISCUSSION OF RELATED WORK + + Belkin et al. (2018): This paper proposed, in very general terms, that the apparent contradiction + between traditional notions of the bias-variance trade-off and empirically successful practices in + deep learning can be reconciled under a double-descent curve—as model complexity increases, the + test error follows the traditional “U-shaped curve”, but beyond the point of interpolation, the error + starts todecrease. This work provides empirical evidence for the double-descent curve with fully + connected networks trained on subsets of MNIST, CIFAR10, SVHN and TIMIT datasets. They use + thel2 loss for their experiments. They demonstrate that neural networks are not an aberration in this + regard—double-descent is a general phenomenon observed also in linear regression with random + features and random forests. + + Theoretical works on linear least squares regression: A variety of papers have attempted to the- + oretically analyze this behavior in restricted settings, particularly the case of least squares regression + under various assumptions on the training data, feature spaces and regularization method. + + 1.Advani & Saxe (2017); Hastie et al. (2019) both consider the linear regression problem + stated above and analyze the generalization behavior in the asymptotic limit <> + using random matrix theory. Hastie et al. (2019) highlight that when the model is mis- + specified, the minimum of training error can occur for over-parameterized models + 2.Belkin et al. (2019) Linear least squares regression for two data models, where the input + data is sampled from a Gaussian and a Fourier series model for functions on a circle. They + provide a finite-sample analysis for these two cases + 3.Bartlett et al. (2019) provides generalization bounds for the minimuml2 -norm interpolant + for Gaussian features + 4.Muthukumar et al. (2019) characterize the fundamental limit of of any interpolating solu- + tion in the presence of noise and provide some interesting Fourier-theoretic interpretations. + 5.Mei & Montanari (2019): This work provides asymptotic analysis for ridge regression over + random features + + Similar double descent behavior was investigated in Opper (1995; 2001) + Geiger et al. (2019b) showed that deep fully connected networks trained on the MNIST dataset with + hinge loss exhibit a “jamming transition” when the number of parameters exceeds a threshold that + allows training to near-zero train loss. Geiger et al. (2019a) provide further experiments on CIFAR- + 10 with a convolutional network. They also highlight interesting behavior with ensembling around + the critical regime, which is consistent with our informal intuitions in Section 5 and our experiments + in Figures 28, 29. + Advani & Saxe (2017); Geiger et al. (2019b;a) also point out that double-descent is not observed + when optimal early-stopping is used. + + D RANDOM FEATURES: A CASE STUDY + + <
> + + Figure 14:Random Fourier Featureson the Fashion MNIST dataset. The setting is equivalent + to two-layer neural network witheix activation, with randomly-initialized first layer that is fixed + throughout training. The second layer is trained using gradient flow. + + + In this section, for completeness sake, we show that both the model- and sample-wise double de- + scent phenomena are not unique to deep neural networks—they exist even in the setting of Random + Fourier Features of Rahimi & Recht (2008). This setting is equivalent to a two-layer neural network + with <> activation. The first layer is initialized with aN(0;1 )Gaussian distribution and then + fixed throughout training. The width (or embedding dimension) d dof the first layer parameterizes + the model size. The second layer is initialized with0s and trained with MSE loss. + Figure 14 shows the grid of Test Error as a function of both number of samplesnand model sized. + Note that in this settingEMC =d(the embedding dimension). As a result, as demonstrated in the + figure, the peak follows the path ofn=d. Both model-wise and sample-wise (see figure 15) double + descent phenomena are captured, by horizontally and vertically crossing the grid, respectively. + + <
> + + Figure 15: Sample-wise double-descent slice for Random Fourier Features on the Fashion MNIST + dataset. In this figure the embedding dimension (number of random features) is 1000. + + E APPENDIX: ADDITIONAL EXPERIMENTS + + + E.1 EPOCH-WISE DOUBLE DESCENT: ADDITIONAL RESULTS + + Here, we provide a rigorous evaluation of epoch-wise double descent for a variety of optimizers and + learning rate schedules. We train ResNet18 on CIFAR-10 with data-augmentation and 20% label + noise with three different optimizers—Adam, SGD, SGD + Momentum (momentum set to 0.9) and + three different learning rate schedules—constant, inverse-square root, dynamic drop for differnet + values of initial learning rate. We observe that double-descent occurs reliably for all optimizers and + learning rate schedules and the peak of the double descent curve shifts with the interpolation point. + + <
> + + Figure 16:Epoch-wise double descentfor ResNet18 trained with Adam and multiple learning rate + schedules + + A practical recommendation resulting from epoch-wise double descent is that stopping the training + when the test error starts to increase may not always be the best strategy. In some cases, the test error + may decrease again after reaching a maximum, and the final value may be lower than the minimum + earlier in training. + + <
> + + Figure 17:Epoch-wise double descentfor ResNet18 trained with SGD and multiple learning rate + schedules + + <
> + + Figure 18:Epoch-wise double descentfor ResNet18 trained with SGD+Momentum and multiple + learning rate schedules + + + E.2 MODEL-WISE DOUBLE DESCENT: ADDITIONAL RESULTS + + E.2.1 CLEAN SETTINGS WITH MODEL-WISE DOUBLE DESCENT + + <
> + + Figure 19:Top:Train and test performance as a function of both model size and train epochs. + Bottom:Test error dynamics of the same model (ResNet18, on CIFAR-100 with no label noise, + data-augmentation and Adam optimizer trained for 4k epochs with learning rate 0.0001). Note that + even with optimal early stopping this setting exhibits double descent. + + <
> + + Figure 20:Top:Train and test performance as a function of both model size and train epochs. + Bottom:Test error dynamics of the same models. 5-Layer CNNs, CIFAR-100 with no label noise, + no data-augmentation Trained with SGD for 1e6 steps. Same experiment as Figure 7. + + + E.2.2 WEIGHT DECAY + + <
> + + Figure 21:Left:Test error dynamics with weight decay of 5e-4 (bottom left) and without weight + decay (top left). Right:Test and train error andtest lossfor models with varying amounts of + weight decay. All models are 5-Layer CNNs on CIFAR-10 with 10% label noise, trained with + data-augmentation and SGD for 500K steps. + + Here, we now study the effect of varying the level of regularization on test error. We train CIFAR10 + with data-augmentation and 20% label noise on ResNet18 for weight decay coefficients <> rang- + ing from 0 to 0.1. We train the networks using SGD + inverse-square root learning rate. Figure + below shows a picture qualitatively very similar to that observed for model-wise double descent + wherein ”model complexity” is now controlled by the regularization parameter. This confirms our + generalized double descent hypothesis along yet another axis of Effective Model Complexity. + + <
> + + Figure 22: Generalized double descent for weight decay. We found that using the same initial + learning rate for all weight decay values led to training instabilities. This resulted in some noise in + the Test Error (Weight DecayEpochs) plot shown above. + + + E.2.3 EARLY STOPPING DOES NOT EXHIBIT DOUBLE DESCENT + + <
> + + Figure 23: Model-wise test error dynamics for a subsampled IWSLT‘14 dataset. Left: 4k samples, + Right: 18k samples. Note that with optimal early-stopping, more samples is always better. + + <
> + + Figure 24: Model-wise test error dynamics for a IWSLT‘14 de-en and subsampled WMT‘14 en-fr + datasets.Left: IWSLT‘14,Right: subsampled (200k samples) WMT‘14. Note that with optimal + early-stopping, the test error is much lower for this task. + + <
> + + Figure 25:Top:Train and test performance as a function of both model size and train epochs. + Bottom:Test error dynamics of the same model (CNN, on CIFAR-10 with 10% label noise, data-paugmentation and SGD optimizer with learning rate/1= T). + + + E.2.4 TRAINING PROCEDURE + + <
> + + Figure 26:Model-wise double descent for adversarial trainingResNet18s on CIFAR-10 (sub- + sampled to 25k train samples) with no label noise. We train for L2 robustness of radius <> and + <>, using 10-step PGD (Goodfellow et al. (2014); Madry et al. (2017)). Trained using SGD + (batch size 128) with learning rate0:1for 400 epochs, then0:01for 400 epochs. + + <
> + + Figure 27 + + + E.3 ENSEMBLING + + <
> + + Figure 28:Effect of Ensembling (ResNets, 15% label noise). Test error of an ensemble of 5 + models, compared to the base models. The ensembled classifier is determined by plurality vote over + the 5 base models. Note that emsembling helps most around the critical regime. All models are + ResNet18s trained on CIFAR-10 with 15% label noise, using Adam for 4K epochs (same setting + as Figure 1). Test error is measured against the original (not noisy) test set, and each model in the + ensemble is trained using a train set with independently-sampled 15% label noise. + + <
> + + Figure 29:Effect of Ensembling (CNNs, no label noise). Test error of an ensemble of 5 models, + compared to the base models. All models are 5-layer CNNs trained on CIFAR-10 with no label + noise, using SGD and no data augmentation. (same setting as Figure 7). +<> <> <> + + +<> <> <> +Deep Residual Learning for Image Recognition +Kaiming He Xiangyu Zhang Shaoqing Ren Jian Sun Microsoft Research {kahe, v-xiangz, v-shren, jiansun}@microsoft.com + +Abstract + +Deeper neural networks are more difficult to train. We present a residual learning framework to ease the training of networks that are substantially deeper than those used previously. We explicitly reformulate the layers as learn.ing residual functions with reference to the layer inputs, in.stead of learning unreferenced functions. We provide comprehensive empirical evidence showing that these residual networks are easier to optimize, and can gain accuracy from considerably increased depth. On the ImageNet dataset we evaluate residual nets with a depth of up to 152 layers 8. deeper than VGG nets [41] but still having lower complex. +ity. An ensemble of these residual nets achieves 3.57% error on the ImageNet test set. This result won the 1st place on the ILSVRC 2015 classification task. We also present analysis on CIFAR-10 with 100 and 1000 layers. +The depth of representations is of central importance for many visual recognition tasks. Solely due to our extremely deep representations, we obtain a 28% relative improvement on the COCO object detection dataset. Deep residual nets are foundations of our submissions to ILSVRC & COCO 2015 competitions1 , where we also won the 1st places on the tasks of ImageNet detection, ImageNet localization, COCO detection, and COCO segmentation. + +1. Introduction + +Deep convolutional neural networks [22, 21] have led to a series of breakthroughs for image classification [21, 50, 40]. Deep networks naturally integrate low/mid/high.level features [50] and classifiers in an end-to-end multi.layer fashion, and the levels of features can be enriched by the number of stacked layers (depth). Recent evidence [41, 44] reveals that network depth is of crucial importance, and the leading results [41, 44, 13, 16] on the challenging ImageNet dataset [36] all exploit very deep [41] models, with a depth of sixteen [41] to thirty [16]. Many other non.trivial visual recognition tasks [8, 12, 7, 32, 27] have also + + <
> + +Figure 1. Training error (left) and test error (right) on CIFAR-10 with 20-layer and 56-layer plain networks. The deeper network has higher training error, and thus test error. Similar phenomena on ImageNet is presented in Fig. 4. + +greatly benefited from very deep models. Driven by the significance of depth, a question arises: Is learning better networks as easy as stacking more layers? +An obstacle to answering this question was the notorious problem of vanishing/exploding gradients [1, 9], which hamper convergence from the beginning. This problem, however, has been largely addressed by normalized initialization [23, 9, 37, 13] and intermediate normalization layers [16], which enable networks with tens of layers to start con. +verging for stochastic gradient descent (SGD) with back-propagation [22]. +When deeper networks are able to start converging, a degradation problem has been exposed: with the network depth increasing, accuracy gets saturated (which might be unsurprising) and then degrades rapidly. Unexpectedly, such degradation is not caused by overfitting, and adding more layers to a suitably deep model leads to higher training error, as reported in [11, 42] and thoroughly verified by our experiments. Fig. 1 shows a typical example. +The degradation (of training accuracy) indicates that not all systems are similarly easy to optimize. Let us consider a shallower architecture and its deeper counterpart that adds more layers onto it. There exists a solution by construction to the deeper model: the added layers are identity mapping, and the other layers are copied from the learned shallower model. The existence of this constructed solution indicates that a deeper model should produce no higher training error than its shallower counterpart. But experiments show that our current solvers on hand are unable to find solutions that are comparably good or better than the constructed solution (or unable to do so in feasible time). + +In this paper, we address the degradation problem by introducing a deep residual learning framework. In.stead of hoping each few stacked layers directly fit a desired underlying mapping, we explicitly let these lay.ers fit a residual mapping. Formally, denoting the desired underlying mapping as <>, we let the stacked nonlinear layers fit another mapping of <>. The original mapping is recast into <>. We hypothesize that it is easier to optimize the residual mapping than to optimize the original, unreferenced mapping. To the extreme, if an identity mapping were optimal, it would be easier to push the residual to zero than to fit an identity mapping by a stack of nonlinear layers. +The formulation of <> can be realized by feedforward neural networks with shortcut connections (Fig. 2). Shortcut connections [2, 34, 49] are those skipping one or more layers. In our case, the shortcut connections simply perform identity mapping, and their outputs are added to the outputs of the stacked layers (Fig. 2). Identity short.cut connections add neither extra parameter nor computational complexity. The entire network can still be trained end-to-end by SGD with backpropagation, and can be easily implemented using common libraries (e.g., Caffe [19]) without modifying the solvers. +We present comprehensive experiments on ImageNet +[36] to show the degradation problem and evaluate our method. We show that: 1) Our extremely deep residual nets are easy to optimize, but the counterpart plain nets (that simply stack layers) exhibit higher training error when the depth increases; 2) Our deep residual nets can easily enjoy accuracy gains from greatly increased depth, producing results substantially better than previous networks. +Similar phenomena are also shown on the CIFAR-10 set [20], suggesting that the optimization difficulties and the effects of our method are not just akin to a particular dataset. We present successfully trained models on this dataset with over 100 layers, and explore models with over 1000 layers. +On the ImageNet classification dataset [36], we obtain excellent results by extremely deep residual nets. Our 152.layer residual net is the deepest network ever presented on ImageNet, while still having lower complexity than VGG nets [41]. Our ensemble has 3.57% top-5 error on the ImageNet test set, and won the 1st place in the ILSVRC 2015 classification competition. The extremely deep representations also have excellent generalization performance on other recognition tasks, and lead us to further win the 1st places on: ImageNet detection, ImageNet localization, COCO detection, and COCO segmentation in ILSVRC & COCO 2015 competitions. This strong evidence shows that the residual learning principle is generic, and we expect that it is applicable in other vision and non-vision problems. + +2. Related Work Residual Representations. In image recognition, VLAD + +[18] is a representation that encodes by the residual vectors with respect to a dictionary, and Fisher Vector [30] can be formulated as a probabilistic version [18] of VLAD. Both of them are powerful shallow representations for image retrieval and classification [4, 48]. For vector quantization, encoding residual vectors [17] is shown to be more effective than encoding original vectors. +In low-level vision and computer graphics, for solving Partial Differential Equations (PDEs), the widely used Multigrid method [3] reformulates the system as subproblems at multiple scales, where each subproblem is responsible for the residual solution between a coarser and a finer scale. An alternative to Multigrid is hierarchical basis pre.conditioning [45, 46], which relies on variables that represent residual vectors between two scales. It has been shown [3, 45, 46] that these solvers converge much faster than standard solvers that are unaware of the residual nature of the solutions. These methods suggest that a good reformulation or preconditioning can simplify the optimization. +Shortcut Connections. Practices and theories that lead to shortcut connections [2, 34, 49] have been studied for a long time. An early practice of training multi-layer perceptrons (MLPs) is to add a linear layer connected from the network input to the output [34, 49]. In [44, 24], a few intermediate layers are directly connected to auxiliary classifiers for addressing vanishing/exploding gradients. The papers of [39, 38, 31, 47] propose methods for centering layer responses, gradients, and propagated errors, implemented by shortcut connections. In [44], an inception layer is composed of a shortcut branch and a few deeper branches. +Concurrent with our work, highway networks [42, 43] present shortcut connections with gating functions [15]. These gates are data-dependent and have parameters, in contrast to our identity shortcuts that are parameter-free. When a gated shortcut is closed (approaching zero), the layers in highway networks represent non-residual functions. On the contrary, our formulation always learns residual functions; our identity shortcuts are never closed, and all information is always passed through, with additional residual functions to be learned. In addition, high.way networks have not demonstrated accuracy gains with extremely increased depth (e.g., over 100 layers). + +3. Deep Residual Learning + +3.1. Residual Learning +Let us consider <> as an underlying mapping to be fit by a few stacked layers (not necessarily the entire net), with x denoting the inputs to the first of these layers. If one hypothesizes that multiple nonlinear layers can asymptotically approximate complicated functions, then it is equivalent to hypothesize that they can asymptotically approximate the residual functions, i.e., <> (assuming that the input and output are of the same dimensions). So rather than expect stacked layers to approximate <>, we explicitly let these layers approximate a residual function <>. The original function thus becomes <>. Although both forms should be able to asymptotically approximate the desired functions (as hypothesized), the ease of learning might be different. +This reformulation is motivated by the counterintuitive phenomena about the degradation problem (Fig. 1, left). As we discussed in the introduction, if the added layers can be constructed as identity mappings, a deeper model should have training error no greater than its shallower counterpart. The degradation problem suggests that the solvers might have difficulties in approximating identity mappings by multiple nonlinear layers. With the residual learning reformulation, if identity mappings are optimal, the solvers may simply drive the weights of the multiple nonlinear lay.ers toward zero to approach identity mappings. +In real cases, it is unlikely that identity mappings are optimal, but our reformulation may help to precondition the problem. If the optimal function is closer to an identity mapping than to a zero mapping, it should be easier for the solver to find the perturbations with reference to an identity mapping, than to learn the function as a new one. We show by experiments (Fig. 7) that the learned residual functions in general have small responses, suggesting that identity map.pings provide reasonable preconditioning. + +3.2. Identity Mapping by Shortcuts +We adopt residual learning to every few stacked layers. A building block is shown in Fig. 2. Formally, in this paper we consider a building block defined as: + +<>. (1) + +Here x and y are the input and output vectors of the lay.ers considered. The function <> represents the residual mapping to be learned. For the example in Fig. 2 that has two layers, <> in which <> denotes +ReLU [29] and the biases are omitted for simplifying notations. The operation <> is performed by a shortcut connection and element-wise addition. We adopt the second nonlinearity after the addition (i.e., <>, see Fig. 2). +The shortcut connections in Eqn.(1) introduce neither extra parameter nor computation complexity. This is not only attractive in practice but also important in our comparisons between plain and residual networks. We can fairly compare plain/residual networks that simultaneously have the same number of parameters, depth, width, and computational cost (except for the negligible element-wise addition). +The dimensions of x and F must be equal in Eqn.(1). If this is not the case (e.g., when changing the input/output channels), we can perform a linear projection Ws by the shortcut connections to match the dimensions: + +<>. (2) + +We can also use a square matrix <> in Eqn.(1). But we will show by experiments that the identity mapping is sufficient for addressing the degradation problem and is economical, and thus Ws is only used when matching dimensions. +The form of the residual function F is flexible. Experiments in this paper involve a function F that has two or three layers (Fig. 5), while more layers are possible. But if F has only a single layer, Eqn.(1) is similar to a linear layer: <>, for which we have not observed advantages. +We also note that although the above notations are about fully-connected layers for simplicity, they are applicable to convolutional layers. The function <> can represent multiple convolutional layers. The element-wise addition is performed on two feature maps, channel by channel. + +3.3. Network Architectures +We have tested various plain/residual nets, and have observed consistent phenomena. To provide instances for discussion, we describe two models for ImageNet as follows. +Plain Network. Our plain baselines (Fig. 3, middle) are mainly inspired by the philosophy of VGG nets [41] (Fig. 3, left). The convolutional layers mostly have 3.3 filters and follow two simple design rules: (i) for the same output feature map size, the layers have the same number of filters; and (ii) if the feature map size is halved, the number of filters is doubled so as to preserve the time complexity per layer. We perform downsampling directly by convolutional layers that have a stride of 2. The network ends with a global average pooling layer and a 1000-way fully-connected layer with softmax. The total number of weighted layers is 34 in Fig. 3 (middle). +It is worth noticing that our model has fewer filters and lower complexity than VGG nets [41] (Fig. 3, left). Our 34 layer baseline has 3.6 billion FLOPs (multiply-adds), which is only 18% of VGG-19 (19.6 billion FLOPs). + + +Residual Network. Based on the above plain network, we insert shortcut connections (Fig. 3, right) which turn the network into its counterpart residual version. The identity shortcuts (Eqn.(1)) can be directly used when the input and output are of the same dimensions (solid line shortcuts in Fig. 3). When the dimensions increase (dotted line shortcuts in Fig. 3), we consider two options: (A) The shortcut still performs identity mapping, with extra zero entries padded for increasing dimensions. This option introduces no extra parameter; (B) The projection shortcut in Eqn.(2) is used to match dimensions (done by 1.1 convolutions). For both options, when the shortcuts go across feature maps of two sizes, they are performed with a stride of 2. + +3.4. Implementation +Our implementation for ImageNet follows the practice in [21, 41]. The image is resized with its shorter side randomly sampled in [256, 480] for scale augmentation [41]. A 224.224 crop is randomly sampled from an image or its horizontal flip, with the per-pixel mean subtracted [21]. The standard color augmentation in [21] is used. We adopt batch normalization (BN) [16] right after each convolution and before activation, following [16]. We initialize the weights as in [13] and train all plain/residual nets from scratch. We use SGD with a mini-batch size of 256. The learning rate starts from 0.1 and is divided by 10 when the error plateaus, and the models are trained for up to 60 . 104 iterations. We use a weight decay of 0.0001 and a momentum of 0.9. We do not use dropout [14], following the practice in [16]. +In testing, for comparison studies we adopt the standard 10-crop testing [21]. For best results, we adopt the fully +convolutional form as in [41, 13], and average the scores at multiple scales (images are resized such that the shorter side is in {224, 256, 384, 480, 640}). + +4. Experiments + +4.1. ImageNet Classification +We evaluate our method on the ImageNet 2012 classification dataset [36] that consists of 1000 classes. The models are trained on the 1.28 million training images, and evaluated on the 50k validation images. We also obtain a final result on the 100k test images, reported by the test server. We evaluate both top-1 and top-5 error rates. +Plain Networks. We first evaluate 18-layer and 34-layer plain nets. The 34-layer plain net is in Fig. 3 (middle). The 18-layer plain net is of a similar form. See Table 1 for de. +tailed architectures. +The results in Table 2 show that the deeper 34-layer plain net has higher validation error than the shallower 18-layer plain net. To reveal the reasons, in Fig. 4 (left) we com.pare their training/validation errors during the training procedure. We have observed the degradation problem + + <
> + +Table 1. Architectures for ImageNet. Building blocks are shown in brackets (see also Fig. 5), with the numbers of blocks stacked. Down-sampling is performed by conv3 1, conv4 1, and conv5 1 with a stride of 2. + +Figure 4. Training on ImageNet. Thin curves denote training error, and bold curves denote validation error of the center crops. Left: plain networks of 18 and 34 layers. Right: ResNets of 18 and 34 layers. In this plot, the residual networks have no extra parameter compared to their plain counterparts. + + <
> + +Table 2. Top-1 error (%, 10-crop testing) on ImageNet validation. Here the ResNets have no extra parameter compared to their plain counterparts. Fig. 4 shows the training procedures. +34-layer plain net has higher training error throughout the whole training procedure, even though the solution space of the 18-layer plain network is a subspace of that of the 34-layer one. +We argue that this optimization difficulty is unlikely to be caused by vanishing gradients. These plain networks are trained with BN [16], which ensures forward propagated signals to have non-zero variances. We also verify that the backward propagated gradients exhibit healthy norms with BN. So neither forward nor backward signals vanish. In fact, the 34-layer plain net is still able to achieve compet.itive accuracy (Table 3), suggesting that the solver works to some extent. We conjecture that the deep plain nets may have exponentially low convergence rates, which impact the reducing of the training error3. The reason for such opti.mization difficulties will be studied in the future. +Residual Networks. Next we evaluate 18-layer and 34.layer residual nets (ResNets). The baseline architectures are the same as the above plain nets, expect that a shortcut connection is added to each pair of 3.3 filters as in Fig. 3 (right). In the first comparison (Table 2 and Fig. 4 right), we use identity mapping for all shortcuts and zero-padding for increasing dimensions (option A). So they have no extra parameter compared to the plain counterparts. +We have three major observations from Table 2 and Fig. 4. First, the situation is reversed with residual learn.ing fi the 34-layer ResNet is better than the 18-layer ResNet (by 2.8%). More importantly, the 34-layer ResNet exhibits considerably lower training error and is generalizable to the validation data. This indicates that the degradation problem is well addressed in this setting and we manage to obtain accuracy gains from increased depth. +Second, compared to its plain counterpart, the 34-layer +3We have experimented with more training iterations (3.) and still ob.served the degradation problem, suggesting that this problem cannot be feasibly addressed by simply using more iterations. + + <
> + +Table 3. Error rates (%, 10-crop testing) on ImageNet validation. VGG-16 is based on our test. ResNet-50/101/152 are of option B that only uses projections for increasing dimensions. + + <
> + +Table 4. Error rates (%) of single-model results on the ImageNet validation set (except fi reported on the test set). + + <
> + +Table 5. Error rates (%) of ensembles. The top-5 error is on the test set of ImageNet and reported by the test server. + + <
> + +ResNet reduces the top-1 error by 3.5% (Table 2), resulting from the successfully reduced training error (Fig. 4 right vs. left). This comparison verifies the effectiveness of residual learning on extremely deep systems. +Last, we also note that the 18-layer plain/residual nets are comparably accurate (Table 2), but the 18-layer ResNet converges faster (Fig. 4 right vs. left). When the net is not overly deep (18 layers here), the current SGD solver is still able to find good solutions to the plain net. In this case, the ResNet eases the optimization by providing faster convergence at the early stage. +Identity vs. Projection Shortcuts. We have shown that + +Figure 5. A deeper residual function F for ImageNet. Left: a building block (on 56.56 feature maps) as in Fig. 3 for ResNet. + + <
> + +parameter-free, identity shortcuts help with training. Next we investigate projection shortcuts (Eqn.(2)). In Table 3 we compare three options: (A) zero-padding shortcuts are used for increasing dimensions, and all shortcuts are parameter-free (the same as Table 2 and Fig. 4 right); (B) projection shortcuts are used for increasing dimensions, and other shortcuts are identity; and (C) all shortcuts are projections. +Table 3 shows that all three options are considerably bet. +ter than the plain counterpart. B is slightly better than A. We argue that this is because the zero-padded dimensions in A indeed have no residual learning. C is marginally better than B, and we attribute this to the extra parameters introduced by many (thirteen) projection shortcuts. But the small differences among A/B/C indicate that projection shortcuts are not essential for addressing the degradation problem. So we do not use option C in the rest of this paper, to reduce mem.ory/time complexity and model sizes. Identity shortcuts are particularly important for not increasing the complexity of the bottleneck architectures that are introduced below. +Deeper Bottleneck Architectures. Next we describe our deeper nets for ImageNet. Because of concerns on the train.ing time that we can afford, we modify the building block as a bottleneck design4. For each residual function F, we use a stack of 3 layers instead of 2 (Fig. 5). The three layers are 1.1, 3.3, and 1.1 convolutions, where the 1.1 layers are responsible for reducing and then increasing (restoring) dimensions, leaving the 3.3 layer a bottleneck with smaller input/output dimensions. Fig. 5 shows an example, where both designs have similar time complexity. +The parameter-free identity shortcuts are particularly important for the bottleneck architectures. If the identity short.cut in Fig. 5 (right) is replaced with projection, one can show that the time complexity and model size are doubled, as the shortcut is connected to the two high-dimensional ends. So identity shortcuts lead to more efficient models for the bottleneck designs. +50-layer ResNet: We replace each 2-layer block in the +4Deeper non-bottleneck ResNets (e.g., Fig. 5 left) also gain accuracy from increased depth (as shown on CIFAR-10), but are not as economical as the bottleneck ResNets. So the usage of bottleneck designs is mainly due to practical considerations. We further note that the degradation problem of plain nets is also witnessed for the bottleneck designs. + +34-layer net with this 3-layer bottleneck block, resulting in a 50-layer ResNet (Table 1). We use option B for increasing dimensions. This model has 3.8 billion FLOPs. +101-layer and 152-layer ResNets: We construct 101.layer and 152-layer ResNets by using more 3-layer blocks (Table 1). Remarkably, although the depth is significantly increased, the 152-layer ResNet (11.3 billion FLOPs) still has lower complexity than VGG-16/19 nets (15.3/19.6 bil.lion FLOPs). +The 50/101/152-layer ResNets are more accurate than the 34-layer ones by considerable margins (Table 3 and 4). We do not observe the degradation problem and thus enjoy significant accuracy gains from considerably increased depth. The benefits of depth are witnessed for all evaluation metrics (Table 3 and 4). +Comparisons with State-of-the-art Methods. In Table 4 we compare with the previous best single-model results. Our baseline 34-layer ResNets have achieved very competitive accuracy. Our 152-layer ResNet has a single-model top-5 validation error of 4.49%. This single-model result outperforms all previous ensemble results (Table 5). We combine six models of different depth to form an ensemble (only with two 152-layer ones at the time of submitting). This leads to 3.57% top-5 error on the test set (Table 5). +This entry won the 1st place in ILSVRC 2015. + +4.2. CIFAR-10 and Analysis + +We conducted more studies on the CIFAR-10 dataset [20], which consists of 50k training images and 10k test.ing images in 10 classes. We present experiments trained on the training set and evaluated on the test set. Our focus is on the behaviors of extremely deep networks, but not on pushing the state-of-the-art results, so we intentionally use simple architectures as follows. +The plain/residual architectures follow the form in Fig. 3 (middle/right). The network inputs are 32.32 images, with the per-pixel mean subtracted. The first layer is 3.3 convolutions. Then we use a stack of 6n layers with 3.3 convolutions on the feature maps of sizes {32, 16, 8} respectively, with 2n layers for each feature map size. The numbers of filters are {16, 32, 64} respectively. The subsampling is per.formed by convolutions with a stride of 2. The network ends with a global average pooling, a 10-way fully-connected layer, and softmax. There are totally 6n+2 stacked weighted layers. The following table summarizes the architecture: + +<
> + +When shortcut connections are used, they are connected to the pairs of 3.3 layers (totally 3n shortcuts). On this dataset we use identity shortcuts in all cases (i.e., option A), + +<
> + +Table 6. Classification error on the CIFAR-10 test set. All meth.ods are with data augmentation. For ResNet-110, we run it 5 times and show best (mean std) as in [43]. + +so our residual models have exactly the same depth, width, and number of parameters as the plain counterparts. +We use a weight decay of 0.0001 and momentum of 0.9, and adopt the weight initialization in [13] and BN [16] but with no dropout. These models are trained with a mini-batch size of 128 on two GPUs. We start with a learning rate of 0.1, divide it by 10 at 32k and 48k iterations, and terminate training at 64k iterations, which is determined on a 45k/5k train/val split. We follow the simple data augmen.tation in [24] for training: 4 pixels are padded on each side, and a 32.32 crop is randomly sampled from the padded image or its horizontal fiip. For testing, we only evaluate the single view of the original 32.32 image. +We compare n = {3, 5, 7, 9}, leading to 20, 32, 44, and 56-layer networks. Fig. 6 (left) shows the behaviors of the plain nets. The deep plain nets suffer from increased depth, and exhibit higher training error when going deeper. This phenomenon is similar to that on ImageNet (Fig. 4, left) and on MNIST (see [42]), suggesting that such an optimization difficulty is a fundamental problem. +Fig. 6 (middle) shows the behaviors of ResNets. Also similar to the ImageNet cases (Fig. 4, right), our ResNets manage to overcome the optimization difficulty and demon.strate accuracy gains when the depth increases. +We further explore n = 18 that leads to a 110-layer ResNet. In this case, we find that the initial learning rate of 0.1 is slightly too large to start converging5. So we use +0.01 to warm up the training until the training error is below 80% (about 400 iterations), and then go back to 0.1 and continue training. The rest of the learning schedule is as done previously. This 110-layer network converges well (Fig. 6, middle). It has fewer parameters than other deep and thin +5With an initial learning rate of 0.1, it starts converging (<90% error) after several epochs, but still reaches similar accuracy. + +<
> + +Figure 7. Standard deviations (std) of layer responses on CIFAR. +10. The responses are the outputs of each 3.3 layer, after BN and before nonlinearity. Top: the layers are shown in their original order. Bottom: the responses are ranked in descending order. +networks such as FitNet [35] and Highway [42] (Table 6), yet is among the state-of-the-art results (6.43%, Table 6). +Analysis of Layer Responses. Fig. 7 shows the standard deviations (std) of the layer responses. The responses are the outputs of each 3.3 layer, after BN and before other nonlinearity (ReLU/addition). For ResNets, this analysis reveals the response strength of the residual functions. Fig. 7 shows that ResNets have generally smaller responses than their plain counterparts. These results support our ba.sic motivation (Sec.3.1) that the residual functions might be generally closer to zero than the non-residual functions. We also notice that the deeper ResNet has smaller magnitudes of responses, as evidenced by the comparisons among ResNet-20, 56, and 110 in Fig. 7. When there are more layers, an individual layer of ResNets tends to modify the signal less. +Exploring Over 1000 layers. We explore an aggressively deep model of over 1000 layers. We set n = 200 that leads to a 1202-layer network, which is trained as described above. Our method shows no optimization difficulty, and this 103-layer network is able to achieve training error <0.1% (Fig. 6, right). Its test error is still fairly good (7.93%, Table 6). +But there are still open problems on such aggressively deep models. The testing result of this 1202-layer network is worse than that of our 110-layer network, although both + +<
> + +Table 7. Object detection mAP (%) on the PASCAL VOC 2007/2012 test sets using baseline Faster R-CNN. See also Ta.ble 10 and 11 for better results. + +<
> + +Table 8. Object detection mAP (%) on the COCO validation set using baseline Faster R-CNN. See also Table 9 for better results. +have similar training error. We argue that this is because of overfitting. The 1202-layer network may be unnecessarily large (19.4M) for this small dataset. Strong regularization such as maxout [10] or dropout [14] is applied to obtain the best results ([10, 25, 24, 35]) on this dataset. In this paper, we use no maxout/dropout and just simply impose regularization via deep and thin architectures by design, without distracting from the focus on the difficulties of optimization. But combining with stronger regularization may im.prove results, which we will study in the future. + +4.3. Object Detection on PASCAL and MS COCO +Our method has good generalization performance on other recognition tasks. Table 7 and 8 show the object detection baseline results on PASCAL VOC 2007 and 2012 +[5] and COCO [26]. We adopt Faster R-CNN [32] as the detection method. Here we are interested in the improvements of replacing VGG-16 [41] with ResNet-101. The detection implementation (see appendix) of using both models is the same, so the gains can only be attributed to better networks. Most remarkably, on the challenging COCO dataset we ob.tain a 6.0% increase in COCOfis standard metric (mAP@[.5, .95]), which is a 28% relative improvement. This gain is solely due to the learned representations. +Based on deep residual nets, we won the 1st places in several tracks in ILSVRC & COCO 2015 competitions: Im.ageNet detection, ImageNet localization, COCO detection, and COCO segmentation. The details are in the appendix. + +References +[1] Y. Bengio, P. Simard, and P. Frasconi. Learning long-term dependencies with gradient descent is difficult. IEEE Transactions on Neural Networks, 5(2):157fi166, 1994. +[2] C. M. Bishop. Neural networks for pattern recognition. Oxford university press, 1995. +[3] W. L. Briggs, S. F. McCormick, et al. A Multigrid Tutorial. Siam, 2000. +[4] K. Chatfield, V. Lempitsky, A. Vedaldi, and A. Zisserman. The devil is in the details: an evaluation of recent feature encoding methods. In BMVC, 2011. +[5] M. Everingham, L. Van Gool, C. K. Williams, J. Winn, and A. Zisserman. The Pascal Visual Object Classes (VOC) Challenge. IJCV, pages 303fi338, 2010. +[6] S. Gidaris and N. Komodakis. Object detection via a multi-region & semantic segmentation-aware cnn model. In ICCV, 2015. +[7] R. Girshick. Fast R-CNN. In ICCV, 2015. +[8] R. Girshick, J. Donahue, T. Darrell, and J. Malik. Rich feature hier.archies for accurate object detection and semantic segmentation. In CVPR, 2014. +[9] X. Glorot and Y. Bengio. Understanding the difficulty of training deep feedforward neural networks. In AISTATS, 2010. +[10] I. J. Goodfellow, D. Warde-Farley, M. Mirza, A. Courville, and Y. Bengio. Maxout networks. arXiv:1302.4389, 2013. +[11] K. He and J. Sun. Convolutional neural networks at constrained time cost. In CVPR, 2015. +[12] K. He, X. Zhang, S. Ren, and J. Sun. Spatial pyramid pooling in deep convolutional networks for visual recognition. In ECCV, 2014. +[13] K. He, X. Zhang, S. Ren, and J. Sun. Delving deep into rectifiers: Surpassing human-level performance on imagenet classification. In ICCV, 2015. +[14] G. E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R. R. Salakhutdinov. Improving neural networks by preventing co-adaptation of feature detectors. arXiv:1207.0580, 2012. +[15] S. Hochreiter and J. Schmidhuber. Long short-term memory. Neural computation, 9(8):1735fi1780, 1997. +[16] S. Ioffe and C. Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. In ICML, 2015. +[17] H. Jegou, M. Douze, and C. Schmid. Product quantization for nearest neighbor search. TPAMI, 33, 2011. +[18] H. Jegou, F. Perronnin, M. Douze, J. Sanchez, P. Perez, and C. Schmid. Aggregating local image descriptors into compact codes. TPAMI, 2012. +[19] Y. Jia, E. Shelhamer, J. Donahue, S. Karayev, J. Long, R. Girshick, S. Guadarrama, and T. Darrell. Caffe: Convolutional architecture for fast feature embedding. arXiv:1408.5093, 2014. +[20] A. Krizhevsky. Learning multiple layers of features from tiny im.ages. Tech Report, 2009. +[21] A. Krizhevsky, I. Sutskever, and G. Hinton. Imagenet classification with deep convolutional neural networks. In NIPS, 2012. +[22] Y. LeCun, B. Boser, J. S. Denker, D. Henderson, R. E. Howard, W. Hubbard, and L. D. Jackel. Backpropagation applied to hand.written zip code recognition. Neural computation, 1989. +[23] Y. LeCun,L.Bottou,G.B.Orr,andK.-R.Mfiuller. Efficientbackprop. In Neural Networks: Tricks of the Trade, pages 9fi50. Springer, 1998. +[24] C.-Y. Lee, S. Xie, P. Gallagher, Z. Zhang, and Z. Tu. Deeply-supervised nets. arXiv:1409.5185, 2014. +[25] M. Lin, Q. Chen, and S. Yan. Network in network. arXiv:1312.4400, 2013. +[26] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollfiar, and C. L. Zitnick. Microsoft COCO: Common objects in context. In ECCV. 2014. +[27] J. Long, E. Shelhamer, and T. Darrell. Fully convolutional networks for semantic segmentation. In CVPR, 2015. +[28] G. Montfiufar, R. Pascanu, K. Cho, and Y. Bengio. On the number of linear regions of deep neural networks. In NIPS, 2014. +[29] V. Nair and G. E. Hinton. Rectified linear units improve restricted boltzmann machines. In ICML, 2010. +[30] F. Perronnin and C. Dance. Fisher kernels on visual vocabularies for image categorization. In CVPR, 2007. +[31] T. Raiko, H. Valpola, and Y. LeCun. Deep learning made easier by linear transformations in perceptrons. In AISTATS, 2012. +[32] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: Towards real-time object detection with region proposal networks. In NIPS, 2015. +[33] S. Ren, K. He, R. Girshick, X. Zhang, and J. Sun. Object detection networks on convolutional feature maps. arXiv:1504.06066, 2015. +[34] B. D. Ripley. Pattern recognition and neural networks. Cambridge university press, 1996. +[35] A. Romero, N. Ballas, S. E. Kahou, A. Chassang, C. Gatta, and Y. Bengio. Fitnets: Hints for thin deep nets. In ICLR, 2015. +[36] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, et al. Imagenet large scale visual recognition challenge. arXiv:1409.0575, 2014. +[37] A. M. Saxe, J. L. McClelland, and S. Ganguli. Exact solutions to the nonlinear dynamics of learning in deep linear neural networks. arXiv:1312.6120, 2013. +[38] N. N. Schraudolph. Accelerated gradient descent by factor-centering decomposition. Technical report, 1998. +[39] N. N. Schraudolph. Centering neural network gradient factors. In Neural Networks: Tricks of the Trade, pages 207fi226. Springer, 1998. +[40] P. Sermanet, D. Eigen, X. Zhang, M. Mathieu, R. Fergus, and Y. Le-Cun. Overfeat: Integrated recognition, localization and detection using convolutional networks. In ICLR, 2014. +[41] K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. In ICLR, 2015. +[42] R. K. Srivastava, K. Greff, and J. Schmidhuber. Highway networks. arXiv:1505.00387, 2015. +[43] R. K. Srivastava, K. Greff, and J. Schmidhuber. Training very deep networks. 1507.06228, 2015. +[44] C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Er.han, V. Vanhoucke, and A. Rabinovich. Going deeper with convolu.tions. In CVPR, 2015. +[45] R. Szeliski. Fast surface interpolation using hierarchical basis func.tions. TPAMI, 1990. +[46] R. Szeliski. Locally adapted hierarchical basis preconditioning. In SIGGRAPH, 2006. +[47] T. Vatanen, T. Raiko, H. Valpola, and Y. LeCun. Pushing stochas.tic gradient towards second-order methodsfibackpropagation learn.ing with transformations in nonlinearities. In Neural Information Processing, 2013. +[48] A. Vedaldi and B. Fulkerson. VLFeat: An open and portable library of computer vision algorithms, 2008. +[49] W. Venables and B. Ripley. Modern applied statistics with s-plus. 1999. +[50] M. D. Zeiler and R. Fergus. Visualizing and understanding convolu.tional neural networks. In ECCV, 2014. + +A. Object Detection Baselines + +In this section we introduce our detection method based on the baseline Faster R-CNN [32] system. The models are initialized by the ImageNet classification models, and then fine-tuned on the object detection data. We have experi.mented with ResNet-50/101 at the time of the ILSVRC & COCO 2015 detection competitions. +Unlike VGG-16 used in [32], our ResNet has no hidden fc layers. We adopt the idea of fiNetworks on Conv feature maps (NoC) [33] to address this issue. We compute the full-image shared conv feature maps using those lay.ers whose strides on the image are no greater than 16 pixels (i.e., conv1, conv2 x, conv3 x, and conv4 x, totally 91 conv layers in ResNet-101; Table 1). We consider these layers as analogous to the 13 conv layers in VGG-16, and by doing so, both ResNet and VGG-16 have conv feature maps of the same total stride (16 pixels). These layers are shared by a region proposal network (RPN, generating 300 proposals) +[32] and a Fast R-CNN detection network [7]. RoI pool.ing [7] is performed before conv5 1. On this RoI-pooled feature, all layers of conv5 x and up are adopted for each region, playing the roles of VGG-16fis fc layers. The final classification layer is replaced by two sibling layers (classi.fication and box regression [7]). +For the usage of BN layers, after pre-training, we compute the BN statistics (means and variances) for each layer on the ImageNet training set. Then the BN layers are fixed during fine-tuning for object detection. As such, the BN layers become linear activations with constant offsets and scales, and BN statistics are not updated by fine-tuning. We fix the BN layers mainly for reducing memory consumption in Faster R-CNN training. +PASCAL VOC +Following [7, 32], for the PASCAL VOC 2007 test set, we use the 5k trainval images in VOC 2007 and 16k train-val images in VOC 2012 for training (fi07+12fi). For the PASCAL VOC 2012 test set, we use the 10k trainval+test images in VOC 2007 and 16k trainval images in VOC 2012 for training (fi07++12fi). The hyper-parameters for train.ing Faster R-CNN are the same as in [32]. Table 7 shows the results. ResNet-101 improves the mAP by >3% over VGG-16. This gain is solely because of the improved features learned by ResNet. +MS COCO +The MS COCO dataset [26] involves 80 object cate.gories. We evaluate the PASCAL VOC metric (mAP @ IoU = 0.5) and the standard COCO metric (mAP @ IoU = .5:.05:.95). We use the 80k images on the train set for train.ing and the 40k images on the val set for evaluation. Our detection system for COCO is similar to that for PASCAL VOC. We train the COCO models with an 8-GPU imple.mentation, and thus the RPN step has a mini-batch size of 8 images (i.e., 1 per GPU) and the Fast R-CNN step has a mini-batch size of 16 images. The RPN step and Fast R.CNN step are both trained for 240k iterations with a learn.ing rate of 0.001 and then for 80k iterations with 0.0001. +Table 8 shows the results on the MS COCO validation set. ResNet-101 has a 6% increase of mAP@[.5, .95] over VGG-16, which is a 28% relative improvement, solely con.tributed by the features learned by the better network. Re.markably, the mAP@[.5, .95]fis absolute increase (6.0%) is nearly as big as mAP@.5fis (6.9%). This suggests that a deeper network can improve both recognition and localiza.tion. +B. Object Detection Improvements +For completeness, we report the improvements made for the competitions. These improvements are based on deep features and thus should benefit from residual learning. +MS COCO +Box refinement. Our box refinement partially follows the it.erative localization in [6]. In Faster R-CNN, the final output is a regressed box that is different from its proposal box. So for inference, we pool a new feature from the regressed box and obtain a new classification score and a new regressed box. We combine these 300 new predictions with the orig.inal 300 predictions. Non-maximum suppression (NMS) is applied on the union set of predicted boxes using an IoU threshold of 0.3 [8], followed by box voting [6]. Box re.finement improves mAP by about 2 points (Table 9). +Global context. We combine global context in the Fast R-CNN step. Given the full-image conv feature map, we pool a feature by global Spatial Pyramid Pooling [12] (with a fisingle-levelfi pyramid) which can be implemented as fiRoIfi pooling using the entire imagefis bounding box as the RoI. This pooled feature is fed into the post-RoI layers to obtain a global context feature. This global feature is con.catenated with the original per-region feature, followed by the sibling classification and box regression layers. This new structure is trained end-to-end. Global context im.proves mAP@.5 by about 1 point (Table 9). +Multi-scale testing. In the above, all results are obtained by single-scale training/testing as in [32], where the imagefis shorter side is s = 600 pixels. Multi-scale training/testing has been developed in [12, 7] by selecting a scale from a feature pyramid, and in [33] by using maxout layers. In our current implementation, we have performed multi-scale testing following [33]; we have not performed multi-scale training because of limited time. In addition, we have per.formed multi-scale testing only for the Fast R-CNN step (but not yet for the RPN step). With a trained model, we compute conv feature maps on an image pyramid, where the imagefis shorter sides are s .{200, 400, 600, 800, 1000}. + + <
> + +Table 9. Object detection improvements on MS COCO using Faster R-CNN and ResNet-101. + + <
> + +Table 10. Detection results on the PASCAL VOC 2007 test set. The baseline is the Faster R-CNN system. The system fibaseline+++fi include box refinement, context, and multi-scale testing in Table 9. + + +system net data mAP areo bike bird boat bottle bus car cat chair cow table dog horse mbike person plant sheep sofa train tv +baseline baseline baseline+++ VGG-16 ResNet-101 ResNet-101 07++12 07++12 COCO+07++12 70.4 73.8 83.8 84.9 79.8 74.3 53.9 49.8 77.5 75.9 88.5 45.6 77.1 55.3 86.9 81.7 80.9 79.6 40.1 72.6 60.9 81.2 61.5 86.5 81.6 77.2 58.0 51.0 78.6 76.6 93.2 48.6 80.4 59.0 92.1 85.3 84.8 80.7 48.1 77.3 66.5 84.7 65.6 92.1 88.4 84.8 75.9 71.4 86.3 87.8 94.2 66.8 89.4 69.2 93.9 91.9 90.9 89.6 67.9 88.2 76.8 90.3 80.0 +Table 11. Detection results on the PASCAL VOC 2012 test set (http://host.robots.ox.ac.uk:8080/leaderboard/displaylb.php?challengeid=11&compid=4). The baseline is the Faster R-CNN system. The system baseline+++ include box refinement, context, and multi-scale testing in Table 9. + + +We select two adjacent scales from the pyramid following [33]. RoI pooling and subsequent layers are performed on the feature maps of these two scales [33], which are merged by maxout as in [33]. Multi-scale testing improves the mAP by over 2 points (Table 9). +Using validation data. Next we use the 80k+40k trainval set for training and the 20k test-dev set for evaluation. The test.dev set has no publicly available ground truth and the result is reported by the evaluation server. Under this setting, the results are an mAP@.5 of 55.7% and an mAP@[.5, .95] of 34.9% (Table 9). This is our single-model result. +Ensemble. In Faster R-CNN, the system is designed to learn region proposals and also object classifiers, so an ensemble can be used to boost both tasks. We use an ensemble for proposing regions, and the union set of proposals are pro.cessed by an ensemble of per-region classifiers. Table 9 shows our result based on an ensemble of 3 networks. The mAP is 59.0% and 37.4% on the test-dev set. This result won the 1st place in the detection task in COCO 2015. + +We revisit the PASCAL VOC dataset based on the above model. With the single model on the COCO dataset (55.7% mAP@.5 in Table 9), we fine-tune this model on the PAS.CAL VOC sets. The improvements of box refinement, con.text, and multi-scale testing are also adopted. By doing so we achieve 85.6% mAP on PASCAL VOC 2007 (Table 10) and 83.8% on PASCAL VOC 2012 (Table 11)6. The result on PASCAL VOC 2012 is 10 points higher than the previ.ous state-of-the-art result [6]. + +<
> + +Table 12. Our results (mAP, %) on the ImageNet detection dataset. Our detection system is Faster R-CNN [32] with the improvements in Table 9, using ResNet-101. + + +ImageNet Detection +The ImageNet Detection (DET) task involves 200 object categories. The accuracy is evaluated by mAP@.5. Our object detection algorithm for ImageNet DET is the same as that for MS COCO in Table 9. The networks are pre.trained on the 1000-class ImageNet classification set, and are fine-tuned on the DET data. We split the validation set into two parts (val1/val2) following [8]. We fine-tune the detection models using the DET training set and the val1 set. The val2 set is used for validation. We do not use other ILSVRC 2015 data. Our single model with ResNet-101 has + +<
> + +Table 13. Localization error (%) on the ImageNet validation. In the column of fiLOC error on GT classfi ([41]), the ground truth class is used. In the fitestingfi column, fi1-cropfi denotes testing on a center crop of 224.224 pixels, fidensefi denotes dense (fully convolutional) and multi-scale testing. + +<
> + +Table 14. Comparisons of localization error (%) on the ImageNet dataset with state-of-the-art methods. + + +58.8% mAP and our ensemble of 3 models has 62.1% mAP on the DET test set (Table 12). This result won the 1st place in the ImageNet detection task in ILSVRC 2015, surpassing the second place by 8.5 points (absolute). + +C. ImageNet Localization + +The ImageNet Localization (LOC) task [36] requires to classify and localize the objects. Following [40, 41], we assume that the image-level classifiers are first adopted for predicting the class labels of an image, and the localiza.tion algorithm only accounts for predicting bounding boxes based on the predicted classes. We adopt the fiper-class re.gressionfi (PCR) strategy [40, 41], learning a bounding box regressor for each class. We pre-train the networks for Im.ageNet classification and then fine-tune them for localiza.tion. We train networks on the provided 1000-class Ima.geNet training set. +Our localization algorithm is based on the RPN frame.work of [32] with a few modifications. Unlike the way in +[32] that is category-agnostic, our RPN for localization is designed in a per-class form. This RPN ends with two sib.ling 1.1 convolutional layers for binary classification (cls) and box regression (reg), as in [32]. The cls and reg layers are both in a per-class from, in contrast to [32]. Specifi.cally, the cls layer has a 1000-d output, and each dimension is binary logistic regression for predicting being or not be.ing an object class; the reg layer has a 1000.4-d output consisting of box regressors for 1000 classes. As in [32], our bounding box regression is with reference to multiple translation-invariant fianchorfi boxes at each position. +As in our ImageNet classification training (Sec. 3.4), we randomly sample 224.224 crops for data augmentation. We use a mini-batch size of 256 images for fine-tuning. To avoid negative samples being dominate, 8 anchors are ran.domly sampled for each image, where the sampled positive and negative anchors have a ratio of 1:1 [32]. For testing, the network is applied on the image fully-convolutionally. +Table 13 compares the localization results. Following [41], we first perform fioraclefi testing using the ground truth class as the classification prediction. VGGfis paper [41] re-ports a center-crop error of 33.1% (Table 13) using ground truth classes. Under the same setting, our RPN method us.ing ResNet-101 net significantly reduces the center-crop er.ror to 13.3%. This comparison demonstrates the excellent performance of our framework. With dense (fully convolu.tional) and multi-scale testing, our ResNet-101 has an error of 11.7% using ground truth classes. Using ResNet-101 for predicting classes (4.6% top-5 classification error, Table 4), the top-5 localization error is 14.4%. +The above results are only based on the proposal network (RPN) in Faster R-CNN [32]. One may use the detection network (Fast R-CNN [7]) in Faster R-CNN to improve the results. But we notice that on this dataset, one image usually contains a single dominate object, and the proposal regions highly overlap with each other and thus have very similar RoI-pooled features. As a result, the image-centric training of Fast R-CNN [7] generates samples of small variations, which may not be desired for stochastic training. Motivated by this, in our current experiment we use the original R-CNN [8] that is RoI-centric, in place of Fast R-CNN. +Our R-CNN implementation is as follows. We apply the per-class RPN trained as above on the training images to predict bounding boxes for the ground truth class. These predicted boxes play a role of class-dependent proposals. For each training image, the highest scored 200 proposals are extracted as training samples to train an R-CNN classi.fier. The image region is cropped from a proposal, warped to 224.224 pixels, and fed into the classification network as in R-CNN [8]. The outputs of this network consist of two sibling fc layers for cls and reg, also in a per-class form. This R-CNN network is fine-tuned on the training set us.ing a mini-batch size of 256 in the RoI-centric fashion. For testing, the RPN generates the highest scored 200 proposals for each predicted class, and the R-CNN network is used to update these proposalsfi scores and box positions. +This method reduces the top-5 localization error to 10.6% (Table 13). This is our single-model result on the validation set. Using an ensemble of networks for both clas.sification and localization, we achieve a top-5 localization error of 9.0% on the test set. This number significantly out.performs the ILSVRC 14 results (Table 14), showing a 64% relative reduction of error. This result won the 1st place in the ImageNet localization task in ILSVRC 2015. +<> <> <> + + +<> <> <> + Direct Feedback Alignment Scales to Modern Deep Learning Tasks and Architectures + + Julien Launay 1;2 Iacopo Poli 1 François Boniface 1 Florent Krzakala 1;2 + + 1 LightOn 2 École Normale Supérieure + + Abstract + + Despite being the workhorse of deep learning, the backpropagation algorithm is + no panacea. It enforces sequential layer updates, thus preventing efficient paral- + lelization of the training process. Furthermore, its biological plausibility is being + challenged. Alternative schemes have been devised; yet, under the constraint of + synaptic asymmetry, none have scaled to modern deep learning tasks and architec- + tures. Here, we challenge this perspective, and study the applicability of Direct + Feedback Alignment to neural view synthesis, recommender systems, geometric + learning, and natural language processing. In contrast with previous studies lim- + ited to computer vision tasks, our findings show that it successfully trains a large + range of state-of-the-art deep learning architectures, with performance close to + fine-tuned backpropagation. At variance with common beliefs, our work supports + that challenging tasks can be tackled in the absence of weight transport. + + + 1 Introduction + + While the backpropagation algorithm (BP) [1,2] is at the heart of modern deep learning achievements, + it is not without pitfalls. For one, its weight updates are non-local and rely on upstream layers. Thus, + they cannot be easily parallelized [3], incurring important memory and compute costs. Moreover, + its biological implementation is problematic [4,5]. For instance, BP relies on the transpose of the + weights to evaluate updates. Hence, synaptic symmetry is required between the forward and backward + path: this is implausible in biological brains, and known as the weight transport problem [6]. + Consequently, alternative training algorithms have been developed. Some of these algorithms are + explicitly biologically inspired [7–13], while others focus on making better use of available compute + resources [3,14–19]. Despite these enticing characteristics, none has been widely adopted, as they + are often demonstrated on a limited set of tasks. Moreover, as assessed in [20], their performance on + challenging datasets under the constraint of synaptic asymmetry is disappointing. + We seek to broaden this perspective, and demonstrate the applicability of Direct Feedback Alignment + (DFA) [19] in state-of-the-art settings: from applications of fully connected networks such as neural + view synthesis and recommender systems, to geometric learning with graph convolutions, and natural + language processing with Transformers. Our results define new standards for learning without weight + transport and show that challenging tasks can indeed be tackled under synaptic asymmetry. + All code needed to reproduce our experiments is available at https://github.com/lightonai/dfa-scales-to-modern-deep-learning. + + 1.1 Related work + + Training a neural network is a credit assignment problem: an update is derived for each parameter + from its contribution to a cost function. To solve this problem, a spectrum of algorithms exists [21]. + + Biologically motivated methods Finding a training method applicable under the constraints of + biological brains remains an open problem. End-to-end propagation of gradients is unlikely to occur + [22], implying local learning is required. Furthermore, the weight transport problem enforces synaptic + asymmetry [6]. Inspired by auto-encoders, target propagation methods (TP) [10–12] train distinct + feedback connections to invert the feedforward ones. Feedback alignment (FA) [13] replaces the + transpose of the forward weights used in the backward pass by a random matrix. Throughout training, + the forward weights learn to align with the arbitrary backward weights, eventually approximating BP. + + Beyond biological considerations As deep learning models grow bigger, large-scale distributed + training is increasingly desirable. Greedy layer-wise training [14] allows networks to be built layer + by layer, limiting the depth of backpropagation. To enable parallelization of the backward pass, + updates must only depend on local quantities. Unsupervised learning is naturally suited for this, + as it relies on local losses such as Deep InfoMax [17] and Greedy InfoMax [18]. More broadly, + synthetic gradient methods, like decoupled neural interfaces [3,15] and local error signals (LES) + [16], approximate gradients using layer-wise trainable feedback networks. DFA [19] expands on FA + and directly projects a global error to each layer. A shared feedback path is still needed, but it only + depends on a simple random projection operation. + + Performance of alternative methods Local training methods are successful in unsupervised learn- + ing [18]. Even in a supervised setting, they scale to challenging datasets like CIFAR-100 or ImageNet + [14,16]. Thus, locality is not too penalizing. However, TP, FA, and DFA are unable to scale to these + tasks [20]. In fact, DFA is unable to train convolutional layers [23]. To enable feedback alignment + techniques to perform well on challenging datasets, some form of weight transport is necessary: + either by explicitly sharing sign information [24–26], or by introducing dedicated phases of alignment + for the forward and backward weights where some information is shared [27]. To the best of our + knowledge, no method compatible with the weight transport problem has ever been demonstrated on + challenging tasks. + + 1.2 Motivations and contributions + + We focus on DFA, a compromise between biological and computational considerations. Notably, + DFA is compatible with synaptic asymmetry: this asymmetry raises important challenges, seemingly + preventing learning in demanding settings. Moreover, it allows for asynchronous weight updates, + and puts a single operation at the center of the training stage. This enables new classes of training + co-processors [28, 29], leveraging dedicated hardware to perform the random projection. + + Extensive survey We apply DFA in a large variety of settings matching current trends in machine + learning. Previous works have found that DFA is unsuitable for computer vision tasks [20,23]; but + computer vision alone cannot be the litmus test of a training method. Instead, we consider four vastly + different domains, across eight tasks, and with eleven different architectures. This constitutes a survey + of unprecedented scale for an alternative training method, and makes a strong case for the possibility + of learning without weight transport in demanding scenarios. + + Challenging settings We demonstrate the ability of DFA to tackle challenging tasks. We success- + fully learn and render real-world 3D scenes (section 3.1.1); we perform recommendation at scale + (section 3.1.2); we explore graph-based citation networks (section 3.2); and we consider language + modelling with a Transformer (section 3.3). We study tasks at the state-of-the-art level, that have + only been recently successfully tackled with deep learning. + + Modern architectures We prove that the previously established failure of DFA to train convolutions + does not generalize. By evaluating performance metrics, comparing against a shallow baseline, + measuring alignment, and visualizing t-SNE embeddings, we show that learning indeed occurs in + layers involving graph convolutions and attention. This significantly broadens the applicability of + DFA–previously thought to be limited to simple problems like MNIST and CIFAR-10. + + 2 Methods + + Forward pass In a fully connected network, at layer i out of N, neglecting its biases, with W_i its + weight matrix, f_i its non-linearity, and hi its activations, the forward pass is: + + <> (1) + + <> is the input data, and <> are the predictions. A task-specific cost function + <> is computed to quantify the quality of the predictions with respect to the targets y. + + Backward pass with BP The weight updates are computed by backpropagation of the error vector. + Using the chain-rule of derivatives, each neuron is updated based on its contribution to the cost + function. Leaving aside the specifics of the optimizer used, the equation for the weight updates is: + + <> (2) + + Backward pass with DFA The gradient signal <> of the (i+1)-th layer violates synaptic + asymmetry. DFA replaces it with a random projection of the topmost derivative of the loss, <>. + For common classification and regression losses such as the mean squared error or the negative log + likelihood, this corresponds to a random projection of the global error <>. With B_i, a fixed + random matrix of appropriate shape drawn at initialization for each layers: + + <> (3) + + 3 Experiments + + We study the applicability of DFA to a diverse set of applications requiring state-of-the-art architec- + tures. We start with fully connected networks, where DFA has already been demonstrated, and address + new challenging settings. We then investigate geometric learning: we apply DFA to graph neural net- + works in classification tasks on citation networks, as well as graph autoencoders. These architectures + feature graph convolutions and attention layers. Finally, we use DFA to train a transformer-based + Natural Language Processing (NLP) model on a dataset of more than 100 million tokens. + + 3.1 Fully connected architectures + + DFA has been successful at training fully connected architectures, with performance on-par with + backpropagation [19,20]. However, only computer vision tasks have been considered, where fully + connected networks considerably underperform their convolutional counterpart. Here, we focus on + tasks where fully connected architectures are state-of-the-art. Moreover, the architectures considered + are deeper and more complex than those necessary to solve a simple task like MNIST. + + 3.1.1 Neural view synthesis with Neural Radiance Fields + The most recent state-of-the-art neural view synthesis methods are based on large fully connected + networks: this is an ideal setting for a first evaluation of DFA on a challenging task. + + Background There has been growing interest in methods capable of synthesizing novel renders of + a 3D scene using a dataset of past renders. The network is trained to learn an inner representation of + the scene, and a classical rendering system can then query the model to generate novel views. With + robust enough methods, real-world scenes can also be learned from a set of pictures. + Until recently, most successful neural view synthesis methods were based on sampled volumetric + representations [30–32]. In this context, Convolutional Neural Networks (CNNs) can be used to + smooth out the discrete sampling of 3D space [33,34]. However, these methods scale poorly to + higher resolutions, as they still require finer and finer sampling. Conversely, alternative schemes + based on a continuous volume representation have succeeded in generating high-quality renders [35], + even featuring complex phenomenons such as view-dependant scattering [36]. These schemes make + point-wise predictions, and use fully connected neural networks to encode the scene. + + <
> + + Figure 1: Comparisons of NeRF-DFA with state-of-the-art methods trained with BP on the most + challenging synthetic and real-world scenes. While NeRF-DFA generates render of lower quality, + they maintain multi-view consistency and exhibit no geometric artifacts. BP results from [36]. + + + Setting We employ Neural Radiance Fields (NeRF) [36], the state-of-the-art for neural view + synthesis. NeRF represents scenes as a continuous 5D function of space–three spatial coordinates, + two viewing angles–and outputs a point-wise RGB radiance and opacity. A ray-casting renderer can + then query the network to generate arbitrary views of the scene. The network modeling the continuous + function is 10 layers deep. Two identical networks are trained: the coarse network predictions inform + the renderer about the spatial coordinates that the fine network should preferentially evaluate to avoid + empty space and occluded regions. + + Results We report quantitative results of training NeRF with DFA in Table 1. Neural view synthesis + methods are often better evaluated qualitatively: we showcase some renders in Figure 1. + On a dataset of renders featuring complex scenes with non-Lambertian materials (NeRF-Synthetic + [36]), NeRF-DFA outperforms two previous fine-tuned state-of-the-art methods–Scene Representation + Networks (SRN) [35] and Local Light Field Fusion (LLFF) [32]–and nearly matches the performance + of Neural Volumes (NV) [34]. While DFA underperforms alternative methods trained with BP on + the real world view dataset (LLFF-Real [32]), its performance remains significant: real world view + synthesis is a challenging tasks, and this level of PSNR indicates that learning is indeed happening. + In particular, we find that NeRF-DFA retains the key characteristics of NeRF-BP: it can render view- + dependant effects, and is multi-view consistent. The last point is an especially important achievement, + and most visible in videos, as it is a challenge for most algorithms [30–32,35]. The main drawback + of NeRF-DFA appears to be a seemingly lower render definition. The NeRF architecture has not + + + Table 1: Peak Signal to Noise Ratio (PSNR, higher is better) of neural view synthesis methods + trained with backpropagation against NeRF trained with DFA. Even when trained with DFA, NeRF + outperforms two state-of-the-art methods on a synthetic dataset (NeRF-Synthetic), and achieves fair + performance on a challenging real world views datasets (LLFF-Real). BP results from [36]. + + <
> + + been fine-tuned to achieve these results: DFA works out-of-the-box on this advanced method. Future + research focusing on architectural changes to NeRF could improve performance with DFA; some + preliminary results are included in the supplementary material. + + 3.1.2 Click-through rate prediction with recommender systems + We have demonstrated that DFA can train large fully connected networks on the difficult task of neural + view synthesis. We now seek to use DFA in more complex heterogeneous architectures, combining + the use of fully connected networks with other machine learning methods.Recommender systems are + an ideal application for such considerations. + + Background Recommender systems are used to model the behavior of users and predict future + interactions. In particular, in the context of click-through rate (CTR) prediction, these systems model + the probability of a user clicking on a given item. Building recommender systems is hard [37]: their + input is high-dimensional and sparse, and the model must learn to extract high-order combinatorial + features from the data. Moreover, they need to do so efficiently, as they are used to make millions of + predictions and the training data may contain billions of examples. + Factorization Machines (FM) [38] use inner-products of latent vectors between features to extract + pairwise feature interactions. They constitute an excellent baseline for shallow recommender systems, + but fail to efficiently transcribe higher-level features. To avoid extensive feature engineering, it has + been suggested that deep learning can be used in conjunction with wide shallow models to extract + these higher-level features [39]. In production, these systems are regularly retrained on massive + datasets: the speedup allowed by backward unlocking in DFA is thus of particular interest. + + Setting Deep Factorization Machines (DeepFM) [40] combine FM and a deep fully connected + neural network, which we train with DFA. The input embedding is still trained directly via gradient + descent, as weight transport is not necessary to backpropagate through the FM. Deep & Cross + Networks (DCN) [41] replace the FM with a Cross Network, a deep architecture without non- + linearities capable of extracting high-degree interactions across features. We train the fully connected + network, the deep cross network, and the embeddings with DFA. Finally, Adaptative Factorization + Network (AFN) [42] uses Logarithmic Neural Networks [43] to enhance the representational power + of its deep component. We evaluate these methods on the Criteo dataset [44], which features nearly + 46 million samples of one million sparse features. This is a difficult task, where performance + improvements of the AUC on the 0.001-level can enhance CTR significantly [39]. + + Results Performance metrics are reported in Table 2. To obtain these results, a simple hyperpa- + rameter grid search over optimization and regularization parameters was performed for BP and DFA + independently. DFA successfully trains all methods above the FM baseline, and in fact matches BP + performance in both DeepFM and AFN. Because of their complexity, recommender systems require + intensive tuning and feature engineering to perform at the state-of-the-art level–and reproducing + existing results can be challenging [45]. Hence, it is not surprising that a performance gap exists with + Deep&Cross–further fine-tuning may be necessary for DFA to reach BP performance. + Alignment measurements corroborate that learning is indeed occurring in the special layers of + Deep&Cross and AFN–see supplementary for details. Our results on recommender systems support + that DFA can learn in a large variety of settings, and that weight transport is not necessary to solve a + difficult recommendation task. + + + Table 2: AUC (higher is better) and log loss (lower is better) of recommender systems trained on the + Criteo dataset [44]. Even in complex heterogeneous architectures, DFA performance is in line with + BP. Values in bold indicate DFA AUC within 0.001 from the BP AUC or better. + + <
> + + + 3.2 Geometric Learning with Graph Convolutional Networks + + The use of sophisticated architectures beyond fully connected layers is necessary for certain tasks, + such as geometric learning[46], where information lies in a complex structured domain. To address + geometric learning tasks, methods capable of handling graph-based data are commonly needed. + Graph convolutional neural networks (GCNNs) [47–50] have demonstrated the ability to process + large-scale graph data efficiently. We study the applicability of DFA to these methods, including + recent architectures based on an attention mechanism. Overall, this is an especially interesting setting, + as DFA fails to train more classic 2D image convolutional layers [23]. + + Background Complex data like social networks or brain connections lie on irregular or non- + Euclidean domains. They can be represented as graphs, and efficient processing in the spectral + domain is possible. Non-spectral techniques to apply neural networks to graphs have also been + developed [51–53], but they exhibit unfavorable scaling properties. The success of CNNs in deep + learning can be attributed to their ability to efficiently process structured high-dimensional data + by sharing local filters. Thus, a generalization of the convolution operator to the graph domain is + desirable: [47] first proposed a spectral convolution operation for graphs, and [48] introduced a form + of regularization to enforce spatial locality of the filters. We use DFA to train different such GCNNs + implementations. We study both spectral and non-spectral convolutions, as well as methods inspired + by the attention mechanism. We consider the task of semi-supervised node classification: nodes from + a graph are classified using their relationship to other nodes as well as node-wise features. + + Setting Fast Localized Convolutions (ChebConv) [49] approximate the graph convolution kernel + with Chebyshev polynomials, and are one of the first scalable convolution methods on graph. Graph + Convolutions (GraphConv) [50] remove the need for an explicit parametrization of the kernel by + enforcing linearity of the convolution operation on the graph Laplacian spectrum. It is often considered + as the canonical graph convolution. More recent methods do not operate in the spectral domain. Spline + Convolutions (SplineConv) [54] use a spline-based kernel, enabling the inclusion of information + about the relative positioning of nodes, enhancing their representational power–for instance in the + context of 3D meshes. Graph Attention Networks (GATConv) [55] use self-attention [56] layers to + enable predictions at a given node to attend more specifically to certain parts of its neighborhood. + Finally, building upon Jumping Knowledge Network [57], Just Jump (DNAConv) [58] uses multi- + head attention [59] to enhance the aggregation process in graph convolutions and enable deeper + architectures. We use PyTorch Geometric [60] for reference implementation of all of these methods. + We evaluate performance on three citation network datasets: Cora, CiteSeer, and PubMed [61]. + + Results We report classification accuracy in Table 3. BP and DFA regularization and optimiza- + tion hyperparameters are fine-tuned separately on the Cora dataset. In general, we find that less + regularization and lower learning rates are needed with DFA. DFA successfully trains all graph + methods, independent of whether they use the spectral domain or not, and even if they use attention. + Furthermore, for GraphConv, SplineConv, and GATConv DFA performance nearly matches BP. + As GCNNs struggle with learning meaningful representations when stacking many layers [62], all + architectures but DNAConv are quite shallow (two layers). However, DFA performance is still + significantly higher than that of a shallow training method–see supplementary for details. The lower + performance on DNAConv is not a failure to learn: alignment measurements show that learning is + indeed occurring. It may be explained instead by a need for more in-depth fine-tuning, as this is a + deep architecture with 5 successive attention layers. + + Table 3: Classification accuracy (%, higher is better) of graph convolution methods trained with BP + and DFA, on citation networks [61]. But for ChebConv and DNAConv, DFA performance nearly + matches BP performance. Values in bold when DFA is within 2.5% of BP. + + <
> + + Table 4: AUC and Average Precision Figure 2: t-SNE visualization of the hidden layer + (AP, higher is better) for a Graph- activations of a two-layer GraphConv trained on + Conv GAE trained with BP or DFA Cora with DFA. Classes forms clear clusters, indicating + that a useful intermediary representation is learned. Colors represent different classes. + on citation networks. DFA reproduces BP performance. + + + We further demonstrate that DFA helps graph convolutions learn meaningful representations by + applying t-SNE [63,64] to the hidden layer activations in GraphConv (Figure 2). Cluster of classes + are well-separated, indicating that a useful intermediary representation is derived by the first layer. + + Graph autoencoders We consider one last application of graph convolutions, in the context of + graph autoencoders (GAE). We train a non-probabilistic GAE [65] based on GraphConv with DFA, + and report results in Table 4. DFA performance is always in line with BP. + + 3.3 Natural Language Processing with Transformers + + We complete our study by training a Transformer [59] on a language modelling task. Transformers + have proved successful in text, image, music generation, machine translation, and many supervised + NLP tasks [59,66–69]. Here, we demonstrate that DFA can train them, and we show the influence of + tuning the optimizer hyperparameters in narrowing the gap with BP. + + Background NLP has largely benefited from advances in deep learning. Recurrent Neural Net- + works were responsible for early breakthroughs, but their sequential nature prevented efficient + parallelization of data processing. Transformers are attention-based models that do not rely on + recurrence or convolution. Their ability to scale massively has allowed the training of models with + several billion parameters [70,71], obtaining state-of-the-art results on all NLP tasks: Transformers + now top the prominent SQuAD 2.0 [72,73] and SuperGLUE [74] benchmarks. In parallel, transfer + learning in NLP has leaped forward thanks to language modelling, the unsupervised task of predicting + the next word. It can leverage virtually unlimited data from web scraping [75]. This enabled the + training of universal language models[76] on extremely large and diversified text corpora. These + models are useful across a wide range of domains, and can solve most NLP tasks after fine-tuning. + + Setting The prominence of both language modelling and Transformers gives us the ideal candidate + for our NLP experiments: we train a Transformer to predict the next word on the WikiText-103 + dataset [77], a large collection of good and featured Wikipedia articles. We use byte-pair-encoding + [78] with 32,000 tokens. Our setup is similar to GPT [66]: we adapt the Transformer, originally an + encoder-decoder model designed for machine translation, to language modelling. We keep only the + encoder and mask the tokens to predict. Our architecture consists in 6 layers, 8 attention heads, a + model dimension of 512, and a hidden size of 2048 in the feed-forward blocks. The text is sliced + in chunks of 128 tokens and batches of 64 such chunks, resulting in 8192 tokens per batch. Our + baseline is trained with BP using the optimization setup of [59]. We found perplexity after 20 epochs + to be an excellent indicator of perplexity at convergence; to maximize the number of experiments + we could perform, we report the best validation perplexity after 20 epochs. We study two ways of + implementing DFA: applying the feedback after every encoder block (macro) or after every layer in + those blocks (micro). The input embedding layer receives gradients from the next feedback point + through BP. This leaves some amount of weight transport even in the micro-case. + + Table 5: Best validation perplexity after 20 epochs of a Transformer trained on WikiText-103 (lower + is better). The BP and DFA baselines share all hyper-parameters. In Macro the feedback is applied + after every transformer layer, while in Micro the feedback is applied after every sub-layer. The + learning rate of Adam without the learning rate scheduler is <>. With the scheduler, the initial + learning rate is <> and it is multiplied by 0.2 when performance plateaus, with a patience of 1. + * score after 22 epochs to let the learning rate scheduler take effect + + <
> + + Results Our results are summarized in Table 5. Hyper-parameters fine-tuned for BP did not fare + well with DFA, but changes in the optimizer narrowed the gap between BP and DFA considerably. + The learning rate schedule used on top of Adam [79] in [59] proved detrimental. Using Adam alone + required reducing the learning rate between BP and DFA. Increasing 2 from 0.98 [59] to 0.999 + improved performance significantly. Finally, a simple scheduler that reduces the learning rate when + the validation perplexity plateaus helped reducing it further. Considering that the perplexity of the + shallow baseline is over 400, DFA is clearly able to train Transformers. However, our results are not + on par with BP, especially in the micro setting. A substantial amount of work remains to make DFA + competitive with BP, even more so in a minimal weight transport scenario. The large performance + improvements brought by small changes in the optimizer indicate that intensive fine-tuning, common + in publications introducing state-of-the-art results, could close the gap between BP and DFA. + + 4 Conclusion and outlooks + + We conducted an extensive study demonstrating the ability of DFA to train modern architectures. We + considered a broad selection of domains and tasks, with complex models featuring graph convolutions + and attention. Our results on large networks like NeRF and Transformers are encouraging, suggesting + that with further tuning, such leading architectures can be effectively trained with DFA. Future work + on principled training with DFA–in particular regarding the influence of common practices and + whether new procedures are required–will help close the gap with BP. + More broadly, we verified for the first time that learning under synaptic asymmetry is possible beyond + fully-connected layers, and in tasks significantly more difficult than previously considered. This + addresses a notable concern in biologically-plausible architectures. DFA still requires an implausible + global feedback pathway; however, local training has already been demonstrated at scale. The next + step towards biologically-compatible learning is a local method without weight transport. + While the tasks and architectures we have considered are not biologically inspired, they constitute + a good benchmark for behavioral realism[20]. Any learning algorithm claiming to approximate + the brain should reproduce its ability to solve complex and unseen task. Furthermore, even though + the current implementation of mechanisms like attention is devoid of biological considerations, they + represent broader concepts applicable to human brains [80]. Understanding how our brain learns is a + gradual process, and future research could incorporate further realistic elements, like spiking neurons. + Finally, unlocking the backward pass in large architectures like Transformers is promising. More opti- + mized implementation of DFA–built at a lower-level of existing ML libraries–could unlock significant + speed-up. Leveraging the use of a single random projection as the cornerstone of training, dedicated + accelerators may employ more exotic hardware architectures. This will open new possibilities in the + asynchronous training of massive models. + + Broader Impact + + Of our survey This study is the first experimental validation of DFA as an effective training method + in a wide range of challenging tasks and neural networks architectures. This significantly broadens the + applications of DFA, and more generally brings new insight on training techniques alternative to back- + propagation. From neural rendering and recommender systems, to natural language processing or + geometric learning, each of these applications has its own potential impact. Our task selection process + was motivated by current trends in deep learning, as well as by technically appealing mechanisms + (graph convolutions, attention). A limit of our survey is that our–arguably biased–selection of tasks + cannot be exhaustive. Our experiments required substantial cloud compute resources, with state-of- + the-art GPU hardware. Nevertheless, as this study provides new perspectives for hardware accelerator + technologies, it may favor the application of neural networks in fields previously inaccessible because + of computational limits. Future research on DFA should continue to demonstrate its use in novel + contexts of interest as they are discovered. + + Of the considered applications Each of the applications considered in our study has a wide + potential impact, consider for example the impact of textual bias in pretrained word embeddings [81]. + We refer to [82] and references therein for a discussion of ethical concerns of AI applications. + + Of DFA as a training method DFA enables parallelization of the backward pass and places a + single operation at the center of the training process, opening the prospect of reducing the power + consumption of training chips by an order of magnitude [28]. Not only is more efficient training a + path to more environmentally responsible machine learning [83], but it may lower the barrier of entry, + supporting equality and sustainable development goals. A significant downside of moving from BP to + DFA is a far more limited understanding of how to train models and how the trained models behave. + There is a clear empirical understanding of the impact of techniques such as batch normalization + or skip connections on the performance of BP; new insights need to be obtained for DFA. BP also + enjoys decades of works on topics like adversarial attacks, interpretability, and fairness. Much of + this work has to be cross-checked for alternative training methods, something we encourage further + research to consider as the next step towards safely and responsively scaling up DFA. + + Of biologically motivated method Finally, a key motivation for this study was to demonstrate that + learning challenging tasks was possible without weight transport. Biologically motivated methods + are a more foundational research direction, and as such the possible long-term impact of our findings + is harder to estimate under this light. However, fundamental research of this kind is important to open + new pathways for ML and neuroscience. + + Acknowledgments and Disclosure of Funding + + We thank Igor Carron and Laurent Daudet for the general guidance on the subject of this investigation + and the insightful comments, as well as the larger LightOn team for their support. + + References + [1]P. J. Werbos.Beyond Regression: New Tools for Prediction and Analysis in the Behavioral + Sciences. PhD thesis, Harvard University, 1974. + [2]D. E. Rumelhart, G. E. Hinton, and R. J. Williams. Learning internal representations by error + propagation. InParallel Distributed Processing, volume 1, pages 318–362. MIT Press, 1986. + [3]Max Jaderberg, Wojciech Marian Czarnecki, Simon Osindero, Oriol Vinyals, Alex Graves, + David Silver, and Koray Kavukcuoglu. Decoupled neural interfaces using synthetic gradients. + InProceedings of the 34th International Conference on Machine Learning-Volume 70, pages + 1627–1635, 2017. + [4]Francis Crick. The recent excitement about neural networks.Nature, 337(6203):129–132, 1989. + [5]Adam H Marblestone, Greg Wayne, and Konrad P Kording. Toward an integration of deep + learning and neuroscience.Frontiers in computational neuroscience, 10:94, 2016. + [6]Stephen Grossberg. Competitive learning: From interactive activation to adaptive resonance. + Cognitive science, 11(1):23–63, 1987. + [7]Javier R Movellan. Contrastive hebbian learning in the continuous hopfield model. InConnec- + tionist models, pages 10–17. Elsevier, 1991. + [8]Randall C O’Reilly. Biologically plausible error-driven learning using local activation differ- + ences: The generalized recirculation algorithm.Neural computation, 8(5):895–938, 1996. + [9]Ruslan Salakhutdinov and Geoffrey Hinton. Deep boltzmann machines. InArtificial intelligence + and statistics, pages 448–455, 2009. + [10]Yann Le Cun. Learning process in an asymmetric threshold network. InDisordered systems + and biological organization, pages 233–240. Springer, 1986. + [11]Yoshua Bengio. How auto-encoders could provide credit assignment in deep networks via target + propagation.arXiv preprint arXiv:1407.7906, 2014. + [12]Dong-Hyun Lee, Saizheng Zhang, Asja Fischer, and Yoshua Bengio. Difference target propaga- + tion. InJoint european conference on machine learning and knowledge discovery in databases, + pages 498–515. Springer, 2015. + [13]Timothy P Lillicrap, Daniel Cownden, Douglas B Tweed, and Colin J Akerman. Random synap- + tic feedback weights support error backpropagation for deep learning.Nature communications, + 7(1):1–10, 2016. + [14]Eugene Belilovsky, Michael Eickenberg, and Edouard Oyallon. Greedy layerwise learning can + scale to imagenet. InInternational Conference on Machine Learning, pages 583–593, 2019. + [15]Wojciech M Czarnecki, Simon Osindero, Max Jaderberg, Grzegorz Swirszcz, and Razvan + Pascanu. Sobolev training for neural networks. InAdvances in Neural Information Processing + Systems, pages 4278–4287, 2017. + [16]Arild Nøkland and Lars Hiller Eidnes. Training neural networks with local error signals. In + International Conference on Machine Learning, pages 4839–4850, 2019. + [17]R Devon Hjelm, Alex Fedorov, Samuel Lavoie-Marchildon, Karan Grewal, Phil Bachman, + Adam Trischler, and Yoshua Bengio. Learning deep representations by mutual information + estimation and maximization. InInternational Conference on Learning Representations, 2019. + URLhttps://openreview.net/forum?id=Bklr3j0cKX. + [18]Sindy Löwe, Peter O’Connor, and Bastiaan Veeling. Putting an end to end-to-end: Gradient- + isolated learning of representations. InAdvances in Neural Information Processing Systems, + pages 3033–3045, 2019. + [19] Arild Nøkland. Direct feedback alignment provides learning in deep neural networks. In + Advances in neural information processing systems, pages 1037–1045, 2016. + [20]Sergey Bartunov, Adam Santoro, Blake Richards, Luke Marris, Geoffrey E Hinton, and Timothy + Lillicrap. Assessing the scalability of biologically-motivated deep learning algorithms and + architectures. InAdvances in Neural Information Processing Systems, pages 9368–9378, 2018. + [21]Timothy P Lillicrap, Adam Santoro, Luke Marris, Colin J Akerman, and Geoffrey Hinton. + Backpropagation and the brain.Nature Reviews Neuroscience, pages 1–12, 2020. + [22]Natalia Caporale and Yang Dan. Spike timing–dependent plasticity: a hebbian learning rule. + Annu. Rev. Neurosci., 31:25–46, 2008. + [23]Julien Launay, Iacopo Poli, and Florent Krzakala. Principled training of neural networks with + direct feedback alignment.arXiv preprint arXiv:1906.04554, 2019. + [24]Qianli Liao, Joel Z Leibo, and Tomaso Poggio. How important is weight symmetry in back- + propagation? InThirtieth AAAI Conference on Artificial Intelligence, 2016. + [25]Theodore H Moskovitz, Ashok Litwin-Kumar, and LF Abbott. Feedback alignment in deep + convolutional networks.arXiv preprint arXiv:1812.06488, 2018. + [26]Will Xiao, Honglin Chen, Qianli Liao, and Tomaso Poggio. Biologically-plausible learning + algorithms can scale to large datasets. InInternational Conference on Learning Representations, + 2019. URL https://openreview.net/forum?id=SygvZ209F7. + + [27]Mohamed Akrout, Collin Wilson, Peter C Humphreys, Timothy Lillicrap, and Douglas Tweed. + Using weight mirrors to improve feedback alignment.arXiv preprint arXiv:1904.05391, 2019. + + [28]Julien Launay, Iacopo Poli, Kilian Müller, Igor Carron, Laurent Daudet, Florent Krzakala, and + Sylvain Gigan. Light-in-the-loop: using a photonics co-processor for scalable training of neural + networks, 2020. + + [29]Charlotte Frenkel.Bottom-Up and Top-Down Neuromorphic Processor Design: Unveiling + Roads to Embedded Cognition. PhD thesis, UCL-Université Catholique de Louvain, 2020. + + [30]Eric Penner and Li Zhang. Soft 3d reconstruction for view synthesis.ACM Transactions on + Graphics (TOG), 36(6):1–11, 2017. + + [31]John Flynn, Michael Broxton, Paul Debevec, Matthew DuVall, Graham Fyffe, Ryan Overbeck, + Noah Snavely, and Richard Tucker. Deepview: View synthesis with learned gradient descent. + InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages + 2367–2376, 2019. + + [32]Ben Mildenhall, Pratul P Srinivasan, Rodrigo Ortiz-Cayon, Nima Khademi Kalantari, Ravi + Ramamoorthi, Ren Ng, and Abhishek Kar. Local light field fusion: Practical view synthesis + with prescriptive sampling guidelines.ACM Transactions on Graphics (TOG), 38(4):1–14, + 2019. + + [33]Vincent Sitzmann, Justus Thies, Felix Heide, Matthias Nießner, Gordon Wetzstein, and Michael + Zollhofer. Deepvoxels: Learning persistent 3d feature embeddings. InProceedings of the IEEE + Conference on Computer Vision and Pattern Recognition, pages 2437–2446, 2019. + + [34]Stephen Lombardi, Tomas Simon, Jason Saragih, Gabriel Schwartz, Andreas Lehrmann, and + Yaser Sheikh. Neural volumes: Learning dynamic renderable volumes from images.ACM + Transactions on Graphics (TOG), 38(4):65, 2019. + + [35]Vincent Sitzmann, Michael Zollhöfer, and Gordon Wetzstein. Scene representation networks: + Continuous 3d-structure-aware neural scene representations. InAdvances in Neural Information + Processing Systems, pages 1119–1130, 2019. + + [36]Ben Mildenhall, Pratul P Srinivasan, Matthew Tancik, Jonathan T Barron, Ravi Ramamoorthi, + and Ren Ng. Nerf: Representing scenes as neural radiance fields for view synthesis.arXiv + preprint arXiv:2003.08934, 2020. + + [37]H Brendan McMahan, Gary Holt, David Sculley, Michael Young, Dietmar Ebner, Julian Grady, + Lan Nie, Todd Phillips, Eugene Davydov, Daniel Golovin, et al. Ad click prediction: a view + from the trenches. InProceedings of the 19th ACM SIGKDD international conference on + Knowledge discovery and data mining, pages 1222–1230, 2013. + + [38]Steffen Rendle. Factorization machines. In2010 IEEE International Conference on Data + Mining, pages 995–1000. IEEE, 2010. + + [39]Heng-Tze Cheng, Levent Koc, Jeremiah Harmsen, Tal Shaked, Tushar Chandra, Hrishi Aradhye, + Glen Anderson, Greg Corrado, Wei Chai, Mustafa Ispir, et al. Wide & deep learning for + recommender systems. InProceedings of the 1st workshop on deep learning for recommender + systems, pages 7–10, 2016. + + [40]Huifeng Guo, Ruiming Tang, Yunming Ye, Zhenguo Li, and Xiuqiang He. Deepfm: a + factorization-machine based neural network for ctr prediction.arXiv preprint arXiv:1703.04247, + 2017. + + [41]Ruoxi Wang, Bin Fu, Gang Fu, and Mingliang Wang. Deep & cross network for ad click + predictions. InProceedings of the ADKDD’17, ADKDD’17, New York, NY, USA, 2017. + Association for Computing Machinery. ISBN 9781450351942. doi: 10.1145/3124749.3124754. + URLhttps://doi.org/10.1145/3124749.3124754. + [42]Weiyu Cheng, Yanyan Shen, and Linpeng Huang. Adaptive factorization network: Learning + adaptive-order feature interactions. InThirty-Fourth AAAI Conference on Artificial Intelligence, + 2020. + [43]J Wesley Hines. A logarithmic neural network architecture for unbounded non-linear function + approximation. InProceedings of International Conference on Neural Networks (ICNN’96), + volume 2, pages 1245–1250. IEEE, 1996. + [44]Criteo. Kaggle contest dataset is now available for academic use!http://labs.criteo.com/ + 2014/09/kaggle-contest-dataset-now-available-academic-use/, 2014. accessed + on the 2020-05-20. + [45]Maurizio Ferrari Dacrema, Paolo Cremonesi, and Dietmar Jannach. Are we really making much + progress? a worrying analysis of recent neural recommendation approaches. InProceedings of + the 13th ACM Conference on Recommender Systems, pages 101–109, 2019. + [46]Michael M Bronstein, Joan Bruna, Yann LeCun, Arthur Szlam, and Pierre Vandergheynst. + Geometric deep learning: going beyond euclidean data.IEEE Signal Processing Magazine, 34 + (4):18–42, 2017. + [47]Joan Bruna, Wojciech Zaremba, Arthur Szlam, and Yann Lecun. Spectral networks and locally + connected networks on graphs. InInternational Conference on Learning Representations, pages + http–openreview, 2014. + [48]Mikael Henaff, Joan Bruna, and Yann LeCun. Deep convolutional networks on graph-structured + data.arXiv preprint arXiv:1506.05163, 2015. + [49]Michaël Defferrard, Xavier Bresson, and Pierre Vandergheynst. Convolutional neural networks + on graphs with fast localized spectral filtering. InAdvances in neural information processing + systems, pages 3844–3852, 2016. + [50]Thomas N. Kipf and Max Welling. Semi-supervised classification with graph convolutional + networks. InInternational Conference on Learning Representations (ICLR), 2017. + [51]Marco Gori, Gabriele Monfardini, and Franco Scarselli. A new model for learning in graph + domains. InProceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005., + volume 2, pages 729–734. IEEE, 2005. + [52]Franco Scarselli, Marco Gori, Ah Chung Tsoi, Markus Hagenbuchner, and Gabriele Monfardini. + The graph neural network model.IEEE Transactions on Neural Networks, 20(1):61–80, 2008. + [53]Yujia Li, Daniel Tarlow, Marc Brockschmidt, and Richard Zemel. Gated graph sequence neural + networks. InInternational Conference on Learning Representations, 2016. + [54]Matthias Fey, Jan Eric Lenssen, Frank Weichert, and Heinrich Müller. Splinecnn: Fast geometric + deep learning with continuous b-spline kernels. InProceedings of the IEEE Conference on + Computer Vision and Pattern Recognition, pages 869–877, 2018. + [55]Petar Velickoviˇ c, Guillem Cucurull, Arantxa Casanova, Adriana Romero, Pietro Liò, and Yoshua´ + Bengio. Graph attention networks. InInternational Conference on Learning Representations, + 2018. URLhttps://openreview.net/forum?id=rJXMpikCZ. + [56] Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio. Neural machine translation by jointly + learning to align and translate. In3rd International Conference on Learning Representations, + ICLR 2015, 2015. + [57]Keyulu Xu, Weihua Hu, Jure Leskovec, and Stefanie Jegelka. How powerful are graph neural + networks? InInternational Conference on Machine Learning, 2018. + + [58]Matthias Fey. Just jump: Dynamic neighborhood aggregation in graph neural networks. In + ICLR Workshop on Representation Learning on Graphs and Manifolds, 2019. + + [59]Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, + Łukasz Kaiser, and Illia Polosukhin. Attention is all you need. InAdvances in neural information + processing systems, pages 5998–6008, 2017. + + [60]Matthias Fey and Jan E. Lenssen. Fast graph representation learning with PyTorch Geometric. + InICLR Workshop on Representation Learning on Graphs and Manifolds, 2019. + + [61]Prithviraj Sen, Galileo Namata, Mustafa Bilgic, Lise Getoor, Brian Galligher, and Tina Eliassi- + Rad. Collective classification in network data.AI magazine, 29(3):93–93, 2008. + + [62]Keyulu Xu, Weihua Hu, Jure Leskovec, and Stefanie Jegelka. How powerful are graph neural + networks? InInternational Conference on Learning Representations, 2019. URLhttps: + //openreview.net/forum?id=ryGs6iA5Km. + + [63]Laurens van der Maaten and Geoffrey Hinton. Visualizing data using t-sne.Journal of machine + learning research, 9(Nov):2579–2605, 2008. + + [64]David M Chan, Roshan Rao, Forrest Huang, and John F Canny. Gpu accelerated t-distributed + stochastic neighbor embedding.Journal of Parallel and Distributed Computing, 131:1–13, + 2019. + + [65]Thomas N Kipf and Max Welling. Variational graph auto-encoders.NIPS Workshop on Bayesian + Deep Learning, 2016. + + [66]Alec Radford, Karthik Narasimhan, Time Salimans, and Ilya Sutskever. Improving language + understanding with unsupervised learning.Technical report, OpenAI, 2018. + + [67]Niki Parmar, Ashish Vaswani, Jakob Uszkoreit, Lukasz Kaiser, Noam Shazeer, Alexander Ku, + and Dustin Tran. Image transformer.ArXiv, abs/1802.05751, 2018. + + [68]Prafulla Dhariwal, Heewoo Jun, Christine Payne, Jong Wook Kim, Alec Radford, and Ilya + Sutskever. Jukebox: A generative model for music.arXiv preprint arXiv:2005.00341, 2020. + + [69]Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of + deep bidirectional transformers for language understanding. InProceedings of the 2019 Confer- + ence of the North American Chapter of the Association for Computational Linguistics: Human + Language Technologies, Volume 1 (Long and Short Papers), pages 4171–4186, Minneapolis, + Minnesota, June 2019. Association for Computational Linguistics. doi: 10.18653/v1/N19-1423. + URLhttps://www.aclweb.org/anthology/N19-1423. + + [70]Mohammad Shoeybi, Mostofa Ali Patwary, Raul Puri, Patrick LeGresley, Jared Casper, and + Bryan Catanzaro. Megatron-lm: Training multi-billion parameter language models using model + parallelism.ArXiv, abs/1909.08053, 2019. + + [71]Tom B Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared Kaplan, Prafulla Dhariwal, + Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, et al. Language models are + few-shot learners.arXiv preprint arXiv:2005.14165, 2020. + + [72]Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, and Percy Liang. SQuAD: 100,000+ + questions for machine comprehension of text. InProceedings of the 2016 Conference on + Empirical Methods in Natural Language Processing, pages 2383–2392, Austin, Texas, Novem- + ber 2016. Association for Computational Linguistics. doi: 10.18653/v1/D16-1264. URL + https://www.aclweb.org/anthology/D16-1264. + + [73]Pranav Rajpurkar, Robin Jia, and Percy Liang. Know what you don’t know: Unanswerable + questions for SQuAD. InProceedings of the 56th Annual Meeting of the Association for + Computational Linguistics (Volume 2: Short Papers), pages 784–789, Melbourne, Australia, + July 2018. Association for Computational Linguistics. doi: 10.18653/v1/P18-2124. URL + https://www.aclweb.org/anthology/P18-2124. + + [74]Alex Wang, Yada Pruksachatkun, Nikita Nangia, Amanpreet Singh, Julian Michael, Felix + Hill, Omer Levy, and Samuel Bowman. Superglue: A stickier benchmark for general-purpose + language understanding systems. InAdvances in Neural Information Processing Systems, pages + 3261–3275, 2019. + [75]The Common Crawl Team. Common Crawl.https://commoncrawl.org, 2020. + [76]Jeremy Howard and Sebastian Ruder. Universal language model fine-tuning for text classifica- + tion. InACL. Association for Computational Linguistics, 2018. URLhttp://arxiv.org/ + abs/1801.06146. + [77]Stephen Merity, Caiming Xiong, James Bradbury, and Richard Socher. Pointer sentinel mixture + models.ArXiv, abs/1609.07843, 2017. + [78]Rico Sennrich, Barry Haddow, and Alexandra Birch. Neural machine translation of rare + words with subword units. InProceedings of the 54th Annual Meeting of the Association + for Computational Linguistics (Volume 1: Long Papers), pages 1715–1725, Berlin, Germany, + August 2016. Association for Computational Linguistics. doi: 10.18653/v1/P16-1162. URL + https://www.aclweb.org/anthology/P16-1162. + [79]Diederik Kingma and Jimmy Ba. Adam: A method for stochastic optimization.International + Conference on Learning Representations, 12 2014. + [80]Grace W Lindsay. Attention in psychology, neuroscience, and machine learning.Frontiers in + Computational Neuroscience, 14:29, 2020. + [81]Tolga Bolukbasi, Kai-Wei Chang, James Y Zou, Venkatesh Saligrama, and Adam T Kalai. + Man is to computer programmer as woman is to homemaker? debiasing word embeddings. In + Advances in neural information processing systems, pages 4349–4357, 2016. + [82]Alexandra Luccioni and Yoshua Bengio. On the morality of artificial intelligence.arXiv preprint + arXiv:1912.11945, 2019. + [83]Emma Strubell, Ananya Ganesh, and Andrew McCallum. Energy and policy considerations for + deep learning in nlp.arXiv preprint arXiv:1906.02243, 2019. + [84]Yi Tay, Dara Bahri, Donald Metzler, Da-Cheng Juan, Zhe Zhao, and Che Zheng. Synthesizer: + Rethinking self-attention in transformer models.arXiv preprint arXiv:2005.00743, 2020. + [85]Liyuan Liu, Haoming Jiang, Pengcheng He, Weizhu Chen, Xiaodong Liu, Jianfeng Gao, + and Jiawei Han. On the variance of the adaptive learning rate and beyond.arXiv preprint + arXiv:1908.03265, 2019. + [86]Alessandro Raganato, Yves Scherrer, and Jörg Tiedemann. Fixed encoder self-attention patterns + in transformer-based machine translation.arXiv preprint arXiv:2002.10260, 2020. + [87]Adam Paszke, Sam Gross, Francisco Massa, Adam Lerer, James Bradbury, Gregory Chanan, + Trevor Killeen, Zeming Lin, Natalia Gimelshein, Luca Antiga, Alban Desmaison, Andreas + Kopf, Edward Yang, Zachary DeVito, Martin Raison, Alykhan Tejani, Sasank Chilamkurthy, + Benoit Steiner, Lu Fang, Junjie Bai, and Soumith Chintala. Pytorch: An imperative style, high- + performance deep learning library. In H. Wallach, H. Larochelle, A. Beygelzimer, F. d'Alché- + Buc, E. Fox, and R. Garnett, editors,Advances in Neural Information Processing Systems 32, + pages 8024–8035. Curran Associates, Inc., 2019. URLhttp://papers.neurips.cc/paper/ + 9015-pytorch-an-imperative-style-high-performance-deep-learning-library. + pdf. + + + Appendix + + + We first provide additional elements to corroborate our findings: alignment measurement (Section + A), and shallow baselines (Section B). We then discuss the process of adapting the considered + architectures for DFA (Section C), and the issue of weight transport in attention layers (Section D). + We provide some supplementary results for NeRF (Section E), including details of performance on + each scene of each datatset, and a discussion on possible mitigation of DFA shortcomings. Finally, + we outline steps necessary for reproduction of this work (Section F). + + A Alignment + + Alignment measurement In feedback alignment methods, the forward weights learn toalignwith + the random backward weights, making the delivered updates useful. This alignment can be quantified + by measuring the cosine similarity between the gradient signal delivered by DFABi ay and the + gradient signal BP would have deliveredWT <>. For learning to occur and DFA to work as + a training method, there must be alignment. This can be measured numerically [23]. Measuring + alignments allows to check whether or not the layers are effectively being trained by DFA, regardless + of performance metrics. We note that any alignment value superior to 0 signifies that learning is + occuring. Values closer to 1 indicate a better match with BP, but small alignment values are sufficient + to enable learning. We report values measured at the deepest DFA layer. + + Recommender systems We measure alignment on the Criteo dataset, in the two architectures + featuring non-conventional fully-connected layers: Deep & Cross and AFN. Alignment is measured + after 15 epochs of training, and averaged over a random batch of 512 samples. Results are reported in + table A.1. These alignment measurements indicate that learning is indeed occurring in the cross and + logarithmic layers. High-variance of alignment in the cross layers is unique: it may be explained by + the absence of non-linearity, and account for the difference in performance between BP and DFA on + this architecture–which is higher than on the others. + + Table A.1: Alignment cosine similarity (higher is better, standard deviation in parenthesis) of + recommender systems as measured on the Criteo dataset. Learning occurs in both architectures, and + high variance may explain the larger performance gap on Deep & Cross compared to other methods. + + <
> + + Graph convolutions We measure alignment on the Cora dataset, after 250 epochs of training, + averaging values over every sample available–train, validation, and test split included. Results are + reported in Table A.2. We observe high alignment values in all architectures, indicative that learning + is indeed occuring. Slightly lower values in SplineConv and GATConv may be explained by the use + of the Exponential Linear Unit (ELU) instead of the Rectified Linear Unit (ReLU) used as activation + in other architectures. + Table A.2: Alignment cosine similarity (standard deviation in parenthesis) of various graph convolu- + tions architectures as measured on the Cora dataset. These values corroborate that DFA successfully + trains all architectures considered. + + <
> + + B Shallow baselines + + Shallow learning We compare DFA to BP, but also to shallow learning–where only the topmost + layer is trained. While DFA may not reach the performance level of BP, it should still vastly + + Figure A.1: Comparisons of Tiny-NeRF trained with BP, DFA, and a shallow approach. Shallow + training is insufficient to learn scene geometry. Lego scene from the NeRF synthetic dataset. + + <
> + + outperform shallow learning: failure to do so would mean that the weight updates delivered by DFA + are useless. On a simple task like MNIST, a shallow baseline may be as high as 90%. However, given + the difficulty of the tasks we consider, the shallow baseline is here usually much lower. + + NeRF Because NeRF models are expensive to train–up to 15 hours on a V100–we consider a + simplified setup for the shallow baseline, NeRF-Tiny. This setup operates at half the full resolution + of the training images available, runs for 5000 iterations only, and does away with view-dependant + characteristics. Furthermore, the network is cut down to 3 layers of half the width of NeRF, and + no coarse network is used to inform the sampling. We train this network on the Lego scene of the + NeRF-Synthetic dataset, and compare results. + Figure A.1 presents renders generated by NeRF-Tiny trained with BP, DFA, and a shallow approach. + While BP and DFA delivers similar renders, shallow training fails to reproduce even basic scene + geometry, instead outputting a diffuse cloud of colors. This highlights that while DFA may not reach + a level of performance on-par with BP on NeRF, it nonetheless delivers meaningful updates enabling + the learning of complex features. + + Recommender systems Because recommender systems require fine-tuning, we perform the same + hyperparameter search for shallow learning than for DFA and BP. Results are detailed in Table A.3. + Performance of shallow training is always well under BP and DFA–remember that0.001-levelmatter + in recommender systems. In particular, in Deep & Cross, where there was the biggest gap between + BP and DFA, the performance of the shallow method is extremely poor, well below the FM baseline. + Finally, it is expected to see that DeepFM recovers more or less the performance of FM even with a + shallow baseline. + + Table A.3: Shallow baseline for recommender system models on the Criteo dataset. Performance is + always well below BP and DFA, as expected. + + <
> + + Graph convolutions We use the same hyperparameters as for DFA to produce the shallow baseline + on graph datasets. Results are reported in Table A.4. Performance is always much worse than BP + and DFA. GATConv recovers the best performance: random attention layers may still deliver useful + features [84], as do random convolutions. + + Transformers In the baseline setting (optimizer and hyper-parameters of [59]), a Transformer + trained in the shallow regime yields a perplexity of 428 on WikiText-103. We do not consider + + Table A.4: Shallow baseline for GCNNs on Cora, CiteSeer, and PubMed [61]. Performance is always + well below BP and DFA. + + <
> + + other settings, as the cost of training a Transformer is high and we do not expect any meaningful + improvements–as with NeRF above. + + C Adapting architectures to DFA + + NeRF We use an architecture identical to the one used in [36], but based on the effective code + implementation rather than the description in the paper 1 . During our tests, we have found that + lowering the learning rate to <> rather than <> works best with DFA. + + + Recommender systems For all training methods (BP, DFA, and shallow), we have conducted + independent hyperparameter searches. We performed a grid search over the learning rate, from + <> to <> in <> steps, as well as over the dropout probability, from <> to in <> steps + (where applicable). On DeepFM, this search leads to reduce the learning rate from <> with BP + to <> with DFA, but to keep the 0.5 dropout rate. On Deep & Cross, we reduce learning rate + from <> to <>, with no dropout in both cases. In AFN, we reduce dropout from <> to + <> and dropout from 0.3 to 0. + + Graph convolutions We manually test for a few hyperparameters configuration on the Cora dataset, + focusing on learning rate, weight decay, and dropout. We do not consider architectural changes, such + as changing the number of filters or of attention heads. For ChebConv and GraphConv, we reduce + weight decay to <> instead of <>, and set the dropout rate to 0 and 0.1 respectively, instead + of 0.5 with BP. For SplineConv, we find that no change in the hyperparameters are necessary. For + GATConv, we reduce weight decay to <> instead of <> and reduce dedicated dropout layer + to 0.1 instead of 0.6 but keep the 0.6 dropout rate within the GAT layer. Finally, on DNAConv we + disable weight decay entirely, instead of an original value of <>, double the learning rate from + <> to <>, and disable dropout entirely. In all cases, we share the backward random matrix + across all nodes in a graph. + + Transformers The model hyper-parameters were fixed across all of our experiments, except for + the number of attention heads in one case, that we will precise below, and dropout. We tested several + values of dropout probability between 0 and 0.5, but found the original value of 0.1 to perform + best. We manually tested a number of optimizers, optimizer parameters and attention mechanisms. + We tested four combinations of optimizers and schedulers : Adam with the scheduler used in [59], + Adam alone, RAdam [85] alone, and Adam with a scheduler that reduces the learning rate when + the validation perplexity plateaus. We found it necessary to reduce the initial learning rate of Adam + from <> to <>, although it could be set back to <> with a scheduler. We tried two values + of 0.98 and 0.999. We also tried to change <> and observed some small differences that were + not significant enough for the main text. Finally, we tried three attention mechanisms in addition to + the standard multihead scaled dot-product attention: the dense and random (learnable) Synthesizers + of [84], as well as the fixed attention patterns of [86]. The latter needed to be adapted to language + modelling to prevent attending to future tokens, which led us to reduced the number of attention + heads to 4. The backward random matrix is always shared across all tokens and batches. + + D Weight transport and attention + + We consider an attention layer operating on inputx. The queries, keys, and values are respectively + <>, and <> is the dimension of the queries and keys. The layer + performs: + <> (4) + + When using DFA on attention, we deliver the random feedback to the top of the layer. Accordingly, + to obtain updates toWQ ;WK ;andWV we still to have to backpropagate through the attention + mechanism itself. This involves weight transport onWV , sacrificing some biological realism for + simplicity. Overall weight transport between layers still does not occur, and updating the layers in + parallel remains possible. + Beside using FA or DFA within the attention layer, alternative mechanisms like the synthesizer + [84]–which uses random attention in place of the query and key system–or fixed attention [86] can + remove the need for weight transport. Implementing these mechanisms in DFA-trained Transformers, + or other attention-powered architectures, will require further research. + + + E Supplementary NeRF results + + Quantitative results We report per-scene scores for each dataset in Table A.5. BP values are taken + from [36]. On three scenes of the synthetic datasets, NeRF-DFA even outperforms past state-of-the-art + methods trained with BP. Note that Neural Volumes (NV) is not applicable to forward-facing view + synthesis–as is required in LLFF-Real–and thus no results are reported. + + Qualitative results We report sample renders from the NeRF-Synthetic dataset (Figure A.2) and + the LLFF-Real dataset (Figure A.2), for every scene available. However, we recommend readers to + consult the supplementary video to make better sense of characteristics like multi-view consistency + and view-dependent effects (most visible on the LLFF-Real Room scene). + + + Table A.5: Per-scene PSNR for NeRF DFA and BP against other state-of-the-art methods on the + Nerf-Synthetic and LLFF-Real. DFA performance is fairly homogeneous across each dataset and in + line with the differences in other methods. + + <
> + + Possible future directions Despite retranscribing scene geometry in a multi-view consistent way, + NeRF produces renders of a lower quality when trained with DFA instead of BP. In particular, it + struggles to transcribe small-scale details, resulting in "blurry" renders. Moreover, it displays high- + frequency artefacts: not in the scene geometry, but in individual pixels taking values very distant from + their neighborhood. Interestingly, this noise phenomenon is unique to NeRF-DFA: it is not observed + on NeRF-BP with similar PSNR values (achieved during training) or on other methods with similar + or lower PSNR. This leads us to hypothesize this is an aspect unique to DFA, possibly due to the + alignment process. Indeed, DFA creates a bias on the weights, by encouraging them to be "aligned" + with an arbitrary values dependant on the random matrix used. It is possible this could introduce + random noise in the final renders–though we leave a more principled experiment to future research. + To attempt to alleviate this issue, we first consider NeRF-Dual. In NeRF-Dual, we average the + pixel-wise prediction between the fine and coarse network, to attempt to remove some of the noise. + To do so, we first still use the coarse network to create a probability distribution for the hierarchical + sampling. Then, we evaluate again both the coarse and fine networks at the locations informed by + this probability distribution. Compared to vanilla NeRF, this requires an extra batch of evaluation of + the coarse network for all rays–rougly speaking, this increases inference time by 30-50% depending + on the coarse network architecture considered. We note that this is not applied during training, so that + training times remain identical. + Figure A.2 and Figure A.3 showcase comparisons between NeRF and NeRF-Dual trained with DFA + on all scenes. When viewed at high resolution–such as in our supplementary video–the NeRF-Dual + renders are more pleasing, especially for the full scenes. They remove most of the high-frequency + noise, leading to smoother renders. However, this averaging process further blurs small-scale details in + the render. This is especially visible in the NeRF-Synthetic dataset, on scenes like Ficus. Furthermore, + NeRF-Dual introduces novel artefacts in the Mic and Ship scenes, with areas improperly colored + with a violet tint. The cause for these artefacts is unknown, but they show that NeRF-Dual is far from + a silver bullet. The PSNR is also minimally increased, by less than 0.5 per scene. Nevertheless, this + shows some promise in possibilities to allievate the shortcomings of NeRF-DFA. It is possible that + changes to the overall rendering process, or the use of classic image processing techniques, may help + enhance the NeRF-DFA images. + Finally, we also experimented with increasing the capacity of the fine network, by widening its layers + to 512 neurons. We call this architecture NeRF-XL. However, we have not succeeded in getting + PSNR values higher than with vanilla NeRF on DFA. In particular, the training process becomes + much more cumbersome, as multi-GPU parallelism is needed to fit the model. It is possible that + higher network capacity may help learning both the task at hand and to align simultaneously, but + further work is required. + + + F Reproducibility + + Hardware used All main experiments require at most a single NVIDIA V100 GPU with 16GB + of memory to reproduce. Alignment measurement on large architectures (NeRF and Transformers) + require a second identical GPU to keep a copy of the network to evaluate BP gradients. + We estimate that a total of around 10,000 GPU-hours on V100s were necessary for this paper. + Accordingly, we estimate the cloud-computing carbon impact of this paper to be of 1700 kgCO 2 eq 2 . + However, without hyperparameter searches, our results can be reproduced with less than 500 GPU- + hours on V100s, with most of that budget going to NeRF and Transformers. + + Implementation We use the shared random matrix trick from [23] to reduce memory use in DFA + and enable its scaling to large networks. We use PyTorch [87] for all experiments. For reference + implementation of the methods considered, we relied on various sources. Our NeRF implementation + is based on the PyTorch implementation by Krishna Murthy 3 , with modifications to allow for proper + test and validation, as well as DFA and multi-GPU support. For recommender systems, we use + PyTorch Geometric [60] for all graph operations. Our Transformer implementation is our own. + Our code is available as supplementary material. + + NeRF We provide training, testing, and rendering code along with the configurations used to obtain + our results. An example to reproduce our results is given in the supplementary code repository. Given + the computing cost associated with training a NeRF, we also provide our trained models. + + Recommender systems We provide bash scripts to reproduce the results in Table 2 and A.3, with + the results of our hyperparameter search. We provide code to reproduce the results in Table A.1. + + Graph convolutions We provide the code to reproduce all of our results. Note that the t-SNE + results are not exactly reproducible, as the CUDA implementation used is non-deterministic. + + Transformers We provide bash scripts to reproduce Table 5 and the shallow results. + + <
> + + Figure A.2: Sample renders for every scene of the NeRF-Synthetic dataset, for NeRF and NeRF-Dual + trained with DFA. + + <
> + + Figure A.3: Sample renders for every scene of the LLFF-Real dataset, for NeRF and NeRF-Dual + trained with DFA. +<> <> <> + + +<> <> <> +Efficient Behavior of Small-World Networks + +We introduce the concept of efficiency of a network, measuring how efficiently it exchanges information. By using this simple measure small-world networks are seen as systems that are both globally and locally efficient. This allows to give a clear physical meaning to the concept of small-world, and also to perform a precise quantitative analysis of both weighted and unweighted networks. We study neural networks and man-made communication and transportation systems and we show that the underlying general principle of their construction is in fact a small-world principle of high efficiency. PACS numbers 89.70.+c, 05.90.+m, 87.18.Sn, 89.40.+k +We live in a world of networks. In fact any complex system in nature can be modeled as a network, where vertices are the elements of the system and edges represent the interactions between them. Coupled biological and chemical systems, neural networks, social interacting species, computer networks or the Internet are only few of such examples [1]. Characterizing the structural properties of the networks is then of fundamental importance to understand the complex dynamics of these systems. A recent paper [2] has shown that the connection topology of some biological and social networks is neither completely regular nor completely random. These networks, there named small-worlds, in analogy with the concept of small-world phenomenon developed 30 years ago in social psychology [3], are in fact highly clustered like regular lattices, yet having small characteristics path lengths like random graphs. The original paper has triggered a large interest in the study of the properties of small-worlds (see ref. [4] for a recent review). Researchers have focused their attention on different aspects: study of the inset mechanism [5,7], dynamics [8] and spreading of diseases on small-worlds [9], applications to social net.works [10,11] and to the Internet [12,13]. In this letter we introduce the concept of efficiency of a network, measuring how efficiently information is exchanged over the net.work. By using efficiency small-world networks results as systems that are both globally and locally efficient. This formalization gives a clear physical meaning to the concept of small-world, and also allows a precise quantitative analysis of unweighted and weighted networks. We study several systems, like brains, communication and transportation networks, and show that the underlying general principle of their construction is in fact a small-world principle, provided attention is taken not to ignore an important observational property (closure). We start by reexamining the original formulation pro.posed in ref. [2]. There, a generic graph G with N vertices and K edges is considered. G is assumed to be unweighted, i.e. edges are all equal, sparse <<(K . N (N . 1)/2)>>, and connected. i.e. there exists at least one path connecting any couple of vertices with a infinite number of steps. G is therefore represented by simply giving the adjacency (or connection) matrix, i.e. the NxN matrix whose entry a_ij is 1 if there is an edge joining vertex i to vertex j, and 0 otherwise. An important quantity of G is the degree of vertex i, i.e. the number ki of edges incident with vertex i (the number of neighbors of i). The average value of ki is <>. Once {<>} is given it can be used to calculate the matrix of the short.est path lengths d_ij between two generic vertices i and j. The fact that G is assumed to be connected implies that dij is positive and infinite .i = j. In order to quantify the structural properties of G, [2] proposes to evaluate two different quantities: the characteristic path length L and the clustering coefficient C. L is the average distance be- +tween two generic vertices <>, and C is a local property defined as <>. Here C_i is the number of edges existing in Gi, the subgraph of the neighbors of i, divided by the maximum possible number ki(ki . 1)/2. In [2] a simple method is considered to pro.duce a class of graphs with increasing randomness. The initial graph G is taken to be a one-dimensional lattice with each vertex connected to its k neighbors and with periodic boundary conditions. Rewiring each edge at ran.dom with probability p, G can be tuned in a continuous way from a regular lattice (p = 0) into a random graph (p = 1). For the regular lattice we expect <> and a high clustering coefficient <>, while for a random graph <> and <> [14,5]. Although in the two limit cases a large C is associated to a large L and vice versa a small C to a small L, the numerical experiment reveals an intermediate regime at small p where the system is highly clustered like regular lattices, yet having small characteristics path lengths like random graphs. This behavior is there called small-world and it is found to be a property of some social and +biological networks analyzed [2]. +Now we propose a more general set-up to investigate real networks. We will show that: the definition of small-world behavior can be given in terms of a single variable with a physical meaning, the efficiency E of the network. -1/L and C can be seen as first approximations of E evaluated resp. on a global and on a local scale. -we can drop all the restrictions on the system, like unweightedness, connectedness and sparseness. We represent a real network as a generic weighted (and possibly even non sparse and non connected) graph G. Such a graph needs two matrices to be described: the adjacency matrix {a_ij} defined as for the unweighted graph, and the matrix {<>} of physical distances. The number <> can be the space distance between the two vertices or the strength of their possible interaction: we suppose <> can be the geographical distance between stations in transportation systems (in such a case <> respects the triangle equality, though this is not a necessary assumption), the time taken to ex.change a packet of information between routers in the Internet, or the inverse v<>ity of chemical reactions along a direct connection in a biological system. Of course, in the particular case of an unweighted graph <>. The shortest path length dij between two generic points i and j is the smallest sum of the physical distances throughout all the possible paths in the graph from i to j. The matrix {<>} is therefore calculated by using the information contained both in matrix {a_ij} and in matrix {<>}. We have <>, the equality being valid when there is an edge between i and j. Let us now suppose that the system is parallel, i.e. every vertex sends information concurrently along the network, through its edges. The efficiency <> in the communication between vertex i and j can be then defined to be inversely proportional to the shortest distance: <>. When there is no path in the graph between i and j, <> and consistently <>. The average efficiency of G can be defined as: + +<> + +To normalize E we consider the ideal case G_id in which the graph G has all the <> possible edges. In such a case the information is propagated in the most efficient way since dij = .ij .i, j, and E assumes its maxi- +<>. The efficiency <> +<> considered in the following of the paper is always divided by <> and therefore <>. Though the equality E = 1 is valid when there is an edge between each couple of vertices, real networks can reach a high value of E. +In our formalism, we can define the small-world be.haviour by using the single measure E to analyze both the local and global behavior, rather than two different variables L and C. The quantity in eq. (1) is the global efficiency of G and we therefore name it E_glob. Since E is defined also for a disconnected graph we can characterize the local properties of G by evaluating for each vertex i the efficiency of G_i, the subgraph of the neighbors of i. We define the local efficiency as the average efficiency of the local subgraphs, E loc =1/N E(Gi). + +This quantity plays a role similar to the clustering co.efficient C. Since <>, the local efficiency <> tells how much the system is fault tolerant, thus how efficient is the communication between the first neighbors of i when i is removed [15]. The definition of small-world can now be rephrased and generalized in terms of the information <>: small-world networks have high <> and <>, i.e. are very efficient in global and local communication. This definition is valid both for unweighted and weighted graphs, and can also be applied to disconnected and/or non sparse graphs. +It is interesting to see the correspondence between our measure and the quantities L and C of [2] (or, correspondingly, <<1/L>> and C). The fundamental difference is that E_glob is the efficiency of a parallel systems, where all the nodes in the network concurrently exchange pack.ets of information (such are all the systems in [2], for example), while 1/L measures the efficiency of a sequential system (i.e. only one packet of information goes along the network). <> is a reasonable approximation of <>when there are not huge differences among the distances in the graph, and this can explain why L works reasonably well in the unweighted examples of [2]. But, in general 1/L can significantly depart from E_glob. For instance, in the Internet, having few computers with an extremely slow connection does not mean that the whole Internet diminishes by far its efficiency: in practice, the presence of such very slow computers goes unnoticed, be.cause the other thousands of computers are exchanging packets among them in a very efficient way. Here 1/L would give a number very close to zero (strictly 0 in the particular case when a computer is disconnected from the others and <>, while E_glob gives the correct efficiency measure of the Internet. We turn now our attention to the local properties of a network. C is only one among the many possible intuitive measures [10] of how well connected a cluster is. It can be shown that when in a graph most of its local subgraphs Gi are not sparse, then C is a good approximation of E_loc. Summing up there are not two different kinds of analysis to be done for the global and local scales, but just one with a very precise physical meaning: the efficiency in transporting information. We now illustrate the onset of the small-world in an un.weighted graph by means of the same example used in [2]. A regular lattice with <> and <> is rewired +2 +with probability p and <> and <> are reported in <> as functions of p [16]. For <

> we expect the system to be inefficient on a global scale (E_glob . k/N log(N/K)) but locally efficient. The situation is inverted for the ran.dom graph. In fact at p =1 E_glob assumes a maximum value of 0.4, meaning 40% the efficiency of the ideal graph with an edge between each couple of vertices. This at the expenses of the fault tolerance (<>). + +<

> + +FIG. 1. FIG.1 Global and local efficiency for the graph example considered in [2]. A regular lattice with <> and <> is rewired with probability p. The small-world behavior results from the increase of E_glob caused by the introduction of only a few rewired edges (short cuts), which on the other side do not affect <>. At p � 0.1, E_glob has almost reached the value of the random graph, though <> has only diminished by very little from the value of 0.82 of the regular lattice. Small worlds have high E_glob and <>. +The small-world behavior appears for intermediate values of p. It results from the fast increase of E_glob (for small p we find a linear increase of E_glob in the logarithmic horizontal scale) caused by the introduction of only a few rewired edges (short cuts), which on the other side do not affect <>. At p . 0.1, E_glob has almost reached the maximum value of 0.4, though <> has only diminished by very little from the maximum value of 0.82. For an unweighted case the description in terms of network efficiency resembles the approximation given in [2]. In particular we have checked that a good agreement with curves L(p) and C(p) [2] can be obtained by reporting <> and <>. Of course in such an example the short cuts connect at almost no cost vertices that would otherwise be much farther apart (because <>). On the other hand this is not true when we consider a weighted network. As real networks we consider first different examples of natural systems (neural networks), and then we turn our attention to man-made communication and transportation systems. +1) Neural Networks. Thanks to recent experiments +neural structures can be studied at several levels of scale. Here we focus first on the analysis of the neuro-anatomical structure of cerebral cortex, and then on a simple nervous system at the level of wiring between neurons. The anatomical connections between cortical areas are of particular importance for their intricate relationship with the functional connectivity of the cerebral cortex [18]. We analyze two databases of cortico-cortical connections in the macaque and in the cat [19]. Tab.1 indicates the two networks are small-worlds [16]: they have high E_glob, respectively 52% and 69% the efficiency of the ideal graph with an edge between each couple of vertices (just slightly smaller than the best possible values of 57% and 70% obtained in random graphs) and high <>, respectively 70% and 83%, i.e. high fault tolerance [22]. These results indicate that in neural cortex each region is intermingled with the others and has grown following a perfect balance between local necessities (fault tolerance) and wide-scope interactions. Next we consider the neural network of C. elegans, the only case of a nervous system completely mapped at the level of neurons and chemical synapses [23]. Tab.1 shows that this is also a small-world network: C. elegans achieves both a 50% of global and local efficiency. Moreover the value of E_glob is similar to <>. This is a difference from cortex databases where fault tolerance is slightly privileged with respect to global communication. +2) Communication Networks. We have considered two of the most important large-scale communication net.works present nowadays: the World Wide Web and the Internet. Tab.2 shows that they have relatively high val.ues of E_glob (slightly smaller than the best possible val.ues obtained for random graphs) and <>. Despite the WWW is a virtual network and the Internet is a physical network, at a global scale they transport information essentially in the same way (as their E_glob�s are almost equal). At a local scale, the bigger <> in the WWW case can be explained both by the tendency in the WWW to create Web communities (where pages talking about the same subject tend to link to each other), and by the fact that many pages within the same site are often quickly connected to each other by some root or menu page. +3) Transport Networks. differently from previous databases the Boston subway transportation system (MBTA) can be better described by a weighted graph, the matrix {.ij } being given by the geographical distances between stations. If we consider the MBTA as an unweighted graph we obtain that it is apparently neither locally nor globally efficient (see Tab.3). On the other hand, when we take into account the geographical distances, we have E_glob =0.63: this shows the MBTA is a very efficient transportation system on a global scale, only 37% less efficient than the ideal subway with a di.rect tunnel from each station to the others. Even in the weighted case <> stays low (0.03), indicating a poor local behavior: differently from a neural network the + + +MBTA is not fault tolerant and a damage in a station will dramatically affect the connection between the previous and the next station. The difference with respect to neural networks comes from different needs and priorities in the construction and evolution mechanism: when we build a subway system, the priority is given to the achievement of global efficiency, and not to fault tolerance. In fact a temporary problem in a station can be solved by other means: for example, walking, or taking a bus from the previous to the next station. That is to say, the MBTA is not a closed system: it can be considered, after all, as a subgraph of a wider transportation network. This property is of fundamental importance when we analyze a system: while global efficiency is without doubt the major characteristic, it is closure that somehow leads a system to have high local efficiency (without alternatives, there should be high fault-tolerance). The MBTA is not a closed system, and thus this explains why, unlike in the case of the brain, fault tolerance is not a critical issue. Indeed, if we increase the precision of the analysis and change the MBTA subway network by taking into account, for example, the Boston Bus System, this ex.tended transportation system comes back to be a small-world network (<>). Qualitatively similar results, confirming the similarity of construction principles, have been obtained for other undergrounds and for a wider transportation system consisting of all the main airplane and highway connections throughout the world [25]. Considering all the transportation alter.natives available at that scale makes again the system closed (there are no other reasonable routing alternatives), and so fault-tolerance comes back as a leading construction principle. +Summing up, the introduction of the efficiency mea.sure allows to give a definition of small-world with a clear physical meaning, and provides important hints on why the original formulas of [2] work reasonably well in some cases, and where they fail. The efficiency measure al.lows a precise quantitative analysis of the information flow, and works both in the unweighted abstraction, and in the more realistic assumption of weighted networks. Finally, analysis of real data indicates that various existing (neural, communication and transport) networks exhibit the small-world behavior (even, in some cases, when their unweighted abstractions do not), substantiating the idea that the diffusion of small-world networks can be interpreted as the need to create networks that are both globally and locally efficient. +[1] Y. Bar-Yam, Dynamics of Complex Systems (Addison-Wesley, Reading Mass, 1997). +[2] D.J. Watts and S.H. Strogatz, Nature 393, 440 (1998). +[3] S. Milgram, Physicol. Today, 2, 60 (1967). +[4] M.E.J. Newman, cond-mat/0001118. +[5] A. Barrat, M. Weigt, Europ. Phys. J. B 13, 547 (2000) +[6] M. Marchiori and V. Latora, Physica A285, 539 (2000). +[7] M. Barthelemy, L. Amaral, Phys. Rev. Lett. 82, 3180 (1999). +[8] L. F. Lago-Fernandez et al, Phys. Rev. Lett. 84, 2758 (2000). +[9] C. Moore and M.E.J. Newman, Phys. Rev. E61, 5678 (2000). +[10] M.E.J. Newman, cond-mat/0011144. +[11] L. A. N. Amaral, A. Scala, M. Barth�el�emy, and H. E. Stanley, Proc. Natl. Acad. Sci. 97, 11149 (2000). +[12] R. Albert, H. Jeong, and A.-L. Barab�asi, Nature 401, 130 (1999). +[13] A.-L. Barab�asi and R. Albert, Science 286, 509 (1999). +[14] B. Bollob�as, Random Graphs (Academic, London, 1985). +[15] Our concept of fault tolerance is different from the one adopted in R. Albert, H. Jeong, and A.-L. Barab�asi, Na.ture 406, 378 (2000); R. Cohen et al. Phys. Rev. Lett. 85, 2758 (2000), where the authors consider the response of the entire network to the removal of i. +[16] Here and in the following the matrix {dij }i,j2G has been computed by using two different methods: the Floyd-Warshall (O(N 3 )) [17] and the Dijkstra algorithm (O(N 2 logN )) [10]. +[17] G. Gallo and S. Pallottino, Ann. Oper. Res. 13, 3 (1988). +[18] O. Sporns, G. Tononi, G.M. Edelman, Celebral Cortex 10, 127 (2000). [19] J.W.Scannell, Nature 386, 452 (1997). [20] M.P. Young, Phil.Trans.R.Soc B252, 13 (1993). +[21] J.W. Scannell, M.P. Young and C. Blakemore, J. Neu.rosci. 15, 1463 (1995). +[22] E. Sivan, H. Parnas and D. Dolev, Biol. Cybern. 81, 11.23 (1999). +[23] J.G. White et. al., Phil. Trans. R. Soc. London B314,1 (1986). +[24] T.B. Achacoso and W.S. Yamamoto, AY�s Neuroanatomy of C. elegans for Computation (CRC Press, FL, 1992). +[25] M. Marchiori and V. Latora, in preparation. + +TABLE I. Macaque and cat cortico-cortical connections [19]. The macaque database contains N = 69 cortical areas and K = 413 connections [20]. The cat database has N = 55 cortical areas (including hippocampus, amygdala, entorhinal cortex and subiculum) and K = 564 (revised database and cortical parcellation from [21]). The nervous system of C. elegans consists of N = 282 neurons and K = 2462 links which can be either synaptic connections or gap junctions [24]. + +<
> + +TABLE II. Communication networks. Data on the World Wide Web from http://www.nd.edu/�networks contains N = 325729 documents and K = 1090108 links [12], while the Internet database is taken from http://moat.nlanr.net and has N = 6474 nodes and K = 12572 links. + +<
> + +TABLE III. The Boston underground transportation system (MBTA) consists of N = 124 stations and K = 124 tunnels. The matrix {.ij } of the spatial distances between stations, used for the weighted case, has been calculated us.ing databases from http://www.mbta.com/ and the U.S. Na.tional Mapping Division. + +<
> + <> <> <> \ No newline at end of file diff --git a/Corpus/DEEP DOUBLE DESCENT - Preetum Nakkiran.txt b/Corpus/DEEP DOUBLE DESCENT - Preetum Nakkiran.txt deleted file mode 100644 index 282e67126f33df297083d3b5b4e92fd48ab3b56a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68456 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�b_sgp;$^YIC6{esA~m;NUdu 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

s7`2(33nnZq+&m)5sS&5hA=8CZLhO_f z=z&Vl#?H&3xMPlIEN2vp;mmKcrGG&JQy*-Yciofn4UY{>gGNwpGULF-OXI(J&7A@G z#Y;eLP>H5DB@a%FZL63QS#Sf>7Sla5G{C6G;*NMYXq?6c90G^Z#Ce~vyZOdB^1m`@ zt@E=VPIW2OyW{ZsVE6n3eN|Ko?Q&<;?%6>&JO8lHWx}nW&J$9=WozdYJmB9Z#q~N0 z3#d;xe_hbD$L}o;^axlq_;g@3pi#mA{<{a1f%$37fNQEZQU)xQz=>GOM;Ihz8)9*D zE7}5FE0-L>(X7sO#IZIne$L?t&K=LMX{7|m(eg<9hFn#)qYd!@dzYuXp;Tpe|LtG@ zhl-;z#`vK?!xyVdnWgG{@B=KM*z1(29|yr4MdJBRZSJ%nY9_&&QNOG6h4I@N)5bioP2n_;~N_=}v6sxqPjRMjm=Z94Y5SX(3q|E%?I|2|mLwpER) zUez4XEHP+jh|ne2?=G4l2S-^8@j$*w6fOu)RyJPt!fIu3R0%T?uOtni$V3mEczAOO zt#~=#3i!5;YloF4QG&jE%!&#ugP$kL#S?D0Pm^fX4t)%>n{w$cQL(pC zAT$o)U1K{4jpt}{nvN$N3hl1aZ69T#_l!zwmFNUIWuihf$8E>RwvIeGsV+J~Vn^;U ze^8eVeBWQu267;zCsTXCkEE7|fSXbeX=sI;8+^079N<=!ru!H+WxN@Qpdusn$osu~coJJMu7?g|rtWzSEVINYRYfq#80WRO{|OWk5V(m~xVsn&jo&@;tScKl+3! zQ!*KjLTW3TZZdLn<9A-X+Fi{3A`?3@iAgP{VJ9j7N^%yBqXZ41zc-|g70Uku-cBs+ zTd7L?peAXCjdlD_*s;6V;tESn%5pM1RhX$5cBj;lf~RH;lmP6z#{B3m>Lr*Gf>HKX z1z`qY18cfvCucNTEW>V#88CL<@4>-4Xn-ew*d>QcN{fyJrX;f~vD<>1=FwXWv@0U8 z5jP8W>w1tm@ted+{AsgL{7ZH9dl97Vd)~J3hYzeS?gR~aA((-%SxKM z`{^X|p6(o|Uq8n{LT^RzEj?*TLsMbZ(8Fdrzq=Z37B^*ou1Y6Jb7~#em*>Z8;;eWowZ$Zax13h$jv1|S@Y78-#X_?lK92W`S^b4 z+#*~8nu#US%7|e~%&|Q4zJ&+Gtxnv&W#9Kaf5xjwDSmTVJZ;dtxI$tETRvSz7VpW_ zbq5WDCx01Bzi`0tNW@8i`ye+=a>t0}5lgC-A8l`1y31Os{7oVH@=QcO~(-8=!@%Gx0 zg?-ct7gNrjM-0o&?=cv4z?c|uz4&Ux7y9(Ro z+7?!$Rq0?QUeR?Sp4Vrs+02^Ix={A6v=!_k|I&ImRkxb2+YlNa!5H;T@+b}>o;3Lq zjp5WWQQQ&Jwi<=*V$D4hi@;uwPbem3i&~l@#c^GC$C`6QEJDI8QbKp7F6HPfiD0bW z$tflyxhwyYTiT(kdEfKuekGfngLG6$#351zw`1|Da&z}(2bvshc!`niyE`_d=C@sW ziUi6vOAC3MREi}fn_wk0x>i6V^y^s9;bEhGUN5t z{)l`D+Uc#Iw|hEkevRQVDr_lYQ2hWi;)es}@f4I%{DxAbm?KjlTNZm&`%%$b&K>D4 zXnAG~TGCIh1wCZ^nJPMEq!9GNE*>q#l8lM3Zj)T7W2l0QG4je6FtsVzQZl8xYL(aJ zfo;8^mNM0EDz#YH6#WO~hVdRqhzHDhYxy`>dNpdssmzdWLz>8ZG~waF$HqI0zsl8g z)8Yue&O9}Vq|F@?Yon4W#e`Zr2NZ&ulxP%nr39B_(kV&AWmZJ=`@1k~Yj!@W1`_fA^T@lwy{quw??O4=h8 zrE+@e(f#Z;G^&e)2$Jc#gQR}k;|PGpvosH+g2rm~=w)!}F1C;p^)P({iNNYk_m6r! zK$x`1vK6{#xV^3^l+KOX76s6xq}K0Cp}qZ|&L|Bl*rF|mWr=lRiuk@cO~9-v>A~7P zF_qmCSKsx%59ey5;HLwYufDLE8S^P?ax0vN)7`@p$%FT&@AeM%NkX?!(EX#cSQ6q- zcN(m|pree->-&!?$(pPUE2r`@2@SP@h%=@|Rr~d}zyH@Qh_uANy0-@?znO6@; zb10pL1nl)dVdoVE!NtlCOkJ?(ce=RCM&G#suIO?uyPU8igrq|{^HI&VMizP(r0gJYfYJ((0ppoPIXG$SQZfpwVuHwl%k{|jcXc((um diff --git a/Corpus/Deep Residual Learning for Image Recognition.txt b/Corpus/Deep Residual Learning for Image Recognition.txt deleted file mode 100644 index 6cb144de2cab750062cd47ab253ca95fb7e28cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 73762 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 diff --git a/Corpus/Direct Feedback Alignment Scales toModern Deep Learning Tasks and Architectures.txt b/Corpus/Direct Feedback Alignment Scales toModern Deep Learning Tasks and Architectures.txt deleted file mode 100644 index 8b3ad5c..0000000 --- a/Corpus/Direct Feedback Alignment Scales toModern Deep Learning Tasks and Architectures.txt +++ /dev/null @@ -1,1161 +0,0 @@ - Direct Feedback Alignment Scales to - Modern Deep Learning Tasks and Architectures - - - - - Julien Launay 1;2 Iacopo Poli 1 François Boniface 1 Florent Krzakala 1;2 - - 1 LightOn 2 École Normale Supérieure - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - arXiv:2006.12878v1 [stat.ML] 23 Jun 2020 {julien, iacopo, francois, florent}@lighton.ai - - - - Abstract - - Despite being the workhorse of deep learning, the backpropagation algorithm is - no panacea. It enforces sequential layer updates, thus preventing efficient paral- - lelization of the training process. Furthermore, its biological plausibility is being - challenged. Alternative schemes have been devised; yet, under the constraint of - synaptic asymmetry, none have scaled to modern deep learning tasks and architec- - tures. Here, we challenge this perspective, and study the applicability of Direct - Feedback Alignment to neural view synthesis, recommender systems, geometric - learning, and natural language processing. In contrast with previous studies lim- - ited to computer vision tasks, our findings show that it successfully trains a large - range of state-of-the-art deep learning architectures, with performance close to - fine-tuned backpropagation. At variance with common beliefs, our work supports - that challenging tasks can be tackled in the absence of weight transport. - - - 1 Introduction - - While the backpropagation algorithm (BP) [1,2] is at the heart of modern deep learning achievements, - it is not without pitfalls. For one, its weight updates are non-local and rely on upstream layers. Thus, - they cannot be easily parallelized [3], incurring important memory and compute costs. Moreover, - its biological implementation is problematic [4,5]. For instance, BP relies on the transpose of the - weights to evaluate updates. Hence, synaptic symmetry is required between the forward and backward - path: this is implausible in biological brains, and known as the weight transport problem [6]. - Consequently, alternative training algorithms have been developed. Some of these algorithms are - explicitly biologically inspired [7–13], while others focus on making better use of available compute - resources [3,14–19]. Despite these enticing characteristics, none has been widely adopted, as they - are often demonstrated on a limited set of tasks. Moreover, as assessed in [20], their performance on - challenging datasets under the constraint of synaptic asymmetry is disappointing. - We seek to broaden this perspective, and demonstrate the applicability of Direct Feedback Alignment - (DFA) [19] in state-of-the-art settings: from applications of fully connected networks such as neural - view synthesis and recommender systems, to geometric learning with graph convolutions, and natural - language processing with Transformers. Our results define new standards for learning without weight - transport and show that challenging tasks can indeed be tackled under synaptic asymmetry. - All code needed to reproduce our experiments is available athttps://github.com/lightonai/ - dfa-scales-to-modern-deep-learning. - - - - - - - Preprint. Under review. 1.1 Related work - - Training a neural network is a credit assignment problem: an update is derived for each parameter - from its contribution to a cost function. To solve this problem, a spectrum of algorithms exists [21]. - - Biologically motivated methods Finding a training method applicable under the constraints of - biological brains remains an open problem. End-to-end propagation of gradients is unlikely to occur - [22], implying local learning is required. Furthermore, the weight transport problem enforces synaptic - asymmetry [6]. Inspired by auto-encoders, target propagation methods (TP) [10–12] train distinct - feedback connections to invert the feedforward ones. Feedback alignment (FA) [13] replaces the - transpose of the forward weights used in the backward pass by a random matrix. Throughout training, - the forward weights learn toalignwith the arbitrary backward weights, eventually approximating BP. - - Beyond biological considerations As deep learning models grow bigger, large-scale distributed - training is increasingly desirable. Greedy layer-wise training [14] allows networks to be built layer - by layer, limiting the depth of backpropagation. To enable parallelization of the backward pass, - updates must only depend on local quantities. Unsupervised learning is naturally suited for this, - as it relies on local losses such as Deep InfoMax [17] and Greedy InfoMax [18]. More broadly, - synthetic gradient methods, like decoupled neural interfaces [3,15] and local error signals (LES) - [16], approximate gradients using layer-wise trainable feedback networks. DFA [19] expands on FA - and directly projects a global error to each layer. A shared feedback path is still needed, but it only - depends on a simple random projection operation. - - Performance of alternative methods Local training methods are successful in unsupervised learn- - ing [18]. Even in a supervised setting, they scale to challenging datasets like CIFAR-100 or ImageNet - [14,16]. Thus, locality is not too penalizing. However, TP, FA, and DFA are unable to scale to these - tasks [20]. In fact, DFA is unable to train convolutional layers [23]. To enable feedback alignment - techniques to perform well on challenging datasets, some form of weight transport is necessary: - either by explicitly sharing sign information [24–26], or by introducing dedicated phases of alignment - for the forward and backward weights where some information is shared [27]. To the best of our - knowledge, no method compatible with the weight transport problem has ever been demonstrated on - challenging tasks. - - 1.2 Motivations and contributions - - We focus on DFA, a compromise between biological and computational considerations. Notably, - DFA is compatible with synaptic asymmetry: this asymmetry raises important challenges, seemingly - preventing learning in demanding settings. Moreover, it allows for asynchronous weight updates, - and puts a single operation at the center of the training stage. This enables new classes of training - co-processors [28, 29], leveraging dedicated hardware to perform the random projection. - - Extensive survey We apply DFA in a large variety of settings matching current trends in machine - learning. Previous works have found that DFA is unsuitable for computer vision tasks [20,23]; but - computer vision alone cannot be the litmus test of a training method. Instead, we consider four vastly - different domains, across eight tasks, and with eleven different architectures. This constitutes a survey - of unprecedented scale for an alternative training method, and makes a strong case for the possibility - of learning without weight transport in demanding scenarios. - - Challenging settings We demonstrate the ability of DFA to tackle challenging tasks. We success- - fully learn and render real-world 3D scenes (section 3.1.1); we perform recommendation at scale - (section 3.1.2); we explore graph-based citation networks (section 3.2); and we consider language - modelling with a Transformer (section 3.3). We study tasks at the state-of-the-art level, that have - only been recently successfully tackled with deep learning. - - Modern architectures We prove that the previously established failure of DFA to train convolutions - does not generalize. By evaluating performance metrics, comparing against a shallow baseline, - measuring alignment, and visualizing t-SNE embeddings, we show that learning indeed occurs in - layers involving graph convolutions and attention. This significantly broadens the applicability of - DFA–previously thought to be limited to simple problems like MNIST and CIFAR-10. - - 2 2 Methods - - Forward pass In a fully connected network, at layeriout ofN, neglecting its biases, withWi its - weight matrix,fi its non-linearity, andhi its activations, the forward pass is: - 8i2[i;:::;N] :ai =Wi hi1 ;hi =fi (ai ): (1) - h0 =Xis the input data, andhN =f(aN ) =^yare the predictions. A task-specific cost function - L(^y;y)is computed to quantify the quality of the predictions with respect to the targetsy. - - Backward pass with BP The weight updates are computed by backpropagation of the error vector. - Using the chain-rule of derivatives, each neuron is updated based on its contribution to the cost - function. Leaving aside the specifics of the optimizer used, the equation for the weight updates is: - @L @LW Ti = =[(W a (2)@W i+1 i+1 )f0 (ai i )]hT ;ai1 i = - i @ai - - Backward pass with DFA The gradient signalWT ai+1 i+1 of the (i+1)-th layer violates synaptic - asymmetry. DFA replaces it with a random projection of the topmost derivative of the loss,ay . - For common classification and regression losses such as the mean squared error or the negative log - likelihood, this corresponds to a random projection of the global errore=^yy. WithBi , a fixed - random matrix of appropriate shape drawn at initialization for each layers: - @LWi =[(Bi ay )f0 (a ai i )]hT ; i1 y = (3)@ay - - 3 Experiments - - We study the applicability of DFA to a diverse set of applications requiring state-of-the-art architec- - tures. We start with fully connected networks, where DFA has already been demonstrated, and address - new challenging settings. We then investigate geometric learning: we apply DFA to graph neural net- - works in classification tasks on citation networks, as well as graph autoencoders. These architectures - feature graph convolutions and attention layers. Finally, we use DFA to train a transformer-based - Natural Language Processing (NLP) model on a dataset of more than 100 million tokens. - - 3.1 Fully connected architectures - - DFA has been successful at training fully connected architectures, with performance on-par with - backpropagation [19,20]. However, only computer vision tasks have been considered, where fully - connected networks considerably underperform their convolutional counterpart. Here, we focus on - tasks where fully connected architectures are state-of-the-art. Moreover, the architectures considered - are deeper and more complex than those necessary to solve a simple task like MNIST. - - 3.1.1 Neural view synthesis with Neural Radiance Fields - The most recent state-of-the-artneural view synthesismethods are based on large fully connected - networks: this is an ideal setting for a first evaluation of DFA on a challenging task. - - Background There has been growing interest in methods capable of synthesising novel renders of - a 3D scene using a dataset of past renders. The network is trained to learn an inner representation of - the scene, and a classical rendering system can then query the model to generate novel views. With - robust enough methods, real-world scenes can also be learned from a set of pictures. - Until recently, most successful neural view synthesis methods were based on sampled volumetric - representations [30–32]. In this context, Convolutional Neural Networks (CNNs) can be used to - smooth out the discrete sampling of 3D space [33,34]. However, these methods scale poorly to - higher resolutions, as they still require finer and finer sampling. Conversely, alternative schemes - based on a continuous volume representation have succeeded in generating high-quality renders [35], - even featuring complex phenomenons such as view-dependant scattering [36]. These schemes make - point-wise predictions, and use fully connected neural networks to encode the scene. - - 3 Figure 1: Comparisons of NeRF-DFA with state-of-the-art methods trained with BP on the most - challenging synthetic and real-world scenes. While NeRF-DFA generates render of lower quality, - they maintain multi-view consistency and exhibit no geometric artefacts. BP results from [36]. - - - Setting We employ Neural Radiance Fields (NeRF) [36], the state-of-the-art for neural view - synthesis. NeRF represents scenes as a continuous 5D function of space–three spatial coordinates, - two viewing angles–and outputs a point-wise RGB radiance and opacity. A ray-casting renderer can - then query the network to generate arbitrary views of the scene. The network modeling the continuous - function is 10 layers deep. Two identical networks are trained: thecoarsenetwork predictions inform - the renderer about the spatial coordinates that thefinenetwork should preferentially evaluate to avoid - empty space and occluded regions. - - Results We report quantitative results of training NeRF with DFA in Table 1. Neural view synthesis - methods are often better evaluated qualitatively: we showcase some renders in Figure 1. - On a dataset of renders featuring complex scenes with non-Lambertian materials (NeRF-Synthetic - [36]), NeRF-DFA outperforms two previous fine-tuned state-of-the-art methods–Scene Representation - Networks (SRN) [35] and Local Light Field Fusion (LLFF) [32]–and nearly matches the performance - of Neural Volumes (NV) [34]. While DFA underperforms alternative methods trained with BP on - the real world view dataset (LLFF-Real [32]), its performance remains significant: real world view - synthesis is a challenging tasks, and this level of PSNR indicates that learning is indeed happening. - In particular, we find that NeRF-DFA retains the key characteristics of NeRF-BP: it can render view- - dependant effects, and is multi-view consistent. The last point is an especially important achievement, - and most visible in videos, as it is a challenge for most algorithms [30–32,35]. The main drawback - of NeRF-DFA appears to be a seemingly lower render definition. The NeRF architecture has not - - - Table 1: Peak Signal to Noise Ratio (PSNR, higher is better) of neural view synthesis methods - trained with backpropagation against NeRF trained with DFA. Even when trained with DFA, NeRF - outperforms two state-of-the-art methods on a synthetic dataset (NeRF-Synthetic), and achieves fair - performance on a challenging real world views datasets (LLFF-Real). BP results from [36]. - - NV SRN LLFF NeRF - BP BP BP BP DFA - NeRF-Synthetic 26.05 22.26 24.88 31.01 25.41 - LLFF-Real / 22.84 24.13 26.50 20.77 - - - 4 been fine-tuned to achieve these results: DFA works out-of-the-box on this advanced method. Future - research focusing on architectural changes to NeRF could improve performance with DFA; some - preliminary results are included in the supplementary material. - - 3.1.2 Click-through rate prediction with recommender systems - We have demonstrated that DFA can train large fully connected networks on the difficult task of neural - view synthesis. We now seek to use DFA in more complex heterogeneous architectures, combining - the use of fully connected networks with other machine learning methods.Recommender systemsare - an ideal application for such considerations. - - Background Recommender systems are used to model the behavior of users and predict future - interactions. In particular, in the context of click-through rate (CTR) prediction, these systems model - the probability of a user clicking on a given item. Building recommender systems is hard [37]: their - input is high-dimensional and sparse, and the model must learn to extract high-order combinatorial - features from the data. Moreover, they need to do so efficiently, as they are used to make millions of - predictions and the training data may contain billions of examples. - Factorization Machines (FM) [38] use inner-products of latent vectors between features to extract - pairwise feature interactions. They constitute an excellent baseline for shallow recommender systems, - but fail to efficiently transcribe higher-level features. To avoid extensive feature engineering, it has - been suggested that deep learning can be used in conjunction with wide shallow models to extract - these higher-level features [39]. In production, these systems are regularly retrained on massive - datasets: the speedup allowed by backward unlocking in DFA is thus of particular interest. - - Setting Deep Factorization Machines (DeepFM) [40] combine FM and a deep fully connected - neural network, which we train with DFA. The input embedding is still trained directly via gradient - descent, as weight transport is not necessary to backpropagate through the FM. Deep & Cross - Networks (DCN) [41] replace the FM with a Cross Network, a deep architecture without non- - linearities capable of extracting high-degree interactions across features. We train the fully connected - network, the deep cross network, and the embeddings with DFA. Finally, Adaptative Factorization - Network (AFN) [42] uses Logarithmic Neural Networks [43] to enhance the representational power - of its deep component. We evaluate these methods on the Criteo dataset [44], which features nearly - 46 million samples of one million sparse features. This is a difficult task, where performance - improvements of the AUC on the0.001-levelcan enhance CTR significantly [39]. - - Results Performance metrics are reported in Table 2. To obtain these results, a simple hyperpa- - rameter grid search over optimization and regularization parameters was performed for BP and DFA - independently. DFA successfully trains all methods above the FM baseline, and in fact matches BP - performance in both DeepFM and AFN. Because of their complexity, recommender systems require - intensive tuning and feature engineering to perform at the state-of-the-art level–and reproducing - existing results can be challenging [45]. Hence, it is not surprising that a performance gap exists with - Deep&Cross–further fine-tuning may be necessary for DFA to reach BP performance. - Alignment measurements corroborate that learning is indeed occurring in the special layers of - Deep&Cross and AFN–see supplementary for details. Our results on recommender systems support - that DFA can learn in a large variety of settings, and that weight transport is not necessary to solve a - difficult recommendation task. - - - Table 2: AUC (higher is better) and log loss (lower is better) of recommender systems trained on the - Criteo dataset [44]. Even in complex heterogeneous architectures, DFA performance is in line with - BP. Values inboldindicate DFA AUC within 0.001 from the BP AUC or better. - - FM DeepFM Deep&Cross AFN - BP DFA BP DFA BP DFA - AUC 0.7915 0.7954 0.7956 0.8104 0.8009 0.7933 0.7924 - Loss 0.4687 0.4610 0.4624 0.4414 0.4502 0.4630 0.4621 - - - 5 3.2 Geometric Learning with Graph Convolutional Networks - - The use of sophisticated architectures beyond fully connected layers is necessary for certain tasks, - such asgeometric learning[46], where information lies in a complex structured domain. To address - geometric learning tasks, methods capable of handling graph-based data are commonly needed. - Graph convolutional neural networks (GCNNs) [47–50] have demonstrated the ability to process - large-scale graph data efficiently. We study the applicability of DFA to these methods, including - recent architectures based on an attention mechanism. Overall, this is an especially interesting setting, - as DFA fails to train more classic 2D image convolutional layers [23]. - - Background Complex data like social networks or brain connectomes lie on irregular or non- - Euclidean domains. They can be represented as graphs, and efficient processing in the spectral - domain is possible. Non-spectral techniques to apply neural networks to graphs have also been - developed [51–53], but they exhibit unfavorable scaling properties. The success of CNNs in deep - learning can be attributed to their ability to efficiently process structured high-dimensional data - by sharing local filters. Thus, a generalization of the convolution operator to the graph domain is - desirable: [47] first proposed a spectral convolution operation for graphs, and [48] introduced a form - of regularization to enforce spatial locality of the filters. We use DFA to train different such GCNNs - implementations. We study both spectral and non-spectral convolutions, as well as methods inspired - by the attention mechanism. We consider the task of semi-supervised node classification: nodes from - a graph are classified using their relationship to other nodes as well as node-wise features. - - Setting Fast Localized Convolutions (ChebConv) [49] approximate the graph convolution kernel - with Chebyshev polynomials, and are one of the first scalable convolution methods on graph. Graph - Convolutions (GraphConv) [50] remove the need for an explicit parametrization of the kernel by - enforcing linearity of the convolution operation on the graph Laplacian spectrum. It is often considered - as the canonical graph convolution. More recent methods do not operate in the spectral domain. Spline - Convolutions (SplineConv) [54] use a spline-based kernel, enabling the inclusion of information - about the relative positioning of nodes, enhancing their representational power–for instance in the - context of 3D meshes. Graph Attention Networks (GATConv) [55] use self-attention [56] layers to - enable predictions at a given node toattendmore specifically to certain parts of its neighborhood. - Finally, building upon Jumping Knowledge Network [57], Just Jump (DNAConv) [58] uses multi- - head attention [59] to enhance the aggregation process in graph convolutions and enable deeper - architectures. We use PyTorch Geometric [60] for reference implementation of all of these methods. - We evaluate performance on three citation network datasets: Cora, CiteSeer, and PubMed [61]. - - Results We report classification accuracy in Table 3. BP and DFA regularization and optimiza- - tion hyperparameters are fine-tuned separately on the Cora dataset. In general, we find that less - regularization and lower learning rates are needed with DFA. DFA successfully trains all graph - methods, independent of whether they use the spectral domain or not, and even if they use attention. - Furthermore, for GraphConv, SplineConv, and GATConv DFA performance nearly matches BP. - As GCNNs struggle with learning meaningful representations when stacking many layers [62], all - architectures but DNAConv are quite shallow (two layers). However, DFA performance is still - significantly higher than that of a shallow training method–see supplementary for details. The lower - performance on DNAConv is not a failure to learn: alignment measurements show that learning is - indeed occurring. It may be explained instead by a need for more in-depth fine-tuning, as this is a - deep architecture with 5 successive attention layers. - - Table 3: Classification accuracy (%, higher is better) of graph convolution methods trained with BP - and DFA, on citation networks [61]. But for ChebConv and DNAConv, DFA performance nearly - matches BP performance. Values inboldwhen DFA is within 2.5% of BP. - - ChebConv GraphConv SplineConv GATConv DNAConv - BP DFA BP DFA BP DFA BP DFA BP DFA - Cora 79.2 75.4 80.1 79.9 81.0 77.7 82.6 80.6 84.6 82.9 - CiteSeer 69.5 67.6 71.6 69.4 70.0 69.8 72.0 71.2 73.4 70.8 - PubMed 79.5 75.7 78.8 77.8 77.5 77.2 77.7 77.1 87.2 79.9 - - - 6 GAE - BP DFA - AUC 0.918 0.900Cora AP 0.918 0.900 - AUC 0.886 0.879CiteSeer AP 0.895 0.889 - AUC 0.967 0.945PubMed AP 0.966 0.945 - - Table 4: AUC and Average Precision Figure 2: t-SNE visualization of the hidden layer - (AP, higher is better) for a Graph- activations of a two-layer GraphConv trained on - Conv GAE trained with BP or DFA Cora with DFA. Classes forms clear clusters, in- - on citation networks. DFA repro- dicating that a useful intermediary representation - duces BP performance. is learned. Colors represent different classes. - - - We further demonstrate that DFA helps graph convolutions learn meaningful representations by - aplying t-SNE [63,64] to the hidden layer activations in GraphConv (Figure 2). Cluster of classes - are well-separated, indicating that a useful intermediary representation is derived by the first layer. - - Graph autoencoders We consider one last application of graph convolutions, in the context of - graph autoencoders (GAE). We train a non-probabilistic GAE [65] based on GraphConv with DFA, - and report results in Table 4. DFA performance is always in line with BP. - - 3.3 Natural Language Processing with Transformers - - We complete our study by training a Transformer [59] on a language modelling task. Transformers - have proved successful in text, image, music generation, machine translation, and many supervised - NLP tasks [59,66–69]. Here, we demonstrate that DFA can train them, and we show the influence of - tuning the optimizer hyperparameters in narrowing the gap with BP. - - Background NLP has largely benefited from advances in deep learning. Recurrent Neural Net- - works were responsible for early breakthroughs, but their sequential nature prevented efficient - parallelization of data processing. Transformers are attention-based models that do not rely on - recurrence or convolution. Their ability to scale massively has allowed the training of models with - several billion parameters [70,71], obtaining state-of-the-art results on all NLP tasks: Transformers - now top the prominent SQuAD 2.0 [72,73] and SuperGLUE [74] benchmarks. In parallel, transfer - learning in NLP has leaped forward thanks to language modelling, the unsupervised task of predicting - the next word. It can leverage virtually unlimited data from web scraping [75]. This enabled the - training ofuniversal language models[76] on extremely large and diversified text corpora. These - models are useful across a wide range of domains, and can solve most NLP tasks after fine-tuning. - - Setting The prominence of both language modelling and Transformers gives us the ideal candidate - for our NLP experiments: we train a Transformer to predict the next word on the WikiText-103 - dataset [77], a large collection ofgoodandfeaturedWikipedia articles. We use byte-pair-encoding - [78] with 32,000 tokens. Our setup is similar to GPT [66]: we adapt the Transformer, originally an - encoder-decoder model designed for machine translation, to language modelling. We keep only the - encoder and mask the tokens to predict. Our architecture consists in 6 layers, 8 attention heads, a - model dimension of 512, and a hidden size of 2048 in the feed-forward blocks. The text is sliced - in chunks of 128 tokens and batches of 64 such chunks, resulting in 8192 tokens per batch. Our - baseline is trained with BP using the optimization setup of [59]. We found perplexity after 20 epochs - to be an excellent indicator of perplexity at convergence; to maximize the number of experiments - we could perform, we report the best validation perplexity after 20 epochs. We study two ways of - implementing DFA: applying the feedback after every encoder block (macro) or after every layer in - those blocks (micro). The input embedding layer receives gradients from the next feedback point - through BP. This leaves some amount of weight transport even in themicrocase. - - 7 Table 5: Best validation perplexity after 20 epochs of a Transformer trained on WikiText-103 (lower - is better). The BP and DFA baselines share all hyper-parameters. InMacrothe feedback is applied - after every transformer layer, while inMicrothe feedback is applied after every sub-layer. The - learning rate of Adam without the learning rate scheduler is5:10 5 . With the scheduler, the initial - learning rate is1:10 4 and it is multiplied by 0.2 when performance plateaus, with a patience of 1. - * score after 22 epochs to let the learning rate scheduler take effect - - DFA BP - Baseline + Adam +2 = 0:999 + LR schedule Baseline +2 = 0:999 - Macro 95.0 77.1 55.0 52.0 34.4 29.8Micro 182 166 99.9 93.3* - - - Results Our results are summarized in Table 5. Hyper-parameters fine-tuned for BP did not fare - well with DFA, but changes in the optimizer narrowed the gap between BP and DFA considerably. - The learning rate schedule used on top of Adam [79] in [59] proved detrimental. Using Adam alone - required reducing the learning rate between BP and DFA. Increasing2 from 0.98 [59] to 0.999 - improved performance significantly. Finally, a simple scheduler that reduces the learning rate when - the validation perplexity plateaus helped reducing it further. Considering that the perplexity of the - shallow baseline is over 400, DFA is clearly able to train Transformers. However, our results are not - on par with BP, especially in themicrosetting. A substantial amount of work remains to make DFA - competitive with BP, even more so in a minimal weight transport scenario. The large performance - improvements brought by small changes in the optimizer indicate that intensive fine-tuning, common - in publications introducing state-of-the-art results, could close the gap between BP and DFA. - - 4 Conclusion and outlooks - - We conducted an extensive study demonstrating the ability of DFA to train modern architectures. We - considered a broad selection of domains and tasks, with complex models featuring graph convolutions - and attention. Our results on large networks like NeRF and Transformers are encouraging, suggesting - that with further tuning, such leading architectures can be effectively trained with DFA. Future work - on principled training with DFA–in particular regarding the influence of common practices and - whether new procedures are required–will help close the gap with BP. - More broadly, we verified for the first time that learning under synaptic asymmetry is possible beyond - fully-connected layers, and in tasks significantly more difficult than previously considered. This - addresses a notable concern in biologically-plausible architectures. DFA still requires an implausible - global feedback pathway; however, local training has already been demonstrated at scale. The next - step towards biologically-compatible learning is a local method without weight transport. - While the tasks and architectures we have considered are not biologically inspired, they constitute - a good benchmark forbehavioural realism[20]. Any learning algorithm claiming to approximate - the brain should reproduce its ability to solve complex and unseen task. Furthermore, even though - the current implementation of mechanisms like attention is devoid of biological considerations, they - represent broader concepts applicable to human brains [80]. Understanding how our brain learns is a - gradual process, and future research could incorporate further realistic elements, like spiking neurons. - Finally, unlocking the backward pass in large architectures like Transformers is promising. More opti- - mized implementation of DFA–built at a lower-level of existing ML libraries–could unlock significant - speed-up. Leveraging the use of a single random projection as the cornerstone of training, dedicated - accelerators may employ more exotic hardware architectures. This will open new possibilities in the - asynchronous training of massive models. - - - - - - - - - - - 8 Broader Impact - - Of our survey This study is the first experimental validation of DFA as an effective training method - in a wide range of challenging tasks and neural networks architectures. This significantly broadens the - applications of DFA, and more generally brings new insight on training techniques alternative to back- - propagation. From neural rendering and recommender systems, to natural language processing or - geometric learning, each of these applications has its own potential impact. Our task selection process - was motivated by current trends in deep learning, as well as by technically appealing mechanisms - (graph convolutions, attention). A limit of our survey is that our–arguably biased–selection of tasks - cannot be exhaustive. Our experiments required substantial cloud compute resources, with state-of- - the-art GPU hardware. Nevertheless, as this study provides new perspectives for hardware accelerator - technologies, it may favor the application of neural networks in fields previously inaccessible because - of computational limits. Future research on DFA should continue to demonstrate its use in novel - contexts of interest as they are discovered. - - Of the considered applications Each of the applications considered in our study has a wide - potential impact, consider for example the impact of textual bias in pretrained word embeddings [81]. - We refer to [82] and references therein for a discussion of ethical concerns of AI applications. - - Of DFA as a training method DFA enables parallelization of the backward pass and places a - single operation at the center of the training process, opening the prospect of reducing the power - consumption of training chips by an order of magnitude [28]. Not only is more efficient training a - path to more environmentally responsible machine learning [83], but it may lower the barrier of entry, - supporting equality and sustainable development goals. A significant downside of moving from BP to - DFA is a far more limited understanding of how to train models and how the trained models behave. - There is a clear empirical understanding of the impact of techniques such as batch normalization - or skip connections on the performance of BP; new insights need to be obtained for DFA. BP also - enjoys decades of works on topics like adversarial attacks, interpretability, and fairness. Much of - this work has to be cross-checked for alternative training methods, something we encourage further - research to consider as the next step towards safely and responsively scaling up DFA. - - Of biologically motivated method Finally, a key motivation for this study was to demonstrate that - learning challenging tasks was possible without weight transport. Biologically motivated methods - are a more foundational research direction, and as such the possible long-term impact of our findings - is harder to estimate under this light. However, fundamental research of this kind is important to open - new pathways for ML and neuroscience. - - Acknowledgments and Disclosure of Funding - - We thank Igor Carron and Laurent Daudet for the general guidance on the subject of this investigation - and the insightful comments, as well as the larger LightOn team for their support. - - References - [1]P. J. Werbos.Beyond Regression: New Tools for Prediction and Analysis in the Behavioral - Sciences. PhD thesis, Harvard University, 1974. - [2]D. E. Rumelhart, G. E. Hinton, and R. J. Williams. Learning internal representations by error - propagation. InParallel Distributed Processing, volume 1, pages 318–362. MIT Press, 1986. - [3]Max Jaderberg, Wojciech Marian Czarnecki, Simon Osindero, Oriol Vinyals, Alex Graves, - David Silver, and Koray Kavukcuoglu. Decoupled neural interfaces using synthetic gradients. - InProceedings of the 34th International Conference on Machine Learning-Volume 70, pages - 1627–1635, 2017. - [4]Francis Crick. The recent excitement about neural networks.Nature, 337(6203):129–132, 1989. - [5]Adam H Marblestone, Greg Wayne, and Konrad P Kording. Toward an integration of deep - learning and neuroscience.Frontiers in computational neuroscience, 10:94, 2016. - - 9 [6]Stephen Grossberg. Competitive learning: From interactive activation to adaptive resonance. - Cognitive science, 11(1):23–63, 1987. - [7]Javier R Movellan. Contrastive hebbian learning in the continuous hopfield model. InConnec- - tionist models, pages 10–17. Elsevier, 1991. - [8]Randall C O’Reilly. Biologically plausible error-driven learning using local activation differ- - ences: The generalized recirculation algorithm.Neural computation, 8(5):895–938, 1996. - [9]Ruslan Salakhutdinov and Geoffrey Hinton. Deep boltzmann machines. InArtificial intelligence - and statistics, pages 448–455, 2009. - [10]Yann Le Cun. Learning process in an asymmetric threshold network. InDisordered systems - and biological organization, pages 233–240. Springer, 1986. - [11]Yoshua Bengio. How auto-encoders could provide credit assignment in deep networks via target - propagation.arXiv preprint arXiv:1407.7906, 2014. - [12]Dong-Hyun Lee, Saizheng Zhang, Asja Fischer, and Yoshua Bengio. Difference target propaga- - tion. InJoint european conference on machine learning and knowledge discovery in databases, - pages 498–515. Springer, 2015. - [13]Timothy P Lillicrap, Daniel Cownden, Douglas B Tweed, and Colin J Akerman. Random synap- - tic feedback weights support error backpropagation for deep learning.Nature communications, - 7(1):1–10, 2016. - [14]Eugene Belilovsky, Michael Eickenberg, and Edouard Oyallon. Greedy layerwise learning can - scale to imagenet. InInternational Conference on Machine Learning, pages 583–593, 2019. - [15]Wojciech M Czarnecki, Simon Osindero, Max Jaderberg, Grzegorz Swirszcz, and Razvan - Pascanu. Sobolev training for neural networks. InAdvances in Neural Information Processing - Systems, pages 4278–4287, 2017. - [16]Arild Nøkland and Lars Hiller Eidnes. Training neural networks with local error signals. In - International Conference on Machine Learning, pages 4839–4850, 2019. - [17]R Devon Hjelm, Alex Fedorov, Samuel Lavoie-Marchildon, Karan Grewal, Phil Bachman, - Adam Trischler, and Yoshua Bengio. Learning deep representations by mutual information - estimation and maximization. InInternational Conference on Learning Representations, 2019. - URLhttps://openreview.net/forum?id=Bklr3j0cKX. - [18]Sindy Löwe, Peter O’Connor, and Bastiaan Veeling. Putting an end to end-to-end: Gradient- - isolated learning of representations. InAdvances in Neural Information Processing Systems, - pages 3033–3045, 2019. - [19] Arild Nøkland. Direct feedback alignment provides learning in deep neural networks. In - Advances in neural information processing systems, pages 1037–1045, 2016. - [20]Sergey Bartunov, Adam Santoro, Blake Richards, Luke Marris, Geoffrey E Hinton, and Timothy - Lillicrap. Assessing the scalability of biologically-motivated deep learning algorithms and - architectures. InAdvances in Neural Information Processing Systems, pages 9368–9378, 2018. - [21]Timothy P Lillicrap, Adam Santoro, Luke Marris, Colin J Akerman, and Geoffrey Hinton. - Backpropagation and the brain.Nature Reviews Neuroscience, pages 1–12, 2020. - [22]Natalia Caporale and Yang Dan. Spike timing–dependent plasticity: a hebbian learning rule. - Annu. Rev. Neurosci., 31:25–46, 2008. - [23]Julien Launay, Iacopo Poli, and Florent Krzakala. Principled training of neural networks with - direct feedback alignment.arXiv preprint arXiv:1906.04554, 2019. - [24]Qianli Liao, Joel Z Leibo, and Tomaso Poggio. How important is weight symmetry in back- - propagation? InThirtieth AAAI Conference on Artificial Intelligence, 2016. - - 10 [25]Theodore H Moskovitz, Ashok Litwin-Kumar, and LF Abbott. Feedback alignment in deep - convolutional networks.arXiv preprint arXiv:1812.06488, 2018. - - [26]Will Xiao, Honglin Chen, Qianli Liao, and Tomaso Poggio. Biologically-plausible learning - algorithms can scale to large datasets. InInternational Conference on Learning Representations, - 2019. URLhttps://openreview.net/forum?id=SygvZ209F7. - - [27]Mohamed Akrout, Collin Wilson, Peter C Humphreys, Timothy Lillicrap, and Douglas Tweed. - Using weight mirrors to improve feedback alignment.arXiv preprint arXiv:1904.05391, 2019. - - [28]Julien Launay, Iacopo Poli, Kilian Müller, Igor Carron, Laurent Daudet, Florent Krzakala, and - Sylvain Gigan. Light-in-the-loop: using a photonics co-processor for scalable training of neural - networks, 2020. - - [29]Charlotte Frenkel.Bottom-Up and Top-Down Neuromorphic Processor Design: Unveiling - Roads to Embedded Cognition. PhD thesis, UCL-Université Catholique de Louvain, 2020. - - [30]Eric Penner and Li Zhang. Soft 3d reconstruction for view synthesis.ACM Transactions on - Graphics (TOG), 36(6):1–11, 2017. - - [31]John Flynn, Michael Broxton, Paul Debevec, Matthew DuVall, Graham Fyffe, Ryan Overbeck, - Noah Snavely, and Richard Tucker. Deepview: View synthesis with learned gradient descent. - InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages - 2367–2376, 2019. - - [32]Ben Mildenhall, Pratul P Srinivasan, Rodrigo Ortiz-Cayon, Nima Khademi Kalantari, Ravi - Ramamoorthi, Ren Ng, and Abhishek Kar. Local light field fusion: Practical view synthesis - with prescriptive sampling guidelines.ACM Transactions on Graphics (TOG), 38(4):1–14, - 2019. - - [33]Vincent Sitzmann, Justus Thies, Felix Heide, Matthias Nießner, Gordon Wetzstein, and Michael - Zollhofer. Deepvoxels: Learning persistent 3d feature embeddings. InProceedings of the IEEE - Conference on Computer Vision and Pattern Recognition, pages 2437–2446, 2019. - - [34]Stephen Lombardi, Tomas Simon, Jason Saragih, Gabriel Schwartz, Andreas Lehrmann, and - Yaser Sheikh. Neural volumes: Learning dynamic renderable volumes from images.ACM - Transactions on Graphics (TOG), 38(4):65, 2019. - - [35]Vincent Sitzmann, Michael Zollhöfer, and Gordon Wetzstein. Scene representation networks: - Continuous 3d-structure-aware neural scene representations. InAdvances in Neural Information - Processing Systems, pages 1119–1130, 2019. - - [36]Ben Mildenhall, Pratul P Srinivasan, Matthew Tancik, Jonathan T Barron, Ravi Ramamoorthi, - and Ren Ng. Nerf: Representing scenes as neural radiance fields for view synthesis.arXiv - preprint arXiv:2003.08934, 2020. - - [37]H Brendan McMahan, Gary Holt, David Sculley, Michael Young, Dietmar Ebner, Julian Grady, - Lan Nie, Todd Phillips, Eugene Davydov, Daniel Golovin, et al. Ad click prediction: a view - from the trenches. InProceedings of the 19th ACM SIGKDD international conference on - Knowledge discovery and data mining, pages 1222–1230, 2013. - - [38]Steffen Rendle. Factorization machines. In2010 IEEE International Conference on Data - Mining, pages 995–1000. IEEE, 2010. - - [39]Heng-Tze Cheng, Levent Koc, Jeremiah Harmsen, Tal Shaked, Tushar Chandra, Hrishi Aradhye, - Glen Anderson, Greg Corrado, Wei Chai, Mustafa Ispir, et al. Wide & deep learning for - recommender systems. InProceedings of the 1st workshop on deep learning for recommender - systems, pages 7–10, 2016. - - [40]Huifeng Guo, Ruiming Tang, Yunming Ye, Zhenguo Li, and Xiuqiang He. Deepfm: a - factorization-machine based neural network for ctr prediction.arXiv preprint arXiv:1703.04247, - 2017. - - 11 [41]Ruoxi Wang, Bin Fu, Gang Fu, and Mingliang Wang. Deep & cross network for ad click - predictions. InProceedings of the ADKDD’17, ADKDD’17, New York, NY, USA, 2017. - Association for Computing Machinery. ISBN 9781450351942. doi: 10.1145/3124749.3124754. - URLhttps://doi.org/10.1145/3124749.3124754. - [42]Weiyu Cheng, Yanyan Shen, and Linpeng Huang. Adaptive factorization network: Learning - adaptive-order feature interactions. InThirty-Fourth AAAI Conference on Artificial Intelligence, - 2020. - [43]J Wesley Hines. A logarithmic neural network architecture for unbounded non-linear function - approximation. InProceedings of International Conference on Neural Networks (ICNN’96), - volume 2, pages 1245–1250. IEEE, 1996. - [44]Criteo. Kaggle contest dataset is now available for academic use!http://labs.criteo.com/ - 2014/09/kaggle-contest-dataset-now-available-academic-use/, 2014. accessed - on the 2020-05-20. - [45]Maurizio Ferrari Dacrema, Paolo Cremonesi, and Dietmar Jannach. Are we really making much - progress? a worrying analysis of recent neural recommendation approaches. InProceedings of - the 13th ACM Conference on Recommender Systems, pages 101–109, 2019. - [46]Michael M Bronstein, Joan Bruna, Yann LeCun, Arthur Szlam, and Pierre Vandergheynst. - Geometric deep learning: going beyond euclidean data.IEEE Signal Processing Magazine, 34 - (4):18–42, 2017. - [47]Joan Bruna, Wojciech Zaremba, Arthur Szlam, and Yann Lecun. Spectral networks and locally - connected networks on graphs. InInternational Conference on Learning Representations, pages - http–openreview, 2014. - [48]Mikael Henaff, Joan Bruna, and Yann LeCun. Deep convolutional networks on graph-structured - data.arXiv preprint arXiv:1506.05163, 2015. - [49]Michaël Defferrard, Xavier Bresson, and Pierre Vandergheynst. Convolutional neural networks - on graphs with fast localized spectral filtering. InAdvances in neural information processing - systems, pages 3844–3852, 2016. - [50]Thomas N. Kipf and Max Welling. Semi-supervised classification with graph convolutional - networks. InInternational Conference on Learning Representations (ICLR), 2017. - [51]Marco Gori, Gabriele Monfardini, and Franco Scarselli. A new model for learning in graph - domains. InProceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005., - volume 2, pages 729–734. IEEE, 2005. - [52]Franco Scarselli, Marco Gori, Ah Chung Tsoi, Markus Hagenbuchner, and Gabriele Monfardini. - The graph neural network model.IEEE Transactions on Neural Networks, 20(1):61–80, 2008. - [53]Yujia Li, Daniel Tarlow, Marc Brockschmidt, and Richard Zemel. Gated graph sequence neural - networks. InInternational Conference on Learning Representations, 2016. - [54]Matthias Fey, Jan Eric Lenssen, Frank Weichert, and Heinrich Müller. Splinecnn: Fast geometric - deep learning with continuous b-spline kernels. InProceedings of the IEEE Conference on - Computer Vision and Pattern Recognition, pages 869–877, 2018. - [55]Petar Velickoviˇ c, Guillem Cucurull, Arantxa Casanova, Adriana Romero, Pietro Liò, and Yoshua´ - Bengio. Graph attention networks. InInternational Conference on Learning Representations, - 2018. URLhttps://openreview.net/forum?id=rJXMpikCZ. - [56] Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio. Neural machine translation by jointly - learning to align and translate. In3rd International Conference on Learning Representations, - ICLR 2015, 2015. - [57]Keyulu Xu, Weihua Hu, Jure Leskovec, and Stefanie Jegelka. How powerful are graph neural - networks? InInternational Conference on Machine Learning, 2018. - - 12 [58]Matthias Fey. Just jump: Dynamic neighborhood aggregation in graph neural networks. In - ICLR Workshop on Representation Learning on Graphs and Manifolds, 2019. - - [59]Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, - Łukasz Kaiser, and Illia Polosukhin. Attention is all you need. InAdvances in neural information - processing systems, pages 5998–6008, 2017. - - [60]Matthias Fey and Jan E. Lenssen. Fast graph representation learning with PyTorch Geometric. - InICLR Workshop on Representation Learning on Graphs and Manifolds, 2019. - - [61]Prithviraj Sen, Galileo Namata, Mustafa Bilgic, Lise Getoor, Brian Galligher, and Tina Eliassi- - Rad. Collective classification in network data.AI magazine, 29(3):93–93, 2008. - - [62]Keyulu Xu, Weihua Hu, Jure Leskovec, and Stefanie Jegelka. How powerful are graph neural - networks? InInternational Conference on Learning Representations, 2019. URLhttps: - //openreview.net/forum?id=ryGs6iA5Km. - - [63]Laurens van der Maaten and Geoffrey Hinton. Visualizing data using t-sne.Journal of machine - learning research, 9(Nov):2579–2605, 2008. - - [64]David M Chan, Roshan Rao, Forrest Huang, and John F Canny. Gpu accelerated t-distributed - stochastic neighbor embedding.Journal of Parallel and Distributed Computing, 131:1–13, - 2019. - - [65]Thomas N Kipf and Max Welling. Variational graph auto-encoders.NIPS Workshop on Bayesian - Deep Learning, 2016. - - [66]Alec Radford, Karthik Narasimhan, Time Salimans, and Ilya Sutskever. Improving language - understanding with unsupervised learning.Technical report, OpenAI, 2018. - - [67]Niki Parmar, Ashish Vaswani, Jakob Uszkoreit, Lukasz Kaiser, Noam Shazeer, Alexander Ku, - and Dustin Tran. Image transformer.ArXiv, abs/1802.05751, 2018. - - [68]Prafulla Dhariwal, Heewoo Jun, Christine Payne, Jong Wook Kim, Alec Radford, and Ilya - Sutskever. Jukebox: A generative model for music.arXiv preprint arXiv:2005.00341, 2020. - - [69]Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of - deep bidirectional transformers for language understanding. InProceedings of the 2019 Confer- - ence of the North American Chapter of the Association for Computational Linguistics: Human - Language Technologies, Volume 1 (Long and Short Papers), pages 4171–4186, Minneapolis, - Minnesota, June 2019. Association for Computational Linguistics. doi: 10.18653/v1/N19-1423. - URLhttps://www.aclweb.org/anthology/N19-1423. - - [70]Mohammad Shoeybi, Mostofa Ali Patwary, Raul Puri, Patrick LeGresley, Jared Casper, and - Bryan Catanzaro. Megatron-lm: Training multi-billion parameter language models using model - parallelism.ArXiv, abs/1909.08053, 2019. - - [71]Tom B Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared Kaplan, Prafulla Dhariwal, - Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, et al. Language models are - few-shot learners.arXiv preprint arXiv:2005.14165, 2020. - - [72]Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, and Percy Liang. SQuAD: 100,000+ - questions for machine comprehension of text. InProceedings of the 2016 Conference on - Empirical Methods in Natural Language Processing, pages 2383–2392, Austin, Texas, Novem- - ber 2016. Association for Computational Linguistics. doi: 10.18653/v1/D16-1264. URL - https://www.aclweb.org/anthology/D16-1264. - - [73]Pranav Rajpurkar, Robin Jia, and Percy Liang. Know what you don’t know: Unanswerable - questions for SQuAD. InProceedings of the 56th Annual Meeting of the Association for - Computational Linguistics (Volume 2: Short Papers), pages 784–789, Melbourne, Australia, - July 2018. Association for Computational Linguistics. doi: 10.18653/v1/P18-2124. URL - https://www.aclweb.org/anthology/P18-2124. - - 13 [74]Alex Wang, Yada Pruksachatkun, Nikita Nangia, Amanpreet Singh, Julian Michael, Felix - Hill, Omer Levy, and Samuel Bowman. Superglue: A stickier benchmark for general-purpose - language understanding systems. InAdvances in Neural Information Processing Systems, pages - 3261–3275, 2019. - [75]The Common Crawl Team. Common Crawl.https://commoncrawl.org, 2020. - [76]Jeremy Howard and Sebastian Ruder. Universal language model fine-tuning for text classifica- - tion. InACL. Association for Computational Linguistics, 2018. URLhttp://arxiv.org/ - abs/1801.06146. - [77]Stephen Merity, Caiming Xiong, James Bradbury, and Richard Socher. Pointer sentinel mixture - models.ArXiv, abs/1609.07843, 2017. - [78]Rico Sennrich, Barry Haddow, and Alexandra Birch. Neural machine translation of rare - words with subword units. InProceedings of the 54th Annual Meeting of the Association - for Computational Linguistics (Volume 1: Long Papers), pages 1715–1725, Berlin, Germany, - August 2016. Association for Computational Linguistics. doi: 10.18653/v1/P16-1162. URL - https://www.aclweb.org/anthology/P16-1162. - [79]Diederik Kingma and Jimmy Ba. Adam: A method for stochastic optimization.International - Conference on Learning Representations, 12 2014. - [80]Grace W Lindsay. Attention in psychology, neuroscience, and machine learning.Frontiers in - Computational Neuroscience, 14:29, 2020. - [81]Tolga Bolukbasi, Kai-Wei Chang, James Y Zou, Venkatesh Saligrama, and Adam T Kalai. - Man is to computer programmer as woman is to homemaker? debiasing word embeddings. In - Advances in neural information processing systems, pages 4349–4357, 2016. - [82]Alexandra Luccioni and Yoshua Bengio. On the morality of artificial intelligence.arXiv preprint - arXiv:1912.11945, 2019. - [83]Emma Strubell, Ananya Ganesh, and Andrew McCallum. Energy and policy considerations for - deep learning in nlp.arXiv preprint arXiv:1906.02243, 2019. - [84]Yi Tay, Dara Bahri, Donald Metzler, Da-Cheng Juan, Zhe Zhao, and Che Zheng. Synthesizer: - Rethinking self-attention in transformer models.arXiv preprint arXiv:2005.00743, 2020. - [85]Liyuan Liu, Haoming Jiang, Pengcheng He, Weizhu Chen, Xiaodong Liu, Jianfeng Gao, - and Jiawei Han. On the variance of the adaptive learning rate and beyond.arXiv preprint - arXiv:1908.03265, 2019. - [86]Alessandro Raganato, Yves Scherrer, and Jörg Tiedemann. Fixed encoder self-attention patterns - in transformer-based machine translation.arXiv preprint arXiv:2002.10260, 2020. - [87]Adam Paszke, Sam Gross, Francisco Massa, Adam Lerer, James Bradbury, Gregory Chanan, - Trevor Killeen, Zeming Lin, Natalia Gimelshein, Luca Antiga, Alban Desmaison, Andreas - Kopf, Edward Yang, Zachary DeVito, Martin Raison, Alykhan Tejani, Sasank Chilamkurthy, - Benoit Steiner, Lu Fang, Junjie Bai, and Soumith Chintala. Pytorch: An imperative style, high- - performance deep learning library. In H. Wallach, H. Larochelle, A. Beygelzimer, F. d'Alché- - Buc, E. Fox, and R. Garnett, editors,Advances in Neural Information Processing Systems 32, - pages 8024–8035. Curran Associates, Inc., 2019. URLhttp://papers.neurips.cc/paper/ - 9015-pytorch-an-imperative-style-high-performance-deep-learning-library. - pdf. - - - - - - - - - - - 14 Appendix - - - We first provide additional elements to corroborate our findings: alignment measurement (Section - A), and shallow baselines (Section B). We then discuss the process of adapting the considered - architectures for DFA (Section C), and the issue of weight transport in attention layers (Section D). - We provide some supplementary results for NeRF (Section E), including details of performance on - each scene of each datatset, and a discussion on possible mitigation of DFA shortcomings. Finally, - we outline steps necessary for reproduction of this work (Section F). - - A Alignment - - Alignment measurement In feedback alignment methods, the forward weights learn toalignwith - the random backward weights, making the delivered updates useful. This alignment can be quantified - by measuring the cosine similarity between the gradient signal delivered by DFABi ay and the - gradient signal BP would have deliveredWT ai+1 i+1 . For learning to occur and DFA to work as - a training method, there must be alignment. This can be measured numerically [23]. Measuring - alignments allows to check whether or not the layers are effectively being trained by DFA, regardless - of performance metrics. We note that any alignment value superior to 0 signifies that learning is - occuring. Values closer to 1 indicate a better match with BP, but small alignment values are sufficient - to enable learning. We report values measured at the deepest DFA layer. - - Recommender systems We measure alignment on the Criteo dataset, in the two architectures - featuring non-conventional fully-connected layers: Deep & Cross and AFN. Alignment is measured - after 15 epochs of training, and averaged over a random batch of 512 samples. Results are reported in - table A.1. These alignment measurements indicate that learning is indeed occurring in the cross and - logarithmic layers. High-variance of alignment in the cross layers is unique: it may be explained by - the absence of non-linearity, and account for the difference in performance between BP and DFA on - this architecture–which is higher than on the others. - - Table A.1: Alignment cosine similarity (higher is better, standard deviation in parenthesis) of - recommender systems as measured on the Criteo dataset. Learning occurs in both architectures, and - high variance may explain the larger performance gap on Deep & Cross compared to other methods. - - Deep & Cross AFN - Alignment 0.40 (0.91) 0.49 (0.08) - - - Graph convolutions We measure alignment on the Cora dataset, after 250 epochs of training, - averaging values over every sample available–train, validation, and test split included. Results are - reported in Table A.2. We observe high alignment values in all architectures, indicative that learning - is indeed occuring. Slightly lower values in SplineConv and GATConv may be explained by the use - of the Exponential Linear Unit (ELU) instead of the Rectified Linear Unit (ReLU) used as activation - in other architectures. - Table A.2: Alignment cosine similarity (standard deviation in parenthesis) of various graph convolu- - tions architectures as measured on the Cora dataset. These values corroborate that DFA successfully - trains all architectures considered. - - ChebConv GraphConv SplineConv GATConv DNAConv - Alignment 0.87 (0.12) 0.77 (0.25) 0.56 (0.22) 0.63 (0.18) 0.92 (0.30) - - - B Shallow baselines - - Shallow learning We compare DFA to BP, but also to shallow learning–where only the topmost - layer is trained. While DFA may not reach the performance level of BP, it should still vastly - - 15 Figure A.1: Comparisons of Tiny-NeRF trained with BP, DFA, and a shallow approach. Shallow - training is insufficient to learn scene geometry. Lego scene from the NeRF synthetic dataset. - - - outperform shallow learning: failure to do so would mean that the weight updates delivered by DFA - are useless. On a simple task like MNIST, a shallow baseline may be as high as 90%. However, given - the difficulty of the tasks we consider, the shallow baseline is here usually much lower. - - NeRF Because NeRF models are expensive to train–up to 15 hours on a V100–we consider a - simplified setup for the shallow baseline, NeRF-Tiny. This setup operates at half the full resolution - of the training images available, runs for 5000 iterations only, and does away with view-dependant - characteristics. Furthermore, the network is cut down to 3 layers of half the width of NeRF, and - no coarse network is used to inform the sampling. We train this network on the Lego scene of the - NeRF-Synthetic dataset, and compare results. - Figure A.1 presents renders generated by NeRF-Tiny trained with BP, DFA, and a shallow approach. - While BP and DFA delivers similar renders, shallow training fails to reproduce even basic scene - geometry, instead outputting a diffuse cloud of colors. This highlights that while DFA may not reach - a level of performance on-par with BP on NeRF, it nonetheless delivers meaningful updates enabling - the learning of complex features. - - Recommender systems Because recommender systems require fine-tuning, we perform the same - hyperparameter search for shallow learning than for DFA and BP. Results are detailed in Table A.3. - Performance of shallow training is always well under BP and DFA–remember that0.001-levelmatter - in recommender systems. In particular, in Deep & Cross, where there was the biggest gap between - BP and DFA, the performance of the shallow method is extremely poor, well below the FM baseline. - Finally, it is expected to see that DeepFM recovers more or less the performance of FM even with a - shallow baseline. - - Table A.3: Shallow baseline for recommender system models on the Criteo dataset. Performance is - always well below BP and DFA, as expected. - - DeepFM Deep&Cross AFN - AUC 0.7920 0.7324 0.7859 - Loss 0.4682 0.5010 0.4685 - - - Graph convolutions We use the same hyperparameters as for DFA to produce the shallow baseline - on graph datasets. Results are reported in Table A.4. Performance is always much worse than BP - and DFA. GATConv recovers the best performance: random attention layers may still deliver useful - features [84], as do random convolutions. - - Transformers In the baseline setting (optimizer and hyper-parameters of [59]), a Transformer - trained in the shallow regime yields a perplexity of 428 on WikiText-103. We do not consider - - 16 Table A.4: Shallow baseline for GCNNs on Cora, CiteSeer, and PubMed [61]. Performance is always - well below BP and DFA. - - ChebConv GraphConv SplineConv GATConv DNAConv - Cora 23.3 37.0 39.6 59.4 30.2 - CiteSeer 27.4 33.8 30.1 49.8 24.0 - PubMed 37.6 44.8 44.2 67.8 42.2 - - - - other settings, as the cost of training a Transformer is high and we do not expect any meaningful - improvements–as with NeRF above. - - - C Adapting architectures to DFA - - NeRF We use an architecture identical to the one used in [36], but based on the effective code - implementation rather than the description in the paper 1 . During our tests, we have found that - lowering the learning rate to1:10 4 rather than5:10 4 works best with DFA. - - - Recommender systems For all training methods (BP, DFA, and shallow), we have conducted - independent hyperparameter searches. We performed a grid search over the learning rate, from - 1:10 4 to1:10 3 in1:10 4 steps, as well as over the dropout probability, from0:1to0:5in0:1steps - (where applicable). On DeepFM, this search leads to reduce the learning rate from3:10 4 with BP - to5:10 5 with DFA, but to keep the 0.5 dropout rate. On Deep & Cross, we reduce learning rate - from2:10 4 to5:10 5 , with no dropout in both cases. In AFN, we reduce dropout from4:10 4 to - 3:10 4 and dropout from 0.3 to 0. - - - Graph convolutions We manually test for a few hyperparameters configuration on the Cora dataset, - focusing on learning rate, weight decay, and dropout. We do not consider architectural changes, such - as changing the number of filters or of attention heads. For ChebConv and GraphConv, we reduce - weight decay to1:10 4 instead of5:10 4 , and set the dropout rate to0and0:1respectively, instead - of0:5with BP. For SplineConv, we find that no change in the hyperparameters are necessary. For - GATConv, we reduce weight decay to1:10 4 instead of5:10 4 and reduce dedicated dropout layer - to0:1instead of0:6but keep the0:6dropout rate within the GAT layer. Finally, on DNAConv we - disable weight decay entirely, instead of an original value of5:10 4 , double the learning rate from - 5:10 3 to1:10 2 , and disable dropout entirely. In all cases, we share the backward random matrix - across all nodes in a graph. - - - Transformers The model hyper-parameters were fixed across all of our experiments, except for - the number of attention heads in one case, that we will precise below, and dropout. We tested several - values of dropout probability between 0 and 0.5, but found the original value of 0.1 to perform - best. We manually tested a number of optimizers, optimizer parameters and attention mechanisms. - We tested four combinations of optimizers and schedulers : Adam with the scheduler used in [59], - Adam alone, RAdam [85] alone, and Adam with a scheduler that reduces the learning rate when - the validation perplexity plateaus. We found it necessary to reduce the initial learning rate of Adam - from1:10 4 to5:10 5 , although it could be set back to1:10 4 with a scheduler. We tried two values - of2 : 0.98 and 0.999. We also tried to change1 and observed some small differences that were - not significant enough for the main text. Finally, we tried three attention mechanisms in addition to - the standard multihead scaled dot-product attention: the dense and random (learnable) Synthesizers - of [84], as well as the fixed attention patterns of [86]. The latter needed to be adapted to language - modelling to prevent attending to future tokens, which led us to reduced the number of attention - heads to 4. The backward random matrix is always shared across all tokens and batches. - - - 1 https://github.com/bmild/nerf/issues/11 - - 17 D Weight transport and attention - - We consider an attention layer operating on inputx. The queries, keys, and values are respectively - q=xW Q ;k=xW K ;v=xW V , anddk is the dimension of the queries and keys. The layer - performs: qk T - Attention(q;k;v) =softmax p v (4)dk - - When using DFA on attention, we deliver the random feedback to the top of the layer. Accordingly, - to obtain updates toWQ ;WK ;andWV we still to have to backpropagate through the attention - mechanism itself. This involves weight transport onWV , sacrificing some biological realism for - simplicity. Overall weight transport between layers still does not occur, and updating the layers in - parallel remains possible. - Beside using FA or DFA within the attention layer, alternative mechanisms like the synthesizer - [84]–which uses random attention in place of the query and key system–or fixed attention [86] can - remove the need for weight transport. Implementing these mechanisms in DFA-trained Transformers, - or other attention-powered architectures, will require further research. - - - E Supplementary NeRF results - - Quantitative results We report per-scene scores for each dataset in Table A.5. BP values are taken - from [36]. On three scenes of the synthetic datasets, NeRF-DFA even outperforms past state-of-the-art - methods trained with BP. Note that Neural Volumes (NV) is not applicable to forward-facing view - synthesis–as is required in LLFF-Real–and thus no results are reported. - - Qualitative results We report sample renders from the NeRF-Synthetic dataset (Figure A.2) and - the LLFF-Real dataset (Figure A.2), for every scene available. However, we recommend readers to - consult the supplementary video to make better sense of characteristics like multi-view consistency - and view-dependent effects (most visible on the LLFF-Real Room scene). - - - Table A.5: Per-scene PSNR for NeRF DFA and BP against other state-of-the-art methods on the - Nerf-Synthetic and LLFF-Real. DFA performance is fairly homogeneous across each dataset and in - line with the differences in other methods. - - NV SRN LLFF NeRF - BP BP BP BP DFA - NeRF-Synthetic 26.05 22.26 24.88 31.01 25.41 - Chair 28.33 26.96 28.72 33.00 28.74 - Drums 22.58 17.18 21.13 25.01 22.15 - Ficus 24.79 20.73 21.79 30.13 25.61 - Hotdog 30.71 26.81 31.41 36.18 28.03 - Lego 26.08 20.85 24.54 32.54 24.93 - Materials 24.22 18.09 20.72 29.62 25.15 - Mic 27.78 26.85 27.48 32.91 25.43 - Ship 23.93 20.60 23.22 28.65 23.25 - LLFF-Real 22.84 24.13 26.50 20.77 - Room 27.29 28.42 32.70 24.20 - Fern 21.37 22.95 25.17 21.82 - Leaves 18.24 19.52 20.92 16.50 - Fortress 26.63 29.40 31.16 25.16 - Orchids 17.37 18.52 20.36 16.73 - Flower 26.63 25.46 27.40 21.55 - T-Rex 22.87 24.15 26.80 19.43 - Horns 24.33 24.70 27.45 20.75 - - - 18 Possible future directions Despite retranscribing scene geometry in a multi-view consistent way, - NeRF produces renders of a lower quality when trained with DFA instead of BP. In particular, it - struggles to transcribe small-scale details, resulting in "blurry" renders. Moreover, it displays high- - frequency artefacts: not in the scene geometry, but in individual pixels taking values very distant from - their neighborhood. Interestingly, this noise phenomenon is unique to NeRF-DFA: it is not observed - on NeRF-BP with similar PSNR values (achieved during training) or on other methods with similar - or lower PSNR. This leads us to hypothesize this is an aspect unique to DFA, possibly due to the - alignment process. Indeed, DFA creates a bias on the weights, by encouraging them to be "aligned" - with an arbitrary values dependant on the random matrix used. It is possible this could introduce - random noise in the final renders–though we leave a more principled experiment to future research. - To attempt to alleviate this issue, we first consider NeRF-Dual. In NeRF-Dual, we average the - pixel-wise prediction between the fine and coarse network, to attempt to remove some of the noise. - To do so, we first still use the coarse network to create a probability distribution for the hierarchical - sampling. Then, we evaluate again both the coarse and fine networks at the locations informed by - this probability distribution. Compared to vanilla NeRF, this requires an extra batch of evaluation of - the coarse network for all rays–rougly speaking, this increases inference time by 30-50% depending - on the coarse network architecture considered. We note that this is not applied during training, so that - training times remain identical. - Figure A.2 and Figure A.3 showcase comparisons between NeRF and NeRF-Dual trained with DFA - on all scenes. When viewed at high resolution–such as in our supplementary video–the NeRF-Dual - renders are more pleasing, especially for the full scenes. They remove most of the high-frequency - noise, leading to smoother renders. However, this averaging process further blurs small-scale details in - the render. This is especially visible in the NeRF-Synthetic dataset, on scenes like Ficus. Furthermore, - NeRF-Dual introduces novel artefacts in the Mic and Ship scenes, with areas improperly colored - with a violet tint. The cause for these artefacts is unknown, but they show that NeRF-Dual is far from - a silver bullet. The PSNR is also minimally increased, by less than 0.5 per scene. Nevertheless, this - shows some promise in possibilities to allievate the shortcomings of NeRF-DFA. It is possible that - changes to the overall rendering process, or the use of classic image processing techniques, may help - enhance the NeRF-DFA images. - Finally, we also experimented with increasing the capacity of the fine network, by widening its layers - to 512 neurons. We call this architecture NeRF-XL. However, we have not succeeded in getting - PSNR values higher than with vanilla NeRF on DFA. In particular, the training process becomes - much more cumbersome, as multi-GPU parallelism is needed to fit the model. It is possible that - higher network capacity may help learning both the task at hand and to align simultaneously, but - further work is required. - - - F Reproducibility - - Hardware used All main experiments require at most a single NVIDIA V100 GPU with 16GB - of memory to reproduce. Alignment measurement on large architectures (NeRF and Transformers) - require a second identical GPU to keep a copy of the network to evaluate BP gradients. - We estimate that a total of around 10,000 GPU-hours on V100s were necessary for this paper. - Accordingly, we estimate the cloud-computing carbon impact of this paper to be of 1700 kgCO 2 eq 2 . - However, without hyperparameter searches, our results can be reproduced with less than 500 GPU- - hours on V100s, with most of that budget going to NeRF and Transformers. - - Implementation We use the shared random matrix trick from [23] to reduce memory use in DFA - and enable its scaling to large networks. We use PyTorch [87] for all experiments. For reference - implementation of the methods considered, we relied on various sources. Our NeRF implementation - is based on the PyTorch implementation by Krishna Murthy 3 , with modifications to allow for proper - test and validation, as well as DFA and multi-GPU support. For recommender systems, we use - - 2 https://mlco2.github.io/impact#compute - 3 https://github.com/krrish94/nerf-pytorch - - 19 thetorchfmpackage 4 . Finally, we use PyTorch Geometric [60] for all graph operations. Our - Transformer implementation is our own. Our code is available as supplementary material. - - NeRF We provide training, testing, and rendering code along with the configurations used to obtain - our results. An example to reproduce our results is given in the supplementary code repository. Given - the computing cost associated with training a NeRF, we also provide our trained models. - - Recommender systems We provide bash scripts to reproduce the results in Table 2 and A.3, with - the results of our hyperparameter search. We provide code to reproduce the results in Table A.1. - - Graph convolutions We provide the code to reproduce all of our results. Note that the t-SNE - results are not exactly reproducible, as the CUDA implementation used is non-deterministic. - - Transformers We provide bash scripts to reproduce Table 5 and the shallow results. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 4 https://github.com/rixwew/pytorch-fm - - 20 Figure A.2: Sample renders for every scene of the NeRF-Synthetic dataset, for NeRF and NeRF-Dual - trained with DFA. - - - - - - - - - - - 21 Figure A.3: Sample renders for every scene of the LLFF-Real dataset, for NeRF and NeRF-Dual - trained with DFA. - - - - - - - - - - - - 22 \ No newline at end of file diff --git a/Corpus/Efficient Behavior of Small-World Networks.txt b/Corpus/Efficient Behavior of Small-World Networks.txt deleted file mode 100644 index 18b01f0c79a648f7a31b79cba5b193c98a52b7a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26573 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 delta 21251 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 Myno&3e*c;O4