Pytorch 中 Variable 和 Tensor 的 bool 特性
时间:2019-01-10
本文章向大家介绍Pytorch 中 Variable 和 Tensor 的 bool 特性,主要包括Pytorch 中 Variable 和 Tensor 的 bool 特性使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Variable 的 bool
>>> vx
Variable containing:
0.3535 0.5137 0.4131 0.5732
0.8076 0.4160 1.0000 0.6436
0.3682 0.8086 0.4863 0.9268
[torch.cuda.FloatTensor of size 3x4 (GPU 0)]
>>> vx > 0.5
Variable containing:
0 1 0 1
1 0 1 1
0 1 0 1
[torch.cuda.ByteTensor of size 3x4 (GPU 0)]
# 不能使用 np.where !!!!!!!!!
>>> np.where(vx>0.5)
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/anaconda/envs/th36/lib/python3.6/site-packages/torch/autograd/variable.py", line 125, in __bool__
torch.typename(self.data) + " is ambiguous")
RuntimeError: bool value of Variable objects containing non-empty torch.cuda.ByteTensor is ambiguous
# 不能使用 np.bool !!!!!!!!!
>>> np.bool(vx > 0.5)
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/anaconda/envs/th36/lib/python3.6/site-packages/torch/autograd/variable.py", line 125, in __bool__
torch.typename(self.data) + " is ambiguous")
RuntimeError: bool value of Variable objects containing non-empty torch.cuda.ByteTensor is ambiguous
Tensor 的 bool
>>> vx.data > 0.5
0 1 0 1
1 0 1 1
0 1 0 1
[torch.cuda.ByteTensor of size 3x4 (GPU 0)]
# 可以使用 np.where !!!!!!!!
>>> np.where(vx.data > 0.5)
(array([0, 0, 1, 1, 1, 2, 2]), array([1, 3, 0, 2, 3, 1, 3]))
# 不能使用 np.bool !!!!!!!!!
>>> np.bool(vx.data > 0.5)
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/anaconda/envs/th36/lib/python3.6/site-packages/torch/tensor.py", line 163, in __bool__
" objects is ambiguous")
RuntimeError: bool value of non-empty torch.cuda.ByteTensor objects is ambiguous
两者的值的比较
import torch
a = torch.tensor([[1,2,3],[4,5,6],[7,8,9],[10,11,12]],dtype=torch.float)
for i in a[0,:]:
if i == 1:
print('Yes')
else:
print('No')
Yes
No
No
- HDUOJ---What Are You Talking About
- HDUOJ-----(1251)统计难题
- HDUOJ-----1541 Stars
- HDUOJ--------(1198)Farm Irrigation
- NYOJ-------三角形
- HDUOJ-------(1022)Train Problem I
- NYOJ-----素数环
- HDUOJ-----(1329)Calling Extraterrestrial Intelligence Again
- 修改WordPress默认评论表情(附:跳转到多说评论框的方法)
- HDUOJ--------(1312)Red and Black
- HDUOJ---------(1045)Fire Net
- HDUOJ----(1175)连连看
- HDUOJ-----(1072)Nightmare(bfs)
- deque容器的运用一点一点积累
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Hadoop框架:单服务下伪分布式集群搭建
- 架构设计 | 基于Seata中间件,微服务模式下事务管理
- 编程体系结构(03):Java集合容器
- SpringBoot2 集成日志,复杂业务下的自定义实现
- 事件统计 | performance_schema全方位介绍
- 如何理解直播APP源码开发中的音视频同步
- 在GitHub上发布一个Python项目需要注意哪些
- CS学习笔记 | 21、反向转发通道的建立
- CS学习笔记 | 22、通过SSH开通通道
- 一文搞懂 java -jar 发生了什么
- 树莓派4裸机基础教程:环境搭建
- Oh! Binlog还能这样用之Canal篇
- docker安装elasticsearch和head插件
- redis学习(十六)
- 商业鬼才教你 策略模式