zoukankan      html  css  js  c++  java
  • 神经网络的调参效果不理想时->(解决思路)

    github博客传送门
    csdn博客传送门

    非过拟合情况

    1. 是否找到合适的损失函数?(不同问题适合不同的损失函数)(理解不同损失函数的适用场景)
      (解决思路)选择合适的损失函数(choosing proper loss )
      神经网络的损失函数是非凸的,有多个局部最低点,目标是找到一个可用的最低点。非凸函数是凹凸不平的,但是不同的损失函数凹凸起伏的程度不同,例如下述的平方损失和交叉熵损失,后者起伏更大,且后者更容易找到一个可用的最低点,从而达到优化的目的。
      -. Square Error(平方损失)
      -. Cross Entropy(交叉熵损失)
    2. batch size是否合适?batch size太大 -> loss很快平稳,batch size太小 -> loss会震荡(理解mini-batch)
      (解决思路)采用合适的Mini-batch进行学习,使用Mini-batch的方法进行学习,一方面可以减少计算量,一方面有助于跳出局部最优点。因此要使用Mini-batch。更进一步,batch的选择非常重要,batch取太大会陷入局部最小值,batch取太小会抖动厉害
    3. 是否选择了合适的激活函数?(各个激活函数的来源和差异)
      (解决思路)使用激活函数把卷积层输出结果做非线性映射,但是要选择合适的激活函数。
      -. Sigmoid函数是一个平滑函数,且具有连续性和可微性,它的最大优点就是非线性。但该函数的两端很缓,会带来猪队友的问题,易发生学不动的情况,产生梯度弥散。
      -. ReLU函数是如今设计神经网络时使用最广泛的激活函数,该函数为非线性映射,且简单,可缓解梯度弥散。
    4. 学习率,学习率小收敛慢,学习率大loss震荡(怎么选取合适的学习率)
      (解决思路)学习率过大,会抖动厉害,导致没有优化提 , 学习率太小,下降太慢,训练会很慢
    5. 是否选择了合适的优化算法?(比如Adam)(理解不同优化算法的适用场景)
      (解决思路)在梯度的基础上使用动量,有助于冲出局部最低点。


    如果以上五部分都选对了,效果还不好,那就是产生过拟合了,可使如下方法来防止过拟合,分别是:



    过拟合情况

    1. Early Stopping(早停法)
      (详细解释)早停法将数据分成训练集和验证集,训练集用来计算梯度、更新权重和阈值,验证集用来估计误差,若训练集误差降低但验证集误差升高,则停止训练,同时返回具有最小验证集误差的连接权和阈值。
    2. Regularization(正则化)
      (详细解释) 权重衰减(Weight Decay)。到训练的后期,通过衰减因子使权重的梯度下降地越来越缓。
      *. Batch Normalization
      *. Dropout
      *. L1 , L2
    3. 调整网络结构
    4. 增大训练数据量
      *. 获取更多的数据
      *. 数据扩充(图片: 镜像 , 翻转 , 随机裁剪等.)
    print_r('点个赞吧');
    var_dump('点个赞吧');
    NSLog(@"点个赞吧!")
    System.out.println("点个赞吧!");
    console.log("点个赞吧!");
    print("点个赞吧!");
    printf("点个赞吧!
    ");
    cout << "点个赞吧!" << endl;
    Console.WriteLine("点个赞吧!");
    fmt.Println("点个赞吧!")
    Response.Write("点个赞吧");
    alert(’点个赞吧’)
    
  • 相关阅读:
    C#解析PDF
    Ora-03113Ora-03114与Oracle In 拼接字符串的问题
    [Linux] nohup/setsid/& 让进程在后台可靠运行
    [Python] json 报错'xxx is not JSON serializable'的处理方法
    [Linux] 虚拟环境的配置和使用 virtualenv
    [Python] 跳过前几行快速读取文件内容:islice
    对pandas的dataframe绘图并保存
    matplotlib 数据可视化
    awk结合正则匹配
    Pandas库常用函数和操作
  • 原文地址:https://www.cnblogs.com/Mrzhang3389/p/10164241.html
Copyright © 2011-2022 走看看