网站建设与维护试卷分析,深圳官网建站服务商,做宽屏网站,做网站用盗版PS同学你好#xff01;本文章于2021年末编写#xff0c;获得广泛的好评#xff01;
故在2022年末对本系列进行填充与更新#xff0c;欢迎大家订阅最新的专栏#xff0c;获取基于Pytorch1.10版本的理论代码(2023版)实现#xff0c;
Pytorch深度学习理论篇(2023版)目录地址…同学你好本文章于2021年末编写获得广泛的好评
故在2022年末对本系列进行填充与更新欢迎大家订阅最新的专栏获取基于Pytorch1.10版本的理论代码(2023版)实现
Pytorch深度学习·理论篇(2023版)目录地址为
CSDN独家 | 全网首发 | Pytorch深度学习·理论篇(2023版)目录本专栏将通过系统的深度学习实例从可解释性的角度对深度学习的原理进行讲解与分析通过将深度学习知识与Pytorch的高效结合帮助各位新入门的读者理解深度学习各个模板之间的关系这些均是在Pytorch上实现的可以有效的结合当前各位研究生的研究方向设计人工智能的各个领域是经过一年时间打磨的精品专栏https://v9999.blog.csdn.net/article/details/127587345欢迎大家订阅(2023版)理论篇 以下为2021版原文~~~~ 1 在GPU与CPU上定义张量
1.1 GPU与CPU的张量相互转化
import torch
# 创建一个张量
a torch.FloatTensor()
# 将CPU上的张量在GPU所管理的内存中重新创建
b a.cuda()
print(b) # 输出 tensor([], devicecuda:0)
# 将GPU上的张量创建到CPU上
print(b.cpu()) # 输出 tensor([])
1.2 在GPU上定义张量
import torch
# 创建一个张量
a torch.tensor([4],devicecuda)#在GPU上定义一个张量
print(a) # 输出 tensor([4], devicecuda:0)
1.3 指定GPU设备运行的两种方法
1.3.1 代码方式
import torch
# 创建一个张量
a torch.FloatTensor([4])
print(a.to(cuda:0)) # 输出 tensor([4.], devicecuda:0)
1.3.2 命令行方式
CUDA_VISIBLE_DEVICES1 # 只有编号为1的GPU对程序是可见的在代码中gpu[0]指的就是这块儿GPU
CUDA_VISIBLE_DEVICES0,2,3 # 只有编号为0,2,3的GPU对程序是可见的在代码中gpu[0]指的是第0块儿# gpu[1]指的是第2块儿gpu[2]指的是第3块儿
CUDA_VISIBLE_DEVICES2,0,3 # 只有编号为0,2,3的GPU对程序是可见的但是在代码中gpu[0]指的是第2块儿# gpu[1]指的是第0块儿gpu[2]指的是第3块儿使用方法1 CUDA_VISIBLE_DEVICES0 python 自己的代码.py 使用方法2
# 在代码首行添加如下代码
import os
os.environ[CUDA_VISIBLE_DEVICES] 0 # 将当前代码放置在第一个GPU上运行
2 具有随机值的张量
2.1 随机种子的设置
### 所有的随机值都是由随机种子设定的
import torch
torch.initial_seed() # 查看随机种子
torch.manual_seed(2) # 设置随机种子
2.2 生成指定形状的随机值
import torch
a torch.rand(2,3) #指定形状
print(a) # 输出 tensor([[0.3513, 0.7726, 0.8044],[0.5643, 0.9863, 0.6723]])
2.3 生成线性空间的随机值
import torch
### torch.arange() 取值范围只包括初始值不包括结束值
a torch.arange(1,10,step2) # 1至10之间按照步长为2进行取值
print(a) # tensor([1, 3, 5, 7, 9])
### torch.linspace() 取值范围只包括初始值也包括结束值
b torch.linspace(1,9,steps5)# 1至9之间均匀取5个值
print(b) # tensor([1., 3., 5., 7., 9.])2.4 生成对数空间的随机值
import torch
print(torch.logspace(1,9,steps5)) #同torch.linspace()
# 输出 tensor([1.0000e01, 1.0000e03, 1.0000e05, 1.0000e07, 1.0000e09])
2.5 生成未初始化的矩阵
import torch
print(torch.empty(1,2)) # 生成指定形状的未初始化的矩阵
# tensor([[6.6718e35, 2.3473e-38]])
2.6 更多随机值生成函数 例如伯努利分布、柯西分布、指数分布、几何分布、对数正态分布、正态分布、均匀分布、连续均匀分布 3 张量的数学运算
3.1 运算函数与运算方法
import torch
a torch.FloatTensor([4])
print(a) # 输出 tensor([4.])
### Pytorch重载运算符
print(aa) # 输出 tensor([8.])
### Pytorch的加法函数
b torch.add(a,a)
print(b) # 输出 tensor([8.])
### Pytorch的指定输出函数
torch.add(a,a,outb)
print(b) # 输出 tensor([8.])
3.2 自变化运算函数
import torch
a torch.FloatTensor([4])
### 自变化运算函数是指在变量本身的基础上做运算最终结果会作用于自己本身
a.add_(a)
print(a) # 输出 tensor([8.])