Neural networks have achieved tremendous success in a large variety of applications. However, their memory footprint and computational demand can render them impractical in application settings with limited hardware or energy resources. In this work, we propose a novel algorithm to find efficient low-rank subnetworks. Remarkably, these subnetworks are determined and adapted already during the training phase and the overall time and memory resources required by both training and evaluating them is significantly reduced. The main idea is to restrict the weight matrices to a low-rank manifold and to update the low-rank factors rather than the full matrix during training. To derive training updates that are restricted to the prescribed manifold, we employ techniques from dynamic model order reduction for matrix differential equations. Moreover, our method automatically and dynamically adapts the ranks during training to achieve a desired approximation accuracy. The efficiency of the proposed method is demonstrated through a variety of numerical experiments on fully-connected and convolutional networks.
翻译:神经网络在各种应用中取得了巨大成功,然而,它们的记忆足迹和计算需求在硬件或能源资源有限的应用环境中可能使其不切实际。在这项工作中,我们提出一种创新算法,以寻找高效的低级别子网络。值得注意的是,这些子网络在培训阶段已经确定和调整,培训和评价这两个网络所需的全部时间和记忆资源已大大减少。主要想法是将重量矩阵限制在低层,更新低层次因素,而不是培训期间的全部矩阵。为了获得限于规定方程式的培训更新,我们采用了矩阵差异方程式动态模式减少命令的技术。此外,我们在培训期间自动和动态调整了军阶,以达到理想的近似准确度。通过在完全连接和动态网络上进行的各种数字实验,表明了拟议方法的效率。