CNN网络进化:AlexNet-》VGG->GoogleNet->ResNet,深度8-》19-》22-》152
GoogleNet:Lsplit-》transform-》merge,分治思想
ResNeXt:在ResNet上增加cardinality基数,即通道数,残差~缓解梯度消失问题
Bag of words:视觉词汇组成一组一组的

ground truth:任何标签都可以称为~
鞍点 (saddle point)的数学含义是: 目标函数在此点上的梯度(一阶导数)值为 0, 但从该点出发的一个方向是函数的极大值点,而在另一个方向是函数的极小值点。判断鞍点的一个充分条件是:函数在一阶导数为零处(驻点)的黑塞矩阵为不定矩阵。

卷积核/滤波器的个数~通道数

Relu:解决梯度消失,深度网络能进行优化的关键

卷积层+激活函数:激活函数类似于人眼-达到一定阈值才会被激活,传到下一次;增加非线性-》分段线性,拟合所有函数

卷积步长大于1:特征降维作用

池化:特征融合,尺寸降维

全连接层:等效全局卷积/全尺寸卷积,卷积核大小维上一层输出尺寸即W*H*C,卷积核个数维最终分类个数即K;去除空间信息

工程tricks:

  图像像素中心化~rgb各自减通道均值

  防止过拟合:数据增强;dropout;weigth decay权重衰减(L2正则)

Alexnet:新技术~Relu;dropout;max pooling

  注意双gpu交互:卷积层一中特征通道96在2中显卡评分-》48

          三中通道合并,即跨显卡做卷积

  LRN局部响应归一化~模拟神经元侧抑制机制,某位置跨通道方向上的归一化~超参是实验定出的

VGG:卷积核7*7拆解为3个3*3

GoogleNet:进化InceptionV1到V4
   核心组件:Inception模块,先分支再合并

    inception3a:128=1*1,3*3,3*3,pooling四个的输出值和~即串接

    卷积分支中1*1先放前面,pooling中1*1放在后面~先pooling特征合并保证原始信息量再降维

      Split-Merge:四个不同卷积/池化~多尺度,宽度
      Bottleneck:NiN的1*1卷积来解决多尺度带来的高额参数,特征降维
   
  Inception V1:两大贡献(1)取消全连接:global average pooling+softmax可以代替,对应主分类器取消全连接层增加两个辅助分类器,辅助是有全连接的  (2)辅助

  InceptionV2:核心组件

      (1)批归一化:解决相关偏移问题~内部神经元的数据分布发生变化;本质是白化即每一层的输出都规范化到0,1的正态分布,取代dropout,允许较高学习率;

        详细:在batch范围内,对每个特征通道分别进行归一化~每个batch如32个图片,每个图片k通道,那么每个通道对应32个值~长*宽*1*batchsize的均值和标准差来归一化;注意~每张图片的每个通道的矩阵表示:长*宽*1

        位置:卷积层和激活层之间,归一化在非线性变换之前

        因为不同特征的均值和方差本来就是有相对差异 的,强制化为0,1的正态分布是有问题的,比如有的特征是在均值1附近的-》尺度变换和偏移,即scale和shift即尺度和偏移即乘子和偏置要学习出来即需训练,配对使用,每个通道都有一对共k组,乘以scale加上shift后的y才是传入后面的

        训练中每个batch中的k组均值和标准差都会被保存,测试时存储的所有batch的k组均值和标准差会分别求平均,使用k组平均

       (2)5*5卷积核拆为3*3

 Inception3:

    (1)非对称卷积:N*N分解成1*N-》N*1

      (2) 低层处低分辨35*35上将5*5拆为两个3*3;分辨率17*17上火将两个N*N分别拆了;分辨率8*8上并行操作做分解    why好--  工程实践经验

       (3)高效的降尺寸Grid size :

      现象:25*25*320先pooling后Incepion~有表达瓶颈计算量小,因为pooling后hi是低维的17*17*320,inception后17*17*640;25*25*320先inception后pooling~无表达瓶颈但是计算量大,因为inceptin后时25*25*640,pooiling后维17*17*640

      目的:避免表达瓶颈增加特征通道

      操作:两个并行分支,卷积分支+池化分支,串接分支结果

        卷积分支1:1*1特征降维减少计算量-》3*3卷积步长1-》3*3卷积步长2

        卷积分支2:1*1卷积-》3*3步长2

        池化:步长2,即池化照常做

        卷积分支1出160,卷积分支2出160,池化出320,串接为640的特征通道数,卷积的串接补充了信息

   (4)取消浅层辅助分类器。深层辅助分类器只在训练后期有用-工程经验

  Inception4:Inception模块加上了resnet的直连

ResNet:核心组件为skip/shortcut connection

  目标映射=残差映射+identity即H=F+x,求导,该模块倒数永远大于1

  卷积核基本都为3*3,池化层用卷积步长2代替~淡紫和黄色之间,步长为2使得尺寸降维度通道升维,使用BN;取消了全连接层,max池化,dropout

  基础网络时VGG

  当H是最优映射接近identity时,很容易捕捉到小的扰动

  更深层用Bootleneck优化残差映射网络

  

    

    

  

lesson4-图像分类-小象cv的更多相关文章

  1. lesson8-图像问答-小象cv

    QA即图像问答:覆盖最全面的AI,ai完备性 动态模型:不同任务需要不同模型 or 不同细分任务需要不同模型参数 数据集: 1)VQA,显示图片+抽象场景:每个问题给10个不同答案:含有无图片答案(考 ...

  2. lesson7-图像描述 -小象cv

    2018-04-25朴素rcnn - 梯度消失严重LSTM长短时记忆模型,有效捕捉长时记忆包含四个神经元组:一个记忆神经元三个控制门神经元:输入.忘记.输出 注意:输入调制门.输出调制门 3个输入:前 ...

  3. lesson5-图像检测-小象cv

    R-CNN: 2014,cnn为Alexnet 训练流程: 1)在imagenet上对cnn模型pre-train 2)使用所有ss生成区域对1)进行fine-tune ~softmax改为21维度 ...

  4. resNet代码-小象/cv

    C:\yyy\ml\dengsong\ChinaHadoop\ChinaHadoop_C4-master\ChinaHadoop_C4-master\C4_ResNet_TF http://blog. ...

  5. OpenCV探索之路(二十五):制作简易的图像标注小工具

    搞图像深度学习的童鞋一定碰过图像数据标注的东西,当我们训练网络时需要训练集数据,但在网上又没有找到自己想要的数据集,这时候就考虑自己制作自己的数据集了,这时就需要对图像进行标注.图像标注是件很枯燥又很 ...

  6. Android开发学习—— ContentProvider内容提供者

    * 应用的数据库是不允许其他应用访问的* 内容提供者的作用就是让别的应用访问到你的数据库.把私有数据暴露给其他应用,通常,是把私有数据库的数据暴露给其他应用. Uri:包含一个具有一定格式的字符串的对 ...

  7. Android基础总结(十)

    内容提供者(掌握) 应用的数据库是不允许其他应用访问的 内容提供者的作用就是让别的应用访问到你的私有数据 自定义内容提供者,继承ContentProvider类,重写增删改查方法,在方法中写增删改查数 ...

  8. openCV C++ 代码笔记

    代码片段1 cv_contourMask_step_tmp=cv_contourMask.clone(); cv::Mat maskImage; UIImageToMat(pathimg, maskI ...

  9. Android应用开发基础之九:内容提供者(ContentProvider)

    内容提供者 应用的数据库是不允许其他应用访问的 内容提供者的作用:就是让别的应用访问到你的数据库 自定义内容提供者,继承ContentProvider类,重写增删改查方法,在方法中写增删改查数据库的代 ...

随机推荐

  1. 解决libvlc_media_player_stop时死锁的方法

    转自:http://www.jiazi.cn/blog/?id=56 扩散该解决方法 最近需要使用VLC控件来做一个简单的流媒体播放器,在实施过程中,发现在调用libvlc_media_player_ ...

  2. py QScrollArea

    # -*- coding: utf-8 -*-import jsonimport loggingimport sysimport requestsfrom PyQt5 import QtWidgets ...

  3. mysql sql_mode=only_full_group_by问题?

    视图查询的时候本地数据库报错: 解决办法: 1.查看sql_mode select @@global.sql_mode STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_Z ...

  4. react router @4 和 vue路由 详解(二)react-router @4用法

    完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 2.react-router @4用法 a.大概目录      不需要像vue那样麻烦的 ...

  5. SRAM、DRAM、SDRAM、DDR、DDR2、DDR3

    RAM可分为SRAM(Static RAM/静态存储器)和DRAM(Dynamic RAM/动态存储器).SRAM是利用双稳态触发器来保存信息的,只要不掉电,信息是不会丢失的.SRAM存储元件所用MO ...

  6. 《Python》网络编程基础

    计算机网络的发展及基础网络概念 问题:网络到底是什么?计算机之间是如何通信的? 早期 : 联机 以太网 : 局域网与交换机 广播 主机之间“一对所有”的通讯模式,网络对其中每一台主机发出的信号都进行无 ...

  7. 单元测试UI

    cnpm install -g --save mocha cnpm install  -g --save chai cnpm install -g --save istanbul const {sho ...

  8. 异步设备IO OVERLAPPED结构(设备内核对象 事件内核对象 可提醒IO)

    同步IO是指:线程在发起IO请求后会被挂起,IO完成后继续执行. 异步IO是指:线程发起IO请求后并不会挂起而是继续执行.IO完毕后会得到设备驱动程序的通知. 一.异步准备与OVERLAPPED结构 ...

  9. POJ - 3252 A - Round Numbers

    The cows, as you know, have no fingers or thumbs and thus are unable to play Scissors, Paper, Stone' ...

  10. 杭电多校第四场 E Matrix from Arrays

    Problem E. Matrix from Arrays Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 262144/262144 ...