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

创建矩阵

全零矩阵

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

Out[4]:

复制代码
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

Out[5]:

复制代码
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

Out[20]:

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

直接传入数据

In [18]:

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

Out[18]:

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

显示矩阵大小

In [21]:

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

Out[21]:

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

矩阵相加

法1:

In [25]:

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

Out[25]:

复制代码
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)

Out[26]:

复制代码
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]

Out[27]:

复制代码
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

Out[30]:

复制代码
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

Out[29]:

复制代码
tensor([1., 1., 1., 1., 1.], dtype=torch.float64)
相关推荐
入门工作者7 小时前
opencv 灰度矩求亚像素
人工智能·opencv·计算机视觉
Pyeako7 小时前
深度学习--循环神经网络原理&局限&与LSTM解决方案
人工智能·python·rnn·深度学习·lstm·循环神经网络·遗忘门
Dev7z7 小时前
基于MATLAB改进小波阈值函数的信号降噪方法研究
人工智能·语音识别
珠海西格电力7 小时前
零碳园区全面感知体系的建设成本和收益分析包含哪些关键数据?
大数据·数据库·人工智能·智慧城市·能源
清 澜7 小时前
深度学习连续剧——手搓梯度下降法
c++·人工智能·面试·职场和发展·梯度
人工智能培训7 小时前
具身智能的应用场景及实践案例
人工智能·机器学习·知识图谱·数字孪生·具身智能·企业ai培训
lauo7 小时前
dtnsbot分身网页版正式上线:开启“灵魂与肉身分离”的智能体远程控制新纪元
人工智能·智能手机·架构·开源·github
AI浩7 小时前
遮挡感知 SORT:通过观测遮挡实现鲁棒的多目标跟踪
人工智能·计算机视觉·目标跟踪
EasyDSS7 小时前
EasyDSS如何基于LiveKit/AI大模型/AI会议助手/语音转写STT技术破解音视频应用核心痛点
人工智能·音视频·webrtc·语音识别·点播技术·流媒体直播
南滑散修7 小时前
机器学习数学基础(公式版)
人工智能·机器学习