Pytorch-创建tensor
引言
本篇介绍创建tensor的几种方式
Import from numpy
from_numpy()
- float64 是 double 类型,也就是说从numpy导入的float其实是double类型。
- 从numpy导入的 int 还是 int 类型
|
|
Import from List
- 数据量不是很大,不需要numpy作为载体
torch.tensor([ ])
、torch.FloatTensor([ ])
、torch.Tensor([ ])
关系在后面介绍- tensor 与 Tensor易混淆
- 多使用tensor。
|
|
torch.tensor()
与torch.Tensor()
默认 生成torch.FloatTensor
类型,增强学习中多为torch.DoubleTensor
- 通过
torch.set_default_tensor_type(torch.DoubleTensor)
来更改 torch.tensor()
如果列表中都是int类型,则它会生成torch.LongTensor
|
|
data uninitialized
生成未初始化的数据
torch.empty(d1,d2,d3)
torch.FloatTensor(d1,d2,d3)
torch.IntTensor(d1,d2,d3)
未初始化的tensor将出现的问题
|
|
- 这些数据有的特别特别小,有的特别特别大
- 这些数据如果没有后续的处理覆盖,将会产生bug,例如:可能在后面产生无穷大的数
|
|
- tensor只是一个容器,后面会将自己的数据放入的。
rand/rand_like, randint
随机初始化
推荐使用随机初始化。
- rand 会随机的在[0, 1] 之间取一个数。
- rand_like( a ) 读取向量 a 的shape在送到rand函数
- randint 先指定区间
[ min, max )
,然后指定shape,shape要放在列表或元组中
|
|
N(0, 1)
randn()
- 均值为0,方差为1,数据集中在0附近
- 权值w 或 偏置 b 的一个初始化
N(u, std)
normal()
|
|
arange/range
- 生成等差数列
arange()
,默认以1来递增 - range现在已经不建议使用了
|
|
linspace/logspace
- 等分
linspace()
[0,10] , steps=4 logspace()
也是等分,不过是以10^x 来得到输出的。
|
|
ones/zeros/eye
- ones() 生成全部为1的
- zeros() 生成全部为0的
- eye() 生成单位向量
|
|
randperm
- 随机打散 (numpy中是 random.shuffle)
- randperm()
|
|
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可以理解为高维矩 ...
随机推荐
- css全部理解
如何设置标签样式 给标签设置长宽 只有块儿级标签才可以设置长宽 行内标签设置了没有任何作用(仅仅只取决于内部文本值) 字体颜色 color后面可以跟多种颜色数据 颜色英文 red #06a0de 直接 ...
- 数据库中char和varchar的区别
1. char类型的长度是固定的,varchar的长度是可变的. 这就表示,存储字符串'abc',使用char(10),表示存储的字符将占10个字节(包括7个空字符) 使用varchar2(10),, ...
- [BZOJ 1095] [ZJOI2007]Hide 捉迷藏——线段树+括号序列(强..)
神做法-%dalao,写的超详细 konjac的博客. 如果觉得上面链接的代码不够优秀好看,欢迎回来看本蒟蒻代码- CODE WITH ANNOTATION 代码中−6-6−6表示左括号'[',用−9 ...
- robotframework 获取坐标
Get Horizontal Position 获取X轴坐标 Get Vertical Position 获取Y轴坐标 Get Element Size 获取整个图表的高 ...
- java——ThreadLocal、ThreadLocalMap、Thread三者的关系
https://www.jianshu.com/p/377bb840802f Thread类中维护了一个成员变量:ThreadLocalMap 每个Thread有一个自己的ThreadLocalMap ...
- JSP页面的Page指令指定编码和Meta标签编码
JSP代码如下: <%@ page language="java" contentType="text/html; charset=UTF-8" page ...
- linux下ssh免秘钥登录
1.检查防火墙是否关闭 (1)切换到root用户 (2)查看防火墙状态 service iptables status 这是没有关闭 (3)设置关闭 service iptables stop 2.检 ...
- HGOI 20190828 题解
Problem A 数学题 设数论函数$f(x)$表示$x(x ∉ Prime)$的次大因数, 给出$l,r$求出$\sum\limits_{i=l,i ∉ Prime} ^r f(i)$ . 对于$ ...
- Node.js 安装与开发
Node.js 简介 Node.js是一个Javascript运行环境(runtime),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装.Node.js对一些 ...
- jQuery文档操作之插入操作
append() 语法 父元素.append(子元素) 解释:追加某元素,在父元素中添加新的子元素.子元素可以为:string/element(js对象)/jQuery元素 代码如下: var oli ...