机器学习基石(二)

《机器学习基石》是国立台湾大学林轩田讲授的一门课程,课程的续集是《机器学习技法》。《机器学习基石》是网上热荐的一门机器学习课程,相关资源可以在youtube找到,也可在评论区索要云盘链接。本文主要是我学完一遍基石&技法后的笔记梳理,如果存疑请以原课程讲授内容为准,欢迎讨论~[注]本文仅适用于帮助复习,不适用于代替视频课程。

基石分为4个部分,分别为什么时候机器能够学为什么机器能够学习,机器是如何学习的,怎样让机器学得更好,什么时候机器能够学习?本文主要梳理后两部分。

三 机器是如何学习的

1线性回归

1.1 y


机器学习基石(二)_第1张图片

1.2 err:最小平方误差


机器学习基石(二)_第2张图片

1.3求最小平方错误的解析解

1.3.1先矩阵化


机器学习基石(二)_第3张图片

1.3.2再求梯度

如图,


机器学习基石(二)_第4张图片

Ein是连续、可微的凸函数


机器学习基石(二)_第5张图片

1.3.3令梯度为0,得到解析解


机器学习基石(二)_第6张图片

1.3.4由此得到线性回归算法


机器学习基石(二)_第7张图片

1.4线性回归真的在学习吗?(Ein会很小,Ein=Eout?)

1.4.1列式


机器学习基石(二)_第8张图片


机器学习基石(二)_第9张图片

1.4.2作图:


机器学习基石(二)_第10张图片

y:n维,WLin:d+1维,y^=XWLin,则y^是X的线性组合,y^落在X展开的空间内

帽子矩阵H希望y-y^最小那就要求y-y^垂直于span,此时y^就是y在span上的投影

claim给的公式对数学感兴趣的话可以证明。

1.4.3用noise衡量余数,



机器学习基石(二)_第11张图片

1.4.4作曲线图,


机器学习基石(二)_第12张图片

其中Eout的式子推导过程类似Ein,感兴趣可以推导。

故,当N够大时Ein真的会很小,且=Eout

1.5 PK线性分类

1.5.1线性回归更好做


机器学习基石(二)_第13张图片

1.5.2好的线性回归可以保证好的线性分类


机器学习基石(二)_第14张图片


机器学习基石(二)_第15张图片

1.5.3可以用线性回归做分类问题的基础


机器学习基石(二)_第16张图片

2逻辑回归

2.1 y


机器学习基石(二)_第17张图片


机器学习基石(二)_第18张图片

2.2 err(交叉熵错误)


机器学习基石(二)_第19张图片

由最大化似然,到最小化交叉熵:


机器学习基石(二)_第20张图片

2.3最小交叉熵错误的梯度下降解

2.3.1梯度


机器学习基石(二)_第21张图片

2.3.2下降

逻辑回归的梯度比线性回归(如下图)复杂得多,


难求解析解。故,采用迭代优化的方法,


机器学习基石(二)_第22张图片

泰勒展开


机器学习基石(二)_第23张图片

方向v的选择:


机器学习基石(二)_第24张图片

步长η的选择:


机器学习基石(二)_第25张图片


机器学习基石(二)_第26张图片

图中紫η=红η*梯度大小,是梯度大小的一个单调函数

2.3.3逻辑回归算法


机器学习基石(二)_第27张图片

2.4随机梯度下降


机器学习基石(二)_第28张图片


其中,n是一个随机点。θ(…)(…)是一个该点梯度的相反数。

形象上,批量梯度是针对所有点都下降的方向(径直向谷底滚下去),而随机梯度是针对某一个点下降的方向(盘旋着向谷底滚下去),最终它们都能到达局部最优解,但随机梯度下降更简单、好算。

2.5 PK线性分类、线性回归

2.5.1三者总览


机器学习基石(二)_第29张图片

其中,



机器学习基石(二)_第30张图片

2.5.2好的逻辑回归可以保证好的线性分类


机器学习基石(二)_第31张图片


机器学习基石(二)_第32张图片

其中,VC指的是


机器学习基石(二)_第33张图片

2.5.3可以用逻辑回归做分类问题的基础(比线性回归更好)


机器学习基石(二)_第34张图片

3多类别分类

3.1把二元分类器组合起来


机器学习基石(二)_第35张图片

3.2将上例分类器该为软性二元分类器(用逻辑回归来做)


机器学习基石(二)_第36张图片

软性分类器中,颜色越深代表概率越大。组合器选择概率最大的表达。

3.3 OVA分解算法


机器学习基石(二)_第37张图片

[注]第一步的k个任务可以分给k个机器做。

3.4 OVO算法(解决数据不平衡问题)


机器学习基石(二)_第38张图片


机器学习基石(二)_第39张图片

4.非线性转换

4.1圆形可分和线性可分


机器学习基石(二)_第40张图片


机器学习基石(二)_第41张图片

所以说z线性可分不代表x圆形可分,可能是椭圆可分等。

4.2一般二次假说集


机器学习基石(二)_第42张图片

4.3非线性转换的步骤


机器学习基石(二)_第43张图片

其中包含两个变量:Φ和A

4.4Φ

4.4.1基于领域知识


机器学习基石(二)_第44张图片

4.4.2计算/存储代价


机器学习基石(二)_第45张图片

4.4.3模型复杂度代价


机器学习基石(二)_第46张图片
采用太高维的转换,可能造成过拟合。 

4.5线性优先



机器学习基石(二)_第47张图片

四 怎样让机器学得更好

1不够好与过拟合


机器学习基石(二)_第48张图片

过拟合的原因:过度的dvc(开太快),杂讯(路不平),资料有限(路况了解有限)

1.1 “速度”的影响:两个案例

1.1.1 10维有杂讯

D=F+noise:


机器学习基石(二)_第49张图片

H:


机器学习基石(二)_第50张图片

结果:


机器学习基石(二)_第51张图片


机器学习基石(二)_第52张图片

1.1.2 50维无杂讯

D:


机器学习基石(二)_第53张图片

H:


机器学习基石(二)_第54张图片

结果:


机器学习基石(二)_第55张图片

关于deterministic noise


机器学习基石(二)_第56张图片

1.1.3结论:开慢点

有随机/确定杂讯时,受限的learner都要做的比过拟合的learner好

1.2“路不平”“路况了解程度”的影响:随机/确定杂讯&数据量对过拟合程度的影响


机器学习基石(二)_第57张图片

假设f是10次方,则Qf=10

2所以怎样让机器学得更好呢?


机器学习基石(二)_第58张图片

2.1开慢点:从简单模型开始(线性优先)1.1已证

2.2数据清洗/剪枝


机器学习基石(二)_第59张图片

2.3数据提示


机器学习基石(二)_第60张图片

2.4正则化

2.4.1如何回溯?

2.4.1.1硬限制


机器学习基石(二)_第61张图片

硬限制的限制太强了,H10做出来的和H2做出来的效果一样

2.4.1.2故放松限制


机器学习基石(二)_第62张图片

这样做出来的H10比H2强,但又比H10弱,但是很难解出来。

2.4.1.3软限制


机器学习基石(二)_第63张图片
这样的限制存在一些不精确的问题,但是可以解了

2.4.2软限制求解


机器学习基石(二)_第64张图片

2.4.2.1矩阵化



2.4.2.2几何意义

条件的几何意义:


对梯度下降的限制:


机器学习基石(二)_第65张图片
在球内可以自由地沿梯度下降方向滚,到达球面时只能沿着球的切线方向滚(不能滚出球面) 当切线方向与负梯度方向垂直时,得到的Wreg就是最优解。

2.4.3用拉格朗日乘数法求解


机器学习基石(二)_第66张图片
其中,其中λ的系数2/N是为了化简,解析解中ZTZ半正定,λ>0,则ZTZ+λI为正定矩阵,必可逆

2.4.4等效的无条件问题


机器学习基石(二)_第67张图片
有条件问题限制C的大小,等效的无条件问题用λ控制惩罚

2.4.4.1λ的效果


机器学习基石(二)_第68张图片

2.4.4.2勒让德多项式


机器学习基石(二)_第69张图片
假设一个点时Q维的,每一维都∈[-1,1], 如果按传统多项式来做,则这个点的高维部分需要更大的系数来描述才能发挥作用 如果按勒让德多项式来做,则这个点的高维部分能跟低维部分产生一致的影响力

2.4.5正则化后的VC bound


机器学习基石(二)_第70张图片
通过λ控制Eaug,间接地通过C限制了Ein,做好了VC bound 

2.4.5.1一种解释


机器学习基石(二)_第71张图片

2.4.5.2另一种解释


机器学习基石(二)_第72张图片

2.4.6实际应用

2.4.6.1 Regulizer的选择


机器学习基石(二)_第73张图片
L2regulizer做出来的optimize和原来并没什么不同,只是为了回溯。 L1regulizer可以让结果更平滑(去噪))


机器学习基石(二)_第74张图片

2.4.6.2λ的选择


机器学习基石(二)_第75张图片
λ通过validation(验证)的方式来选择。

2.5验证

2.5.1原因


机器学习基石(二)_第76张图片

2.5.2基于验证集的验证过程


机器学习基石(二)_第77张图片
训练集喂给A得到g-

2.5.3验证集的大小

2.5.3.1对Eout的影响


机器学习基石(二)_第78张图片

2.5.3.2对Eval≈Eout的影响


机器学习基石(二)_第79张图片

我们希望small K,这样训练集做出来的g-和整个数据集做出来的g不会差太远

同时又希望large K,这样验证集(可以看成是测试集的一部分)验出来的E才和测试集测出来的E不会差太远

只有Eout和Eval够像且最后回传的g和g-够像,小的Eval(g-)才能保证小的Eout(g)

2.5.4留一法交叉验证


机器学习基石(二)_第80张图片

留一法:每次只去掉一个训练点保证了训练集足够大,每次的g-和实际的g不会差太多

交叉验证:每个点都留一遍取平均保证了验证集足够大,平均验证结果和实际测试结果接近

最终Eloocv(g-)≈Eout(g)

数学证明如下:


机器学习基石(二)_第81张图片

Eloocv(g-)的期望值= Eout(g-)的期望值≈Eout(g)的期望值

2.5.4.1优点


机器学习基石(二)_第82张图片

图中,Ecv≈Eout(差距<0.01)

基于Ein选择会使用较高的feature转换(高维曲线)从而使Ein=0,过拟合

而基于Ecv选择会使用适中的feature转换,图中#=5或7的位置,做出来比Ein好

2.5.4.2缺点


机器学习基石(二)_第83张图片

2.5.4.3改进


机器学习基石(二)_第84张图片

2.5.5做validation不一定会花更多时间


机器学习基石(二)_第85张图片

五 总结

1三个概念


机器学习基石(二)_第86张图片

2 3个bound


机器学习基石(二)_第87张图片

3 3个线性模型


机器学习基石(二)_第88张图片

4 3个基本工具


机器学习基石(二)_第89张图片

5 3个原则


5.1奥卡姆剃刀


机器学习基石(二)_第90张图片

5.2抽样偏差


机器学习基石(二)_第91张图片

5.3数据窥探


机器学习基石(二)_第92张图片

你可能感兴趣的:(机器学习基石(二))