torch.masked_select()用法

>>> import torch
>>> x=torch.randn(3,2)
>>> mask=x>0
>>> x
tensor([[-1.4701,  0.2248],[-0.5485,  0.4736],[ 0.5431,  0.0294]])
>>> mask
tensor([[False,  True],[False,  True],[ True,  True]])>>> torch.masked_select(x,mask)
tensor([0.2248, 0.4736, 0.5431, 0.0294])

Tensor.masked_scatter()用法

>>> import torch
>>> x=torch.randn(3,4)
>>> mask=torch.randn(3,4)>0
>>> re=torch.randn(3,4)+100>>> x
tensor([[ 1.1707,  1.0754, -0.7924,  0.0886],[-1.6767, -1.6024,  0.7270, -1.8158],[-0.1692, -0.3450,  0.8961,  1.0697]])
>>> mask
tensor([[ True,  True,  True,  True],[ True, False, False,  True],[ True, False, False,  True]])
>>> re
tensor([[100.6069, 100.8317, 100.3769,  98.5353],[ 99.1745,  99.4091, 100.2879, 100.2621],[ 99.9853, 101.0823, 101.5993, 100.1091]])>>> x.masked_scatter_(mask,re)
tensor([[100.6069, 100.8317, 100.3769,  98.5353],[ 99.1745,  -1.6024,   0.7270,  99.4091],[100.2879,  -0.3450,   0.8961, 100.2621]])

re根据mask的True位置来赋值x,但要注意,re是按顺序来赋值给x的,re数量小于mask的true数量就会报错。

>>> x=torch.randn([3,2])
>>> mask=x>0
>>> x
tensor([[ 0.4304, -0.4132],[ 0.0061,  0.1836],[-0.8996, -0.7297]])
>>> mask
tensor([[ True, False],[ True,  True],[False, False]])>>> re=torch.randn([2])
>>> x.masked_scatter_(mask,re)
Traceback (most recent call last):File "<stdin>", line 1, in <module>
RuntimeError: Number of elements of source < number of ones in mask>>> re =torch.randn([3])
>>> re
tensor([-0.5413, -0.1640,  0.1688])
>>> x.masked_scatter_(mask,re)
tensor([[-0.5413, -0.4132],[-0.1640,  0.1688],[-0.8996, -0.7297]])

torch.masked_select()和Tensor.masked_scatter()的用法相关推荐

  1. pytorch中mask操作之torch.masked_select

    # Copyright 2018 CVTE . All Rights Reserved. # coding: utf-8from __future__ import print_function fr ...

  2. torch.topk和tensor.topk

    https://pytorch.org/docs/stable/generated/torch.topk.html#torch.topk 1. 定义 按照指定的维度进行数值大小的排序,返回top-k个 ...

  3. tensor torch 构造_TORCH.TENSOR

    tensor 是一个由单一数据类型数据组成的多维矩阵 torch 定义了8种 CPU 张量和 GPU张量 tensor可以用torch.tensor(data)创建,data可以是 python li ...

  4. torch里面的Tensor、as_tensor、tensor以及from_numpy究竟有何区别?

    导读 在使用pytorch的时候我们经常会用到将numpy array转为tensor,以及将tensor转为numpy array的情况.pytroch内置了几种不同的方法可以方便我们将numpy ...

  5. 【Torch笔记】Tensor 简介与创建方法

    [Torch笔记]Tensor 1 什么是 Tensor? Tensor,又称张量,它是矩阵向任意维度的推广. [Tensor 与 Variable(目前已弃用,但最好了解一下)] Variable ...

  6. torch学习笔记--tensor介绍2,对tensor的结构

    本章将介绍tensor的结构与函数 torch.Tensor():返回一个空tensor. torch.Tensor(tensor):返回一个拥有相同内存的tensor,类似于指针.不是重新开辟一个内 ...

  7. pytorch之torch.zeros_like,torch.ones_like和tensor按索引赋值

    1. torch.zeros_like 可以生成和括号内变量维度一致的全是0的内容.例如:输入维度为 1 × 8 × 3 × 5 1\times8\times3\times5 1×8×3×5的x,要生 ...

  8. torch把存放tensor的整个list都转为tensor ValueError}only one element tensors can be converted to Python scal

    别用torch.tensor直接转,用下边的 torch.stack(pos_temp)

  9. PyTorch中Tensor的基本用法与动手学深度学习的预备知识

    同个人博客网站 : www.serendipper-x.cn

  10. PyTorch 笔记(06)— Tensor 索引操作(index_select、masked_select、non_zero、gather)

    Tensor 支持与 numpy.ndarray 类似的索引操作,如无特殊说明,索引出来的结果与源 tensor 共享内存,即修改一个,另外一个也会跟着改变. In [65]: a = t.arang ...

最新文章

  1. 超全的设计模式简介(45种)
  2. C#Dictionary通过索引查找key和value,非循环方法查询
  3. 给SAP系统安装联机帮助(事务码SR13)
  4. 2017-2021年中国大数据产业预测分析及全球市场规模预测
  5. oracle cube排序,Oracle rollup cube 用法
  6. 2019第十届蓝桥杯C/C++ B组省赛 —— 第三题:数列求值
  7. GB2312,GBK,UTF-8的关系
  8. 细说ReactiveCocoa的冷信号与热信号(三):怎么处理冷信号与热信号
  9. java8 di_java8 多个list对象用lambda求差集操作
  10. 安装node.js,CoffeeScript,Express.js,mysql,jade
  11. 培训ui设计要学编程吗?
  12. bzoj1831 逆序对 (dp+树状数组)
  13. javascript 组成
  14. 全民战“疫”,支付宝智能语音机器人到岗就位
  15. Echarts 柱形图最全详解
  16. 怎么查看oracle是多少位的,查看 Oracle 是32位还是64位的方法
  17. 如何一键重装电脑系统?在家里用电脑重装win10系统步骤
  18. 详解CSS中的百分号%设置
  19. Factory模式(工厂模式)
  20. 以中国南方航空为竞品结构化分析并设计航空购票网页

热门文章

  1. 圆角矩形大小怎么调整html,html圆角矩形
  2. win计算机名长度限制,Win7,Server 2012文件名过长无法删除解决方案
  3. JavaScript Date相关练习
  4. 队列fifo和lifo C语言数组实现
  5. 视频播放器软件哪个最好用?盘点6款Windows电脑上超级好用的本地视频播放器
  6. ZZNU-正约数之和(DP)
  7. C语言自学记录-Class6-函数
  8. 检验样本是否服从泊松分布
  9. 梦幻西游手游海外服务器维护,梦幻西游手游本周维护:蜃影秘境增加40级与70级...
  10. 小程序各领域的代表出来溜大街了