交叉熵损失函数的使用目的(很肤浅的理解)

第一种使用方法

复制代码
import torch
from torch import nn  # Example of target with class indices
loss = nn.CrossEntropyLoss()
input = torch.randn(3, 5, requires_grad=True)
target = torch.empty(3, dtype=torch.long).random_(5)
output = loss(input, target)
output.backward()

第二种使用方法

复制代码
# Example of target with class probabilities
input = torch.randn(3, 5, requires_grad=True)
target = torch.randn(3, 5).softmax(dim=1)
output = loss(input, target)
output.backward()

自己的理解:

传进去的是(3,5)维度的数据,其中3可以代表有3个图片(数据),5代表有5中类别(0,1,2,3,4这几类)。

复制代码
[ 0.1087, -0.4276,  0.9313, -1.0140,  2.1229]表示预测的是

····第一个图是第一类的概率是 0.1087

·····第一个图是第一类的概率是 -0.4276(负数无所谓,举的例子是随机的嘛)

。。。

target的形状就是3,代表有三个目标真实值。其中3,4,2代表对应上面那个input的

----第一行的第3个值

----第二行的第4个值

----第3行的第2个值

这三个值就是真实值,表示是这些真实值的概率

交叉熵目的:

是预测值的概率更加接近真实值,让那些真实值对于的概率的类别更加大

就是让这些红色的值变大。具体是怎么变的可以查阅相关的资料

相关推荐
DogDaoDao7 小时前
【第10篇】Python 异常处理与调试入门
python·深度学习·ai·程序员·大模型·异常处理与调试
watersink8 小时前
机器学习LDA
人工智能·机器学习
小棉花的ai跨境之旅9 小时前
一个人跑通内容自动化管线:5 个真实大坑,第 1 个我就踩了
深度学习
人工干智能10 小时前
科普:从时间序列数据到LSTM多步时序预测
深度学习·机器学习
FriendshipT10 小时前
ComfyUI 使用 MiniMax H3 进行文生视频
人工智能·pytorch·python·深度学习·音视频
Yao.Li10 小时前
踩坑 5090 编译构建 Paddle 源码
人工智能·深度学习·飞桨·paddle
菜冻鱼11 小时前
Python-sklearn-SVM
开发语言·人工智能·python·机器学习·支持向量机·numpy·sklearn
_codemonster11 小时前
Transformer的核心机制
人工智能·深度学习·transformer
其美杰布-富贵-李11 小时前
03 类别不平衡下如何选择评估指标:Accuracy 为什么会失效?
人工智能·机器学习
xiangzhihong811 小时前
零基础学AI之机器学习原理
人工智能·机器学习·机器人