【李宏毅机器学习】Basic Concept 基础概念(p4) 学习笔记
李宏毅机器学习学习笔记汇总
课程链接
Review
越复杂的model,在testing data上的error未必越低。
error来自两个地方:
- bias
- variance
f_star是f_hat的一个估测值,f_star可能不等于f_hat,距离可能来自于bias,也可能来自于variance方差
估测变量x的mean均值(假设变量x的均值为μ,方差为σ^2):
先sample N个点,将其算平均值m,一般都不等于x的均值μ
但是计算m的期望值,会正好等于μ
N越大,分布越集中;N越小,分布越分散
估测x的σ^2
重点图如下,便于理解
错误来自于bias(瞄准的位置)和variance(枪的性能),理想情况是二者都小/没有。
点越集中,方差越小;离中心越远,偏差越大。
平行时空,抓到不同的宝可梦
不同宇宙中,找到的f*是不同的
在100个平行的宇宙中,各抓取10个宝可梦,都去找一个f*
100个不同的w和b
简单模型:很集中,variance很小
复杂模型:散布分散,variance很大
原因:简单模型受不同data影响较小
靶心代表理想的函数,目标结果。
实验结果如下:
黑线代表:靶心位置;
红线代表:做5000次实验每一次找出的f*都不一样,model也不一样;
蓝线代表:将这5000次f*平均后fˉ\bar ffˉ
下图的解释:
model是一个function set,使用一个范围表示function set。最好的function也只能从function set里选出来。
而一个简单的model的space很小,又可能没有包含target,所以无论如何sample,平均起来都不可能得到target。
复杂的model,space很大,他的function set包含了target,只不过可能无法找出那个target,因为每次给的training data不一样,如果散布在target附近的,则只要平均起来就可能得到fˉ\bar ffˉ
如下图,其中
简单model:大bias,小variance
复杂model:小bias,大variance
error来自bias(红线)和variance(绿线),蓝色线是二者共同造成的影响
- error来自于variance很大:overfitting 过拟合(太复杂了)
- error来自于bias很大:underfitting 欠拟合(太简单了)
如何知道目前是bias大还是variance大?
- 如果你的模型没有办法fit你和你的training example(少数的几个training data点),代表bias大,underfitting了。
- 如果在training data上得到一个小的error,而在testing data上却得到一个error,说明这个model的variance大,说明overfitting了
解决方法:
bias大:
- 要redesign一个新model,有可能model根本没有包含target f^\hat{f}f^,所以可以考虑加入更多的feature、更高的次数。(增加data没有效果)
variance大:
- 增加data数量,数据集增强,很有效控制variance过大的方法
- Regularization正则化,在loss function后加一项
在bias和variance中权衡,选择一个模型可以平衡两种error,使得总error最小。
但是不可以做的事情是:利用自己手上已有的testing set来选择最好的模型的时候,选出来的模型在真正的testing data上,未必是最好的模型
testing set有自己的bias:数据采集的偏差。除非你的testing set比较好地代表了总体分布,否则实际使用时Err一定会变差
正确做法: 交叉验证cross validation
若不相信某次分trin和test的数据集,可以分好多次,即,N折交叉验证N-fold Cross Validation
把最好的效果的model用在最后的testing test
【李宏毅机器学习】Basic Concept 基础概念(p4) 学习笔记相关推荐
- 【李宏毅机器学习】Transformer(p23) 学习笔记
老二次元了... 文章目录 Transformer Sequence 用CNN取代RNN Self-Attention Self-attention is all you need. 流程 Self- ...
- AI Studio 飞桨 零基础入门深度学习笔记1-深度学习的定义
AI Studio 飞桨 零基础入门深度学习-笔记 人工智能.机器学习.深度学习的关系 机器学习 机器学习的实现 机器学习的方法论 案例:牛顿第二定律 确定模型参数 模型结构介绍 深度学习 神经网络的 ...
- AI Studio 飞桨 零基础入门深度学习笔记2-基于Python编写完成房价预测任务的神经网络模型
AI Studio 飞桨 零基础入门深度学习笔记2-基于Python编写完成房价预测任务的神经网络模型 波士顿房价预测任务 线性回归模型 线性回归模型的神经网络结构 构建波士顿房价预测任务的神经网络模 ...
- 【PM学习笔记】酸梅干超人 - 零基础学Figma学习笔记
原视频链接: B站视频 零基础学Figma学习笔记 心得体会 第1课 - 苹果商店页设计 第2课 - 线性图标设计 第3课 - 面性图标设计 第4课 玻璃拟态页设计 第5课 样式组件功能入门 第6课 ...
- AI Studio 飞桨 零基础入门深度学习笔记6.3-手写数字识别之数据处理
AI Studio 飞桨 零基础入门深度学习笔记6.3-手写数字识别之数据处理) 概述 前提条件 读入数据并划分数据集 扩展阅读:为什么学术界的模型总在不断精进呢? 训练样本乱序.生成批次数据 校验数 ...
- P4学习笔记(二)一个简单P4交换机实现
P4学习笔记(一)初始P4 P4学习笔记(二)一个简单P4交换机实现 文章目录 1. 架构模型 2.预定义模块详细描述 2.1 Arbiter 模块 2.2 Parser runtime 模块 2.3 ...
- AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍
AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍 深度学习框架 深度学习框架优势 深度学习框架设计思路 飞桨开源深度学习平台 飞桨开源深度学习平台全景 框架和全流程工具 模 ...
- JAVA基础与高级学习笔记
JAVA基础与高级学习笔记 /记录java基础与高级,除了较简单的内容,没有必要记录的没有记录外,其余的都记录了/ java初学者看这一篇就够了,全文 6万+ 字. JAVA基础 java会出现内存溢 ...
- Docker基础下(学习笔记)
5. Docker 容器数据卷 5.1 容器数据卷是什么 先来看看Docker的理念: 将运用与运行的环境打包形成容器运行 ,运行可以伴随着容器,但是我们对数据的要求希望是持久化的. 容器之间希望有可 ...
最新文章
- redis10---Setbit 的实际应用
- 未能加载文件或程序集“SqlServerDal”或它的某一个依赖项。系统找不到指定的文件。...
- Winform中怎样根据Name获取同窗体的控件
- 【Angular】MVVM
- spring的各种注解的作用-持续更新中
- Git 的安装和创建版本库 。
- 来到博客园 就要好好记录 分享技术
- C#的变迁史 - C# 4.0 之线程安全集合篇
- 积木机器人拼装图恐龙图纸_机器人积木模型--恐龙积木拼装对战游戏 v App Storu...
- 变电站无线测温系统的特点与应用
- 解决Intellij IDEA 一直在indexing....,导致idea很卡,无法操作
- vue3里面的watch
- input限制只能输入数字,限制输入数字长度或者大小
- easyexcel 在 设置标题_EasyExcel,让excel导入导出更加简单
- jquery获取父元素下的第n个子元素
- torchaudio音频基础知识学习
- QQ机器人官方插件加载配置方法【beta2版本】
- halcon闭合轮廓线
- 教你使用内嵌chatGPT的新必应(bing)
- 情感溢出:读《浣溪沙》