自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 pytorch中自建数据集dataset的书写方式以及读取方式

from PIL import Imageimport torchimport torch.nn as nnfrom torch.autograd import Variablefrom torch.utils.data import Dataset,DataLoaderimport numpy as npfrom torchvision import transformimport cv2import osClass TorchDataSet(Dataset): def __init

2020-09-13 17:00:28 466

原创 docker容器里输入python: command not find

在docker 容器里已经安装好了python包等文件,但是在命令行输入python时出现的是command not find,这是因为没有将包里的python与用户认识的python 建立起来联系,只需要建立软连接即可:ln -s /opt/conda/bin/python3.6 /usr/bin/python需要注意的是前面的路径就是真实docker中的python的路径,后面的写法是统一的...

2020-09-01 10:45:13 3514

原创 linux查看系统中文件的内存占用以及具体某个文件夹下内存占用

1.linux查看系统文件内存占用df -hl2.Linux查看某个具体文件夹下文件的内存占用du -sh *

2020-08-15 15:04:09 2270

原创 需要在命令行输入参数运行的代码如何在pycharm中运行

#1.有些代码需要在命令行输入参数来运行,如下:python train.py -net resnet50之前都是在命令行直接输入进行训练,但是这样的出错很难定位错误,命令行调试很不容易。其实在pycharm里运行最简单的方法是直接找到arg参数哪里,对net参数进行定义即可,但是本次我们net里面没有发现default='xx,最简单的方法就是直接加入default='resnet50即可,没有default选项我们就加一个default选项,就是这么简单暴力。...

2020-08-12 09:33:40 2423

原创 修改ResNet官方pytorch实现版本的输出种类,并使用其ImageNet的预训练模型

1.前要题主在使用ResNet的pytorch版本时,首先用了第三方实现版,发现其运行时GPU占用率特别高,这是不正常的,最后果断想到使用torchversion中的官方实现版,发现其GPU占用率果然比第三方优化很多,batch可以提高很多。但是官方实现版是1000类的输出,我们需要自己定义的输出类型,比如17。这样的话,就没办法加载预训练模型,所以我们想到以下的解决办法,可以成功实现预训练模型的加载。2实现方法import torchimport torch.nn as nnfrom torch

2020-05-30 23:51:25 950

原创 TypeError: Caught TypeError in DataLoader worker process 0和empty range for randrange() (0,-15, -15)

1.出现了两个错误1. TypeError: Caught TypeError in DataLoader worker process 02. empty range for randrange() (0,-15, -15)一开始按照网络上的说法修改wokers数量甚至取消,但是没用; 后来发现自己的数据大小是156,但是transfrom的时候随机裁剪尺寸为65,难怪有问题,更改数据增强时的裁剪尺寸即可。在强调一点,之前在网上搜bug,我都是搜第一个出现的问题基本就能解决,但是今天的经验告诉我,

2020-05-26 23:57:02 2116

原创 pytorch中加载自建数据集,数据集组织形式如Imagenet,每一个类一个文件夹

1.在使用pytorch时,对于标准数据集,那就使用其torchversion中的数据集,简单方便。2.对于自有的数据集,而且组织形式和ImageNet的组织形式相同,即具体的组织形式如下,每个类都有一个单独的文件夹。在这种数据类型下,根本不需要自建dataloader函数什么的,最简单粗暴的方法就是使用torchvision.datasets.ImageFolder,看该函数的说明文档,说了该函数是一个通用的加载器,对于所有这种类型的数据都适用,具体使用方法如下import torchimport

2020-05-26 23:38:24 1127

原创 一行代码查看torch的版本

在输入torch之后import torch采用一行代码来查看torch的版本print(torch.__version__)

2020-05-25 18:04:30 9115

原创 一行代码在torch中安装tensorboardX

在torch1.4之后,其是官方封装支持了tensorboardX的,所以在这些版本之后,直接一行代码就能安装这个包:pip install tensorboardX

2020-05-25 17:58:27 542

原创 一行代码利用清华源安装torch

使用一行代码就能快速安装清华源的torch,并不需要像其他网上推荐的更改tree什么的,一行代码,就是简单粗暴。python3 -m pip install --upgrade torch torchvision -i https://pypi.tuna.tsinghua.edu.cn/simple

2020-05-25 17:51:39 878

原创 ResNeXt的阅读笔记

1.文章动机Inception系列的网络已经证明了使用多支网络的优势,但是其每一个支路的拓扑结构不同,并且每个支路的卷积核的数目,大小等等的超参数都是根据数据集而定的,很容易出现超参数过调使得网络泛化性能不好的问题。ResNeXt同时结合了Inception的多支的思路和VGG提倡的统一形状的bottleneck简单堆叠的思想。这两者的同时使用即使用了mutli-branch来提高精度又减少了超参数提高模型泛化性。而采用这种完全一致的拓扑结构使得模型更容易aggregated。2.原理图及其方法直观

2020-05-11 23:09:10 371

原创 ResNest:Split-Attention Networks

1.文章动机针对识别的网络结构自ResNet以来已经发生了很多改进版本,这些网络的在精度和效率上都得到了提升,但是这些网络的设计初衷都是为分类网络,对于下游应用如检测,分割并不是十分友好,所以这些网络目前基本还是以ResNet作为架构,并且做一些特定的优化如PPM(金字塔池化)等等,因此本文考虑设计一种基于ResNet的通用改进网络,无论是上游还是下游任务均有很大提升。并且之前的研究表明,跨通道...

2020-04-29 19:43:15 1087

原创 arxiv和github无法登录的解决办法

使用家里的宽带,发现GitHub和arxiv都无法登录,使用了科学上网也不行(油管可登录),数次折腾无果,后来将网络切换至自己的移动热点,完美解决

2020-03-11 19:10:20 1441 1

原创 Linux下如何查看硬盘是固态硬盘SSD还是机械硬盘HDD

在用小模型训练神经网络时出现了显卡长时间处于功率为0的状态,后来发现问题的原因是数据IO的问题,数据传输的速度跟不上计算速度,因此使用固态硬盘问题将会得到很大的解决,而各种百度,google发现并没有很好的直接的方法,经过探索,直接一行代码就能解决。lsblk -d -o,rota对于其返回值,看rota值来判断,如果rota为1,则意味旋转,则为机械盘,若rota为0则意味着发该盘为固态...

2020-01-09 15:20:12 7424 1

原创 在linux下如何查看某个文件夹下各个文件所占内存的大小

1.先cd到要查看的的目录下2.du -hl即可以查看该目录下所有文件夹所占空间的大小

2020-01-02 10:25:22 6132

原创 docker 容器离线安装所需包文件

已经建立好的镜像文件,并且已经启动容器,但是发现对于运行的代码少了几个包,最直接暴力的办法是重新建镜像,但是这样太麻烦了,并且费时费力。简单的方法是,下载好离线的包的.whl文件,下载资源的地址是,python官方第三方库的地址添加链接描述,搜索要下载包的名称即可!(这里可以搜出一堆包,并且有各种格式要求什么的,例如Linux下貌似只能用.whl文件,所以不能用.tar.gz结尾的文件,题主中午...

2019-12-10 16:02:32 736

原创 export PATHONPATH的用法

在python解释器中,所有的import的模块都将会从PYTHONPATH中去查找,所以要我们自己建的模块有用,那就把我们的整个工程添加到python解释器的路径中!1.查看在那些路径中寻找模块import sysprint(sys.path)2.添加环境变量的两种方法(1)在命令行里输入export PYTHONPATH=$PYTHONPATH:"*****"但是该方法在窗口关闭后...

2019-12-09 22:24:47 5456 1

原创 列表或者元组前面加*的含义及其用法,以及if,,,else的别样用法

题主遇到了一个困扰好久的问题,就是在元组或者列表前面加*,始终想不通,昨晚在师兄的帮助下终于解决!还是要多和人沟通呀!!!!问题如下:clever_nums=clever_nums[0] if len(clever_nums) == 1 else (*clever_nums, )前提条件是clever_nums是一个列表*的意思就是把元组或者列表中的所有元素都弹出来,在转换个形式,比如,上...

2019-11-27 10:27:59 1292

原创 pthon中assert的用法

简单的/一句话总结就是,assert后面的那个语句为真,程序继续,相反,若为假,则报错asset os.path.isdir('checkpoint'), "Error:no checkpoint directory found"该程序的含义就是如果checkpoint是个目录则程序继续,如果不是目录,则程序报错“Error: no checkpoint directory found”...

2019-11-27 09:59:17 1000 1

原创 python中item的用法

python 中Item的用法python中item和for…in…是类似的,即实现遍历,所不同的是item是遍历字典用的。用法如下:person={'name':'lizhong','age':'26','city':'BeiJing','blog':'www.jb51.net'}for x in person.items(): print(x=",x) ...

2019-11-20 14:57:27 21024 2

原创 torch.max()的使用方法

类似的,torch.max(a, 0)意思是指对tensor a而言取其列方向的最大值,结果为行(也就是0所示的维度)

2019-11-20 14:39:35 2125

原创 如何离线处理cifar10,cifar100的数据集

现在主流的pytorch代码处理数据集时很多都是在线从torchvison的库中直接去下载,但是鉴于实验室设备不能联网,就只能使用下载好的数据集,而就在题主下载好之后,按要求解压的指定的目录后,并且将pytorch中的Download改为False之后,出现了错误:Dataset not found or corrupted. You can use download = True to down...

2019-11-12 09:21:31 990

原创 如何在pytorch代码里指定所使用的GPU是具体哪一块

目前实验室所使用的环境是服务器的环境,所以登进某个IP后会发现有多张卡,可是我们自己智能使用某一块具体的卡,如何指定卡呢?方法是在所使用的代码前面加上如下两行代码:import os**os.environ[“CUDA_VISIBLE_DEVICES”] = “gpu的物理id”()**千万要注意的是方括号里的字母不要拼错,拼错了代码是没用的,但是也不会报错!!!!!!比如题主之前就把VISI...

2019-11-12 09:05:56 1530

原创 RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED解决

建了一个cuda8,torch0.4,python2.7的镜像,发现的2080Ti上出现了上述的问题,最终找到的原因是2080Ti仅仅适配cuda 10

2019-11-10 17:21:38 401 1

原创 RuntimeError: DataLoader worker (pid 28449) is killed by signal: Killed.

可能的原因是因为内存不够用了,解决的方案有为减少number workers即可

2019-10-26 16:05:44 1643

原创 在Imagenet数据集上学习到的一些训练的trick

1.不同batchsize的大小对初始学习率设置的技巧事实是这样的,和凸优化理论是类似的,如果深度学习中batchsize越大,则GPU在处理每一幅图的时间就会减少,那么每一幅图就会处理的相对粗糙。在相同的epoch下,小batchsize的网络一般会优于大的batchsize的网络。但是大的batchsize有自己的优势所在,大的batchhsize可以减少数据本身的噪声,因此可以用大的学习...

2019-10-19 21:25:12 1322

原创 linux常用指令的记录

1.删除指令rm删除文件夹指令一般为:rm -rf “文件夹所在路劲”2.复制指令cp在同一台服务器上,将某个位置的文件夹下的所有文件copy到另一个文件夹下(如原本其是在机械硬盘上,我们想将其copy到固态硬盘上)cp -r 源目录 目标目录3.查看硬盘的大小 df -lh4.文件传输指令 scp将源台服务器上的文件夹传输到目标服务器上使用scp指令形式: scp 源文件所在目...

2019-10-09 21:59:23 71

原创 tar命令的使用心得

tar是Linux下的的打包指令使用方法为打包指令时,我们首先要cd 到要打包的文件夹的目录,然后使用tar -cvf example.tar .当使用解包软件时,同样cd到要解包的位置,然后使用 tar -xvf example.tar .,然后就解压到当前文件夹啦...

2019-09-27 18:06:24 290

原创 几个常用制表符的用法

\t水平制表符,水平方向向右空出一个TAB键\n回车及换行\r回车

2019-09-18 10:54:13 7750

原创 在Linux下安装Anconda及其对其对虚拟运行环境进行迁移

下载好Anaconda3-5.2.0-Linux-x86_64.sh使用指令 bash Anaconda3-5.2.0-Linux-x86_64.sh 进行安装,在安装过程中会出现一系列的选项,这里面包含了环境变量等等,一路选yes就好安装完成之后,终端输入conda list来测试Anconda是否已经安装成功(理论上我们一路输入了环境变量应该没问题了),但是在我们这次的安装过程中就出现了...

2019-09-12 16:15:37 928

原创 pytorch中调整学习率: torch.optim.lr_scheduler

class torch.optim.lr_scheduler.StepLR(optimizer,step_size,gamma=0.1,last_epoch=-1)设置每个参数组的学习率为lr *\lambda ^{n}, n=\frac{epoch}{step_size} ,当last_epoch=-1时,令lr=lr参数: optimizer(Optimizer对象...

2019-09-09 22:44:32 1162

原创 torchvision.datasets.ImageFolder的用法

torchvision.datasets.ImageFolder是pytorch中通用的数据加载器,其加载的数据形式是数据形式如图所示,并且其会把文件夹自动的转化为0,1,2…等类别号,方便计算梯度,我妈自己不用管。...

2019-09-07 22:23:32 8000 4

原创 关于深度学习中迭代次数iter和epoch等的关系

1.在深度学习的训练中,epoch指的是所有的数据遍历了几次,而iter指的是整个batchsize输入到网络多少次,如果非得说关系,那(iter*batchsize)/sum_photos=epoch

2019-09-05 22:42:02 20970 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除