#隔行取樣
#每個從0開始到28,每隔兩個畫素進行取樣
a[:,:,0:28:2,0:28:2].shape
#生成4個,每個有3個通道,畫素為28*28
a=torch.randn(4,3,28,28)
#取前兩個
a[:2].shape
out:torch.size([2,3,28,28])
#對第一張進行取樣
a.index_select(0,torch.tensor([1,2]))shape
a=torch.rand(4,1,28,28)
#使用view進行維度的變換
#前提:保證原矩陣各維度的乘積等於變換後的維度乘積
#unsqueeze 插入乙個維度
print(a.shape)
res=a.unsqueeze(0).shape
print(res)
#squeeze 刪減乙個維度,只能擠壓(size=1)
#空參情況,刪除所有可以刪除的維度
res=a.squeeze()
print(res.shape)
#帶引數的情況,刪除指定維度
#擴充套件維度
b=torch.rand([1,32,1,1])
#print(b.shape)
res=b.expand(4,32,14,14)
print(res.shape)#torch.size([4, 32, 14, 14])
#當不想改變某個維度時,使用-1代替
res=b.expand(-1,32,14,-1)
print(res.shape)#torch.size([1, 32, 14, 1])
#使用permute()交換維度
print(b.shape)#torch.size([1, 32, 1, 1])
res=b.permute(0,2,3,1)
print(res.shape)#torch.size([1, 1, 1, 32])
pytorch基礎函式
返回乙個張量,從標準正態分佈 均值為0,方差為1 中抽取的一組隨機數。張量的形狀由引數sizes定義。import torch import torch.nn.functional as f x1 torch.tensor 1,2,3,4 1,3,4,5 3,4,5,6 y11 f.softmax ...
Pytorch基礎操作
import torch import numpy as np x torch.empty 5,3 print x 初始化乙個隨機矩陣 x torch.zeros 5,3,dtype torch.long print x 構建乙個全0矩陣 x x.new ones 5,3,dtype torch.d...
pytorch基礎用法
1.把x0和x1的資料合在一起,宣告是什麼型別的資料集 x torch.cat x0,x1 0 type torch.floattensor shape 200,2 floattensor 32 bit floating y torch.cat y0,y1 type torch.longtensor...