• 【深度学习】CNN的发展历史、各项重要技术


    发展历程:

    leNet - AlexNet - VGG / GoogleNet(Inception) - resNet - denseNet - 剪枝

    NiN / MSRANet / highwayNet / 

    【leNet】1998

    经典的5层网络:( 卷积 + tanh + 池化) * 2  + 全连接 120 + 全连接 84 + outPut 10 (MNIST)

    首次使用卷积代替全连接。卷积:pattern匹配 、局部连接、参数共享、平移等变

    引入了最大池化提取特征 2x2 ,少量平移不变性。

    【AlexNet】2012 ImageNet

    网络更深:5个卷积层 + 3个全连接层

    四个网络重点:

    1、使用非饱和神经元relu,代替sigmoid,速度快

    2、双GPU

    3、添加了归一化LRN(local response normalization,局部相应归一化)层,提高泛化能力。

    4、pooling overlap

    过拟合解决:

    增强数据:反射,旋转

    加入dropout

    将图像分为上下两部分,全连接合并在一起

    【VGG】 2014 ImageNet

    关键点:

    用更深的网络表达特征,

    提出3x3的卷积核,大卷积核可以通过小的+多层实现,非线性描述更多,参数更少。

    提出1x1的卷积核,升维、降维、通道之间信息交换、增加非线性。

    LRN / overlapPooling没用,

    多尺度:裁剪到一个随机大小,再随机取其中的 224 x 224 的照片

    参数爆炸多,大概有134m辣么多。  奇怪的是只用了74个epoch就训练好了,比AlexNet的90个还要少。

    【GoogLeNet】2014 ImageNet 分类

    V1

    引入Inception,(1*1, 3*3, 5*5, 3*3maxPooling), 加入了好多个inception层,同时使用了不同的卷积核,从加深到加宽。

    用GlobalAvgPool去代替全连接层,最终留下了一层方便做finetune的全连接层。

    加了两个softmax分支,1是避免梯度消失(太深了),2是搞一个简单模型用于模型融合。

    V2

    用两个3x3代替了5x5

    首次使用BN进行了正则化。

    V3

    使用 Factorization into small convolutions 的思想,将 7x7 的搞成 1x7 的和 7x1 的。

    降低了参数量,能处理更加丰富的空间特征。

    【resNet】

    不是过拟合问题,不是梯度消失 、 梯度爆炸的问题: 之前的做法 BN, Relu。

    主要解决的是神经网络退化的问题。

    网络深度虽然有,但是实际表达不出来。

    1、我们甚至不能很好的表达linear, relu会损失一些信息,不能从输出反推输入。那就直接加入linear

    2、在某些层秩很小,越深就越难改变。

    3、层之间的相关性随着层数增加持续衰减 甚至指数衰减。

    空间  、 深度不一致问题: 空间不一致 加个weight / 深度不一致 加个1x1卷积核

    使用global avg pooling代替全连接。

     【denseNet】

    将所有的 input 做concat, 然后经过Hl函数(BN relu 3x3卷积)

    后续发展:

    在denseNet上面剪枝。 

    个人思考:

    CNN是在空间上共享参数 、 RNN是在时间上共享参数.

    CNN通道数越来越多,单个feature map越来越小。

    共享参数的条件: 结构相似,或者说是平移不变性。

    局部连接 --> 一个点和附近的比较相关,和比较远的不太相关

    不同size的卷积核 --> 不同大小的pattern

    平移不变性 --> 金融数据一定没有, 要不要搞个weight

  • 相关阅读:
    vue-router过渡动画
    vue-router重定向
    vue-router url传值
    vue-router多个组件模板放入同一个页面中
    vue-router参数
    vue-router子路由
    vue-router入门
    easyui中parser的简单用法
    webpost中常用的ContentType
    ASP.NET MVC 表单提交多层子级实体集合数据到控制器中
  • 原文地址:https://www.cnblogs.com/yesuuu/p/12766180.html
Copyright © 2020-2023  润新知