浅析激活函数之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://6ezbnx3p.55jiaoyu.com/show-735920.html
本文由合作方发布,不代表展全思梦立场,转载联系作者并注明出处:展全思梦
推荐文档
- 11.德阳科贸职业学院中职部软件技术专业专业介绍
- 12.沈阳所有的本科专科大学名单(2025)
- 13.2025中国艺术类大学排名(校友会版)
- 14.湖州市第二中学_湖州招生网
- 15.重庆高中学校升学排行2022(附高考成绩)-2023参考
- 16.武汉江南技术学校2025年宿舍条件
- 17.河北传媒学院是几本?是985和211吗?
- 18.2025怀仁县第一高级职业中学招生计划招生人数是多少
- 19.2025重庆工商大学派斯学院评价怎么样,学校好不好
- 20.池州职业技术学院网站网址
- 21.2025哈尔滨工程大学专业排名一览表
- 22.天津音乐学院是什么样的大学985还是211高校(附王牌
- 23.2023沈阳航空航天大学高考录取分数线是多少(2025参考)
- 24.雅安市十大高中排名(最新)汇总
- 25.烟台三中2022录取分数线(2023参考)
- 26.往年高考多少分可以上河北工业大学?(2025年参考)
- 27.陕西数控加工中职学校排名榜(最新)
- 28.长安大学附属中学_西安招生网
- 29.湖北工程学院新技术学院_孝感招生网
- 30.江阴第一中学2021年宿舍条件
- 31.2025年军校体检项目一览表及军校体检要求
- 32.乐清三中2022录取分数线(2023参考)
- 33.2025沈阳排名前三的艺术学校名单
- 34.2025张家口排名前八的公办中职学校名单
- 35.苏州技校_苏州有哪些技校_苏州招生网
- 36.武汉2021年哪个航空服务学校就业比较好
- 37.2023陕西大专院校排名名单一览表
- 38.广东惠州中考普高录取分数线(2022)-2023年参考
- 39.富县高级中学网站网址
- 40.邦博尔湖州招生网_湖州招生信息_湖州招生考试平台
- 41.邦博尔哈尔滨招生网_哈尔滨招生信息_哈尔滨招生考试平台
- 42.东北农业大学是什么样的大学985还是211高校(附王牌
- 43.杭州所有的本科专科大学名单(2025)
- 44.六盘水第二中学网站网址
- 45.2025四平各区重点高中学校名单及排名表
- 46.招生信息_永丰职业中等专业学校
- 47.成都纺织高等专科学校地址在哪里
- 48.往年高考多少分可以上西北政法大学?(2025年参考)
- 49.西安科技大学有哪些专业
- 50.广东开设会计电算化专业的职业学校名单一览表
- 51.中南大学_长沙招生网
- 52.淄博职业学院评价怎么样,学校好不好
- 53.中南大学招生录取分数线
- 54.汶上一中2022录取分数线(2023参考)
- 55.柳州第二职业技术学校怎么样、好不好
- 56.郫县第四中学怎么样、好不好
- 57.德阳外国语学校2021年学费、收费多少
- 58.太原六十三中、太原六十四中2022录取分数线(2023
- 59.河南省实验中学2022录取分数线(2023参考)
- 60.吉首大学医学院_湘西招生网
- 51.联想三千左右的笔记本性价比高的(联想笔记本3000左右哪款性价比高)
- 52.中国科学院科技产品网,科技产品有哪些
- 53.政府采购电子报价中品牌怎么写,报价文件格式一
- 54.pacg是什么专业,眼科行业投资专题
- 55.偃师前纸庄村怎么赔偿,蔡伦造纸在偃师纸庄
- 56.媒介购买,急问媒介购买人员的基本技能有哪些要求,媒介购买要具有的素质
- 57.无为县神塘河在哪里,从无为泥汊出发
- 58.瑞金市哪个小区好,11月瑞金热门楼盘排行榜发布
- 59.东圳水库管理局怎么样,莆田县东圳水库管理局
- 60.盾安集团,盾安环境属性什么性质的公司民营企业还是外资企业
- 61.温岭吕岙,周边什么村,浙江省台州市温岭市乡镇街道办及村名汇总
- 62.福州怎么上琅岐大桥,到马尾琅岐20分钟
- 63.泉州洛江区公共资源交易中心在哪里,洛江区塘西学园这一中学即将开建
- 64.定西市科目三什么时候考试,学员练习科目三考试
- 65.温州横渎河西什么时候摸份,市区横渎河西一期进入拔钉清障阶段
- 66.哪里收油田的费抽油杆,当油田渐渐变老
- 67.无偿献血给什么纪念品,血液中心推出无偿献血纪念品
- 68.航天城航天壹街区什么时候完工,西安航天城房价从五六千到一万三四
- 69.泰兴新建232省道在哪里,232省道泰兴段
- 70.泰顺有什么水库,每条大江都有个大水库

