Logo
Section 1 / 5

线性回归的实现

本课程将介绍线性回归的基本概念及其实施步骤。

导入

线性回归的实现

本课程将介绍线性回归的基本概念及其实施步骤。

线性回归快速概述

线性回归(Linear Regression)通过确定因变量(y)与其变化的自变量(X)之间的依赖关系,绘制一条直线或平面——称为超平面(hyperplane),用于预测数据输入的目标值。在 p 维空间中,超平面是一个维度为 p−1 的子空间。

因此,在二维空间中,超平面是一维的子空间,即一条直线;在三维空间中,超平面是二维的子空间,相当于一个平面。尽管在四维或更高维空间中难以直观想象超平面,但 p−1 维的概念仍然适用。

...
数据点到超平面的距离

超平面的目标是尽可能贴近已知的数据点,使其与每个数据点之间的距离最小。这意味着,如果从超平面向每个数据点作垂线(90度角),这些垂线的长度之和应小于任何其他可能超平面所对应的总距离。

在构建线性回归模型之前,首先需要处理缺失值(删除或填充),并确认所选的自变量是与因变量相关性最强的变量。同时,这些自变量之间不应存在显著的相关性。

如果两个或多个自变量之间存在较强的线性相关关系,则会出现共线性问题:当涉及两个变量时称为共线性(collinearity),涉及两个以上变量时称为多重共线性(multi-collinearity)。这会导致各个变量不再具有唯一性。

虽然共线性不会影响模型的整体预测准确性,但它会影响对各个自变量系数的计算和解释。不过,即使存在共线性,仍可较可靠地预测输出结果(即因变量)。只是此时难以判断哪些变量真正具有影响力,哪些变量是冗余的。

线性回归方程

线性回归的基本方程为:Y=a+bXY = a + bX,其中 Y 是因变量,X 是自变量,b 是直线斜率,a 是 y 轴截距。

a=n(∑i=1nxiyi)−(∑i=1nxi)(∑i=1nyi)n(∑i=1nxi2)−(∑i=1nxi)2a=\frac{n(\sum_{i=1}^n x_iy_i)-(\sum_{i=1}^n x_i)(\sum_{i=1}^n y_i)}{n(\sum_{i=1}^n x_i^2)-(\sum_{i=1}^n x_i)^2}

b=1n[∑i=1nyi−a∑i=1nxi]b=\frac{1}{n}[\sum_{i=1}^n y_i-a\sum_{i=1}^n x_i]

示例

给定点集 {(1,4), (2,5), (3,6)}

xyxyx2
1441
25104
36189

可得: ∑x=6\sum x=6,
∑y=15\sum y=15,
∑xy=32\sum xy=32,
∑x2=14\sum x^2=14

将上述值代入公式:

$a=1$ $b=3$ $Y= a + bX$ $Y= 1 + 3X$

实现线性回归(Linear Regression)的主要步骤包括:

    1. 导入所需库
    1. 导入数据集
    1. 删除无关变量
    1. 处理含有缺失值的变量(删除或修正)
    1. 设定自变量 x 和因变量 y
    1. 选择并设置算法
    1. 计算 y 轴截距和自变量系数
    1. 进行预测
    1. 模型评估

练习

为了演示该算法,你将编写一个线性回归模型,使用四个自变量来预测房价。通过结合每个自变量的相关系数与 y 轴截距,即可预测因变量(价格)的值。

本模型使用的数据集为墨尔本房屋数据集(Melbourne Housing Dataset),该数据源自澳大利亚墨尔本地区的房地产挂牌信息。完整数据集包含21个变量,如地址、郊区、土地面积、房间数量、价格、经度、纬度、邮政编码等。

数据清洗

线性回归实现步骤:1 到 3