1. AIML/

PyTorch基础知识

首先,这里有一些PyTorch的参考资料:

  1. PyTorch官方文档
  2. 深度学习入门

一些示例代码及解释 #

import torch as pt
x = pt.arange(12)
print(x)
X = x.reshape(3,4) # 等同于下一行(指定一个维度并自动计算另一个)
XX = x.reshape(-1,4)
pt.zeros(2,3,4,5) # 创建一个四维的零张量
x = pt.randn(3,4) # 来自正态分布的随机张量
y = pt.randn(3,4)
pt.tensor([[1,2,3,4],[2,1,4,3],[4,3,5,2]]) # 手动输入一个二维张量
addd = x + y # 逐元素加法
subb = x - y
mutt = x * y
divw = x / y
poww = x ** y
expp = pt.exp(x)
rcat = pt.cat((x,y),dim=0) # 沿行连接,dim=1沿列连接
x == y # 检查两个矩阵对应位置的值是否相等并输出一个布尔矩阵
x.sum() # 求张量中所有值的和

广播机制用于执行逐元素操作。该机制如下工作:

  1. 通过适当复制元素来扩展数组,以便在转换后,两个张量具有相同的形状。
  2. 在结果数组上执行逐元素操作。

PyTorch根据设计的模型构建计算图,以执行自动微分和计算梯度,然后执行反向传播以更新参数。