1 非线性激励函数1.1 作用
对于无非线性激励函数情况,每一层网络输出都为线性函数,可验证无论神经网络层数多少,输出都是输入的线性组合,意味着单层网络也可实现,这也是最原始的感知机 。
引入非线性激励函数,使得深层神经网络变得有意义,也能模拟更复杂的模型 。
1.2 Relu vs ( tanh)2 关于深度学习中的预训练 2.1 为什么预训练
深度网络存在以下缺点:
解决方法:逐层贪婪训练 。无监督预训练( pre-)即训练网络的第一个隐藏层,再训练第二个…最后用这些训练好的网络参数值作为整体网络参数的初始值 。无监督学习→→参数初始值;监督学习→→fine-,即训练有标注样本 。经过预训练最终能得到比较好的局部最优解 。
2.2 常用预训练方法2.3 Why doespre- help deep ?
(该部分内容整理自D Erhan等人的论文)
2.3.1预训练的效果
文章插图
1.测试误差即泛化能力(多次随机选取初始点后的统计结果)
有预训练无预训练
误差小
误差大
深度增大时,鲁棒性更好,方差更小
深度增大时,鲁棒性差,得到差的局部最优解概率增大
2.特征角度
fine-对神经网络权值改变很小,似乎权值被困在某个局部区域 。而且第一层改变最少,第二层次之…最后一层最大 。这说明浅层的权值参数似乎是把参数整体限制在某个范围,即浅层权值对结果影响比较大,然而BP算法会出现梯度消失,即不容易改变浅层的权值参数 。
3.模型轨迹
文章插图
(权值基于映射算法,迭代次数增加,深蓝转为青色)
局部最优解有很多。无预训练不同初始值收敛到不同局部点,收敛点的扩散性;预训练会更偏向某些点,收敛点的收敛性 。2.3.2 预训练在深层次网络学习中的角色
假设1:预训练使得权值参数在最优参数的周边范围(与预训练相同统计特征的参数进行fine-,发现结果并不如预训练)
假设2:预训练使得最优化过程更有效(计算 error,事实上随着迭代进行,该值无训练更小)
假设3:预训练类似于规则化权值(从测试误差来说,预训练对于多节点数和深层网络效果更加!)
文章插图
但是预训练规则化又不同于经典的规则化(L1/L2),训练数目越多,预训练结果越好 。
【2 关于深度学习中的预训练】该论文也说明了基于pre-的深度学习网络,当满足 大数据、深层次、多节点网络,效果更优 。参考资料
- 【深度学习】深度学习模型训练的tricks总结
- 详细 小白的决策树学习笔记
- 入门 小白的逻辑回归学习笔记
- s3c2440学习之路-002 C语言点亮led
- 关于从svn上新下载的项目往往报类找不到,而类又存在的错误问题
- 深度学习在自然语言处理中的应用
- C语言学习笔记——字符串操作
- 2 深度学习入门教程:使用预训练模型来文字生成图片TextToImageGen
- [可解释机器学习]Task01:预备知识学习
- sau交流学习社区—vue总结:使用vue的computed属性实现监控变量变化