**1、**深度学习中,并行结构分为数据并行和模型并行。AlexNet属于模型并行。
数据并行是指在不同的GPU上,模型结构相同,但将训练数据进行切分。分别训练得到不同的模型,然后再将模型进行融合。
模型并行指的是将若干层的模型参数进行切分,不同的GPU上使用相同的数据进行训练,得到的结果直接连接作为下一层的输入。
**2、**ReLU与Sigmoid相比,其优势在于训练速度更快,因为Sigmoid的导数在饱和区变得非常小,导致权重几乎没有得到更新,即所谓的梯度消失问题。
**3、**神经网络调参方式,以得到更高的性能:
1)调整训练轮数(超参数)
2)测不同的优化器以选择性能最优的
3)控制优化器的学习率(超参数)
4)调整批处理的大小(超参数)
5)对于可能出现的过拟合,可以采用相应的正则化方法避免(L1,L2,L1和L2—弹性网络正则,dropout)。其中:
L1正则化(也称lasso):模型复杂度表示为权重的绝对值之和
L2正则化(也称ridge):模型复杂度表示为权重的平方和
弹性网络正则化:模型复杂度通过联合L1和L2正则化进行表示
这些正则化可以作用于权重,偏置,输出层,全连接层(如dropout)上。
6)改进网络结构(超参数)
7)批归一化(BN):可以加速学习并获得更高准确率的方法,还可以减少初始化不良的问题。它是一种将每个单元的输入归一化为零均值和单位方差,来帮助稳定学习的技术。
超参数就是需要人为设定的一些网络参数,而通过网络自我更新的称之为参数,如网络权重参数。
**4、**模型复杂度恶意表示成非零权重的数量。我们可以使用超参数λ(大于等于0)来控制拥有简单模型的重要性:
min:{loss + λ * complexity(模型)}
**5、**检查点
设置检查点就是在一个规定的时间间隔里保存程序状态的快照过程,以便在出现失败的情况下可以把程序恢复到最后一次保存时的状态。
深度学习在任何时间点的状态就是指模型在那个时间点的权重。
检查点的应用场景包括:
1)训练时发生意外,比如机器突然断电
2)自己为了某个目的项停止训练,也许为了用测试数据测试模型,然后从上一个检查点继续训练过程
3)想在多轮训练过程中保存最佳版本(只有当前版本比之前的好才会保存一个检查点)
**6、**当性能已经不能再继续优化时(模型已经收敛,但训练还未结束),可以使用编程语言中相应的方法以提前终止训练过程。
**7、**消融研究
所谓相融研究,其实和我们常说的控制变量法相似。在深度学习中,有时候并不知道为什么这样搭建的模型就能取得很好的性能,但想知道具体是哪个部分起了比较大的作用,这时候就可以进行相融实验(相融研究,一个意思)。
相融研究的科学解释是:
基于消融的生理心理学的基本研究方法,特别是在20世纪前四分之三期间,其中通过检查其手术切除的行为影响来尝试确定神经系统的特定区域的功能。它于1824年由法国生理学家Marie Jean Pierre Flourens(1794-1867)开创,也被称为病变实验。