机器学习--最小二乘法,最大似然估计,最大后验估计之间的关系,Precision(查准率)

对最小二乘法(Least Square)、最大似然估计( Maximum Likelihood Estimation)和最大后验估计之间的关系的整理。

一、最小二乘法

最小二乘法的本质就是找到一个估计值,使实际值与估计值的距离最小。而为了度量最小距离,只要使实际值与估计值之差的平方最小就好,下面就是最小二乘的表达式损失函数cost function,我们的目标就是求θ。
机器学习--最小二乘法,最大似然估计,最大后验估计之间的关系,Precision(查准率)_第1张图片
求解方法是通过梯度下降算法,通过训练数据不断迭代得到最终的值。

最小二乘的主要应用场景为回归分析,因为回归常用平方损失作为损失函数。

二,最大似然估计

1、似然函数的引出

我们从概率的角度考虑一下最小二乘求解原理,假设目标变量y和输入x的关系如下:
在这里插入图片描述
其中ε为误差项,假设服从正态分布,均值为0,标准差为σ,可以写成
在这里插入图片描述
我们带入上面的关系方程得到y的概率方程:
在这里插入图片描述
这里要注意θ不是变量,不在条件中用“;”隔开。通过给定的θ和X求解Y就是我们的正常的概率思想,但是如果我们把这个方程看成是关于θ的方程时,就变成了似然方程:
在这里插入图片描述
似然函数与上面的概率方程的最大区别在于,关注的不再是事件发生的概率,而是已知事件发生的情况下希望知道对应的参数应该是多少,这和求概率恰恰相反。上面的式子还可以写成:
机器学习--最小二乘法,最大似然估计,最大后验估计之间的关系,Precision(查准率)_第2张图片
最大化L(θ)就是最大似然估计,但一般都会最大化log likelihood:
机器学习--最小二乘法,最大似然估计,最大后验估计之间的关系,Precision(查准率)_第3张图片
这时可以发现,此时的最大化似然函数和最初的最小二乘损失函数本质上是一样的。但是要注意这两者只是恰好有着相同的表达结果,实际并没有本质的联系。因为当likelihood用的是Gaussian的时候,由于Gaussian kernel里有个类似于Euclidean distance的东西,一求log就变成square loss了,导致解和OLSE(就是ordinary的最小二乘)是一样的。而碰巧刚接触MLE的时候基本都是gaussian假设,这才导致很多人分不清楚(这句话套用知乎上的解释)。

2、似然函数的解析(MLE)

参考wiki上的定义似然函数的结果等于已知参数时的结果的概率值(这里注意L不是一个条件概率,通常用;隔开)

在这里插入图片描述
对于离散概率分布:

设X是参数为θ时服从离散概率分布p的随机变量,则:
在这里插入图片描述
看成是θ的方程,称为似然函数。

对于连续概率分布则用密度函数衡量:
在这里插入图片描述

三、最大后验概率(MAP)

这里就是引入了贝叶斯学派的理论了,关于贝叶斯学派和频率学派的区别参见知乎,我们就知道,贝叶斯学派主张一切都有一个先验概率。而且上面的似然函数推倒中频率学派把参数θ看作是固定而未知的常数,而样本是随机的,有关概率的运算都是针对样本X的分布。而贝叶斯学派把这个参数看作是随机变量,而样本X看作是固定的,重视的是参数θ的分布,通常是:通过参数的先验分布结合样本信息得到参数的后验分布。

结论:

1.对于最小二乘估计,最合理的参数估计量应该使得模型能最好地拟合样本数据,也就是估计值和观测值之差的平方和最小;

2.对于最大似然法,最合理的参数估计量应该使得从模型中抽取该n组样本观测值的概率最大,也就是概率分布函数或者说是似然函数最大。显然,这是从不同原理出发的两种参数估计方法。因此最大似然法需要已知这个概率分布函数,一般假设其满足正态分布函数的特性,在这种情况下,最大似然估计和最小二乘估计是等价的,也就是说估计结果是相同的,但是原理和出发点完全不同。

3.最小二乘法以估计值与观测值的差的平方和作为损失函数,极大似然法则是以最大化目标值的似然概率函数为目标函数,从概率统计的角度处理线性回归并在似然概率函数为高斯函数的假设下同最小二乘建立了的联系。

4.最大后验估计是根据经验数据获得对难以观察的量的点估计。与最大似然估计类似,但是最大的不同时,最大后验估计的融入了要估计量的先验分布在其中。故最大后验估计可以看做规则化的最大似然估计。

四、Precision(查准率)

以预测病人是否有癌症为例子
机器学习--最小二乘法,最大似然估计,最大后验估计之间的关系,Precision(查准率)_第4张图片

True Positive(真正,TP): 将正类预测为正类数
True Negative(真负,TN): 将负类预测为负类数
False Positive(假正,FP): 将负类预测为正类数→误报
False Negative(假负,FN): 将正类预测为负类数→漏报

注:准确率是我们最常见的评价指标,而且很容易理解,就是被分对的样本数除以所有的样本数,通常来说,正确率越高,分类器越好。

准确率确实是一个很好很直观的评价指标,但是有时候准确率高并不能代表一个算法就好。比如某个地区某天地震的预测,假设我们有一堆的特征作为地震分类的属性,类别只有两个:0:不发生地震、1:发生地震。一个不加思考的分类器,对每一个测试用例都将类别划分为0,那那么它就可能达到99%的准确率,但真的地震来临时,这个分类器毫无察觉,这个分类带来的损失是巨大的。为什么99%的准确率的分类器却不是我们想要的,因为这里数据分布不均衡,类别1的数据太少,完全错分类别1依然可以达到很高的准确率却忽视了我们关注的东西。再举个例子说明下。在正负样本不平衡的情况下,准确率这个评价指标有很大的缺陷。比如在互联网广告里面,点击的数量是很少的,一般只有千分之几,如果用acc,即使全部预测成负类(不点击)acc也有 99% 以上,没有意义。因此,单纯靠准确率来评价一个算法模型是远远不够科学全面的。

你可能感兴趣的:(机器学习--最小二乘法,最大似然估计,最大后验估计之间的关系,Precision(查准率))