deep learning toolbox学习使用2之NN
来源:互联网 发布:上海屹通java笔试题 编辑:程序博客网 时间:2024/05/29 02:02
继续总结NN中的一些参数的使用,基本都是为了防止过拟合
1.权重衰减项weightpenaltyl2,在经过bp过程之后,需要更新w的值,此时使用penalty项,个人理解为规则化项,代码中是增加dw的值,因为更新w时是减去dw,所以相当于减少了权重的幅度,目的是防止overfitting,这一项我理解相当于ufldl中更新w时多减去的lamda w部分,和之前效果比,错误率降低,说明还是有实际效果。
2.dropout,在这里设的是0.5(应该可以再0.5-0.9之间浮动),大体思想是每次神经元不应该都激活,而是部分激活(考虑sparity?),因此在train的ff阶段,通过生成一个随机矩阵(与激活矩阵大小相同),通过dropout的筛选,只有大于的才被认为该神经元可以被激活,也就是可以产生非0的激活值。在bp、阶段,还是通过之前的随机矩阵,对相对应激活的神经元才进行残差的计算,因为没激活,也就没有产生残差,无需bp,目的也是为了防止过拟合,从实验效果看,错误率有所提高,个人感觉可能是参数阀值的影响。
3.最后NN中也有把之前hidden层使用tanh的激活函数换成统一的sigmoid,实验效果有所提升,具体激活函数个人感觉应该视情况而定,sigmoid坡度更缓,而双曲正切函数更陡。
1.权重衰减项weightpenaltyl2,在经过bp过程之后,需要更新w的值,此时使用penalty项,个人理解为规则化项,代码中是增加dw的值,因为更新w时是减去dw,所以相当于减少了权重的幅度,目的是防止overfitting,这一项我理解相当于ufldl中更新w时多减去的lamda w部分,和之前效果比,错误率降低,说明还是有实际效果。
2.dropout,在这里设的是0.5(应该可以再0.5-0.9之间浮动),大体思想是每次神经元不应该都激活,而是部分激活(考虑sparity?),因此在train的ff阶段,通过生成一个随机矩阵(与激活矩阵大小相同),通过dropout的筛选,只有大于的才被认为该神经元可以被激活,也就是可以产生非0的激活值。在bp、阶段,还是通过之前的随机矩阵,对相对应激活的神经元才进行残差的计算,因为没激活,也就没有产生残差,无需bp,目的也是为了防止过拟合,从实验效果看,错误率有所提高,个人感觉可能是参数阀值的影响。
3.最后NN中也有把之前hidden层使用tanh的激活函数换成统一的sigmoid,实验效果有所提升,具体激活函数个人感觉应该视情况而定,sigmoid坡度更缓,而双曲正切函数更陡。
0 0
- deep learning toolbox学习使用2之NN
- deep leaning toolbox学习使用1之NN
- deep learning toolbox学习使用3之DBN
- deep learning toolbox学习4之CNN
- deep learning toolbox学习5之SAE
- Deep Learning 学习 Toolbox学习记录二 稀疏自编码器
- Deep Learning学习 之 Deep learning简介
- Matlab深度学习笔记——安装deep learning toolbox
- Matlab 关于使用Deep Learning Toolbox 工具箱出错的问题
- deep learning 之学习路线
- ReLUs deep learning NN 的激活函数
- Deep learning:三十五(用NN…
- Deep Learning学习 之 Deep Learning训练过程
- Deep Learning 学习 Toolbox学习记录一 CNN例子的学习理解
- 机器学习之深度学习(Deep Learning)
- Deep Learning学习笔记之线性代数
- Deep Learning 系列(2):NN(神经网络)及反向传播算法
- Deep learning:三十五(用NN实现数据降维练习)
- PO BO VO DTO POJO DAO概念及其作用(附转换图)
- Makefile 中:= ?= += =的区别
- pcDuino支持的scratch编程(一)点亮你的灯
- px、dp和sp,这些单位有什么区别?
- Oracle数据库建立表空间/用户
- deep learning toolbox学习使用2之NN
- It is not safe to rely on the system's timezone settings
- InnoDB和MyISAM的区别
- 图结构练习——判断给定图是否存在合法拓扑序列
- java输出当前系统参数
- [error] MFC错误不能将参数1从"const char [3]"转换为"const wchar_t *"
- pcDuino支持的scratch编程(二)按钮开关控制灯
- TI IPNC_RDK_V3.8.0开发环境建立步骤备忘
- java 接口相关