pytorch
Lavi_qq_2910138025
这个作者很懒,什么都没留下…
展开
-
Pytorch模型的保存与加载
前言在使用Pytorch训练模型的时候,经常会有在GPU上保存模型然后再CPU上运行的需求,在实验的过程中发现在多GPU上训练的Pytorch模型是不能在CPU上直接运行的,几次遇到了这种问题,这里研究和记录一下。模型的保存与加载例如我们创建了一个模型:model = MyVggNet()如果使用多GPU训练,我们需要使用这行代码:model = nn.DataPa...原创 2018-08-30 16:58:20 · 16425 阅读 · 5 评论 -
Pytorch多GPU训练以及怎样在训练的时候做validation
Pytorch多GPU训练以及怎样在训练的时候做validation参考:MobileFaceNet_Pytorch中的train.py文件原创 2018-12-14 13:24:16 · 2483 阅读 · 0 评论 -
mxnet数据格式转换为tensorflow,pytorch数据
数据格式转换:mxnet的idx,rec格式数据生成参考:insightfacemxnet的idx,rec格式数据转换成tfrecord,参考:MobileFaceNet_TFmxnet的idx,rec格式数据转换成pytorch容易读取的数据参考:InsightFace_PytorchMobileFaceNet各种实现方式:mxnet:insightfacetensorflow:M...原创 2018-12-14 09:48:49 · 2403 阅读 · 5 评论 -
pytorch之gather()方法
首先,先给出torch.gather函数的函数定义:torch.gather(input, dim, index, out=None) → Tensor官方给出的解释是这样的: 沿给定轴dim,将输入索引张量index指定位置的值进行聚合。对一个3维张量,输出可以定义为:out[i][j][k] = tensor[index[i][j][k]][j][k] # dim=0out[i][j...转载 2018-11-30 21:40:43 · 13485 阅读 · 1 评论 -
pytorch之max()函数
形式: torch.max(input) → Tensor返回输入tensor中所有元素的最大值:a = torch.randn(1, 3)>>0.4729 -0.2266 -0.2085torch.max(a) #也可以写成a.max()>>0.4729形式: torch.max(input, dim, keepdim=False, out=None) -&...转载 2018-11-30 21:30:47 · 72574 阅读 · 5 评论 -
pytorch在不同的层使用不同的学习率
有时候我们希望某些层的学习率与整个网络有些差别,这里我简单介绍一下在pytorch里如何设置:首先我们定义一个网络:class net(nn.Module): def __init__(self): super(net, self).__init__() self.conv1 = nn.Conv2d(3, 64, 1) self.conv...转载 2018-11-30 13:27:10 · 2703 阅读 · 1 评论 -
pytorch设置学习率衰减(learning rate decay)
很多时候我们要对学习率(learning rate)进行衰减,下面的代码示范了如何每30个epoch按10%的速率衰减:def adjust_learning_rate(optimizer, epoch): """Sets the learning rate to the initial LR decayed by 10 every 30 epochs""" lr = args转载 2018-11-30 13:24:34 · 8656 阅读 · 0 评论 -
pytorch层定义nn.Module和nn.functional
nn.Module和nn.functional1. nn.functional函数基本使用2. 搭配使用nn.Module和nn.functional3.nn.functional函数构造nn.Module类大部分nn中的层class都有nn.function对应,其区别是:nn.Module实现的layer是由class Layer(nn.Module)定义的特殊类,会自动提取可学习参数n...转载 2018-11-26 20:58:59 · 1913 阅读 · 1 评论 -
pytorch损失函数和优化器
损失函数和优化器1 损失函数2 优化器1 损失函数损失函数可以当作是nn的某一个特殊层,也是nn.Module的子类。但是实际中。然而在实际使用中通常将这些loss function专门提取出来,和主模型互相独立。score=t.randn(3,2) //batch_size=3,类别是2.label=t.Tensor([1,0,1].long()) ...转载 2018-11-26 20:53:58 · 3028 阅读 · 1 评论 -
Pytorch自定义网络结构+自定义数据加载+自定义Loss 全过程代码示例
1、限定使用GPU的序号import osos.environ['CUDA_VISIBLE_DEVICES'] = '3'os.system('echo $CUDA_VISIBLE_DEVICES')2、导入相关头文件import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.utils...转载 2018-11-26 17:23:27 · 2216 阅读 · 1 评论 -
Pytorch入门:数据的加载与处理
0. 写在前面在深度学习的问题中处理数据都会占据比较大的时间,只有把数据处理好了才有可能对模型进行训练、测试等后续工作。PyTorch提供了很多用于让数据加载变得更加方便的工具,接下来我们就来学习一下怎么样处理那些PyTorch没有提供直接接口的数据。在学习这个之前,首先要保证电脑上已经安装了下面这两样东西:scikit-image:用于图像输入输出和转换pandas:用于更好的处理c...转载 2018-11-13 22:54:32 · 3245 阅读 · 0 评论 -
pytorch学习率调整
参考MobileFaceNet_Pytorch中的train.py文件参考InsightFace_Pytorch 中的train.py,Learner.py文件原创 2018-12-14 13:30:58 · 1086 阅读 · 0 评论