深度学习框架
文章平均质量分 50
对于框架的应用以及报错的总结
GZKPeng
深度学习有四境:调参炼丹境,理论创新陆地神仙境,张量运算剑仙境,无所不通无上剑仙境。
人若无名,便可勤奋练剑
展开
-
YOLOv5:Profile、Timeout、WorkingDirectory上下文管理器 以及torch.cuda.synchronize()
Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。Python OS模块是负责程序与操作系统的交互,提供了访问操作系统底层的接口和非常丰富的方法用来处理文件和目录。Python contextlib模块提供了一种方便的方式来管理上下文管理器(context manager),它可以帮助我们简化代码,提高可读性和可维护性。原创 2023-04-12 10:42:37 · 935 阅读 · 0 评论 -
YOLOV5在detect过程中绘制目标提取框为什么倒置进行绘制
今天师弟问我个问题,在YOLOV5官码detect.py文件中第104行出现如下将目标检测结果绘制在原图与记录在文件中的逻辑:师弟的问题是,这里遍历所有目标的时候,为什么要reversed进行倒置,正着取不行吗?我的答案:可以正着绘制,但是不好。之所以reversed反过来绘制结果,是因为NMS的时候会先根据置信度从高到低做运算,所以输出的时候从高到低,那么绘制的时候从低概率开始绘制,那么就算有重合,高概率覆盖低概率,看起来直观...原创 2021-07-22 15:26:45 · 681 阅读 · 0 评论 -
pytorch中tensor与numpy、cv2、pillow转换
tensor直接保存成图片文件import torchfrom torchvision import utils as vutils def save_tensor2image(input_tensor: torch.Tensor, filename): """ 将tensor保存为图片 :param input_tensor: 要保存的tensor :param filename: 保存的文件名 """ vutils.save_image(inp原创 2021-06-02 16:26:04 · 6737 阅读 · 0 评论 -
【转】Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERRO
Tensorflow和Keras的关系在正式进入这个问题之前,我们先来了解一下tensorflow和keras之间的关系,因为后面会用到这个地方的知识。首先,tensorflow和keras都是深度学习框架,当你遇到上面这个问题的时候表明你至少用过两者之一。其次,tensorflow相较于keras更偏向于底层,而keras封装性更好,类似于接口。keras是在tensorflow的基础上建立起来的,可以把keras看做tensorflow或者theano(已经停更的深度学习框架)的接口两者的直观原创 2021-06-01 09:34:46 · 119 阅读 · 0 评论 -
【已解决】onnx 12 中没有hardswish opt的问题
pytorch转onnx的过程中,模型的卷积层激活函数用的是hardswish,转换时报错:RuntimeError: Exporting the operator hardswish to ONNX opset version 12 is not supported. Please open a bug to request ONNX export support for the missing operator.提示我们去ONNX上反馈,显然等他们来写已经来不及了,还是自己动手吧。因为模型定义的原创 2021-05-12 16:07:40 · 2953 阅读 · 3 评论 -
【推荐】很好用的小工具pynvml
pynvml是用于英伟达GPU管理和监视功能的Python接口。可以用它来开发一些pytorch或者tensorflow 监控工具。具体的可以看官网:https://pythonhosted.org/nvidia-ml-py/后续小工具写好后也会发出来。可以通过源码也可以通pip安装。pip安装过程:pip install nvidia-ml-py这时候一般就可以用了,如果出现一下报错:Traceback (most recent call last): File "<stdin&原创 2020-12-24 10:38:22 · 1321 阅读 · 5 评论 -
pytorch加载模型报错KeyError: “filename ‘storages‘ not found“
应用pytorch加载模型报错:Traceback (most recent call last): File "/mnt/sdc/OCR/dev/ocr/recognize/crnn_recognizer.py", line 110, in __init__ self.model.load_state_dict({k.replace('module.', ''): v for k, v in torch.load(model_path).items()}) File "/home/GZK原创 2020-12-15 15:52:04 · 7971 阅读 · 4 评论 -
makefile环境不匹配导致的编译错误g++: error: unrecognized command line option ‘-fno-plt
makefile:CXXFLAGS = -I include -std=c++11 -O3 $(shell python3-config --cflags)LDFLAGS = $(shell python3-config --ldflags)DEPS = $(shell find include -xtype f)CXX_SOURCES = pse.cppLIB_SO = pse.so$(LIB_SO): $(CXX_SOURCES) $(DEPS) $(CXX) -o $@ $(CX原创 2020-09-01 16:53:56 · 5097 阅读 · 0 评论 -
pytorch 加载模型参数报错:AttributeError: 'str' object has no attribute 'items'
同时用keras+tensorflow和pytorch真的是容易走火入魔,写着写着总能漏点啥,现在想加载训练好的参数:model = my_model()model.load_state_dict(the_path)但是报错如下: File "C:\Python\Python35\site-packages\torch\nn\modules\module.py", line 476,...原创 2019-12-21 20:29:34 · 8139 阅读 · 0 评论 -
讨论一下深度学习的境界,欢迎大家在评论中留言交流
学习深度学习也有三四年的时间了,想回顾回顾历程,给深度学习境界划分一下,本人不成熟意见如下:深度学习有四境:调参炼丹境,理论创新陆地神仙境,张量运算剑仙境,无所不通无上剑仙境。欢迎各位大佬指正和讨论。...原创 2019-12-04 11:36:42 · 291 阅读 · 1 评论 -
gym注册customer env 报错:Attempted to register malformed environment ID:My_env
跟随着gym的教程,准备把自己写的环境注册在gym的envs上面,过程如下:第⼀步,将我们⾃⼰的环境⽂件(笔者创建的⽂件名为 Myenv.py,类名为ReEnv )拷⻉到你的gym安装⽬录/gym/envs/classic_control⽂件夹中(拷⻉在此⽂件夹中是因为要使⽤rendering模块。当然本⽅法并不是唯⼀的,也可以采⽤其他办法。)。第⼆步,打开该⽂件夹(第⼀步中的⽂件夹)...原创 2019-03-10 10:38:38 · 4785 阅读 · 3 评论 -
Keras预训练模型下载后保存路径
ResNet50等keras预训练权重文件的下载:https://github.com/fchollet/deep-learning-models/releases/本地存放目录: Linux下是放在“~/.keras/models/”中 Win下则放在Python的“settings/.keras/models/”中 在anaconda on win中是:D:\Anacond...原创 2018-08-11 20:21:12 · 8384 阅读 · 3 评论 -
tqdm介绍及常用方法
Tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator)。 使用pip就可以安装。使用方法一: tqdmtqdm(list)方法可以传入任意一种list,比如数组from tqdm import tqdmfor i in tqdm(range(1000)): #do ...原创 2018-08-16 20:17:39 · 273053 阅读 · 23 评论 -
Pytorch画模型图
pytorch中好像没有个api让我们直观的看到模型的样子。但是有网友提供了一段代码,可以把模型画出来,对我来说简直就是如有神助啊。话不多说,上代码吧。import torchfrom torch.autograd import Variableimport torch.nn as nnfrom graphviz import Digraphclass CNN(nn.Module)...转载 2018-08-21 15:56:33 · 4252 阅读 · 0 评论 -
Pytorch报错:Assertionerror nn criterions don't compute the gradient w.r.t. targets
引发错误目前看来有两种情况: 1、应该是在损失函数中,模型输出为首个实参,ground_truth为第二个实参,写反了会出现这种情况loss = criterion(output,label) #正确loss = criterion(label,output) #错误2、第二种情况,ground_truth需要与模型的某些参数运算后得到模型需要的标签,然后引发错误:#错误写...原创 2018-08-25 15:47:09 · 1443 阅读 · 0 评论 -
Pytorch 0.3 模型与重新加载持久化后同参数模型,最终表现不一致问题
最近发现了一个问题,训练好的模型,跑测试集表现很好,于是将模型参数持久化保存下来(注意,并非全部模型)。重新加载模型参数,跑测试集,发现结果差异很大,而且重新加载的模型表现非常差。 但是输出两次的模型的参数,比对发现一模一样。 持久化代码:def save_network(network, epoch_label): save_filename = 'net_%s.pth'% ...原创 2018-09-02 20:31:42 · 2820 阅读 · 0 评论 -
pip命令报错:AttributError:module 'configparser' has no attribute 'Configparser' ,can not import theano
问题如上,最直接的表现是打不开Spyder IDE尝试在python 中import theano报错ImportError: cannot import name ‘configparser’原因:出现这种问题,通常是环境中出现了一个包的两个版本,最直接原因就是,pip install 了一个包,conda install 了一个包。解决办法:这时候pip不能用了,所以先用con...原创 2018-10-15 16:09:54 · 9242 阅读 · 10 评论 -
tensorflow-cifar10示例报错
1:ArgumentError: argument --train_dir: conflicting option string: --train_dir解决方法,从新开一个console2:ArgumentError: argument --batch_size: conflicting option string: --batch_size因为Cifar10.py 有一段代码:tf.app.f...原创 2018-03-13 21:14:49 · 1252 阅读 · 0 评论 -
关于重装tensorflow后spyder报错解决办法
tensorflow原先装的是cpu版本的,为了加速运算,把原先cpu版的tensorflow卸载,利用conda从新装了gpu版的tensorflow,安装成功后打开spyder,出现问题:原因:tensorflow-gpu会自动检查他依赖的包是否达到他的要求,所以会更新或者装一些包,就包括numpy,mkl是numpy底层依赖包,所以也被更新了。pip自动安装了numpy1.1.4,原先由于c...原创 2018-03-27 11:22:38 · 1991 阅读 · 0 评论 -
关于tensorflow-gpu的程序用spyder运行后,控制台报错: Kernel died, restarting的解决方法
问题:安装tensorflow-gpu以及cuda和cudnn以后,运行原先cpu版时可行的代码,spyder的控制台报错Kernel died, restarting原因:我尝试通过 python xxx.py的方式运行代码文件,发现报错如下:这里圈起来的这句话意思就是我的cudnn是7.1.02版本的,即大版本号是7.1,而cuda源码是用7.0.03编译的,即大版本号是...原创 2019-05-07 09:05:42 · 2681 阅读 · 0 评论 -
更新tensorflow后应用tensorboard报错
更新tensorflow后,出现tensorboard 不可用情况(tensorflow-cpu 1.4 ->tensorflow-gpu 1.7)尝试了更新tensorboard 仍然不可用,事故情况:运行tensorboard.exe报错并且闪退,在控制台运行tensorboard命令,报错如下:多方查证,在国内网站没找到有前车之鉴,于是发布问题到tensorflow ...原创 2019-05-07 09:05:24 · 1817 阅读 · 0 评论 -
Keras 报错:StopIterator
报错:Traceback (most recent call last): File "E:\Anaconda\lib\site-packages\keras\utils\data_utils.py", line 555, in get inputs = self.queue.get(block=True).get() File "E:\Anaconda\lib\multip...原创 2018-04-20 11:26:58 · 4519 阅读 · 18 评论 -
pytorch 0.4 改动: cannot resize variables that require grad
在pytorch0.3中做过一些关于张量求梯度的工作,目的是扩展一下pytorch的module,今天升级pytorch0.4,发现原先的代码不可用,报错如下: RuntimeError: cannot resize variables that require grad在pytorch 0.3中,允许对求梯度的变量改变size,改变size后,再次求偏导,梯度置0。实际上这是一个逻辑上的b...原创 2018-06-13 18:43:36 · 4242 阅读 · 3 评论 -
pytorch 0.4错误总结
0.4.0 发布说明错误修复:修复多进程下的内存泄漏问题 PR #5585 使用多线程版本 MKL 替代顺序版 MKL ,在 CPU 上带来10%的速度提升 PR #6416 重新添加 Compute Capability 5.0 显卡的支持 新功能:在编译中加入 MAGMA 添加 CUDA 9.1 build 提供 Wheels 包 支持新的cpp拓展 PR #5548 ...原创 2018-06-26 13:34:32 · 8598 阅读 · 2 评论 -
Pytorch的Dataloader报错:TypeError: batch must contain tensors, numbers, dicts or lists
具体报错: TypeError: batch must contain tensors, numbers, dicts or lists; found dataloader=torch.utils.data.DataLoader(dataset,batch_size=1,shuffle=True)表面上看这个代码没有问题,实际上问题出在了dataloader机制的要求上,dataload...原创 2018-07-17 12:05:21 · 18243 阅读 · 4 评论 -
pytorch数据类型报错解决方案:
pytorch报错: RuntimeError: Expected object of type Variable[torch.LongTensor] but found type Variable[torch.cuda.ByteTensor] for argument #1 ‘argument1’解决方法:pytorch框架在存储labels时,采用LongTensor来存储,所以在一...原创 2018-07-20 14:54:51 · 2405 阅读 · 0 评论