![](https://img-blog.csdnimg.cn/cccfea448fe74f3f9d4b667759a3e1f4.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
深度学习
文章平均质量分 80
记录自己的深度学习过程,分享自己的经验,提升自己的不足
彭祥.
目前研究生在读,主要研究目标检测相关算法,具体以Transformer模型为主,对图像去噪方面也有涉猎,大学期间专业为软件开发,拥有较为丰富的编程与毕业设计撰写经验。
展开
-
YOLOv8由pt文件中读取模型信息
Pytorch的pt模型文件中保存了许多模型信息,如模型结构、模型参数、任务类型、批次、数据集等在先前的YOLOv8实验中,博主发现YOLOv8在预测时并不需要指定任务类型,因为这些信息便保存在pt模型中,那么,今天我们便来看看,其到底是如何加载这些参数的。我们首先对pt。原创 2024-08-05 12:35:52 · 1247 阅读 · 0 评论 -
锯齿云服务器租赁使用教程
使用锯齿云GPU服务器教程原创 2023-12-23 14:30:28 · 1224 阅读 · 0 评论 -
基于知识蒸馏的两阶段去雨去雪去雾模型学习记录(三)之知识测试阶段与评估模块
去雨去雾去雪算法分为两个阶段,分别是知识收集阶段与知识测试阶段,前面我们已经学习了知识收集阶段,了解到知识阶段的特征迁移模块(CKT)与软损失(SCRLoss),那么在知识收集阶段的主要重点便是HCRLoss(硬损失),事实上,知识测试阶段要比知识收集阶段简单,因为这个模块只需要训练学生网络即可。原创 2023-10-06 20:44:47 · 999 阅读 · 1 评论 -
基于知识蒸馏的两阶段去雨去雪去雾模型学习记录(二)之知识收集阶段
前面学习了模型的构建与训练过程,然而在实验过程中,博主依旧对数据集与模型之间的关系有些疑惑,首先是论文说这是一个混合数据集,但事实上博主在实验时是将三个数据集分开的,那么在数据读取时是如何混合的呢,是每个epoch使用同一个数据集,下一个epoch再换数据集,还是再epoch中随机取数据集中的一部分。原创 2023-10-06 09:48:45 · 352 阅读 · 0 评论 -
神经网络输出中间特征图
在进行神经网络的训练过程中,会生成不同的特征图信息,这些特征图中包含大量图像信息,如轮廓信息,细节信息等,然而,我们一般只获取最终的输出结果,至于中间的特征图则很少关注。前两天师弟突然问起了这个问题,但我也没有头绪,后来和师弟研究了一下,大概有了一个思路。即每个特征提取模块都会输出一个特征图,这些特征图的每个像素实际上就是一些数值,那么只需要将这些数值保存,再以图像的形式展现出来便OK了。基于这个思路,我们来进行设计。原创 2023-09-09 10:00:38 · 829 阅读 · 0 评论 -
Paddle训练COCO-stuff数据集学习记录
警告提醒,据说是该设计在paddle2.6已经被弃用了,但该警告其实并不影响实验进程,只是看着不舒服而已,那就不看好了。2.4.0的是可以的。报错1:这个问题令我感到困惑,因为先前已经用该环境训练过cityspces数据集,但还是重新又部署了一下环境,但依旧出错,最后发现是由于博主的数据集类别设置错误导致的,这实在是令人匪夷所思。似乎是之前博主修改了metrics.py文件导致的,但好像并不是,保持metrics.py文件原样即可,修改下数据集目录即可。下载完成数据集后需要生成数据集的读取文件,即。原创 2023-09-03 10:12:11 · 1137 阅读 · 0 评论 -
YOLOX算法调试记录
YOLOX是在YOLOv3基础上改进而来,具有与YOLOv5相媲美的性能,其模型结构如下:由于博主只是要用YOLOX做对比试验,因此并不需要对模型的结构太过了解。先前博主调试过YOLOv5,YOLOv7,YOLOv8,相比而言,YOLOX的环境配置是类似的,但其参数设置太过分散,改动比较麻烦,就比如epoch这些参数竟然要放到yolox_base.py文件中去继承,而不是直接在train.py中指定。话不多说,我们开始调试过程。原创 2023-08-19 19:52:13 · 1163 阅读 · 0 评论 -
MMDetection学习记录(二)之配置文件
介绍MMDetection的配置文件主要结构原创 2023-06-05 21:17:07 · 1215 阅读 · 0 评论 -
DINO-DETR在CADC数据集进行实验与分析
CADC数据集是博主从网上寻找的冰雪环境下的自动驾驶数据集,共计5250张图片,博主首先划分出1050张作为测试集,随后将剩余的4200张按照4:1划分训练集与验证集,即3360张作为训练集,840张作为验证集,之所以将1050张划分为测试集,是因为整体数据集主要划分为5个驾驶场景,为保证测试集与训练集完全独立,即训练集中没有获取到测试集的信息,故将最后一个驾驶场景作为测试集。紧接着,博主想到可以在该模型上使用CADC数据集进行实验,看看其表现如何。接下来,博主会将模型在测试上来检测其性能。原创 2023-03-28 09:49:06 · 760 阅读 · 0 评论 -
DETR源码讲解(四)之注意力计算
24,256分别是128行编码与28列编码,这是设定好的。query_embed:torch.Size([100, 2, 256]) ,其为decoder预测输入,即论文中反复提到的object queries,每帧预测num_queries个目标,这里预测100个。其最开始时是进行随机初始为0的,之后会加上位置编码信息。这个意思是想让query对位置较为敏感,或者说应该有自己所关注的范围,不能越界。原创 2023-03-21 16:02:25 · 1248 阅读 · 0 评论 -
DETR源码学习(一)之网络模型构建
关于多头注意力机制,就是有多个单头注意力组成的,如下图单头注意力。原创 2023-03-20 15:37:30 · 1252 阅读 · 1 评论 -
YOLOS学习记录
在前面,博主已经完成了YOLOS项目的部署与调试任务,并在博主自己构造的数据集上进行了实验,实验结果表明效果并不显著,其实这一点并不意外,反而是在情理之中。众所周知,Transformer一直以来作为NLP领域的带头大哥,在CV领域也才刚刚起步,尽管其势头正猛,一时风光无量,但毕竟有个通病,那就是大数据集量。原创 2023-03-11 20:36:06 · 680 阅读 · 1 评论 -
DETR目标检测算法学习记录
Attention的本质就是加权,以找女朋友为例,Q代表我想要的女生类型,即一些条件,K与V则是一种键值对的表示,K为属性,如女生的相貌,身材等,而V则是对应属性的相应值,即女生的真实特征,那么一个女生越符合标准的我们预设的条件,就会被赋予更高的权重,特征占比也就越大。需要注意的是,在decoder的第一层其实做的是自注意力机制,即每个向量都有自己的Q,K,V,其先进行一下内部分配,最终我们需要的是得到的Q,而K,V值只是一些中间数据,无用也就被丢弃了。而在这里,其是并行的,也就不需要设置mask机制了。原创 2023-03-09 20:48:28 · 1578 阅读 · 0 评论 -
YOLOS调试记录
再次发表一下对于调试该模型时的一些感悟:首先一定要认认真真阅读readme中给我们的指导,这会让我们的调试事半功倍。其次关于这个模型,该模型根据论文中给出的结果与分析来看,其相较于当下的主流模型如yolov7,yolov8等还是由差距的,但这也意味着其改进空间巨大。Transformer作为NLP领域的中流砥柱,在迁移到计算机视觉后能够表现出如此性能已是出人意料,而这也给我们了许多启示。原创 2023-03-07 12:55:28 · 1032 阅读 · 3 评论 -
关于DETR模型训练自定义数据集AP=0问题
刚开始时,博主还以为是初始训练的问题,后来进行了6个轮次后结果依旧没有改变,此时以为是数据集的类别与编号没有对应造成的,但经过排查却并非是这个原因。这时博主就很奇怪了,先前不是已经给了ResNet预训练权重了吗,怎么还会要求这个呢,查看了一下服务器的源码也没有发现异常,而在查看GPU使用情况时(如下图),博主此时的batch-size=32,但GPU利用率与显存占用率并不高,这与论文中提到的很吃配置明显是不符的。修改后再次运行,不再报错,也可以运行了,但缺依旧没有解决AP=0的问题。原创 2023-03-01 09:25:11 · 2263 阅读 · 16 评论 -
DETR(DEtection TRansforme)调试记录
个人觉得在训练那块还是改main.py文件比较好,需要改的地方挺多,我觉得需要修改的主要有–epoch(轮次)、–num_workers(主要看你电脑性能怎么样,好点可以调高些)、–output_dir(输出的模型权重,pth文件)、–dataset_file(数据存放位置)、–coco_path(coco数据集的位置)和–resume(预训练权重文件位置)。原创 2023-02-28 09:57:40 · 859 阅读 · 0 评论 -
云GPU服务器部署及pycharm远程连接
我们在之前使用CoLab来运行项目,但其存在时长限制问题所以并不是很理想,今天博主发现腾讯云服务目前在搞活动,比较实惠,便买了一台来体验一下。直接搜索gpu服务器租用即可找到。原创 2023-01-19 12:19:41 · 2483 阅读 · 0 评论 -
基于 GRU-Attention 的中文文本分类学习记录
可以看到,这里的遗忘 zt 和选择 1-zt 是联动的,也就是说,对于传递进来的维度信息,会进行选择性遗忘,则遗忘所占的权重 zt,就会使用包含当前输入的 ht 中所对应的权重进行弥补(1-zt),以维持一种恒定状态。进行中文新闻文本分类实验,用来说明注意力机制对文本分类结果的影响,然后在同样的数据集上使用传统的机器学习方法,包括支持向量机(SVM)、朴素贝叶斯(NB),并与前面的深度学习模型的分类效果做对比,来说明采用 GRU 深度学习模型的优势。,a i,进一步提取文本特征,突出文本的关键词语。原创 2022-09-28 15:39:38 · 4604 阅读 · 4 评论 -
CNN_RNN_LSTM基础知识
机器学习算法基础理解原创 2022-04-18 15:25:48 · 2412 阅读 · 0 评论 -
注意力机制综述学习记录
注意力机制与传统算法的简单结合就可以提高系统的性能,因此注意力机制的提出对深度学习许多结构都有着性能提高的作用。它将细胞单元进行更改,新增“遗忘门”“记忆门”和“输出门”就是为了对长序列进行挑选,然后将较长的序列转化为包含有重要信息的短序列,将数据进行传递,有效解决了传统算法预测数据时常遇到的问题,并得到广泛的应用。注意力机制的第一次提出是在视觉图像领域中[21],它指出注意力的作用就是将之前传统的视觉搜索方法进行优化,可选择地调整视觉对网络的处理,减少了需要处理的样本数据并且增加了样本间的特征匹配。原创 2022-09-26 20:51:09 · 5896 阅读 · 1 评论 -
Keras学习记录之网络层结构
channels_last 代表尺寸是 (batch, spatial_dim1, spatial_dim2, spatial_dim3, channels) 的输入张量, 而 channels_first 代表尺寸是 (batch, channels, spatial_dim1, spatial_dim2, spatial_dim3) 的输入张量。data_format: 字符串, channels_last (默认) 或 channels_first 之一, 表示输入中维度的顺序。输入的各个维度顺序。原创 2022-09-26 16:33:06 · 1498 阅读 · 0 评论 -
Keras学习记录之模型编译-训练-评估-预测
Keras的模型编译的语法格式为:但我们最常用的还是以下这种:在完成了模型的构建后, 可以使用 来配置学习过程在训练模型之前,需要配置学习过程,这是通过 compile 方法完成的。它接收三个参数:如果需要,你还可以进一步地配置你的优化器。Keras 的核心原则是使事情变得相当简单,同时又允许用户在需要的时候能够进行完全的控制(终极的控制是源代码的易扩展性)。此外还可以根据问题种类进行细分模型训练fit调用格式迭代训练参数格式为:参数。 如果模型中的输入层被命名,你也可以传递一个字典原创 2022-09-25 20:39:17 · 1770 阅读 · 0 评论 -
Keras学习记录之模型
Keras 是一个用 Python 编写的高级神经网络 API,它能够以 TensorFlow, CNTK, 或者 Theano 作为后端运行。Keras 的核心数据结构是 ,一种组织网络层的方式。最简单的模型是 顺序模型,它由多个网络层线性堆叠。对于更复杂的结构,你应该使用 Keras 函数式 API,它允许构建任意的神经网络图。Keras的模型构造十分简单,可以通过来堆叠模型当然也可以通过将网络层实例的列表传递给 Sequential 的构造器,来创建一个 模型:函数式构造以一个全连接层为原创 2022-09-25 19:42:10 · 811 阅读 · 0 评论 -
Keras框架常见问题
Keras框架使用常见问题。原创 2022-09-25 16:54:33 · 998 阅读 · 0 评论 -
采用 ALSTM 模型的温度和降雨关联预测研究论文学习记录
Attention 模型最初被用于机器翻译,现在已被广泛运用于机器学习以及和许多神经网络模型相结合中。简单的说,注意力机制类似于人去看一个图画,注意力往往会根据个人喜好的不同而对图画中某一区域,注入更多的注意力,即更倾向于关注图像中的部分重要信息。在 RNN 中,结合注意力机制可以使某些重要的因素更容易被捕获,数据内部逻辑结构的相关性也更容易被建模起来,这解决了因为处理长序列输入而导致等待时间过久,权重分配不当的问题,从而提高预测性能。传统编码器 解码器结构 如图 2 所示。原创 2022-09-24 15:58:08 · 1380 阅读 · 0 评论 -
Keras中 LSTM 模型解读
t时刻的输入X和t-1时刻的输出h(t-1)进行拼接,然后输入cell中,其实可以这样理解,我们的输入X(t)分别feed进了四个小黄矩形中,每个小黄矩形中进行的运算和正常的神经网络的计算一样(矩阵乘法),有关记忆的部分完全由各种门结构来控制(就是0和1),同时在输入时不仅仅有原始的数据集,同时还加入了上一个数据的输出结果,也就是。关于return_sequence的理解:即返回序列,若为true,则说明后面还有LSTM模型需要接收序列,即存在步长,若为false,说明不需要接收模型,则没有步长这个参数。原创 2022-09-23 11:31:05 · 3230 阅读 · 0 评论 -
深度学习之 BN(Batch Normalization)批归一化
这意味着网络的表达能力下降了,也就是意味着深度的意义就没有了。如果是仅仅使用上面的归一化公式,对网络某一层A的输出数据做归一化,然后送入网络下一层B,这样是会影响到本层网络A所学习到的特征的,这样会导致网络表达能力下降。另一方面,如果每批训练数据的分布各不相同,网络就要在每次迭代时都去学习适应不同的分布,那么网络的训练速度就会大大降低,这就是为什么我们需要对输入数据做一个归一化处理。在我目前的水平看来,深度学习的本质上就是刻画问题的内部复杂结构特征,进行任意的非线性变换,简单来说可以看成是学习数据的。原创 2022-09-22 10:37:25 · 1941 阅读 · 0 评论 -
Multivariate LSTM-FCNs for Time Series Classification 论文学习记录
在过去的几十年里,多变量时间序列分类问题引起了广泛的关注。我们提出转换现存的单变量时间序列分类模型:长短期记忆全卷积神经网络和注意力LSTM-FCN,转换为多变量时间序列分类模型通过应用挤压-激励块到FCN中去提升准确性。我们提出的模型表现优于最先进的模型,同时需要最少的预处理。这提出的模型在各种复杂的多变量时间上有效工作实现分类任务,如活动识别或操作认可。此外,所提出的模型在测试时十分高效,并且足够小,可以在内存受限的系统上部署。原创 2022-09-20 22:01:38 · 1419 阅读 · 0 评论 -
全卷积神经网络概述学习记录
卷积操作具有局部连接、权值共享的特点,能很好地保留二维数据的空间信息,而池化操作能够很好地满足平移不变性,这在分类任务中非常重要。但是卷积神经网络有一个很大的缺陷,就是网络输入必须指定大小,而且一般只能进行一对一的预测,即一个输入只能得到一个预测结果。但是随着视觉领域的发展,这种预测已经无法满足要求,完成的任务越来越复杂,往往需要的是密集预测,即输入对象中的每一个元素都需要进行预测,这是卷积神经网络无法完成的,而全卷积神经网络就是在这种需求下被提出的。原创 2022-09-17 18:13:04 · 819 阅读 · 0 评论 -
关于LSTM-FCN程序的部署与运行
前面学习了LSTM-FCN的相关知识,现在针对该框架我们找到了一份代码资源,来通过对实现代码的解读进一步理解该模型。原创 2022-09-15 10:35:08 · 1760 阅读 · 3 评论 -
LSTM Fully Convolutional Networks for Time Series Classification 学习记录
用于时间序列分类的LSTM+FCN网络(Long short-term Memory+Fully Convolutional Networks)原创 2022-09-14 20:08:39 · 1564 阅读 · 0 评论 -
卷积神经网络研究综述 学习记录
神经元是人工神经网络的基本处理单元,一般是多输入单输出的单元,其结构模型如图所示:其中:xi表示输入信号;n个输入信号同时输入神经元j.wij表示输入信号xi与神经元j连接的权重值,bj表示神经元 的 内 部 状 态 即 偏 置 值,yj为 神 经 元 的输出.输入与输出之间的对应关系可用下式表示:f(·)为激励 函 数,其 可 以 有 很 多 种 选 择,可 以 是 线性 纠 正 函 数 ,sigmoid函数、tanh(x)函数、径向基函数等。原创 2022-09-13 11:12:21 · 917 阅读 · 0 评论 -
基于 attention 机制的 LSTM 神经网络 超短期负荷预测方法学习记录
在标准LSTM体系结构中,有1个记忆单元状态和3个门,即更新门Γu、遗忘门Γf和输出门Γo,标准LSTM的体系结构如图2所示。采用x 1, x 2, …, x T表示LSTM网络中的典型输入序列,则其中x {t}表示时间t时的输入特征。为了实现重要信息长时间存储,在LSTM的整个周期内设立并维护一个记忆单元c。根据前一时间的激活单元a 和当前时间的输入x ,通过3个门确定更新、维护或遗忘内部状态向量的具体元素。原创 2022-09-12 15:44:23 · 3854 阅读 · 3 评论 -
基于 Mixup 数据增强的 LSTM-FCN 时间序列分类学习记录
在时间序列分类任务中,针对时间序列数据少和多样性导致深度学习模型准确率不高的问题,提出 Mixup 数据增强的长短期记忆网络–全卷积网络LSTM-FCN)时间序列分类算法。该算法首先使用 Mixup对原始数据进行数据增强,通过简单的线性插值对时序数据进行混合,得到新的混合之后的增强数据;然后使用增强数据训练 LSTM-FCN,并进行分类。原创 2022-09-12 11:05:37 · 3911 阅读 · 2 评论 -
数据集处理方法之数据增强
更具体的,CNN可以对移位(translation)、视角(viewpoint)、大小(size)、照明(illumination)(或者以上的组合)具有不变性。其实,为了获得更多的数据,我们只要对现有的数据集进行微小的改变。因为我们的网络在开始时,或者说一些欠训练的神经网络会认为这是不同的图片。比如,你遇到的一个任务,目前只有小几百的数据,然而,你知道目前现在流行的最先进的神经网络都是成千上万的图片数据。这便引出了数据增强的概念,一种是事先执行所有转换,实质上会增强你的数据集的大小。原创 2022-09-12 10:37:46 · 2743 阅读 · 0 评论 -
LSTM疫情预测实验介绍
该模型整体采用了Seq2Seq的编码器,解码器思想,内部神经网络采用的LSTM,对于疫情这种有地域,时域密切相关的实验对象,采用了空间注意力机制与时间注意力机制来获取相关性权重值。原创 2022-09-12 09:24:25 · 822 阅读 · 0 评论 -
基于LSTM+FCN处理多变量时间序列问题记录(二)
与LSTM-FCN和ALSTM-FCN相同,该模型包含一个全卷积块和一个LSTM块,如下图所描述的。全卷积块包含三个时间卷积块,作为一个特征提取器,它最早作为初始全卷积块被人提出。这个卷积块包含一个卷积层,其过滤器数量分别为128,256,128,其卷积核大小分别为8,5,3。每个卷积层后紧跟着为批次归一化,归一化完成后使用ReLU激活函数。此外,在前两个卷积块中还紧跟一个挤压-激活块,这是该模型之所以区别于LSTM-FCN和ALSTM-FCN。原创 2022-09-10 19:57:29 · 1815 阅读 · 1 评论 -
注意力机制(attention)学习笔记
直观理解注意力机制,即decode每要生成一种状态,都要去关注encode中的所有状态,即每个状态间都有连接,而连线的粗细则反映两者的相关程度,如法语中的zone就是英语中的Area,通过这个权重他告诉decode更去关注encode中哪一个状态,这也是attention命名的由来。可以大幅提高模型的准确性,如在RNN文本翻译中其会计算与所有状态的相关性,并得出权重,即他会考虑所有状态并给出最重要的关注,这也就是注意力命名的由来,与此同时,关注所有的状态也必定需要大量的计算。计算相关性得到的,同样,后面。原创 2022-09-10 15:54:34 · 1124 阅读 · 0 评论 -
基于LSTM+FCN处理多变量时间序列问题记录
本文将现有的单变量时间序列分类模型即长短时记忆全卷积网络(LSTM-FCN)和注意力LSTM-FCN(ALSTM-FCN)转换为多变量时间序列分类模型,通过在全卷积块上增加一个 Squeeze-and-Excitation Block来进一步提高分类精度。下面是文档阅读和程序运行时积累的相关笔记。原创 2022-09-08 08:42:21 · 3627 阅读 · 0 评论 -
LSTM(长 短期记忆网络)简单理解
我们希望从一句话中提取出需要的信息,如目的地,时间等,那么我们就需要可以将每个单词转化为向量,然后进行一系列操作来得出,但有一个问题是在这句话中,到底是目的地还是出发地我们却不得而知,因此我们希望我们的这个算法模型能够具有记忆性,即记住 arrive与 leave,这也就引出了我们的模型,其实就是我们需要一个模块来记住我们先前的内容。原创 2022-08-25 17:01:34 · 342 阅读 · 0 评论