解一元线性回归的最小二乘法
通过成本函数最小化获得参数,先求相关系数b。 按照频率论的观点,首先需要计算 x 的方差和 x 与 y 的协方差。
方差是用来衡量样本分散程度的。 如果样本全部相等,那么方差为 0。 方差越小,表示样本越集中,反正则样本越分散。 方差计算公式如下:
协方差表示两个变量的总体的变化趋势。 如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值,另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值。 如果两个变量的变化趋势相反,即其中一个大于自身的期望值,另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值。 如果两个变量不相关,则协方差为 0,变量线性无关不表示一定没有其他相关性。 协方差公式如下:
有了方差和协方差,就可以计算相关系数b了
将前面的数据带入公式就可以求出阿尔法了:
α = 12.9 − 0.9762931034482758 × 11.2 = 1.9655172413793114
这样就通过最小化成本函数求出模型参数了。 把匹萨直径带入方程就可以求出对应的价格了,如 11 英寸直径价格 $12.70,18 英寸直径价格 $19.54
Numpy 里面有 var 方法可以直接计算方差,ddof 参数是贝塞尔 (无偏估计) 校正系数(Bessel’scorrection),设置为 1,可得样本方差无偏估计量
print(np.var(X, ddof=1))
原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/08-xianxinghuigui-linear-regression/.html