Pytorch中的CrossEntropyLoss和KLDivLoss

部署运行你感兴趣的模型镜像

在pytorch的官方文档中,KLDivLossinput和target的shape要保持一致,即如果真实标签(target) 采用如’0、1、2、3…'这种数字标签编码时,要将数字标签编码转为ont-hot编码,即

[0, 1, 2, 3,....]===>[[0, 0, 0, 0,....],
					  [0, 1, 0, 0,....],
					  [0, 0, 1, 0,....],
					  ................]]

然后将input和target送入KLDivLoss进行计算。

但是计算CrossEntropyLoss时,target和input的shape可以是不同的,Pytorch官方的代码中对于target支持两种输入,一种是类标签输入,一种是类的概率输入。因此可以target可以以数字标签的形式输入,也可以以one-hot的形式输入。

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值