![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PyTorch
文章平均质量分 75
清欢守护者
人间有味是清欢
展开
-
PyTorch C++ 官方教程摘要(1) Using the PyTorch C++ Frontend
文章目录0. 前言1. 为什么要用C++2. DCGAN PyTorch C++ 示例2.1. 使用基本流程2.2. 网络结构定义0. 前言PyTorch官方教程中有一些C++相关的内容。今天要学习的主要是 Using The Pytorch C++ Frontend本文主要内容包括:为什么要用C++以DCGAN为例实现功能1. 为什么要用C++其实就是相比Python,C++的优势。C++前端的目标不是替代Python前端,而是补充。Low Latency Syste原创 2021-03-01 14:05:48 · 406 阅读 · 0 评论 -
PyTorch 1.4 源码编译记录
0. 前言目标:在 ubuntu 16.04 上编译PyTorch1.4源码。参考资料:PyTorch 1.4 源码,release链接1. 基本流程参考资料:官方提供了教程只提供了 conda 编译的流程,如果没有conda要从源码编译应该特别麻烦……流程:第一步:安装依赖。公共依赖:conda install numpy ninja pyyaml mkl mkl-include setuptools cmake cffi安装 mega:conda install -c pyt原创 2020-09-23 00:14:44 · 508 阅读 · 0 评论 -
PyTorch Distributed Tutorials(6) PyTorch 1.0 Distributed Trainer with Amazon AWS
文章目录0. 前言1. AWS 配置2. 环境配置3. 分布式训练代码3.1. imports & helper function3.2. 训练代码3.3. 验证代码3.4. 设置输入数据相关参数3.5. 初始化 process group3.6. 模型初始化3.7. 初始化 dataloaders3.8. 训练loop代码4. 开始分布式训练0. 前言官方链接目标:在两台AWS上运行分布式训练代码。1. AWS 配置新建实例。重点设置安全组。记录实例的内部ip与外部ip。原创 2020-08-05 22:31:54 · 268 阅读 · 0 评论 -
PyTorch Distributed Tutorials(5) Getting Started with Distributed RPC Framework
文章目录0. 前言1. Distributed Reinforcement Learning using RPC and RRef2. Distributed RNN using Distributed Autograd and Distributed Optimizer0. 前言官方教程,中文翻译目标:给出两个实例,介绍如果通过 torch.distributed.rpc 来实现分布式训练。DistributedDataParallel 不适用的情况强化学习中,模型本身小,但从环境中获取训原创 2020-08-04 22:21:29 · 498 阅读 · 0 评论 -
PyTorch Distributed Tutorials(4) Writing Distributed Applications with PyTorch
文章目录0. 前言1. Setup2. 点对点通信3. Collective Communication4. 分布式训练5. 进阶内容5.1. 通信后端5.2. 初始化方法0. 前言官方链接中文翻译本文目标:过一遍pytorch中的distributed相关API1. Setuptorch.distributed 与 torch.multiprocessing两者应该都提供了方法,可以令任意两个进程之间进行通信。前者支持不同的backend,因此支持不同机器上进程的通信。原创 2020-08-02 00:29:15 · 282 阅读 · 0 评论 -
PyTorch Distributed Tutorials(3) Getting Started with Distributed Data Parallel
文章目录0. 前言1. 建议在看这个文当前,先看看下面三个文档1.1. PyTorch Distributed Overview1.2. DistributedDataParallel API documents1.3. DistributedDataParallel notes2. DataParallel 和 DistributdDataParalle 对比3. 基本使用4. 其他4.1. 处理速度差异4.2. 保存与加载模型4.3. 通过DDP实现模型并行0. 前言官方教程主要内容:通过 D原创 2020-08-01 18:32:05 · 229 阅读 · 0 评论 -
PyTorch Distributed Tutorials(2) Single-Machine Model Parallel Best Practice
文章目录0. 前言1. 实现模型并行最直接的方式2. 已有模型实现模型并行3. 通过Pipelining加速0. 前言官方教程目标:模型并行的单机多卡教程。数据并行与模型并行的区别数据并行:每个GPU上都有完整的模型,但将输入数据分为若干份,每个GPU处理不同的输入数据。模型并行:每个GPU上都是模型的一部分,但都处理所有数据。1. 实现模型并行最直接的方式与实现单GPU的模型非常类似,backward与torch.optim等不需要额外编程,自动会处理。在定义模型的时候就原创 2020-07-31 10:09:27 · 199 阅读 · 0 评论 -
mmaction2 行为识别模型相关源码
文章目录0. 前言1. 模型创建过程详解2. 基本模型详解2.1. `BaseRecognizer` 源码详解2.2. `Recognizer2D` 源码详解2.3. `Recognizer3D` 源码详解3. TSN与TSM的实现3.1. TSN 的实现3.2. TSM 的实现4. I3D/R(2+1)D/Slow/SlowFast 的实现4.1. I3D的实现4.2. R(2+1)D的实现4.3. SlowFast的实现4.4. Slow 的实现0. 前言mmaction2 目前支持行为识别模型原创 2020-07-21 23:09:50 · 4753 阅读 · 5 评论 -
mmaction2 数据相关源码概览
文章目录0. 前言1. Dataset构建过程2. 数据预处理模块化实现3. 视频采样方式实现4. 数据增强方式实现5. DataLoader 的实现0. 前言github: open-mmlab/mmaction2从宏观角度记录一下与 mmaction 还是非常类似的,做了一定的优化,暂时不支持 ava。Dataset 类型包括了 RawframeDataset, VideoDataset, ActivityNetDataset 三个基本类型,前两者是行为识别数据集,最后一个是时序行为检测原创 2020-07-18 20:27:52 · 1904 阅读 · 1 评论 -
mmaction 数据相关源码阅读
文章目录0. 前言1. 数据集预处理1.1. 需要进行什么预处理1.2. 预处理的结果是什么2. 构建Dataset对象2.1. 构建过程概述2.2. 配置文件详解2.3. 帧提取策略2.4. 数据预处理与数据增强3. dataloader 构建0. 前言本文只分析行为识别数据集相关内容,不考虑其他数据集。概述支持的数据输入方式:视频/帧。提供两种方式处理视频:mmcv(其实也就是opencv)处理以及使用了cuda的decord。帧提取方式:TSN的分段提取帧,以及其他模型常用的连原创 2020-07-17 22:43:56 · 1510 阅读 · 1 评论 -
SlowFast 训练相关源码解析
文章目录0. 前言1. 训练流程2. 损失函数相关2.1. 输入数据的形式:2.2. 模型输出形式:2.3. 损失函数选择与计算3. 性能指标/logging/tensorboard 相关3.1. 性能指标(包括logging)3.3. tensorboard4. 多线程/分布式训练相关0. 前言目标:模型输出的形式。数据集标签是的形式。损失函数在哪里计算,有哪些选择。训练相关细节:hooksloggingstensorboardlr训练一般通过 tools/run_n原创 2020-07-10 09:37:23 · 5170 阅读 · 2 评论 -
ResNet/ResNet-I3D/ResNet-I3D-SlowFast 源码阅读
文章目录0. 前言1. ResNet50-2D2. ResNet-I3D3. ResNet-I3D-SlowFast0. 前言目标:更好的理解2D/I3D/SlowFast模型。为了实现MobileNet/ShuffleNet等2D轻量化网络的3D版本,要仔细研究、借鉴ResNet版的代码。源码来源 mmaction。没什么营养的流水账1. ResNet50-2D后面几个结构也都是基于最原始的ResNet结构。总体结构分为五个部分,STEM+4个stage。STEM结构:原创 2020-07-01 18:06:25 · 2861 阅读 · 3 评论 -
PyTorch Tutorials 摘要(3) What is torch.nn really?
文章目录前言源码前言教程链接概述:看完之后大概能明白 nn.Module/nn.Parameter/torch.optim/Dataset/DatasetLoader的作用。内容对我来说都太容易了……就浏览一遍源码,然后写点注释吧。源码# 下载/获取/展示 MNIST 数据from pathlib import Pathimport requestsDATA_PATH = Path("data")PATH = DATA_PATH / "mnist"PATH.mkdir(parent原创 2020-06-08 12:09:50 · 253 阅读 · 0 评论 -
PyTorch 源码(1) Dataset/Sampler/DataLoader
文章目录0. 前言1. Dataset 相关源码1.1. `Dataset`1.2. `IterableDataset`1.3. `TensorDataset`1.4. `ConcatDataset`1.5. `ChainDataset`1.6. `Subset`1.7. 方法 `random_split`2. Sampler 源码2.1. Sampler2.2. SequentialSampler2.3. RandomSampler2.4. SubsetRandomSampler2.5. Weighted原创 2020-06-06 17:57:29 · 1810 阅读 · 0 评论 -
PyTorch Tutorials 摘要(2) Learning Pytorch with Examples
文章目录0. 前言1. Tensors2. Autograd3. nn.mobule0. 前言官方链接主要内容:Tensors:使用 Numpy 实现神经网络训练的基本流程。Autograd:了解autograd的基本功能,介绍自定义含有BP操作的类/函数/层的定义方法。nn.module:介绍了 nn nn.Module optim 的基本使用。1. Tensors主要内容:实现Numpy实现神经网络训练基本流程。实现前向过程。手动计算每个参数的梯度,并用Numpy实原创 2020-06-06 17:44:15 · 180 阅读 · 0 评论 -
PyTorch Tutorials 摘要(1) Deep Learning with PyTorch: A 60 minute blitz
文章目录0. 前言1. What is PyTorch2. Autograd: Automatic differentiation3. Neural Networks4. Training a classifier0. 前言官网链接本文目标:总体了解PyTorch的Tensor以及神经网络相关内容。训练一个简单的图像分类网络。主要内容(对我来说的要点):What is PyTorch:PyTorch的基本功能以及Tensor相关的基本操作。in place操作,如x.add_(原创 2020-06-03 23:32:32 · 191 阅读 · 0 评论