Residual neural network
A residual neural network (ResNet) is an artificial neural network (ANN). Residual neural networks utilize "skip connections", or "shortcuts" to jump over some layers. Typical "ResNet" models are implemented with double- or triple- layer skips that contain nonlinearities (ReLU) and batch normalization in between. An additional weight matrix may be used to learn the skip weights; these models are known as "HighwayNets". Models with several parallel skips are referred to as "DenseNets". In the context of residual neural networks, a non-residual network may be described as a "plain network". There are two main reasons to add  skip connections: to avoid the problem of vanishing gradients, or to mitigate the Degradation (accuracy saturation) problem; where adding more layers to a suitably deep model leads to higher training error. During training, the weights adapt to mute the upstream layer, and amplify the previously-skipped layer. In the simplest case, only the weights for the adjacent layer's connection are adapted, with no explicit weights for the upstream layer. This works best when a single nonlinear layer is stepped over, or when the intermediate layers are all linear. If not, then an explicit weight matrix should be learned for  the skipped connection (a "HighwayNet" should be used). Skipping effectively simplifies the network, using fewer layers in the initial training stages. This speeds learning by reducing the impact of vanishing gradients, as there are fewer layers to propagate through. The network then gradually restores the skipped layers as it learns the feature space. Towards the end of training, when all layers are expanded, it stays closer to the manifold and thus learns faster. A neural network without residual parts explores more of the feature space. This makes it more vulnerable to perturbations that cause it to leave the manifold, and  necessitates extra training data to recover. Forward propagation. Given a weight matrix formula_1 for connection weights from layer formula_2 to formula_3, and a weight matrix formula_4 for connection weights from layer formula_5 to formula_3, then the forward propagation through the activation function would be (aka "HighwayNets") where Absent an explicit matrix formula_4 (aka "ResNets"), forward propagation through the activation function simplifies to Another way to formulate this is to substitute an identity matrix for formula_4, but that is only valid when the dimensions match. This is somewhat confusingly called an "identity block", which means that the activations from layer formula_5  are passed to layer formula_3 without weighting. In the cerebral cortex such forward skips are done for several layers. Usually all forward skips start from the same layer, and successively connect to later layers. In the general case this will be expressed as (aka "DenseNets") Backward propagation. During backpropagation learning for the normal path and for the skip paths (nearly identical) In both cases If the skip path has fixed weights (e.g. the identity matrix, as above), then they are not updated. If they can be updated, the rule is an ordinary backpropagation update rule. In the general case there  can be formula_30 skip path weight matrices, thus As the learning rules are similar, the weight matrices can be merged and learned in the same step.