Loss曲线振荡:

分析原因:  1:训练的batch_size太小

1.       当数据量足够大的时候可以适当的减小batch_size,由于数据量太大,内存不够。但盲目减少会导致无法收敛,batch_size=1时为在线学习。

2.  batch的选择,首先决定的是下降方向,如果数据集比较小,则完全可以采用全数据集的形式。这样做的好处有两点,

1)全数据集的方向能够更好的代表样本总体,确定其极值所在。

2)由于不同权重的梯度值差别巨大,因此选取一个全局的学习率很困难。

3.  增大batchsize的好处有三点:

1)内存的利用率提高了,大矩阵乘法的并行化效率提高。

2)跑完一次epoch(全数据集)所需迭代次数减少,对于相同的数据量的处理速度进一步加快。

3)一定范围内,batchsize越大,其确定的下降方向就越准,引起训练震荡越小。

4.  盲目增大的坏处:

1)当数据集太大时,内存撑不住。

2)batchsize增大到一定的程度,其确定的下降方向已经基本不再变化。

总结:

1)batch数太小,而类别又比较多的时候,可能会导致loss函数震荡而不收敛,尤其是在你的网络比较复杂的时候。

2)随着batchsize增大,处理相同的数据量的速度越快。

3)随着batchsize增大,达到相同精度所需要的epoch数量越来越多。

4)由于上述两种因素的矛盾, Batch_Size 增大到某个时候,达到时间上的最优。

5)过大的batchsize的结果是网络很容易收敛到一些不好的局部最优点。同样太小的batch也存在一些问题,比如训练速度很慢,训练不容易收敛等。

6)具体的batch size的选取和训练集的样本数目相关

分析原因:  2:数据输入不对

 

1:数据输入不对包括数据的格式不是网络模型指定的格式,导致训练的时候网络学习的数据不是想要的; 此时会出现loss曲线震荡;

解决办法:检查数据输入格式,数据输入的路径;

分析原因:  3:训练脚本里面的 路径是否配置正确;

 

1:当脚本中的train.bin的路径或者模型参数的路径配置不对时,会导致训练模型结果不对.

解决办法:检查脚本配置是否正确.

Loss曲线振荡分析相关推荐

  1. Loss曲线震荡分析

    https://blog.csdn.net/junmuzi/article/details/79860000 Loss曲线震荡: 分析原因: 1:训练的batch_size太小 当数据量足够大的时候可 ...

  2. loss 曲线 神经网络_总结李飞飞教授讲义中的神经网络调参技巧

    总结了李飞飞教授的讲义,稍微结合自己的一些经验(也就是厚着脸皮说一下结合了自己的经验了,其实自己的那些经验,都在教授的讲义中了....). 数据预处理:零均值(zero-centered),将数据的均 ...

  3. 日志分析工具:画出loss曲线

    基本功能:生成loss图片,保存到log日志的同一目录下,取名与log文件一致:内容涉及正则化&plot画图技巧 在跑深度学习项目的时候,可能会有各种各样的log日志,写一个工具包可以快速画出 ...

  4. Keras构建前馈神经网络并使用callbacks输出acc以及loss曲线(训练接、验证集)及效果可视化

    Keras构建前馈神经网络并使用callbacks输出acc以及loss曲线(训练接.验证集)及效果可视化 在每个training/epoch/batch结束时,如果我们想执行某些任务,例如模型缓存. ...

  5. 校准曲线(calibration curve)是什么?如何绘制校准曲线(calibration curve)?如何通过过校准曲线进行分析?什么是高估?什么是低估?

    校准曲线(calibration curve)是什么? 如何绘制校准曲线(calibration curve)? 如何通过过校准曲线进行分析? 什么是高估? 什么是低估? 注意:横纵坐标的差异,但是本 ...

  6. python画曲线-如何通过python画loss曲线的方法

    1. 首先导入一些python画图的包,读取txt文件,假设我现在有两个模型训练结果的records.txt文件 import numpy as np import matplotlib.pyplot ...

  7. Visdom数据可视化工具绘制Loss曲线

    目录 Visdom介绍 Loss可视化代码编写 视频链接 Visdom介绍 Visdom是FaceBook公司开发的一款开源数据可视化工具,以其简单易用的功能,很快成为PyTorch的一个数据可视化工 ...

  8. 【深度学习】通过python画出loss曲线

    通过python画出loss曲线 将训练过程中的running loss保存到文件 1.读取txt文件 2.取出相应列的数据作为绘图的x和y 3.先创建一幅图,再在这幅图上添加一个小图 4.画出整体的 ...

  9. Faster-Rcnn的loss曲线可视化

    由于要写论文需要画loss曲线,查找网上的loss曲线可视化的方法发现大多数是基于Imagenat的一些方法,在运用到Faster-Rcnn上时没法用,本人不怎么会编写代码,所以想到能否用python ...

最新文章

  1. 我的JavaScript学习笔记
  2. 自然语言处理之jieba分词
  3. 【行为型模式】《大话设计模式》——读后感 (15)烤羊肉串引来的思考?——命令模式...
  4. Java——List集合特有的功能
  5. html控制浏览器宽度和高度,html – 设置电子邮件和浏览器的tr和td宽度和高度
  6. 使用 Skeleton Screen 提升用户感知体验
  7. 计算机视觉论文-2021-05-31
  8. C语言变量d的定义法则,C语言变量命名规则(3页)-原创力文档
  9. AD16查看不同层并修改走线(一般也就两层
  10. 两台Windows7的笔记本,充分利用自带无线网卡共享上网。
  11. 正确使用SqlConnection对象,兼谈数据库连接池
  12. redisconnectionfactory 没有这个bean_浅析Spring中bean的作用域
  13. go的编程哲学和设计理念
  14. uefiboot 文件_UEFI启动文件bootx64.efi的定制
  15. python智能抠图
  16. 爱快最新版3.6用docker安装Jellyfin最新教程
  17. HSSFCellStyle相关属性报错
  18. Unity3D Soft Mask 软遮罩插件
  19. 操作系统期末习题考试习题解答题目二
  20. CAD绘制复杂轴承图形

热门文章

  1. 6-4 使用函数求Fibonacci数
  2. Carbon教程之 基本语法入门大全 (教程)
  3. 使用ultraISO 制作多种系统的启动U盘和文件U盘
  4. 采用用计算机及条形码技术的是什么,条形码技术及其应用
  5. 版本号Alpha、Beta、RC、Candidate、Stable分别代表什么含义?
  6. idea 返回快捷键 屏幕 转动
  7. 用pandas_profiling生成数据报告遇到的各种坑
  8. matlab/simulink电力电子仿真有效值RMS设置和使用
  9. 功能安全之故障(fault),错误(error),失效(failure)
  10. linux线程 ppt,Linux多线程编程多核编程.ppt