Pytorch-创建tensor
引言
本篇介绍创建tensor的几种方式
Import from numpy
from_numpy()
- float64 是 double 类型,也就是说从numpy导入的float其实是double类型。
- 从numpy导入的 int 还是 int 类型
1 |
In[2]: import numpy as np |
Import from List
- 数据量不是很大,不需要numpy作为载体
torch.tensor([ ])
、torch.FloatTensor([ ])
、torch.Tensor([ ])
关系在后面介绍- tensor 与 Tensor易混淆
- 多使用tensor。
1 |
# 一维 |
torch.tensor()
与torch.Tensor()
默认 生成torch.FloatTensor
类型,增强学习中多为torch.DoubleTensor
- 通过
torch.set_default_tensor_type(torch.DoubleTensor)
来更改 torch.tensor()
如果列表中都是int类型,则它会生成torch.LongTensor
1 |
In[173]: a = torch.tensor([2.2,3]) |
data uninitialized
生成未初始化的数据
torch.empty(d1,d2,d3)
torch.FloatTensor(d1,d2,d3)
torch.IntTensor(d1,d2,d3)
未初始化的tensor将出现的问题
1 |
torch.empty(1) |
- 这些数据有的特别特别小,有的特别特别大
- 这些数据如果没有后续的处理覆盖,将会产生bug,例如:可能在后面产生无穷大的数
1 |
torch.isnan(torch.Tensor(2,3)) |
- tensor只是一个容器,后面会将自己的数据放入的。
rand/rand_like, randint
随机初始化
推荐使用随机初始化。
- rand 会随机的在[0, 1] 之间取一个数。
- rand_like( a ) 读取向量 a 的shape在送到rand函数
- randint 先指定区间
[ min, max )
,然后指定shape,shape要放在列表或元组中
1 |
In[189]: torch.rand(3,3) |
N(0, 1)
randn()
- 均值为0,方差为1,数据集中在0附近
- 权值w 或 偏置 b 的一个初始化
N(u, std)
normal()
1 |
In[201]: torch.randn(3,3) |
arange/range
- 生成等差数列
arange()
,默认以1来递增 - range现在已经不建议使用了
1 |
In[207]: torch.arange(0,10) |
linspace/logspace
- 等分
linspace()
[0,10] , steps=4 logspace()
也是等分,不过是以10^x 来得到输出的。
1 |
In[210]: torch.linspace(0,10, steps=4) |
ones/zeros/eye
- ones() 生成全部为1的
- zeros() 生成全部为0的
- eye() 生成单位向量
1 |
In[215]: torch.ones(3,3) |
randperm
- 随机打散 (numpy中是 random.shuffle)
- randperm()
1 |
In[223]: torch.randperm(10) |
Pytorch-创建tensor的更多相关文章
- pytorch 创建tensor的几种方法
tensor默认是不求梯度的,对应的requires_grad是False. 1.指定数值初始化 import torch #创建一个tensor,其中shape为[2] tensor=torch.T ...
- pytorch——不用包模拟简单线性预测,数据类型,创建tensor,索引与切片
常见的学习种类 线性回归,最简单的y=wx+b型的,就像是调节音量大小.逻辑回归,是否问题.分类问题,是猫是狗是猪 最简单的线性回归y=wx+b 目的:给定大量的(x,y)坐标点,通过机器学习来找出最 ...
- 对pytorch中Tensor的剖析
不是python层面Tensor的剖析,是C层面的剖析. 看pytorch下lib库中的TH好一阵子了,TH也是torch7下面的一个重要的库. 可以在torch的github上看到相关文档.看了半天 ...
- pytorch中tensor张量数据基础入门
pytorch张量数据类型入门1.对于pytorch的深度学习框架,其基本的数据类型属于张量数据类型,即Tensor数据类型,对于python里面的int,float,int array,flaot ...
- pytorch之Tensor
#tensor和numpy import torch import numpy as np numpy_tensor = np.random.randn(3,4) print(numpy_tensor ...
- 创建Tensor
目录 创建Tensor numpy, list numpy list zeros, ones, fill zeros ones fill random 打乱idx后,a和b的索引不变 constant ...
- pytorch中tensor数据和numpy数据转换中注意的一个问题
转载自:(pytorch中tensor数据和numpy数据转换中注意的一个问题)[https://blog.csdn.net/nihate/article/details/82791277] 在pyt ...
- pytorch中tensor张量的创建
import torch import numpy as np print(torch.tensor([1,2,3])) print(torch.tensor(np.arange(15).reshap ...
- [Pytorch]Pytorch中tensor常用语法
原文地址:https://zhuanlan.zhihu.com/p/31494491 上次我总结了在PyTorch中建立随机数Tensor的多种方法的区别. 这次我把常用的Tensor的数学运算总结到 ...
- [Pytorch]Pytorch的tensor变量类型转换
原文:https://blog.csdn.net/hustchenze/article/details/79154139 Pytorch的数据类型为各式各样的Tensor,Tensor可以理解为高维矩 ...
随机推荐
- 性能篇——函数调用结果的 LRU 缓存
1. 应用场景: 多次调用同一函数 2. 普通写法: def say(name): print("hellow:%s"%name) now = datetime.datetime. ...
- 使用IDA Pro逆向C++程序
使用IDA Pro逆向C++程序 附:中科院李_硕博 : IDA用来做二进制分析还是很强大的 .lib程序是不是很容易分析出源码? 这个得看编译选项是怎么设置的 如果没混淆 没太过优化 大体能恢复源码 ...
- WebRTC的带宽估计[转载]
带宽估计(BWE)模块的任务是决定你可以发送多大的视频流且不会造成网络拥塞,以此来保证不会降低视频质量. 在以前的带宽估计算法还是十分基础的,大体上是基于丢包而设计的.通常我们在开始慢慢的增加视频的比 ...
- mysql增删查改练习
建表 班级表 create table class( cid int auto_increment unique, caption varchar(32) not null default '' )c ...
- python中open与with open的区别
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的.在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开 ...
- updatedepthtexture 和 screen space shadow 开关
2018.0.3f 里面directional light开了shadow 就会有一张updatedepth 如果距离远 没有阴影就没有shadow pass 但是updatedepth没有关掉 管线 ...
- return new Promise的时候,不能带着.then()方法
app.js return new Promise的同时带着.then()方法会出错 return出去的这个Promise,整体状态会显示pending,虽然详细里状态显示resolve,但是没有re ...
- Javascript你必须要知道的知识点
1.使用 typeof bar === "object" 判断 bar 是不是一个对象有神马潜在的弊端?如何避免这种弊端? 使用 typeof 的弊端是显而易见的(这种弊端同使用 ...
- [CSP-S模拟测试]:联合权值·改(暴力)
题目传送门(内部题143) 输入格式 输入文件的第一行为三个整数$n,m,t$.其中$t$是数据类型. 接下来$m$行,每行两个正整数$u,v$,表示图中的一条边.数据保证不存在重边或自环的情况. ...
- 读redux源码总结
redux介绍 redux给我们暴露了这几个方法 { createStore, combineReducers, bindActionCreators, applyMiddleware, compos ...