西瓜书第3章线性模型-对数几率回归
对数几率回归 (Logistic Regression)
1. 基本形式
对数几率回归是一种二分类问题中的线性模型,其目的是预测一个样本属于某个类别的概率。其预测输出为一个介于0和1之间的概率值。
对于给定的输入特征向量 \(\mathbf{x} = [x_1, x_2, ..., x_n]^T\),模型的形式为:
其中,\(\mathbf{w}\) 是权重向量,\(b\) 是偏置项,\(\sigma(z)\) 是逻辑函数,定义为:
2. 损失函数形式
对数几率回归采用的损失函数是对数似然损失,也称为交叉熵损失。对于单个样本 \((\mathbf{x}_i, y_i)\),其损失函数为:
其中,\(\hat{y}_i = \sigma(\mathbf{w}^T \mathbf{x}_i + b)\) 为模型预测的概率值。对整个数据集(包含 \(m\) 个样本),损失函数为所有样本损失的平均值:
3. 如何根据损失函数得到最优参数
3.1 梯度下降法
通过最小化损失函数 \(J(\mathbf{w}, b)\) 来学习模型参数 \(\mathbf{w}\) 和 \(b\)。常用的方法是梯度下降(Gradient Descent),其更新规则如下:
- 对于权重向量 \(\mathbf{w}\):
其中,\(\alpha\) 是学习率,偏导数 \(\frac{\partial J(\mathbf{w}, b)}{\partial w_j}\) 为:
- 对于偏置项 \(b\):
其中,\(\frac{\partial J(\mathbf{w}, b)}{\partial b}\) 为:
通过不断更新权重和偏置项,最终找到最小化损失函数的参数。
3.2 牛顿法迭代
牛顿法通过使用损失函数的二阶导数信息来加速收敛。对于对数几率回归,牛顿法的核心是使用海森矩阵(Hessian Matrix)进行更新。更新公式为:
其中,\(\mathbf{\theta}\) 是参数向量 \(\mathbf{w}\) 和 \(b\) 的组合,\(H\) 是海森矩阵,\(\nabla J(\mathbf{\theta})\) 是损失函数的梯度。
- 梯度 \(\nabla J(\mathbf{\theta})\) 的计算与梯度下降法类似:
- 海森矩阵 \(H\) 的计算为:
通过反复更新 \(\mathbf{\theta}\),牛顿法可以快速找到损失函数的最优值。相比梯度下降法,牛顿法通常在逼近最优解时收敛速度更快,但由于需要计算海森矩阵的逆,计算复杂度较高,尤其在特征维度较大时。
4. 应用范围
对数几率回归广泛应用于二分类问题,如以下场景:
- 医学诊断:根据患者特征预测疾病是否发生。
- 信用风险评估:根据用户的财务数据预测其是否会违约。
- 市场营销:根据客户的行为特征预测是否会购买产品。
尽管对数几率回归假设特征和输出之间的关系是线性的,但其输出是通过逻辑函数将线性组合转换为概率。因此,对数几率回归可以有效地解决许多实际的分类问题,尤其是在数据维度较低且没有显著非线性关系的情况下。

浙公网安备 33010602011771号