一、线性回归简介
(一)核心思想
线性回归是统计学和机器学习中基础且应用广泛的预测建模技术,19 世纪初由弗朗西斯・高尔顿首次提出。它的核心是构建自变量与因变量之间的线性关系模型,以此理解和预测数据变化规律。
其优势明显:解释性强,模型参数有直观统计意义,能让人们清楚了解变量间关系;计算高效,成本低,适合处理大规模数据集;是理解复杂机器学习算法的基石;还能通过扩展处理非线性关系,应用范围广。
在实际中应用场景丰富,销售领域可用历史数据预测未来销售额,辅助制定销售计划;房地产行业依据房屋特征预测房价,为买卖双方提供参考;经济分析中研究 GDP 与失业率关系,助力宏观政策制定;医学研究分析药物剂量与疗效关系,推动新药研发和临床治疗。
(二)一般形式
对于有多个属性描述的示例,线性模型尝试构建一个通过这些属性线性组合来预测的函数。简单说,就是把每个属性乘以一个相应的权重,再加上一个偏置项,得到预测结果。
用向量形式能更简洁地表示这个函数,其中权重向量包含了各个属性的权重,这种形式在处理多元线性回归和进行矩阵运算时很方便,能简化计算、提高效率。
(三)最小二乘法
均方误差在回归问题中对应常见的 “欧氏距离”,基于均方误差最小化来求模型参数的方法就是 “最小二乘法”。直观来讲,它要找到一条直线(多元情况下是超平面),让所有样本到这条直线(超平面)的欧氏距离之和最小。
在简单线性回归中,就是找到合适的权重和偏置项,使得预测值与真实值的均方误差最小。求解时,分别对权重和偏置项求偏导数,令偏导数为 0,得到方程组,解方程组就能得到最优的权重和偏置项。多元线性回归原理类似,只是计算更复杂,通过矩阵运算求解。
二、线性回归的评估指标
(一)误差平方和 / 残差平方和(SSE/RSS)
它的计算是把每个样本的真实值与预测值的差值进行平方,然后将所有这些平方值相加。这个指标直观反映了预测值与真实值之间误差的平方总和。
其意义在于,数值越小,说明模型预测值和真实值越接近,模型对数据的拟合效果越好。如果数值为 0,表明模型完美拟合数据,但实际中几乎不可能出现。通过比较不同模型的这个指标,能初步判断模型拟合能力。
(二)平方损失 / 均方误差(MSE)
它是误差平方和的平均值,计算方式是将误差平方和除以样本数量。这个指标消除了样本数量对误差衡量的影响,更能准确反映预测值与真实值之间的平均误差程度。
和误差平方和一样,数值越小模型性能越好,在实际应用中常作为模型选择和评估的重要依据,比如比较不同线性回归模型变体在特定数据上的预测准确性。
(三)R 方(R²)
它有两种定义方式,一种是用 1 减去误差平方和与总平方和的比值,总平方和衡量了因变量的总波动程度,R 方表示模型解释的波动占总波动的比例;另一种是用 1 减去均方误差与真实值方差的比值,同样反映模型对数据变异的解释能力。
R 方取值在 0 到 1 之间,越接近 1,说明模型对数据的拟合效果越好,能解释数据中大部分的变异。比如 R 方为 0.8,意味着模型能解释 80% 的数据变异,剩下 20% 由模型未捕捉的因素导致。但实际中过高的 R 方可能存在过拟合,需结合其他指标判断。
三、线性模型参数估计
(一)目标
线性回归的关键目标是找到合适的权重和偏置项,让构建的模型能尽可能准确地预测因变量,也就是使模型的预测值和真实值尽可能接近。从数学角度说,就是最小化误差平方和,找到能让误差平方和最小的权重和偏置项。
(二)求解过程
求权重和偏置项使误差平方和最小的过程就是线性回归模型的最小二乘 “参数估计”。以简单线性回归为例,对误差平方和分别关于权重和偏置项求偏导数,令偏导数为 0 来求解。
对偏置项求偏导数并令其为 0,经过变形能得到偏置项与真实值均值、权重和属性均值的关系。对权重求偏导数,代入偏置项的表达式,经过化简可得到权重的表达式。多元线性回归计算涉及矩阵运算,基本思想是通过最小化误差平方和,利用矩阵求逆等运算确定参数。
四、多元线性回归
(一)模型形式
多元线性回归模型是通过多个属性的线性组合来预测因变量,也就是把每个属性乘以相应权重,再加上一个常数项得到预测结果。比如预测房价时,会同时考虑房屋面积、房龄、房间数量、周边配套设施评分等多个因素,这样能捕捉更复杂的数据关系,更准确反映现实情况。
(二)与简单线性回归的区别与联系
区别主要在于变量数量、模型复杂度和模型表示形式。简单线性回归只有一个自变量,多元线性回归有多个自变量,能处理更复杂场景;多元线性回归因涉及多个自变量及相互关系,模型更复杂,参数估计计算量和难度大,还易出现多重共线性问题;简单线性回归在二维平面是一条直线,多元线性回归在高维空间是超平面。
联系在于基本原理相同,都基于线性关系假设,通过最小化误差平方和等方法确定参数,目标都是找到最优线性模型拟合数据;简单线性回归是多元线性回归的特殊情况,当多元线性回归只有一个自变量时就退化为简单线性回归,且二者都用均方误差、R 方等指标衡量模型性能。
(三)应用场景
在房地产领域,综合房屋面积、房龄、地段、周边配套等因素准确预测房价,帮助开发商定价和购房者判断性价比;医学研究中分析多种生物标志物对疾病风险的影响,辅助医生进行疾病诊断和风险评估,为个性化医疗提供依据;市场营销方面研究广告投入、促销活动、产品质量、品牌知名度等对产品销量的影响,优化营销策略,提高企业市场竞争力。
五、课堂练习相关
(一)sklearn 中的线性回归算法
在 Python 中用 Scikit-learn 库进行线性回归分析,首先要导入必要的库。NumPy 是科学计算基础库,用于数值计算、矩阵运算等;Matplotlib 的 pyplot 模块用于数据可视化;从 sklearn.linear_model 中导入 LinearRegression 类,它实现了普通最小二乘线性回归算法;用 sklearn.model_selection 的 train_test_split 函数划分训练集和测试集;通过 sklearn.metrics 的 mean_squared_error 计算均方误差,r2_score 计算 R² 分数来评估模型。
(二)参数说明
fit_intercept 参数表示是否有截距,默认值为 True,如果设为 False,那么模型直线过原点。normalize 参数是是否将数据归一化,默认值为 False。