机器学习算法——(1)线性回归(唐宇迪博士数据分析与机器视频课程学习笔记)
机器学习算法——(1)线性回归
1. 线性回归算法概述
线性回归就是通过分析一堆数据,最终预测出一个值。举一个简单的例子,银行贷款。银行会根据你的工资和年龄来给出贷款的额度。那工资和年龄对最终的贷款金额影响有多大?怎么根据工资和年龄和年龄来预测贷款金额呢?线性回归要解决的就是这个问题。
姓名 | 工资 | 年龄 | 贷款额度 |
样本1 | 4000 | 25 | 20000 |
样本2 | 8000 | 30 | 70000 |
样本3 | 5000 | 28 | 35000 |
样本4 | 7500 | 33 | 50000 |
样本5 | 12000 | 40 | 85000 |
问题可以抽象为:
(1)
如果有n个特征与最后结果相关,整合后可得:
(2)
是偏置项,
表示对应特征的权重值,模型的最终目的也是要求解出
、
......
2. 误差项分析
对于每个样本,真实值与预测值存在差异,误差我们用 表示
(3)
误差 是独立并且具有相同的分布,并且服从均值为0,方差为
的高斯分布(也可叫正态分布),下面对独立、同分布和高斯分布进行解释:
独立:每个样本之间没有关系。例如:张三和李四贷款是没有关系的。
同分布:所有样本都是符合同一套规则,例如:张三和李四都去的是中国银行,建的模型符合中国银行贷款规则。
高斯分布:误差在浮动,浮动小的概率大,浮动大的概率比较小。例如:银行贷款会多贷一点,偶尔少贷一点,大多数情况浮动不会太大。
高斯分布
3. 似然函数求解
下式表示的是真实值、预测值与误差值之间的关系:
(4)
误差服从高斯分布:
(5)
将(4)带入(5)中可得
(6)
似然函数表示预测值是真实值的程度,所以预测值是真实值程度越大越好,所以要求似然函数的最大值:
(7)
4. 目标函数推导
乘法难解,加法易解,因此将做对数变换:
(8)
于是问题变成了求解下式的最小值:
5. 线性回归推导
对式对
求偏导,令偏导结果为0,结果可得:
评估拟合结果好坏方法如下:
6. 线性回归中几个重要的问题
(1)问题一:为什么要引入似然函数?
(2)问题二:为什么要对似然函数进行log变换?
(3)问题三:在进行log变换后,为什么使后项的越小越好?
(4)问题四:线性回归的求解算法是什么?
解答:
(1)似然函数表示预测值是真实值的程度,引入似然函数可以寻找预测值最接近真实值的。
(2)乘法难解,进行log变换后乘法变加法,更容易求解。
(3)整个式子A-B越大越好,A为定值,所以B越小越好。
(4)梯度下降法。
参考资料
【1】唐宇迪 机器学习视频
【2】周志华 《机器学习》