softmax loss:

softmax:     softmax的作用,将fc的输出映射成为(0,1)的概率,并将其差距拉大。

cross entropy loss:   y是样本的真实标签,为1,y'是样本的分数。单个样本的交叉熵计算方法。

softmax loss:   计算n个样本的交叉熵,然后取均值。

pytorch 的crossentropy loss的测试demo:

#coding=utf-8

import torch
import torch.nn as nn
import math
import numpy as np # output = torch.randn(1, 5, requires_grad = True) #假设是网络的最后一层,5分类
output=np.array([[-0.3625, -0.4523, 1.7358, 0.6512, -0.8057]],dtype='float')
output=torch.from_numpy(output)
# label = torch.empty(1, dtype=torch.long).random_(5) # 0 - 4, 任意选取一个分类
label=np.array([2],dtype='int64')
label=torch.from_numpy(label) print ('Network Output is: ', output)
print ('Ground Truth Label is: ', label) score = output [0,label.item()].item() # label对应的class的logits(得分)
print ('Score for the ground truth class = ', label) first = - score
second = 0
for i in range(5):
second += math.exp(output[0,i])
second = math.log(second) loss = first + second
print ('-' * 20)
print ('my loss = ', loss) loss = nn.CrossEntropyLoss()
print ('pytorch loss = ', loss(output, label))

输出:

在计算方式上:

cross entropy loss: 

sigmoid:

sigmoid的导数:

deep learning的一些知识点的更多相关文章

  1. Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现(转)

    Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文, ...

  2. Deep Learning 学习笔记——第9章

    总览: 本章所讲的知识点包括>>>> 1.描述卷积操作 2.解释使用卷积的原因 3.描述pooling操作 4.卷积在实践应用中的变化形式 5.卷积如何适应输入数据 6.CNN ...

  3. 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】

    转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...

  4. Deep Learning论文笔记之(八)Deep Learning最新综述

    Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...

  5. Deep Learning论文笔记之(六)Multi-Stage多级架构分析

    Deep Learning论文笔记之(六)Multi-Stage多级架构分析 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些 ...

  6. Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现

    https://blog.csdn.net/zouxy09/article/details/9993371 自己平时看了一些论文,但老感觉看完过后就会慢慢的淡忘,某一天重新拾起来的时候又好像没有看过一 ...

  7. 深度学习的集成方法——Ensemble Methods for Deep Learning Neural Networks

    本文主要参考Ensemble Methods for Deep Learning Neural Networks一文. 1. 前言 神经网络具有很高的方差,不易复现出结果,而且模型的结果对初始化参数异 ...

  8. Deep Learning论文笔记之(一)K-means特征学习

    Deep Learning论文笔记之(一)K-means特征学习 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文,但老感 ...

  9. 机器学习(Machine Learning)&深度学习(Deep Learning)资料汇总 (上)

    转载:http://dataunion.org/8463.html?utm_source=tuicool&utm_medium=referral <Brief History of Ma ...

随机推荐

  1. 【Linux】Jenkins安装(二)

    Jenkins介绍 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布/测试项目. 2.监控外部调用执行的工作. 安装环境 操作系统:lin ...

  2. 【论文速读】ChengLin_Liu_ICCV2017_Deep_Direct_Regression_for_Multi-Oriented_Scene_Text_Detection

    ChengLin Liu_ICCV2017_Deep Direct Regression for Multi-Oriented Scene Text Detection 作者 关键词 文字检测.多方向 ...

  3. hdu4780 最小费用最大流

    提交 题意: 给了M个机器,N个糖果要被生产,每个糖果有一个Si和Ti的时间,只能在Si或者在Si<=t<Ti的时间开始生产 每个机器进行转化生产产品的时候都会产生一个代价,然后求最小的代 ...

  4. 【转】数据处理常用的sql语句整理

    一下语句都是基于 mysql数据库 查询是否使用索引 explain  select * FROM t_table1; 结果列的含义: table:此次查询操作是关联哪张数据表 type:连接查询操作 ...

  5. Android-Gradle(四)

    当你在开发一个app,通常你会有几个版本.大多数情况是你需要一个开发版本,用来测试app和弄清它的质量,然后还需要一个生产版本.这些版本通常有不同的设置,例如不同的URL地址.更可能的是你可能需要一个 ...

  6. omitting directory `folder/'

    题记:一个问题,若遇见第一次,不知道如何解决,经查资料后处理掉可以原谅:若遇见第二次,还是一头雾水!反省自己,特此备录. 在linux CentOS6.5 系统中复制文件夹时提示如下: cp: omi ...

  7. 多个for循环嵌套会影响速度

    在复现Meta-SR的过程中,发现如果嵌套多个for 循环会使速度过慢.这是下面实验得出的结论: import time t1 = time.time() a = range(3000) b = ra ...

  8. 20175208 《Java程序设计》第八周学习总结

    20175208 2018-2019-3<Java程序设计>第八周学习总结 一.教材学习内容总结: 1.泛型: 泛型的主要目的是可以建立具有类型安全的集合框架(如链表.散列映射等数据结构) ...

  9. 2018-2019-2 《网络对抗技术》 Exp1 PC平台逆向破解 20165215

    2018-2019-2 <网络对抗技术> Exp1 PC平台逆向破解 20165215 目录 知识点描述 实验步骤 (一)直接修改程序机器指令,改变程序执行流程 (二)通过构造输入参数,造 ...

  10. js 字符串的replace() 方法和实现replaceAll() 方法

    一.js中字符串的替换使用replace() 方法,但它只替换第一个匹配子串.如下例: <script type="text/javascript"> var sour ...