机器爱学习08——数学方法推导线性回归代价函数

在前面讲解线性回归时,我们以房价预测为例,引出了我们认为“比较合理”的cost function:

机器爱学习08——数学方法推导线性回归代价函数

线性回归的cost function

在一些面试中,面试官可能会问:线性回归的cost function为什么是这种格式?能不能是其他格式?

下面,我们将从数学的角度进行讲解。

讲解之前,先给大家补充点概率论的知识,大家也可以查点资料,加深对概念的理解

概率

概率就是某件事发生的可能性。

如果y是关于变量x、参数θ的函数(离散函数或者连续函数),那么

  • p(y|x;θ)表示:在参数等于θ,变量等于x时,y的概率

例如:p(y=1|x;θ) 表示给定x,θ的条件下y=1的概率。

似然

似然,也表示一种可能性,与概率不同之处在于:两者的对象不同:

  • “概率”:在参数θ已知的情况下,预测接下来的观测所得到的结果(参数θ为确定值,而x为变量)。

  • ”似然“:在已知某些观测结果的情况下(training set),对有关事物的性质(参数θ)进行估计。

也就是说,概率表示事件发生的可能性,而似然表示某一组参数适应已知样本的能力。

此外,似然函数等于概率(或概率密度)的乘积,

最大似然估计

最大似然估计,就是利用已知的样本结果(training set),反推最有可能(最大概率)导致这样结果的参数值θ。

简单来说,我们现在有一堆已知样本结果(training set),借助于最大似然估计,我们就可以找到一组参数θ,这组参数θ,可以比较大概率的适用于已知的样本(training set)

看起来,机器学习算法,可以借鉴最大似然估计,找到一组“最可能”的参数θ,从而找到hypothesis function。同时,如果对应的似然函数越大,那么hypothesis function就越“完美”

这里,我们先把最大似然估计的求法列出来:

  1. 写出似然函数

  2. 对似然函数取对数,并整理

  3. 求导数

  4. 解似然方程

高斯分布

数学上,如果随机变量X服从一个数学期望为μ、标准方差为σ2的高斯分布,则记为:

机器爱学习08——数学方法推导线性回归代价函数

高斯分布

数学上,有几种不同的方法来说明一个随机变量,最直观的方法是概率密度函数。

概率密度函数,表示随机变量每个取值有多大的可能性,表达式如下:

机器爱学习08——数学方法推导线性回归代价函数

概率密度函数

高斯分布中,μ决定了高斯分布的对称轴,σ决定了分布的幅度,下面给出不同参数下的高斯分布函数图:

机器爱学习08——数学方法推导线性回归代价函数

不同参数下的高斯分布

有了前面的知识,接下来,我们看看如何推导线性回归的代价函数

线性回归代价函数的推导

首先假设我们的hypothesis function格式如下:

机器爱学习08——数学方法推导线性回归代价函数

线性回归的hypothesis function

假设我们的training set中有m个样本数据,对于每一个样本,hypothesis function预测的结果hθ(x)与y可能存在误差,我们假设误差为ε,则

机器爱学习08——数学方法推导线性回归代价函数

我们通常认为:误差ε是独立并具有相同的分布,并且服从均值为0的高斯分布,即

机器爱学习08——数学方法推导线性回归代价函数

上式做变换,结果如下:

机器爱学习08——数学方法推导线性回归代价函数

接下来,按照最大似然估计的方法,从training set中,反推出参数θ

  • 写出似然函数

机器爱学习08——数学方法推导线性回归代价函数

似然函数

  • 对似然函数取对数,并整理

机器爱学习08——数学方法推导线性回归代价函数

似然函数求对数

此时,我们需要求得一组参数θ,使得似然函数的对数最大,即求一组参数θ,使下式最小

机器爱学习08——数学方法推导线性回归代价函数

将上式乘以1/m,即得到我们的cost function:

机器爱学习08——数学方法推导线性回归代价函数

线性回归cost function

现在大家应该知道线性回归的cost function是如何推导出来的吧~

OK,我们现在再整理一下思路:

  • 我们现在有一组样本数据(training set)

  • 对于样本数据中的每一个instance,预测值与实际值之差,服从高斯分布

  • 通过最大似然估计,我们可以找到一组参数θ,使方差最小

  • 在解最大似然估计时,我们发现,某一项式子(式子1)越小,似然函数就越大,对应参数就越适用于已知样本

  • 我们将这一项式子,稍作改动,作为我们的cost function

通过上面的讲解,相信大家能回答下面的两个问题了吧

  1. cost function格式是如何推导来的

  2. 为什么cost function越小,hypothesis function就越“完美”


分享到:


相關文章: