Logistic Regression 概述
Logistic regression 是一种用于二分类问题的模型,虽然名字中有 “regression”(回归),它实际上是用于分类任务的。这个模型的核心思想是通过一个线性函数生成一个值,然后通过**逻辑函数(logistic function)**将这个值映射为概率。
-
线性权重(linear weights):在线性回归中,我们对输入数据 x x x 应用一个线性变换,形式为 w ⊤ ϕ ( x ) w^\top \phi(x) w⊤ϕ(x),其中 w w w 是权重向量, ϕ ( x ) \phi(x) ϕ(x) 是输入数据 x x x 的特征向量。这个结果就是一个标量值,通常称为 “线性组合”。
-
逻辑函数(logistic squashing function):我们使用一个逻辑函数来将上面得到的标量值映射为一个概率。逻辑函数的定义为:
σ ( z ) = 1 1 + e − z \sigma(z) = \frac{1}{1 + e^{-z}} σ(z)=1+e−z1
这个函数会将任意实数 z z z 映射到 ( 0 , 1 ) (0, 1) (0,1) 之间的一个值,类似于概率的取值范围。它的输出可以解释为某个事件发生的概率。
公式解释
类别概率的建模
我们要预测二分类中的某一个类别的概率。比如,预测
y
=
1
y = 1
y=1 的概率。根据 logistic 回归的模型,这个概率可以表示为:
p
(
y
=
1
∣
x
)
=
σ
(
w
⊤
ϕ
(
x
)
)
p(y = 1 | x) = \sigma(w^\top \phi(x))
p(y=1∣x)=σ(w⊤ϕ(x))
这里
w
⊤
ϕ
(
x
)
w^\top \phi(x)
w⊤ϕ(x) 是一个线性函数,逻辑函数
σ
(
⋅
)
\sigma(\cdot)
σ(⋅) 会将它映射为一个在 0 到 1 之间的值,表示为类别 1 的概率。
同样,类别
y
=
0
y = 0
y=0 的概率可以通过:
p
(
y
=
0
∣
x
)
=
1
−
σ
(
w
⊤
ϕ
(
x
)
)
p(y = 0 | x) = 1 - \sigma(w^\top \phi(x))
p(y=0∣x)=1−σ(w⊤ϕ(x))
因为逻辑回归的两个类别(
y
=
1
y = 1
y=1 和
y
=
0
y = 0
y=0)是互斥的,它们的概率加起来应该等于 1。所以我们直接用
1
−
σ
(
w
⊤
ϕ
(
x
)
)
1 - \sigma(w^\top \phi(x))
1−σ(w⊤ϕ(x)) 来表示类别 0 的概率。
逻辑函数的性质
逻辑函数有一个重要的性质:当 z = 0 z = 0 z=0 时, σ ( 0 ) = 0.5 \sigma(0) = 0.5 σ(0)=0.5。这意味着,当线性函数 w ⊤ ϕ ( x ) = 0 w^\top \phi(x) = 0 w⊤ϕ(x)=0 时,模型预测的概率是 0.5,表示模型不确定类别是 y = 1 y = 1 y=1 还是 y = 0 y = 0 y=0。
决策边界
逻辑回归的决策边界就是找到使得 p ( y = 1 ∣ x ) = 0.5 p(y = 1 | x) = 0.5 p(y=1∣x)=0.5 的点。因为 σ ( 0 ) = 0.5 \sigma(0) = 0.5 σ(0)=0.5,所以当 w ⊤ ϕ ( x ) = 0 w^\top \phi(x) = 0 w⊤ϕ(x)=0 时,模型预测的概率是 0.5,这就是决策边界。决策边界可以理解为在特征空间中将两个类别区分开来的一个超平面。
如果我们有 D D D 维的输入空间,那么这个决策边界就是一个 D − 1 D-1 D−1 维的超平面。
如何理解 p ( y = 0 ∣ x ) p(y = 0 | x) p(y=0∣x)
现在,我们详细解释 p ( y = 0 ∣ x ) p(y = 0 | x) p(y=0∣x) 是如何理解的。
在逻辑回归中,
p
(
y
=
1
∣
x
)
p(y = 1 | x)
p(y=1∣x) 表示在给定特征
x
x
x 的条件下,样本属于类别 1 的概率。由于这是二分类问题,总共有两个类别
y
=
1
y = 1
y=1 和
y
=
0
y = 0
y=0,并且这两个事件是互斥的,因此:
p
(
y
=
1
∣
x
)
+
p
(
y
=
0
∣
x
)
=
1
p(y = 1 | x) + p(y = 0 | x) = 1
p(y=1∣x)+p(y=0∣x)=1
这意味着,给定特征
x
x
x 的条件下,属于类别 1 的概率加上属于类别 0 的概率必须等于 1。
由于我们已经知道
p
(
y
=
1
∣
x
)
=
σ
(
w
⊤
ϕ
(
x
)
)
p(y = 1 | x) = \sigma(w^\top \phi(x))
p(y=1∣x)=σ(w⊤ϕ(x)),所以:
p
(
y
=
0
∣
x
)
=
1
−
σ
(
w
⊤
ϕ
(
x
)
)
p(y = 0 | x) = 1 - \sigma(w^\top \phi(x))
p(y=0∣x)=1−σ(w⊤ϕ(x))
这代表:属于类别 0 的概率等于 1 减去属于类别 1 的概率。
举例说明:
假设对于一个样本的特征
x
x
x,我们通过模型计算得到
w
⊤
ϕ
(
x
)
=
1
w^\top \phi(x) = 1
w⊤ϕ(x)=1。那么,类别 1 的概率就是:
p
(
y
=
1
∣
x
)
=
σ
(
1
)
=
1
1
+
e
−
1
≈
0.73
p(y = 1 | x) = \sigma(1) = \frac{1}{1 + e^{-1}} \approx 0.73
p(y=1∣x)=σ(1)=1+e−11≈0.73
于是,类别 0 的概率就是:
p
(
y
=
0
∣
x
)
=
1
−
0.73
=
0.27
p(y = 0 | x) = 1 - 0.73 = 0.27
p(y=0∣x)=1−0.73=0.27
这表明模型认为这个样本有 73% 的可能性属于类别 1,27% 的可能性属于类别 0。
解释各个概念
-
权重向量 w ~ = [ w 1 , w 2 , . . . , w D ] ⊤ \tilde{w} = [w_1, w_2, ..., w_D]^\top w~=[w1,w2,...,wD]⊤:
- w ~ \tilde{w} w~ 是不包含偏置项的权重向量,它由 D D D 维的特征权重组成。这里 w 1 , w 2 , . . . , w D w_1, w_2, ..., w_D w1,w2,...,wD 是输入特征 ϕ ( x ) \phi(x) ϕ(x) 对应的权重,而我们暂时没有考虑偏置项 w 0 w_0 w0。
-
向量的方向影响超平面的方向:
- 向量 w ~ \tilde{w} w~ 的方向决定了超平面的方向,即超平面如何在特征空间中排列。换句话说,权重向量 w ~ \tilde{w} w~ 的方向(或者说它指向的方向)与超平面的法向量一致,超平面与 w ~ \tilde{w} w~ 垂直。权重向量的方向改变,超平面的方向也会改变。
-
超平面垂直于 w ~ \tilde{w} w~:
- 因为权重向量 w ~ \tilde{w} w~ 决定了超平面的方向,超平面会与权重向量 w ~ \tilde{w} w~ 垂直。换句话说,超平面是沿着 w ~ \tilde{w} w~ 的垂直方向分隔特征空间的。
-
偏置参数 w 0 w_0 w0 只会影响超平面的位置:
- 偏置项 w 0 w_0 w0 决定了超平面在特征空间中的位置,但不会改变超平面的方向。简单来说,改变偏置项 w 0 w_0 w0 就相当于平行地移动超平面,而不改变其方向。
-
权重向量的大小 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 影响分类的确定性:
- 权重向量的大小(也就是它的范数 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣)影响分类的“确定性”。较大的权重向量表示模型对样本分类非常确定,较小的权重向量则表示分类较为不确定。
-
小 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 值时,决策边界附近的概率接近 0.5:
- 当 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 较小时,模型在决策边界附近的分类概率趋于 0.5,也就是模型难以确定样本属于哪一个类别。在这种情况下,决策边界的区域更宽,样本越接近边界,分类的不确定性就越高。
-
大 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 值时,决策边界附近的概率接近 0 或 1:
- 当 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 较大时,决策边界区域更为清晰,靠近边界的样本会被非常明确地分到某一类,概率接近 0 或 1。此时模型对分类非常确定。
向量的范数 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 是什么?
∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 代表权重向量 w w w 的范数,也就是向量的长度或者说大小。在机器学习中,范数通常用来衡量向量的大小。在这里,向量的范数决定了分类的确定性:较大的范数表示更确定的分类,较小的范数表示分类的不确定性更高。
范数的公式:
权重向量的欧几里得范数(即
L
2
L_2
L2 范数)可以表示为:
∣
∣
w
∣
∣
=
w
1
2
+
w
2
2
+
⋯
+
w
D
2
||w|| = \sqrt{w_1^2 + w_2^2 + \dots + w_D^2}
∣∣w∣∣=w12+w22+⋯+wD2
这里,
w
1
,
w
2
,
…
,
w
D
w_1, w_2, \dots, w_D
w1,w2,…,wD 是权重向量中的各个分量。
如何理解范数的影响?
- 当 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 很小时,模型在决策边界区域内的变化非常缓慢。换句话说,模型对分类不太确定,给出的概率值会趋近于 0.5。
- 当 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣ 很大时,模型会迅速确定样本属于某一个类别。在这种情况下,决策边界附近的样本会被非常明确地分到某一类,其概率接近 0 或 1。
举例说明:
假设我们有一个二维的特征空间,其中权重向量为
w
=
[
2
,
3
]
w = [2, 3]
w=[2,3],其范数为:
∣
∣
w
∣
∣
=
2
2
+
3
2
=
13
≈
3.6
||w|| = \sqrt{2^2 + 3^2} = \sqrt{13} \approx 3.6
∣∣w∣∣=22+32=13≈3.6
如果我们增加权重的值,比如
w
=
[
10
,
15
]
w = [10, 15]
w=[10,15],那么范数变为:
∣
∣
w
∣
∣
=
1
0
2
+
1
5
2
=
325
≈
18.03
||w|| = \sqrt{10^2 + 15^2} = \sqrt{325} \approx 18.03
∣∣w∣∣=102+152=325≈18.03
可以看出,权重向量越大,模型对分类的信心越高,决策边界的过渡区域就越窄,分类结果更加确定。