1.什么是线性回归
线性回归是一种用于建立自变量和因变量之间线性关系的统计方法,广泛应用于数据分析和机器学习领域。
2.线性回归基本原理
线性回归的核心思想是通过拟合最佳直线(在高维空间中是超平面),来描述自变量和因变量之间的关系。这条直线被称为回归线,它尽可能地接近所有的数据点。
3.线性回归分类
(1)一元线性回归:只有一个自变量的线性回归称为一元线性回归。这种情况下,模型尝试找到一条直线来最好地描述两个变量之间的直接关系。
(2)多元线性回归:当有多个自变量时,这种类型的线性回归被称为多元线性回归。在这种情况下,模型会在一个多维空间中找到一个最佳拟合的超平面。
4线性回归适用条件
(1)线性关系:自变量和因变量之间存在线性关系。
(2)独立性:各个观测值之间相互独立,不受其他观测值的影响。
(3)同方差性:对于所有的自变量值,因变量的方差都是相同的。
(4)正态分布:因变量残差(实际值与预测值之差)呈正态分布。
5.线性回归应用领域
线性回归由于其简单性和解释性,在各个领域都有广泛的应用,包括经济学、社会科学、医学研究以及工程学等。
6线性回归模型评估
线性回归模型的性能通常通过计算实际值与预测值之间的差异(如均方误差)来评估。此外,还可以使用决定系数(R²)来衡量模型的解释力。
一、逻辑回归原理
逻辑回归的基本原理是通过一个逻辑函数将线性回归的输出映射到[0,1]区间,从而表示某个事件发生的概率。逻辑函数的表达式如下:
其中,$z$是输入特征与权重的线性组合,即$z = w^T x + b$。逻辑回归的目标是通过最大化似然函数来求解最优的权重参数$w$和偏置项$b$。
在线性回归中,我们假设随机变量𝑥1, ⋯ , 𝑥𝑛与𝑦之间的关系是线性的。但在实际中,我 们通常会遇到非线性关系。这个时候,我们可以使用一个非线性变换𝑔(⋅),使得线性 回归模型𝑓(⋅)实际上对𝑔(𝑦)而非𝑦进行拟合,即: 𝑦 = 𝑔 −1 𝑓 𝒙 • 其中𝑓(⋅)仍为: f 𝒙 = 𝒘⊤𝒙 + 𝑏 • 因此这样的回归模型称为广义线性回归模型。
广义线性回归模型使用非常广泛。例如在二元分类任务中,我们的目标是拟合这样一 个分离超平面𝑓(𝒙) = 𝒘⊤𝒙 + 𝑏,使得目标分类𝑦可表示为以下阶跃函数: 𝑦 = ቊ 0, 𝑓(𝒙) < 0 1, 𝑓(𝒙) > 0 • 但是在分类问题中,由于𝑦取离散值,这个阶跃判别函数是不可导的。不可导的性质 使得许多数学方法不能使用。我们考虑使用一个函数 𝜎(⋅) 来近似这个离散的阶跃函数, 通常可以使用logistic函数。(Sigmoid 函数)
逻辑回归模型:只是在线性回归之后加了一个sigmoid激活函数!将值映 射在【0,1】之间。
损失函数:MSE loss:计算数值之间的差异 BCE loss:计算分布之间的差异。
用PyTorch实现Logistic回归代码依赖于
逻辑回归实现同样是四个步骤: • 准备数据集 • 设计模型 • 定义损失函数和优化器 • 模型训练
代码实现如下:
Logistic 回归是深度学习中最基础的非线性生模型之一。在介绍Logistic回归以前,本章首先介绍了线性回归作为铺垫。线性回归的预测目标是连续变量,而Logistic回归的预测目标是二元变量。为了应对这一差异,Logistic回归在线性回归的基础上加入了sigmoid激活函数。本章最后使PyTorch实现了Logistic回归模型,读者可以通过这个例子进一步体会深度学习模型构建的整体流程以及框架编程的简便性。