老饼讲解:一步一步上手学习
在上节,我们已经认识了逻辑回归的损失函数了,但是我们没有讲它的原理,这是特地留出来了的,因为我们需要顺着它,来讲下"最大似然"和“交叉熵”这两个知识点,那这一节,我们就用"最大似然"和“交叉熵”来讲下逻辑回归的损失函数是怎么推导出来的,以及它的意义。
我们先用最大似然,来看看逻辑回归的损失函数是怎么得出来的吧!看完推导,同时也就知道什么是最大似然了。
我们都知道,逻辑回归输出的是概率,那么,我们当然希望这个概率越准确越好,所以我们的目标自然也就是最大化"正确概率"了~!我们不妨先来看单个样本预测正确的概率,再看整体预测正确的概率,开车!
对于单个样本,逻辑回归模型预测准确的概率为:
解释:逻辑回归的输出p就是样本属于类别1的概率,当真实标签y为1时,P就是评估正确的概率,真实标签y为0时,P是错误的概率,1-P 就是模型正确的概率。
巧妙的操作是,可以用一条式子把上述二式合并如下:
解释:当y=1时,第二个括号等于1;当y=0时,第一个括号等于1,所以它与上述两式是一致的。
假设每个样本是独立事件,则逻辑回归总评估正确的概率为所有样本评估正确的积,如下:
我们期待 最大化, 中含有大量的乘号,为计算方便,我们外套一个对数,也就是最大化,由于对数是单调递增函数,所以能让P最大化的W,同样会是令ln P最大化的W,但由于加了对数,可以使得的乘号转换为加号。
虽然我们的目标是最大化,但损失函数是最小化,因此我们取损失函数为,于是,逻辑回归的损失函数就为:
就这样,就得到了逻辑回归的损失函数了,它的意义就是最大化模型预测正确的概率。
好了,我们总结一下,逻辑回归损失函数的整体思路如下:

逻辑回归就是希望整体样本预测正确的概率最大化(这就叫最大似然),但为了拆解乘号,加上了对数(这就叫对数似然),并加上负号,使它成为最小化,就成了似然损失函数了。
事实上,如果我们直接从交叉熵的角度来理解逻辑回归的损失函数,它会更加的简单。
由于模型对一个样本的正确概率为:
那么,基于这个认知概率,我们在知道样本的真实标签时,我们获得的信息量就为:
所以,获得的信息量的期望值就为所有样本的均值:
这就是交叉熵(Cross Entropy)了:"在认知概率下、知道真相时得到的信息量期望"。
因此,逻辑回归就是以交叉熵作为损失函数,它希望在模型的认知概率下、知道真相时所获得的信息量期望越小越好。最极端的时候,模型完全清楚标签,此时揭示标签对模型来说毫无信息可言了,所获信息量为0。
总的来说,逻辑回归的损失函数可以从最大似然出发来推导,也可以使用交叉熵来理解,现在一般都偏向用交叉熵来理解它。我们这里讲了两种方法,其实不只是为了讲逻辑回归的损失函数,而是趁着逻辑回归来学习最大似然和交叉熵,它们的身影在机器学习中无处不在,这里先来认识一下它们。
评论