深度学习入门
文章平均质量分 75
基于Python的理论与实践
赵孝正
python爱好者
展开
-
神经网络介绍
神经网络介绍原创 2023-12-26 08:30:25 · 835 阅读 · 0 评论 -
windows查看GPU信息(nvidia-smi)及tensorflow-gpu的安装
tensorflow-gpu安装原创 2023-12-10 18:20:44 · 4429 阅读 · 0 评论 -
深度学习入门之Batch Normalization
Batch Normalization 的算法Batch Normalization(下文简称 Batch Norm)是 2015 年提出的方法。Batch Norm 虽然是一个问世不久的新方法,但已经被很多研究人员和技术人员广泛使用。实际上,看一下机器学习竞赛的结果,就会发现很多通过使用这个方法而获得优异结果的例子。为什么 Batch Norm 这么惹人注目呢?因为 Batch Norm 有以下优点。可以使学习快速进行(可以增大学习率)。 不那么依赖初始值(对于初始值不用那么神经质)。 抑原创 2022-03-04 14:41:22 · 1122 阅读 · 0 评论 -
深度学习入门之ReLU的权重初始值
Xavier 初始值是以【激活函数是线性函数】为前提而推导出来的。因sigmoid函数和tanh函数左右对称,且中央附近可以视作线性函数,所以适合使用 Xavier 初始值。但当激活函数使用 ReLU 时,一般推荐使用 ReLU 专用的初始值,也就是 Kaiming He 等人推荐的初始值,也称为“He 初始值”。当前一层的节点数为n时,He 初始值使用标准差为 的高斯分布。当 Xavier 初始值是 时,(直观上)可以解释为,因为 ReLU 的负值区域的值为 0...原创 2022-03-03 21:34:13 · 2488 阅读 · 1 评论 -
深度学习入门之AdaGrad
在神经网络的学习中,学习率(数学式中记为η)的值很重要。学习率过小,会导致学习花费过多时间;反过来,学习率过大,则会导致学习发散而不能正确进行。在关于学习率的有效技巧中,有一种被称为学习率衰减(learning rate decay)的方法,即随着学习的进行,使学习率逐渐减小。即,一开始“多”学,然后逐渐“少”学。(学习的意思是朝着损失函数最低处进行优化)AdaGrad 会为参数的每个元素适当地调整学习率,与此同时进行学习(AdaGrad 的 Ada 来自英文单词 Adaptive,即“适当的”..原创 2022-03-03 17:13:19 · 3672 阅读 · 0 评论 -
深度学习入门之SGD随机梯度下降法
SGDSGD为随机梯度下降法。用数学式可以将 SGD 写成如下的式(6.1)。这里把需要更新的权重参数记为W,把损失函数关于W的梯度记为∂L/∂W 。η 表示学习率,实际上会取 0.01 或 0.001 这些事先决定好的值。式子中的←表示用右边的值更新左边的值。如式(6.1)所示,SGD 是朝着梯度方向只前进一定距离的简单方法。现在,我们将 SGD 实现为一个 Python 类(为方便后面使用,我们将其实现为一个名为 SGD 的类)。class SGD: def __init__(self,原创 2022-03-01 09:53:17 · 30040 阅读 · 3 评论 -
深度学习入门之Momentum
MomentumMomentum 是“动量”的意思,和物理有关。用数学式表示 Momentum 方法,如下所示。和 SGD(随机梯度下降) 一样, W 表示要更新的权重参数,∂L/∂W表示损失函数关于 的梯度,η 表示学习率。这里新出现了一个变量 ,对应物理上的速度。式(6.3)表示了物体在梯度方向上受力,在这个力的作用下,物体的速度增加这一物理法则。如图 6-4 所示,Momentum 方法给人的感觉就像是小球在地面上滚动。图 6-4 Momentum:小球在斜面上滚动式(6.3)原创 2022-03-01 09:37:30 · 10445 阅读 · 2 评论