4

机器学习(二)——分类与逻辑回归

 2 years ago
source link: http://antkillerfarm.github.io/ml/2016/08/02/Machine_Learning_2.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

机器学习(二)——分类与逻辑回归

2016-08-02

LMS算法(续)

一些研究认为大Batch训练有可能无法达到最小值。

https://mp.weixin.qq.com/s/7sS-r6jIF4GAhZicBfFGDA

通过代码原理教你搞懂SGD随机梯度下降、BGD、MBGD

https://www.graphcore.ai/posts/revisiting-small-batch-training-for-deep-neural-networks

Revisiting Small Batch Training for Deep Neural Networks

正规方程组算法

正规方程组(Normal Equations)算法,是传统的以解方程的方式求最小值的方法。

X=[(x(1))T(x(2))T⋮(x(m))T],y→=[(y(1))(y(2))⋮(y(m))]θ=(XTX)−1XTy→

这种解方程的算法,实际上就是通常所说的最小二乘法(Least squares)。

优点:解是精确解,而不是近似解。不是迭代算法,程序实现简单。不在意X特征的scale。比如,特征向量X={x1,x2}, 其中x1的range为1~2000,而x2的range为1~4,可以看到它们的范围相差了500倍。如果使用梯度下降方法的话,会导致椭圆变得很窄很长,而出现梯度下降困难,甚至无法下降梯度(因为导数乘上步长后可能会冲到椭圆的外面)的问题。

缺点:维数高的时候,矩阵求逆运算的计算量很大。

注:这里的精确解指的是优化问题的精确解,而不是上述方程组的精确解。有效方程个数超过未知数个数的方程组,被称为超定方程组。超定方程组没有代数解,只有最小二乘解。解与实际方程的误差,又被称作残差

回归问题在数学上和插值问题是同一类问题。除了线性插值(回归)之外,还有多项式插值(回归)问题。

这里以一元函数为例,描述一下多项式插值问题。

对于给定的k+1个点(x0,y0),…,(xk,yk),求f(x)=∑i=0kaixi经过给定的k+1个点。显然k=1的时候,是线性插值。

多项式插值算法有很多种,最经典是以下两种:

1.拉格朗日插值算法(the interpolation polynomial in the Lagrange form)

L(x)=∑j=0kyjlj(x),lj(x)=∏0≤m≤km≠jx−xmxj−xm

2.牛顿插值算法(the interpolation polynomial in the Newton form)

N(x)=∑j=0kajnj(x),nj(x)=∏i=0j−1(x−xi),aj=[y0,…,yj]

此外还有分段插值法,即将整个定义域分为若干区间,在区间内部进行线性插值或多项式插值。

欠拟合与过拟合

对于上图所示的6个采样点,采用线性回归时(左图),拟合程度不佳。如果采用二次曲线(中图)的话,效果就要好得多了。但也不是越多越好,比如五次曲线(右图)的情况下,虽然曲线完美的经过了6个采样点,但却偏离了实际情况——假设横轴表示房屋面积,纵轴表示房屋售价。

我们把左图的情况叫做欠拟合(Underfitting),右图的情况叫做过拟合(Overfitting)。

这里换个角度看:如果我们把上述多项式回归中的x,x2,…,xn看作是线性回归时的特征集的话,那么多项式回归就可以转化成为线性回归。

从中可以看出,欠拟合或过拟合实际上就是线性回归中的特征集选取问题。特征集选取不当,就会导致预测不准。

局部加权线性回归

局部加权线性回归(LWR,locally weighted linear regression)算法是一种对特征集选取不敏感的算法。它将公式2中的代价函数修改为:

(5)J(θ)=12∑i=0mω(i)(hθ(x(i))−y(i))2

其中,ω(i)被称为权重,它有多种选取方法,最常用的是:

ω(i)=exp⁡(−(x(i)−x)22τ2)

其中,τ被称为带宽(bandwidth)。实际上,这就是一个高斯滤波器。离采样点x越近,其权重越接近1。

回归分析和相关分析的区别

回归分析是找出x和y之间的关系,而相关分析是找出x的各个分量之间的关系,和y并没有关系。

分类与逻辑回归

结果集y的取值只有0和1的分类问题被称为二分类,其中0被称为negative class,1被称为positive class,也可用“-”和“+”来表示。

为了将线性回归的结果约束到[0,1]区间,我们将公式1修改为:

(6)hθ(x)=g(θTx)=11+e−θTx

公式6又被称为logistic function或sigmoid function。函数g(z)的图像如下所示:

事实上,任何[0,1]区间的平滑增函数,都可以作为g(z),但公式6的好处在于

(7)g′(z)=1(1+e−z)2e−z=1(1+e−z)(1−1(1+e−z))=g(z)(1−g(z))

评估逻辑回归(Logistic regression)的质量,需要用到最大似然估计(maximum likelihood estimator)方法(由Ronald Aylmer Fisher提出)。最大似然估计是在“模型已定,参数未知”的情况下,寻找使模型出现的概率最大的参数集θ的方法。显然,参数集θ所确定的模型,其出现概率越大,模型的准确度越高。

最大似然估计中采样需满足一个很重要的假设,就是所有的采样都是独立同分布的(independent and identically distributed,IID),即:

f(x1,…,xn;θ)=f(x1;θ)×⋯×f(xn;θ)

似然估计函数如下所示:

L(θ)=∏i=1mp(y(i)∣x(i);θ)

注:Ronald Aylmer Fisher,1890~1962,英国人,毕业于剑桥大学。英国皇家学会会员,皇家统计学会主席。尽管他被称作“一位几乎独自建立现代统计科学的天才”,然而他的本职工作是遗传学。他最大的贡献是利用统计分析的方法,揭示了孟德尔的遗传定律在达尔文自然选择学说中的作用,为后来遗传物质DNA的发现奠定了理论基础。
虽然对于Fisher来说,数理统计只是他研究工作的一个副产品,但他在1925年所著《研究工作者的统计方法》(Statistical Methods for Research Workers),其影响力超过了半个世纪,几乎当代所有自然科学和社会科学领域都在应用他所创立的理论。F分布就是以他的名字命名的。

Karl Pearson,1857~1936,英国人,毕业于剑桥大学。英国皇家学会会员。发现了χ2分布。

William Sealy Gosset,1876~1937,英国人,毕业于牛津大学。笔名Student,发现了Student’s t-distribution。

这三人被后人合称现代统计学的三大创始人。他们都不是博士,毕业后从事的职业,也不是数学。Fisher和Pearson研究遗传学,Gosset研究化学。可见,统计学的诞生,有着很强的应用属性。

我们假设:

P(y=1∣x;θ)=hθ(x),P(y=0∣x;θ)=1−hθ(x)

则该伯努利分布(Bernoulli distribution)的概率密度函数为:

p(y∣x;θ)=(hθ(x))y(1−hθ(x))1−y

其似然估计函数为:

L(θ)=p(y→∣X;θ)=∏i=1m(hθ(x(i)))y(i)(1−hθ(x(i)))1−y(i)

两边都取对数,得到对数化的似然估计函数:

ℓ(θ)=log⁡L(θ)=∑i=1my(i)log⁡hθ(x(i))+∑i=1m(1−y(i))log⁡(1−hθ(x(i)))∂ℓ(θ)∂θj=(y−hθ(x))xj

按照随机梯度下降法,计算迭代公式:

θj:=θj+α(y(i)−hθ(x(i)))xj(i)

可以看出,这和线性回归的迭代公式(公式4)完全相同。

g(z)还可以取以下函数(阶跃函数):

g(z)={1,z≥00,z<0

这时又被叫做感知器学习(perceptron learning)算法。

https://mp.weixin.qq.com/s/Y1_smqwmLPQzJ202JVq7zw

一文搞懂极大似然估计

https://mp.weixin.qq.com/s/MuV_kamfsUgcradKIaXGbw

逻辑回归(Logistic Regression)模型简介

https://mp.weixin.qq.com/s/YQ8l87EPw6EEhNy8MIU6Cg

区分识别机器学习中的分类与回归

http://blog.csdn.net/zengxiantao1994/article/details/72787849

极大似然估计详解

https://mp.weixin.qq.com/s/7_-a-suPO4qpAQVVJyz8BQ

概率论之概念解析:极大似然估计

https://mp.weixin.qq.com/s/vqYX1jpNsdw6F88a-CtZyw

什么是最大似然估计、最大后验估计以及贝叶斯参数估计

线性模型 vs. Logistic模型

线性回归模型的成立需满足以下几条假设:

Yi=β0+β1Xi+ϵiE(ϵi)=0Var(ϵi)=σ2Cov(ϵi,ϵj)=0ϵi∼Normal

二分类问题不满足第3条和第5条,但是有概率和为1的约束。

https://zhuanlan.zhihu.com/p/27149706

线性模型 vs. Logistic模型

指数类分布

线性回归和对数回归的迭代公式相同不是偶然的,它们都是指数类分布的特例。

指数类分布(exponential family distributions)的标准形式如下:

p(y;η)=b(y)exp⁡(ηTT(y)−a(η))

其中,η被称作自然参数(natural parameter)或正准参数(canonical parameter),T(y)被称作充分统计量(sufficient statistic)。

a(η)是对数配分函数(log partition function),它存在的目的是利用e−a(η)进行约束,以使:

或∑Yp(y;η)=1或∫Yp(y;η)=1

伯努利分布到指数类分布的变换过程如下:

p(y:ϕ)=ϕy(1−ϕ)1−y=exp⁡(log⁡(ϕy(1−ϕ)1−y))=exp⁡(ylog⁡(ϕ)+(1−y)log⁡(1−ϕ))=exp⁡(ylog⁡(ϕ1−ϕ)+log⁡(1−ϕ))b(y)=1η=log⁡(ϕ1−ϕ)⇒ϕ=11+e−ηT(y)=ya(η)=−log⁡(1−ϕ)

其中,log⁡(ϕ1−ϕ)被称为Logit函数,从上面的推导可看出,它和sigmoid函数是有相当深的渊源的。

高斯分布到指数类分布的变换过程如下:

p(y;μ)=12πexp⁡(−12(y−μ)2)=12πexp⁡(−12y2)⋅exp⁡(μy−12μ2)˙η=μT(y)=ya(η)=μ22b(y)=12πexp⁡(−12y2)

除此之外,Dirichlet分布、Poisson分布、多项分布、β分布、γ分布都是指数类分布。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK