Low-Rank Gradient Descent for Memory-Efficient Training of Deep In-Memory Arrays.

Autor: HUANG, SIYUAN, HOSKINS, BRIAN D., DANIELS, MATTHEW W., STILES, MARK D., ADAM, GINA C.
Zdroj: ACM Journal on Emerging Technologies in Computing Systems; Apr2023, Vol. 19 Issue 2, p1-24, 24p
Abstrakt: The movement of large quantities of data during the training of a deep neural network presents immense challenges for machine learning workloads, especially those based on future functional memories deployed to store network models. As the size of network models begins to vastly outstrip traditional silicon computing resources, functional memories based on flash, resistive switches, magnetic tunnel junctions, and other technologies can store these new ultra-large models. However, new approaches are then needed to minimize hardware overhead, especially on the movement and calculation of gradient information that cannot be efficiently contained in these new memory resources. To do this, we introduce streaming batch principal component analysis (SBPCA) as an update algorithm. Streaming batch principal component analysis uses stochastic power iterations to generate a stochastic rank-k approximation of the network gradient. We demonstrate that the low-rank updates produced by streaming batch principal component analysis can effectively train convolutional neural networks on a variety of common datasets, with performance comparable to standard mini-batch gradient descent. Our approximation is made in an expanded vector form that can efficiently be applied to the rows and columns of crossbars for array-level updates. These results promise improvements in the design of application-specific integrated circuits based around large vector-matrix multiplier memories. [ABSTRACT FROM AUTHOR]
Databáze: Complementary Index