仓库管理软件源码(含数据库脚本)

基础搭建,适合学习winform新手 使用到面向对象开发,使用vs2012 sql 开发。

文件:590m.com/f/25127180-499032030-ceeea4(访问密码:551685)

以下内容无关:

——————————————-分割线———————————————

在计算机视觉中存在很多的专业术语,如先验知识,语义信息,embedding,head,neck等。这些术语的解释无法直接在网上搜到,也没有在哪一篇论文中定义它们的概念和意义,因此,对于第一次听到这些术语的读者来说会非常的困惑。

此外,对于还没有建立计算机视觉知识体系的读者来说,也很难理解特征空间,fine-tuning、预训练、池化等方面的内容。

本文介绍了很多读者在其它地方不可能了解的内容,通过这些内容相信读者能更深层次地理解计算机视觉,建立起基本的计算机视觉知识体系。

关注公众号CV技术指南,及时获取更多计算机视觉技术总结文章。

backbone、head、neck和fine-tune
以一个图像分类的卷积神经网络为例,网络分成两部分,前部分是由卷积层、归一化层、激活层、池化层堆叠的,输入图像在经过若干层卷积、归一化层、激活层和池化层的堆叠后进入全连接层,经过几次全连接后输出每个类别的概率值。

在这里,前面卷积层、归一化层、激活层和池化层的堆叠部分属于backbone。意思是神经网络的躯干部分,这部分也称为特征提取网络。

后面的全连接层的堆叠属于head。意思是神经网络的头部,实现模型任务的预测,称为predictor head,这部分网络也称为分类网络。

点击并拖拽以移动/p>

再以目标检测中的YOLO_V4中的图为例。

如上图所示,在backbone后,常构建特征金字塔,在特征金字塔部分做一些处理,如多尺度融合,再将特征金字塔的输出进行预测。因此,特征金字塔这部分放在backbone和head之间,称为neck(脖子),这里的Dense Prediction即为head。

关于backbone即常见的经典网络,如VGG,ResNet,MobileNet,ShuffleNet,DenseNet等,当某个模型提到backbone使用的是VGG,即表示使用的是VGG的backbone部分,而不包括VGG的head。

这里解释一下为何是这样。神经网络有多种解释,其中一种解释如下,神经网络被认为是在提取特征,计算机视觉的传统方法就是人为地设定某些特征,再进行分类。如HOG特征,LBP特征,在提取完特征后,使用分类器对这些特征进行分类,如SVM分类器。

这里的backbone部分则认为是一个特征提取网络,而head部分则被认为是分类网络,因此特征提取的部分可以共享,它们的本质都是在提取图片的特征,而分类网络则对应到具体的任务,如分类猫狗,分类网络需要从提取的特征中分成猫狗两类。

这段话同时也解释了fine-tune的原理,使用一个预训练好的backbone,针对你自己的任务,自己搭建相应的分类网络,在训练时冻结backbone的参数,只训练分类网络的参数。这是因为预训练好的backbone已经具备很好的特征提取能力,因此对于你自己的图像,网络只需要学习如何将提取后的特征按你定义的类别进行分类。

Preprocess和Postprocess
Preprocess为预处理,图像在送入神经网络之前,需要进行一定的处理。

通常的处理是使用opencv中的resize将所有图像缩放到同一尺寸,并根据数据集的标注设置网络的label。此外,如果有必要的话,还会进行数据增强,如调整图像饱和度,镜像,加噪声,随机掩码等方式。

预处理的必要性:大部分神经网络在backbone后将数据进行flatten(即将四维的张量变成二维)的操作,再进行全连接,此时全连接层输入的神经元个数即为flatten后的长度,若输入的图像的尺寸不一样,则全连接层输入的神经元个数无法一致,会报错。此外,对于没有全连接层,其它类似的处理部分(除少数外),也会要求backbone后的输出大小一致。Postprocess指的是对网络预测的结果进行后处理,对于普通的分类网络不需要后处理,但对于目标检测、语义分割这样的任务,需要对网络的输出进行处理,将预测的结果通过图像进行可视化。

例如目标检测中的YOLO,其输出一个7x7x30的张量,输出98个预测框,但实际一张图片没这么的目标,则需要进行NMS这样的处理来去除一些不合理的预测框,且我们无法直接看待这些预测框是否准确,就需要将其在原图像上显示出来,以直观感受预测的效果如何。

先验知识
在《论文创新的常见思路总结》中我提到,关于特定的类的检测,我们可以针对这个类别添加很多先验知识,在《数据增强方法总结》中我提到,数据增强的本质是人为地引入人视觉上的先验知识。在《CNN可视化技术总结(一)特征图可视化》中我提到,所谓改进网络都是人的主观改进,这里人的主观即先验知识。这里的先验知识指的是人对于如何识别一张图像或如何识别一个类而关注的内容,引入先验知识是指设计一些东西让网络也关注这些内容。例如特征金字塔中的多尺度融合,人认为大目标应该在低分辨率检测、小目标在高分辨率检测,由此网络在特征金字塔的不同层预测不同大小的目标。人又认为如果大目标在低分辨率检测,小目标在高分辨率检测,则在低分辨率时,小目标还存在,在这里被当成了背景,同理在高分辨率时大目标被当成了背景,这样不合理,又提出了ASFF处理方式,提升了5-10个百分点。

《特征金字塔技术总结》

例如人在关注一个事物时,会自动忽略眼睛看到的其它东西,由此提出了注意力机制。例如即便只有上半身,人还是能认出自己熟悉的人,由此提出随机遮挡等数据增强方式,让网络在有遮挡的情况下也能正确识别。

例如人是如何识别打篮球这一行为的,人根据篮球、投篮手势、身体跳跃、篮球运动等一系列的组合识别,因此如何让网络更好地关注这些特征提出了Non-Local。

文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树数据库组成31292 人正在系统学习中

来源:我信张i

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年5月16日
下一篇 2021年5月16日

相关推荐