目录
一、什么是线性回归?
1.1定义
线性回归是一种用于建立变量之间线性关系的统计模型,通常用于预测或解释因变量(目标变量)与一个或多个自变量(特征)之间的关系。
简单说,线性回归尝试找到自变量和因变量之间的最佳线性关系,即找到一条直线(二维空间)或超平面(多维空间),使得这条直线或超平面能够最好地拟合数据点。
1.2分类
- 单变量线性回归
- 多变量线性回归
二、线性回归的数学原理
注:以下内容以单变量线性回归为例进行分析
2.1数学模型
其中
- y 是目标变量
- x 是特征变量(输入变量)
是误差项,表示模型无法完全解释的因素
2.2 假设函数(Hypothesis function)
假设函数 表示了模型对目标变量 ( y ) 和特征变量 ( x ) 之间关系的估计
2.3成本函数(Cost function)
成本函数用于衡量模型预测值与实际观测值之间的差异。
对于线性回归,通常选择均方误差(Mean Squared Error,MSE)作为成本函数:
其中
- m 是训练样本的数量
是第 i 个样本
三、实现线性回归
3.1数据预处理
3.1.1 数据集的划分
按照一定比例,将数据集划分为训练集和测试集。
3.1.2特征缩放(Feature Scaling)
如果特征在不同的尺度上,可以进行特征缩放
常用的方法有标准化(Standardization)和归一化(Normalization)
- 标准化(Standardization)
标准化是将数据按其特征的均值(mean)和标准差(standard deviation)进行缩放,使得特征的取值符合标准正态分布(即均值为0,标准差为1),并且可以使不同特征具有可比性。
其中
(m指样本数量)
(m指样本数量)
- 归一化(Normalization)
归一化的目的是将特征缩放到一个固定的范围,通常是[0, 1]或者[-1, 1]之间。
常见的归一化方法有 最小-最大归一化,小数定标标准化
下面给出最小-最大归一化简单介绍:
其中
- x 是原始特征数据
是特征 x 的最小值
-
)是特征 x 的最大值
如何选择?选择标准化 or 归一化?
-
标准化 更适合处理那些特征的分布不明确,或者存在异常值的情况。例如,某些特征可能服从正态分布或者近似正态分布。
-
归一化 更适合处理那些特征的取值范围较为离散,需要映射到一个统一的区间范围进行比较的情况。例如,房屋占地的范围通常是[100, 1000],需要归一化到(0, 1]范围内。
3.2选择优化算法
梯度下降法(Gradient Descent)
梯度下降法是一种常用的优化算法,用于最小化成本函数。
成本函数:
目标:寻找合适的使得成本函数达到极小值
方式:
目标函数:
- 批量梯度下降
注:
是学习率,用来控制每次参数更新的步长
优点:易找到最优解
缺点:每次都考虑所有样本,实现速度慢
- 随机梯度下降
优点:每次找一个样本,迭代速度快
缺点:不确定大,不一定每次都朝着收敛的方向
- 小批量梯度下降
注:
是学习率,用来控制每次参数更新的步长
优点:每次更新选择一小部分数据来算,计算效率高
缺点:可能陷入局部最优
3.3模型评估与优化
- 使用训练集数据,通过选择合适的优化算法来训练线性回归模型。
- 根据训练集上的成本函数表现,调整学习率 ,以优化模型性能。
- 计算均方误差、决定系数等评估模型性能