zoukankan      html  css  js  c++  java
  • 吴恩达《机器学习》课程总结(9)_应用机器学习的建议

    Q1决定下一步该干什么

    当系统的效果很差时,你可能考虑到收集更多的样本,也可能:

    (1)尝试减少特征的数量;

    (2)尝试获得更多的特征;

    (3)尝试增加多项式特征;

    (4)尝试减少正则化程度λ;

    (5)尝试增加正则化程度λ。

    如果做决策将是本章的内容。而不是盲目的选择一种策略。

    Q2评估一个假设

    将数据集分为训练集和测试集,在测试集上计算误差:

    (1)对于线性回归模型,我们利用测试集数据计算代价函数J;

    (2)对于逻辑回归模型,不仅可以利用测试集计算代价函数外,还可以利用误分类的比率来计算结果:

    Q3模型选择和交叉验证集

    将数据集按照6:2:2分为训练集,交叉验证集和测试集。

    模型选择的方法:

    (1)使用训练集训练处10个模型;

    (2)用10个模型分别对交叉验证集计算得出交叉验证集误差;(什么是交叉验证)

    (3)选取 代价函数数值最小的模型;

    (4)用步骤3中选出的模型对测试集计算得出推广误差。

    用测试集去验证测试集训练的结果并不是一个明智的想法。

    Q4诊断偏差和方差

    (1)偏差(欠拟合)、方差(过拟合)

    (2)误差随多项式次数的关系

    次数低时,训练误差和验证误差都大,欠拟合;次数高时,训练误差小,验证误差大,过拟合。

    训练误差和验证误差相近时,欠拟合;验证误差高于训练误差时过拟合。

    Q5正则化和偏差/方差

    (1)正则化的影响:

    (2)λ的选择(以2为倍数增加,如0,0.01,0.02,0.04,0.08,0.16,0.32……): 

    1.使用训练集训练出12个不同程度的正则化模型;

    2.用12个模型分别对交叉验证集计算出交叉验证误差;

    3.选择得出交叉验证误差最小的模型;

    4.运用步骤3中选出模型对测试集计算得出推广误差。

    (3)训练误差和验证误差与λ的关系:

    Q6学习曲线

    (1)学习曲线是将训练误差和交叉验证集误差作物训练样本数量(m)的函数绘制的图表:

    (2)训练误差很大,高偏差(增加数据不会有改观)

    (3)验证集误差与训练集误差相差很大,高方差(增加数据可以提高算法效果)

    Q7决定下一步做什么

    通过以上的诊断,下面是一些策略:

    (1)获得更多的训练实例——解决高方差

    (2)尝试减少特征的数量——解决高方差

    (3)尝试获得更多的特征——解决高偏差

    (4)尝试增加多项式——阶段高偏差

    (5)尝试减小正则化程度——解决高偏差

    (6)尝试增加正则化程度——解决高方差

    一般使用较大的网络加上正则化会比使用小网络更有效。

    random initialization   随机初始化
    training set	---	训练集
    test set	---	测试集
    validation set   ---验证集
    

      

  • 相关阅读:
    第一阶段冲刺总结
    读书笔记之梦断代码1
    第二次站立会议5
    第二次站立会议4
    第二次站立会议3
    第二次站立会议2
    Java学习
    项目冲刺第十天
    项目冲刺第九天
    项目冲刺第八天
  • 原文地址:https://www.cnblogs.com/henuliulei/p/11279361.html
Copyright © 2011-2022 走看看