1. 机器学习眼中的线性回归
左图是原始建模数据,目的是用来寻找玩偶数量和成本的某种关系。右图将数据可视化得到散点图。
第一步 进行场景确定
第二步 定义损失函数
建模的目的:模型预测值与真实值之间的差距越小越好。下面有两种定义损失函数的方法。带“帽子”的变量代表预测值。不带的表示观测值。
由于以上两点原因,所以采用右边的函数作为损失函数。
实际上使用左面的函数定义损失函数也能得到一个线性模型,只是并不是我们常说的线性回归模型而已。
所以:损失函数是机器学习模型的核心。(即使相同的模型形式,不同的损失函数对应着不同模型的效果)。
如果把模型看成是人工智能,那么损失函数就是它的三观。
题外话:
由于模型的损失函数是由人定义的,那么从伦理的角度来讲,不能再将“技术无罪”作为作恶的借口和理由,特别是在模型日益成为我们生活主宰的今天。
第三步 特征提取
原始数据比较干净,所以并不需要进行数据清洗。在本题中玩偶个数可以作为特征直接使用。
第四步 确定模型形式和参数估计
第五步 评估模型效果
对于回归问题,常用的模型评估指标有两个:
均方差(MSE):预测值与真实值的平均差距。L指的是上面定义的损失函数。
决定系数(R2):数据变化被模型解释的比例。
第一个公式为成本变化幅度。即真实值与真实值平均值之间的差值的平方和。
第二个公式是未被模型所解释的变化幅度。即真实值与预测值之间的差值的平方和。从建模的角度来讲,我们希望该公式得到的值越小越好。
所以,决定系数的公式如下:结果越接近于1,模型的预测效果越好。
2. 统计眼中的线性回归
2.1 模型的假设
在机器学习的角度,我们并不太关心 x 和 y 的数学关系是怎么样的。整个的建模过程是机械化的。我们只是关心能用什么样的公式能让从 x 出发的预测值与真实值 y 之间的关系最小的可以了。
站在统计学的角度出发,我们试图弄清楚变量 y 与 x 之间的数学关系。
比如 04/01 和 04/02 两天的玩偶个数都是10,但前者成本为7.7,后者成本为9.87.这说明变量 y 似乎带有某种随机性。并且在散点图中,我们同样得到 x 与 y 似乎存在某种线性关系。
在上面公式的基础上,进一步假设。其中假设的 第二点 和 第三点 可能与现实情况冲突。
根据这三个假设我们可以进一步来分析为什么会存在 x 相同而 y 不同的情况。
首先假设模型的 a, b, σ(假设1:随机扰动项服从的正态分布的方差)是已知的。这时候我们可以看到 y 是由 ax + b + 随机值 构成,那么就说明 y 本身就是一个随机值。而且也可以很清楚的证明 yi是服从 期望为 10a+b 方差为 σ2的正态分布。所以,有 相同的玩偶个数,不同的成本 这种情况出现正是因为 成本分别是同一正态分布的两次独立观测值。