例子:
假设存在以下数据
工资 年龄 额度
4000 25 20000
8000 30 70000
5000 28 35000
7500 33 50000
12000 40 85000
上表中,将工资和年龄
看作两个特征,将额度看作标签,现在需要计算出工资和年龄分别对贷款额度产生多大的影响(参数)
首先,给出预测值的拟合公式
但是,一般来说,预测值和真实值之间存在差异,为了将差异考虑进来。对于第个样本,通常有如下式子成立
其中,被称为误差项,每个样本的误差项独立且服从相同的分布(均值为0,方差为
的正态分布),所以有以下式子成立
得
下面需要说的是怎么估计出参数最合理的值
第一步,引入似然函数【用数据推参数,计算出参数值是多少时与我们的数据结合恰好为真实值
,主要目标是使得得到的数据为真实值的可能性越大越好】。对于同一个似然函数,如果存在一个参数值,使得它的函数达到最大的话,这个值就是最为合理的参数值,在已知观测数据的情况下,参数
的似然函数为,懒得转latex了直接截图了

第二步,取对数似然,直接算乘积不好算,用对数的话可以分解成加法

为了使似然函数达到最大,必须使


上式实际就是残差平方和的一半,求该式的最小值就是求使得残差平方和最小的参数值,即最小二乘估计
第三步,求导
首先把上式展开

此处涉及到矩阵求导的问题,常用的矩阵求导公式如下

求导如下

令导数等于0,得到

此外,可用以下指标来评估模型预测性能

当残差平方和越小,上述指标越大【越接近1】,预测性能越好。
但是并不是所有的数据都恰好能用这种方法求解出参数,线性回归只能当做一个特例,下面引入梯度下降方法,
假设现在的目标函数是

其中

1)批量梯度下降

这种方法容易得到最优解(过度收敛),但是由于每次都考虑所有样本,迭代速度会非常慢
2)随机梯度下降

这种方法每次只随机使用一个样本,迭代速度快,但是不一定每次都朝着收敛的方向(比如离群点,收敛过程不稳定)
3)小批量梯度下降

其中
网友评论