什么是线性回归?
线性回归是一种数据分析技术,它通过使用另一个相关的已知数据值来预测未知数据的值。它以数学方式将未知变量或因变量以及已知变量或自变量建模为线性方程。例如,假设你有关于去年的支出和收入的数据。线性回归技术会分析这些数据,并确定您的支出是收入的一半。然后,他们通过将未来已知收入减半来计算未知的未来支出。
线性回归如何工作?
从本质上讲,一种简单的线性回归技术尝试在两个数据变量 x 和 y 之间绘制折线图。作为自变量,x 沿水平轴绘制。自变量也称为解释变量或预测变量。因变量 y 在垂直轴上绘制。您也可以将 y 值索引为响应变量或预测变量。
线性回归的步骤
对于此概述,请考虑 y 和 x 之间的折线图方程的最简单形式;y=c*x+m,其中 c 和 m 对于 x 和 y 的所有可能值都是常数。因此,举例来说,假设 (x, y) 的输入数据集是 (1,5)、(2,8) 和 (3,11)。要确定线性回归方法,需要执行以下步骤:
- 绘制一条直线,并衡量 1 和 5 之间的相关性。
- 继续根据新值 (2,8) 和 (3,11) 更改直线方向,直到所有值都拟合直线。
- 将线性回归方程表示为 y=3*x+2。
- 推断或预测当 x 为多少时 y 为 14
什么是机器学习中的线性回归?
在机器学习中,计算机程序(称为算法)会分析大型数据集,然后根据这些数据逆向工作计算线性回归方程。数据科学家首先在已知或标记的数据集上训练算法,然后使用该算法预测未知值。现实生活中的数据比上述示例更为复杂。因此,线性回归分析必须以数学方式修改或转换数据值以满足以下四个假设。
线性关系
自变量和因变量之间必须存在线性关系。为了确定线性关系,数据科学家会创建散点图(x 和 y 值的随机集合),以查看这些值是否落于直线上。如果没有,则可以应用非线性函数(例如平方根或对数)以数学方式创建两个变量之间的线性关系。
残差独立性
数据科学家使用残差来衡量预测准确性。残差是观测数据与预测值之间的差值。残差之间不得存在可识别的模式。例如,您不希望残差随时间逐渐增加。您可以使用不同的数学检验(例如 Durbin-Watson 检验)来确定残差独立性。您可以使用虚拟数据来替换任何数据变体,例如季节性数据。
正态性
绘图技术(如 Q-Q 图)可确定残差是否为正态分布。残差应落于图形中心的对角线上。如果残差不呈正态分布,则可以检验数据是否存在随机异常值或非典型值。删除异常值或执行非线性转换可以解决此问题。
同方差性
同方差性假设残差具有每个 x 值的平均值的恒定方差或标准偏差。否则,分析结果可能不准确。如果不满足此假设,则可能必须更改因变量。由于大型数据集中本身存在方差,因此更改因变量的比例是有意义的。例如,使用人口规模来预测每个人的平均消防站数量,而非使用人口规模来预测城市中消防站的数量。
线性回归有哪些类型?
某些类型的回归分析比其他类型的回归分析更适合处理复杂的数据集。以下是一些示例。
简单线性回归
简单线性回归由线性函数定义:
Y= β0*X + β1 + ε
β0 和 β1 是表示回归斜率的两个未知常量,而 ε 是误差项。
您可以使用简单的线性回归对两个变量之间的关系建模,如下所述:
- 降雨量和作物产量
- 儿童的年龄和身高
- 温度计中金属汞的温度和膨胀速度
多元线性回归
在多元线性回归分析中,数据集包含一个因变量和多个自变量。线性回归线性函数将更改为包含更多因子,如下所示:
Y= β0*X0 + β1X1 + β2X2+…… βnXn+ ε
随着预测变量数量的增加,β 常量也会相应增加。
多元线性回归针对多个变量及其对结果的影响建模:
- 降雨、温度和肥料使用对作物产量的影响
- 饮食和运动对心脏病的影响
- 工资增长和通货膨胀对住房贷款利率的影响
逻辑回归
数据科学家使用逻辑回归来衡量事件发生的概率。概率是一个介于 0 和 1 之间的值,其中 0 表示不太可能发生的事件,1 表示最可能发生的事件。逻辑方程使用对数函数来计算回归线。
下面是一些示例:
- 体育赛事中赢或输的概率
- 通过或未通过测试的概率
- 图像是水果或动物的概率
AWS 如何帮助您解决线性回归问题?
Amazon SageMaker 是一项完全托管的服务,可以帮助您快速准备、构建、训练和部署高质量的机器学习 (ML) 模型。Amazon SageMaker Canvas 是一种通用的自动机器学习解决方案,用于解决分类和回归问题,例如欺诈检测、流失分析和定向营销。
亚马逊 Redshift 是一种快速、广泛使用的云数据仓库,它与亚马逊 SageMaker for ML 进行了原生集成。借助亚马逊 Redshift ML,您可以使用简单的 SQL 语句在亚马逊 Redshift 中根据您的数据创建和训练机器学习模型。然后,您可以使用这些模型来解决各类线性回归问题。
立即开始使用亚马逊 SageMaker JumpStart 或创建一个 AWS 账户。