回归是什么?预测一个连续的数值
回归(Regression)是机器学习和统计学中最基本的任务之一:根据输入的特征,预测一个连续的数值。比如根据房子的面积、地段、房龄预测房价;根据历史数据预测明天的气温、下个月的销售额;根据一个人的身高、年龄和饮食习惯估计他的体重。与之相对的分类任务,预测的是离散的类别,比如是猫还是狗。
“回归”这个名字的由来
“回归”这个词来自 19 世纪英国科学家弗朗西斯·高尔顿的研究。他研究了父母的身高与子女身高之间的关系,发现了一个有趣的现象:个子特别高的父母,他们的子女通常也比较高,但往往没有父母那么高;个子特别矮的父母,子女通常也比较矮,但往往没有父母那么矮。也就是说,子女的身高有向人群平均身高“回归”的趋势。他把这种现象称为“向平均值回归”。后来,“回归”这个词逐渐被用来泛指研究变量之间数量关系的统计方法,原来的含义反而被淡忘了。
线性回归
最基础的回归方法是线性回归:假设输出与输入之间是线性的关系,也就是输出等于各个输入特征乘以相应的系数再加上一个常数。比如房价约等于面积乘以每平方米的单价,再加上其他因素的影响。训练线性回归,就是找到一组系数,让模型的预测值与真实值之间的误差尽可能小,通常是让误差的平方和最小,这就是由勒让德和高斯在 19 世纪初提出的最小二乘法。线性回归简单、计算快、可解释性强:每个系数都清楚地说明了对应的特征对结果有多大的影响。
其他回归方法
多项式回归:在线性回归的基础上加入特征的平方、立方等高次项,来拟合弯曲的关系。正则化的线性回归:岭回归加入了 L2 正则化,Lasso 回归加入了 L1 正则化,能够防止过拟合,后者还能自动地进行特征选择。决策树回归和随机森林、梯度提升树:能够捕捉复杂的非线性关系和特征之间的交互作用,在表格数据上效果很好。支持向量回归、K 近邻回归、神经网络等,也都可以用于回归任务。需要提一句的是,逻辑回归虽然名字里有“回归”,但它实际上是一种分类方法,用来预测样本属于某一类的概率。
怎么评价回归模型
常用的评价指标有:均方误差,预测误差平方的平均值,对大的误差惩罚较重;均方根误差,均方误差的平方根,单位与原始数据一致,更容易理解;平均绝对误差,预测误差绝对值的平均,对异常值不那么敏感;决定系数,通常记作 R 的平方,表示模型解释了数据中多大比例的变化,越接近 1 说明拟合得越好。
回归的应用和注意事项
回归分析被广泛用于经济预测、销量和需求预测、房价评估、金融风险评估、医学研究中分析各种因素对健康的影响,以及科学实验中的数据分析。需要注意的是,回归分析发现的是变量之间的相关关系,而不一定是因果关系。比如冰淇淋的销量和溺水事故的数量可能同时上升,回归分析会显示它们相关,但这并不是因为吃冰淇淋导致溺水,而是因为夏天天气炎热,两者都增加了。要确定因果关系,需要进行严谨的实验设计或者使用因果推断的方法。