2:pytorch的基本数据类型以及张量的创建

1:基本数据类型

 

 

 【注】pytorch中没有string类型。表示string类型需要用到编码表示:例如:one-hot编码,Eembedding编码

2:创建张量

【注】可以用isinstance(data,dataType)检验数据类型。

【注】在pytorch0.3及0.3之前没有标量的概念。例如表示0.1需要用[0.1]表示。pytorch0.4之后加入了标量概念。例如:表示0.1表示0.1

(1):torch.tensor([1.0,2.0,3.0])其中的参数是data

(2):torch.Tensor(d1,d2,d3)其中参数是tensor的shape。也可以是data例如:[0.1,0.2,0.3](尽量不用该种)

默认数据类型是floatTensor.

[注]由于没有初始化,torch.Tensor()创建可能会出现数据特别大和特别小的情况。故可以使用下面的随机初始化创建

(3)随机初始化创建:rand(shape),rand_like(tensor),randint(start,end,shape)

 [注]randint出的数据不会取到end。

(4)正太分布randn()

 

 

【注】 torch.randn(3,3)表示均值为0,方差为1的正太分布初始化。也可以使用torch.normal()自己定义均值和方差。

(5)

 

 【注】第三个参数为步长

(6)

 

 

 【注】torch.logspace(0,-1,steps=10)则生成0,-1之间切分数据为10的指数。

(7)

 

 【注】eye()生成一个对角矩阵,eye中的参数只能是一个或者两个,不能指定更多维度。例如:生成一个一个3*3的对角矩阵可以是eye(3)或者是eye(3,3)

(8)随机打散

 

posted @ 2021-07-08 11:16  收购阿里巴巴  阅读(60)  评论(0编辑  收藏  举报