PyTorch怎么创建数据及实现数学运算
Admin 2022-06-07 群英技术资讯 604 次浏览
创建一个空张量矩阵.
格式:
torch.empty(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False, pin_memory=False, memory_format=torch.contiguous_format) → Tensor
参数:
例子:
# 创建一个形状为[2, 2]的矩阵 a = torch.empty(2, 2) print(a) # 创建一个形状为[3, 3]的矩阵 b = torch.empty(3, 3) print(b)
输出结果:
tensor([[0., 0.],
[0., 0.]])
tensor([[0., 0., 0.],
[0., 0., 0.],
[0., 0., 0.]])
创建一个全零矩阵.
格式:
torch.zeros(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
参数:
例子:
# 创建一个形状为[2, 2]的全零数组 a = torch.zeros([2, 2], dtype=torch.float32) print(a) # 创建一个形状为[3, 3]的全零数组 b = torch.zeros([3, 3], dtype=torch.float32) print(b)
输出结果:
tensor([[0., 0.],
[0., 0.]])
tensor([[0., 0., 0.],
[0., 0., 0.],
[0., 0., 0.]])
创建一个全一矩阵.
格式:
torch.ones(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
参数:
例子:
# 创建一个形状为[2, 2]的全一数组 a = torch.ones([2, 2], dtype=torch.float32) print(a) # 创建一个形状为[3, 3]的全一数组 b = torch.ones([3, 3], dtype=torch.float32) print(b)
输出结果:
tensor([[1., 1.],
[1., 1.]])
tensor([[1., 1., 1.],
[1., 1., 1.],
[1., 1., 1.]])
通过数据创建张量.
格式:
torch.tensor(data, *, dtype=None, device=None, requires_grad=False, pin_memory=False) → Tensor
参数:
例子:
# 通过数据创建张量 array = np.arange(1, 10).reshape(3, 3) print(array) print(type(array)) tensor = torch.tensor(array) print(tensor) print(type(tensor))
输出结果:
[[1 2 3]
[4 5 6]
[7 8 9]]
<class 'numpy.ndarray'>
tensor([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]], dtype=torch.int32)
<class 'torch.Tensor'>
创建一个 0~1 随机数的张量矩阵.
格式:
torch.rand(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
参数:
例子:
# 创建形状为[2, 2]的随机数矩阵 rand = torch.rand(2, 2) print(rand)
输出结果:
tensor([[0.6209, 0.3424],
[0.3506, 0.7986]])
返回相加的张量.
格式:
torch.add(input, other, *, out=None) → Tensor
例子:
# 张量相加 input1 = torch.tensor([[1, 2], [3, 4]]) print(input1) input2 = torch.tensor([[4, 3], [2, 1]]) print(input2) output = torch.add(input1, input2) print(output)
输出结果:
tensor([[1, 2],
[3, 4]])
tensor([[4, 3],
[2, 1]])
tensor([[5, 5],
[5, 5]])
注: 相加的张量形状必须一致, 否则会报错.
返回相减的张量.
例子:
# 张量相减 input1 = torch.tensor([[1, 2], [3, 4]]) print(input1) input2 = torch.tensor([[4, 3], [2, 1]]) print(input2) output = torch.sub(input1, input2) print(output)
输出结果:
tensor([[1, 2],
[3, 4]])
tensor([[4, 3],
[2, 1]])
tensor([[-3, -1],
[ 1, 3]])
例子:
# 张量矩阵相乘 input1 = torch.tensor([[1, 1, 1]]) print(input1) input2 = torch.tensor([[3], [3], [3]]) print(input2) output = torch.matmul(input1, input2) print(output)
输出结果:
tensor([[1, 1, 1]])
tensor([[3],
[3],
[3]])
tensor([[9]])
索引 (index) 可以帮助我们快速的找到张量中的特定信息.
例子:
# 简单的索引操作 ones = torch.ones([3, 3]) print(ones[: 2]) print(ones[:, : 2])
调试输出:
tensor([[1., 1., 1.],
[1., 1., 1.]])
tensor([[1., 1.],
[1., 1.],
[1., 1.]])
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了keras修改backend的简单方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Python装饰器适合什么场景?用法是什么?一些新手可能对于Python装饰器还不是很了解,对此这篇文章就给大家来介绍一下Python装饰器,下文有对Python装饰器的介绍以及实例,感兴趣的朋友就往下看吧。
这篇文章主要介绍了python如何将一个四位数反向输出,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Pandas包的merge、join、concat方法可以完成数据的合并和拼接,本文主要介绍了这三种实现方式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
ROI区域又叫感兴趣区域。在机器视觉、图像处理中,从被处理的图像以方框、圆、椭圆、不规则多边形等方式勾勒出需要处理的区域,称为感兴趣区域,ROI。本文主要为大家介绍如何通过Python+OpenCV提取ROI区域,需要的朋友可以了解一下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008