斯坦福大学机器学习第二课 “单变量线性回归”
斯坦福大学机器学习第二课“单变量线性回归(Linear regression with one variable)”
斯坦福大学机器学习第二课”单变量线性回归“学习笔记,本次课程主要包括7部分:
1) Model representation(模型表示)
2) Cost function(代价函数,成本函数)
3) Cost function intuition I(代价函数直观解释1)
4) Cost function intuition II(代价函数直观解释2)
5) Gradient descent(梯度下降)
6) Gradient descent intuition(梯度下降直观解释)
7) Gradient descent for linear regression(应用于线性回归的的梯度下降算法)
1) Model representation(模型表示)
回到第一课中的房屋价格预测问题, 首先它是一个有监督学习的问题(对于每个样本的输入,都有正确的输出或者答案),同时它也是一个回归问题(预测一个实值输出)。
训练集表示如下:
其中:
m = 训练样本的数目
x = “输入”变量,也称之为特征
y = “输出”变量,也称之为“目标”变量
对于房价预测问题,学习过程可用下图表示:
其中x代表房屋的大小,y代表预测的价格,h(hypothesis)将输入变量 x 映射到输出变量 y,如何表示h?
事实上Hypothesis可以表示成如下形式:
简写为 h(x),也就是带一个变量的线性回归或者单变量线性回归问题。
2) Cost function(代价函数,成本函数)
对于Hypothesis: hθ(x)=θ0+θ1x
θi 为参数
如何求θi?
构想: 对于训练集(x, y),选取参数θ0, θ1使得hθ(x)尽可能的接近y。
如何做呢?一种做法就是求训练集的平方误差函数(squared error function),Cost Function可表示为:
并且选取合适的参数使其最小化,数学表示如下:
3) Cost function intuition I(直观解释1)
直观来看,线性回归主要包括如下四大部分,分别是Hypothesis, Parameters, Cost Function, Goal:
这里作者给出了一个简化版的Cost function解释,也就是令θ0为0:
然后令θ1分别取1、0.5、-0.5等值,同步对比hθ(x)和J(θ0,θ1)在二维坐标系中的变化情况,具体可参考原PPT中的对比图,很直观。
4) Cost function intuition II(直观解释2)
回顾线性回归的四个部分,这一次不在对Cost Function做简化处理,这个时候J(θ0,θ1)的图形是一个三维图或者一个等高线图,具体可参考原课件。
可以发现,当hθ(x)的直线越来越接近样本点时,J(θ0,θ1)在等高线的图中的点越来越接近最小值的位置。
5) Gradient descent(梯度下降)
应用的场景之一-最小值问题:
对于一些函数,例如J(θ0,θ1)
目标: minθ0,θ1J(θ0,θ1)
方法的框架:
1、给θ0, θ1一个初始值,例如都等于0
2、每次改变θ0, θ1的时候都保持J(θ0,θ1)递减,直到达到一个我们满意的最小值;
对于任一J(θ0,θ1) , 初始位置不同,最终达到的极小值点也不同,例如以下两个例子:
梯度下降算法:
重复下面的公式直到收敛:
举例:
参数正确的更新过程如下(同步更新):
错误的更新过程如下:
6) Gradient descent intuition(梯度下降直观解释)
举例,对于一个简化的J(θ1)来说,无论抛物线的左边还是右边,在梯度下降算法下,θ1)都是保持正确的方向(递增或递减)
对于learning rate(又称为步长)来说:
如果α过小,梯度下降可能很慢;如果过大,梯度下降有可能“迈过”(overshoot)最小点,并且有可能收敛失败,并且产生“分歧”(diverge)
梯度下降可以使函数收敛到一个局部最小值,特别对于learning rate α是固定值的时候:
当函数接近局部最小值的时候,梯度下降法将自动的采取“小步子”, 所以没有必要随着时间的推移减小learning rate.
关于梯度下降算法,可以参考维基百科的介绍:http://zh.wikipedia.org/wiki/%E6%A2%AF%E5%BA%A6%E4%B8%8B%E9%99%8D%E6%B3%95
7) Gradient descent for linear regression(应用于线性回归的的梯度下降算法)
梯度下降算法:
线性回归模型:
J(θ0,θ1)对于θ0), θ1)求导,得:
在梯度下降算法中进行替换,就得到单变量线性回归梯度下降算法:
详细的图形举例请参考官方PPT,主要是在等高线图举例梯度下降的收敛过程,逐步逼近最小值点,其中一幅图说明:线性回归函数是凸函数(convex function),具有碗状(bowl shape)。
总结: 这里的梯度下降算法也称为”Batch” 梯度下降: 梯度下降的每一步都使用了所有的训练样本。
斯坦福大学机器学习第二课 “单变量线性回归”相关推荐
- Coursera公开课笔记: 斯坦福大学机器学习第二课“单变量线性回归(Linear regression with one variable)”
Coursera公开课笔记: 斯坦福大学机器学习第二课"单变量线性回归(Linear regression with one variable)" 发表于 2012年05月6号 由 ...
- 第二章 单变量线性回归-机器学习老师板书-斯坦福吴恩达教授
第二章 单变量线性回归 2.1 模型描述 2.2 代价函数 2.3 代价函数(一) 2.4 代价函数(二) 2.5 梯度下降 2.6 梯度下降知识点 2.7 线性回归的梯度下降 2.1 模型描述 2. ...
- Coursera公开课笔记: 斯坦福大学机器学习第一课“引言(Introduction)”
Coursera公开课笔记: 斯坦福大学机器学习第一课"引言(Introduction)" 注:这是我在"我爱公开课"上做的学习笔记,会在52opencours ...
- 斯坦福大学机器学习第一课“引言(Introduction)”
斯坦福大学机器学习第一课"引言(Introduction)" 一.机器学习概览 1)机器学习定义:机器学习是人工智能的一个分支,目标是赋予机器一种新的能力.机器学习的应用很广泛,例 ...
- 机器学习-代价函数(单变量线性回归)
机器学习-代价函数(单变量线性回归) 2.1函数表示 因为只含有一个特征/输入变量,所以这样的问题叫作单变量线性回归问题. 回归问题: 构建一个模型,也许是条直线,从这个数据模型上看,如果你朋友的房子 ...
- 吴恩达机器学习笔记 1单变量线性回归
机器学习 (小白通俗理解) 机器学习包括监督学习和无监督学习 监督学习 首先,监督学习,我们所给的数据集由正确答案组成,计算机根据正确数据集对未知样本进行结果预测 无监督学习 无监督学习,所给数据集并 ...
- 机器学习门户网站——单变量线性回归
线性回归的概念.在高中的数学书出现了. 给你一些样本点,怎样找出一条直线,使得最逼近这些样本点. 给出一个样例:如果 x 是房子面积,y是房子价格.确定一条直线须要theta0和theta1. 给出x ...
- 吴恩达机器学习(第二章)——单变量线性回归
第二章-单变量线性回归 文章目录 第二章-单变量线性回归 模型描述 代价函数 梯度下降 梯度下降的思想 梯度下降算法的公式 梯度下降的运动方式 线性回归的梯度下降 模型描述 在监督学习中我们有一个数据 ...
- 吴恩达机器学习(一)单变量线性回归(假设函数、代价函数、梯度下降)
目录 0. 前言 1. 假设函数(Hypothesis) 2. 代价函数(Cost Function) 3. 梯度下降(Gradient Descent) 学习完吴恩达老师机器学习课程的单变量线性回归 ...
最新文章
- 登录linux后台工具,linux后台进程管理工具-supervisor
- python学习笔记-5.18
- 在IT的世界里,分享是一种快乐.
- PMCAFF产品经理第一课 | 深圳站 现场集锦
- ustc小道消息20211220
- 三年经验前端社招——朴朴科技
- Codeforces Round #732 (Div. 1Div. 2)
- 广元南山隧道南河互通立交图_广元城区一隧道工程竣工时间已定,今后出行更加方便了!...
- 莫烦python博客_《莫烦Python》笔记 -- numpy部分
- 误区30日谈21-24
- 计算机系统-记录Bochs调试器几个常用命令
- 机器视觉:远心光学探秘
- 没有计算机基础可以学python-Python的学习,都需要具备哪些计算机基础知识?
- 如何使用JMeter来实现更大批量的并发的解决方案(即如何设置controller和Agent)
- 配置多台计算机之间ssh无密码登录的一种简便方法
- Java 平衡二叉树和AVL
- html实心向右三角形,css 如何在html页面上输出一个左三角形或右三角形呢?
- matlab误码率理论,PSK理论误码率与实际误码率MATLAB仿真程序
- C++多线程std::async、std::future、std::packaged_task、std::promise
- nofollow标签使用方法