没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【第1讲】 机器学习的动机与应用 【第2讲】 监督学习应用-线性回归 【第3讲】 线性回归的概率解释、局部加权回归、逻辑回归 【第4讲】 牛顿法、一般线性模型 【第5讲】 生成学习算法、高斯判别分析、朴素贝叶斯算法 【第6讲】 事件模型、函数间隔与几何间隔 【第7讲】 最优间隔分类器、拉格朗日对偶、支持向量机 【第8讲】 核方法、序列最小优化算法 【第9讲】 经验风险最小化 【第10讲】 交叉验证、特征选择 【第11讲】 贝叶斯统计、机器学习应用建议 【第12讲】 $k$-means算法、高斯混合模型及最大期望算法 【第13讲】 最大期望算法及其应用、因子分析模型 【第14讲】 因子分析的EM算法、主成分分析 【第15讲】 PCA的奇异值分解、独立成分分析 【第16讲】 马尔可夫决策过程 【第17讲】 解连续状态的MDP 【第18讲】 线性二次调节 【第19讲】 微分动态规划及线性二次型高斯 【第20讲】 策略搜索算法
资源推荐
资源详情
资源评论










notes-LSJU-machine-learning (/github/zlotus/notes-LSJU-machine-learning/tree/master)
/ ReadMe.ipynb (/github/zlotus/notes-LSJU-machine-learning/tree/master/ReadMe.ipynb)
机器学习笔记
简介
作者:子实
机器学习笔记,使用 jupyter notebook (ipython notebook) 编写展示。
Github 加载 .ipynb 的速度较慢,建议在 Nbviewer (http://nbviewer.jupyter.org/github/zlotus/notes-LSJU-machine-learning/blob/master/ReadMe.ipynb?
flush_cache=true) 中查看该项目。
目录
来自斯坦福网络课程《机器学习》的笔记,可以在斯坦福大学公开课:机器学习课程 (http://open.163.com/special/opencourse/machinelearning.html)观
看。
根据视频内容,对每一讲的名称可能会有所更改(以更好的体现各讲的教学内容)。
【第1讲】 机器学习的动机与应用(主要是课程要求与应用范例,没有涉及机器学习的具体计算内容)
【第2讲】 监督学习应用-线性回归 (chapter02.ipynb)
【第3讲】 线性回归的概率解释、局部加权回归、逻辑回归 (chapter03.ipynb)
【第4讲】 牛顿法、一般线性模型 (chapter04.ipynb)
【第5讲】 生成学习算法、高斯判别分析、朴素贝叶斯算法 (chapter05.ipynb)
【第6讲】 事件模型、函数间隔与几何间隔 (chapter06.ipynb)
【第7讲】 最优间隔分类器、拉格朗日对偶、支持向量机 (chapter07.ipynb)
【第8讲】 核方法、序列最小优化算法 (chapter08.ipynb)
【第9讲】 经验风险最小化 (chapter09.ipynb)
【第10讲】 交叉验证、特征选择 (chapter10.ipynb)
【第11讲】 贝叶斯统计、机器学习应用建议 (chapter11.ipynb)
【第12讲】 -means算法、高斯混合模型及最大期望算法 (chapter12.ipynb)
【第13讲】 最大期望算法及其应用、因子分析模型 (chapter13.ipynb)
【第14讲】 因子分析的EM算法、主成分分析 (chapter14.ipynb)
【第15讲】 PCA的奇异值分解、独立成分分析 (chapter15.ipynb)
【第16讲】 马尔可夫决策过程 (chapter16.ipynb)
【第17讲】 解连续状态的MDP (chapter17.ipynb)
【第18讲】 线性二次调节 (chapter18.ipynb)
【第19讲】 微分动态规划及线性二次型高斯 (chapter19.ipynb)
【第20讲】 策略搜索算法 (chapter20.ipynb)
【参考笔记1】 线性代数复习及参考
【参考笔记2】 概率论复习 (sn02.ipynb)
【参考笔记3】 MATLAB入门
【参考笔记4】 凸优化概述1
【参考笔记5】 凸优化概述2
【参考笔记6】 隐式马尔可夫模型 (sn06.ipynb)
【参考笔记7】 多元高斯分布 (sn07.ipynb)
【参考笔记8】 更多关于多元高斯分布的知识 (sn08.ipynb)
【参考笔记9】 高斯过程
笔记格式借鉴Jin Li (https://github.com/lijin-THU/)的机器学习笔记 (https://github.com/lijin-THU/notes-machine-learning)。
k

第二讲:监督学习应用-线性回归
我们从监督学习的一些例子开始讲起。假设我们有一个经调查得到的数据集,内容是关于俄勒冈州波特兰
地区 间出租公寓的面积与价格之间的关系表:
我们可以画出一张关于面积-价格的图像:
有了这样的数据,我们怎样才能预测波特兰地区其他出租公寓的价格,比如推导出一个从面积得出价格的
函数。
为了今后的课程书写方便,我们约定一些未来将要用到的符号:
使用 来表示输入变量,也称作输入特征(feature),即本例中的实用面积(living area);
使用 来表示输入变量或目标变量(target),也就是我们尝试做出预测的值;
一对 称作一个训练样本(training example);
用于做学习的数据集,也就是由 个 组成的列表 ,称作
训练集(training set);
需要注意的是,标记中的上标 仅用于在训练集中标识训练样本的序号,并不表示指数。
表示输入值空间, 表示输出值空间,在本例中 (即都是一维实向量空间)。
更加正式的描述监督学习问题:我们的目标是,通过一个给定的训练集,训练一个函数 ,如
果 能够通过较为准确的预测而得到结果 ,则我们称这个 是“好的”。因为一些历史原因,函数 被
称为假设(hypothesis),监督学习用流程图表示如下:
47
living
area
(
fee
)
t
2
2104
1600
2400
1416
3000
⋮
price
(1000$
s
)
400
330
369
232
540
⋮
x
(
i
)
y
(
i
)
( ),
x
(
i
)
y
(
i
)
m
( ),
x
(
i
)
y
(
i
)
{(
,
)
;
i
= 1,
⋯
,
m
}
x
(
i
)
y
(
i
)
(
i
)
X Y X
=
Y
=
ℝ
h
:
X
→
Y
h
(
x
)
y
h
(
x
)
h

当我们尝试预测的目标变量是连续的(就像我们公寓租金的例子一样),我们就说这是一个回归问题
(regression problem)。
当 只能取几个分立的值(例如已知房间面积大小,我们需要判断这是一栋房屋还是一套公寓)时,我们
称其为分类问题(classification problem)。
第一部分:线性回归(Linear Regression)
为了让例子更有趣,我们丰富一下数据集,在已知条件里再加上卧室的数量:
此时 是一个在 向量空间中的二维向量,即 表示第 个房间样本的实用面积, 表示第 个房间样本
的卧室的数量。(通常在设计学习算法时,我们都是自行决定选取哪些特征。假设我们在其他地方做房屋
价格调研,那么我们可能会将“是否每个房间都有壁炉”、“卫生间数量”等其他因素纳入输入特征。)
要实现一个监督学习算法,我们必须确定函数(假设) 的形式,作为本课程的第一个例子,我们选择使
用一个简单的线性函数来逼近 :
在式子里的 叫做参数(或权重),用于参数化 的线性函数映射空间。在不产生混淆的情况下,
我们会省略 中的下标 ,简单记为 。在上式中我们省略了第一项中的 (即截距项),补
上这一项后有:
上式最右侧中的 和 都是向量, 代表输入向量中元素个数(不包含 )。
现在,有了训练集,我们应该如何选择(训练)参数 呢?其中一种合理的方法是使得计算出的 与真
实结果 尽量接近(至少对训练集中的已有数据做到尽量接近)。为了形式化这个“尽量接近”的问题,我们
定义一个关于 的函数,使其能够描述 与相应 间的差距,并称其为成本函数(cost
y
living
area
(
fee
)
t
2
2104
1600
2400
1416
3000
⋮
#
bedrooms
3
3
3
2
4
⋮
price
(1000$
s
)
400
330
369
232
540
⋮
x
ℝ
2
x
(
i
)
1
i
x
(
i
)
2
i
h
y
(
x
) = + +
h
θ
θ
0
θ
1
x
1
θ
2
x
2
θ
i
X
→
Y
(
x
)
h
θ
θ
h
(
x
) = 1
x
0
h
(
x
) = =
x
∑
i
=1
n
θ
i
x
i
θ
T
θ
x n x
0
θ
h
(
x
)
y
θ
h
( )
x
(
i
)
y
(
i
)

function):
以前见过线性回归的同学应该熟悉上式,这就是最小二乘回归模型中常见的最小二乘成本函数。随着课程
的进行,我们会发现最小二乘法仅是它所在的一族算法中的特例。
1. 最小均方法(LMS: Least mean squares algorithm)
我们需要选取合适的 以使得 取最小值。为了达到这种效果,我们可以使用一种搜索算法,算法起始
于某个关于 的“初始猜测值”,然后不断的修改 以使 减小,直到最终 收敛于使得 取最小处。特
别的,我们讲一下梯度下降(gradient descent)法:算法从某个初始的 起,不断更新
( 表示赋值,该赋值运算同时作用于所有的 )。赋值运算中的
称为学习速率,通常采用手动设置(learning rate,在本例中,它决定了我们“向下山走”时每一步的大
小,过小的话收敛太慢,过大的话可能错过最小值)。这是一种很自然的算法,每一步总是寻找使 下降
最“陡”的方向(就像找最快下山的路一样)。
为了实现这是算法,我们需要找出偏导数是什么。我们从最简单的情况入手,假设只有一个训练样本
,这样我们就可以忽略 式中的求和步骤:
训练集仅有一条数据的情况给了我们更新规则: 。
这条规则称为最小均方(LMS: Least mean squares)更新规则,也被称作Widrow-Hoff学习规则。这条
规则一些看上去很直观、自然的特征,比如更新的幅度与误差项 的大小呈正比。因此,
如果我们拿到一条训练向量,其目标量 与我们函数的预测值 非常接近,则在这条规则作用下,
函数的参数 只需要很小的调整;相反的,如果预测值与目标量误差较大,则会得到一个较大的参数调
整。
上面,我们使用仅含有一条训练样例的训练集推导出了LMS规则,我们需要将规则推广以适用于正常的训
练集,介绍两种方法:
一种方法是:
Repeat until convergence {
}
对于所有的 ,重复迭代 直到 收敛。
J
(
θ
) =
1
2
∑
i
=1
n
( ( )
−
)
h
θ
x
(
i
)
y
(
i
)
2
(J)
θ
J
(
θ
)
θ θ
J
(
θ
)
θ
J
(
θ
)
θ
:=
−
α J
(
θ
)
θ
j
θ
j
∂
∂
θ
j
:=
,
j
= 0,
⋯
,
n
θ
j
α
J
(
x
,
y
) (
J
)
J
(
θ
)
∂
∂
θ
j
=
∂
∂
θ
j
1
2
(
(
x
)
−
y
)
h
θ
2
= 2
⋅
(
(
x
)
−
y
)
⋅
(
(
x
)
−
y
)
1
2
h
θ
∂
∂
θ
j
h
θ
=
(
(
x
)
−
y
)
⋅
(
−
y
)
h
θ
∂
∂
θ
j
∑
i
=0
n
θ
i
x
i
=
(
(
x
)
−
y
)
h
θ
x
j
:= +
α
(
−
( )
)
θ
j
θ
j
y
(
i
)
h
θ
x
(
i
)
x
(
i
)
j
(
−
( )
)
y
(
i
)
h
θ
x
(
i
)
y
(
i
)
(
h
θ
x
(
i
)
θ
j
:= +
α
(
for
every
j
)
θ
j
θ
j
(
−
( )
)
∑
i
=1
m
y
(
i
)
h
θ
x
(
i
)
x
(
i
)
j
j
:= +
α
(
−
( )
)
θ
j
θ
j
∑
i
=1
m
y
(
i
)
h
θ
x
(
i
)
x
(
i
)
j
θ
j
∂
J
(
θ
)

从这个式子里容易看出,大括号中的求和过程就是 (在有 个训练样本时,观察 式)。所以,这
个方法其实就是对 原始的成本函数做了简单的梯度下降。该方法在每一步搜索“最陡方向”时都会遍历
整个训练集,所以也被称作批量梯度下降(batch gradient descent)。值得注意的是,梯度下降可以容
易的达到局部最小值,而且我们此处的优化问题也只有一个全局最优解(没有局部最小值)。因此,在本
例中,梯度下降总是收敛于全局最小值(当然学习速率 不能过大)。况且成本函数 确实是一个凸二次
函数(仅有一个全局最小值)。
图中的椭圆为某二次函数的等高线,同时也显示了梯度下降法从初始值 到最小值中间的轨迹。图
中的“×”标记了梯度下降过程中经过的一系列 值。
关于收敛,我们可以查看两侧迭代是否相差很多,如果相差无几则可以判断收敛;更常用的方法是检查
,如果这个值不再发生较大变化时,也可以判断收敛。关于找如何“找”最陡下山路径,其实求偏导本
身就已经给出了最陡路径。
我们运行批量梯度下降算法用 拟合“公寓租金”训练集,以求得根据面积预测价格的函数,最终得到
。当我们在最开始的“面积-价格”图中画出关于面积 的函数 时,有:
如果将卧室数量也纳入输入特征,则会得到 。这个结果也是通
过批量梯度下降求得。
∂
J
(
θ
)
∂
θ
j
m
(
J
)
J
(
θ
)
α
J
(48, 30)
θ
J
(
θ
)
θ
= 71.27, = 0.1345
θ
0
θ
1
x
(
x
)
h
θ
= 89.60, = 0.1392, =
−
8.738
θ
0
θ
1
θ
2
剩余157页未读,继续阅读
资源评论



千锤万击
- 粉丝: 5
- 资源: 10
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
