最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

玉祥在線開戶——SKSKFC

2023-06-16 21:29 作者:基安小可愛  | 我要投稿

一、創(chuàng)建Tensor

1.1未初始化的方法

這些方法只是開辟了空間,所附的初始值(非常大,非常小,0),后面還需要我們進(jìn)行數(shù)據(jù)的存入。

torch.empty():返回一個沒有初始化的Tensor,默認(rèn)是FloatTensor類型。

1
2
3
4
5
6
7
8
9
10
#torch.empty(d1,d2,d3)函數(shù)輸入的是shape
torch.empty(2,3,5)
??
#tensor([[[-1.9036e-22,? 6.8944e-43,? 0.0000e+00,? 0.0000e+00, -1.0922e-20],
#???????? [ 6.8944e-43, -2.8812e-24,? 6.8944e-43, -5.9272e-21,? 6.8944e-43],
#???????? [ 0.0000e+00,? 0.0000e+00,? 0.0000e+00,? 0.0000e+00,? 0.0000e+00]],
#
#??????? [[ 0.0000e+00,? 0.0000e+00,? 0.0000e+00,? 0.0000e+00,? 0.0000e+00],
#???????? [ 0.0000e+00,? 0.0000e+00,? 1.4013e-45,? 0.0000e+00,? 0.0000e+00],
#???????? [ 0.0000e+00,? 0.0000e+00,? 0.0000e+00,? 0.0000e+00,? 0.0000e+00]]])

torch.FloatTensor():返回沒有初始化的FloatTensor。

1
2
3
4
5
#torch.FloatTensor(d1,d2,d3)
torch.FloatTensor(2,2)
??
#tensor([[-0.0000e+00,? 4.5907e-41],
#??????? [-7.3327e-21,? 6.8944e-43]])

torch.IntTensor():返回沒有初始化的IntTensor。

1
2
3
4
5
#torch.IntTensor(d1,d2,d3)
torch.IntTensor(2,2)
??
#tensor([[????????? 0,? 1002524760],
#??????? [-1687359808,???????? 492]], dtype=torch.int32)

1.2 隨機(jī)初始化

  • 隨機(jī)均勻分布:rand/rand_like,randint

rand:[0,1)均勻分布;randint(min,max,[d1,d2,d3]) 返回[min,max)的整數(shù)均勻分布

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#torch.rand(d1,d2,d3)
torch.rand(2,2)
??
#tensor([[0.8670, 0.6158],
#??????? [0.0895, 0.2391]])
??
#rand_like()
a=torch.rand(3,2)
torch.rand_like(a)
??
#tensor([[0.2846, 0.3605],
#??????? [0.3359, 0.2789],
#??????? [0.5637, 0.6276]])
??
#randint(min,max,[d1,d2,d3])
torch.randint(1,10,[3,3,3])
??
#tensor([[[3, 3, 8],
#???????? [2, 7, 7],
#???????? [6, 5, 9]],
#
#??????? [[7, 9, 9],
#???????? [6, 3, 9],
#???????? [1, 5, 6]],
#
#??????? [[5, 4, 8],
#???????? [7, 1, 2],
#???????? [3, 4, 4]]])
  • 隨機(jī)正態(tài)分布 randn

randn返回一組符合N(0,1)正態(tài)分布的隨機(jī)數(shù)據(jù)

1
2
3
4
5
6
7
8
9
10
11
#randn(d1,d2,d3)
torch.randn(2,2)
??
#tensor([[ 0.3729,? 0.0548],
#??????? [-1.9443,? 1.2485]])
??
#normal(mean,std) 需要給出均值和方差
torch.normal(mean=torch.full([10],0.),std=torch.arange(1,0,-0.1))
??
#tensor([-0.8547,? 0.1985,? 0.1879,? 0.7315, -0.3785, -0.3445,? 0.7092,? 0.0525, 0.2669,? 0.0744])
#后面需要用reshape修正成自己想要的形狀

1.3 賦值初始化

full:返回一個定值

1
2
3
4
5
6
7
8
9
10
11
#full([d1,d2,d3],num)
torch.full([2,2],6)
??
#tensor([[6, 6],
#??????? [6, 6]])
??
torch.full([],6)
#tensor(6)?? 標(biāo)量
??
torch.full([1],6)
#tensor([6]) 向量

arange:返回一組階梯,等差數(shù)列

1
2
3
4
5
6
7
#torch.arange(min,max,step):返回一個[min,max),步長為step的集體數(shù)組,默認(rèn)為1
torch.arange(0,10)
??
#tensor([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
??
torch.arange(0,10,2)
#tensor([0, 2, 4, 6, 8])

linspace/logspace:返回一組階梯

1
2
3
4
5
6
7
8
9
10
11
#torch.linspace(min,max,steps):返回一個[min,max],數(shù)量為steps的數(shù)組
torch.linspace(1,10,11)
??
#tensor([ 1.0000,? 1.9000,? 2.8000,? 3.7000,? 4.6000,? 5.5000,? 6.4000,? 7.3000,
#???????? 8.2000,? 9.1000, 10.0000])
??
#torch.logspace(a,b,steps):返回一個[10^a,10^b],數(shù)量為steps的數(shù)組
torch.logspace(0,1,10)
??
#tensor([ 1.0000,? 1.2915,? 1.6681,? 2.1544,? 2.7826,? 3.5938,? 4.6416,? 5.9948,
#???????? 7.7426, 10.0000])

ones/zeros/eye:返回全1全0或者對角陣 ones_like/zeros_like

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#torch.ones(d1,d2)
torch.ones(2,2)
??
#tensor([[1., 1.],
#??????? [1., 1.]])
??
#torch.zeros(d1,d2)
torch.zeros(2,2)
??
#tensor([[0., 0.],
#??????? [0., 0.]])
??
#torch.eye() 只能接收一個或兩個參數(shù)
torch.eye(3)
??
#tensor([[1., 0., 0.],
#??????? [0., 1., 0.],
#??????? [0., 0., 1.]])
??
torch.eye(2,3)
??
#tensor([[1., 0., 0.],
#??????? [0., 1., 0.]])

1.4 隨機(jī)打散變量

randperm:一般用于位置操作。類似random.shuffle()。

1
2
torch.randperm(8)
#tensor([2, 6, 7, 5, 3, 4, 1, 0])

二、索引與切片

簡單索引方式

1
2
3
4
5
a=torch.rand(4,3,28,28)
a[0].shape
#torch.Size([3, 28, 28])
a[0,0,0,0]
#tensor(0.9373)

批量索引方式 開始位置:結(jié)束位置 左邊取的到,右邊取不到 算是一種切片 [0,1,2]->[-3,-2,-1]

1
2
3
4
a[:2].shape
#torch.Size([2, 3, 28, 28])
a[1:].shape
#torch.Size([3, 3, 28, 28])

隔行采樣方式 開始位置:結(jié)束位置:間隔

1
2
a[:,:,0:28:2,:].shape
#torch.Size([4, 3, 14, 28])

任意取樣方式 a.index_select(d,[d層的數(shù)據(jù)索引])

1
2
3
4
5
a.index_select(0,torch.tensor([0,2])).shape
#torch.Size([2, 3, 28, 28])
??
a.index_select(1,torch.tensor([0,2])).shape
#torch.Size([4, 2, 28, 28])

...任意維度取樣

1
2
3
4
5
6
7
8
a[...].shape
#torch.Size([4, 3, 28, 28])
??
a[0,...].shape
#torch.Size([3, 28, 28])
??
a[:,2,...].shape
#torch.Size([4, 28, 28])

掩碼索引mask x.ge(0.5) 表示大于等于0.5的為1,小于0.5的為0

1
2
3
4
5
6
#torch.masked_select 取出掩碼對應(yīng)位置的值
x=torch.randn(3,4)
mask=x.ge(0.5)
torch.masked_select(x,mask)
??
#tensor([1.6950, 1.2207, 0.6035])

具體索引 take(變量,位置) 會把變量變?yōu)橐痪S的

1
2
3
4
x=torch.randn(3,4)
torch.take(x,torch.tensor([0,1,5]))
??
#tensor([-2.2092, -0.2652,? 0.4848])


玉祥在線開戶——SKSKFC的評論 (共 條)

分享到微博請遵守國家法律
葫芦岛市| 揭阳市| 南江县| 安西县| 苏尼特右旗| 石棉县| 富民县| 卫辉市| 海伦市| 石渠县| 东丰县| 延川县| 银川市| 错那县| 家居| 二手房| 西乌珠穆沁旗| 雷州市| 延川县| 洛阳市| 卢龙县| 文安县| 新田县| 临潭县| 修文县| 白河县| 涞水县| 乌拉特前旗| 客服| 鞍山市| 嘉祥县| 洪泽县| 霸州市| 郸城县| 临夏市| 宁乡县| 泸州市| 琼海市| 社旗县| 安福县| 栾川县|