美文网首页
交叉熵方法

交叉熵方法

作者: 从此不迷茫 | 来源:发表于2021-09-25 14:47 被阅读0次

交叉熵损失计算示例

交叉熵损失公式

二分类

其中y为label,p^为预测的正类别概率,即在二分类中通过sigmoid函数得出的正类别概率大小。

分类

举例:

criterion = nn.CrossEntropyLoss()

input = torch.randn(3, 5, requires_grad=True)

target = torch.empty(3, dtype=torch.long).random_(5)

loss = criterion(input, target)

上述代码即为求交叉熵损失的示例,输入为随机生成的三个具有5个标签的样本,目标标签为同样随机生成的3个具有唯一正确标签的样本,loss即为函数torch.nn.CrossEntropyLoss()求得的交叉熵损失。

torch.nn.CrossEntropyLoss()内的核心代码如下:

```

batch_loss = 0.

for i in range(input.shape[0]):  # 遍历样本数

    numerator = np.exp(input[i, target[i]])   # 对每个目标标签求指数

    denominator = np.sum(np.exp(input[i, :])) # 每个目标标签所在样本总体指数之和  

    loss = -np.log(numerator / denominator)    # 损失函数对数公式

    batch_loss += loss  # 所有样本损失之和

```

其中,公式中损失函数只有对数log(numerator / denominator)原因是,其他标签默认系数为0,因此代码中省略,因此代码也可写成如下:

```

for i in range(input.shape[0]):

Loss[i]=-input[i, target[i]+sum(math.exp(input[i][:]))

loss = sum(Loss)

```

相关文章

  • 交叉熵方法

    交叉熵损失计算示例 交叉熵损失公式 其中y为label,p^为预测的正类别概率,即在二分类中通过sigmoid函数...

  • 各种熵,条件熵,KL

    熵、条件熵、交叉熵、相对熵 参考《统计学习方法》李航 通俗理解信息熵 - 忆臻的文章 - 知乎 https://z...

  • 强化学习第7课:交叉熵方法的一些局限性

    上次介绍的交叉熵方法,交叉熵方法虽然非常有效,但是也有一些缺点。 例如,如果你只尝试100次的话,那么可能会有一些...

  • 交叉熵, softmax和MSE

    交叉熵 从交叉熵的公式中可以看到交叉熵函数不是对称的(H(p, q) ≠ H(q,p)),它刻画的是通过概率分布q...

  • cross entropy交叉熵和ground truth总结

    一.cross entropy 交叉熵 交叉熵的概念得从信息熵的概念说起,我们都知道信息熵,简而言之就是信息量多少...

  • Tensorflow 学习笔记

    一 如何判断一个输出向量和期望的向量有多接近呢? 交叉熵是常用的评判方法之一。交叉熵刻画了两个概率分布之间的距离,...

  • 理解熵,交叉熵和交叉熵损失

    交叉熵损失是深度学习中应用最广泛的损失函数之一,这个强大的损失函数是建立在交叉熵概念上的。当我开始使用这个损失函数...

  • 【转】TensorFlow四种Cross Entropy算法实现

    作者:陈迪豪 来源:CSDNhttp://dataunion.org/26447.html 交叉熵介绍 交叉熵(C...

  • 逻辑回归例子

    交叉熵推导过程 交叉熵数损失推导 - 简书 (jianshu.com)[https://www.jianshu.c...

  • 交叉熵

    KL散度(相对熵)衡量两个分布之间的差异大小,KL散度是大于等于0,当越趋近于0,说明p、q两个分布越相似。

网友评论

      本文标题:交叉熵方法

      本文链接:https://www.haomeiwen.com/subject/fygagltx.html