机器学习之&&Andrew Ng课程复习--- 学习笔记(第三课)

本文探讨了线性回归及逻辑回归的概率解释,包括最小二乘法与最大似然估计的关系,局部加权线性回归的特点,以及逻辑回归模型如何解决二元分类问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Probabilistic interpretation,概率解释 
解释为何线性回归的损失函数会选择最小二乘 
imageimage 表示误差,表示unmodeled因素或随机噪声 
真实的y和预测出来的值之间是会有误差的,因为我们不可能考虑到所有的影响结果的因素 
比如前面的例子,我们根据面积和卧室的个数来预测房屋的价格 
但是影响房屋价格的因素其实很多,而且有很多随机因素,比如买卖双方的心情 
而根据中心极限定理,大量独立的随机变量的平均值是符合正态分布或高斯分布的 
所以这里对于由大量unmodeled因素导致的误差的分布,我们假设也符合高斯分布 
因为你想想,大量独立随机变量大部分误差会互相抵消掉,而出现大量变量行为相似造成较大误差的概率是很小的 
image  
可以写成,因为误差的概率和预测出是真实值的概率是一样的 
image  
注意,这里 
image  
不同于 
image 
;,表示这里θ不是一个随机变量,而是翻译成 image 
因为对于训练集,θ是客观存在的,只是当前还不确定

所以有, 
image 
这个很容易理解,真实值应该是以预测值为中心的一个正态分布

给出θ似然性的定义 
image  
给定训练集X和参数θ,预测结果等于真正结果的概率,等同于该θ为真实θ的可能性(似然性) 
这里probability和likelihood有什么不同,答案没有什么不同 
但是对于数据使用probability,但对于参数使用likelihood 
故最大似然法(maximum likelihood),就是找出L(θ)最大的那个θ,即概率分布最fit训练集的那个θ

继续推导,把上面的式子带入,得到 
image 

实际为了数学计算方便,引入log likelihood, 
image 

可以看到,最终我们从L(θ)的最大似然估计,推导出损失函数J(θ),最小二乘 
image

所以结论为,最小二乘回归被认为是进行最大似然估计的一个很自然的方法 
To summarize: Under the previous probabilistic assumptions on the data, least-squares regression corresponds to finding the maximum likelihood estimate of θ. This is thus one set of assumptions under which least-squares regression can be justified as a very natural method that’s just doing maximum likelihood estimation.

 

Locally weighted linear regression,局部加权线性回归 
对于线性回归,问题是选取的特征的个数和什么特征会极大影响fit的效果 
比如下图,是分布使用下面几个模型进行拟合的 
image image image

image

通常会认为第一个模型underfitting,而第三个模型overfitting,第二个模型相对比较好的fit到训练集 
所以可以看出,找出一个全局的线性模型去fit整个训练集,是个比较困难的工作,因为选择特征成为一个关键的因素 
局部加权线性回归的思路,就是我不需要去fit整个训练集而产生全局的模型 
而是在每次predict x的时候,只去拟合x附近的一小段训练集 
无论全局训练集是多么复杂的一个分布曲线,但在局部小段数据上,都可以用线性去逼近  
所以算法如下, 
image

其中image 
image  
可以看到我们通过weight来选取局部样本点 
这里weight定义有点类似高斯分布,虽然这里和高斯分布没有关系,只是恰好相似 
但是他的分布曲线确实和高斯分布一样,钟型,所以通过weight,只有距离x很近的样本点才会对于损失函数有作用

局部加权线性回归算法是一种non-parametric algorithm 
而普通的线性回归是parametric learning algorithm 
parametric learning algorithm有一组有限的,固定的参数,一旦完成fit,只需要保存下参数值来做预测,而不需要保存完整的训练集 
non-parametric algorithm,相反,我们需要保存完整的训练集来进行预测,而不是仅仅保存参数 
正式定义为,the amount of stuff we need to keep in order to represent the hypothesis h grows linearly with the size of the training set. 
为了表达假设h而保存的数据随着训练集的size而线性增长

前面讨论了线性回归问题, 
image符合高斯分布,使用最小二乘来作为损失函数

下面继续讨论分类问题,分类问题和回归问题不同在于Y的取值是离散的 
我们先讨论最简单的binary classification,即Y的取值只有0和1 
分类问题一般不会使用回归模型,因为回归模型是输出是连续的,而分类问题需要的输出是离散的

但是一定要用也不是不可以,比如这里继续使用线性回归模型,但是不是非常适合 
原因如下, 
首先线性模型的Y取值是连续,且没有限制的,而二元分类的取值为[0,1],对于线性回归模型,参考下图,可以以0.5为分界线,大于则取1,小于则取0,也可以转化为离散的结果 
再者,其实只有在分界线周围的样本点对分类模型会有比较大的影响,而比较远的样本点其实对模型没啥影响 
但对于线性模型而言,增加任何样本点都会对模型产生相同的影响

image 
所以提出logistic回归模型,这种回归模型可以比较好的解决二元分类问题 
从本质上你仍然可以把他理解为线性模型, 
你可以看下面给出的H函数,只是在线性回归外面加上logistic函数进行转换,可以理解成把上图的直线转化为那条sigmoid曲线,使其更加符合二元分类的需求 
但是本质上可以看成仍然是用那条直线进行划分 
参考,对线性回归,logistic回归和一般回归的认识

 

Logistic function(Sigmoid function) 
下面给出H函数 
imageimage 
由这个函数生成的曲线称为Sigmoid曲线,这个曲线很有说道,参考http://t.cn/8st3jG1 
image 
先不从数学上说为什么这个模型中二元分类上比线性模型好,单纯从图形上看就可以得到直观的结论 
首先Y值域在[0,1],其次图形中中间陡峭而两边平缓,符合二元分类的样本点特性

确定了模型,下面要做的是fit最优的θ,仍然是采用最大似然法,即找出对训练数据可能性最大的那个θ

前面对于线性回归问题,image符合高斯分布(连续回归问题往往符合高斯分布),最终我们由最大似然推导出最小二乘回归 
但是对于二元分类,符合伯努利分布(the Bernoulli distribution, 又称两点分布,0-1分布),因为二元分类的输出一定是0或1,典型的伯努利实验 
by the way,二项分布是n次独立的伯努利实验形成的概率分布,当n=1时,就是伯努利分布 
同样,如果离散输出是多个值,就是符合多项分布 

看看由最大似然可以推导出什么 
首先给出伯努利分布 
image 
是否好理解,给定x;θ,y=1的概率等于h的值,看看图中,当然是h的值越大越可能为1,越小越可能为0 
那么这个式子可以合并写成,比较tricky的写法,Y为0或1,总有一项为1 
image 
那么θ的似然函数定义为,θ的可能性取决于模型对训练集拟合的好坏 
 image 
同样为了数学计算方便,定义log likelihood, 
image

很显然,对于伯努利分布,这里无法推导出最小二乘呵呵 
下面要做的是找到θ使得ℓ(θ)最大,由于这里是找最大值而非最小值,所以使用梯度上升(gradient ascent),道理是一样的 
首先计算梯度,计算过程参考原文 
image 
所以最终随机梯度上升rule写成, 
image 
这个梯度公式,奇迹般的和线性回归中的梯度公式表面上看是一样的,可以仔细比较一样的 
之所以说表面上,是因为其中的image 是不同的,这里是logitics函数

 

Perceptron Learning Algorithm(感知机算法) 
这里谈感知机,好像有些离题,但是你看下感知机的函数 
image  image 
单纯从直观图形的角度,似乎是逻辑函数的简化形式 
逻辑函数是连续的在[0,1]区间上,而感知机直接非0则1,参考下图红线 
image  
同样使用梯度下降的感知机算法也是和上面相同的形式 
image 
同样不同的仅仅是h(x) 
1960s,感知机被看作是大脑工作中独立神经元的粗糙的模型,由于简单,会用作后面介绍的学习算法的起点 
虽然直观看上去感知机和之前看到的logistic回归或最小二乘回归很像,但是其实是非常不一样的算法 
因为,对于感知机,很难赋予一种有意义的概率解释(probabilistic interpretations),或使用最大似然估计算法来推导感知机算法 
而对于最小二乘或logistic都可以给出像高斯分布或伯努利分布的概率解释,并可以使用最大似然进行推导

 

牛顿算法(Newton’s method) 
前面我们说道使用梯度上升法来求解maximizing ℓ(θ) 
现在介绍另外一种收敛速度更快的算法来求解,称为牛顿法 
也很简单,看下面的图

image

对于梯度下降,每次只是在梯度方向(导数,切线)下降一小步(取决于学习速度参数) 
而牛顿法是一直下降到导数(切线)和θ轴交界的那个θ,直观上可以看出这个下降速度确实很快 
而其中θ下降了图中红线部分,通过三角计算很容易算出 
故牛顿法的rule为,最终找到f(θ) = 0的点 
image

好,现在看我们的问题,解逻辑回归就是要找到max(ℓ ),即ℓ′(θ)=0的点 
image 
代入牛顿法,即f(θ) = ℓ′(θ) 
所以逻辑回归的牛顿法的rule公式,写为 
image

但这里我们只是考虑一个θ的情况,实际情况下参数会有多个,即θ其实是一个向量 
那么对于θ向量,牛顿法的公式会变成怎样? 
image 
其中∇ℓ(θ)也是个向量,是ℓ(θ)对于每个θi的偏导的结果 
其中H是个n-by-n matrix,其实一般是n + 1-by-n + 1,因为如果有n个参数θi,还会有个截距项 
H矩阵称为Hessian,矩阵中每一项定义为 
image 

和梯度下降比,牛顿法会带来更快的收敛速度和更少的迭代次数 
但相应的每次迭代会需要更大的计算量,因为需要计算image 
所以当θ的参数个数不是很多的时候,牛顿法会比较适合


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值