Learning Deep ResNet Blocks Sequentially using Boosting Theory

Furong Huang, Jordan Ash, John Langford, Robert Schapire

Introduction

Why do residual neural networks (ResNets) (He et al., 2016) and the related highway networks (Srivastava et al., 2015) work? And if we study closely why they work, can we come up with new understandings of how to train them and how to define working algorithms?

Deep neural networks have elicited breakthrough successes in machine learning, especially in image classification and object recognition (Krizhevsky et al., 2012; Sermanet et al., 2013; Simonyan & Zisserman, 2014; Zeiler & Fergus, 2014) in recent years. As the number of layers increases, the nonlinear network becomes more powerful, deriving richer features from input data. Empirical studies suggest that challenging tasks in image classification (He et al., 2015; Ioffe & Szegedy, 2015; Simonyan & Zisserman, 2014; Szegedy et al., 2015) and object recognition (Girshick, 2015; Girshick et al., 2014; He et al., 2014; Long et al., 2015; Ren et al., 2015) often require “deep” networks, consisting of tens or hundreds of layers. Theoretical analyses have further justified the power of deep networks (Mhaskar & Poggio, 2016) compared to shallow networks.

However, deep neural networks are difficult to train despite their intrinsic representational power. Stochastic gradient descent with back-propagation (BP) (LeCun et al., 1989) and its variants are commonly used to solve the non-convex optimization problems. A major challenge that exists for training both shallow and deep networks is vanishing or exploding gradients (Bengio et al., 1994; Glorot & Bengio, 2010). Recent works have proposed normalization techniques (Glorot & Bengio, 2010; LeCun et al., 2012; Ioffe & Szegedy, 2015; Saxe et al., 2013) to effectively ease the problem and achieve convergence. In training deep networks, however, a surprising training performance degradation is observed (He & Sun, 2015; Srivastava et al., 2015; He et al., 2016): the training performance degrades rapidly with increased network depth after some saturation point. This training performance degradation is representationally surprising as one can easily construct a deep network identical to a shallow network by forcing any part of the deep network to be the same as the shallow network with the remaining layers functioning as identity maps. He et al. (He et al., 2016) presented a residual network (ResNet) learning framework to ease the training of networks that are substantially deeper than those used previously. And they explicitly reformulate the layers as learning residual functions with reference to the layer inputs by adding identity loops to the layers. It is shown in (Hardt & Ma, 2016) that identity loops ease the problem of spurious local optima in shallow networks. Srivastava et al. (Srivastava et al., 2015) introduce a novel architecture that enables the optimization of networks with virtually arbitrary depth through the use of a learned gating mechanism for regulating information flow.

Empirical evidence overwhelmingly shows that these deep residual networks are easier to optimize than non-residual ones. Can we develop a theoretical justification for this observation? And does that justification point us towards new algorithms with better characteristics?

We propose a new framework, multi-channel telescoping sum boosting (defined in Section 4), to characterize a feed forward ResNet in Section 3. We show that the top level (final) output of a ResNet can be thought of as a layer-by-layer boosting method (defined in Section 2). Traditional boosting, which ensembles “estimated score functions” or “estimated labels” from weak learners, does not work in the ResNet setting because of two reasons: (1) ResNet is a telescoping sum boosting of weak learners, not a naive (weighted) ensemble; (2) ResNet boosts over “representations”, not “estimated labels”. We provide the first error bound for telescoping sum boosting over features. Boosting over features and boosting over labels are different. There is no existing work that proves a boosting theory (guaranteed 0 training error) for boosting features. Moreover, the special structure of a ResNet entails more complicated analysis: telescoping sum boosting, which has never been introduced before in the existing literature.

We introduce a learning algorithm (BoostResNet) guaranteed to reduce error exponentially as depth increases so long as a weak learning assumption is obeyed. BoostResNet adaptively selects training samples or changes the cost function (Section 4 Theorem 4.2). In Section 4.4, we analyze the generalization error of BoostResNet and provide advice to avoid overfitting. The procedure trains each residual block sequentially, only requiring that each provides a better-than-a-weak-baseline in predicting labels.

BoostResNet requires radically lower computational complexity for training than end-to-end back propagation (e2eBP). The number of gradient updates required by BoostResNet is much smaller than e2eBP as discussed in Section 4.3. Memorywise, BoostResNet requires only individual layers of the network to be in the graphics processing unit (GPU) while e2eBP inevitably keeps all layers in the GPU. For example, in a state-of-the-art deep ResNet, this might reduce the RAM requirements for GPU by a factor of the depth of the network. Similar improvements in computation are observed since each e2eBP step involves back propagating through the entire deep network.

Experimentally, we compare BoostResNet with e2eBP over two types of feed-forward ResNets, multilayer perceptron residual network (MLP-ResNet) and convolutional neural network residual network (CNN-ResNet), on multiple datasets. BoostResNet shows substantial computational performance improvements and accuracy improvement under the MLP-ResNet architecture. Under CNN-ResNet, a faster convergence for BoostResNet is observed.

One of the hallmarks of our approach is to make an explicit distinction between the classes of the multiclass learning problem and channels that are constructed by the learning procedure. A channel here is essentially a scalar value modified by the rounds of boosting so as to implicitly minimize the multiclass error rate. Our multi-channel telescoping sum boosting learning framework is not limited to ResNet and can be extended to other, even non-differentiable, nonlinear hypothesis units, such as decision trees or tensor decompositions. Our contribution does not limit to explaining ResNet in the boosting framework, we have also developed a new boosting framework for other relevant tasks that require multi-channel telescoping sum structure.

2 Related Works

Training deep neural networks has been an active research area in the past few years. The main optimization challenge lies in the highly non-convex nature of the loss function. There are two main ways to address this optimization problem: one is to select a loss function and network architecture that have better geometric properties (details refer to appendix A.1), and the other is to improve the network’s learning procedure (details refer to appendix A.2).

Many authors have previously looked into neural networks and boosting, each in a different way. Bengio et al. (2006) introduce single hidden layer convex neural networks, and propose a gradient boosting algorithm to learn the weights of the linear classifier. The approach has not been generalized to deep networks with more than one hidden layer. Shalev-Shwartz (2014) proposes a selfieBoost algorithm which boosts the accuracy of an entire network. Our algorithm is different as we instead construct ensembles of classifiers. Veit et al. (2016) interpret residual networks as a collection of many paths of differing length. Their empirical study shows that residual networks avoid the vanishing gradient problem by introducing short paths which can carry gradient throughout the extent of very deep networks.

The authors of AdaNet (Cortes et al., 2016) consider ensembles of neural layers with a boosting-style algorithm and provide a method for structural learning of neural networks by optimizing over the generalization bound, which consists of the training error and the complexity of the AdaNet architecture. AdaNet uses the traditional boosting framework where weak classifiers are being boosted. Therefore, to obtain low training error guarantee, AdaNet maps the feature vectors (hidden layer representations) to a classifier space and boosts the weak classifiers. In AdaNet, features (representations) from each lower layer have to be fed into a classifier (in other words, be transferred to score function in the label space). This is because AdaNet uses traditional boosting, which ensembles score functions or labels. As a result, the top classifier in AdaNet has to be connected to all lower layers, making the structure bushy. Therefore AdaNet chooses its own structure during learning, and its boosting theory does not necessarily work for a ResNet structure.

Our BoostResNet, instead, boosts features (representations) over multiple channels, and thus produces a less “bushy” architecture. We are able to boost features by developing this new “telescoping-sum boosting” framework, one of our main contributions. We come up with the new weak learning condition for the telescoping-sum boosting framework. The algorithm is also very different from AdaNet and is explained in details in section 3 and 4.

BoostResNet focuses on a ResNet architecture, provides a new training algorithm for ResNet, and proves a training error guarantee for deep ResNet architecture. A ResNet-style architecture is a special case of AdaNet, so AdaNet generalization guarantee applies here and our generalization analysis is built upon their work.

Preliminaries

A residual neural network (ResNet) is composed of stacked entities referred to as residual blocks. Each residual block consists of a neural network module and an identity loop (shortcut). Commonly used modules include MLP and CNN. Throughout this paper, we consider training and test examples generated i.i.d. from some distribution D\mathcal{D} over X×Y\mathcal{X}\times\mathcal{Y}, where X\mathcal{X} is the input space and Y\mathcal{Y} is the label space. We denote by S=((x1,y1),(x2,y2),…,(xm,ym))S=((x_{1},y_{1}),(x_{2},y_{2}),\ldots,(x_{m},y_{m})) a training set of mm examples drawn according to Dm\mathcal{D}^{m}.

where xx is the input fed to the ResNet. See Figure 1 for an illustration of a ResNet, which consists of stacked residual blocks (each residual block contains a nonlinear module and an identity loop).

Output of ResNet

Boosting

Boosting (Freund & Schapire, 1995) assumes the availability of a weak learning algorithm which, given labeled training examples, produces a weak classifier (a.k.a. base classifier). The goal of boosting is to improve the performance of the weak learning algorithm. The key idea behind boosting is to choose training sets for the weak classifier in such a fashion as to force it to infer something new about the data each time it is called. The weak learning algorithm will finally combine many weak classifiers into a single strong classifier whose prediction power is strong.

From empirical experience, ResNet remedies the problem of training error degradation (instability of solving non-convex optimization problem using SGD) in deeper neural networks. We are curious about whether there is a theoretical justification that identity loops help in training. More importantly, we are interested in proposing a new algorithm that avoids end-to-end back-propagation (e2eBP) through the deep network and thus is immune to the instability of SGD for non-convex optimization of deep neural networks.

ResNet in Telescoping Sum Boosting Framework

As we recall from Equation (2), ResNet indeed has a similar form as the strong classifier in boosting. The key difference is that boosting is an ensemble of estimated hypotheses whereas ResNet is an ensemble of estimated feature representations ∑t=0Tft(gt(x))\sum_{t=0}^{T}f_{t}(g_{t}(x)). To solve this problem, we introduce an auxiliary linear classifier wt\mathbf{w}_{t} on top of each residual block to construct a hypothesis module. Formally, a hypothesis module is defined as

in the binary classification setting. Therefore ot+1(x)=wt+1⊤[ft(gt(x))+gt(x)]o_{t+1}(x)=\mathbf{w}_{t+1}^{\top}[f_{t}(g_{t}(x))+g_{t}(x)] as gt+1(x)=ft(gt(x))+gt(x)g_{t+1}(x)=f_{t}(g_{t}(x))+g_{t}(x). We emphasize that given gt(x)g_{t}(x), we only need to train ftf_{t} and wt+1\mathbf{w}_{t+1} to train ot+1(x)o_{t+1}(x). In other words, we feed the output of previous residual block (gt(x)g_{t}(x)) to the current module and train the weights of current module ft(⋅)f_{t}(\cdot) and the auxiliary classifier wt+1\mathbf{w}_{t+1}.

Now the input, gt+1(x)g_{t+1}(x), of the t+1t+1-th residual block is the output, ft(gt(x))+gt(x)f_{t}(g_{t}(x))+g_{t}(x), of the tt-th residual block. As a result, ot(x)=∑t′=0t−1wt⊤ft′(gt′(x))o_{t}(x)=\sum_{t^{\prime}=0}^{t-1}\mathbf{w}_{t}^{\top}f_{t^{\prime}}(g_{t^{\prime}}(x)). In other words, the auxiliary linear classifier is common for all modules underneath. It would not be realistic to assume a common auxiliary linear classifier, as such an assumption prevents us from training the TT hypothesis module sequentially. We design a weak module classifier using the idea of telescoping sum as follows.

where ot(x)=\makebox[0.0pt]\mboxdefwt⊤gt(x)o_{t}(x)\mathrel{\stackrel{{\scriptstyle\makebox[0.0pt]{\mbox{\tiny def}}}}{{=}}}\mathbf{w}_{t}^{\top}g_{t}(x) is a hypothesis module, and αt\alpha_{t} is a scalar. We call it a “telescoping sum boosting” framework if the weak learners are restricted to the form of the weak module classifier.

Let the input gt(x)g_{t}(x) of the tt-th module be the output of the previous module, i.e., gt+1(x)=ft(gt(x))+gt(x)g_{t+1}(x)=f_{t}(g_{t}(x))+g_{t}(x). Then the summation of TT weak module classifiers divided by αT+1\alpha_{T+1} is identical to the output, F(x)F(x), of the depth-TT ResNet,

where the weak module classifier ht(x)h_{t}(x) is defined in Equation (4).

See Appendix B for the proof. Overall, our proposed ensemble of weak module classifiers is a new framework that allows for sequential training of ResNet. Note that traditional boosting algorithm results do not apply here. We now analyze our telescoping sum boosting framework in Section 4. Our analysis applies to both binary and multiclass, but we will focus on the binary class for simplicity in the main text and defer the multiclass analysis to the Appendix F.

Telescoping Sum Boosting for Binary Classification

Below, we propose a learning algorithm whose training error decays exponentially with the number of weak module classifiers TT under a weak learning condition. We restrict to bounded hypothesis modules, i.e., ∣ot(x)∣≤1|o_{t}(x)|\leq 1.

The weak learning condition is motivated by the learning theory and it is met in practice (refer to Figure 4).

2 BoostResNet

We now propose a novel training algorithm for telescoping sum boosting under binary-class classification as in Algorithm 1. In particular, we introduce a training procedure for deep ResNet in Algorithm 1 & 2, BoostResNet, which only requires sequential training of shallow ResNets.

The training algorithm is a module-by-module procedure following a bottom-up fashion as the outputs of the tt-th module gt+1(x)g_{t+1}(x) are fed as the training examples to the next t+1t+1-th module. Each of the shallow ResNet ft(gt(x))+gt(x)f_{t}(g_{t}(x))+g_{t}(x) is combined with an auxiliary linear classifier wt+1\mathbf{w}_{t+1} to form a hypothesis module ot+1(x)o_{t+1}(x). The weights of the ResNet are trained on these shallow ResNets. The telescoping sum construction is the key for successful interpretation of ResNet as ensembles of weak module classifiers. The innovative introduction of the auxiliary linear classifiers (wt+1\mathbf{w}_{t+1}) is the key solution for successful multi-channel representation boosting with theoretical guarantees. Auxiliary linear classifiers are only used to guide training, and they are not included in the model (proved in Lemma 3.2). This is the fundamental difference between BoostResNet and AdaNet. AdaNet (Cortes et al., 2016) maps the feature vectors (hidden layer representations) to a classifier space and boosts the weak classifiers. Our framework is a multi-channel representation (or information) boosting rather than a traditional classifier boosting. Traditional boosting theory does not apply in our setting.

[ Training error bound ][\ \textbf{Training error bound}\ ] The training error of a TT-module telescoping sum boosting framework using Algorithms 1 and 2 decays exponentially with the number of modules TT,

if ∀t∈[T]\forall t\in[T] the weak module classifier ht(x)h_{t}(x) satisfies the γ\gamma-weak learning condition defined in Definition 4.1.

The training error of Algorithms 1 and 2 is guaranteed to decay exponentially with the ResNet depth even when each hypothesis module ot+1(x)o_{t+1}(x) performs slightly better than its previous hypothesis module ot(x)o_{t}(x) (i.e., γ>0\gamma>0). Refer to Appendix F for the algorithm and theoretical guarantees for multiclass classification.

3 Oracle Implementation for ResNet

In Algorithm 2, the implementation of the oracle at line 1 is equivalent to

The minimization problem over ff corresponds to finding the weights of the tt-th nonlinear module of the residual network. Auxiliary classifier wt+1\mathbf{w}_{t+1} is used to help solve this minimization problem with the guidance of training labels yiy_{i}. However, the final neural network model includes none of the auxiliary classifiers, and still follows a standard ResNet structure (proved in Lemma 3.2). In practice, there are various ways to implement Equation (6). For instance, Janzamin et. al. (Janzamin et al., 2015) propose a tensor decomposition technique which decomposes a tensor formed by some transformation of the features xx combined with labels yy and recovers the weights of a one-hidden layer neural network with guarantees. One can also use back-propagation as numerous works have shown that gradient based training are relatively stable on shallow networks with identity loops (Hardt & Ma, 2016; He et al., 2016).

Computational & Memory Efficiency BoostResNet training is memory efficient as the training process only requires parameters of two consecutive residual blocks to be in memory. Given that the limited GPU memory being one of the main bottlenecks for computational efficiency, BoostResNet requires significantly less training time than e2eBP in deep networks as a result of reduced communication overhead and the speed-up in shallow gradient forwarding and back-propagation. Let M1M_{1} be the memory required for one module, and M2M_{2} be the memory required for one linear classifier, the memory consumption is M1+M2M_{1}+M_{2} by BoostResNet and M1T+M2M_{1}T+M_{2} by e2eBP. Let the flops needed for gradient update over one module and one linear classifier be C1C_{1} and C2C_{2} respectively, the computation cost is C1+C2C_{1}+C_{2} by BoostResNet and C1T+C2C_{1}T+C_{2} by e2eBP.

4 Generalization Error Analysis

(Cortes et al., 2016) Let D\mathcal{D} be a distribution over X×Y\mathcal{X}\times\mathcal{Y} and S\mathcal{S} be a sample of mm examples chosen independently at random according to D\mathcal{D}. With probability at least 1−δ1-\delta, for θ>0\theta>0, the strong classifier F(x)F(x) (ResNet) satisfies that

where Λt=\makebox[0.0pt]\mboxdef∏t′=0t2Λt′,t′−1\Lambda_{t}\mathrel{\stackrel{{\scriptstyle\makebox[0.0pt]{\mbox{\tiny def}}}}{{=}}}\prod_{t^{\prime}=0}^{t}2\Lambda_{t^{\prime},t^{\prime}-1} and β(θ,m,T,δ)=\makebox[0.0pt]\mboxdef⌈4θ2log⁡(θ2mlog⁡T)⌉log⁡Tm+log⁡2δ2m\beta(\theta,m,T,\delta)\mathrel{\stackrel{{\scriptstyle\makebox[0.0pt]{\mbox{\tiny def}}}}{{=}}}\sqrt{\left\lceil{\frac{4}{\theta^{2}}\log\left(\frac{\theta^{2}m}{\log T}\right)}\right\rceil\frac{\log T}{m}+\frac{\log{\frac{2}{\delta}}}{2m}}.

From Corollary 4.3, we obtain a generalization error bound in terms of margin bound Pr⁡S(yF(x)≤θ)\Pr_{S}\left(yF(x)\leq\theta\right) and network complexity 4C0r∞θlog⁡(2n)2m∑t=0TΛt+2θlog⁡Tm+β(θ,m,T,δ)\frac{4C_{0}r_{\infty}}{\theta}\sqrt{\frac{\log(2n)}{2m}}\sum_{t=0}^{T}\Lambda_{t}+\frac{2}{\theta}\sqrt{\frac{\log T}{m}}+\beta(\theta,m,T,\delta). Larger margin bound (larger θ\theta) contributes positively to generalization accuracy, and l1l_{1} norm bounded weights (smaller ∑t=0TΛt\sum_{t=0}^{T}\Lambda_{t} ) are beneficial to control network complexity and to avoid overfitting. The dominant term in the network complexity is 4C0r∞θlog⁡(2n)2m∑t=0TΛt\frac{4C_{0}r_{\infty}}{\theta}\sqrt{\frac{\log(2n)}{2m}}\sum_{t=0}^{T}\Lambda_{t} which scales as least linearly with the depth TT. See Appendix D for the proof.

Experiments

We compare our proposed BoostResNet algorithm with e2eBP training a ResNet on the MNIST (LeCun et al., 1998), street view house numbers (SVHN) (Netzer et al., 2011), and CIFAR-10 (Krizhevsky & Hinton, 2009) benchmark datasets. Two different types of architectures are tested: a ResNet where each module is a fully-connected multi-layer perceptron (MLP-ResNet) and a more common, convolutional neural network residual network (CNN-ResNet). In each experiment the architecture of both algorithms is identical, and they are both initialized with the same random seed. As a baseline, we also experiment with standard boosting (AdaBoost.MM (Mukherjee & Schapire, 2013)) of convolutional modules for SVHN and CIFAR-10 datasets. Our experiments are programmed in the Torch deep learning framework for Lua and executed on NVIDIA Tesla P100 GPUs. All models are trained using the Adam variant of SGD (Kingma & Ba, 2014).

Hyperparameters are selected via random search for highest accuracy on a validation set. They are specified in Appendix LABEL:app:experiment. In BoostResNet, the most important hyperparameters, according to our experiments, are those that govern when the algorithm stops training the current module and begins training its successor.

MLP-ResNet on MNISTThe MNIST database (LeCun et al., 1998) of handwritten digits has a training set of 60,000 examples, and a test set of 10,000 examples. The data contains ten classes. We test the performance of BoostResNet on MLP-ResNet using MNIST dataset, and compare it with e2eBP baseline. Each residual block is composed of an MLP with a single, 1024-dimensional hidden layer. The training and test error between BoostResNet and e2eBP is in Figure 2 as a function of depth. Surprisingly, we find that training error degrades for e2eBP, although the ResNet’s identity loop is supposed to alleviate this problem. Our proposed sequential training procedure, BoostResNet, relieves gradient instability issues, and continues to perform well as depth increases.

CNN-ResNet on SVHN SVHN (Netzer et al., 2011) is a real-world image dataset, obtained from house numbers in Google Street View images. The dataset contains over 600,000 training images, and about 20,000 test images. We fit a 50-layer, 25-residual-block CNN-ResNet using both BoostResNet and e2eBP (figure 3a). Each residual block is composed of a CNN using 15 3 ×\times 3 filters. We refine the result of BoostResNet by initializing the weights using the result of BoostResNet and run end-to-end back propagation (e2eBP). From figure 3a, our BoostResNet converges much faster (requires much fewer gradient updates) than e2eBP. The test accuracy of BoostResNet is comparable with e2eBP.

CNN-ResNet on CIFAR-10 The CIFAR-10 dataset is a benchmark dataset composed of 10 classes of small images, such as animals and vehicles. It consists of 50,000 training images and 10,000 test images. We again fit a 50-layer, 25-residual-block CNN-ResNet using both BoostResNet and e2eBP (figure 3b). BoostResNet training converges to the optimal solution faster than e2eBP. Unlike in the previous two datasets, the efficiency of BoostResNet comes at a cost when training with CIFAR-10. We find that the test accuracy of the e2eBP refined BoostResNet to be slightly lower than that produced by e2eBP.

Weak Learning Condition Check The weak learning condition (Definition 4.1) inspired by learning theory is checked in Figure 4. The required better than random guessing edge γt\gamma_{t} is depicted in Figure 4a, it is always greater than 0 and our weak learning condition is thus non-vacuous. In Figure 4b, the representations we learned using BoostResNet is increasingly better (for this classification task) as the depth increases.

Comparison of BoostResNet, e2eBP and AdaBoost Besides e2eBP, we also experiment with standard boosting (AdaBoost.MM (Mukherjee & Schapire, 2013)), as another baseline, of convolutional modules. In this experiment, each weak learner is a residual block of the ResNet, paired with a classification layer. We do 25 rounds of AdaBoost.MM and train each weak learner to convergence. Table 1 and table 2 exhibit a comparison of BoostResNet, e2eBP and AdaBoost performance on SVHN and CIFAR-10 dataset respectively.

On SVHN dataset, the advantage of BoostResNet over e2eBP is obvious. Using 3×1083\times 10^{8} number of gradient updates, BoostResNet achieves 93.8%93.8\% test accuracy whereas e2eBP obtains a test accuracy of 83%83\%. The training and test accuracies of SVHN are listed in Table 1. BoostResNet training allows the model to train much faster than end-to-end training, and still achieves the same test accuracy when refined with e2eBP. To list the hyperparameters we use in our BoostResNet training after searching over candidate hyperparamters, we optimize learning rate to be 0.004 with a 9×10−59\times 10^{-5} learning rate decay. The gamma threshold is optimized to be 0.001 and the initial gamma value on SVHN is 0.75. On CIFAR-10 dataset, the main advantage of BoostResNet over e2eBP is the speed of training. BoostResNet refined with e2eBP obtains comparable results with e2eBP. This is because we are using a suboptimal architecture of ResNet which overfits the CIFAR-10 dataset. AdaBoost, on the other hand, is known to be resistant to overfitting. In BoostResNet training, we optimize learning rate to be 0.014 with a 3.46×10−53.46\times 10^{-5} learning rate decay. The gamma threshold is optimized to be 0.007 and the initial gamma value on CIFAR-10 is 0.93. We find that a standard ResNet, to its credit, is quite robust to hyperparameters, namely learning rate and learning rate decay, provided that we use an optimization procedure that automatically modulates these values.

Conclusions and Future Works

Our proposed BoostResNet algorithm achieves exponentially decaying (with the depth TT) training error under the weak learning condition. BoostResNet is much more computationally efficient compared to end-to-end back-propagation in deep ResNet. More importantly, the memory required by BoostResNet is trivial compared to end-to-end back-propagation. It is particularly beneficial given the limited GPU memory and large network depth. Our learning framework is natural for non-differentiable data. For instance, our learning framework is amenable to take weak learning oracles using tensor decomposition techniques. Tensor decomposition, a spectral learning framework with theoretical guarantees, is applied to learning one layer MLP in (Janzamin et al., 2015). We plan to extend our learning framework to non-differentiable data using general weak learning oracles.

References

Appendix A Related Works

In neural network optimization, there are many commonly-used loss functions and criteria, e.g., mean squared error, negative log likelihood, margin criterion, etc. There are extensive works (Girshick, 2015; Rubinstein & Kroese, 2013; Tygert et al., 2015) on selecting or modifying loss functions to prevent empirical difficulties such as exploding/vanishing gradients or slow learning (Balduzzi et al., 2017). However, there are no rigorous principles for selecting a loss function in general. Other works consider variations of the multilayer perceptron (MLP) or convolutional neural network (CNN) by adding identity skip connections (He et al., 2016), allowing information to bypass particular layers. However, no theoretical guarantees on the training error are provided despite breakthrough empirical successes. Hardt et al. (Hardt & Ma, 2016) have shown the advantage of identity loops in linear neural networks with theoretical justifications; however the linear setting is unrealistic in practice.

A.2 Learning algorithm design

There have been extensive works on improving BP (LeCun et al., 1989). For instance, momentum (Qian, 1999), Nesterov accelerated gradient (Nesterov, 1983), Adagrad (Duchi et al., 2011) and its extension Adadelta (Zeiler, 2012). Most recently, Adaptive Moment Estimation (Adam) (Kingma & Ba, 2014), a combination of momentum and Adagrad, has received substantial success in practice. All these methods are modifications of stochastic gradient descent (SGD), but our method only requires an arbitrary oracle, which does not necessarily need to be an SGD solver, that solves a relatively simple shallow neural network.

Appendix B Proof for Lemma 3.2: the strong learner is a ResNet

In our algorithm, the input of the next module is the output of the current module

we thus obtain that each weak learning module is

Therefore the sum over ht(x)h_{t}(x) and ht+1(x)h_{t+1}(x) is

And we further see that the weighted summation over all ht(x)h_{t}(x) is a telescoping sum (note that g0(x)=0g_{0}(x)=0):

Appendix C Proof for Theorem 4.2: binary class telescoping sum boosting theory

We will use a 0-1 loss to measure the training error. In our analysis, the 0-1 loss is bounded by exponential loss.

The training error is therefore bounded by

where Zt=∑i=1mDt(i)exp⁡(−yiht(xi))Z_{t}=\sum\limits_{i=1}^{m}D_{t}(i)\exp\left(-y_{i}h_{t}(x_{i})\right).

We choose αt+1\alpha_{t+1} to minimize ZtZ_{t}.

Furthermore each learning module is bounded as we see in the following analysis. We obtain

Equation (24) is due to the non-positive correlation between exp⁡(−yot+1(x))\exp(-yo_{t+1}(x)) and exp⁡(yot(x))\exp(yo_{t}(x)). Jensen’s inequality in Equation (26) holds only when ∣yiot+1(xi)∣≤1\lvert{y_{i}}o_{t+1}(x_{i})\rvert\leq 1 which is satisfied by the definition of the weak learning module.

Therefore over the TT modules, the training error is upper bounded as follows

Overall, Algorithm 1 leads us to consistent learning of ResNet. ∎

Appendix D Proof for Corollary 4.3: Generalization Bound

where σ\sigma is the Rademacher variable. The Rademacher complexity on mm data points drawn from distribution D\mathcal{D} is defined by

(Theorem 1 (Cortes et al., 2014)) Let H\mathcal{H} be a hypothesis set admitting a decomposition H=∪i=1lHi\mathcal{H}=\cup_{i=1}^{l}\mathcal{H}_{i} for some l>1l>1. Hi\mathcal{H}_{i} are distinct hypothesis sets. Let SS be a random sequence of mm points chosen independently from X\mathcal{X} according to some distribution D\mathcal{D}. For θ>0\theta>0 and any H=∑t=0ThtH=\sum_{t=0}^{T}h_{t}, with probability at least 1−δ1-\delta,

Let nn be the number of channels in ResNet, i.e., the number of input or output neurons in a module ft(gt(x))\mathbf{f}_{t}(\mathbf{g}_{t}(x)). We have proved that ResNet is equivalent as

We define the family of functions that each neuron ft,j{f}_{t,j}, ∀j∈[n]\forall j\in[n] belong to as

where ut−1,j\mathbf{u}_{t-1,j} denotes the vector of weights for connections from unit jj to a lower layer t−1t-1, σ∘ft−1\sigma\circ\mathbf{f}_{t-1} denotes element-wise nonlinear transformation on ft−1\mathbf{f}_{t-1}. The output layer of each module is connected to the output layer of previous module. We consider 1-layer modules for convenience of analysis.

Therefore in ResNet with probability at least 1−δ1-\delta,

Overall, with probability at least 1−δ1-\delta,

Appendix E Proof for Theorem E.1: Margin and Generalization Bound

with probability at least 1−δ1-\delta for β(θ,m,T,δ)=\makebox[0.0pt]\mboxdef⌈4θ2log⁡(θ2mlog⁡T)⌉log⁡Tm+log⁡2δ2m\beta(\theta,m,T,\delta)\mathrel{\stackrel{{\scriptstyle\makebox[0.0pt]{\mbox{\tiny def}}}}{{=}}}\sqrt{\left\lceil{\frac{4}{\theta^{2}}\log\left(\frac{\theta^{2}m}{\log T}\right)}\right\rceil\frac{\log T}{m}+\frac{\log{\frac{2}{\delta}}}{2m}}.

Now the proof for Theorem E.1 is the following.

The fraction of examples in sample set SS being smaller than θ\theta is bounded

Appendix F Telescoping Sum Boosting for Multi-calss Classification

Recall that the weak module classifier is defined as

The weak learning condition for multi-class classification is different from the binary classification stated in the previous section, although minimal demands placed on the weak module classifier require prediction better than random on any distribution over the training set intuitively.

We now define the weak learning condition. It is again inspired by the slightly better than random idea, but requires a more sophisticated analysis in the multi-class setting.

The optimal cost function under the exponential loss is

where st(x)=∑τ=1thτ(x)s_{t}(x)=\sum\limits_{\tau=1}^{t}h_{\tau}(x).

F.2 Weak Learning Condition

We propose a novel learning algorithm using the optimal edge-over-random cost function for training ResNet under multi-class classification task as in Algorithm LABEL:algo:learningresnet-multi.