西瓜书第3章线性模型-对数几率回归

对数几率回归 (Logistic Regression)

1. 基本形式

对数几率回归是一种二分类问题中的线性模型,其目的是预测一个样本属于某个类别的概率。其预测输出为一个介于0和1之间的概率值。

对于给定的输入特征向量 \(\mathbf{x} = [x_1, x_2, ..., x_n]^T\),模型的形式为:

\[P(y=1|\mathbf{x}) = \sigma(\mathbf{w}^T \mathbf{x} + b) \]

其中,\(\mathbf{w}\) 是权重向量,\(b\) 是偏置项,\(\sigma(z)\) 是逻辑函数,定义为:

\[\sigma(z) = \frac{1}{1 + e^{-z}} \]

2. 损失函数形式

对数几率回归采用的损失函数是对数似然损失,也称为交叉熵损失。对于单个样本 \((\mathbf{x}_i, y_i)\),其损失函数为:

\[L(\mathbf{w}, b) = -y_i \log(\hat{y}_i) - (1 - y_i) \log(1 - \hat{y}_i) \]

其中,\(\hat{y}_i = \sigma(\mathbf{w}^T \mathbf{x}_i + b)\) 为模型预测的概率值。对整个数据集(包含 \(m\) 个样本),损失函数为所有样本损失的平均值:

\[J(\mathbf{w}, b) = -\frac{1}{m} \sum_{i=1}^{m} \left[ y_i \log(\hat{y}_i) + (1 - y_i) \log(1 - \hat{y}_i) \right] \]

3. 如何根据损失函数得到最优参数

3.1 梯度下降法

通过最小化损失函数 \(J(\mathbf{w}, b)\) 来学习模型参数 \(\mathbf{w}\)\(b\)。常用的方法是梯度下降(Gradient Descent),其更新规则如下:

  • 对于权重向量 \(\mathbf{w}\)

\[w_j := w_j - \alpha \frac{\partial J(\mathbf{w}, b)}{\partial w_j} \]

其中,\(\alpha\) 是学习率,偏导数 \(\frac{\partial J(\mathbf{w}, b)}{\partial w_j}\) 为:

\[\frac{\partial J(\mathbf{w}, b)}{\partial w_j} = \frac{1}{m} \sum_{i=1}^{m} (\hat{y}_i - y_i) x_{ij} \]

  • 对于偏置项 \(b\)

\[b := b - \alpha \frac{\partial J(\mathbf{w}, b)}{\partial b} \]

其中,\(\frac{\partial J(\mathbf{w}, b)}{\partial b}\) 为:

\[\frac{\partial J(\mathbf{w}, b)}{\partial b} = \frac{1}{m} \sum_{i=1}^{m} (\hat{y}_i - y_i) \]

通过不断更新权重和偏置项,最终找到最小化损失函数的参数。

3.2 牛顿法迭代

牛顿法通过使用损失函数的二阶导数信息来加速收敛。对于对数几率回归,牛顿法的核心是使用海森矩阵(Hessian Matrix)进行更新。更新公式为:

\[\mathbf{\theta} := \mathbf{\theta} - H^{-1} \nabla J(\mathbf{\theta}) \]

其中,\(\mathbf{\theta}\) 是参数向量 \(\mathbf{w}\)\(b\) 的组合,\(H\) 是海森矩阵,\(\nabla J(\mathbf{\theta})\) 是损失函数的梯度。

  • 梯度 \(\nabla J(\mathbf{\theta})\) 的计算与梯度下降法类似:

\[\nabla J(\mathbf{\theta}) = \frac{1}{m} \sum_{i=1}^{m} (\hat{y}_i - y_i) \mathbf{x}_i \]

  • 海森矩阵 \(H\) 的计算为:

\[H = \frac{1}{m} \sum_{i=1}^{m} \hat{y}_i (1 - \hat{y}_i) \mathbf{x}_i \mathbf{x}_i^T \]

通过反复更新 \(\mathbf{\theta}\),牛顿法可以快速找到损失函数的最优值。相比梯度下降法,牛顿法通常在逼近最优解时收敛速度更快,但由于需要计算海森矩阵的逆,计算复杂度较高,尤其在特征维度较大时。

4. 应用范围

对数几率回归广泛应用于二分类问题,如以下场景:

  • 医学诊断:根据患者特征预测疾病是否发生。
  • 信用风险评估:根据用户的财务数据预测其是否会违约。
  • 市场营销:根据客户的行为特征预测是否会购买产品。

尽管对数几率回归假设特征和输出之间的关系是线性的,但其输出是通过逻辑函数将线性组合转换为概率。因此,对数几率回归可以有效地解决许多实际的分类问题,尤其是在数据维度较低且没有显著非线性关系的情况下。

posted @ 2024-10-22 22:16  yswtg  阅读(275)  评论(0)    收藏  举报