Pytorch Tutorial

本文记录了作者开始学习Pytorch的过程,从官网寻找适配版本并安装,到跟随官方Tutorial和莫烦Python教程进行实践。文章分享了学习过程中的资源链接,包括官方文档和数学操作函数说明,并附上了学习笔记,适合Pytorch初学者参考。

今天开始学学Pytorch

一、首先去官网找到适配的版本

 

二、下载安装好,根据Tutorial开始学习

① 先打开了官方的Tutorial,但是需要下载 torchvision,然后就更新了一大堆,在等待的过程中,看了bilibili的莫烦python,越到后面越看不懂。。。

②莫烦Python推荐

https://pytorch.org/docs/stable/index.html 【官方文档】

https://pytorch.org/docs/stable/torch.html#math-operations【关于math函数的形式】

③发现官方的Tutorial很不错哦,献上笔记

[1] Pytorch Tutorial (1) -- DEEP LEARNING WITH PYTORCH: A 60 MINUTE BLITZ

[2] 

PyTorch的Distributed Data Parallel(DDP)是一种用于多GPU和多节点训练的高效并行训练技术。以下是获取相关教程系列的一些途径: ### 官方教程 PyTorch官方文档提供了非常详细且权威的Distributed Data Parallel教程。官方教程通常会随着PyTorch版本更新而不断完善,能保证内容的准确性和时效性。 - 访问地址:https://pytorch.org/tutorials/intermediate/ddp_tutorial.html 官方教程示例代码片段: ```python import torch import torch.distributed as dist import torch.multiprocessing as mp import torch.nn as nn import torch.optim as optim from torch.nn.parallel import DistributedDataParallel as DDP def setup(rank, world_size): os.environ['MASTER_ADDR'] = 'localhost' os.environ['MASTER_PORT'] = '12355' # initialize the process group dist.init_process_group("gloo", rank=rank, world_size=world_size) def cleanup(): dist.destroy_process_group() class ToyModel(nn.Module): def __init__(self): super(ToyModel, self).__init__() self.net1 = nn.Linear(10, 10) self.relu = nn.ReLU() self.net2 = nn.Linear(10, 5) def forward(self, x): return self.net2(self.relu(self.net1(x))) def demo_basic(rank, world_size): setup(rank, world_size) # create model and move it to GPU with id rank model = ToyModel().to(rank) ddp_model = DDP(model, device_ids=[rank]) loss_fn = nn.MSELoss() optimizer = optim.SGD(ddp_model.parameters(), lr=0.001) optimizer.zero_grad() outputs = ddp_model(torch.randn(20, 10).to(rank)) labels = torch.randn(20, 5).to(rank) loss_fn(outputs, labels).backward() optimizer.step() cleanup() def run_demo(demo_fn, world_size): mp.spawn(demo_fn, args=(world_size,), nprocs=world_size, join=True) if __name__ == "__main__": n_gpus = torch.cuda.device_count() assert n_gpus >= 2, f"Requires at least 2 GPUs to run, but got {n_gpus}" world_size = n_gpus run_demo(demo_basic, world_size) ``` ### 社区资源 - **GitHub**:许多开发者会在GitHub上分享他们的DDP实践经验和代码示例。可以通过搜索关键词“PyTorch Distributed Data Parallel tutorial”来到相关的仓库。 - **Medium**:Medium上有很多技术博客文章,一些作者会撰写关于DDP的深入教程和实践经验分享。 ### 视频教程 - **YouTube**:在YouTube上搜索“PyTorch Distributed Data Parallel tutorial”,可以到很多由专业人士制作的视频教程,这些教程通常会结合实际代码进行讲解,更易于理解。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值