pytorch基础知识一

目录

    • Any Type
    • numpy转化为tensor
    • tensor创建---特殊tensor
    • tensor创建------随机值或者常量
      • 随机值
      • 1值
      • 零值
    • tensor的属性
      • 维度
      • 数据类型
      • 存储设备

Any Type

tensor可以直接从现有的数据中创建,这些数据的数据类型可以被识别,torch.tensor(d_type)
d_type的数据类型
       Any Type
       一种特殊的类型
       静态类型检查器会将每种类型都视为与Any兼容,将Any视为与每种类型兼容列表

import torch
import numpy as np
a_list = [[1,2,3],[3,4,6]]
a_tensor = torch.tensor(a_list)
a_tensor
#输出 a_tensor
    tensor([[1, 2, 3],
            [3, 4, 6]])

a_tuple = ((1,2,3),(5,6,7))
a_tuple_tensor = torch.tensor(a_tuple)
a_tuple_tensor
#输出a_tuple_tensor
tensor([[1, 2, 3],
        [5, 6, 7]])

numpy转化为tensor

       可以将numpy中的array转化为tensor

data = [[1,2,3],[3,4,6]]
np_array = np.array(data)
x_np = torch.from_numpy(np_array)
#输出x_np
    tensor([[1, 2, 3],
            [3, 4, 6]], dtype=torch.int32)

tensor创建—特殊tensor

       ①创建同tensor X 同属性的,值全为1的tensor

​        属性: 形状 、数据类型

x_ones = torch.ones_like(x_np)
#输出 x_ones
    tensor([[1, 1, 1],
            [1, 1, 1]], dtype=torch.int32)

       ②创建同tensor X 相同形状不同数据类型,值为随机值的tensor

x_rand = torch.rand_like(x_np,dtype = torch.float)
#输出x_rand
    tensor([[0.5436, 0.6419, 0.1832],
            [0.2350, 0.4274, 0.1292]])

tensor创建------随机值或者常量

       shape:tensor的维度,是一个元组,决定了输出的tensor的维度

shape = (3,3)

随机值

rand_tensor = torch.rand(shape)
#输出rand_tensor
    tensor([[0.5089, 0.4999, 0.0699],
            [0.3351, 0.5203, 0.4060],
            [0.2223, 0.9389, 0.5312]])

1值

one_tensor = torch.ones(shape)
#输出one_tensor



    tensor([[1., 1., 1.],
            [1., 1., 1.],
            [1., 1., 1.]])

零值


zero_tensor = torch.zeros(shape)
#输出zero_tensor
    tensor([[0., 0., 0.],
            [0., 0., 0.],
            [0., 0., 0.]])

tensor的属性

tensor的属性描述了tensor的维度、类型、tensor存储的设备:GPU or cpu

one_tensor
#输出
    tensor([[1., 1., 1.],
            [1., 1., 1.],
            [1., 1., 1.]])

维度

one_tensor.shape
torch.Size([3, 3])

数据类型

one_tensor.dtype
torch.float32

存储设备

one_tensor.device
device(type='cpu')

你可能感兴趣的:(pytorch,pytorch,深度学习,python)