浅析激活函数之Relu函数,relu函数
如何更好地调试神经网络?
声明:本文适用于神经网络初学者。神经网络的调试要比绝大多数程序更困难,因为大多数bug不会导致运行错误,只会导致不良的收敛。也许还会有许多看似模棱两可的错误信息:性能错误:你的神经网络没有训练好(Performance Error: your neural net did not train well.)。
如果你经验丰富,就应该知道这表示代码还需要大改动。一、处理NaN?多数情况下,NaN错误在前100次迭代中出现,原因很简单:你的学习率过高了。当学习率非常高的时候,就会在前100次迭代的时候出现NaN错误。用因子为3来降低学习率,直到前100次迭代不再出现NaN错误。这么做一旦有效,你就有了一个非常好的学习率作为开端。
根据我的经验,最好的学习率是你得到NaN错误的范围的一到十分之一。如果你在100次迭代之后碰到了NaN错误,又有两种常见原因。如果你使用的是RNN,确保你使用了梯度下降,并对梯度使用L2正则化。RNN似乎在训练早期会产生梯度,10%或更少的批次有学习峰值,此时的梯度幅值是相当高的。没有对梯度削减,这些峰值会产生NaN。
如果写的是自定义的网络层,那么很有可能因为除以0而引发NaN。另一个众所周知会产生Nan错误的层是Softmax层。Softmax计算包括分子分母的exp(x)操作,它可以用无穷大除以无穷大,会产生NaN。确保你使用了稳定的Softmax实现。 二、神经网络无法学习?一旦你没有了NaN错误,那么你的神经网络就可以在上千次迭代中平稳运行,而且不会在前几百次迭代后减少训练损失。
当你第一次构建代码库的时候,最好别使用2000次迭代。这并不是因为所有的网络可以从低于2000次迭代开始学习。相反,从开头开始编码网络很可能出现bug,在达到高迭代次数之前,你会想要过早进行调试。现在的目的是一次又一次地缩小问题范围,直到你得到了一个在2000次迭代以下训练出来的网络。幸运地是,有两种方式来降低复杂性。
将训练集大小减小到10个实例。在几百次的迭代中,在这10个实例上,神经网络通常会出现过度拟合的情况。许多编码错误不会导致过拟合的出现。如果你的网络在10个实例的训练集上没有出现过度拟合,那么确保你使用的数据挂上了正确的标签。将批次大小减小到1来检查批次计算错误。在代码中添加打印语句确保输出与你期望的一致。
通常情况下,你可以通过上面介绍的纯粹蛮力来找出错误。一旦网络可以在10个实例上训练,你可以试着让它在100个实例上训练。如果这种方式运行正常,但效果不是很好,你可以试试下面的方法。解决你感兴趣的最简单的问题。如果你想翻译句子,首先可以建立一个针对特定语言的语言模型。如果你完成了,那么试着在给出3个词语的情况下预测翻译出来的第一个词。
如果你想检测图像中的物体,那么在训练回归网络之前,你可以对图像中物体数目进行分类。在网络能够解决的棘手问题和使用最少的时间让代码得到合适的数据之间需要权衡。这个时候就要发挥你的创造能力了。将神经网络运用于其他新场景的技巧是合理使用上面介绍的两个步骤。这是一种协调机制,并且效果不错。首先,你表明这个神经网络至少可以记住几个例子。
然后这个神经网络可以泛化到更简单问题的验证集中。你慢慢在取得稳步进展时提升难度。这并没有高手第一次使用的Karpathy风格那么有趣,但至少它起作用。有时候你会碰到棘手的问题,你会发现它在2000次迭代中不会继续学习了。那很棒!但它的迭代次数很少会是这个问题之前复杂度下迭代次数的10倍。如果你发现是这种情况,尝试搜索中等水平的复杂度。
三、调整超参数现在你的网络可以学习东西了,你可能会得意忘形。你还可能发现你训练的网络并不能够解决大多数复杂的问题。超参数调整就是解决问题的关键。有些人直接下载一个CNN的包然后在他们的数据集上运行,然后告诉你说使用超参数调整并没有带来什么不同。这是因为它们使用已经存在的架构来解决已经存在的问题。如果你要解决的问题需要新的架构呢,通过超参数调整来得到良好的设置就是必须的了。
你最好确保针对你要解决的问题阅读了超参数教程,不过我还是会在下面列出一些基本思想。可视化:不要怕在训练过程中花时间编写自定义可视化工具。如果你的可视化方法效果不行,那么考虑换另一种方法。权重初始化:一般情况下,较大的初始化权重是个不错的选择,但是太大又会导致NaN。确保权重看起来“健康”。要了解这是什么意思,我建议在IPython的notebook中查看现有网络的权重值。
花些时间来观察在诸如ImageNet或Penn Tree Bank这些标准的数据集上训练的成熟的网络中成分的权重的直方图应该是什么样的。神经网络的w.r.t.输入不是不变的,特别是在使用SGD而不是其他方法训练的时候,因为SGD不是尺度不变的方法。花时间用与扩展其他方面的方式来扩展输入数据和输出标签。
在训练过程中降低学习速率几乎总会给你带来提升。最好的衰减策略通常是:在k次迭代后,每n次迭代就用学习率除以1.5,k
本文地址:http://m4.55jiaoyu.com/show-735920.html
本文由合作方发布,不代表展全思梦立场,转载联系作者并注明出处:展全思梦
推荐文档
- 11.印刷工程专业课程学什么(毕业后做什么工作)
- 12.财政学专业_财政学专业可以考哪些公务员岗位
- 13.互相推诿相关的成语
- 14.怎样关闭叮咚买菜自动定位
- 15.卧虎藏龙的法语
- 16.河南大学全国排名(河南大学排名如何?)
- 17.误惑相关词语
- 18.外流湖的英语
- 19.积痾诗句
- 20.海南900分怎么算的2025海南高考各科分值
- 21.英华相关词语
- 22.击目的网络解释
- 23.黄连素相关词语
- 24.幻翳相关成语
- 25.敦厚纯朴和活泼开朗的区别
- 26.燕花的网络解释
- 27.韶新高速隧道限速有拍照吗
- 28.锦瑟年华相关的词语
- 29.隐化的拼音
- 30.油滑近义词
- 31.康师傅3+2什么时候出的
- 32.农村信用社取一万出来需要利息吗
- 33.入户前可以贴装饰吗
- 34.2022年教师节是第几个教师节
- 35.龙拏虎掷的注音
- 36.京东如果有员工携款怎么处理
- 37.cf刷箱子技巧(cf刷箱子)
- 38.1000和375的最大公因数
- 39.关于情人节的文案给女朋友
- 40.梦见很多蜜蜂是什么意思呢
- 41.徐南铁书法价值高吗
- 42.梦见白狐狸是什么预兆
- 43.q50(关于q50的基本详情介绍)
- 44.音乐生180分高嘛
- 45.天号陈红盒38度多少钱(天号陈)
- 46.空中冲刺小游戏玩一玩(空中冲值)
- 47.幼猫吃什么奶粉好(幼猫吃什么)
- 48.银行保险柜续费能提前多久
- 49.喝牛奶记住4个最佳时间
- 50.彩云小梦可以在电脑上登录吗
- 51.林宥嘉妻子晒全家福(林宥嘉资料)
- 52.怀古诗是指文体吗
- 53.鬼节出生的人争议大吗
- 54.女生冬天穿的丝袜叫啥(关于它的介绍)
- 55.广州地铁3号线首末车时间
- 56.成都合院怎么停车
- 57.起亚k3能长时间断电吗
- 58.长沙阜埠河是条河吗
- 59.海山怎么去(怎么去海山)
- 60.暴雪预警分为哪四个等级
- 51.802,11ac(802.11ac无线网卡)
- 52.kk7办公软件手机版下载,你的电子下饭菜还香吗
- 53.步步高x60手机价格及图片,X60系列仅3498元起
- 54.海尔电器官网网站,海尔售后服务官方网站打海尔售后电话一天了,就是...
- 55.神舟电脑驱动下载,怎么把手机下载的网卡驱动程序安装到电脑上
- 56.三星怎么登录谷歌账户,如何连接谷歌账号
- 57.电信19百度大圣卡星卡19元包100G,百度大圣卡19元电信版申请
- 58.成都市华商理工铁路职业学校招生计划
- 59.陕西造什么安烟多少钱一包,「深度」陕西金叶蹊跷暴涨
- 60.小米上市,小米公司什么时候上市,小米公司市值大概是多少
- 61.开发区许寨安置区什么时候能住,王文峰到安置区现场办公
- 62.渭南哪里有新的养老院,让老人不出村就可养老
- 63.在哪里可以政府招投标,公开招投标的流程
- 64.开发二十二号路怎么走,「沈阳公交」关于开发二十二号路施工
- 65.平地水库在哪里,一大拨舟山本地水果排队来袭
- 66.前厅后厨怎么改造,餐饮前厅后厨工作的流程与细节
- 67.青田,瓯南街道办事处,怎么去,丽水青田发现一密接者
- 68.ct辉县中医院多少钱,辉县市中医院心病科
- 69.百色到乐业的高速什么时候通,乐业至百色高速
- 70.313省道张家圪埚是多少公里,兴县交警大队违法抓拍点公示

