torch.tensor、torch.zeros、torch.normal、torch.matmul介绍
一、torch.zeros简介
个人理解就是表示张量,再机器学习中我们一般表示事务都会使用不同维度的张量保存特征、标签从而表示该事物品,这些数据可能是数学中的向量、矩阵或更高维度的数组以便于实现深度学习模型及其优化算法。
torch.Tensor() 和 torch.tensor()
torch.Tensor() 和 torch.tensor() 的区别:
torch.Tensor()
是一个类,是默认张量类型torch.FloatTensor()
的别名,用于生成一个单精度浮点类型的张量。
用Tensor初始化一个张量:
a = torch.Tensor([1,2, 3, 4, 5])
print(a)
一个张量tensor可以从Python的list或序列构建:
>>> torch.FloatTensor([[1, 2, 3], [4, 5, 6]])
1 2 3
4 5 6
[torch.FloatTensor of size 2x3]
可以用python的索引和切片来获取和修改一个张量tensor中的内容:
>>> x = torch.FloatTensor([[1, 2, 3], [4, 5, 6]])
>>> print(x[1][2])
6.0
>>> x[0][1] = 8
>>> print(x)
1 8 3
4 5 6
[torch.FloatTensor of size 2x3]
二、torch.zeros简介
torch.zeros函数是PyTorch中的一个创建张量(tensor)的函数,常用于初始化模型的权重矩阵、创建指定维度的全零张量等场景。使用torch.zeros函数可以快速创建指定大小的单精度或双精度浮点型张量,其返回值为一个全零张量。
torch.zeros(*size, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
具体地说,torch.zeros函数的输入参数包括size(张量的大小)、dtype(张量数据类型)、layout(张量元素在内存中的布局)、device(张量所在的设备上)、requires_grad(是否需要计算梯度)等多个参数,其中size是必填项。
import torch
# 创建一个2x3的全零张量
x = torch.zeros(2, 3)
print(x)
torch.zeros与张量操作
torch.zeros与张量的操作息息相关,可在创建全零张量后,对其进行加减乘除、矩阵操作、逐元素操作等一系列操作,获得所需要的结果。以下是几种典型的例子:
一个空张量tensor可以通过zero函数并且规定张量其大小来构建:
>>> torch.IntTensor(2, 4).zero_()
0 0 0 0
0 0 0 0
[torch.IntTensor of size 2x4]
三、torch.normal简介
该函数返回从单独的正态分布中提取的随机数的张量,该正态分布的均值是mean,标准差是std。
该函数原型:
normal(mean, std, *, generator=None, out=None)
四、torch.matmul简介
用于张量乘法
未完待续
参考内容:
————————————————
版权声明:本文为CSDN博主「爱钻研的小铭」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42676511/article/details/121414784
参考内容:
————————————————
版权声明:本文为CSDN博主「小乌坞」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/c_procomer/article/details/120712286