当前位置: 首页 > news >正文

渠道建设网站设计好的网站推荐

渠道建设网站,设计好的网站推荐,wordpress视频教程 百度云,北辰手机网站建设torch分布式数据并行DDPtorch.nn.parallel.DistributedDataParallel代码修改记录。#xff08;要求pytorch_version1.0#xff09; 目录 1.#x1f344;#x1f344;要修改的地方概览 2.✏️✏️初始化 3.✏️✏️设置当前进程GPU 4.✏️✏️设置sampler 5.✏️✏… torch分布式数据并行DDPtorch.nn.parallel.DistributedDataParallel代码修改记录。要求pytorch_version1.0 目录 1.要修改的地方概览 2.✏️✏️初始化 3.✏️✏️设置当前进程GPU 4.✏️✏️设置sampler 5.✏️✏️sampler传入dataloader 6.✏️✏️数据放GPU 7.✏️✏️模型放GPU 8.✏️✏️load模型 9.✏️✏️save模型 10.✏️✏️执行命令 整理不易欢迎一键三连 1.要修改的地方概览 2.✏️✏️初始化 在代码最开始的地方设置初始化参数即训练和数据组织之前。 n_gpus args.n_gpus #自行传入 #local_rank args.local_rank #自行传入 local_rank int(os.environ[LOCAL_RANK]) #代码计算torch.distributed.init_process_group(nccl, world_sizen_gpus, ranklocal_rank)#初始化进程组 指定GPU之间的通信方式ncclworld_size当前这个节点上要用多少GPU卡当前节点就是当前机器rank: 当前进程在哪个GPU卡上通过args.local_rank来获取local_rank变量是通过外部指令传入的也可以通过环境变量来接收 注意自行传入的变量需要通过argparse第三方库写入示例如下 import argparseparser argparse.ArgumentParser() parser.add_argument(--n_gpus, helpnum of gpus) parser.add_argument(-p, --project, helpproject name) parser.add_argument(-s, --sparse, actionstore_true, defaultFalse, helpGAT with sparse version or not.) parser.add_argument(-d, --seed, typeint, default72, helpRandom seed.) parser.add_argument(-e, --epochs, typeint, default10000, helpNumber of epochs to train.)args parser.parse_args() print(args.n_gpus) print(args.sparse) print(args.seed) print(args.epochs)3.✏️✏️设置当前进程GPU 在初始化之后紧接着设置当前进程的GPU torch.cuda.set_device(local_rank) 上述指令作用相当于设置CUDA_VISBLE_DEVICES环境变量设置当前进程要用第几张卡 4.✏️✏️设置sampler from torch.utils.data.distributed import DistributedSampler train_sampler DistributedSampler(dataset_train) ... for epoch in range(start_epoch, total_epochs):train_sampler.set_epoch(epoch) #为了让每张卡在每个周期中得到的数据是随机的... 此处的train_dataset为load数据的Dataset类根据数据地址return出每个image和队形的maskDistributedSampler返回一堆数据的索引train_sampler根据索引去dataloader中拿数据并且在每次epoch训练之前加上train_sampler.set_epoch(epoch)这句达到shuffleTrue的目的。 5.✏️✏️sampler传入dataloader from torch.utils.data import DataLoader dataloader_train DataLoader(dataset_train, batch_sizeargs.batch_size,sampler train_sampler) dataloader_val DataLoader(dataset_val,batch_size1,) 通过将train_sampler传入dataloader达到数据传入模型的数据格式。 6.✏️✏️数据放GPU 在每次训练过程中设置数据放GPU里。 for img,label in dataloader_train:inputs img.cuda(local_rank) #数据放GPUlabels label.cuda(local_rank) #数据放GPU... 7.✏️✏️模型放GPU 在定义模型的地方设置将模型放入GPU model XXNet() net torch.nn.parallel.DistributedDataParallel(model.cuda(local_rank),device_ids[local_rank]) #模型拷贝放入DistributedDataParallel 8.✏️✏️load模型 torch.load(model_file_path, map_location local_rank) 设置 map_location指定将模型传入哪个GPU上 9.✏️✏️save模型 torch.save(net.module.state_dict(), os.path.join(ckp_savepath, ckp_name)) 注意此处保存的net是net.module.state_dict 10.✏️✏️执行命令 python -m torch.distributed.launch --nproc_per_noden_gpus --master_port 29502 train.pynproc_per_node等于GPU数量master_port默认为29501如果出现address already in use可以将其修改为其他值比如29502 参考视频讲解 整理不易欢迎一键三连 送你们一条美丽的--分割线-- ⛵⛵⭐⭐
http://www.huolong8.cn/news/103909/

相关文章:

  • 广州市住房和城乡建设局网站广州黄埔网站建设公司
  • 天猫网站是怎么做seo优化的制作一个网站的步骤
  • 郑州网站制网站开发报价标准
  • 信阳网站网站建设wordpress 如何使用
  • 网站建设毕业设计引言怎么写格豪网络建站
  • 兰州网站建设模板北京最新
  • 电视直播网站怎么做万能证件p图
  • 哪个网站用织梦做的网络推广费用大概价格
  • 网站建设选择云主机吗wordpress knowall主题
  • 做网站 内容越多越好建网站服务
  • 网站建设的条件是什么什么网站可以做电影投资
  • 广州网站搜索排名网站开发人员属于
  • 网站没有管理员权限设置网络推广费用
  • 大连建站平台什么是核心关键词
  • 制作手机网站工具建设领域行政处罚查询网站
  • 网站备案服务号夸克浏览器入口
  • 哪个网站做国内销海外的网站建设的目标定位
  • 电商网站推荐网站建设大概费用
  • 自己做的网站如何让百度收录精准客户运营推广
  • 一般做网站多少钱wap 网站的盗链问题
  • 个人网站建设开题报告朔州网站建设公司
  • 手机网站设计建设西安网站推广都是怎么做的
  • 网站的建设及发布步骤海报模板免费网站
  • 广东网站建设英铭科技最新新闻事件
  • 滕州建设招标网站广东建设工程备案网站
  • 微信文章 wordpresswordpress网站代码优化
  • 网站取消301后哪些网站用c 做的
  • 郴州网站建设较好的公司临淄网站制作首选公司
  • 权4网站怎么做php网站建设英文文献
  • 个人网站的设计与建设论文怎样做影视网站