ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

二元逻辑回归损失函数的数学解释与公式推导

2021-11-04 12:01:48  阅读:179  来源: 互联网

标签:yi xi 二元 推导 公式 样本 theta hat log


我们基于极大似然法来推导二元逻辑回归的损失函数,这个推导过程能够帮助我们了解损失函数怎么
得来的,以及为什么 J ( θ ) J(\theta) J(θ)的最小化能够实现模型在训练集上的拟合最好。

我们的目标是:让模型对训练数据的效果好,追求损失最小

二元逻辑回归的标签服从伯努利分布(即0-1分布),因此我们可以将一个特征向量为 x x x参数为 θ \theta θ的模型中的一个样本i的预测情况表现为如下形式:

  • 样本i在由特征向量 x i x_i xi​和参数 θ \theta θ组成的预测函数中,样本标签被预测为1的概率为:

    P 1 = P ( y i ^ = 1 ∣ x i , θ ) = y θ ( x i ) P_1=P(\hat{y_i}=1|x_i,\theta)=y_{\theta}(x_i) P1​=P(yi​^​=1∣xi​,θ)=yθ​(xi​)

  • 样本i在由特征向量 和参数 组成的预测函数中,样本标签被预测为0的概率为:

    P 0 = P ( y i ^ = 0 ∣ x i , θ ) = 1 − y θ ( x i ) P_0=P(\hat{y_i}=0|x_i,\theta)=1-y_{\theta}(x_i) P0​=P(yi​^​=0∣xi​,θ)=1−yθ​(xi​)

当 P 1 P_1 P1​的值为1的时候,代表样本i的标签被预测为1,当 P 0 P_0 P0​的值为1的时候,代表样本i的标签被预测为0。

假设样本i的真实标签 y i y_i yi​为1,此时如果 P 1 P_1 P1​为1, P 0 P_0 P0​为0的时候,就代表样本i的标签被预测为1,与真实值一致。此时对于单样本i来说,模型的预测就是完全准确的,拟合程度很优秀,没有任何信息损失。

相反,如果 P 1 P_1 P1​为0, P 0 P_0 P0​为1的时候,就代表样本i的标签被预测为0,与真实情况完全相反。对于单样本i来说,模型的预测就是完全错误的,拟合程度很差,所有的信息都损失了。

当 y i y_i yi​为0时,也是同样的道理,所以,当 y i y_i yi​为1的时候,我们希望 P 1 P_1 P1​非常接近1, 当 y i y_i yi​为0的时候,我们希望 P 0 P_0 P0​非常接近1,这样,模型的效果就很好,信息损失就很少。

在这里插入图片描述
将两种取值的概率整合,我们可以定义如下等式:
P ( y i ^ ∣ x i , θ ) = P 1 y i ∗ P 0 1 − y i P(\hat{y_i}|x_i,\theta)=P_1^{y_i}*P_0^{1-y_i} P(yi​^​∣xi​,θ)=P1yi​​∗P01−yi​​

这个等式代表同时代表了 P 0 P_0 P0​和 P 1 P_1 P1​,当样本i的真实标签 y i y_i yi​为1的时候, 1 − y i 1-y_i 1−yi​ 就等于0, P 0 P_0 P0​ 的0次方就是1,所以 P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ)等于 P 1 P_1 P1​,这时,如果 P 1 P_1 P1​为1,模型的效果就很好,损失就很小。同理,当 y i y_i yi​为0的时候, P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ)等于 P 0 P_0 P0​,此时如果 P 0 P_0 P0​非常接近1,模型的效果就很好,损失就很小。所以,为了达成让模型拟合好,损失小的目的,我们每时每刻都希望 P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ) 的值等于1。 而 P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ) 的本质是样本i由特征向量 x i x_i xi​和参数 θ \theta θ组成的预测函数中,预测出所有可能的 y ^ \hat{y} y^​的概率,因此1是它的最大值。

也就是说,每时每刻,我们都在追求 P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ) 的最大值。这就将模型拟合中的“最小化损失”问题,转换成了对函数求解极值的问题。

P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ)是对单个样本i而言的函数,对一个训练集的m个样本来说,我们可以定义如下等式来表达所有样本在特征矩阵X和参数 θ \theta θ组成的预测函数中,预测出所有可能的 y ^ \hat{y} y^​的概率P为:
P = ∏ i = 1 m P ( y i ^ ∣ x i , θ ) = ∏ i = 1 m ( P 1 y i ∗ P 0 1 − y i ) = ∏ i = 1 m ( y 0 ( x i ) y i ∗ ( 1 − y 0 ( x i ) ) 1 − y i )            将 开 头 的 P 1 和 P 0 带 入 \begin{aligned} P&=\prod_{i=1}^mP(\hat{y_i}|x_i,\theta) \\&=\prod_{i=1}^m(P_1^{y_i}*P_0^{1-y_i}) \\&=\prod_{i=1}^m(y_0(x_i)^{y_i}*(1-y_0(x_i))^{1-y_i}) ~~~~~~~~~~将开头的P_1和P_0带入 \end{aligned} P​=i=1∏m​P(yi​^​∣xi​,θ)=i=1∏m​(P1yi​​∗P01−yi​​)=i=1∏m​(y0​(xi​)yi​∗(1−y0​(xi​))1−yi​)          将开头的P1​和P0​带入​

对该概率P取对数,再由 log ⁡ ( A ∗ B ) = log ⁡ A + log ⁡ B \log(A*B)=\log A+\log B log(A∗B)=logA+logB和 log ⁡ A B = B log ⁡ A \log A^B=B\log A logAB=BlogA可得:
log ⁡ P = log ⁡ ∏ i = 1 m ( y 0 ( x i ) y i ∗ ( 1 − y 0 ( x i ) ) 1 − y i ) = ∑ i = 1 m log ⁡ ( y 0 ( x i ) y i ∗ ( 1 − y 0 ( x i ) ) 1 − y i ) = ∑ i = 1 m ( log ⁡ y θ ( x i ) y i + log ⁡ ( 1 − y θ ( x i ) ) 1 − y i ) = ∑ i = 1 m ( y i log ⁡ y θ ( x i ) + ( 1 − y i ) log ⁡ ( 1 − y θ ( x i ) ) ) \begin{aligned} \log P&=\log\prod_{i=1}^m(y_0(x_i)^{y_i}*(1-y_0(x_i))^{1-y_i}) \\&=\sum_{i=1}^m\log(y_0(x_i)^{y_i}*(1-y_0(x_i))^{1-y_i}) \\&=\sum_{i=1}^m(\log y_{\theta}(x_i)^{y_i}+\log(1-y_{\theta}(x_i))^{1-y_i}) \\&=\sum_{i=1}^m(y_i\log y_{\theta}(x_i)+(1-y_i)\log(1-y_{\theta}(x_i))) \end{aligned} logP​=logi=1∏m​(y0​(xi​)yi​∗(1−y0​(xi​))1−yi​)=i=1∑m​log(y0​(xi​)yi​∗(1−y0​(xi​))1−yi​)=i=1∑m​(logyθ​(xi​)yi​+log(1−yθ​(xi​))1−yi​)=i=1∑m​(yi​logyθ​(xi​)+(1−yi​)log(1−yθ​(xi​)))​

这就是我们的交叉熵函数。为了数学上的便利以及更好地定义”损失”的含义,我们希望将极大值问题转换为极小值问题,因此我们对 log ⁡ P \log{P} logP取负,并且让参数 θ \theta θ作为函数的自变量,就得到了我们的损失函数 J ( θ ) J(\theta) J(θ):
J ( θ ) = − ∑ i = 1 m ( y i log ⁡ y θ ( x i ) + ( 1 − y i ) log ⁡ ( 1 − y θ ( x i ) ) ) J(\theta)=-\sum_{i=1}^m(y_i\log y_{\theta}(x_i)+(1-y_i)\log(1-y_{\theta}(x_i))) J(θ)=−i=1∑m​(yi​logyθ​(xi​)+(1−yi​)log(1−yθ​(xi​)))

这就是一个,基于逻辑回归的返回值 y θ ( x i ) y_{\theta}(x_i) yθ​(xi​)的概率性质得出的损失函数。在这个函数上,我们只要追求最小值,就能让模型在训练数据上的拟合效果最好,损失最低。这个推导过程,其实就是“极大似然法”的推导过程。

似然与概率

  • 似然与概率是一组非常相似的概念,它们都代表着某件事发生的可能性,但它们在统计学和机器学习中有着微妙的不同。以样本i为例,表达式为:
    P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ)
    对这个表达式而言,如果参数 θ \theta θ是已知的,特征向量 x i x_i xi​是未知的,我们便称P是在探索不同特征取值下获取所有可能的 y ^ \hat{y} y^​的可能性,这种可能性就被称为概率,研究的是自变量和因变量之间的关系。

    如果特征向量 x i x_i xi​ 是已知的,参数 θ \theta θ 是未知的,我们便称P是在探索不同参数下获取所有可能的 y ^ \hat{y} y^​ 的可能性,这种可能性就被称为似然,研究的是参数取值与因变量之间的关系。

    在逻辑回归的建模过程中,我们的特征矩阵是已知的,参数是未知的,因此我们讨论的所有“概率”其实严格来说都应该是“似然”。我们追求 P ( y i ^ ∣ x i , θ ) P(\hat{y_i}|x_i,\theta) P(yi​^​∣xi​,θ) 的最大值(换算成损失函数之后取负了,所以是最小值),就是在追求“极大似然”,所以逻辑回归的损失函数的推导方法叫做”极大似然法“。也因此,以下式子又被称为”极大似然函数“:
    P ( y i ^ ∣ x i , θ ) = y 0 ( x i ) y i ∗ ( 1 − y 0 ( x i ) ) 1 − y i P(\hat{y_i}|x_i,\theta)=y_0(x_i)^{y_i}*(1-y_0(x_i))^{1-y_i} P(yi​^​∣xi​,θ)=y0​(xi​)yi​∗(1−y0​(xi​))1−yi​

标签:yi,xi,二元,推导,公式,样本,theta,hat,log
来源: https://blog.csdn.net/m0_50572604/article/details/121137809

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有