pytorch安装略!
一.张量Tensor
张量是一个统称其中包含0阶,1阶,2阶,3阶,4阶,.......n阶。
0阶:标量,常数,0-D Tensor
1阶:向量,1-D Tensor
2阶:矩阵,2-D Tensor
一直增加维度
二.Pytorch中创建张量
1.列表或者序列创建tensor
python
import torch
torch.tensor([[1., -1.], [1.,-1.]])
torch.tensor([[ 1.0000, -1.0000],
[ 1.0000, -1.0000]])
2.numpy中的数组创建tensor
python
torch.tensor(np.array([[1,2,3],[4,5,6]]))
3.使用pytorch中的api创建
python
# 创建一个三行四列的无用数据tensor
torch.empty(3,4)
# 创建一个三行四列的全为1的tensor
torch.ones(3,4)
# 创建一个三行四列的值全部在0-1之间的tensor
torch.rand(3,4)
# 创建一个三行四列的指定随机数的tensor
torch.randint(low=0,high=100,size=[3,4])
# 创建一个三行四列均值为0方差为1的tensor
torch.randn(3,4)
三.Pytorch中tensor的常用方法
1.获取数据
python
a=torch.tensor(1)
# 如果不使用item方法,那么结果是tensor([1])
a.item()
# 输出结果为1
2.numpy数组和tensor互转
python
a=torch.tensor([[1],[2],[3]])
# 之间使用.numpy就可以了
a.numpy()
# 如果a是numpy数组,那么就使用上面的创建方法
a=torch.tensor(a)
3.获取形状
python
a=torch.tensor([[1],[2],[3]])
a.size()
# 返回形式为:tensor.Size([3,1])
4.改变形状
python
a=torch.tensor([[1],
[2],
[3]])
b=a.view(1,3)
# 输出b就为:tensor([[1,2,3]])
5获取阶数
python
tensor.dim()
# 几阶就返回几阶
6.获取最大值
python
tensor.max()
7.转置
python
tensor.t()
8.指定获取数据
python
tensor[1,3] # 和python列表一样
9.赋值
python
tensor[1,3]=5 # 和python列表一样
10.切片
python
# tensor[对行切片,对列切片]
#比如tensor[:,1]获取所有行中的第二列数据
四.tensor中的数据类型
上图中的Tensor types表示这种type的tensor是其实例
1.获取数据类型:
python
tensor.dtype
2.指定数据类型
python
# 创建一个两行三列的数据类型为float32的tensor
torch.ones([2,3],dtype=torch.float32)
修改数据类型
python
# 注意这里是type
tensor.type(torch.int)
五.tensor的其他操作
tensor相加
python
# 1.直接相加
tensor=tensor+tensor
# 2.add
torch.add(tensor1,tensor2)
tensor1.add(tensor2)
# 3.加常数
tensor+c
其实tensor的加减乘除和numpy操作都差不多,就不一一列举了