pytorch 实现cross entropy损失函数计算方式


Posted in Python onJanuary 02, 2020

均方损失函数:

pytorch 实现cross entropy损失函数计算方式

这里 loss, x, y 的维度是一样的,可以是向量或者矩阵,i 是下标。

很多的 loss 函数都有 size_average 和 reduce 两个布尔类型的参数。因为一般损失函数都是直接计算 batch 的数据,因此返回的 loss 结果都是维度为 (batch_size, ) 的向量。

(1)如果 reduce = False,那么 size_average 参数失效,直接返回向量形式的 loss

(2)如果 reduce = True,那么 loss 返回的是标量

a)如果 size_average = True,返回 loss.mean();
b)如果 size_average = False,返回 loss.sum();

注意:默认情况下, reduce = True,size_average = True

import torch
import numpy as np

1、返回向量

loss_fn = torch.nn.MSELoss(reduce=False, size_average=False)
a=np.array([[1,2],[3,4]])
b=np.array([[2,3],[4,5]])
input = torch.autograd.Variable(torch.from_numpy(a))
target = torch.autograd.Variable(torch.from_numpy(b))

这里将Variable类型统一为float()(tensor类型也是调用xxx.float())

loss = loss_fn(input.float(), target.float())
print(loss)
tensor([[ 1., 1.],
  [ 1., 1.]])

2、返回平均值

a=np.array([[1,2],[3,4]])
b=np.array([[2,3],[4,4]])
loss_fn = torch.nn.MSELoss(reduce=True, size_average=True)
input = torch.autograd.Variable(torch.from_numpy(a))
target = torch.autograd.Variable(torch.from_numpy(b))
loss = loss_fn(input.float(), target.float())
print(loss)
tensor(0.7500)

以上这篇pytorch 实现cross entropy损失函数计算方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python通过urllib2爬网页上种子下载示例
Feb 24 Python
Python中使用不同编码读写txt文件详解
May 28 Python
python爬虫入门教程--快速理解HTTP协议(一)
May 25 Python
浅谈python和C语言混编的几种方式(推荐)
Sep 27 Python
对Python中gensim库word2vec的使用详解
May 08 Python
Python3之简单搭建自带服务器的实例讲解
Jun 04 Python
Python+OpenCV实现图像融合的原理及代码
Dec 03 Python
在python中使用with打开多个文件的方法
Jan 07 Python
python实战串口助手_解决8串口多个发送的问题
Jun 12 Python
python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能
Jul 04 Python
Python银行系统实战源码
Oct 25 Python
Python中的Cookie模块如何使用
Jun 04 Python
Matplotlib scatter绘制散点图的方法实现
Jan 02 #Python
Python基础之函数基本用法与进阶详解
Jan 02 #Python
Python面向对象原理与基础语法详解
Jan 02 #Python
Pytorch 的损失函数Loss function使用详解
Jan 02 #Python
Python面向对象封装操作案例详解 II
Jan 02 #Python
Python实现搜索算法的实例代码
Jan 02 #Python
python 实现从高分辨图像上抠取图像块
Jan 02 #Python
You might like
初次接触php抽象工厂模式(Elgg)
2010/03/21 PHP
PHP通过正则表达式下载图片到本地的实现代码
2011/09/19 PHP
PHP代码保护--Zend Guard的使用详解
2013/06/03 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
MyEclipse常用配置图文教程
2014/09/11 PHP
ThinkPHP提交表单时默认自动转义的解决方法
2014/11/25 PHP
php 算法之实现相对路径的实例
2017/10/17 PHP
Yii框架学习笔记之session与cookie简单操作示例
2019/04/30 PHP
PHP快速导出百万级数据到CSV或者EXCEL文件
2020/11/27 PHP
JS简单的轮播的图片滚动实例
2013/06/17 Javascript
JavaScript去除数组里重复值的方法
2015/07/13 Javascript
Bootstrap Validator 表单验证
2016/07/25 Javascript
vue使用axios实现文件上传进度的实时更新详解
2017/12/20 Javascript
vue elementUI tree树形控件获取父节点ID的实例
2018/09/12 Javascript
vue 使某个组件不被 keep-alive 缓存的方法
2018/09/21 Javascript
小程序封装路由文件和路由方法(5种全解析)
2019/05/26 Javascript
js实现动态时钟
2020/03/12 Javascript
详解vue-router的Import异步加载模块问题的解决方案
2020/05/13 Javascript
jQuery实现的分页插件完整示例
2020/05/26 jQuery
Python3基础之输入和输出实例分析
2014/08/18 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
python机器学习理论与实战(二)决策树
2018/01/19 Python
Django添加sitemap的方法示例
2018/08/06 Python
[机器视觉]使用python自动识别验证码详解
2019/05/16 Python
python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能
2019/07/04 Python
Python中断多重循环的几种方式详解
2020/02/10 Python
基于python实现操作redis及消息队列
2020/08/27 Python
HTML5新特性之语义化标签
2017/10/31 HTML / CSS
英国豪华针织品牌John Smedley的在线销售商:The Outlet by John Smedley
2018/04/08 全球购物
中学生打架检讨书
2014/10/13 职场文书
申报优秀教师材料
2014/12/16 职场文书
鲁冰花观后感
2015/06/10 职场文书
同事去世追悼词
2015/06/23 职场文书
大队委员竞选稿
2015/11/20 职场文书
2016大一新生军训感言
2015/12/08 职场文书
有关花店创业的计划书模板
2019/08/27 职场文书