NNDL:作业五

习题4-1

对于一个神经元,并使用梯度下降优化参数w时,如果输入x恒大于0,其收敛速度会比零均值化的输入更慢.

证明:

激活函数以sigmoid为例

神经元:有两层,线性层和激活层:y=w*x+b,然后y'=sigmoid(y),也就是****。

梯度下降:在激活函数的导数方向进行更新【因为梯度方向下降速度最快】。

零均值化:对于一个样本特征,可以使用如下公式实现零均值化处理:x_new = (x - x_mean) / N,使得特征数据之间具有可比性。同时零均值化是一种常用的数据正则化方法,可以有效地防止模型过拟合和提高模型训练效果。

如上图所示,在激活函数的值为0时,导数最大,下降速度最快;两侧距离原点越远导数越小,下降速度越慢。 神经元对求导后的结果为,由图可知值大于0。

输入x恒大于0,其梯度也不会是最大值,接近0,所以收敛速度变慢。 如果对输入进行了0均值化处理,可以使得线性层的值y_mean为0,这样在y'=sigmoid(y),优化w参数时收敛速度快,得到最优w的效率更高,如下图所示,绿线是对x进行零均值后的梯度下降效果,黑线是未进行零均值化的下降效果。【图来自神经网络与深度学习第四章前馈神经网络习题解答-CSDN博客

习题4-5

如果限制一个神经网络的总神经元数量(不考虑输入层)为N+1,输入层大小为,输出层大小为1,隐藏层的层数为L,每个隐藏层的神经元数量为,试分析参数数量和隐藏层层数L的关系.

【最后一行汉字写错了,是总参数数量】

习题4-7

为什么在神经网络模型的结构化风险函数中不对偏置b进行正则化?

正则化目的:为了减少过拟合风险,通过引入正则化惩罚项,可以限制模型参数的大小,可以提高模型的泛化能力。

不对bias正则化的原因:

1.函数y=w*x+bias中bias只影响函数的向上向下平移,它对输入x的变化并不敏感。

2.对bias正则化并不会减少模型的过拟合风险,反而要为它选择合适的正则化系数,使得训练过程更加复杂。

3.对b进行正则化,会减少模型的复杂度,会造成欠拟合情况。

习题4-8

为什么在用反向传播算法进行参数学习时要采用随即参数初始化的方式而不是直接令W=0,b=0?

反向传播算法进行参数学习的过程,就是将最后的误差一层层传入到输入层。

上图可知,在w=0和b=0,前向传播计算得到的隐藏层值都一样,再反向传播中计算得到的梯度一样,那么每层的参数都一样,即相当于中间只有一层隐藏层。多层神经网络就没有意义了。

习题4-9

梯度消失问题是否可以通过增加学习率来缓解

不可以。

梯度消失举个例子,以sigmoid函数为例,在本文的前边的图中可以看到,当值过大过小时,梯度都非常接近于0,更新参数不明显,这就是梯度消失现象。

增加学习率并不会缓解梯度消失,学习率变大时,会使得参数跳过最优值点,然后梯度方向改变,最终导致参数优化时无法收敛。如下图所示【图来自学习率 | 机器之心 (jiqizhixin.com)】。

想要解决梯度下降问题可以使用导数比较大的激活函数,所以可以改成别的激活函数来解决梯度下降问题。【图来自【深度学习】梯度消失和梯度爆炸原因及解决 - 知乎 (zhihu.com)】:

相关推荐
正义的彬彬侠9 分钟前
CatBoost 中对分类特征进行目标变量统计编码 公式解析
人工智能·机器学习·集成学习·boosting·catboost
字节跳动数据平台13 分钟前
火山引擎 VeDI 平台以 AIGC 技术,助力企业提效营销、快速增长
人工智能
Chef_Chen27 分钟前
从0开始学习机器学习--Day22--优化总结以及误差作业(上)
人工智能·学习·机器学习
Mr.简锋32 分钟前
opencv常用api
人工智能·opencv·计算机视觉
华清元宇宙实验中心37 分钟前
【每天学点AI】前向传播、损失函数、反向传播
深度学习·机器学习·ai人工智能
DevinLGT1 小时前
6Pin Type-C Pin脚定义:【图文讲解】
人工智能·单片机·嵌入式硬件
宋一诺331 小时前
机器学习—高级优化方法
人工智能·机器学习
龙的爹23331 小时前
论文 | The Capacity for Moral Self-Correction in LargeLanguage Models
人工智能·深度学习·机器学习·语言模型·自然语言处理·prompt
Mr.简锋1 小时前
opencv视频读写
人工智能·opencv·音视频
Baihai_IDP1 小时前
「混合专家模型」可视化指南:A Visual Guide to MoE
人工智能·llm·aigc