当前位置: 首页 > news >正文

NNDL作业五--前馈神经网络作业题

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

回答:如图1,右边那个图为sigmoid的导数曲线,可以看到,导数均为正值。当使用梯度下降优化参数w时,会对w进行求导,其结果是损失函数L关于输出y的梯度*x*sigmoid的导数x与sigmoid的导数都恒大于0,每个w共用同一个损失函数L关于输出y的梯度故对每个w进行求导的结果对应梯度同正或同负,所以更新的方向如图2,不是右上方向就是左下方向,如果最优解在右下方向,需要迭代更多次,收敛速度更慢一些。

另一版本:零均值化的输入,使得神经元在0附近,sigmoid函数在零点处的导数最大,所有收敛速度最快。

总之记住:为了权重参数收敛更快一点,数据记得零均值化一下~

图1 Sigmoid函数曲线和导数曲线

图2 全负或全正时的收敛情况


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

回答:(未考虑偏置)

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

回答:

L2正则化可以防止过拟合的原因在于它对模型中的权重进行约束,使权重趋向于较小的值,避免它得到的权重值过大,对训练数据的过度学习。另外一方面,省的输入细微的变化会导致输出值的突变

对权重正则化,是因为权重与输入有一个相乘的步骤,权重的大小,严重影响着输入与输出的联系,而偏置不会和输入x有运算,影响不大。

浅插一句:偏置为啥存在?偏置的存在是为了更好的拟合数据。比如说输入是个非零的数,你想让她输出是0,无论怎么改权重,结果都得不到零,加个偏置就可以啦!

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

回答:当W=0,b=0,在输入层之后的所有隐藏层神经元接收到的输入都是一样的,这样每一层的输出都一样,反向传播时,每一个梯度也都一样,当直接令w=0,b=0时,会让下一层神经网络中所有神经元进行着相同的计算,具有同样的梯度,同样权重更新。权重更新方向一致,可能会出现第1小问中图2的现象

而且在作业4中提到当使用Relu激活函数时:相关参数均为0,参数不更新。Sigmoid函数:收敛速度可能慢些,但最后能够达到很好的值。作业4


5、习题4-9梯度消失问题是否可以通过增加学习率来缓解?

回答:

梯度消失:在链式法则中,是多个导数值相乘,有那么几个导数趋于0就可能导致整体趋于0,也就是梯度消失

学习率:更新权重的步长

两者没有很大的关系,通过增加学习率可能会缓解梯度消失问题,但是也可能加重,也可能导致梯度爆炸,都有可能。适当地增加学习率可以加快收敛速度,但是增的太多也不好,会导致跳过全局最优,去找局部最优。

(摘自同学的博客)梯度消失问题的原因在于对参数求偏导时,根据链式法则得到的连乘式中多个几乎为0的导数值连乘导致。导数小会导致每次更新时的值过小,从而使训练变得困难。比如激活函数为类似于sigmoid与tanh,其值太大或太小时导数都趋于0(左右趋近于饱和)。

参考:

1、什么是零均值?什么是零均值化?

2、机器学习中,L2正则化的原理,及其可以防止过拟合的原因_l2正则化为什么能够减小过拟合-CSDN博客

http://www.cnnetsun.cn/news/1495915.html

相关文章:

  • 终极指南:如何用org-roam保护敏感笔记的安全与隐私
  • 告别Python版本混乱!Windows下用pyenv-win + virtualenvwrapper打造多项目开发环境(保姆级避坑指南)
  • 怎么查看员工文件操作记录?简单操作 防止员工删除文件
  • 毕业设计救星:ENSP校园网仿真全流程指南(附ACL防火墙配置)
  • 5分钟找回你的Windows 10:ExplorerPatcher终极界面定制指南
  • J4125工控机变身全能家庭服务器:PVE安装配置全流程(含网卡直通)
  • Rocky、Ubuntu软件源定制
  • 终极指南:RealChar语音识别技术深度对比——Whisper、Google Speech与本地部署方案
  • 终极指南:如何在MyBinder上快速配置和运行Rust Jupyter笔记本
  • RealChar AI对话系统测试与调试完整指南:确保稳定性的10个关键方法
  • Harbor+Helm实战:5分钟搞定Chart包推送与拉取(附常见报错解决)
  • 别再为UE4崩溃发愁了!手把手教你用RoadRunner 2022b为CARLA 0.9.10制作高性能仿真地图(Ubuntu 18.04环境)
  • 终极使用指南:5步掌握Retrieval-based Voice Conversion WebUI核心功能
  • 解锁visio的ai潜能,用快马平台kimi模型打造你的智能图表设计助手
  • SleeperX:Mac终极睡眠管理解决方案,重新定义电源控制体验
  • Android 7+ 抓包神器:用ADB一键导入Charles证书到系统根目录(附模拟器避坑指南)
  • 10倍效率提升:http-parser深度调试指南与实战案例
  • 幻兽帕鲁低配优化DX10/11配置方案:Steam启动参数与游戏文件修改排障手册
  • RWKV7-1.5B-g1a镜像优势解析:离线加载兼容+软链修复+日志分级排查设计
  • 逆向工程师的日常:我是如何从混淆的JS里‘挖’出极验滑块关键算法的
  • ShopXO电商系统文件读取漏洞复现:从零搭建到漏洞利用(附Burp抓包技巧)
  • web.py 2025技术路线图:从Python 2到现代Web框架的终极演进指南
  • Trelby:打破创作枷锁的开源剧本引擎
  • 手机也能跑AI?DeepSeek-R1-Distill-Qwen-1.5B零基础部署指南
  • 6S推行总反弹?搭配红牌作战才是根治良方
  • 终极指南:Basscss隐藏元素的7种最佳实现方案
  • 如何设计优雅的RESTful API:Blade框架完整指南
  • 从零部署忆阻器仿真平台:CrossSim 2025安装避坑指南
  • 51单片机实战:四键操控LED灯效的多样化实现
  • Python开发者必看:cx_Freeze打包MSI安装包的5个实战技巧与避坑指南