随机失活-pytorch
pytorch提供了多种失活函数实现
下面首先介绍Dropout和Dropout2d的使用,然后通过LeNet-5模型进行cifar-10的训练
pytorch提供了多种失活函数实现
下面首先介绍Dropout和Dropout2d的使用,然后通过LeNet-5模型进行cifar-10的训练
使用前馈神经网络进行检测,测试集的检测率总是低于训练集,尤其是训练集数量不大的情况下,原因在于神经网络在训练过程中不断调整参数以拟合训练数据,在此过程中也学习了训练集噪声,导致泛化能力减弱
随时失活(dropout)是一种正则化方法,其动机来自于进化中的性别作用理论(a theory of the role of sex in evolution),它通过训练多个不同网络模型,模拟模型组合的方式来提高网络性能,防止网络过拟合
主要内容如下:
小结PCA求解过程中相关的线性代数基础(部分几何内容+概率论内容)
Nesterov加速梯度(Nesterov's Accelerated Gradient,简称NAG)是梯度下降的一种优化方法,其收敛速度比动量更新方法更快,收敛曲线更加稳定
动量(momentum)更新是梯度下降的一种优化方法,它能够加快损失函数收敛速度(converge rate)
在标准随机梯度下降过程中,每次更新使用固定学习率(learning rate),迭代一定次数后损失值不再下降,一种解释是因为权重在最优点周围打转,如果能够在迭代过程中减小学习率,就能够更加接近最优点,实现更高的检测精度
学习率退火(annealing the learning rate)属于优化策略的一种,有3种方式实现学习率随时间下降
step decay)exponential decay)1/t衰减(1/t decay)下面介绍这3种学习率退火实现,然后用numpy编程进行验证