逻辑回归 (Logistic Regression)
逻辑回归 (Logistic Regression),尽管其名称中包含"回归",但它并非用于预测连续数值的回归分析 (Regression Analysis) 方法,而是一种广泛应用于解决分类问题 (Classification Problem) 的监督学习 (Supervised Learning) 算法,尤其在二元分类 (Binary Classification) 任务中表现出色。
该模型的核心思想是建立一个将输入特征 (Features) 的线性组合映射到 (0, 1) 区间内的概率 (Probability) 值的函数。这个概率值随后可用于预测一个样本属于某个特定类别(通常称为"正类"或"1")的可能性。
为什么不使用线性回归进行分类
为了更好地理解逻辑回归的必要性,我们首先要探讨为什么不能简单地使用线性回归 (Linear Regression) 来解决分类问题。
假设我们有一个二元分类任务,其因变量 Y Y Y 只有两个取值:0(负类)和1(正类)。如果我们强行使用线性回归模型 Y = β 0 + β 1 X + ϵ Y = \beta_0 + \beta_1 X + \epsilon Y = β 0 + β 1 X + ϵ 来拟合数据,会遇到以下几个严重问题:
输出范围不匹配 :线性回归的预测值 Y Y Y 的范围是 ( − ∞ , + ∞ ) (-\infty, +\infty) ( − ∞ , + ∞ ) ,而我们需要的分类结果是表示概率的 [0, 1] 区间内的值。线性回归的输出可能会远大于1或小于0,这在概率上是无意义的。对异常值敏感 :线性回归的拟合直线容易受到数据中异常值 (Outliers) 的影响。在分类场景下,一些远离决策边界的数据点可能会极大地改变直线的斜率,从而导致分类性能急剧下降。误差项假设不成立 :线性回归的一个基本假设是误差项 (Error Term) ϵ \epsilon ϵ 服从正态分布 (Normal Distribution)。然而,当因变量 Y Y Y 只能取0或1时,误差项 Y − ( β 0 + β 1 X ) Y - (\beta_0 + \beta_1 X) Y − ( β 0 + β 1 X ) 也只能取两个值,这显然不符合正态分布的假设,违背了线性回归的统计学基础。
为了克服这些问题,逻辑回归应运而生。它通过一个非线性的"连接函数"巧妙地将线性回归的输出转换为了合法的概率值。
模型原理与构建
逻辑回归模型的核心在于两个关键概念:对数几率 (Log-odds) 和 Sigmoid函数 。
1. 几率 (Odds) 与对数几率 (Log-odds)
在统计学中,一个事件发生的 几率 (Odds) 被定义为该事件发生的概率 p p p 与不发生的概率 1 − p 1-p 1 − p 之比:
Odds = p 1 − p \text{Odds} = \frac{p}{1-p} Odds = 1 − p p
如果 p = 0.5 p=0.5 p = 0.5 ,则几率为1。 如果 p > 0.5 p > 0.5 p > 0.5 ,则几率大于1。 如果 p < 0.5 p < 0.5 p < 0.5 ,则几率小于1。
几率的取值范围是 [ 0 , + ∞ ) [0, +\infty) [ 0 , + ∞ ) 。为了将取值范围扩展到整个实数域 ( − ∞ , + ∞ ) (-\infty, +\infty) ( − ∞ , + ∞ ) ,我们对几率取自然对数,得到 对数几率 (Log-odds) ,也称为 Logit 函数:
Logit ( p ) = ln ( p 1 − p ) \text{Logit}(p) = \ln\left(\frac{p}{1-p}\right) Logit ( p ) = ln ( 1 − p p )
逻辑回归模型的基本假设是:因变量的对数几率与自变量之间存在线性关系 。对于给定的输入特征 X = ( X 1 , X 2 , … , X k ) X = (X_1, X_2, \dots, X_k) X = ( X 1 , X 2 , … , X k ) ,模型可以表示为:
ln ( p ( Y = 1 ∣ X ) 1 − p ( Y = 1 ∣ X ) ) = β 0 + β 1 X 1 + β 2 X 2 + ⋯ + β k X k = β T X \ln\left(\frac{p(Y=1|X)}{1-p(Y=1|X)}\right) = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \dots + \beta_k X_k = \beta^T X ln ( 1 − p ( Y = 1∣ X ) p ( Y = 1∣ X ) ) = β 0 + β 1 X 1 + β 2 X 2 + ⋯ + β k X k = β T X
其中,p ( Y = 1 ∣ X ) p(Y=1|X) p ( Y = 1∣ X ) 是在给定特征 X X X 的条件下,结果为正类(Y = 1 Y=1 Y = 1 )的条件概率 。β = ( β 0 , β 1 , … , β k ) \beta = (\beta_0, \beta_1, \dots, \beta_k) β = ( β 0 , β 1 , … , β k ) 是模型的系数 (Coefficients),需要通过数据来估计。
2. Sigmoid 函数
为了从上述线性方程中求解出我们真正关心的概率 p p p ,我们需要进行逆运算。Logit函数的反函数被称为 逻辑函数 (Logistic Function) 或 Sigmoid函数 ,其数学表达式为:
σ ( z ) = 1 1 + e − z \sigma(z) = \frac{1}{1 + e^{-z}} σ ( z ) = 1 + e − z 1
其中 z = β 0 + β 1 X 1 + ⋯ + β k X k z = \beta_0 + \beta_1 X_1 + \dots + \beta_k X_k z = β 0 + β 1 X 1 + ⋯ + β k X k 。这个S形函数的图形具有优美的特性:无论输入 z z z 的值是多少,其输出 σ ( z ) \sigma(z) σ ( z ) 始终在 (0, 1) 区间内。这使得它成为将任意实数映射为概率的理想工具。
因此,逻辑回归的最终概率预测模型为:
p ( Y = 1 ∣ X ) = σ ( β T X ) = 1 1 + e − ( β 0 + β 1 X 1 + ⋯ + β k X k ) p(Y=1|X) = \sigma(\beta^T X) = \frac{1}{1 + e^{-(\beta_0 + \beta_1 X_1 + \dots + \beta_k X_k)}} p ( Y = 1∣ X ) = σ ( β T X ) = 1 + e − ( β 0 + β 1 X 1 + ⋯ + β k X k ) 1
在得到这个概率值后,我们通常会设定一个阈值 (Threshold),比如0.5。如果 p ( Y = 1 ∣ X ) > 0.5 p(Y=1|X) > 0.5 p ( Y = 1∣ X ) > 0.5 ,则预测类别为1;否则,预测类别为0。
参数估计:最大似然估计
逻辑回归的系数 β \beta β 不是通过像线性回归那样的普通最小二乘法 (Ordinary Least Squares, OLS) 来求解的,而是使用 最大似然估计 (Maximum Likelihood Estimation, MLE) 。
MLE的核心思想是:寻找一组参数 β \beta β ,使得在这组参数下,我们观测到的样本数据出现的概率(即似然函数 的值)最大。
对于一个包含 N N N 个独立观测样本的数据集 { ( X i , y i ) } i = 1 N \{(X_i, y_i)\}_{i=1}^N {( X i , y i ) } i = 1 N ,其中 y i ∈ { 0 , 1 } y_i \in \{0, 1\} y i ∈ { 0 , 1 } ,整个数据集的似然函数 L ( β ) L(\beta) L ( β ) 是所有样本发生概率的连乘积:
L ( β ) = ∏ i = 1 N [ p ( X i ) ] y i [ 1 − p ( X i ) ] 1 − y i L(\beta) = \prod_{i=1}^N [p(X_i)]^{y_i} [1-p(X_i)]^{1-y_i} L ( β ) = i = 1 ∏ N [ p ( X i ) ] y i [ 1 − p ( X i ) ] 1 − y i
其中 p ( X i ) = σ ( β T X i ) p(X_i) = \sigma(\beta^T X_i) p ( X i ) = σ ( β T X i ) 。为了计算方便,通常最大化对数似然函数 ln ( L ( β ) ) \ln(L(\beta)) ln ( L ( β )) :
ln ( L ( β ) ) = ∑ i = 1 N [ y i ln ( p ( X i ) ) + ( 1 − y i ) ln ( 1 − p ( X i ) ) ] \ln(L(\beta)) = \sum_{i=1}^N \left[ y_i \ln(p(X_i)) + (1-y_i) \ln(1-p(X_i)) \right] ln ( L ( β )) = i = 1 ∑ N [ y i ln ( p ( X i )) + ( 1 − y i ) ln ( 1 − p ( X i )) ]
这个函数没有闭式解(不像OLS),因此需要通过数值优化 (Numerical Optimization) 算法,如梯度下降 (Gradient Descent)、牛顿法等,来迭代地寻找使对数似然函数最大化的 β \beta β 值。
系数解释:几率比
逻辑回归的系数 β j \beta_j β j 的解释不如线性回归直接。β j \beta_j β j 表示在其他所有自变量保持不变的情况下,自变量 X j X_j X j 每增加一个单位,对数几率 的变化量。
为了更直观地理解,我们通常使用 几率比 (Odds Ratio, OR) ,即 e β j e^{\beta_j} e β j 。
OR j = Odds ( X j + 1 ) Odds ( X j ) = e β 0 + ⋯ + β j ( X j + 1 ) + … e β 0 + ⋯ + β j X j + … = e β j \text{OR}_j = \frac{\text{Odds}(X_j+1)}{\text{Odds}(X_j)} = \frac{e^{\beta_0 + \dots + \beta_j(X_j+1) + \dots}}{e^{\beta_0 + \dots + \beta_jX_j + \dots}} = e^{\beta_j} OR j = Odds ( X j ) Odds ( X j + 1 ) = e β 0 + ⋯ + β j X j + … e β 0 + ⋯ + β j ( X j + 1 ) + … = e β j
几率比的解释如下:
如果 β j > 0 \beta_j > 0 β j > 0 ,则 e β j > 1 e^{\beta_j} > 1 e β j > 1 。这表示当 X j X_j X j 每增加一个单位,事件发生的几率会变为原来的 e β j e^{\beta_j} e β j 倍(即几率增加)。 如果 β j < 0 \beta_j < 0 β j < 0 ,则 0 < e β j < 1 0 < e^{\beta_j} < 1 0 < e β j < 1 。这表示当 X j X_j X j 每增加一个单位,事件发生的几率会变为原来的 e β j e^{\beta_j} e β j 倍(即几率减少)。 如果 β j = 0 \beta_j = 0 β j = 0 ,则 e β j = 1 e^{\beta_j} = 1 e β j = 1 。这表示变量 X j X_j X j 的变化对事件发生的几率没有影响。
例如,在一个医学研究中,如果吸烟变量的系数是 β smoke = 0.693 \beta_{\text{smoke}} = 0.693 β smoke = 0.693 ,那么几率比就是 e 0.693 ≈ 2 e^{0.693} \approx 2 e 0.693 ≈ 2 。这意味着,相对于不吸烟者,吸烟者患某种疾病的几率是其2倍。
模型评估
评估逻辑回归模型性能的常用指标包括:
混淆矩阵 (Confusion Matrix) :展示了模型预测的正确和错误情况,包括真阳性 (TP)、真阴性 (TN)、假阳性 (FP) 和假阴性 (FN)。准确率 (Accuracy) :( T P + T N ) / ( T P + T N + F P + F N ) (TP+TN) / (TP+TN+FP+FN) ( TP + TN ) / ( TP + TN + FP + FN ) ,即正确分类的样本比例。但在样本不均衡时有误导性。精确率 (Precision) :T P / ( T P + F P ) TP / (TP+FP) TP / ( TP + FP ) ,在所有被预测为正类的样本中,真正是正类的比例。召回率 (Recall) 或灵敏度 (Sensitivity) :T P / ( T P + F N ) TP / (TP+FN) TP / ( TP + FN ) ,在所有真正是正类的样本中,被成功预测为正类的比例。F1分数 (F1-Score) :精确率和召回率的调和平均数,是综合评价两者的指标。ROC曲线 (Receiver Operating Characteristic Curve) 与AUC (Area Under the Curve) :ROC曲线描绘了在不同分类阈值下,召回率(真阳性率)与假阳性率的关系。AUC是ROC曲线下的面积,取值在0.5到1之间,越接近1表示模型区分正负样本的能力越强。
逻辑回归的扩展
多项逻辑回归 (Multinomial Logistic Regression) :当因变量有三个或更多无序的类别时使用(例如,A、B、C三种产品选择)。有序逻辑回归 (Ordinal Logistic Regression) :当因变量是多个有序的类别时使用(例如,"差"、"中"、"好")。
关于知经 KNOWECON
知经 KNOWECON 是深圳市卢可教育科技有限公司旗下的教育科技品牌,长期面向北京大学、清华大学、中国人民大学等顶尖院校,提供经济学、金融学、统计学、管理学等相关科目的专业课考研辅导与复试辅导。每年都有数十名同学在我们的帮助下完成系统备考,并成功进入理想院校。
知经主讲人喵喵学长毕业于北京大学汇丰商学院经济学专业和新加坡国立大学金融工程专业,获经济学硕士与金融工程硕士学位。他同时也是软件工程师和教育科技创业者,长期探索用讲义、题库、记忆系统、智能答疑与学习数据工具改善专业课学习体验。
我们相信,好的考研辅导不只是押题和陪跑,更是把复杂知识讲清楚、把复习路径设计清楚,并用技术让学习过程更可追踪、更可反馈、更可坚持。