Pytorch入门> 1.1张量的运算广播机制及其他操作

1.张量运算

张量的四则运算: 加x+y, 减x-y, 乘x*y, 除x/y

Pytorch入门> 1.1张量的运算广播机制及其他操作_第1张图片

其他运算:幂x**y ,指数函数torch.exp()

Pytorch入门> 1.1张量的运算广播机制及其他操作_第2张图片

对张量所有元素求和.sum()

Pytorch入门> 1.1张量的运算广播机制及其他操作_第3张图片

张量的范数torch.norm(),其中tensor必须为浮点数。

||X||_{2}= \sqrt{\sum_{i=1}^{n}}x_{i}^{2}

import torch
u= torch.tensor([3.,4.])
torch.norm(u)

Pytorch入门> 1.1张量的运算广播机制及其他操作_第4张图片

 

2.torch.cat()张量的拼接

dim=0时按行拼接(加在后面),dim=1时按列拼接(加在右边), 使用时注意括号,x应该在一个括号内。

import torch
x = torch.arange(6,10)
y = torch.tensor([1,2,3,4])

Pytorch入门> 1.1张量的运算广播机制及其他操作_第5张图片

3.广播机制

看了一些视频,目前我的理解是两个张量的形状不同,如一个行向量一个列向量,不论其中元素个数是否相同,他们相加之后得到的是一个矩阵而不是一个向量。如下面的示例,张量a只有在与张量c相加后得到一个列向量,其他则会每一行与每一列对应相加最终得到一个矩阵。

广播机制提醒我们形状不同时张量会按元素操作。

Pytorch入门> 1.1张量的运算广播机制及其他操作_第6张图片

4. tensor与numpy的转换

tensor转为numpy:.item()只能用于单个张量,.numpy()

umpy转为tensor:torch.tensor()

Pytorch入门> 1.1张量的运算广播机制及其他操作_第7张图片

你可能感兴趣的:(Pytorch,pytorch,python,张量)