线性回归与逻辑回归

一、线性回归(Linear Regression)

1. 定义

线性回归是一种用于预测连续型目标变量(因变量)与一个或多个自变量(特征)之间关系的模型。其基本假设是因变量与自变量之间存在线性关系。

数学表达式为:
y = β 0 + β 1 x 1 + β 2 x 2 + ⋯ + β n x n y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_n x_n y=β0+β1x1+β2x2+⋯+βnxn

其中:

  • y y y 是预测值
  • β 0 \beta_0 β0 是截距
  • β 1 , β 2 , ... , β n \beta_1, \beta_2, \ldots, \beta_n β1,β2,...,βn 是回归系数
  • x 1 , x 2 , ... , x n x_1, x_2, \ldots, x_n x1,x2,...,xn 是自变量

2. 损失函数

线性回归常用的损失函数是均方误差(Mean Squared Error, MSE),定义为预测值与真实值之间差异的平方的平均值:

MSE = 1 m ∑ i = 1 m ( y i − y ^ i ) 2 \text{MSE} = \frac{1}{m} \sum_{i=1}^{m} (y_i - \hat{y}_i)^2 MSE=m1i=1∑m(yi−y^i)2

其中:

  • m m m 是样本数量
  • y i y_i yi 是真实值
  • y ^ i \hat{y}_i y^i 是预测值

最小化MSE可以找到最佳的回归系数,使模型对训练数据的预测误差最小。

二、逻辑回归(Logistic Regression)

1. 定义

逻辑回归是一种用于二分类或多分类任务的模型,旨在预测样本属于某一类别的概率。尽管名称中含有"回归"二字,但其主要用于分类问题。

数学表达式(用于二分类)为:
P ( y = 1 ∣ x ) = σ ( z ) = 1 1 + e − z P(y=1|x) = \sigma(z) = \frac{1}{1 + e^{-z}} P(y=1∣x)=σ(z)=1+e−z1

其中:

  • z = β 0 + β 1 x 1 + β 2 x 2 + ⋯ + β n x n z = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_n x_n z=β0+β1x1+β2x2+⋯+βnxn
  • σ ( z ) \sigma(z) σ(z) 是逻辑函数(Sigmoid函数)

即对线性回归的输出多了一层取sigmoid。

2. 损失函数

逻辑回归常用的损失函数是对数损失函数(Log Loss),也称为交叉熵损失函数,定义为:

Log Loss = − 1 m ∑ i = 1 m y i log ⁡ ( y \^ i ) + ( 1 − y i ) log ⁡ ( 1 − y \^ i ) \text{Log Loss} = -\frac{1}{m} \sum_{i=1}^{m} \left y_i \\log(\\hat{y}_i) + (1 - y_i) \\log(1 - \\hat{y}_i) \\right Log Loss=−m1i=1∑myilog(y\^i)+(1−yi)log(1−y\^i)

其中:

  • m m m 是样本数量
  • y i y_i yi 是真实标签(0或1)
  • y ^ i \hat{y}_i y^i 是预测的概率值 P ( y = 1 ∣ x i ) P(y=1|x_i) P(y=1∣xi)

最小化对数损失函数可以找到最佳的回归系数,使模型对训练数据的分类概率误差最小。

训练完成之后,在预测时,当输出 > 0.5 >0.5 >0.5认为预测值是1,反之为0。

相关推荐
纪念 229几秒前
C++ 算法基础 (差分)
开发语言·c++·算法
jyOverQ3 小时前
从零学 JVM(六):垃圾回收算法详解——标记清除、标记复制与标记整理
jvm·算法
严肃小白兔5 小时前
第 06/24 期:神经网络的反向传播算法:从链式法则到梯度计算
人工智能·神经网络·算法
落羽的落羽5 小时前
【C++】C++17的主要特性
linux·服务器·开发语言·c++·算法·机器学习
【心态好不摆烂】6 小时前
数据结构基础精讲3
数据结构·算法
漂流瓶jz7 小时前
UVA-1613 K度图的着色 题解答案代码 算法竞赛入门经典第二版
算法·深度优先·图论·贪心·aoapc·算法竞赛入门经典·uva
Pniubi8 小时前
动态规划入门 ( - 力扣509斐波那契数)
算法·动态规划
吴长建先生重名了9 小时前
GitHub Actions部署报表系统踩坑记:幂等性与限
算法
贝壳6909 小时前
一个2026年2月才上传的库,凭什么敢碰2009年就有人写烂的题目
算法