作者:禅与计算机程序设计艺术
1.简介
在深度学习的最新研究进展中,许多模型采用了分解训练(Decompositional Training)的方法,将复杂的网络结构分解成多个子网络,并独立训练这些子网络来解决不同任务。例如,一个ResNet网络可以分解为多个残差单元组成的子网络,每个残差单元又可分解为多个卷积层、BN层和激活函数组成的子网络。因此,当对某个任务进行微调时,只需微调其中某些子网络的参数而非整个网络,从而减少计算量和参数量,提升性能。本文将探讨基于分解训练方法的神经网络设计。
2.神经网络结构设计及基础知识
2.1 什么是分解训练?
分解训练(Decompositional Training)是一种机器学习的策略,通过将神经网络的结构分解成多个小型子网络,每个子网络都可以单独地训练而不需要整体参与训练,从而提升模型的泛化能力。以深度残差网络(ResNet)为例,ResNet的全连接层可以分解为多个子网络,其中每个子网络只保留一个路径,即前向传播。这样可以降低网络的过拟合风险并加速训练速度。