李宏毅老师机器学习课程笔记_ML Lecture 1: 回归案例研究
引言:
最近开始学习“机器学习”,早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程。今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子加深学生的印象。
视频链接(bilibili):李宏毅机器学习(2017)
另外已经有有心的同学做了速记并更新在github上:李宏毅机器学习笔记(LeeML-Notes)
所以,接下来我的笔记只记录一些我自己的总结和听课当时的困惑,如果有能够帮我解答的朋友也请多多指教。
1、回归问题的应用
回归问题因为主要输出的是数字,所以可以有以下应用:
- 股票市场预测:输入历史股票数据,预测第二天大盘点位
- 自动驾驶:输出的是方向盘应该转动的角度
- 推荐系统:输出购买者购买某商品或阅读某文章的可能性
2、解决回归问题需要了解的一些概念
以宝可梦训练后的CP值(战斗力数值)预测为例,y=b+wxcp这组线性函数就是模型(model),xi 是特征(feature),wi 是权重(weight),b是偏差(bias)
3、宝可梦cp预测项目的分析步骤
- 根据数据选择模型:选择线性模型
- 评估模型中函数的好坏:根据10只宝可梦的训练数据计算出估测误差loss function(如图3)
- 选出最好的函数:即第二步中可以使得loss function中数值最小的函数。这里李老师推荐方法为gradient descent(梯度下降法),因为它是一种对可微函数取最小值的通用解决方案。
4、Gradient descent(梯度下降法)
以比较简单的损失函数为例(如图5),梯度下降法就是对该函数的x坐标求导,即曲线在该点的斜率,如果斜率为负,需要向右加载,反之亦然,知道斜率为零,找到极小值或局部最优解(Local optimal)。每次加载的距离被称为步长或学习率。
5、梯度下降法最害怕的事情
如图6左侧,如果损失函数像左侧那样,那么梯度下降法能不能找到全局的最优解就是考验“人品”的事情,但幸运的是,对于线性回归问题,它的损失函数都是凸函数(convex),也就是不会出现像图5或图6左侧那种情况,它只有最小值,没有局部的极小值。
6、如何让损失值降到最小?
损失函数取值最小,很多人第一感觉就是增加函数的复杂度。图7到图10分别是二元至五元方程的模型,但可以看出虽然在训练集上损失值变得较小,但测试集上却没有这种趋势,甚至五元方程的模型还表现出了很荒谬的结果。
7、过拟合
上面出现那种荒谬结果的现象被称为过拟合。
8、导入更多数据后结果如何?
导入更多数据后发现,很多宝可梦的点并没有落在预测的模型函数曲线上,推测在起初建模的时候忽略了一些重要的特征(feature),当不同类型的宝可梦训练的时候,成长曲线是不同的。
增加特征以后如何构建线性模型?见图14。
9、如何防止过拟合?
需要重新定义损失函数,有一种方法叫正则化。
因为过拟合往往是因为原有模型空间过大,而正则化就是一种控制模型空间的方法。
李宏毅老师机器学习课程笔记_ML Lecture 1: 回归案例研究的更多相关文章
- 李宏毅老师机器学习课程笔记_ML Lecture 3-1: Gradient Descent
引言: 这个系列的笔记是台大李宏毅老师机器学习的课程笔记 视频链接(bilibili):李宏毅机器学习(2017) 另外已经有有心的同学做了速记并更新在github上:李宏毅机器学习笔记(LeeML- ...
- 李宏毅老师机器学习课程笔记_ML Lecture 2: Where does the error come from?
引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...
- 李宏毅老师机器学习课程笔记_ML Lecture 1: ML Lecture 1: Regression - Demo
引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...
- 李宏毅老师机器学习课程笔记_ML Lecture 0-2: Why we need to learn machine learning?
引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...
- 李宏毅老师机器学习课程笔记_ML Lecture 0-1: Introduction of Machine Learning
引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...
- Andrew Ng机器学习课程笔记--week3(逻辑回归&正则化参数)
Logistic Regression 一.内容概要 Classification and Representation Classification Hypothesis Representatio ...
- Andrew 机器学习课程笔记
Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...
- Andrew Ng机器学习课程笔记(四)之神经网络
Andrew Ng机器学习课程笔记(四)之神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365730.html 前言 ...
- 【读书笔记与思考】Andrew 机器学习课程笔记
Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...
随机推荐
- 分析Java中的length和length()
在不适用任何带有自动补全功能的IDE的情况下,我们怎么获取一个数组的长度?如何获取字符串的长度? 这里我们先举用实例去分析一下:int[] arr=new int[3]:System.out.prin ...
- nGrinder 介绍与安装
nGrinder是基于Grinder开源项目,但由NHN公司的nGrinder开发团队进行了重新设计和完善(所以叫做nGrinder). 它是由一个controller和连接它的多个agent组成,用 ...
- 内核融合:GPU深度学习的“加速神器”
编者按:在深度学习"红透"半边天的同时,当前很多深度学习框架却面临着共同的性能问题:被频繁调用的代数运算符严重影响模型的执行效率. 本文中,微软亚洲研究院研究员薛继龙将为大家介绍 ...
- 金矿还是大坑 VR创业真有那么美好?
VR创业真有那么美好?"> 近段时间,一个段子在疯狂流传:彩票中奖的1000万,其实是存放在银行里,而彩民每次花两块钱买彩票,其实就是去输一次密码,只要够坚持,总会取出那1000万-- ...
- Design Patterns | 01 为什么要尽早掌握设计模式
标题:Design Patterns | 01 为什么要尽早掌握设计模式 链接: 标签:设计模式 摘要:设计模式是前人经验的总结,教大家如何写出可扩展.可读.可维护的高质量代码.设计模式与日常工作中的 ...
- PHP文件上传 (以上传txt文件为例)
1.前端代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <ti ...
- Sentinel基于Apollo的持久化改造
Sentinel基于Apollo的持久化改造 sentinel默认是将用户在dashboard中编辑过的流控信息保存在内存中,所以在重启后,所有之前配置过的流控规则也就不见了.但是sentinel给用 ...
- 三年前端,面试思考(头条蚂蚁美团offer)
小鱼儿本人985本科,软件工程专业,前端.工作三年半,第一家创业公司,半年.第二家前端技术不错的公司,两年半.第三家,个人创业半年.可以看出,我是个很喜欢折腾的人,大学期间也做过很多项目,非常愿意参与 ...
- SpringBoot整合Mybatis对单表的增、删、改、查操作
一.目标 SpringBoot整合Mybatis对单表的增.删.改.查操作 二.开发工具及项目环境 IDE: IntelliJ IDEA 2019.3 SQL:Navicat for MySQL 三. ...
- js 随机产生100个0~1000之间的整数
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...