
图像深度网络经典论文详解
文章平均质量分 95
从经典的网络结构开始深入,解读注意力机制,微调等技术的经典论文。不仅仅是做论文的翻译,而是做了一些自己的解决,让读者能更好的理解其中的理念。理解作者的思路,从而达到学习深度网络的目的。
不定期更新,大约1-2周会更新一篇
现在已经更新了VGG,GoogleLeNet,ResNet, RCNN系列等。
新兴AI民工
人工智能行业的新兴民工
展开
-
知识蒸馏: Distilling the Knowledge in a Neural Network(下)
上面两篇文章已经把知识蒸馏这篇论文说的差不多了,只剩下最后一点,这一篇文章全部说完。上一篇说到了通用+专用模型的方式如何划分数据。接下来就说这种模型集成的方式的性能了。原创 2025-03-27 15:51:56 · 47 阅读 · 0 评论 -
知识蒸馏: Distilling the Knowledge in a Neural Network(中)
上一篇已经详细讲了论文的前两章,知识蒸馏的基本逻辑和详细的算法过程。这一篇来说说论文中的后面几张,包括了知识蒸馏算法在MNIST和一个语音识别数据集上的实验效果,还有就是通用模型+专家模型与多专家系统的区分。原创 2025-03-20 17:28:32 · 77 阅读 · 0 评论 -
知识蒸馏: Distilling the Knowledge in a Neural Network(上)
整片论文主要讨论和解决一个问题,在模型越来越大,数据集越来越多的情况下,即使算力已经翻了N倍,训练和部署大模型仍然是一个非常耗时的工作。知识蒸馏,distill knowledge通用模型 + 专用模型并行训练的方式。文章的摘要一开头就说的这个事情:这一段说的是说一个普遍的提高机器学习算法性能的方法就是用同样的数据训练多个模型,然后把多个模型的结果拿来做平均,就能提高算法性能。原创 2025-03-20 17:27:26 · 131 阅读 · 0 评论 -
DDPM网络:训练过程的数学模型
图像生成领域中,论文《Denoising Diffusion Probabilistic Models》是一篇非常重要的论文,数学属性比较大,自己花了不少时间去理解里面的数学推导过程。所以总共花了3篇内容来记录这篇论文的内容,这是第二篇。原创 2025-02-20 21:56:54 · 49 阅读 · 0 评论 -
DDPM模型:正向/反向过程的数学模型
图像生成领域中,论文《Denoising Diffusion Probabilistic Models》是一篇非常重要的论文,数学属性比较大,自己花了不少时间去理解里面的数学推导过程。所以总共花了3篇内容来记录这篇论文的内容,这是第一篇。原创 2025-02-20 21:49:30 · 187 阅读 · 0 评论 -
DCGAN:卷积GAN
论文提到,评价一个无监督学习出来的模型,就是拿这个模型做其他监督学习任务的feature extrator,也就backbone部分,看看提取图像特征的能力怎么样。DCGAN网络的输入也是一个符合标准分布的噪声Z,最后从判别器出来的结果是一个single sigmoid激活结果(标准的识别网络,论文中没有提到具体的判别器网络结构)。论文在CIFAR-10,对比了这个判别器与其他一些无监督学习方法的性能,比如K-mean等,因为论文比较老,一些具体的对比没有太多意义,所以这部分就简单描述一下了。原创 2024-06-20 10:40:26 · 309 阅读 · 0 评论 -
LAPGAN-拉普拉斯金字塔生成网络
在最后一层,因为图像尺寸已经足够小,就不需要下采样再上采样作为条件输入了,直接通过对应的噪声向量z作为输入,通过生成器生成的图像和原图一起对判别器做训练即可,也就是标准GAN的训练方式,而不是CGAN的方式。由于没有更高层的参考,这一层直接继承了高斯金字塔的特性。上采样的逻辑有,但是拉普拉斯金字塔从哪来呢,这就是GAN网络的作用了,每一层的拉普拉斯由一个GAN网络来代替。从一个随机噪声z入手,将上面的过程反过来,上采样之后加上拉普拉斯金字塔的对应层,逐步恢复,或者生成出高分辨率的图像。原创 2024-06-05 10:28:40 · 137 阅读 · 0 评论 -
CGAN:条件生成式对抗网络
基于最基本的GAN网络,后面衍生出了大量的生成式网络,接下来准备将这些各种各样的GAN网络的论文进行一下解读。这一篇来说一下CGAN,条件生成式对抗网络。CGAN的这篇论文比较短:《Conditional Generative Adversarial Nets》,只有7页,内容也不多,主要就是在GAN网络的基础上增加了一些先验知识,也可以说是label。原创 2024-05-21 14:33:07 · 564 阅读 · 0 评论 -
DeepLab V3+: 引入可分离卷积与Decoder网络
金字塔池化层:Spatial pyramid poolingEncoder-Decoder模型。这个金字塔池化的概念在V2和V3两片论文中已经详细的讲过了,也就是前面两篇中提到的ASPP。原创 2024-05-13 11:59:34 · 206 阅读 · 0 评论 -
DeepLab V3: V2基础上去掉了CRF的改进版ASPP
To handle the problem of segmenting objects at multiple scales, we design modules which employ atrous convolution in cascade or in parallel to capture multi-scale context by adopting multiple atrous rates. 各种atrous rate的空洞卷积核进不同方式的链接,比如级联结构,平行结构等,后面会提到。原创 2024-04-28 14:25:23 · 356 阅读 · 0 评论 -
DeepLab V2: 改进版的DeepLab V1
摘要部分开门见山的就提出了论文的三点贡献。空洞卷积在dense prediction任务中(像素级预测任务)可以有效的控制感受野,或者说特征图尺寸(通过空洞率)。而且在扩大感受野的同时不用增加额外的参数和计算量。提出了空洞卷积金字塔结构(atrous spatial pyramid pooling - ASPP)来处理多尺度问题。原创 2024-04-15 09:18:55 · 236 阅读 · 0 评论 -
DeepLab V1:全连接CRFs的语义分割网络
摘要部分提到了:这一段的意思是说,对于普通的DCNN网络,最后一层对物体的边界分类的不够好(high level高层语义与low level的低层语义精确度的平衡问题),而deeplab算法就是引入了CRF来解决这个问题。然后就是引入了空洞卷机来解决计算量的问题。所以,这篇论文提出的两个主要贡献就是在普通CNN的网络基础上(论文以VGG为backbone),引入了CRF和空洞卷积。原创 2024-04-09 23:22:41 · 300 阅读 · 0 评论 -
生成式对抗网络:GAN-Generative Adversarial Nets
具体训练过程中,生成器与判别器交替训练:首先,固定生成器,使用生成器基于隐随机向量z模拟出G(z)作为负样本,并从真实数据中采样得到正样本x,然后将正负样本输入给判别器,进行二分类预测,最后利用其二分类交叉熵损失更新判别器参数;当判别器D无法正确分别出G生成的数据是否是捏造的时候,此时G就已经达到了目的,已经正确的预测出了数据的分布。用生成图像来举个例子,比如说我要生成某种风格的图像,比如动漫风格的图像,这个图像的像素就服从动漫分布(这个分布无法用准确的公式来表达),所以记为。那么根据这个公式中的。原创 2023-12-25 15:52:21 · 504 阅读 · 0 评论 -
实例分割网络:Mask RCNN
之前的文章已经说过了分类网络,目标检测网络,语义分割网络,这一篇来说说更为复杂一点的实例分割网络——Instance segmentation。实例分割网络也是三大视觉任务之一——分割的一种。与语义分割不同的是,语义分割的任务是将图像中的不同类别给区分出来,之前说的FCN和UNET都是最终预测一个与图像尺寸相同的输出,每个像素标记成不同的类别,从而达到将图像中的不同类别目标区分出来的目的。原创 2023-12-08 22:04:18 · 367 阅读 · 0 评论 -
SSD-Single Shot Detector
前面提到了两种经典的目标检测算法:one stage的yolo系列,还有就是two stage的RCNN系列。而SSD在2016年提出的时候,就是想综合YOLO的速度和RCNN的准确率。但是好像在YOLO2,也就是YOLO9000的时候就已经超过了SSD。当然SSD后面也有不少的改进版本,这里先说说这个SSD的原始版本。原创 2023-11-30 14:39:25 · 296 阅读 · 0 评论 -
轻量化网络--MobileNet V1
在网络优化的过程中,为了让准确率越来越高,一般来说,网络结构越来越大,层数越来越多。但是在一些移动设备或者嵌入式设备中,这些网络是无法使用的,因为移动设备根本没有这么高的计算能力。所以,网络结构的一个研究方向就是在不明显降低准确率的情况下,尽量降低网络模型的大小,降低参数量,降低计算量,使得这些模型可以在移动设备上使用。原创 2023-11-18 22:56:17 · 472 阅读 · 0 评论 -
语义分割网络系列——UNet
在FCN同一年出来的语义分割网络中,有一个重量级的网络:UNet。UNet以其网络结构形状得名。从UNet出来之后,很多图像分割网络都是在上面进行各种魔改。这样说明了UNet的重要性和可扩展性。UNet刚出来的论文是说UNet主要针对于生物,医学的数字显微镜成像的图像。而医学显微图像的特征是相对比较规整,但是对分割的精细度(特别是边界的分割)要求很高,我自己的理解是对其每个部分的语义(也就是分类)的准确率反倒是不那么的高,当然如果能判断的很准是最好。原创 2023-11-13 10:53:02 · 1956 阅读 · 0 评论 -
语义分割网络系列——FCN,全卷积网络
这个专栏的前面一些文章,已经设计到了图像网络,或者说机器视觉的两个主要任务:分类和检测。现在来说说另外一个任务:分割(Segmentation)。一般来说,分类相对比较简单一点,通过一个基础网络(backbone)就可以完成任务,从LeNet,AlexNet,到ResNet,SENet等,都是通过基础网络完成分类任务。在分类网络的基础上,加上一些detector head,比如RCNN引入的ROI Pooling,RPN等;YOLO1-5引入的回归,anchor等。就可以完成目标检测的任务。原创 2023-11-09 16:25:38 · 2083 阅读 · 0 评论 -
目标检测网络系列——YOLO V4
YOLO4的设计目标也还是YOLO系列的主要关注点,就是要快。The main goal of this work is designing a fast operating speed of an object detector in production systems and optimization for parallel computations, rather than the low computation volume theoretical indicator (BFLOP)YOLO4原创 2023-11-06 14:57:29 · 2297 阅读 · 0 评论 -
CSPNet: Cross Stage Partial Network
也就是浅层的特征图可以通过shortcut的方式正向传播到后面的层,同样,在反向传播的同时,后面层出来的梯度会通过shortcut传播到千层。也就是说在反向传播的时候,相当于第k层的梯度会传播到k-1,k-2,一直到最前面的第一层。从我自己对这个结构的理解来说,我认为CSP的作用在于可以将一部分的特征图直接拼接到过去,不需要通过densenet到反向传播来进行更新,这样就可以节省这部分权重参数的更新,从而节省计算量(进入densenet的input channel少了,那么对应卷积层的参数也会减少)。原创 2023-11-04 19:03:17 · 2137 阅读 · 0 评论 -
FPN-特征金字塔网络
整个过程就是当一个input image进入ResNet后,以ResNet的第2,3,4个stage的最后一个卷积层输出作为基础,构造一个金字塔结构的FPN,然后每个金字塔level直接通过同一个ROI层(7 * 7的网格,每个网格做pooling),然后再通过两个1024的FC层,最后进入fast rcnn的predictor header,进行分类和bounding box的预测。这样的效果和标准的FPN比,AR下降的比较多,论文认为是缺乏多层的语义信息。那FPN接进来之后,就可以支持多尺度的图了。原创 2023-11-03 18:01:33 · 2013 阅读 · 0 评论 -
CBAM:卷积注意力机制
在继续说yolo4之前,还需要补充一些基本的网络和tricks。前面已经补充了一篇ResNeXt的网络结构,这一篇来说说一种新的注意力机制:卷积块注意力机制:CBAM: Convolutional Block Attention Module。在CBAM论文里提到的是综合了spatial attention(空间注意力)和channel attention(通道注意力)两种注意力机制来提高准确率。原创 2023-10-26 20:05:17 · 2161 阅读 · 0 评论 -
ResNeXt网络结构解析
按计划是继续来解读yolo4的论文,但是yolo4的论文基本上是一个大杂烩,就是把各种各样的技术做了一个对比和综合,里面涉及到很多基础网络和tricks,有点类似于把这些基础网络和tricks做了一个乐高积木的拼接。其实我个人觉得yolo4的一个重要作用就是把目标检测总结成了若干个阶段,更有结构化一点,这个我们等到了说yolo4的时候再细说。原创 2023-10-24 11:53:37 · 1907 阅读 · 0 评论 -
目标检测网络系列——YOLOV3
YOLO V3的论文篇幅比较短,感觉比较随意,和一般论文最大的区别就是把对比实验去掉了,在摘要和论文的最后说到YOLO3是一个好的目标检测网络就没有了。但是YOLO3确实是一个非常牛逼的网络,以至于YOLO3的官网上的代码都是从yolo3开始,前面两个都没有了。接下来就讲讲这个yolo3,论文中对改进点都一笔带过,我们这里就稍微的展开一下,把背后的逻辑梳理一下。原创 2023-10-17 11:31:56 · 2512 阅读 · 0 评论 -
目标检测网络系列——YOLO V2
在这一小节开头就提到了,在YOLO v1中,是直接预测了bounding box的,而在Faster RCNN中,是通过RPN中,再配合精心挑选的(hand-picked)的anchor来预测了bounding box的offset,然后再通过回归进行调整的。然后再根据上面的条件概率,从WordTree的顶端开始往下搜索,每次都选择子节点中概率最大的路径,然后再通过条件概率的乘积往下连乘,直到碰到某个阈值,也就是连乘出来的概率值低于阈值了,那么类别就是这个节点的类别了。也就是说所有的类别之间是互斥的。原创 2023-10-11 11:27:41 · 2148 阅读 · 0 评论 -
目标检测网络系列——YOLO V1
上图中,一张图像中的一个bounding box区域(这里和RCNN不一样,不是通过某种候选框方法选出来的,后面会说到)经过一个神经网络后,直接讲这个box区域的位置信息和类型信息的预测一起通过回归的方法计算出来(在深度网络里,一般来说,回归方法就是全连接层。在论文的第三章,比较了YOLO,DPM,RCNN系列,Deep MultiBox,OverFeat,MultiGrasp等各种目标检测结构的异同,这里不细说,回头有机会单独写一些DPM和OverFeat,这两个结构在目标检测的文章中出现的次数比较多。原创 2023-09-30 21:10:14 · 2399 阅读 · 0 评论 -
目标检测网络系列——Faster-RCNN(实验部分)
这一篇来说说论文中的对比实验部分。原创 2023-09-26 17:15:41 · 2363 阅读 · 0 评论 -
目标检测网络系列——Faster-RCNN(原理部分)
前面三篇文章已经把RCNN系列的前两个网络说了一下。这篇文章就来说一说RCNN的第三个网络:Faster-RCNN,是RCNN中的一个里程碑式的网络。原创 2023-09-24 10:29:20 · 1951 阅读 · 0 评论 -
目标检测网络之Fast-RCNN
RCNN的速度确实很慢,一张图像的推理时间要好几秒,SPP在RCNN的基础上做了一个改动,也就是不是所有的候选框都需要通过卷积层,而是整张图像经过卷积层后形成特征图,然后通过SS方法挑选出的候选框通过一种方法直接映射到特征图上,形成候选框的特征图进入后面的SPP和FC层,详情可以参考我这个专栏中的RCNN的文章。论文中提到了,当使用。那么论文中就提到,这样每个训练数据都是来自于不同的图像,所以会导致低效的训练,是因为要保存这么多的图像及其RoI,需要使用很多的存储空间,特别是内存空间。原创 2023-09-18 10:08:08 · 2275 阅读 · 0 评论 -
SPPNet:金字塔网络
SPP结构是由提出ResNet的何大神在论文《Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition》中提出的,主要就是可以解决CNN输入需要固定尺寸的问题,而且在分类和目标检测中都可以得到比较好的效果。原创 2023-09-12 17:54:26 · 2037 阅读 · 0 评论 -
目标检测网络系列之R-CNN
之前已经写了好几篇文章解析了一些经典的深度网络结构,从经典的LeNet,AlexNet到VGG,GoogleNet(Inception),再到大名鼎鼎的ResNet,后续的随机网络,DenseNet等。还有就是介绍了经典的两种注意力机制:空间注意力机制STN和通道注意力机制SENet。本来想继续讲CBAM综合注意力机制的,但是发现后面基本上都会提到图像识别三大任务的另外两个任务:目标检测和分割。所以就先把CBAM放一放,来说一说另外的一个图像识别任务:目标检测。原创 2023-09-07 14:54:24 · 2428 阅读 · 2 评论 -
Spatial Transformer Networks-空间注意力机制
在上一篇讲SENet的文章中,里面提到的Squeeze-excitation block引入的技术可以被称作是通道注意力机制:channel attention。既然提到了注意力机制,那么这几篇就来说说注意力机制的事情,SENet是在2019年提出的,在2015年的时候,就有一篇论文提出了另一个维度的注意力机制:空间注意力机制,论文为:Spatial Transformer Networks。原创 2023-09-01 14:22:11 · 2055 阅读 · 0 评论 -
SENet网络分析
Squuze-and-Excitation网络是针对表达能力的改造,和前面两篇不一样,提出的是一个叫SE block的结构。这个结构可以灵活的集成到之前的网络结构中去,比如VGG,RESNet等,也可以自己组成一个自己的SENet。更关键的是,这个SE block提到了深度学习中一个很重要的词:注意力机制。我们先简单说说注意力机制。原创 2023-08-18 18:21:49 · 1920 阅读 · 0 评论 -
Deep Networks with Stochastic Depth - 动态随机网络
这个残差网络结构非常的经典,所以有不少后续的研究都是基于这个网络的改进,这一篇就来说一说其中的一个经典改进:随机动态网络——Stochastic Depth。论文:Deep Networks with Stochastic Depth论文提供了基于lua的代码:https://github.com/yueatsprograms/Stochastic_Depth。原创 2023-08-08 12:13:51 · 2059 阅读 · 0 评论 -
ResNet-残差网络二
上一篇讲了 ResNet 论文中的第一篇:Deep Residual Learning for Image Recognition,主要是介绍了残差网络解决了网络随着深度的增加而带来的退化问题;介绍了残差的概念及两种残差结构;最后通过丰富的实验来证明残差结构对增加网络深度,增强表达能力的准确率有足够的优化作用,而且不会带来网络退化的问题。这一篇来说说 ResNet 论文的第二篇:Identity Mappings in Deep Residual Networks。原创 2023-08-04 17:57:04 · 1976 阅读 · 0 评论 -
ResNet-残差网络一
其中第一篇主要讲的是残差网络模块,简单介绍了下基本逻辑。然后就是引入到VGG-19网络中去,来验证残差网络的先进性。第二篇就是深入讨论了这个残差背后的逻辑,并进一步优化了这个残差结构。原创 2023-08-03 14:55:04 · 1944 阅读 · 0 评论 -
GoogleLeNet Inception V2 & V3
前一篇的Batch Normalization只是Inception V2,V3的一个前菜。真正提出Inception V2,V3的概念的是在论文Rethinking the Inception Architecture for Computer Vision中,这篇论文中综合了Batch Normalization的概念,然后提出了自己的一些改进。通过不同的组合,形成了Inception V2,V3的概念。原创 2023-08-01 11:58:54 · 1881 阅读 · 0 评论 -
经典CNN网络论文总结-LeNet/AlexNet/VGG/R-CNN
在VGG中的一个核心设计原则就是:小的卷积核 + 较大的网络深度,根据实验结果,效果比大的卷积核 + 较浅的网络深度要好。原创 2023-07-20 23:17:01 · 340 阅读 · 0 评论 -
pytorch构建深度网络的基本概念——随机梯度下降
深度学习中权重更新的经典方法:随机梯度下降,介绍什么是梯度,为什么是下降,又为什么是随机原创 2023-07-13 21:56:10 · 590 阅读 · 0 评论 -
构建一个pytorch手写网络的基本流程
在pytorch框架里,定义自己的网络框架一般分为两个部分,网络结构和推理过程。上面已经简单说了没一个组件层的作用,直接把这些层拼到一起。首先把一个三通道图像进入一个卷积层,输出一个32个通道的3维向量然后把这个卷积层的负值去掉。重复再做一次卷积,扩展到64个通道,并去掉负值做一次池化,或者说最大降采样做一次降维,降到2维,因为进入模型的张量第一维是batchSize,图像数据到第二维的Channel就行了。原创 2023-04-23 12:12:51 · 340 阅读 · 0 评论