吴恩达老师机器学习课程chapter05——评估模型
吴恩达老师机器学习课程chapter05——评估模型
本文是非计算机专业新手的自学笔记,高手勿喷。
本文仅作速查备忘之用,对应吴恩达(AndrewNg)老师的机器学期课程第十章、第十一章。
在运用一个训练集训练完一个假设之后,如何评估假设效果如何?
如果发现该假设的效果并不好,如何决定下一步的工作?

评估模型方法
训练集(training set)与测试集(test set)

在回归问题与分类问题中的评估方法:

训练集、交叉验证集(cross validation set / cv)与测试集
通常,我们不能在一开始就决定用什么样的模型,可以加入交叉验证集。


首先,利用训练集训练完不同模型;
之后,利用交叉验证集计算每个模型的\(J_{cv}(\theta^{i})\);
最后,选择\(J_{cv}\)最小的那组作为最终假设模型。
高偏差(bias)与高方差(variance)
基本概念


由图可见,模型的阶数越高,对训练集的拟合效果越好,但是对训练集之外的其他样本则未必,会出现两种情况:
- 阶数过低,欠拟合,高偏差
- 阶数过高,过拟合,高方差
正则化的影响
由图可见,合适的模型下,正则化强度越小,模型更可能过拟合;正则化强度越大,模型更可能欠拟合

可以通过 λ=0.1、λ=0.2、λ=0.4、λ=0.8、λ=1.6、λ=3.2、λ=6.4……这样的方法选择合适的λ。
学习曲线(learning curve)
在高偏差与高方差情况下的学习曲线:


神经网络的过拟合

查准率(pecision)与召回率(recall)

查准率 (P)$=\frac{TP}{TP+FP} $ 所有判P的样本当中多少是TP
召回率 (R)$=\frac{TP}{TP+FN} $ 所有真P的样本当中多少是TP
查准率、召回率与阈值之间的关系:

一般来说,阈值(threshold)设为0.5,也就是说\(h_θ(x)\)≥0.5,y=1,否则,y=0。
当希望获得更高的P,提升阈值,但召回率下降;
当希望获得更高的R,降低阈值,但查准率下降。
单纯追求高P或者高R都是不可取的,直接取两者的算数平均值是不明智的。可以选择调和平均值:

设计算法的一般思路


吴恩达老师机器学习课程chapter05——评估模型的更多相关文章
- 机器学习爱好者 -- 翻译吴恩达老师的机器学习课程字幕 http://www.ai-start.com/
机器学习爱好者 -- 翻译吴恩达老师的机器学习课程字幕 GNU Octave 开源 MatLab http://www.ai-start.com/ https://zhuanlan.zhihu ...
- 吴恩达《机器学习》课程笔记——第六章:Matlab/Octave教程
上一篇 ※※※※※※※※ [回到目录] ※※※※※※※※ 下一篇 这一章的内容比较简单,主要是MATLAB的一些基础教程,如果之前没有学过matlab建议直接找一本相关书籍,边做边学,matl ...
- 吴恩达《机器学习》课程总结(5)_logistic回归
Q1分类问题 回归问题的输出可能是很大的数,而在分类问题中,比如二分类,希望输出的值是0或1,如何将回归输出的值转换成分类的输出0,1成为关键.注意logistics回归又称 逻辑回归,但他是分类问题 ...
- 深度学习 吴恩达深度学习课程2第三周 tensorflow实践 参数初始化的影响
博主 撸的 该节 代码 地址 :https://github.com/LemonTree1994/machine-learning/blob/master/%E5%90%B4%E6%81%A9%E8 ...
- 吴恩达《机器学习》课程笔记——第七章:Logistic回归
上一篇 ※※※※※※※※ [回到目录] ※※※※※※※※ 下一篇 7.1 分类问题 本节内容:什么是分类 之前的章节介绍的都是回归问题,接下来是分类问题.所谓的分类问题是指输出变量为有限个离散 ...
- 吴恩达《机器学习》课程总结(18)_照片OCR
18.1问题描述和流程图 (1)图像文字识别是从给定的一张图片中识别文字. (2)流程包括: 1.文字侦测 2.字符切分(现在不需要切分了) 3.字符分类 18.2滑动窗口 在行人检测中,滑动窗口是首 ...
- 吴恩达《机器学习》编程作业——machine-learning-ex1:线性回归
❄❄❄❄❄❄❄❄[回到目录]❄❄❄❄❄❄❄❄ 本次编程作业中,需要完成的代码有如下几部分: [⋆] warmUpExercise.m - Simple example function in Octa ...
- 跟我学算法-吴恩达老师(超参数调试, batch归一化, softmax使用,tensorflow框架举例)
1. 在我们学习中,调试超参数是非常重要的. 超参数的调试可以是a学习率,(β1和β2,ε)在Adam梯度下降中使用, layers层数, hidden units 隐藏层的数目, learning_ ...
- 跟我学算法-吴恩达老师(mini-batchsize,指数加权平均,Momentum 梯度下降法,RMS prop, Adam 优化算法, Learning rate decay)
1.mini-batch size 表示每次都只筛选一部分作为训练的样本,进行训练,遍历一次样本的次数为(样本数/单次样本数目) 当mini-batch size 的数量通常介于1,m 之间 当 ...
- 跟我学算法-吴恩达老师的logsitic回归
logistics回归是一种二分类问题,采用的激活函数是sigmoid函数,使得输出值转换为(0,1)之间的概率 A = sigmoid(np.dot(w.T, X) + b ) 表示预测函数 dz ...
随机推荐
- element ui 浏览器表单自动填充默认样式
::v-deep .el-input__inner { -webkit-text-fill-color: #000000; caret-color: #0a0a0a; box- ...
- vue 使用路由component: () =>import (‘ ‘)报错解决办法
今天帮朋友调代码的时候,在人家的mac上面,项目没有任何错误,到我这里就出现 component: () =>import (' ')加载路由错误. 发现是import处报错, import 属 ...
- python 非阻塞线程对话框,非qt(解决qt MessageBox使用线程时候卡死问题)
def msg_okbox(self, strinfo, isYesno=False): if isYesno: return win32api.MessageBox(None, strinfo, & ...
- 新手搭建Git与项目整合
新手搭建Git,将代码托管到码云 如果你还没有使用过Git,首先先去https://gitee.com/注册一个自己的账户,然后在https://git-scm.com/下载一个客户端(提交代码到码云 ...
- Pytest初识
一.单元测试框架简介 1. 什么是单元测试 单元测试是指在软件开发过程中,针对软件的最小单位(函数,方法)进行正确性的检查测试. 2. 常用单元测试框架 2.1 Java 类别 junit testn ...
- requests学习笔记02
一.会话对象 会话对象让你能够跨请求保持某些参数.它也会在同一个 Session 实例发出的所有请求之间保持 cookie, 期间使用 urllib3 的 connection pooling 功能. ...
- Delphi 移除窗口最大化按钮
很遗憾,好像没有直接的代码可以操作,可以试试以下代码: var GWL_Result: Integer; begin GWL_Result:= GetWindowLong(Handle,GWL_STY ...
- 【GROMACS】分子动力学模拟①——环境搭建
系统环境 Win11 22H2 企业版 开启虚拟化.window subsystem for liunx等虚拟机相关的功能 应用商店中安装WSL2 安装步骤 打开Ubuntu,输入sudo apt f ...
- props其他-混入mixin-插件-elementui使用-localStorage系列-vueRouter-vuex
目录 props其他-混入mixin-插件-elementui使用-localStorage系列-vueRouter-vuex 今日内容概要 今日内容详细 1 props其他 2 混入mixin 3 ...
- webssh
目录 使用 jupyter notebook 使用webssh GateOne 使用 jupyter notebook pip install jupyter ipyton # 启动 jupyter ...