逻辑回归:疾病风险概率建模
尽管名称中带有'回归',逻辑回归(Logistic Regression)实际上是一种广泛应用于分类任务的线性模型。在医疗领域,它凭借简单高效、可解释性强以及能输出概率值的特性,成为疾病风险预测、诊断辅助和预后评估的基石算法。
算法原理
逻辑回归的核心思想是利用线性回归的输出估计样本属于某个类别的概率。它通过 Sigmoid 函数将线性组合的实数映射到 (0,1) 区间,从而解决分类问题。
从线性回归到逻辑回归
线性回归试图用特征的线性组合预测连续值:
$$z = \theta_0 + \theta_1 x_1 + \theta_2 x_2 + \dots + \theta_p x_p = \theta^T x$$
其中 $\theta$ 是模型参数,$x$ 是特征向量。对于二分类问题,我们需要输出 $P(y=1|x)$,且该值应在 0 到 1 之间。因此,我们引入 Sigmoid 函数作为链接函数:
$$\sigma(z) = \frac{1}{1 + e^{-z}}$$
Sigmoid 函数呈 S 形曲线,将任意实数映射到 (0,1)。逻辑回归模型表示为:
$$P(y=1|x) = \sigma(\theta^T x) = \frac{1}{1 + e^{-\theta^T x}}$$
而 $P(y=0|x) = 1 - P(y=1|x)$。
决策边界
决策边界由 $\theta^T x = 0$ 决定,是一个线性超平面。当 $\theta^T x > 0$ 时,预测为正类;反之则为负类。在实际应用中,可以通过调整分类阈值(如从 0.5 降至 0.3)来控制模型的灵敏度与特异度。
模型估计:极大似然估计
参数 $\theta$ 通常通过 极大似然估计(MLE)求解。假设有 $m$ 个训练样本,似然函数为:
$$L(\theta) = \prod_{i=1}^{m} P(y^{(i)}|x^{(i)};\theta) = \prod_{i=1}^{m} \left( \sigma(\theta^T x^{(i)}) \right)^{y^{(i)}} \left(1 - \sigma(\theta^T x^{(i)})\right)^{1-y^{(i)}}$$
取对数得到 对数似然函数:
$$\ell(\theta) = \sum_{i=1}^{m} \left[ y^{(i)} \log(\sigma(\theta^T x^{(i)})) + (1-y^{(i)}) \log(1 - \sigma(\theta^T x^{(i)})) \right]$$
最大化 $\ell(\theta)$ 等价于最小化 交叉熵损失函数:
$$J(\theta) = -\frac{1}{m} \sum_{i=1}^{m} \left[ y^{(i)} \log(\hat{y}^{(i)}) + (1-y^{(i)}) \log(1-\hat{y}^{(i)}) \right]$$
梯度下降与优化
由于没有闭式解,通常使用迭代优化算法。梯度下降更新规则为:
$$\theta := \theta - \alpha \nabla J(\theta)$$
交叉熵损失函数对 $\theta_j$ 的偏导形式与线性回归相似:
$$\frac{\partial J}{\partial \theta_j} = \frac{1}{m} \sum_{i=1}^{m} (\hat{y}^{(i)} - y^{(i)}) x_j^{(i)}$$
正则化
为防止过拟合,常加入正则化项:
- L2 正则化:惩罚大参数值,使参数趋向零但不等于零。
- L1 正则化:产生稀疏解,具有特征选择作用。
- 弹性网络:结合 L1 和 L2。
正则化强度由超参数 $\lambda$(或 $C = 1/\lambda$)控制。在医疗场景中,L1 正则化有助于识别关键风险因素。


