机器学习笔记六
来源:互联网 发布:网络直播评论性文章 编辑:程序博客网 时间:2024/06/14 23:16
机器学习应用建议
决定下一步做什么
调试学习算法
如果我们正利用正则化线性回归来预测房价,代价函数如公式
备注:Andrew Ng的ppt中公式有误,我这里更改了过来
然而,当你在新数据集上测试你的假设时,会发现预测结果的错误率不可接受。那下一步该怎样做?
- 获取更多的训练数据
- 尝试更小的特征集
- 尝试获取额外的特征
- 尝试添加多项式特征
- 尝试减小
λ - 尝试增大
λ
机器学习诊断
-什么是诊断?
诊断就是一种测试,该测试可以让你更加清楚哪些有利于学习算法,哪些有害于学习算法,给你更好地改善学习算法性能提供更多指导。
诊断很费时,但很有用。
评价假设
对假设进行评价
如果选择的特征过多,模型可能对不在训练集中的数据缺乏泛化能力。
如图1所示,这里选择了4个特征
这种请情况就是过拟合。过拟合造成对训练数据拟合非常好,但对测试数据缺乏泛化推广能力。
图1 过拟合
线性回归训练/测试过程
-通过最小化训练误差
-计算测试误差
逻辑回归训练/测试过程
-通过训练数据来学习参数
-计算测试集误差
-误分类误差
模型选择和训练/验证/测试集
对于如图1所示的过拟合例子,一旦参数
通过测试集误差
训练/验证/测试误差
训练误差:
交叉验证误差:
训练误差:
诊断偏差vs.方差
偏差和方差
如下三张图分别代表了高偏差(欠拟合)、“正好”、高方差(过拟合)
图2 欠拟合-适中-过拟合
训练误差:
交叉验证误差:
随着多项式维度d的增大,训练误差逐渐减小;但交叉验证误差开始时会随多项式维度增大而减小,但当维度超过临界值后,交叉验证误差会随着维度的增大而增大。因此,多项式维度要选择适当大小的值。
诊断偏差vs.方差
如果学习算法的性能比预期的差(
从图2可以看出偏差(欠拟合)问题和方差(过拟合)问题的差别:
-偏差问题(欠拟合):
训练误差
-方差问题(过拟合):
训练误差
正则化和偏差/方差
线性回归正则化
选择的模型为:
代价函数为:
尝试不同的正则化参数
从图中可以看出,当正则化参数
学习曲线
选择不同的训练集规模(即
高偏差(欠拟合)
当学习算法经历高偏差时,增加过多的训练集数据也不会由太大帮助,因为随着样本数
高方差(过拟合)
当学习算法经历高方差时,增加过多的训练集数据可能会很有用,因为随着样本数
决定下一步该怎么做
回到开始提到的问题,当算法性能不理想时,该如何进行处理:
- 高方差——获取更多的训练数据
- 高方差——尝试更小的特征集
- 高偏差——尝试获取额外的特征
- 高偏差——尝试添加多项式特征
- 高偏差——尝试减小
- 高方差——尝试增大
- 机器学习笔记六
- 机器学习笔记六
- 斯坦福机器学习笔记六
- 机器学习系列笔记(六)
- Andrew Ng 机器学习笔记(六)
- 机器学习课堂笔记(六)
- 机器学习基础(林軒田)笔记之六
- 机器学习笔记(六):numpy基础
- 机器学习笔记(六)支持向量机
- 机器学习笔记(六)性能度量
- 机器学习笔记(六) 决策树
- 机器学习入门笔记(六)----神经网络
- 机器学习笔记(六) 逻辑回归
- 斯坦福机器学习公开课笔记(六)--神经网络的学习
- 《机器学习》学习笔记六 贝叶斯分类器
- 机器学习理解(六)
- 机器学习六 决策树
- Andrew NG机器学习课程笔记(六)
- Mongodb 删除重复数据的几个方法
- Unity获取当前城市天气
- Android常用框架----网络请求系列框架
- 项目提示:Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactor
- CSS3转换
- 机器学习笔记六
- java 字典排序
- R语言基础
- HFOI2017.07.10校内赛(普及组)题解
- 跨域资源共享 CORS 详解
- jump-game
- Java实现表达式解析--初始篇
- mybatis 动态传入表名,表名作为参数示例
- Ubuntu下SSH安装或设置