LGAINADec 18, 2017

Parallel Complexity of Forward and Backward Propagation

arXiv:1712.06577v19 citations
Originality Incremental advance
AI Analysis

This work addresses the computational bottleneck of training neural networks by providing theoretical parallel complexity bounds, which is incremental as it builds on existing formulations but offers new algorithmic insights.

The paper tackles the problem of parallelizing forward and backward propagation in neural networks by formulating them as triangular systems of equations, showing that for feedforward and recurrent networks, backward propagation can be performed in O(log k) and O(log k log τ) parallel steps, respectively.

We show that the forward and backward propagation can be formulated as a solution of lower and upper triangular systems of equations. For standard feedforward (FNNs) and recurrent neural networks (RNNs) the triangular systems are always block bi-diagonal, while for a general computation graph (directed acyclic graph) they can have a more complex triangular sparsity pattern. We discuss direct and iterative parallel algorithms that can be used for their solution and interpreted as different ways of performing model parallelism. Also, we show that for FNNs and RNNs with $k$ layers and $τ$ time steps the backward propagation can be performed in parallel in O($\log k$) and O($\log k \log τ$) steps, respectively. Finally, we outline the generalization of this technique using Jacobians that potentially allows us to handle arbitrary layers.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes