Tipo de datos básico
Pytorch proporciona dos tipos de abstracciones de datos, llamados tensores y variables. Los tensores son similares a las matrices en numpu y también se pueden usar en GPU y pueden mejorar el rendimiento. En PyTorch, la abstracción de datos proporciona un simple cambio entre GPU y CPU.
1. Escalar (tensor de dimensión 0)
Un tensor que contiene un elemento se llama escalar. La definición es la siguiente:
a = torch.tensor(2.3)
类型进行检查
a.size() #对类型进行检查
Output:torch.Size([])
a.shape #Type check
Output:torch.Size([])
2. Vector (tensor unidimensional)
Un vector es una matriz de una secuencia de elementos. La definición es la siguiente:
b = torch.tensor([1,2])
c= torch.FloatTensor([1,3,5,8])
print(b)
print(c)
Output:tensor([1, 2])
tensor([1., 3., 5., 8.])
data = np.ones(2)
torch.from_numpy(data) #从Numpy引入
Output:
tensor([1., 1.], dtype=torch.float64)
3. Matriz (vector bidimensional)
La mayoría de los datos estructurados se pueden representar como tablas o matrices. La definición es la siguiente:
d = torch.FloatTensor([[1,2,3],
[4,5,6]])
print(d)
Output:
tensor([[1., 2., 3.],
[4., 5., 6.]])
#Type check
d.size()
d.shape
Output:
torch.Size([2, 3])
4. Vector tridimensional
Cuando se suman varias matrices, se obtiene un tensor tridimensional, que se puede utilizar para representar datos como imágenes.
e = torch.FloatTensor([[[1,2,3],
[4,5,6]]])
print(e)
Output:
tensor([[[1., 2., 3.],
[4., 5., 6.]]])
5. Vector de cuatro dimensiones
Un ejemplo común de un tipo de tensor de 4 dimensiones son las imágenes por lotes.
f = torch.rand(1,3,28,28)
Otras operaciones
f.numel representa la cantidad de memoria ocupada por Tensor —— Número de elemento
f.dim () Dimensión de vista
f = f.cuda () CPU Conversión de datos de GPU
Ser mejorado. . . .