Fork me on GitHub

随笔分类 -  Pytorch

摘要:lumo 是一个精简高效的库,简化了实验所需的所有组件的管理,并特别关注增强深度学习实践者的体验。 实验管理:: 为每次运行分配唯一路径,区分不同类型的文件并存储;通过 git 管理代码快照;记录实验中产生的一切信息,保障可回溯、可复现 参数管理:基于 fire 提供比 argparser 更便捷的 阅读全文
posted @ 2023-07-17 16:35 stardsd 阅读(59) 评论(0) 推荐(0) 编辑
摘要:PyTorch已经足够简单易用,但是简单易用不等于方便快捷。特别是做大量实验的时候,很多东西都会变得复杂,代码也会变得庞大,这时候就容易出错。针对这个问题,就有了PyTorch Lightning。它可以重构你的PyTorch代码,抽出复杂重复部分,让你专注于核心的构建,让你的实验更快速更便捷地开展 阅读全文
posted @ 2023-07-17 16:18 stardsd 阅读(367) 评论(0) 推荐(0) 编辑
摘要:Kornia 是一款基于 PyTorch 的可微分的计算机视觉库。 它由一组用于解决通用计算机视觉问题的操作模块和可微分模块组成。其核心使用 PyTorch 作为主要后端,以提高效率并利用反向模式自动微分来定义和计算复杂函数的梯度。 概览 受现有开源库的启发,Kornia可以由包含各种可以嵌入神经网 阅读全文
posted @ 2023-07-17 15:53 stardsd 阅读(280) 评论(0) 推荐(0) 编辑
摘要:一、 计算量常使用乘加计算数衡量,英文为multiply-accumulate operations或multiply-add operations,因此常缩写为MACs, MACC或MADD。由于乘加计算的底层是通过浮点运算实现的,因此还可使用浮点运算数来表示计算量。浮点计算数,英文为Float 阅读全文
posted @ 2023-06-12 10:07 stardsd 阅读(997) 评论(0) 推荐(0) 编辑
摘要:根据PyTorch文档¹,`t.contiguous()`返回一个包含与`t`张量相同数据的连续张量。如果`t`张量已经是连续的,这个函数返回`t`张量本身。 一个张量是连续的,如果张量中的相邻元素在内存中实际上是相邻的³。有些对张量的操作,例如`transpose()`,`permute()`,` 阅读全文
posted @ 2023-06-05 11:45 stardsd 阅读(279) 评论(0) 推荐(0) 编辑
摘要:一、简介 NVIDIA Collective Communications Library (NCCL) 是一个多 GPU 和多节点通信原语库,具有拓扑感知能力,可以轻松集成到应用程序中。 集体通信算法采用许多协同工作的处理器来聚合数据。 NCCL 不是成熟的并行编程框架; 相反,它是一个专注于加速 阅读全文
posted @ 2023-06-02 11:51 stardsd 阅读(861) 评论(0) 推荐(0) 编辑
摘要:Pytorch DDP分布式训练介绍 近期一直在用torch的分布式训练,本文调研了目前Pytorch的分布式并行训练常使用DDP模式(Distributed DataParallell ),从基本概念,初始化启动,以及第三方的分布式训练框架展开介绍。最后以一个Bert情感分类给出完整的代码例子:t 阅读全文
posted @ 2023-06-02 11:13 stardsd 阅读(767) 评论(0) 推荐(1) 编辑
摘要:一、rendezvous 简介: PyTorch中的rendezvous后端是一种服务,它帮助分布式训练作业中的进程相互发现并协商角色和等级。它还提供了一个屏障和一个一致的作业成员和状态视图。 rendezvous后端是作为torch.distributed.elastic.rendezvous.R 阅读全文
posted @ 2023-06-02 10:25 stardsd 阅读(640) 评论(0) 推荐(0) 编辑
摘要:TensorRT是一个用于高性能深度学习推理的SDK,它可以将已经训练好的网络转换为TensorRT引擎,从而提高推理速度和效率。TensorRT的作用有以下几点¹²: TensorRT可以对网络进行压缩、优化以及运行时部署,并且没有框架的开销。 TensorRT通过合并层、选择最优的卷积核、根据指 阅读全文
posted @ 2023-05-05 15:27 stardsd 阅读(425) 评论(0) 推荐(0) 编辑
摘要:# 导入必要的库 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader, Dataset # 定义超参数 epochs = 10 # 训练轮数 lr 阅读全文
posted @ 2023-04-13 15:56 stardsd 阅读(486) 评论(0) 推荐(0) 编辑
摘要:如果说到深度学习中训练数据的记录工具,最先想到应该是TensorBoard(或者TensorBoardX)。不过,相比较TensorBoard而言,Wandb更加的强大,主要体现在以下的几个方面: 复现模型:Wandb更有利于复现模型。这是因为Wandb不仅记录指标,还会记录超参数和代码版本。 自动 阅读全文
posted @ 2022-04-07 16:12 stardsd 阅读(3514) 评论(0) 推荐(0) 编辑
摘要:pytorch 0.4.1 docker地址: https://hub.docker.com/r/linkoffate/torchen https://hub.docker.com/r/airaria/pytorch0.4.1 直接上干货,CUDA9.0版本对应的pytorch是0.4.1,使用其他 阅读全文
posted @ 2021-12-01 11:04 stardsd 阅读(906) 评论(0) 推荐(0) 编辑
摘要:Pytorch图像预处理时,通常使用transforms.Normalize(mean, std)对图像按通道进行标准化,即减去均值,再除以方差。这样做可以加快模型的收敛速度。其中参数mean和std分别表示图像每个通道的均值和方差序列。 Imagenet数据集的均值和方差为:mean=(0.485 阅读全文
posted @ 2021-10-28 17:03 stardsd 阅读(5217) 评论(0) 推荐(0) 编辑
摘要:以下内容都是针对Pytorch 1.0-1.1介绍。很多文章都是从Dataset等对象自下往上进行介绍,但是对于初学者而言,其实这并不好理解,因为有的时候会不自觉地陷入到一些细枝末节中去,而不能把握重点,所以本文将会自上而下地对Pytorch数据读取方法进行介绍。 1|0自上而下理解三者关系 首先我 阅读全文
posted @ 2021-07-02 09:10 stardsd 阅读(648) 评论(0) 推荐(1) 编辑
摘要:Pytroch网络模型:修改参数值,修改参数名,添加参数层,删除参数层 修改参数值 方法1 dict的类型是collecitons.OrderedDict,是一个有序字典,直接将新参数名称和初始值作为键值对插入,然后保存即可。 #修改前 dict = torch.load('./ckpt_dir// 阅读全文
posted @ 2021-06-29 14:45 stardsd 阅读(8990) 评论(0) 推荐(0) 编辑
摘要:pytorch 打印模型层的名字的多个方式,以及对应显示,删除最后多个层的两种方式 def forward(self, x, last_cont=None): x = self.model(x) if self.use_dcl: mask = self.Convmask(x) mask = self 阅读全文
posted @ 2021-06-29 10:26 stardsd 阅读(3395) 评论(0) 推荐(1) 编辑
摘要:mobilenet 中的通道数为什么要使用 _make_divisible 函数确保为 8 的整数倍? 问题 今天阅读一段 PyTorch 版的 mobilenet 时,发现了下面这个函数: def _make_divisible(v, divisor, min_value=None): """ T 阅读全文
posted @ 2021-06-21 10:16 stardsd 阅读(906) 评论(0) 推荐(0) 编辑
摘要:model.eval()和with torch.no_grad()的区别在PyTorch中进行validation时,会使用model.eval()切换到测试模式,在该模式下, 主要用于通知dropout层和batchnorm层在train和val模式间切换在train模式下,dropout网络层会 阅读全文
posted @ 2021-06-18 14:33 stardsd 阅读(5784) 评论(0) 推荐(2) 编辑
摘要:作者:忆臻 (哈工大SCIR实验室在读博士生)魏福煊 哈工大英才实验班本科生谢天宝 哈工大英才实验班本科生 一、前言 在我们要用pytorch构建自己的深度学习模型的时候,基本上都是下面这个流程步骤,写在这里让一些新手童鞋学习的时候有一个大局感觉,无论是从自己写,还是阅读他人代码,按照这个步骤思想( 阅读全文
posted @ 2021-06-18 10:05 stardsd 阅读(1959) 评论(0) 推荐(3) 编辑
摘要:Pytorch:模型的保存与加载 torch.save()、torch.load()、torch.nn.Module.load_state_dict() Pytorch 保存和加载模型后缀:.pt 和.pth 1 torch.save() [source]保存一个序列化(serialized)的目标 阅读全文
posted @ 2021-06-15 10:50 stardsd 阅读(10284) 评论(0) 推荐(0) 编辑