线性回归是一种回归分析技术.回归分析就是利用样本(已知数据),产生拟合方程,从而对未知数据进行预测,回归在于分析自变量与因变量之间的关系。线性回归属于有监督学习,因此方法和监督学习应该是一样的,先给定一个训练集,根据这个训练集学习出一个线性函数,然后测试这个函数训练的好不好(即此函数是否足够拟合训练集数据),挑选出最好的函数(cost function最小)即可;
首先来了解一些字母的含义:m-训练集样本的数量;x-输入变量/特征;y-输出变量/要预测的目标变量;(x,y)-表示一个训练样本;(x(i),y(i))-(i)是上标:表示第i个训练样本,即表示表格中的第i行;表示特征向量,n表示特征向量的个数;称为假设函数,h是一个引导从x得到y的函数;
一个例子:
数据:工资和年龄(2个特征)
目标:预测银行会贷款给我多少钱(标签)
考虑:工资和年龄都会影响银行最终的贷款数额,那么它们各自有多大的影响呢?
假设表示年龄的参数,表示工资的参数:(,的取值不同,得到的假设函数不同,我们需要找到一组值,使假设函数表示的直线,尽量地与训练集中的数据点很好的拟合)(这里的是参数的向量表示)
误差:
真实值和预测值之间肯定要存在差异(用来表示误差),则对于每个样本来说,有:
注意点:
每个数据点针对于模拟方程的误差ε(i),是独立的并且具有相同的分布,并且服从均值为0方差为的高斯分布 (模型绝大多数情况下浮动不会太大,极少数情况下浮动会比较大)
数学知识:高斯分布(正态分布)的概率密度函数为:
由于误差服从高斯分布:
这里的表示似然函数----根据样本去估计参数值----用来确定什么样的参数跟我们的数据组合后更接近于真实值----成为真实值的可能性越大越好(概率值越大越好)--最大似然估计
对数似然:--乘法难解加法比较容易,对数里面加乘法可以转换为加法
为了使似然函数(对数似然函数)越大越好,则需要使越小越好。
这里定义线性回归的代价函数:
可见,代价函数为最小二乘模型。
对求偏导:--凸函数(凸优化),偏导等于0
--根据此公式可以利用正规方程法来求解
注意点:特征方程法得到的是解析解,无需迭代,也没有设置学习速率的繁琐,但是求解正规方程需要求矩阵的逆,然而不是所有的矩阵都可逆,而且有些可逆矩阵的求逆极其耗费时间,所以特征方程法看似简单,其实使用场景并不多。只有当特征值比较小的时候,可以考虑使用特征方程法。
不可逆,可能有两个原因:
1.列向量线性相关,即训练集中存在冗余特征,此时应该剔除掉多余特征;
2.特征过多,此时应该去掉影响较小的特征,或使用“正则化”。
当样本总数 m 小于等于特征数量 n 时, 一定不可逆。
求解参数最常用的方法是使用梯度下降法,由于该方法内容较多,我将使用单独一篇文章介绍。
网友评论