赞
踩
把复杂的神经网络进行拆分,分布在GPU里面进行训练,让每个GPU同步进行计算。这个方法通常用在模型比较复杂的情况下,但效率会有折扣。从网络的角度来说就是把网络结构拆了,其实从计算的过程来说就是把矩阵做了分块处理。
即让每个机器里都有一个完整模型,然后把数据切分成n块,把n块分发给每个计算单元,每个计算单元独自计算出自己的梯度。同时每个计算单元的梯度会进行平均、同步,同步后的梯度可以在每个节点独立去让它修正模型,整个过程结束后每个节点会得到同样的模型。这个方法可以让能够处理的数据量增加,变成了原来的n倍。
有的时候数据并行和模型并行会被同时用上。比如深度的卷积神经网络中卷积层计算量大,但所需参数系数 W 少,而FC层计算量小,所需参数系数 W 多。因此对于卷积层适合使用数据并行,对于全连接层适合使用模型并行。
比如这篇论文&#x
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。