pytorch的入门使用

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操作都差不多,就不一一列举了

相关推荐
罗西的思考43 分钟前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
冬奇Lab1 小时前
OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?
人工智能·开源·源码阅读
冬奇Lab1 小时前
一天一个开源项目(第38篇):Claude Code Telegram - 用 Telegram 远程用 Claude Code,随时随地聊项目
人工智能·开源·资讯
孟健3 小时前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
格砸3 小时前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
可观测性用观测云3 小时前
可观测性 4.0:教系统如何思考
人工智能
sunny8653 小时前
Claude Code 跨会话上下文恢复:从 8 次纠正到 0 次的工程实践
人工智能·开源·github
小笼包包仔3 小时前
OpenClaw 多Agent软件开发最佳实践指南
人工智能
smallyoung4 小时前
AgenticRAG:智能体驱动的检索增强生成
人工智能
_skyming_4 小时前
OpenCode 如何做到结果不做自动质量评估,为什么结果还不错?
人工智能