PyTorch是个啥玩意儿?
目录
1、pytorch卷积
2、enumerate()函数,遍历数据
3、交叉熵
4、nvidia-smi结果中的type标签什么意思?
1、pytorch卷积
2、enumerate()
函数,遍历数据
3、交叉熵
交叉熵例子:
import torch
import torch.nn as nn
loss_fn = nn.CrossEntropyLoss()x_input = torch.randn(5, 3)
# 上面的第一个参数5表示batchsize=5,第二个参数3表示分类的类别数,即有3类x_target = torch.tensor([0, 2, 1, 1, 0])
# 上面的标签是个数组,每个元素对应一个输入图片的类别,元素取值均在0~2之间(3种)
# 因为batchsize=5,所以这里数组中有5个图片标签,第一个标签0意思为第一张图片是第一类
# 第二个标签2意思第二张图片是第三类# 这里给出两个对象所属的类别标签即可,此处的意思为第一个对象属于第0类,第二个我对象属于第2类
loss = loss_fn(x_input, x_target)
print('loss:\n', loss)
交叉熵函数接受的不能是one-hot标签,而是类似于「1 6 9 7 4」这样的数组,之后交叉熵函数会自动转化为one-hot标签类型。即将上面的数组变为
01000000000
00000010000
00000000001 这个数组就相当于batchsize=5,因为数组中的每个元素均代表一个图片类别00000001000
00001000000
如果不同类别对应的权重不同,传入的权重参数应该是一个1维的tensor。
输入的每一类的置信度得分(input)应该是原始的,未经过softmax或者normalized。原因是这个函数会首先对输入的原始得分进行softmax,所以必须保证输入的是每一类的原始得分。不能写成[0.2, 0.36, 0.44]这种softmax之后的或者[0, 1, 0]这种one-hot编码。
输入的target也不能是one-hot标签,直接输入每个例子对应的类别编号就行了(0 < target_value < C-1),比如产生的结果数为N*C(N为个数,C为类别数),那么输入的target必须输入一个长度为N的一维tensor(指明每个结果属于哪一类,如[1, 3, 0],函数内部会自动转化为one-hot标签)。
4、nvidia-smi结果中的type标签什么意思?
They are both for GPU.
PyTorch是个啥玩意儿?相关推荐
- 从0基础到全国亚军,自学机器学习如何挺进Kaggle前20%
前半部分是各种碎碎念,介绍自己0基础入门机器学习的经历,不喜欢可以跳过 后半部分介绍自己的比赛方案 双非文科出身,0基础完全靠自学入门[机器学习],在一场练习赛中Sole,成绩从第1661名达到了全球 ...
- 如何高效入门 PyTorch ?
王树义 读完需要 15 分钟 速读仅需5分钟 PyTorch 入门,坑着实不少.咱们来谈谈,如何选个合适的教程,避开它们. 1 选择 好几位读者,都留言问我: 王老师,我想学深度学习,到底是该学 Te ...
- 伯禹公益AI《动手学深度学习PyTorch版》Task 03 学习笔记
伯禹公益AI<动手学深度学习PyTorch版>Task 03 学习笔记 Task 03:过拟合.欠拟合及其解决方案:梯度消失.梯度爆炸:循环神经网络进阶 微信昵称:WarmIce 过拟合. ...
- anaconda环境配置pytorch总结,GPU调用失败方法总结
垃圾电脑(我好菜),配置环境用了六七个小时,淦,接下来我总结一下我遇到的问题及解决方法. 1.首先按部就班地在CSDN上搜索anaconda如何配置pytorch,帖子有很多,不再赘述,在添加完各种镜 ...
- Pytorch踩坑记之交叉熵(nn.CrossEntropy,nn.NLLLoss,nn.BCELoss的区别和使用)
目录 nn.Softmax和nn.LogSoftmax nn.NLLLoss nn.CrossEntropy nn.BCELoss 总结 在Pytorch中的交叉熵函数的血泪史要从nn.CrossEn ...
- Pytorch中如何理解RNN LSTM GRU的input(重点理解seq_len / time_steps)
在建立时序模型时,若使用keras,我们在Input的时候就会在shape内设置好sequence_length(后面简称seq_len),接着便可以在自定义的data_generator内进行个性化 ...
- 【PyTorch】迁移学习:基于 VGG 实现的光明哨兵与破败军团分类器
文章目录 简述. 环境配置. PyTorch代码. 导入第三方库. 使用 GPU. 加载数据. 定义可视化函数. 加载预训练模型. 冻结特征层. 修改输出层. 定义优化器. 定义训练函数. 训练过程. ...
- 蒙奇奇深度学习第一课:Windows10安装pytorch和tensorflow(避坑必读,吐血整理)
蒙奇奇经过一番折腾,终于成功安装了pytorch和tensorflow,踩了不少坑,但她都成功填上了哈哈.这是她的安装方法记录,没有放图,但是她描述的比较清楚,相信屏幕前的你可以看懂的嘻嘻.对了,看这 ...
- 通过anaconda2安装python2.7和安装pytorch
①由于官网下载anaconda2太慢,最好去byrbt下载,然后安装就行 ②安装完anaconda2会自动安装了python2.7(如终端输入python即进入python模式) 但是可能没有设置环境 ...
最新文章
- Linux常用命令 积累
- java元婴期(24)----java进阶(mybatis(3)---动态sql(重点))
- Qt之布局管理——堆栈窗体
- postgres 显示变量_sql - 如何在PostgreSQL查询中声明变量
- 每日一题:leetcode81.搜索旋转排序数组Ⅱ
- java方法重载实事例_零基础java入门教程函数重载function实例化格式案例
- ATIchinapay银联支付模块.zip
- python实现FTP文件上传和下载
- Xceed WPF 3D显示控件Xceed 3D Views for WPF控件详细介绍使用及下载
- 关于半导体器件材料的这些基础知识你都知道?
- win10系统可以登录微信,但浏览器不能打开网页
- python 二项分布编程_Python模拟伯努利试验和二项分布代码实例
- Tip | 使用GitHubDesktop提交 本地existing项目
- Android 隐藏App的图标
- cannot import name ‘_validate_lengths‘ from ‘numpy.lib.arraypad‘错误
- 数据处理的神来之笔 解决缓存击穿的终极利器 1
- 电子计算机是采用什么进制法,计算机内部使用什么进制
- 显示器序列号查询方式
- gnuplot画图点线设置
- c语言中调用函数fn,C语言常见的函数调用