机器学习-线性回归

机器学习-线性回归


1.线性回归如何产生

有一堆离散的数据,它们是描述的是同一类问题。对这些数据我们用函数来拟合这些数据。并且该函数能让误差达到一个最小值。这时,我们便称该函数为一个模型,使用该模型,我们可以输入未知的参数然后得到一个预测值,一般来说这些值都比较接近真实值。很明显,我们的任务就是求出该函数f(x)=θTx


2.求解线性回归

2.1似然函数

1.假设已存在该函数
f(x)=θTx

2.该数据集的真实数据可表示为
y(i)=θTx(i)+ε(i)

ε表示误差,一般来说,我们认为如果一个这些误差服从高斯分布,那么该模型就是一个比较不错的模型。
至于为什么,看看高斯分布就明白了

3.高斯分布公式为
p(ε(i))=1(2πσ)exp((ε(i))2)2σ2)

4.将2带入3
p(y(i)|x(i);θ)=1(2πσ)exp((y(i)θTx(i))2)2σ2)

5.此时引入一个似然函数的概念,即
L(θ)=i=1np(y(i)|x(i);θ)=i=1n1(2πσ)exp((y(i)θTx(i))2)2σ2)

如何理解这个似然函数呢,开头我们就说了,我们只是假设该模型已存在即θ值已确定做的推导,我们最终要解决的问题还是确定这个θ值。
似然函数公式上的理解:高斯分布表示的是我们误差分布的概率,我们力求误差为0,概率最大为1。所以我们力求总和最大,来保证误差最小。很简单。
似然函数更普遍的理解:目前,θ值不确定,我们关于ε的高斯模型也是一个不确定的。所以我们需要选择一个高斯模型,使得在该模型下,我们的预测结果是正确结果的可能性最大。那么我们便将所有的预测概率做一个连乘,求目标函数的最大值。
关于这个似然函数的作用,捡一个例子举一下。对于对于一个正反均匀的硬币,连续掷10次这个问题,我们可以问它连续10次都是正面的概率是多少。而对于一枚硬币连续掷10次都是正面,我们求它正反均匀的概率是多少。似然函数便是解决这个问题。

2.2目标函数

1.原始似然函数不方便求解,因为是连成形式,观察函数原型,变量处于exp,所以我们可以直接取对数进行转换。
logL(θ)=logi=1n1(2πσ)exp((y(i)θTx(i))2)2σ2)
=i=1nlog1(2πσ)exp((y(i)θTx(i))2)2σ2)
=mlog1(2πσ)1σ2·12i=1n(y(i)θTx(i))2)

2.目标函数求最小值
J(θ)=12i=1n(y(i)θTx(i))2)
根据矩阵的一些变换公式化简求导。不想写latex表达式,太麻烦了。
最终得到θ=(XTX)1)XTy
能够直接给出θ的值
所以线性回归是回归算法中很特殊的一种。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章