当前位置:网站首页>华为深度学习课程第六、七章
华为深度学习课程第六、七章
2022-08-01 07:18:00 【swl.乌鸦】
目录
学习链接
第六章 初始化
首先说什么是初始化?
所谓初始化,就是对训练网络中的参数W找到初始值。
那为什么要初始化?初始化为什么那么重要?
一般神经网络需要优化的是非常复杂的非线性模型,要想找到最优解,初始点的选取起着重要的作用:
- 初始点的选取有时决定算法是否收敛
- 当收敛时,初始点的选取决定学习的快慢
- 过大的初始化导致梯度爆炸,过小的初始化导致梯度消失
那知道初始化的重要性了,我们就必须要找到好的初始化方法。
首先,我们要知道好的初始化的标准:
- 让神经元各层激活值不会出现饱和状态
- 各层激活值也不能为0
接下来,是几种初始化方法:
- 全零初始化:参数初始化为零
缺点:同一层神经元会学习到相同的特征,不能破坏不同神经元的对称性质。
- 随机初始化:将参数初始化为小的随机数。一般随机值会从一个高斯分布中取样,最终参数的每个维度来自一个多维的高斯分布。
缺点:一旦随机分布选择不当,优化就会陷入困境:
若参数初始值太小,在反向传播时会导致小的梯度,对于深度网络来说,在反向传播时会单只梯度弥散,收敛速度降低。
若初始值取得太大,会容易导致饱和。
- Xavier初始化:保证每一层输入和输出的方差一致,将参数初始化为
缺点:没有考虑激活函数对数据分布的影响
- He初始化:在Xavier的基础上再除以2,即将参数初始化为
优点:考虑了ReLU函数对输出数据分布的影响,使得输入与输出的方差保持一致
第七章 参数调节
一般参数W是模型训练过程中自动更新的参数,而一些参数需要人为设置和调节即为超参数调节。
那么有哪些超参数呢?
学习率:决定参数更新变化的步长大小
可见选择合适的学习率才能找到最优解
Minibatch:批量大小。太小,会使训练速度很慢;太大,会使训练速度很快,但会占用较多内存,也有可能使准确率降低。
据经验可知,32、64、128、256是一个不错的选择(一般都是2的几次方,因为计算机内部处理的都是二进制,同时内存也一般为2的几次方)
动量衰减参数β、隐藏层神经元个数、Adam优化算法超参数、layers(神经网络层数)、decay_rate(学习衰减率)
大概了解了有什么超参数,那么训练过程中就需要不断调节这些参数,找到最优的参数组合,下面有几个训练技巧介绍如何进行调节:
试错法:遵循整个实验过程(从数据收集到特征图可视化),然后在超参数上依次迭代直到时间终止。
缺点是时间过长,效率较低。
网格搜索:顾名思义,也就是将我们需要调节的超参数放在一个坐标系中(类似于网格),不断调节,找到最优的点(超参数组合)。
缺点是只适用于需要调节超参数较少的情况,若过多,需要的维度就越多,利用网格搜索越复杂。
随机搜索:与网格搜索区别在于在配置空间上随机搜索选择点,优势在于能够利用较少的资源较快找到最优点,实验证明效果如此。
不论是网格搜索,还是随机搜索,每一次新猜测都是独立于之前的训练,因此又出现了贝叶斯优化的方法:
贝叶斯优化:该方法的流程如下
构建模型->选择超参数->训练、评估->优化模型,再返回到第二步
边栏推荐
猜你喜欢
随机推荐
"By sharing" northwestern university life service | | bytes a second interview on three sides by HR
企业员工人事管理系统(数据库课设)
Image lossless compression software which works: try completely free JPG - C image batch finishing compression reduces weight tools | latest JPG batch dressing tools download
Bean的生命周期
小程序通过云函数操作数据库【使用get取数据库】
Classwork (7) - #598. remainder operation (mod)
问下 mysql向pg同步多个表的话 有什么好的方案吗?
LevelSequence源码分析
史上超强最常用SQL语句大全
Introduction to the basic principles, implementation and problem solving of crawler
自制一款远程控制软件——VeryControl
从底层结构开始学习FPGA(6)----分布式RAM(DRAM,Distributed RAM)
旋度(7)连接失败localhost8080;连接拒绝了
Golang:go模版引擎的使用
VSCode 快捷键及通用插件推荐
curl (7) Failed connect to localhost8080; Connection refused
2022杭电多校第二场1011 DOS Card(线段树)
【HDLBits 刷题】Circuits(1)Combinational Logic
Three aspects of Ali: How to solve the problem of MQ message loss, duplication and backlog?
【南瓜书ML】(task4)神经网络中的数学推导(更新ing)