pytorch
文章平均质量分 92
xys430381_1
这个作者很懒,什么都没留下…
展开
-
CNN模型复杂度(FLOPS、MAC)、参数量与运行速度,以及复杂度评估的pytorch库
CNN模型复杂度(FLOPS、MAC)、参数量与运行速度THOP: 估算PyTorch模型的FLOPs模块原创 2020-11-15 20:57:47 · 2475 阅读 · 0 评论 -
pytorch 预训练模型集合(网络定义与预训练模型下载)
参考文章:Pytorch 预训练模型下载和加载github国内加速克隆及下载fastgit.orghttps://doc.fastgit.org/cnpmjs.orghttps://github.com.cnpmjs.org/gitclone.comhttps://gitclone.com/giteehttps://gitee.com/mirrors克隆加速(就是把github的基本地址替换为国内镜像的基本地址,具体资源的路径保持不变)#原地址git clone https://原创 2020-09-06 21:20:04 · 1335 阅读 · 0 评论 -
pytorch学习率调整方法(warm up) ,label smooth、apex混合精度训练、梯度累加
详细理解pytorch的六种学习率pytorch使用warm up、consine learning rate、label smooth、apex混合精度训练、梯度累加warm up与其他学习率方法的结合(基于LambdaLR) # MultiStepLR without warm up scheduler = torch.optim.lr_scheduler.MultiStepLR(optimizer, milestones=args.milestones, gamma=0.1)原创 2020-07-20 17:29:32 · 7539 阅读 · 4 评论 -
pytorch中修改网络(增减层,修改层参数)
参考文章:pytorch中的pre-train函数模型引用及修改(增减网络层,修改某层参数等)(继)pytorch中的pretrain模型网络结构修改综合来讲,有三种方法一是加载完模型后直接修改(适用于修改参数)#调用模型model = models.resnet50(pretrained=True)#提取fc层中固定的参数fc_features = model.fc.in_features#修改类别为9model.fc = nn.Linear(fc_features, 9)这种情况原创 2020-06-30 11:42:22 · 18621 阅读 · 0 评论 -
PyTorch实现自由的数据读取(通过dataset自定义、DataLoader之collact_fn函数自定义)
PyTorch实现自由的数据读取torch.utils.data.dataloader参数collate_fn简析DataLoader完整的参数表如下:class torch.utils.data.DataLoader( dataset, batch_size=1, shuffle=False, sampler=None, batch_sampler=None, num_workers=0, collate_fn=<function de原创 2020-06-29 16:47:35 · 1483 阅读 · 0 评论 -
pytorch并行处理详解(多GPU,环境变量)
PyTorch默认使用从0开始的GPU,且默认只使用0号GPU。如果要使用其他编号的GPU或者使用多块GPU,则要设置。pytorch并行后,假设batchsize设置为64,表示每张并行使用的GPU都使用batchsize=64来计算(单张卡使用时,使用batchsize=64比较合适时,多张卡并行时,batchsize仍为64比较合适,而不是64*并行卡数)。DataParallel 会自动拆分数据,并将作业订单发送到多个GPU上的多个模型。 在每个模型完成它们的工作之后,DataPar..原创 2020-06-09 11:53:20 · 14382 阅读 · 4 评论 -
pytorch 如何finetune
局部微调有时候我们加载了训练模型后,只想调节最后的几层,其他层不训练。其实不训练也就意味着不进行梯度计算,PyTorch中提供的requires_grad使得对训练的控制变得非常简单。model = torchvision.models.resnet18(pretrained=True)for param in model.parameters(): param.requires_grad = False# 替换最后的全连接层, 改为训练100类# 新构造的模块的参数默认requires_原创 2020-05-24 23:22:03 · 1082 阅读 · 1 评论 -
pytorch 之 nn.moduleList 和Sequential
参考文献:Pytorch中nn.ModuleList 和 nn.Sequentialnn.moduleList 和Sequential由来、用法和实例 —— 写网络模型pytorch系列7 -----nn.Sequential讲解简介对于cnn前馈神经网络如果前馈一次写一个forward函数会有些麻烦,在此就有两种简化方式,ModuleList和Sequential。其中Seque...原创 2019-11-12 19:04:59 · 464 阅读 · 0 评论 -
pytorch动态图代表什么?
参考文献:PyTorch之三—动态图pytorch模型中间层特征的提取pytorch在fintune时将sequential中的层输出,以vgg为例原创 2019-11-12 18:49:17 · 670 阅读 · 0 评论 -
pytorch model.train与 model.eval
model.train() :启用 BatchNormalization 和 Dropoutmodel.eval() :不启用 BatchNormalization 和 Dropout踩坑:pytorch中eval模式下结果远差于train模式—其实是输入图像没有归一化...原创 2019-11-05 11:08:24 · 554 阅读 · 0 评论 -
pytorch 保存和加载模型
PyTorch 1.0 保存和加载模型Pytorch两种模型保存方式模型文件,有的用pth后缀,有的用pkl后缀,好像没有关系。pytoch官方预训练模型用的pth后缀。原创 2019-11-05 11:06:09 · 274 阅读 · 0 评论 -
pytorch数据操作---dataset,dataloader,transform
基本概述pytorch输入数据PipeLine一般遵循一个“三步走”的策略,一般pytorch 的数据加载到模型的操作顺序是这样的:① 创建一个 Dataset 对象。必须实现__len__()、getitem()这两个方法,这里面会用到transform对数据集进行扩充。② 创建一个 DataLoader 对象。它是对DataSet对象进行迭代的,一般不需要事先里面的其他方法了。③ 循环...原创 2019-11-03 20:41:22 · 10197 阅读 · 0 评论 -
Pytorch中,动态调整学习率、不同层设置不同学习率和固定某些层训练的方法
使用预训练模型进行finetune,需要设置不同的学习率,发现一片好文,先记下再慢慢学Pytorch中,动态调整学习率、不同层设置不同学习率和固定某些层训练的方法...原创 2019-11-03 18:31:34 · 853 阅读 · 0 评论 -
pytorch基础---cudnn.benchmark和cudnn.deterministic以及如何禁用cudnn
使用cudnn.benchmark和cudnn.deterministic在很多情况下我们都能看到代码里有这样一行:torch.backends.cudnn.benchmark = true而且大家都说这样可以增加程序的运行效率。那到底有没有这样的效果,或者什么情况下应该这样做呢?解决办法总的来说,大部分情况下,设置这个 flag 可以让内置的 cuDNN 的 auto-tuner 自...原创 2019-10-23 09:06:54 · 2870 阅读 · 0 评论 -
pytorch loss function (人脸损失函数/ 度量损失函数/回归问题的损失函数)总结
https://blog.csdn.net/zhangxb35/article/details/72464152原创 2019-01-15 11:08:08 · 4091 阅读 · 0 评论 -
pytorch torchvision.transforms.Normalize()中的mean和std参数---解惑
torchvision.transforms.Normalize()中的mean和std参数做什么用呢?疑问1:按照我的理解,归一化就是要把图片3个通道中的数据整理到[-1, 1]区间。x = (x - mean(x))/stddev(x)只要输入数据集x确定了,mean(x)和stddev(x)也就是确定的数值了,为什么Normalize()函数还需要输入mean和std的数值呢?疑问...原创 2019-01-03 22:11:46 · 45665 阅读 · 32 评论