机器学习基石(二)

2017-12-08  本文已影响0人  宣的写字台

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

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

三 机器是如何学习的

1线性回归

1.1 y

1.2 err:最小平方误差

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

1.3.1先矩阵化

1.3.2再求梯度

如图,

Ein是连续、可微的凸函数

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

1.3.4由此得到线性回归算法

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

1.4.1列式

1.4.2作图:

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衡量余数,

1.4.4作曲线图,

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

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

1.5 PK线性分类

1.5.1线性回归更好做

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

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

2逻辑回归

2.1 y

2.2 err(交叉熵错误)

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

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

2.3.1梯度

2.3.2下降

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

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

泰勒展开

方向v的选择:

步长η的选择:

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

2.3.3逻辑回归算法

2.4随机梯度下降

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

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

2.5 PK线性分类、线性回归

2.5.1三者总览

其中,

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

其中,VC指的是

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

3多类别分类

3.1把二元分类器组合起来

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

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

3.3 OVA分解算法

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

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

4.非线性转换

4.1圆形可分和线性可分

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

4.2一般二次假说集

4.3非线性转换的步骤

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

4.4Φ

4.4.1基于领域知识

4.4.2计算/存储代价

4.4.3模型复杂度代价

采用太高维的转换,可能造成过拟合。 

4.5线性优先

四 怎样让机器学得更好

1不够好与过拟合

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

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

1.1.1 10维有杂讯

D=F+noise:

H:

结果:

1.1.2 50维无杂讯

D:

H:

结果:

关于deterministic noise

1.1.3结论:开慢点

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

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

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

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

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

2.2数据清洗/剪枝

2.3数据提示

2.4正则化

2.4.1如何回溯?

2.4.1.1硬限制

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

2.4.1.2故放松限制

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

2.4.1.3软限制

这样的限制存在一些不精确的问题,但是可以解了

2.4.2软限制求解

2.4.2.1矩阵化

2.4.2.2几何意义

条件的几何意义:

对梯度下降的限制:

在球内可以自由地沿梯度下降方向滚,到达球面时只能沿着球的切线方向滚(不能滚出球面) 当切线方向与负梯度方向垂直时,得到的Wreg就是最优解。

2.4.3用拉格朗日乘数法求解

其中,其中λ的系数2/N是为了化简,解析解中ZTZ半正定,λ>0,则ZTZ+λI为正定矩阵,必可逆

2.4.4等效的无条件问题

有条件问题限制C的大小,等效的无条件问题用λ控制惩罚

2.4.4.1λ的效果

2.4.4.2勒让德多项式

假设一个点时Q维的,每一维都∈[-1,1], 如果按传统多项式来做,则这个点的高维部分需要更大的系数来描述才能发挥作用 如果按勒让德多项式来做,则这个点的高维部分能跟低维部分产生一致的影响力

2.4.5正则化后的VC bound

通过λ控制Eaug,间接地通过C限制了Ein,做好了VC bound 

2.4.5.1一种解释

2.4.5.2另一种解释

2.4.6实际应用

2.4.6.1 Regulizer的选择

L2regulizer做出来的optimize和原来并没什么不同,只是为了回溯。 L1regulizer可以让结果更平滑(去噪))

2.4.6.2λ的选择

λ通过validation(验证)的方式来选择。

2.5验证

2.5.1原因

2.5.2基于验证集的验证过程

训练集喂给A得到g-

2.5.3验证集的大小

2.5.3.1对Eout的影响

2.5.3.2对Eval≈Eout的影响

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

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

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

2.5.4留一法交叉验证

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

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

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

数学证明如下:

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

2.5.4.1优点

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

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

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

2.5.4.2缺点

2.5.4.3改进

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

五 总结

1三个概念

2 3个bound

3 3个线性模型

4 3个基本工具

5 3个原则

5.1奥卡姆剃刀

5.2抽样偏差

5.3数据窥探

上一篇下一篇

猜你喜欢

热点阅读