交叉熵和对数损失函数之间的关系

交叉熵

熵/信息熵

假设一个发送者想传输一个随机变量的值给接收者。这个过程中,他们传输的平均信息量为:

large H[x]=-sum_xp(x){log}_{2}p(x)

large H[x]叫随机变量large x的熵,其中large lim_{p
ightarrow 0}p{log}_2p=0

把熵扩展到连续变量large x的概率分布large p(x),则熵变为

large H[x]=-int p(x)lnp(x)dx

被称为微分熵。

在离散分布下,最大熵对应于变量的所有可能状态的均匀分布。

最大化微分熵的分布是高斯分布

large p(x)=frac{1}{(2pisigma ^2)^{1/2}}exp{-frac{(x-u)^2}{2sigma ^2}}

相对熵/KL散度

考虑某个未知分布large p(x),假设我们使用一个近似分布large q(x)对其进行建模。如果我们使用large q(x)来建立一个编码体系,用来把large x传递给接收者,由于我们使用了large q(x)而不是真实分布large p(x),因此在具体化large x时,我们需要一些附加信息。我们需要的附加信息量为:

large KL(p||q)=-int p(x)lnq(x)dx-(-int p(x)lnp(x)dx)

                    large =-int p(x)ln{frac{q(x)}{p(x)}}dx

这被称为分布large p(x)与分布large q(x)之间的相对熵,或者KL散度。KL散度大于等于零,当两个分布一致时等于零。

交叉熵

交叉熵本质上可以看成,用一个猜测的分布的编码去编码真实的分布,得到的信息量:

large CEH(p,q)=-sum_{xinchi }p(x)lnq(x)=H(p)+D_{KL}(p||q)

large CEH(p,q)

large =-sum_{xinchi }p(x)lnq(x)

large =-[P_p(x=1)lnP_q(x=1)+P_p(x=0)P_q(x=0)]

large =-[plnq+(1-p)ln(1-q)]

large =-[ylnh_	heta(x)+(1-y)ln(1-h_	heta(x))]

对所有训练样本取均值得到:

large -frac{1}{m}sum_{i=1}^{m}y_ilog(h_	heta(x_i))+(1-y_i)log(1-h_{	heta(x_i)})

对数损失函数

对数损失函数的表达式为:

large -frac{1}{m}sum_{i=1}^{m}y_ilog(h_	heta(x_i))+(1-y_i)log(1-h_{	heta(x_i)})

参见https://blog.csdn.net/qq_38625259/article/details/88362765

交叉熵和对数损失函数之间的关系

交叉熵中未知真实分布large p(x)相当于对数损失中的真实标记large y,寻找的近似分布large q(x)相当于我们的预测值。如果把所有样本取均值就把交叉熵转化成了对数损失函数。

本文转载自:https://blog.csdn.net/qq_38625259/article/details/88371462?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control

原文地址:https://www.cnblogs.com/liuxiaochong/p/14354589.html