吴恩达《机器学习》课程总结(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)尝试增加正则化程度——解决高方差

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

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

  

posted @   你的雷哥  阅读(224)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
历史上的今天:
2018-07-31 matplotlib画图
2018-07-31 matplotlib画线(2)
点击右上角即可分享
微信分享提示