学习了王天一博士的机器学习40讲,做个小总结:
1、机器学习中,回归问题隐含了输入变量和输出变量均可连续取值的前提。
2、单变量线性回归,所有样本到直线的欧氏距离之和最小,即均方误差最小化。
3、最小二乘法的几何意义是,计算高维空间上的输出结果在由所有属性共同定义的低维空间上的正交投影。
4、线性回归拟合模型,选择StatsModels这个第三方库,因为它能提供更多的统计意义上的结论,利于更好的理解线性回归模型。
5、在模型拟合前,需要对输入数据做一些处理,比如指标异常值的处理、指标值的归一化等。
6、使用StatsModels模型拟合的步骤包括:
1)首先用add_constant函数,在每个输入数据后面添加一个1,将常数项纳入模型中;——为什么?
2)接着调用OLS,即普通最小二乘法(ordinary least squares),作为拟合对象,计算线性模型的参数;——为什么?
3)然后使用fit函数,获得拟合结果;
4)最后,可以用summary函数打印出拟合模型的统计特性;
7、模型拟合最核心的结果有,coef表示参数的估计值,也就是通过最小二乘法计算出来的权重系数;
下例中的拟合回归式为:y=3.0685x−19.4345;
std err代表参数估计的标准误差(standard error),表示的是估计值偏离真实值的平均程度;**虽然最小二乘法得到的是无偏估计量,也就是估计结果中不存在系统误差,**但每一个特定的估计值结果依然是在真实值附近波动。——怎么理解标粗的这里?
最后两列[0.025 0.975]给出了 95% 置信区间:每个参数真实值落在这个区间内的可能性是 95%。对于线性回归而言,置信下界和上界分别是估计值减去和加上二倍的标准误,也就是 coef±2×std err。
t和P>|t|是关键指标,评估拟合结果的统计学意义。
t代表t统计量(t-statistic),表示参数估计值与原始假设值之间的偏离程度;它的值越大代表,拟合的结果越可信;在线性回归中通常会假设待拟合的参数值为 0,此时的 t 统计量就等于估计值除以标准误。当数据中的噪声满足正态分布时,t 统计量就满足 t 分布,其绝对值越大意味着参数等于 0 的可能性越小,拟合的结果也就越可信。
P>|t|表示的是P值(p-value),代表当原假设为真时,数据等于观测值或者比观测值更为极端的概率;p值越接近于0,则代表计算出的参数越值得信任;简单地说,p 值表示的是数据与一个给定模型不匹配的程度,p 值越小,说明数据和原假设的模型越不匹配,也就和计算出的模型越匹配。
最上面部分的指标,是对模型拟合数据的程度的评价。
R-squared 表示的是 R2 统计量,也叫作决定系数(coefficient of determination),这个取值在[0, 1]之间的数量表示的是输出的变化中能被输入的变化所解释的部分所占的比例。在这个例子里,R2=0.905 意味着回归模型能够通过 x 的变化解释大约 91% 的 y 的变化,这表明回归模型具有良好的准确性,回归后依然不能解释的 9% 就来源于噪声。
R2统计量具有单调递增的特性,即使在模型中再添加一些和输出无关的属性,计算出来的 R2也不会下降。Adj. R-squared 就是校正版的 R2统计量。当模型中增加的变量没有统计学意义时,多余的不相关属性会使校正决定系数下降。校正决定系数体现出的是正则化的思想,它在数值上小于未校正的 R2统计量。
若是多元线性回归,可能会出现R方和P值矛盾的情况,这时候需要引入F统计量(F-statistic)这个指标,F统计量越大,则模型拟合得越好;F统计量主要应用在多元回归中,它检验的原假设是所有待估计的参数都等于 0,这意味着只要有一个参数不等于 0,原假设就被推翻。F 统计量越大意味着原假设成立的概率越低,理想的 F 值应该在百千量级。
多元线性回归,可能存在由于样本过少导致的过拟合现象,也有可能出现不同属性之间的共线性现象;换句话说,多元线性回归可以有足够的精确性,但对于该精确性的合理解释会比较难,因为在多个属性中,可能有其中多组子属性的组合都能拟合到近似最优的模型效果,但对不同组的子属性的组合解释,会因为属性不同而有很大区别,这就是统计学家莱奥·布雷曼口中的“罗生门”(Rashomon)。
将“罗生门”深挖一步,就是机器学习和统计学在认识论上的差异:统计学讲究的是“知其然,知其所以然”,它不仅要找出数据之间的关联性,还要挖出背后的因果性,给计算出的结果赋予令人信服的解释才是统计的核心。
相比之下,机器学习只看重结果,只要模型能够对未知数据做出精确的预测,那这个模型能不能讲得清楚根本不是事儿。