Pytorch中的损失函数-CROSSENTROPY LOSS
CLASS torch.nn.CrossEntropyLoss(weight=None, size_average=None, ignore_index=-100, reduce=None, reduction='mean', label_smoothing=0.0)
weight (Tensor, optional) 每个类别的权重,如果指定,维度大小为 C (类别数)
ignore_index (int, optional) 不计入损失函数的类别索引
reduction (string, optional) 输入minbatch 时计算损失函数方式,取值 ‘none’ | ‘mean’ | ‘sum’
输入 input:维度大小为 ©,(minbatch, C)
target : 类别 C 的索引,取值范围 [0:C)
损失函数计算:
import torch.nn as nn
import torch# Example of target with class indices
loss = nn.CrossEntropyLoss()
# batch_size 为3 共5个类别
input = torch.randn(3, 5, requires_grad=True)
# target 类别为索引值
target = torch.empty(3, dtype=torch.long).random_(5)
output = loss(input, target)
output.backward()print("input:", input)
print("target:",target)
print("output:",output)# 验证程序 手动计算损失
import numpy as np
sum_loss = 0
for i,item in enumerate(target):# 第i条预测数据x = input[i]# 分子up = np.exp(x[item].detach().numpy())down = np.exp(x.detach().numpy())# log 函数 e 为底loss = -np.log(up/np.sum(down))sum_loss += loss
# 默认计算平均值
mean_loss = sum_loss/(len(target))
print(mean_loss)>>>input: tensor([[ 0.9060, -1.3995, -0.8876, 0.3323, 0.7190],[ 1.3186, -0.3677, -1.2952, -0.6173, 1.0249],[ 1.3068, 0.0780, -0.1764, -2.2406, -0.0857]], requires_grad=True)
>>>target: tensor([2, 4, 2])
>>>output: tensor(1.9664, grad_fn=<NllLossBackward>)
>>>1.9663714567820232
参考:https://pytorch.org/docs/stable/generated/torch.nn.CrossEntropyLoss.html#torch.nn.CrossEntropyLoss
Pytorch中的损失函数-CROSSENTROPY LOSS相关推荐
- pytorch中实现Balanced Cross-Entropy
当你明白了pytorch中F.cross_entropy以及F.binary_cross_entropy是如何实现的之后,你再基于它们做改进重新实现一个损失函数就很容易了. 1.背景 变化检测中,往往 ...
- 机器学习中的损失函数(Loss Function)介绍、说明
损失函数 损失函数介绍 常见的损失函数 1.对数损失函数(Logloss) 2. hinge loss 合页损失函数 3. exp-loss 指数损失函数 4. cross-entropy loss ...
- 损失函数(loss function)
文章目录 1.什么是损失函数 2.为什么要使用损失函数 3.损失函数分类 1.分类一 2.分类二 3.分类三 3.1基于距离度量的损失函数 3.1.1 均方误差损失函数(MSE) 3.1.2 L2损失 ...
- 机器学习中各种损失函数对比总结
文章目录 一.分类问题 1. 0-1损失函数(zero-one loss) 2. Hinge 损失函数 3. log对数损失函数 4. Logistic损失 5. 交叉熵损失函数 (Cross-ent ...
- 常用损失函数总结(L1 loss、L2 loss、Negative Log-Likelihood loss、Cross-Entropy loss、Hinge Embedding loss、Margi)
常用损失函数总结(L1 loss.L2 loss.Negative Log-Likelihood loss.Cross-Entropy loss.Hinge Embedding loss.Margi) ...
- 损失函数——交叉熵损失函数(CrossEntropy Loss)
损失函数--交叉熵损失函数(CrossEntropy Loss) 交叉熵函数为在处理分类问题中常用的一种损失函数,其具体公式为: 1.交叉熵损失函数由来 交叉熵是信息论中的一个重要概念,主要用于度量两 ...
- 损失函数 | BCE Loss(Binary CrossEntropy Loss)
BCE(Binary CrossEntropy)损失函数 图像二分类问题--->多标签分类 Sigmoid和Softmax的本质及其相应的损失函数和任务 多标签分类任务的损失函数BCE Pyto ...
- sklearn基于make_scorer函数为Logistic模型构建自定义损失函数+代码实战(二元交叉熵损失 binary cross-entropy loss)
sklearn基于make_scorer函数为Logistic模型构建自定义损失函数+代码实战(二元交叉熵损失 binary cross-entropy loss) # 广义线性模型中的各种连接函数: ...
- pytorch中网络loss传播和参数更新理解
相比于2018年,在ICLR2019提交论文中,提及不同框架的论文数量发生了极大变化,网友发现,提及tensorflow的论文数量从2018年的228篇略微提升到了266篇,keras从42提升到56 ...
最新文章
- 李迅雷+但斌+趋势的力量+对话PPT
- 13.19. File system test
- jquery ajax node,jquery ajax post json and node express
- 通过已有SQL语句,生成数据库模型PDM
- 牛客IOI周赛19-普及组 B.小y的序列
- CSS3属性animation-play-state控制动画运行或暂停的技巧
- Linux查看系统信息的一些命令及查看已安装软件包的命令
- 工业机器人用铸铁牌号_常用铸铁牌号
- php 标点符号,php 过滤英文标点符号及过滤中文标点符号代码
- 电商促销惊喜海报设计模板,会讲故事的素材
- tortoisegit使用教程 --- 修改提交简易图文教程
- http://blog.csdn.net/x86android/article/details/16980967
- mobile webiste 中的css的font-size em及line-height等换算
- cacti配置流量汇总
- 个人简历怎么写怎么做(还有怎么培养无私奉献的精神--模板)
- hbase 使用lzo_【hbase】Hbase最佳实践
- 监控服务器的日志文件,服务器上监控日志文件
- 32G内存服务器如何设置虚拟内存,大内存服务器设置虚拟内存
- 浪潮信息服务器哪个好,华为服务器和浪潮服务器哪个好?
- easyui获取图片路径_Easyui filebox(文件框)_EasyUI 插件