MuXinCG's Blog

Back

我们接下来将视角转向分类问题,分类问题与回归问题类似,区别在于需要预测的目标变量只能取有限的离散值。

通常,00 被称为负类,11 被称为正类,有时也用符号”-“和”+“表示。

逻辑回归#

首先,由于 yy 只能取 {0,1}\{0, 1\} 中的值,模型的输出 hθ(x)h_{\theta}(x) 取大于 11 或小于 00 的值是没有意义的。

我们将选择

hθ(x)=g(θTx)=11+e−θTxh_{\theta}(x) = g(\theta^T x) = \frac{1}{1 + e^{-\theta^T x}}

其中

g(z)=11+e−zg(z) = \frac{1}{1 + e^{-z}}

称为逻辑函数或 S 形函数。

多类别分类#

对于 KK 个类别,可以训练 KK 个 one-vs-all 分类器,分别判断样本是否属于某一类;也可以直接使用 softmax:

p(y=k∣x)=exp⁡(θkTx)∑j=1Kexp⁡(θjTx).p(y=k\mid x)=\frac{\exp(\theta_k^Tx)}{\sum_{j=1}^{K}\exp(\theta_j^Tx)}.

对应的交叉熵损失为

J(Θ)=−1m∑i=1m∑k=1K1{y(i)=k}log⁡p(y=k∣x(i)).J(\Theta)=-\frac{1}{m}\sum_{i=1}^{m}\sum_{k=1}^{K}1\{y^{(i)}=k\}\log p(y=k\mid x^{(i)}).

预测时选择概率最大的类别即可。softmax 的优点是所有类别共享同一个归一化分布,输出可以直接解释为各类别的相对概率。

附录#

CS229 Machine Learning - Logistic Regression
https://muxincg2004.github.io/blog/cs229-lecture2
Author Ziheng Zhang
Published at March 2, 2026