神经网络CNN训练心得--调参经验
2024-10-01 05:52:59
1.样本要随机化,防止大数据淹没小数据
2.样本要做归一化。关于归一化的好处请参考:为何需要归一化处理
3.激活函数要视样本输入选择(多层神经网络一般使用relu)
4.mini batch很重要,几百是比较合适的(很大数据量的情况下)
5.学习速率(learning rate)很重要,比如一开始可以lr设置为0.01,然后运行到loss不怎么降的时候,学习速率除以10,接着训练
6.权重初始化,可用高斯分布乘上一个很小的数,这个可以看:权值初始化
3.激活函数要视样本输入选择(多层神经网络一般使用relu)
4.mini batch很重要,几百是比较合适的(很大数据量的情况下)
5.学习速率(learning rate)很重要,比如一开始可以lr设置为0.01,然后运行到loss不怎么降的时候,学习速率除以10,接着训练
6.权重初始化,可用高斯分布乘上一个很小的数,这个可以看:权值初始化
7.Adam收敛速度的确要快一些,可结果往往没有sgd + momentum的解好(如果模型比较复杂的话,sgd是比较难训练的,这时候adam的威力就体现出来了)
8.Dropout的放置位置以及大小非常重要
9.early stop,发现val_loss没更新,就尽早停止
另:心得体会
深度学习真是一门实验科学,很多地方解释不了为什么好,为什么不好。
深度学习真是一门实验科学,很多地方解释不了为什么好,为什么不好。
网络层数、卷积核大小、滑动步长,学习速率这些参数的设置大多是通过已有的架构来做一些微调
参考:知乎讨论 https://www.zhihu.com/question/41631631
最新文章
- Linux 等待进程结束 wait() 和 waitpid()
- 安装MySQL(简便)
- php部分--操作MySQL 增删改查
- unity, 保存prefab时material丢失问题
- 我眼中的go的语法特点
- SQL Server 2008R2 数据库出现“可疑”导致无法访问
- 百度touch的手势框架,touch.js
- 查看memcached依赖的库
- UVa----------1594(Ducci Sequence)
- STSR round#1
- SpringMVC配置实例
- Jquery第二篇【选择器、DOM相关API、事件API】
- 回忆曾经的SSM框架实现文件上传
- 关于windows映射网络驱动器,登录时重新连接
- JavaWeb学习日记----XML的解析
- 简单的Array.sort 排序方法
- Codeforces Round #520
- Golang入门教程(十二)安装注意事项
- Tim’s iT Blog
- 使用IAR编译STM8S 怎样生产烧录文件
热门文章
- 剑指offer-字符串的排列26
- 1.安装hbase
- nodejs笔记--Events篇(二)
- Notes of the scrum meeting before publishing(12.19)
- java实现屏幕共享的小程序
- java日期格式处理
- eg_2
- checkBox1_CheckedChanged(object sender, EventArgs e)和checkBox1_CheckStateChanged(object sender, EventArgs e)不同
- return 返回字符串
- Windows API封装:LoadLibrary/FreeLibrary