设三维张量的shape是x、y、z,则可理解为它是由x个二维张量构成,每个二维张量由y个一维张量构成,每个一维张量由z个标量构成。


三种颜色分别代表三个维度.

import torch
torch.manual_seed(seed=20200910)
a = torch.randn(3,4,5)
mask = a > 1.5
print(mask)
print(mask[0,:]) # 索引第0个矩阵
print(mask[:, :, 0]) # 索引每个矩阵,取得每行中的第1个元素.即每个矩阵的第1列
print(mask[:, 0, :]) # 索引每个矩阵,取得每列中的第1个元素.即每个矩阵的第1行
print(mask[1, 1, 1]) # 索引第二个矩阵的第一行,第二个元素
print(mask[1, ::2, ::2]) # 索引第二个矩阵,行和列都是每隔两个取一个
>>>mask:
tensor([[[False,  True,  True, False, False],[False, False, False, False,  True],[False, False,  True, False, False],[False,  True, False, False, False]],[[False, False, False, False, False],[False, False, False, False, False],[False, False, False,  True,  True],[False, False, False, False, False]],[[ True, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False]]])>>>mask[0,:]:# 索引第0个矩阵
tensor([[False,  True,  True, False, False],[False, False, False, False,  True],[False, False,  True, False, False],[False,  True, False, False, False]])========================================================================================================>>>mask:
tensor([[[False,  True,  True, False, False],[False, False, False, False,  True],[False, False,  True, False, False],[False,  True, False, False, False]],[[False, False, False, False, False],[False, False, False, False, False],[False, False, False,  True,  True],[False, False, False, False, False]],[[ True, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False]]])>>>mask[:, :, 0] # 索引每个矩阵,取得每行中的第1个元素.即每个矩阵的第1列
tensor([[False, False, False, False],[False, False, False, False],[True, False, False, False]])========================================================================================================>>>mask:
tensor([[[False,  True,  True, False, False],[False, False, False, False,  True],[False, False,  True, False, False],[False,  True, False, False, False]],[[False, False, False, False, False],[False, False, False, False, False],[False, False, False,  True,  True],[False, False, False, False, False]],[[ True, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False]]])    >>>mask[:, 0, :] # 索引每个矩阵,取得每列中的第1个元素.即每个矩阵的第1行
tensor([[False,  True,  True, False, False],[False, False, False, False, False],[True, False, False, False, False]])>>> mask[1, 1, 1] # 索引第二个矩阵的第一行,第二个元素
tensor(False)>>> mask[1, ::2, ::2] # 索引第二个矩阵,行和列都是每隔两个取一个
tensor([[False, False, False],[False, False,  True]])
print(mask.sum(dim=0,keepdim=True))
print(mask.sum(dim=1,keepdim=True))
print(mask.sum(dim=2,keepdim=True))
>>>mask:
tensor([[[False,  True,  True, False, False],[False, False, False, False,  True],[False, False,  True, False, False],[False,  True, False, False, False]],[[False, False, False, False, False],[False, False, False, False, False],[False, False, False,  True,  True],[False, False, False, False, False]],[[ True, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False]]])>>> mask.sum(dim=0,keepdim=True)
tensor([[[1, 1, 1, 0, 0],[0, 0, 0, 0, 1],[0, 0, 1, 1, 1],[0, 1, 0, 0, 0]]])
========================================================================================================>>>mask:
tensor([[[False,  True,  True, False, False],[False, False, False, False,  True],[False, False,  True, False, False],[False,  True, False, False, False]],[[False, False, False, False, False],[False, False, False, False, False],[False, False, False,  True,  True],[False, False, False, False, False]],[[ True, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False]]])>>> mask.sum(dim=1,keepdim=True)
tensor([[[0, 2, 2, 0, 1]],[[0, 0, 0, 1, 1]],[[1, 0, 0, 0, 0]]])========================================================================================================>>>mask:
tensor([[[False,  True,  True, False, False],[False, False, False, False,  True],[False, False,  True, False, False],[False,  True, False, False, False]],[[False, False, False, False, False],[False, False, False, False, False],[False, False, False,  True,  True],[False, False, False, False, False]],[[ True, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False],[False, False, False, False, False]]])>>> mask.sum(dim=2,keepdim=True)
tensor([[[2],[1],[1],[1]],[[0],[0],[2],[0]],[[1],[0],[0],[0]]])

三维Tensor维度分析,举例mask[0,:],mask[:,:,0],mask[:,0,:]相关推荐

  1. C语言qsort()函数针对:整型、单个字符、字符串、结构体,超详细讲解(多维度分析举例,小白一看就懂!!!!!)

    目录 一.前言 二.qsort()函数

  2. 多个tensor合并成一个——四个三维tensor合成一个四维tensor——四个[3,512,1024]变成[4,3,512,1024]

    仅作为记录,大佬请跳过. 四个[3,512,1024]变成[4,3,512,1024]: --先将[3,512,1024]用torch.unsqueeze(),变成[1,3,512,1024] --用 ...

  3. 重磅资源|Pytorch1.0版本的Mask R-CNN的Facebook的官方实现

    [导读]Facebook刚刚放出的基于Pytorch1.0版本的Faster R-CNN,Mask R-CNN的benchmark,比detectron更快,准确率更高. 项目地址: https:// ...

  4. python以三维tensor为例详细理解unsqueeze和squeeze函数

    python以三维tensor为例理解unsqueeze和squeeze函数 一.建立一个二维tensor import torch as t a = t.arange(0,6) b = a.view ...

  5. [spm操作] 什么是mask,如何做mask(未完)

    本帖作为 <用Matlab和SPM批量处理被试的经验总结> 的一部分 目录贴请见 http://home.52brain.com/forum.ph ... =1&extra=#pi ...

  6. Pytorch中tensor维度和torch.max()函数中dim参数的理解

    Pytorch中tensor维度和torch.max()函数中dim参数的理解 维度 参考了 https://blog.csdn.net/qq_41375609/article/details/106 ...

  7. torch.cat()函数 ,关于四维tensor维度合并。

    引言:看了关于torch.cat函数的文章,有点乱,自己总结一篇,关于四维tensor合并. 一张图像在计算机中的表示通常为三维tensor(张量),即[channels,height,width] ...

  8. pytorch reshape_pytorch常用总结 之 tensor维度变换

    小白最近刚开始使用pytorch,经常需要在各个网站反复查询一些函数的区别.但是不同的博客说的有时候不一样,趁着实验室停电,小白写了这篇文章,方便自己食用,不定期更新.如有错误,欢迎大家热烈指正. 第 ...

  9. 判断用户是否存在再进行新增_基于tableau从商业分析模型角度对业务数据进行多维度分析--【商业分析类】...

    基于tableau从商业分析模型角度对业务数据进行多维度分析 常规商业数据分析方法: 财务多维指标 客户生命周期 客户价值RFM 客户留存分析 购物篮关联分析 漏斗转化ABtest 以下内容主要从商业 ...

最新文章

  1. UVA_11922 Permutation Transformer 【splay树】
  2. C语言 读取字符串数组中的字符串并获取字符串的长度
  3. STM32 KEIL 串口打印printf使用详解
  4. Android 通过字符串来获取R下面资源的ID 值 文字资源
  5. 逼自己玩命学了6个多月,吃透了这19个架构视频!分享给你,让你今年进个大厂!...
  6. LeetCode(893)——特殊等价字符串组(JavaScript)
  7. 鸿蒙会取代emui,华为称自家手机运行鸿蒙系统正在推进 未来会取代安卓吗?
  8. Ubuntu使用记录:直接使用root账户登录
  9. 七、curator recipes之阻塞队列SimpleDistributedQueue
  10. 关于cuda驱动版本以及cuda运行版本不匹配的问题
  11. Python自学笔记11:实操案例八(咖啡馆、2019中超联赛前五,模拟手机通讯录)
  12. 自定义provider
  13. torchtext.vocab
  14. 太空射击 第05课: 敌人精灵
  15. 2012年最值得学习的IT视频资料及技术资讯类网站列举
  16. 1.js变量、作⽤域和引⽤类型,js制作页。
  17. 生命,宇宙以及一切事物的答案是...42?
  18. Guitar Pro教程之如何输入音阶
  19. 策略路由中traffic-policy
  20. 亚商投资顾问早餐FM/0307稳增长、稳就业、稳物价

热门文章

  1. unll是什么意思_Null是什么意思
  2. 《SMPTE RP 168-2002》阅读整理
  3. Windows Server 2012 R2 Web服务器搭建步骤
  4. ios mvvm框架的封装_iOS MVVM架构总结
  5. pandas关键字提取_Pandas中文官档~基础用法3
  6. linux p4 环境配置,P4RUNTIME实验环境搭建
  7. Steam游戏黑屏与游戏直接安装方法
  8. Redis命令详解:HyperLogLog
  9. 百度地图 android 圈区域,百度地图自定义选取区域(二)
  10. python3的Django项目实例