逻辑回归是一种简单但功能强大的机器学习监督算法。它广泛用于目标只有两个类别的二元分类问题。逻辑回归使用 sigmoid 函数来预测数据点属于每个类别的概率。
逻辑回归在许多数据科学或机器学习教科书中都有讨论。但是,有几个问题仍未得到明确的解答。
-
第一个问题是为什么要使用 sigmoid函数来计算概率?教科书上是不是直接给出的函数表达式?!计算概率时我们确实需要有一个概率分布,但为什么要是它而不是别的函数? -
第二问题是Sigmoid函数是否假设数据集是由某个特定概率分布产生的? -
第三个问题是在线性回归中,主要假设是数据点包含一个正态分布的噪声,逻辑回归是否也有类似的假设?
本文将梳理这些问题并通俗易懂的回答这些孪生问题。
1. 逻辑回归
逻辑回归用于二元分类问题。假设有一个数据集,其特征为 ,目标值为 ,取值范围为 -1 和 1,下面的方程是逻辑回归模型的基础:
这里 是数据点( )的目标为 +1 的预测概率, 是在训练过程中确定的模型参数。如果我们假设:
那么方程 1 可以简化为:
我们单从函数本身来讨论,也就是上式的右边:
这个函数称为 sigmoid函数 或 标准逻辑函数,函数图像如图 1 所示:
sigmoid 函数最重要的特点是,当 时,它趋向于 1;当 时,它趋向于 0。我们知道,概率被量化为介于 0 和 1 之间的数字(或等同于 0% 和 100% 之间的数字),其中 0 表示不可能,1 表示肯定。因此,我们恰巧可以利用 sigmoid 函数的特点来表示结果的概率。也就是说用它可以将任何实值输入( )映射为介于 0 和 1 之间的概率值,至少在值域是吻合的。
回到逻辑回归的表达式中:
我们可以看到逻辑回归计算的是一个数据点的目标值为 +1 的概率。要得到预测值 ,我们需要将这一概率与默认等于 0.5 的阈值进行比较。预测值(用 表示)按如下方式确定:
看起来逻辑回归是一个相当简单的模型,但主要问题是。为什么我们使用sigmoid函数来计算概率,这与概率分布有关吗?
2. 逻辑分布
逻辑分布是一种连续概率分布,其 PDF(概率密度函数)定义为:
其中
和
称为分布的位置和规模参数,是不是与正态分布很像。
如果随机变量 具有参数 和 的 逻辑分布,我们用 表示。两个参数都是实数,且 。
标准逻辑分布是
=0,
的 逻辑分布,其 PDF 为:
图 2 显示了标准逻辑分布的 PDF 图。
图 2
随机变量 的 CDF(累积分布函数)用 表示,是 取值小于或等于 的概率:
如果 是连续概率分布,其 PDF 为 ,则可使用下式确定其 CDF:
现在,利用这个等式,我们就可以计算出标准逻辑分布随机变量的 CDF:
如您所见,随机变量 的 CDF 就是简单的 sigmoid 函数,
3. sigmoid函数的统计解释
假设 是一个实数。我们可以将其显示为横轴上的一个点(下图)。根据 的值,我们有多大把握确定它的符号呢?如果我们知道 的具体值,就可以确定它的符号。例如,如果我们知道 ,我们就可以确定它是一个正数。
现在假设有另一种情况,我们在读取或测量 值时有一些噪声。事实上,我们观察到的 的当前值是其实际值加上随机噪声。我们假设这个噪声是一个具有标准逻辑分布的随机变量。因此, 的观测值定义为:
其中
为
的实际值,
为随机噪声具有标准逻辑分布(与上面环环相扣)。如图下图所示。例如,在图中,
是一个负数,但加入随机噪声
后,
变成了正数
。因此,虽然通过观察正数
,我们不能 100% 确定它的实际值(
)也是正数。
图 3
这看起来可能令人无所适从,但我们偏要利用概率论来计算出现正 的概率。这是可行的,因为我们知道随机噪声的概率分布。因此,我们要计算的是:
根据公式 3,可以带入上式得出:
我们知道
是一个具有标准逻辑分布的随机变量(
),因此根据 CDF 的定义(公式 2),我们可以写出:
也就是说, 的 sigmoid函数值 表示 是正数的概率(图 4)。
图 4 左变是标准逻辑分布(PDF),右边是sigmoid函数(CDF)
我们通过标准逻辑分布与sigmoid函数之间的关系,构建了 随机变量 与 0 的关系。
4. 逻辑回归:概率论视角
既然我们已经了解了 sigmoid 函数的统计解释,那么我们就可以看看逻辑回归作为概率模型的运行的数学逻辑。假设我们想使用图 5 所示的数据集来训练逻辑回归模型。
|
|
|
只有一个特征( )具有二进制,取值为-1 和 1(也可能是 0 和 1)。数据集有 个实例, 的上标表示每行的实例编号。现在假设 的标签(1 或-1)取决于隐藏连续变量 的符号。如果 ,则 =+1;否则为-1(图 6)。
|
|
|
|
当然,我们并不知道每个实例中
的确切值。我们唯一知道的是
的正负符号。但我们可以尝试使用线性函数
来估计它。我们假设这个函数是数据集特征的线性组合。在这种情况下,我们只有一个特征,因此可以写成:
请记住, 是用来估算无观测变量 的值。
我们在这里还做了另一个重要假设。我们假设 是在 : 中加入随机噪声的结果。
其中随机噪声 (
) 具有标准逻辑分布。现在,如果我们将等式 4 中的
替换为
,就可以得出:
这意味着出现正 (+1) 标签的概率等于 的 sigmoid 函数值(概率值)。
图 8
请注意,由于逻辑分布的线性特性,我们也可以写成
这意味着我们还可以假设 具有参数 和 1 的逻辑分布(因此该分布的平均值为 )
假设这些假设对 的所有可能值都有效。因此,变量 的符号决定了每个 的 的标签,为了估算 的值,我们将 线定义为:
我们还假设:
由此可见:
请注意,这个等式与定义逻辑回归模型的等式 1 相同。现在,我们可以清楚地知道为什么需要用 sigmoid 函数来计算概率了。
5. 数据生成过程
让我们换一种方式来书写等式 5:
我们知道 具有标准的逻辑分布。由于该分布在零点附近对称,我们可以说 也具有标准 逻辑 分布。因此,如果我们用 来表示 ,前面的问题可以写成:
这是一个重要的等式,因为它显示了 是如何产生的。逻辑回归的主要假设是 有两个组成部分:一个是与特征有线性关系的确定性成分 ( ),另一个是具有标准逻辑分布的随机成分,即噪声。下图展示了这一过程,通过上面这么长的推理得到的回归逻辑与线性回归类似了。
训练数据集的目标给出了 的符号,但我们不知道 的实际值和直线 的参数。当我们训练逻辑回归模型时,这样我们就可以顺理成章的估计 和 。经过训练后,我们可以使用这些估计值来预测任意数据点 的 =+1 的概率。最后,通过将该概率与阈值进行比较,可以预测出该点的目标值( )。
图 10
6. 为什么使用逻辑分布?
如果您熟悉线性回归,可能会知道它也有类似的数据生成过程。主要区别在于,在线性回归中,噪声项呈正态分布。在线性回归中,基本假设是观测目标(
)有两个部分:一个是来自线性模型的确定性部分,另一个是具有正态分布的随机部分,其均值为零,方差未知:
另一个不同之处在于,在线性回归中,我们可以观察到目标的实际值 (图 11)。当然,我们并不知道确定性分量( 和 )的系数,因此我们试图在训练过程中对其进行估计。
图 11 线性回归
但这里有一个重要问题。为什么我们不用正态分布来表示逻辑回归中的噪声项呢?根据中心极限定理,正态分布似乎是描述噪声的更好选择。图 12 比较了标准逻辑分布和标准正态分布。它们的形状相似。两者都是围绕零对称的钟形曲线。
然而,正态分布的主要问题在于计算 CDF。我们看到,sigmoid 函数是逻辑分布的 CDF。要找到标准正态分布的 CDF,我们需要对其 PDF 函数进行积分。因此,我们有
这个积分没有闭式解。另一方面,使用 sigmoid 函数要容易得多。这就解释了为什么逻辑分布在这个环境中是表示噪声的更好选择。
在本文中,我们讨论了 sigmoid 函数及其与逻辑回归的关系。逻辑回归是一种试图预测目标变量标签的二元分类算法。我们假设目标变量的值可以通过由随机过程产生的非观测变量的符号来确定。我们证明了典型逻辑分布的 CDF 是 sigmoid 函数。最后,我们证明了逻辑回归的概率模型与线性回归类似。主要区别在于逻辑回归中的噪声具有标准逻辑分布,因此可以使用 sigmoid 函数来计算概率。
感谢阅读! 如果给你带来不一样的情绪价值,请点击关注,打赏更好了。

