深度学习
文章平均质量分 63
深度学习实战学习全记录
别出BUG求求了
这个作者很懒,什么都没留下…
展开
-
ValueError: (‘Unrecognized keyword arguments:‘, dict_keys([‘ragged‘]))的问题 报错解决
解决ValueError: (‘Unrecognized keyword arguments:’, dict_keys([‘ragged’]))这个是因为老的k.Input不支持ragged参数,原创 2023-10-07 16:04:51 · 1034 阅读 · 0 评论 -
yolov3-tiny原理解析及代码分析
从去年十一月份开始学习yolo神经网络用于目标识别的硬件实现,到现在已经六个月了。一个硬件工程师,C/C++基础都差劲的很,对照着darknet作者的源码和网上东拼西凑的原理讲解,一点一点地摸索。刚开始进度很慢,每天都感觉学习不了几行代码,到后来慢慢的入了门,每周都有不菲的收获和重大的进展。总结一下自己这大半年的学习,记录一下心路历程,也为躬耕于此的有缘人提供哪怕一点点的帮助吧。原创 2023-08-01 19:06:31 · 873 阅读 · 0 评论 -
tensorflow-gpu无法调用GPU; Cannot dlopen some GPU libraries. Could not load dynamic library ‘libcusolver
如果是2.0以上的tensorflow,按下面列表安装(2023年5月更新, 现在TF2.X和CUDA版本的兼容性越来越好了,不同的TF2.X版本可以匹配多个CUDA版本,下表所示是本人验证过的,不是唯一匹配方案)出现以下信息说明安装成功,由于安装的cuDNN版本是8.5.0,所以MAJOR、MINOR、PATCHLEVEL依次是8、5、0。说明只安装了CUDA,并未安装CUDA所对应的libcudnn甚至是CUDNN。去官网找到对应的libcudnn版本。我所对应的版本如图所示。原创 2023-05-11 16:41:06 · 6321 阅读 · 1 评论 -
解决yolov3编译中出现的问题:darknet make include/darknet.h:16:23:、CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT
设置完darknet中 Makefile中的GPU = 1CUDNN = 1后执行make编译报错:include/darknet.h:16:23: 致命错误:cudnn.h:没有那个文件或目录1、找cudnn.h文件这个命令会列出所有的cudnn.h文件找到自己安装cuda时的虚拟环境中的cudnn.h,我的是:2、把找到的cudnn.h文件复制到/usr/include再执行make。原创 2023-05-06 21:42:52 · 924 阅读 · 1 评论 -
编译yolov3报错:/usr/bin/ld: cannot find -lcudnn(/usr/bin/ld: cannot find -l**** 问题的解决办法)
今天编译yolov3程序的时候遇见根据网上查的试验了一下,这样解决:首先排除cudnn有没有安装的问题,如果安装了就大概率是软连接没有设好。原创 2023-05-06 21:32:47 · 92 阅读 · 0 评论 -
【深度学习】机器学习\深度学习常见相关公开数据集汇总(图像处理相关数据集、自然语言处理相关数据集、语音处理相关数据集)
常来说,深度学习的关键在于实践。从图像处理到语音识别,每一个细分领域都有着独特的细微差别和解决方法。然而,你可以从哪里获得这些数据呢?现在大家所看到的大部分研究论文都用的是专有数据集,这些专有数据集又通常不会公开。那么,想实践那些最新的理论方法往往就成了难题。如果你也遇到了这样的问题,接下来我们会提供了一系列可用的公开数据集给大家。在本文中,集,每个深度学习爱好者都可以使用这些数据集来提高自己的能力。原创 2023-01-03 20:00:26 · 2217 阅读 · 0 评论 -
【深度学习】YOLOv5断点训练——中断后继续训练
YOLOV5-断点训练/继续训练。原创 2022-12-27 20:29:04 · 4243 阅读 · 5 评论 -
RuntimeError: Expected object of device type cuda but got device type cpu for argument #2 ‘target‘
RuntimeError: Expected object of device type cuda but got device type cpu for argument #2 ‘target’ in call to _thnn_binary_cross_entropy_forwardPytorch 中想使用 CUDA 对程序计算进行加速object 的 device 类型期望得到的是 cuda 类型,但是实际上的类型确实 cpu 类型,在调用二分类交叉熵损失进行前向计算的时候检查下面几点一般情况下应该是原创 2022-12-07 17:03:26 · 1497 阅读 · 0 评论 -
【深度学习】Yolov5训练意外中断后如何接续训练详解;yolov5中断后继续训练
目标检测是计算机视觉上的一个重要任务,下面这篇文章主要给大家介绍了关于Yolov5训练意外中断后如何接续训练的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下操作系统:Ubuntu20.04CUDA版本:11.4Pytorch版本:1.9.0TorchVision版本:0.7.0IDE:PyCharm硬件:RTX2070S*2在训练YOLOv5时由于数据集很大导致训练时间十分漫长,这期间Python、主机等可能遇到死机,或者任务量繁重导致功耗过大主机自动重启的情况,如果需要训练300个epoc原创 2022-12-07 16:47:55 · 6806 阅读 · 5 评论 -
【深度学习】anaconda常用命令详细,附yolov 5创建环境例子
2. 查看已创建的虚拟环境3. 修改某个虚拟环境的名字anaconda中没有重命名的命令,使用克隆删除的方法4. conda的环境管理5. anaconda的包管理,类似Python的pipconda将conda、python等都视为package,因此可以使用conda管理conda和python的版本6. 安装需要的包安装指定版本的包原创 2022-12-06 23:40:29 · 249 阅读 · 0 评论 -
【深度学习】用python根据XML文件批量画出标注框
做一个项目需要很多流程,其中最为重要的是检查数据集,很多bug到最后发现是数据集标注错误,本文提供标注GT框的代码:结果原创 2022-12-06 19:17:06 · 450 阅读 · 1 评论 -
当pytorch找不到 CUDA 时,如何修复错误:版本 libcublasLt.so.11 未在带有链接时间引用的文件 libcublasLt.so.11 中定义?
在import torch 时报出以下错误:解决办法:这个问题的根本原因是,pytorch版本和cuda对不上,因此需要安装一个符合版本的pytorch可以得知cuda版本为11.1找到对应的上cuda版本的即可原创 2022-12-03 14:33:19 · 6593 阅读 · 1 评论 -
【深度学习】深度学习中模型计算量(FLOPs)和参数量(Params)等的理解以及四种在python应用的计算方法总结
计算量对应我们之前的时间复杂度,参数量对应于我们之前的空间复杂度,这么说就很明显了也就是计算量要看网络执行时间的长短,参数量要看占用显存的量注意全大写,是floating point operations per second的缩写,意指每秒浮点运算次数,理解为计算速度。是一个衡量硬件性能的指标。注意s小写,是floating point operations的缩写(s表复数),意指浮点运算数,理解为计算量。可以用来衡量算法/模型的复杂度。原创 2022-10-11 14:51:04 · 3807 阅读 · 0 评论 -
【深度学习】RuntimeError: a view of a leaf Variable that requires grad is being used in an in-place
yolov5报错:RuntimeError: a view of a leaf Variable that requires grad is being used in an in-place。添加with torch.no_grad():如下。在model/yolo.py文件。原创 2022-09-11 20:10:59 · 1416 阅读 · 0 评论 -
【深度学习】神经网络卷积层、池化层等每一层的中间输出图像尺寸计算——以AlexNet为例
在推理的协同工作中,可能需要将中间层的输出传输给其他设备进行计算,此时则需要计算中间层输出的图像尺寸 进而计算中间输出的大小,以计算其传输的时间和速度。原创 2022-09-11 18:37:27 · 932 阅读 · 0 评论 -
【深度学习】基于PyTorch搭建ResNet18、ResNet34、ResNet50、ResNet101、ResNet152网络
所有不同层数的ResNet:这里给出了我认为比较详细的ResNet18网络具体参数和执行流程图:这里并未采用BasicBlock和BottleNeck复现ResNet18具体ResNet原理细节这里不多做描述,直接上代码model.py网络模型部分:train.py训练部分(使用CIFAR10数据集):3. 训练测试结果训练损失:每一个epoch结束之后的测试:训练时多次修改超参数,最后经过30次epoch之后的测试准确度达到了0.7471,没有在训练下去也没有明显提升,初学深度神经网络,原创 2022-09-10 17:22:21 · 7390 阅读 · 1 评论 -
【深度学习】Yolov5标签归一化处理——json转换为txt
一、标签转换如下图所示,是标注的json文件。这里转换的时候所需要的,最重要的信息是 category_id和bbox,用这两个来转换成txt需要完成以下的转换——> 左边的可能是其他渠道或者任务提供的json标注,右边的txt是yolov5所需要的标注二、边界框(bounding box)说明在目标检测中,用边界框来表示物体的位置,边界框为能正好包含物体的矩形框。如下图中包含框选的矩形框即为边界框。边界框的表达形式:xyxy格式: 边界框由左上角坐标(x1,y1)和右下角坐标(原创 2022-05-08 16:00:33 · 7686 阅读 · 4 评论 -
【机器学习】机器学习、深度学习竞赛平台推荐2022(持续更新)
ML竞赛平台推荐一、前言二、国内外最主流平台1. Kaggle2. 天池三、国内其他主要平台四、国外其他主要平台五、大/中厂竞赛六、其他平台1. Numerai平台一、前言如果你从事研发岗,especially机器学习算法岗,丰富自己简历有三个方法,一是发paper,二是参加项目。最后就是参加网上的竞赛:参与机器学习的竞赛是一个不错的选择。在高质量的比赛中,拿到top名次可以让你的简历眼前一亮本文总结主流大多数流行的机器学习平台,供大家学习参考二、国内外最主流平台Kaggle和天池分别是国外和国内原创 2022-05-02 18:09:42 · 2951 阅读 · 0 评论 -
【深度学习】YOLOV5训练模型报错:OSError: [WinError 1455] 页面文件太小,无法完成操作。 Error loading “D:\Softw
一、原因:根本原因就是GPU配置不够,导致报错二、解决办法1修改yolov5代码,修改文件在 yolov5\utils\datasets.py修改参数 num_workers为0但是这样会带来一个问题,就是速度慢了很多,在训练的时候三、解决办法1ctrl + q 搜索:“查看高级系统设置”点击 高级——设置点击高级——更改再点击工程所在的盘——自定义大小(depend on 你的磁盘有多少空余,可以直接写满剩余空间。因为只是跑的时候占用虚拟内存,所以实际不会影响原创 2022-05-01 15:32:02 · 4099 阅读 · 0 评论 -
【深度学习】如何分配训练集、验证集、测试集比例
一、小规模数据集对于传统机器学习阶段(数据集在万这个数量级),一般分配比例为训练集和测试集的比例为7:3或是8:2。为了进一步降低信息泄露同时更准确的反应模型的效能,更为常见的划分比例是训练集、验证集、测试的比例为6:2:2。对于小规模样本集(几万量级),常用的分配比例是 60% 训练集、20% 验证集、20% 测试集。二、大规模数据集而大数据时代,这个比例就不太适用了。因为百万级的数据集,即使拿1%的数据做test也有一万之多,已经足够了。可以拿更多的数据做训练。因此常见的比例可以达到98:1:原创 2022-04-13 18:05:18 · 35564 阅读 · 2 评论 -
Linux、jetson nano、JTX、英伟达、nVidia查看cuda版本
cuda一般安装在 /usr/local/cuda/ 路径下,该路径下有一个version.txt文档,里面记录了cuda的版本信息cat /usr/local/cuda/version.txt原创 2022-03-17 12:28:48 · 2602 阅读 · 0 评论 -
Alexnet详解以及tesnsorflow实现alexnet;什么是alexnet alexnet能做什么;alexnet教程
一、over roll archiAlexnet——2012年——标志性网络该网络的亮点在于:(1)首次利用GPU进行网络加速训练。(2)使用了ReLU激活函数,而不是传统的Sigmoid激活函数以及Tanh激活函数。(smoid求导比较麻烦而且当网路比较深的时候会出现梯度消失)(3)使用了LRN局部响应归一化。(4)在全连接层的前两层中使用了Dropout随机失活神经元操作,以减少过拟合。dropout解释:使用dropout后,在每一层中随机失活一些神经元——减少训练参数从而减少over原创 2022-01-07 14:38:47 · 9012 阅读 · 2 评论 -
机器学习的epoch、iteration和batchsize什么意思
深度学习中经常看到epoch、iteration和batchsize,下面按照自己的理解说说这三个区别:(1)batchsize:批大小。在深度学习中,一般采用SGD训练,即每次训练在训练集中取batchsize个样本训练;(2)iteration:1个iteration等于使用batchsize个样本训练一次;(3)epoch:1个epoch等于使用训练集中的全部样本训练一次;举个例子,训练集有1000个样本,batchsize=10,那么:训练完整个样本集需要:100次iteration,1原创 2021-12-14 21:32:11 · 4321 阅读 · 1 评论 -
【深度学习】PYTORCH框架中采用训练数据“CIFAR-10”实现RESNET50
一、ResNet网络结构二、基本块三、RESNET50代码实现resnet50.pyimport torchimport torch.nn as nnfrom torch.nn import functional as Fclass ResNet50BasicBlock(nn.Module): def __init__(self, in_channel, outs, kernerl_size, stride, padding): super(ResNet50B转载 2021-04-11 10:54:06 · 574 阅读 · 0 评论 -
【深度学习】超参数优化简单介绍
介绍超参数优化也称作超参数调整。往往机器学习/深度学习的算法中包含了成千上百万的参数,这些参数有的可以通过训练来优化,例如神经网络中的权重(Weight)等,我们称为参数(Parameter),也有一部分参数不能通过训练来优化,例如学习率(Learning rate)等,我们称为超参数(Hyper parameter)。举些例子,机器学习算法中的参数是用来调整数据的。深度神经网络由许多神经元组成,输入的数据通过这些神经元来传输到输出端。在神经网络训练时候,每个神经元的权重会随着损失函数的值来优化从而减小损原创 2021-03-22 17:06:40 · 4385 阅读 · 0 评论 -
【深度学习】经典的卷积神经网络模型介绍(LeNet、AlexNet、VGGNet、GoogLeNet、ResNet和MobileNet)
经典的卷积神经网络模型介绍卷积神经网络简介一、LeNet1、INPUT层-输入层2、C1层-卷积层3、S2层-池化层(下采样层)4、C3层-卷积层5、S4层-池化层(下采样层)6、C5层-卷积层7、F6层-全连接层二、AlexNet1、AlexNet特点2、ReLu作为激活函数3、数据增强4、层叠池化5、局部相应归一化6、Dropout7、Alex网络结构8、AlexNet参数数量三、VGG net1、VGG的特点2、VGG网络结构3、VGG优缺点四、GoogLeNet1、GoogLeNet Incepet原创 2021-03-17 22:56:02 · 32615 阅读 · 7 评论 -
【深度学习】通俗理解什么是CNN卷积神经网络
卷积神经网络 – CNN 最擅长的就是图片的处理。它受到人类视觉神经系统的启发。CNN 有2大特点:能够有效的将大数据量的图片降维成小数据量能够有效的保留图片特征,符合图片处理的原则目前 CNN 已经得到了广泛的应用,比如:人脸识别、自动驾驶、美图秀秀、安防等很多领域。原创 2021-03-17 21:21:07 · 4208 阅读 · 0 评论 -
【深度学习】使用NETRON工具可视化PYTORCH模型
netron是微软小哥lutzroeder的一个广受好评的开源项目,地址https://github.com/lutzroeder/Netro支持众多模型:1. 安装NETRONpip install netron2. 测试代码由于不支持默认的pytorch模型格式(.pth),因此需要存为onnximport torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.onnx import netr原创 2021-03-11 21:24:57 · 1272 阅读 · 0 评论 -
【人工智能】基于蒙特卡洛树搜索和策略价值网络的AI五子棋算法设计
基于蒙特卡洛树搜索和策略价值网络的AI五子棋算法设计摘要蒙特卡洛树搜索算法五子棋博弈的状态价值函数附1:详细论文说明下载:附2:实现代码下载:摘要随着人工智能领域的发展,深度学习、强化学习等算法被广泛应用于解决各种游戏博弈问题,通过训练神经网络来得到各种游戏的人工智能算法,人工智能来到了一个新的发展水平。在此类游戏博弈问题上,其他的方法要么是类似穷举法的搜索算法,它们在有限计算资源的情况下博弈能力较弱;要么是基于机器学习的方法,它们虽然博弈能力强,但是需要花费大量资源,训练和预测时都十分缓慢。因此,在设原创 2021-02-25 13:53:57 · 4804 阅读 · 0 评论 -
【深度学习】生成式对抗网络(GAN)从通俗了解到深化理解
简介:生成式对抗网络(GAN)是一个最新的研究领域,主要用在图像技术方面的图像生成和自然语言方面的生成式对话内容。简单说:就是机器可以根据需要生成新的图像和对话内容。通俗理解:让我们假设这样一种情景:你的邻居正在举办一场非常酷的聚会,你非常想去参加。但有要参加聚会的话,你需要一张特价票,而这个票早就已经卖完了。而对于这次聚会的组织者来说,为了让聚会能够成功举办,他们雇佣了一个合格的安全机构...原创 2019-05-24 22:32:46 · 462 阅读 · 0 评论