pytorch 线性代数基本操作

pytorch是非常好的人工智能训练和推理框架,我们来通过李沐老师的《动手学深度学习》来简单学习一下。

首先,安装pytorch,请参考pytorch官网:PyTorch

也可以到kaggle、colab、启智社区等使用配置好的pytorch环境,更简单方便。

pytorch基本操作

导入并进行标量计算

import torch

x = torch.tensor(3.0)
y = torch.tensor(2.0)

x + y, x * y, x / y, x**y

输出:

复制代码
(tensor(5.), tensor(6.), tensor(1.5000), tensor(9.))

向量操作

可以通过索引访问内部元素

x = torch.arange(4)
x
复制代码
tensor([0, 1, 2, 3])
x[3]
复制代码
tensor(3)

矩阵操作

A = torch.arange(20).reshape(5, 4)
A
复制代码
tensor([[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11],
        [12, 13, 14, 15],
        [16, 17, 18, 19]])

也可以使用torch.randn生成随机矩阵

A = torch.randn((5, 4))

张量操作

多维矩阵就是张量,AI训练主要就是张量的计算,也就是我们常说的3D、4D数据。

X = torch.arange(24).reshape(2, 3, 4)
X
复制代码
tensor([[[ 0,  1,  2,  3],
         [ 4,  5,  6,  7],
         [ 8,  9, 10, 11]],

        [[12, 13, 14, 15],
         [16, 17, 18, 19],
         [20, 21, 22, 23]]])

张量的加法就是同样位置的元素相加

A = torch.arange(20, dtype=torch.float32).reshape(5, 4)
B = A.clone()  # 通过分配新内存,将A的一个副本分配给B
A, A + B
复制代码
(tensor([[ 0.,  1.,  2.,  3.],
         [ 4.,  5.,  6.,  7.],
         [ 8.,  9., 10., 11.],
         [12., 13., 14., 15.],
         [16., 17., 18., 19.]]),
 tensor([[ 0.,  2.,  4.,  6.],
         [ 8., 10., 12., 14.],
         [16., 18., 20., 22.],
         [24., 26., 28., 30.],
         [32., 34., 36., 38.]]))

张量的同样位置相乘,叫哈达玛乘

A * B
复制代码
tensor([[  0.,   1.,   4.,   9.],
        [ 16.,  25.,  36.,  49.],
        [ 64.,  81., 100., 121.],
        [144., 169., 196., 225.],
        [256., 289., 324., 361.]])
相关推荐
taoqick2 小时前
对PosWiseFFN的改进: MoE、PKM、UltraMem
人工智能·pytorch·深度学习
suibian52352 小时前
AI时代:前端开发的职业发展路径拓宽
前端·人工智能
预测模型的开发与应用研究3 小时前
数据分析的AI+流程(个人经验)
人工智能·数据挖掘·数据分析
源大模型3 小时前
OS-Genesis:基于逆向任务合成的 GUI 代理轨迹自动化生成
人工智能·gpt·智能体
PowerBI学谦4 小时前
Python in Excel高级分析:一键RFM分析
大数据·人工智能·pandas
运维开发王义杰5 小时前
AI: Unsloth + Llama 3 微调实践,基于Colab
人工智能·llama
文心快码 Baidu Comate5 小时前
文心快码|AI重构开发新范式,从工具到人机协同
人工智能·ai编程·文心快码·智能编程助手·全栈编程
WHATEVER_LEO6 小时前
【每日论文】Latent Radiance Fields with 3D-aware 2D Representations
人工智能·深度学习·神经网络·机器学习·计算机视觉·自然语言处理
小喵要摸鱼6 小时前
【Pytorch 库】自定义数据集相关的类
pytorch·python
浮华落定6 小时前
DeepSeek+即梦 做AI视频
人工智能·chatgpt·音视频