Pytorch学习笔记 1.3:Numpy和Torch函数的对比

torch.from_numpy()

转换成torch的tensor数据

torch_data.numpy()

把torch数据转换为numpy数据

import torch
import numpy as np

# 把numpy数据转换为torch数据
np_data = np.arange(6).reshape(2, 3)
torch_data = torch.from_numpy(np_data)  # 转换成torch的tensor数据

# 把torch数据转换为numpy数据
tensor2array = torch_data.numpy()
print(
    '\nnumpy', np_data,
    '\ntorch', torch_data,
    '\ntensor2array', tensor2array,

)

运行结果:
在这里插入图片描述

numpy求绝对值:np.abs(data)

torch求绝对值:torch.abs(tensor)

numpy求sin:np.sin(data)

torch求sin:torch.sin(tensor)

numpy求均值:np.mean(data)

torch求均值:torch.mean(tensor)

import torch
import numpy as np



# abs
data = [-1, -2, 1, 2]
tensor = torch.FloatTensor(data)  # 转换为32bit的tensor浮点型

print(
    '\nnbs',
    '\nnumpy:', np.abs(data),  # [1 2 1 2]
    '\ntorch:', torch.abs(tensor)  # [1 2 1 2]
)


# sin
print(
    '\nsin',
    '\nnumpy:', np.sin(data),  # [1 2 1 2]
    '\ntorch:', torch.sin(tensor)  # [1 2 1 2]
)

# mean
print(
    '\nmean',
    '\nnumpy:', np.mean(data),  # [1 2 1 2]
    '\ntorch:', torch.mean(tensor)  # [1 2 1 2]
)

运算结果:
绝对值:

numpy矩阵的乘法:np.matmul(data1, data1)

torch张量形式矩阵的乘法:torch.mm(tensor1, tensor1)

import torch
import numpy as np
# 矩阵形式的运算
data1 = [[1, 2], [3, 4]]
tensor1 = torch.FloatTensor(data1)

print(
    '\nnumpy:', np.matmul(data1, data1),
    '\ntorch:', torch.mm(tensor1, tensor1)
)

运行截图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44145452/article/details/113032477