图像感知-线性评分

线性评分

线性评分器

评分函数

对于线性分类器,有评分函数:
f ( x i , W , b ) = W x i + b f(x_{i},W,b) = Wx_{i}+b f(xi,W,b)=Wxi+b
W W W为一个 M ∗ N M*N MN矩阵, x i x_{i} xi N ∗ 1 N*1 N1的矩阵,其中 M M M为不同类的种类总数, N N N可以看作一个需要评分的集合中元素的个数,每个类别都相当于用 1 ∗ N 1*N 1N的矩阵与 N ∗ 1 N*1 N1的待评分矩阵相乘再 + b +b +b得到对应类别的评分

损失函数

损失函数(Loss Function),也称为成本函数(Cost Function)或目标函数(Objective Function),是机器学习和深度学习中的一个关键概念。它是用来衡量模型预测与实际观察值之间的差异或误差的函数。在训练机器学习模型时,我们的目标是最小化或最大化损失函数,以使模型能够产生更准确的预测或实现特定的优化目标。

损失函数的选择取决于问题的性质,通常分为以下几种类型:

  1. 回归问题的损失函数: 用于处理连续数值的预测问题,常见的损失函数包括均方误差(Mean Squared Error,MSE)、平均绝对误差(Mean Absolute Error,MAE)等。

  2. 分类问题的损失函数: 用于处理离散类别的预测问题,常见的损失函数包括交叉熵损失函数(Cross-Entropy Loss)、对数损失函数(Log Loss)等。在多类别分类中,还有softmax交叉熵损失函数等。

  3. 神经网络中的损失函数: 在深度学习中,损失函数也用于衡量神经网络的输出与真实标签之间的误差。常见的神经网络损失函数包括均方误差、交叉熵损失函数、对抗生成网络(GAN)中的生成器和判别器损失等。

  4. 自定义损失函数: 根据特定问题的需求,研究人员和从业者有时会定义自己的损失函数,以更好地符合问题的特性。

损失函数的选择对模型的性能和训练过程至关重要,因为它直接影响到模型如何学习和调整参数以适应数据。最终的目标是通过优化损失函数来使模型的预测尽可能地接近真实值,以提高模型的性能。在训练过程中,机器学习算法通常使用梯度下降等优化方法来最小化损失函数。

交叉熵损失函数

H ( p , q ) = − ∑ i = 1 n p ( x i ) log ⁡ ( q ( x i ) ) H(p,q)=-\sum_{i=1}^{n}p(x_{i})\log(q(x_{i})) H(p,q)=i=1np(xi)log(q(xi))

交叉熵损失函数由来

交叉熵是信息论中的一个重要概念,主要用于度量两个概率分布间的差异性。首先我们来了解几个概念。

信息量

信息论奠基人香农(Shannon)认为“信息是用来消除随机不确定性的东西”。也就是说衡量信息量大小就看这个信息消除不确定性的程度。

“太阳从东方升起了”这条信息没有减少不确定性。因为太阳肯定从东面升起。这是句废话,信息量为0。
“六月份下雪了”,这条信息就比较有价值,根据历史统计信息来看,六月份鲜有下雪记录,可知该语句信息量较大。

从上面两个例子可以看出:信息量的大小和事件发生的概率成反比。

由此引出信息量的表示:

I ( x ) = − l o g ( P ( x ) ) I(x)=-log(P(x)) I(x)=log(P(x))

其中 P ( x ) P(x) P(x)表示为, 时间 x x x的发生概率,这里可能会有质疑,我们知道信息量的大小和事件发生的概率成反比,函数形式为减函数,为什么要表现为对数形式呢?
这里我们需要了解信息量得三个性质:

1.事件发生的概率越低,信息量越大;
2.事件发生的概率越高,信息量越低;
3.多个事件同时发生的概率是多个事件概率相乘,总信息量是多个事件信息量相加。

根据性质3,可以知道使用对数形式可以满足性质需求,因此为表现该形式。

信息熵

信息量度量的是一个具体事件发生所带来的信息,而信息熵则是在结果出来之前对可能产生的信息量的期望——考虑该随机变量的所有可能取值,即所有可能发生事件所带来的信息量的期望。

因此我们可以得到其表现公式为:

H ( X ) = − ∑ i = 1 n p ( x i ) l o g ( p ( x i ) ) H(X)=-\sum_{i=1}^{n}p(x_{i})log(p(x{_{i}})) H(X)=i=1np(xi)log(p(xi))

其中 P ( x ) P(x) P(x)表示为, 时间 x x x的发生概率

这个函数 H ( X ) = − ∑ i = 1 n p ( x i ) log ⁡ ( p ( x i ) ) H(X)=-\sum_{i=1}^{n}p(x_{i})\log(p(x_{i})) H(X)=i=1np(xi)log(p(xi)) 表示的是随机变量 X X X 的熵(Entropy)。让我来解释一下这个函数的意义和背后的概念:

  1. 随机变量 X X X 随机变量 X X X 代表一个随机事件或随机现象,它可以取多个可能的值 x i x_i xi,其中 i i i 的范围从1到 n n n。这些值可能是不同的观察结果或事件发生的不同情况。

  2. 概率分布 p ( x i ) p(x_i) p(xi) 函数中的 p ( x i ) p(x_i) p(xi) 表示随机变量 X X X 取值为 x i x_i xi 的概率。换句话说,它表示每个可能事件发生的概率。

  3. H ( X ) H(X) H(X) 熵是一个衡量随机变量不确定性或混乱程度的概念。在信息论中,熵用来衡量一个信息源的不确定性,或者在机器学习中,它可以用来表示一个数据集的混乱度。

    具体来说,对于随机变量 X X X,它的熵 H ( X ) H(X) H(X) 由上述公式给出。熵越高,表示随机变量 X X X 的取值更加不确定或混乱,因为不同的取值都有相对均等的概率。反之,当熵较低时,表示随机变量的取值更加确定,因为某些取值的概率较高,而其他取值的概率较低。

总结来说,熵是一个用来衡量随机变量不确定性的指标。当熵最大化时,表示我们对随机变量的取值知之甚少,而当熵最小化时,表示我们对随机变量的取值有较多的信息。因此,熵在信息理论、统计学和机器学习中有广泛的应用,帮助我们理解数据的不确定性和信息量。

总而言之,信息熵是用来衡量事物不确定性的。信息熵越大,事物越具不确定性,事物越复杂。

相对熵

相对熵,也称为KL散度(Kullback-Leibler Divergence),是一种用于度量两个概率分布之间差异的数学概念。相对熵衡量了一个概率分布相对于另一个分布的“距离”或差异性。通常表示为 D K L ( P ∣ ∣ Q ) D_{KL}(P || Q) DKL(P∣∣Q),其中 P P P Q Q Q 是两个概率分布。
在机器学习中,常常使用 P ( x ) P(x) P(x)来表示样本的真实分布, Q ( x ) Q(x) Q(x)来表示模型所预测的分布。
p ( x ) p(x) p(x)分布的信息熵为:

H p p ( X ) = − ∑ i = 1 n p ( x i ) l o g ( p ( x i ) ) H_{pp}(X)=-\sum_{i=1}^{n}p(x_{i})log(p(x{_{i}})) Hpp(X)=i=1np(xi)log(p(xi))

q ( x ) q(x) q(x)分布的信息熵为:

H p q ( X ) = − ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) H{_{pq}}(X)=-\sum_{i=1}^{n}p(x_{i})log(q(x{_{i}})) Hpq(X)=i=1np(xi)log(q(xi))

相对熵为:

H p q ( X ) − H p p ( X ) H_{pq}(X)-H_{pp}(X) Hpq(X)Hpp(X)

p ( x ) p(x) p(x)为样本真实分布, q ( x ) q(x) q(x)为预测分布

具体来说,对于离散型概率分布,相对熵 D K L ( P ∣ ∣ Q ) D_{KL}(P || Q) DKL(P∣∣Q) 的计算方式如下:
D K L ( p ∣ ∣ q ) D_{KL}(p||q) DKL(p∣∣q)
= H p q ( X ) − H p p ( X ) =H_{pq}(X)-H_{pp}(X) =Hpq(X)Hpp(X)
= − ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) − [ − ∑ i = 1 n p ( x i ) l o g ( p ( x i ) ) ] =-\sum_{i=1}^{n}p(x_{i})log(q(x{_{i}}))-[-\sum_{i=1}^{n}p(x_{i})log(p(x{_{i}}))] =i=1np(xi)log(q(xi))[i=1np(xi)log(p(xi))]
= ∑ i = 1 n p ( x i ) l o g ( p ( x i ) ) − ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) =\sum_{i=1}^{n}p(x_{i})log(p(x{_{i}}))-\sum_{i=1}^{n}p(x_{i})log(q(x{_{i}})) =i=1np(xi)log(p(xi))i=1np(xi)log(q(xi))
= ∑ i = 1 n p ( x i ) l o g ( p ( x i ) q ( x i ) ) =\sum_{i=1}^{n}p(x_{i})log(\frac{p(x_{i})}{q(x^{_{i}})}) =i=1np(xi)log(q(xi)p(xi))

D K L ( P ∣ ∣ Q ) = ∑ i n P ( i ) log ⁡ ( P ( i ) Q ( i ) ) D_{KL}(P||Q) = \sum_{i}^n P(i) \log\left(\frac{P(i)}{Q(i)}\right) DKL(P∣∣Q)=inP(i)log(Q(i)P(i))

对于连续型概率分布,相对熵的计算方式也有相应的形式。

比如在一个三分类任务中(例如,猫狗马分类器), x 1 x_{1} x1 , x 2 x_{2} x2 , x 3 x_{3} x3分别代表猫,狗,马,例如一张猫的图片真实分布 P ( X ) = [ 1 , 0 , 0 ] P(X)=[1,0,0] P(X)=[1,0,0],预测分布 Q ( X ) = [ 0.7 , 0.2 , 0.1 ] Q(X)=[0.7,0.2,0.1] Q(X)=[0.7,0.2,0.1],计算KL散度:

∑ i = 1 n p ( x i ) l o g ( p ( x i ) q ( x i ) ) \sum_{i=1}^{n}p(x_{i})log(\frac{p(x_{i})}{q(x^{_{i}})}) i=1np(xi)log(q(xi)p(xi))
= p ( x 1 ) l o g ( p ( x 1 ) q ( x 1 ) ) + p ( x 2 ) l o g ( p ( x 2 ) q ( x 2 ) ) + p ( x 3 ) l o g ( p ( x 3 ) q ( x 3 ) ) =p(x_{1})log(\frac{p(x_{1})}{q(x^{_{1}})})+p(x_{2})log(\frac{p(x_{2})}{q(x^{_{2}})})+p(x_{3})log(\frac{p(x_{3})}{q(x^{_{3}})}) =p(x1)log(q(x1)p(x1))+p(x2)log(q(x2)p(x2))+p(x3)log(q(x3)p(x3))
= 1 ∗ l o g ( 1 0.7 ) =1*log(\frac{1}{0.7}) =1log(0.71)
= 0.36 =0.36 =0.36

相对熵具有以下重要性质:

  1. 非负性: 相对熵永远都是非负的,即 D K L ( P ∣ ∣ Q ) ≥ 0 D_{KL}(P || Q) \geq 0 DKL(P∣∣Q)0。当且仅当两个概率分布 P P P Q Q Q 完全相同时,相对熵才等于零。

  2. 不对称性: 相对熵是不对称的,即 D K L ( P ∣ ∣ Q ) ≠ D K L ( Q ∣ ∣ P ) D_{KL}(P || Q) \neq D_{KL}(Q || P) DKL(P∣∣Q)=DKL(Q∣∣P)。这表示改变 P P P Q Q Q 的位置会导致不同的结果。

  3. 信息量度量: 相对熵可以解释为用 Q Q Q 来编码 P P P 的信息损失。它度量了使用 Q Q Q 来近似 P P P 时引入的信息损失,因此常用于概率分布的比较和模型选择。

相对熵在信息论、统计学、机器学习等领域中有广泛应用,例如,在概率分布比较、生成模型训练、模型选择和正则化等方面。在机器学习中,最小化相对熵可以用于优化模型的参数,以使其预测的概率分布更接近于真实的概率分布。

交叉熵

首先将KL散度公式拆开:
D K L ( P ∣ ∣ Q ) D_{KL}(P || Q) DKL(P∣∣Q)
= ∑ i = 1 n p ( x i ) l o g ( p ( x i ) q ( x i ) ) =\sum_{i=1}^{n}p(x_{i})log(\frac{p(x_{i})}{q(x^{_{i}})}) =i=1np(xi)log(q(xi)p(xi))
= ∑ i = 1 n p ( x i ) l o g ( p ( x i ) ) − ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) =\sum_{i=1}^{n}p(x_{i})log(p(x{_{i}}))-\sum_{i=1}^{n}p(x_{i})log(q(x{_{i}})) =i=1np(xi)log(p(xi))i=1np(xi)log(q(xi))
= − H ( p ( x ) ) + [ − ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) ] =-H(p(x))+[-\sum_{i=1}^{n}p(x_{i})log(q(x{_{i}}))] =H(p(x))+[i=1np(xi)log(q(xi))]

前者 H ( p ( x ) ) H(p(x)) H(p(x))表示信息熵,后者即为交叉熵

KL散度 = 交叉熵 - 信息熵

交叉熵公式表示为:
H ( p , q ) = − ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) H(p,q)=-\sum_{i=1}^{n}p(x_{i})log(q(x{_{i}})) H(p,q)=i=1np(xi)log(q(xi))

在机器学习训练网络时,输入数据与标签常常已经确定,那么真实概率分布 P ( x ) P(x) P(x)也就确定下来了,所以信息熵在这里就是一个常量。由于KL散度的值表示真实概率分布 P ( x ) P(x) P(x)与预测概率分布 Q ( x ) Q(x) Q(x)之间的差异,值越小表示预测的结果越好,所以需要最小化KL散度,而交叉熵等于KL散度加上一个常量(信息熵),且公式相比KL散度更加容易计算,所以在机器学习中常常使用交叉熵损失函数来计算 l o s s loss loss就行了。

softmax交叉熵损失函数

softmax交叉熵损失函数(Softmax Cross-Entropy Loss)通常用于多类别分类问题,它是深度学习中常见的损失函数之一。这个损失函数的主要目标是衡量模型的分类输出与实际标签之间的差异,并且帮助模型学习如何更好地预测多个不同类别。

下面详细解释softmax交叉熵损失函数的组成部分和计算方式:

  1. Softmax 函数: 首先,对于模型的原始输出(也称为类别分数或 logits),应用softmax函数。Softmax函数的作用是将原始分数转换为类别概率分布,使得每个类别的概率值都在0和1之间,且概率之和为1。Softmax函数的公式如下:

    对于类别 i i i 的概率 p i p_i pi 和原始分数 z i z_i zi

    p i = e z i ∑ j = 1 K e z j p_i = \frac{e^{z_i}}{\sum_{j=1}^{K} e^{z_j}} pi=j=1Kezjezi

    其中, K K K 是类别的总数。

  2. 独热编码(One-Hot Encoding)标签: 实际的类别标签通常采用独热编码的形式,其中只有一个元素为1,表示真实类别,其他元素都为0。例如,如果有3个类别,第二个类别的独热编码可以表示为 [0, 1, 0]。

  3. 交叉熵损失计算: 使用模型的softmax输出概率分布 p p p 和实际标签的独热编码 y y y 来计算交叉熵损失。交叉熵损失的公式如下:

    L ( y , p ) = − ∑ i = 1 K y i log ⁡ ( p i ) L(y, p) = -\sum_{i=1}^{K} y_i \log(p_i) L(y,p)=i=1Kyilog(pi)

    其中, K K K 是类别的总数, y i y_i yi 是实际标签的第 i i i 个元素, p i p_i pi 是模型的预测概率分布的第 i i i 个元素。

  4. 损失最小化: 模型的目标是通过梯度下降等优化方法来最小化交叉熵损失。最小化损失函数的过程使模型更好地适应训练数据,提高分类性能。

总结来说,softmax交叉熵损失函数的作用是衡量模型的分类预测与实际标签之间的差异,帮助模型学习如何更好地进行多类别分类。通过将模型的输出转换为概率分布并与实际标签比较,这个损失函数促使模型产生更接近真实概率分布的预测,以提高分类准确性。这使得softmax交叉熵损失函数在训练深度学习模型时非常有用。

对数损失函数

对数损失函数是一种特殊情况下的交叉熵损失函数,主要用于二元分类问题。

对数损失通过惩罚错误的分类,实现对分类器的准确度(Accuracy)的量化. 最小化对数损失基本等价于最大化分类器的准确度.为了计算对数损失, 分类器必须提供对输入的所属的每个类别的概率值, 不只是最可能的类别. 对数损失函数的计算公式如下:

L ( Y , P ( Y ∣ X ) ) L(Y,P(Y|X)) L(Y,P(YX))
= − l o g P ( Y ∣ X ) =-logP(Y|X) =logP(YX)
= − 1 N ∑ j = 1 N ∑ i = 1 M y i j l o g ( p i j ) =-\frac{1}{N}\sum_{j=1}^N\sum_{i=1}^My_{ij}log(p_{ij}) =N1j=1Ni=1Myijlog(pij)

其中, Y Y Y 为输出变量, X X X为输入变量, L L L 为损失函数. N N N为输入样本量, M M M为可能的类别数, y i j y_{ij} yij 是一个二值指标(要么为0,要么为1), 表示类别 j j j 是否是输入实例 x i x_{i} xi的真实类别。 p i j p_{ij} pij 为模型或分类器预测输入实例 x i x_{i} xi 属于类别 j j j 的概率.

如果上式 M M M为2,则对数损失函数的公式简化为:
− 1 N ∑ i = 1 N ( y i l o g ( p i ) + ( 1 − y i ) l o g ( 1 − p i ) ) -\frac{1}{N}\sum_{i=1}^N(y_{i}log(p_{i})+(1-y_{i})log(1-p_{i})) N1i=1N(yilog(pi)+(1yi)log(1pi))

极大似然估计(MLE)与交叉熵

给定一个数据集 D = x 1 , x 2 , … , x n D = {x_1, x_2, \ldots, x_n} D=x1,x2,,xn 和一个参数化的概率分布 P ( x ; θ ) P(x;\theta) P(x;θ),MLE 估计试图找到参数 θ \theta θ,使得观察到数据集 D D D 的概率最大,(在图像感知里D为待测图像的数据集合, θ \theta θ即为不同的类别, P ( x ; θ ) P(x;\theta) P(x;θ)为在待测图像为 θ \theta θ下的概率)即:

θ MLE = arg ⁡ max ⁡ θ ( ∏ i = 1 N P ( x i ; θ ) ) \theta_{\text{MLE}} = \arg\max_{\theta}( \prod_{i=1}^N P(x_i; \theta)) θMLE=argθmax(i=1NP(xi;θ))

θ MLE \theta_{\text{MLE}} θMLE:这是我们要找到的参数估计,它是使似然函数最大化的参数值。

arg ⁡ max ⁡ θ \arg\max_{\theta} argmaxθ:这表示我们在参数 θ \theta θ 的所有可能值中,寻找使似然函数最大化的那个参数值。换句话说,我们正在寻找一个参数 θ \theta θ,使得给定数据集中的观测数据出现的概率最大。

∏ i = 1 N P ( x i ; θ ) \prod_{i=1}^N P(x_i; \theta) i=1NP(xi;θ):这是似然函数,它表示给定参数 θ \theta θ 下,观测数据集 x 1 , x 2 , … , x n x_1, x_2, \ldots, x_n x1,x2,,xn 中每个数据点出现的概率的乘积。也就是说,它是把每个数据点的概率都乘在一起,得到整个数据集出现的概率。

所以,整个公式的含义是在所有可能的参数值 θ \theta θ 中,找到一个参数值 θ MLE \theta_{\text{MLE}} θMLE,使得给定数据集中观测数据的联合概率最大。这就是为什么它称为"最大似然估计",因为我们正在估计的参数值是使得观测数据出现的似然性最大的值。通常,我们使用这种方法来估计参数,以便我们的模型能够最好地拟合观测数据。

现在,我们可以通过 MLE 来证明它与交叉熵的关系。

首先,考虑最大化似然估计 ∏ i = 1 N P ( x i ; θ ) \prod_{i=1}^N P(x_i; \theta) i=1NP(xi;θ) 的问题,我们可以通过最大化对数似然来简化问题,因为对数是一个递增函数:
θ MLE = arg ⁡ max ⁡ θ ( log ⁡ ∏ i = 1 N P ( x i ; θ ) ) \theta_{\text{MLE}} =\arg\max_{\theta} (\log \prod_{i=1}^N P(x_i; \theta)) θMLE=argθmax(logi=1NP(xi;θ))

然后,将对数转化为求和:
θ MLE = arg ⁡ max ⁡ θ ( ∑ i = 1 N log ⁡ P ( x i ; θ ) ) \theta_{\text{MLE}} =\arg\max_{\theta}( \sum_{i=1}^N \log P(x_i; \theta)) θMLE=argθmax(i=1NlogP(xi;θ))

θ MLE = arg ⁡ max ⁡ θ ( ∑ i = 1 N 1 N log ⁡ P ( x i ; θ ) ) \theta_{\text{MLE}} =\arg\max_{\theta}( \sum_{i=1}^N \frac{1}{N} \log P(x_i; \theta)) θMLE=argθmax(i=1NN1logP(xi;θ))

接下来,我们可以将这个问题重新表达为最小化交叉熵,将真实分布 P ( x ) P(x) P(x) 视为已知的数据集 D D D 的分布,而 Q ( x ) Q(x) Q(x) 视为我们的模型 P ( x ; θ ) P(x; \theta) P(x;θ) 的估计分布:

θ MLE = arg ⁡ min ⁡ θ ( ∑ i = 1 N 1 N log ⁡ 1 P ( x i ; θ ) ) \theta_{\text{MLE}} =\arg\min_{\theta}(\sum_{i=1}^N \frac{1}{N} \log \frac{1}{P(x_i; \theta)}) θMLE=argθmin(i=1NN1logP(xi;θ)1)

已经有以下形式的损失函数:

θ MLE = arg ⁡ min ⁡ θ ( ∑ i = 1 N 1 N log ⁡ 1 P ( x i ; θ ) ) \theta_{\text{MLE}} = \arg\min_{\theta} \left(\sum_{i=1}^N \frac{1}{N} \log \frac{1}{P(x_i; \theta)}\right) θMLE=argθmin(i=1NN1logP(xi;θ)1)

这个损失函数的每一项都包含了样本 x i x_i xi 的对数似然项。大数定律告诉我们,当样本数量 N N N 趋向于无穷大时,样本均值(平均值)趋向于期望值。在这个情况下,可以将损失函数中的求和项近似为一个期望值。

具体来说,如果 N N N 足够大,我们可以将损失函数近似为:

θ MLE ≈ arg ⁡ min ⁡ θ ( E [ log ⁡ 1 P ( x ; θ ) ] ) \theta_{\text{MLE}} \approx \arg\min_{\theta} \left(\mathbb{E} \left[\log \frac{1}{P(x; \theta)}\right]\right) θMLEargθmin(E[logP(x;θ)1])

其中, E \mathbb{E} E 表示期望操作。这个近似在实际中非常有用,因为它可以将计算复杂度从对整个数据集求和降低到计算一个期望值,特别是当数据集非常大时。

这个期望值是针对数据分布 P ( x ) P(x) P(x) 计算的,它表示在样本足够多的情况下,模型的平均性能,即模型的平均对数似然损失。因此,最大化似然估计问题的目标就是找到能最小化这个期望损失的参数 θ \theta θ

需要注意的是,这个近似仅在样本数量足够大的情况下成立,因为大数定律是建立在大样本的统计性质上的。在实际中,通常会使用随机梯度下降等优化算法来估计这个期望损失的最小值,因为计算期望值可能是不可行的,但可以通过采样小批量数据来近似计算。

对比之前的交叉熵公式发现一样:
H ( p , q ) = − ∑ i = 1 n p ( x i ) log ⁡ ( q ( x i ) ) = E x ∼ p ( x ) [ log ⁡ 1 q ( x ) ] H(p,q)=-\sum_{i=1}^{n}p(x_{i})\log(q(x_{i}))= \mathbb{E_{x\sim p(x)}} \left[\log \frac{1}{q(x)}\right] H(p,q)=i=1np(xi)log(q(xi))=Exp(x)[logq(x)1]

左侧部分:

H ( p , q ) H(p, q) H(p,q) p ( x ) p(x) p(x) q ( x ) q(x) q(x) 之间的交叉熵,用于衡量两个概率分布之间的差异。它是一个非负值,通常用来评估模型 q ( x ) q(x) q(x) 预测或估计与真实分布 p ( x ) p(x) p(x) 之间的差距。
右侧部分:

∑ i = 1 n p ( x i ) log ⁡ ( q ( x i ) ) \sum_{i=1}^{n} p(x_i) \log(q(x_i)) i=1np(xi)log(q(xi)) 是交叉熵的标准定义,其中 x i x_i xi 是概率分布 p ( x ) p(x) p(x) 可能的事件, p ( x i ) p(x_i) p(xi) 是事件 x i x_i xi 在真实分布 p ( x ) p(x) p(x) 下的概率, q ( x i ) q(x_i) q(xi) 是模型 q ( x ) q(x) q(x) 对事件 x i x_i xi 的预测概率。
这部分的含义是:对于每个可能的事件 x i x_i xi,我们计算真实分布 p ( x ) p(x) p(x) 下的事件 x i x_i xi 发生的概率 p ( x i ) p(x_i) p(xi) 乘以模型 q ( x ) q(x) q(x) 的预测概率 q ( x i ) q(x_i) q(xi),然后取对数并相加。
右侧部分的第二种表示:

E x ∼ p ( x ) [ log ⁡ 1 q ( x ) ] \mathbb{E}{x \sim p(x)} \left[\log \frac{1}{q(x)}\right] Exp(x)[logq(x)1] 是交叉熵的另一种表示方式,其中 E x ∼ p ( x ) \mathbb{E}{x \sim p(x)} Exp(x) 表示在真实分布 p ( x ) p(x) p(x) 下取期望。
这种表示的含义是:在真实分布 p ( x ) p(x) p(x) 下取期望,即对所有可能的事件 x x x 求平均,对于每个事件 x x x,计算 log ⁡ 1 q ( x ) \log \frac{1}{q(x)} logq(x)1 的值,然后对这些值求平均。
这两种表示方式是等价的,都描述了两个分布之间的差异,但可能在不同上下文中更方便使用其中一种。交叉熵通常用于测量一个分布(真实分布 p ( x ) p(x) p(x))相对于另一个分布(模型分布 q ( x ) q(x) q(x))的不确定性或信息损失。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

duringbug

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值