pytorch代码复现1(基础知识)

创建矩阵

全零矩阵

复制代码
In [4]:
import torch
torch.__version__
x=torch.empty(5,3)
x

Out4:

复制代码
tensor([[0.0000e+00, 0.0000e+00, 4.6430e-23],
        [1.4013e-45, 1.2612e-44, 0.0000e+00],
        [3.5733e-43, 0.0000e+00, 0.0000e+00],
        [0.0000e+00, 0.0000e+00, 0.0000e+00],
        [0.0000e+00, 0.0000e+00, 0.0000e+00]])

随机矩阵

In 5:

复制代码
x=torch.rand(5,3)
x

Out5:

复制代码
tensor([[0.8045, 0.6600, 0.5920],
        [0.9726, 0.2459, 0.5417],
        [0.5958, 0.6286, 0.5736],
        [0.5969, 0.0276, 0.8971],
        [0.9583, 0.4394, 0.5928]])

#tensor(张量)几维矩阵都行

初始化一个全零矩阵

In 20:

复制代码
x=torch.zeros(5,3)#x=torch.zeros(5,4,dtype=torch.int)
x

Out20:

复制代码
tensor([[0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.]])

直接传入数据

In 18:

复制代码
y=torch.tensor([5,4])
y

Out18:

复制代码
tensor([5, 4])

显示矩阵大小

In 21:

复制代码
x.size()#当前的维度是几行几列的

Out21:

复制代码
torch.Size([5, 3])

矩阵相加

法1:

In 25:

复制代码
y=torch.rand(5,3)
x=torch.rand(5,3)
x+y

Out25:

复制代码
tensor([[0.8520, 0.6184, 1.2141],
        [1.8745, 1.0329, 1.1968],
        [0.9743, 0.5262, 1.4275],
        [0.5415, 1.0113, 1.2635],
        [0.9762, 0.7496, 1.4369]])

法2:

In 26:

复制代码
torch.add(x,y)

Out26:

复制代码
tensor([[0.8520, 0.6184, 1.2141],
        [1.8745, 1.0329, 1.1968],
        [0.9743, 0.5262, 1.4275],
        [0.5415, 1.0113, 1.2635],
        [0.9762, 0.7496, 1.4369]])

索引

In 27:

复制代码
x[:1]

Out27:

复制代码
tensor([[0.0229, 0.1664, 0.5243]])

改变矩阵维度

In 28:

复制代码
x=torch.rand(4,4)
y=x.view(16)
z=x.view(-1,8)#-1代表自动填充
print(x.size(),y.size(),z.size())
复制代码
torch.Size([4, 4]) torch.Size([16]) torch.Size([2, 8])

tensor转成numpy的格式

In 30:

复制代码
a=torch.ones(5)
b=a.numpy()
b

Out30:

复制代码
array([1., 1., 1., 1., 1.], dtype=float32)

numpy转tensor的格式

In 29:

复制代码
import numpy as np
a=np.ones(5)
b=torch.from_numpy(a)
b

Out29:

复制代码
tensor([1., 1., 1., 1., 1.], dtype=torch.float64)
相关推荐
To_OC6 小时前
手搓一个迷你版 Cursor:从零实现能自动写代码的编程 Agent
人工智能·langchain·llm
民乐团扒谱机6 小时前
【全流程实战】LibTV节点式AI视频工作流落地教程|从剧本到成片可复用流水线,新手/开发者双版本
人工智能·音视频
STLearner7 小时前
ICML 2026 | LLM×Graph论文总结[1]【图基础模型,文本属性图,多模态属性图,图对齐,图提示学习,关系深度学习
论文阅读·人工智能·python·深度学习·学习·机器学习·数据挖掘
冬奇Lab8 小时前
MCP 系列(05):Resources 和 Prompts 进阶——动态数据、参数化 URI 与多轮模板
人工智能·llm·mcp
冬奇Lab8 小时前
开源项目第158期:cangjie-skill — 把书、视频、播客里的方法论蒸馏成可调用的 AI Skills
人工智能·开源·资讯
习明然9 小时前
我的本地化AI项目(三)
人工智能·python·electron·c#·avalonia
程序猿炎义10 小时前
一人内容团队——用Amazon Quick Desktop实现小红书从选题到发布的全流程自动化
大数据·人工智能·microsoft·自动化·小红书
阿虎儿10 小时前
daytona创建snapshot: Failed to get initial runner: Error: No available runners
人工智能