国科大高级人工智能+prml4-CNN

文章目录

  • CNN
    • 卷积
    • padding
    • pooling
    • BP
    • 其他CNN
    • ResNets残差网络——
    • 图像数据应用

CNN

  • Hebb学习律(无监督
    • 如果两个神经元在同一时刻被激发,则他们之间的联系应该被强化
    • 对神经元的重复刺激,使得神经元之间的突触强度增加
  • Delta学习律(有监督
  • 弥补之前的DNN的缺陷
    • 图大,DNN的参数太多
  • 基本思想—>得到了某种程度的位移、尺度、形变不变性
    • 局部感知野:局部连接(稀疏连接)-(减少参数数量)
      • 非全连接
      • 图:近的关联性强,远的弱
      • 减少了权值数目
    • 参数共享(减少参数数量)
      • 一个卷积核用在图的任何地方
      • 一个卷积核可以检测同一种特征
      • 利用了平移不变性
    • 不是逐层训练的
  • 优点
    • 到了某种程度的位移、尺度、形变不变性
    • 层间联系和空域信息的紧密的关系,使其适于图像处理和理解
    • 避免了显示特征抽取,隐式抽取
      • 特征抽取和模式分类同时进行,并同时在训练中产生
      • 减小参数,使得网络更简单,适应性更强
  • 如何计算以解决语义鸿沟?
    • 特异性(局部性、方向和尺度选择性
    • 不变形(对小的位置、方向、尺度变化有容忍
    • 层级性:从简单模式到复杂模式
    • 非线性:从输入x-y是复杂的非线性映射
  • CNN
    • 多层(层级性
    • 卷积:特异性
    • pooling:不变性
      • 旋转不变性
      • 平移不变性
    • 激活函数:非线性
    • 功能:
      • 不同卷积核检测不同特征

卷积

  • 卷积计算(局部链接
    • 一维
      • 核m=[1,1,1]
      • 数据:x=[1,2,3,4,5,6]
      • 步长1
      • 结果c=[1·1+1·2+1·3,2·1+3·1+4·1,。。。,4·1+5·1+6·1]
    • 二维
      • 计算:m(是m1*m2的)与x对应相乘后相加
    • 三维
      • 步长1,数据(a1,a2,a3),卷积核(f,f,f)
      • 结果大小(a1-f+1,a2-f+1,a3-f+1)
    • 一个卷积核对一张图能够生成1张图
    • 可以多卷积核,生成多张图(可看做图的不同通道)
    • 特别的卷积核——能检测到的输出高
      • 垂直边缘检测的卷积核
        [ 1 0 − 1 1 0 − 1 1 0 − 1 ] \left[ \begin{matrix} 1 &0 &-1\\1 &0 &-1\\1 &0 &-1\end{matrix} \right] 111000111
      • 也有可识别特定曲线的卷积核(对特定图像输出高,其他低
        国科大高级人工智能+prml4-CNN_第1张图片

padding

  • padding
    • 卷积会让图变小
    • 边缘只计算了一次(会丢失边缘信息)
    • 目的:使得卷积不让图变小
    • 做法:边缘补0
      • padding=p
      • 上、下、左、右各补p行/列
      • 结果(n+2p,n+2p)
    • 尺寸计算
      • 图:(n,n)
      • filter(卷积核):f*f
      • padding:p
      • stride步长:s
      • 结果: ( n + 2 p − f s + 1 , n + 2 p − f s + 1 ) (\frac{n+2p-f}{s}+1,\frac{n+2p-f}{s}+1) (sn+2pf+1,sn+2pf+1)
  • 单层卷积网络的参数
    • g(conv(x)+b)
    • l-层数
      • f l , p l , s l f^l,p^l,s^l fl,pl,sl
      • 输入: n c l − 1 个 ( n H l − 1 , n W l − 1 ) 图 n_c^{l-1}个(n_H^{l-1},n_W^{l-1})图 ncl1nHl1,nWl1
      • 输出: n c l 个 ( n H l , n W l ) 图 n_c^{l}个(n_H^{l},n_W^{l})图 nclnHl,nWl
        • $ n_H{l}=n_W{l}=\frac{n{l-1}+2p{l}-f{l}}{s{l}}+1$
      • 卷积核的数目 n c l − 1 个 ( f l , f l ) n_c^{l-1}个(f^l,f^l) ncl1(flfl)
      • 权值:$n_c{l-1}*(fl*fl)*n_c{l} $
      • b: n c l n_c^{l} ncl

pooling

  • pooling:池化
    • 子采样(下采样+降维)
      • max(多用这个,反向传播残差无约简
      • ave( 反向传播残差会约简1
      • L2
    • pooling(f,f),则s=f——无重叠
    • 池化层无padding,padding=0
    • 池化后尺寸 ( n − f s + 1 , n − f s + 1 ) (\frac{n-f}{s}+1,\frac{n-f}{s}+1) (snf+1,snf+1),同卷积
计算 移动 padding …尺寸改变… 反向传播
卷积 对应相乘后相加 按步长s移动,可能重叠,也可能不重叠 padding=p,上下左右各补p ( n + 2 p − f s + 1 , n + 2 p − f s + 1 ) (\frac{n+2p-f}{s}+1,\frac{n+2p-f}{s}+1) (sn+2pf+1,sn+2pf+1) 卷积核上下左右翻转后再卷积(反卷积
池化 max,ave,L2 不重叠的移动,s=f p=0,无padding ( n − f s + 1 , n − f s + 1 ) (\frac{n-f}{s}+1,\frac{n-f}{s}+1) (snf+1,snf+1) ave:各项填充ave/f;max:一个max,其他0

BP

  • CNN结构
    • padding-conv(g(conv+b))-pooling
    • 多层神经网络
      • 每层多个二维面
      • 每个面有多个独立神经元
  • 训练
    • 监督
    • 代价函数
      • 最小化平方误差(MSE
      • 最小化相对熵(Relative entropy
    • BP
      • 前向
      • 后向
        • 输出层:链式法则
        • 池化层:反池化(残差上采样
        • 卷积层:反卷积
          国科大高级人工智能+prml4-CNN_第2张图片
          1个图A–>2个核–>2个图(C1,C2)
  • 反卷积(相加):
    • C1–>核1–>A1
    • C2–>核2–>A2
    • A<–A1+A2

其他CNN

  • LeNet-5文字识别系统
    • 输出层全连接
    • 无边缘
    • sigmoid—>梯度消失
    • 平均池化—>信息约简
    • 准确度高
  • 改进CNN
    • 用relu/tanh
      • 加速收敛,>0,为1,梯度不会消失(sigmoid会
      • 稀疏化(<0.为0)
    • dropout
      • 隐藏层以一定概率清0
      • 可以将dropout看做是模型平均的一种
    • 局部归一化
    • max池化(不会残差约简)
  • ImageNet CNN
    • max pooling
    • relu
    • dropout
    • norm
    • conv-relu-maxpool-norm
  • VGG CNN(16层
    • conv 3*3,s=1
    • max-pool 2*2,s=2
    • same-padding:边缘填充
  • googleNet—very deep
    • 自动学习超参数
    • inception
    • 把所有卷积核加入到网络中,让网络自适应地决定使用哪个卷积核
    • 加一层1·1的conv,减少通道
    • 1000层也可以训练

ResNets残差网络——

  • 可以保证收敛性
    • 因为一般神经网络,网络层数增加,会反而上升(错误率)
    • 残差网络不会,他至少不会变差
  • why work?
    • 因为残差网络容易学习恒等式函数,随着网络加深,至少不会让网络变差
    • 对网络权重的波动变化更敏感
      国科大高级人工智能+prml4-CNN_第3张图片
      国科大高级人工智能+prml4-CNN_第4张图片

图像数据应用

  • 图像分类
  • 图像检测(多个目标也检测出来)
  • 目标定位
    • 图像-cnn
      • softmax 是否有
      • 如果有:在哪里(返回坐标,长宽)
    • loss=平方损失函数MSE
  • 特征点检测
  • 卷积的滑动窗口实现
  • RCNN
    • 先找到2000候选框(传统图像分割方法)
    • 再分
    • 更准确
    • fast RCNN
      • 整体卷积,将候选框映射到卷积结果上,在分类
    • faster rcnn
      • 用卷积找候选框
  • 人脸识别
    • 人脸验证:是否是某个人
    • 人脸识别:是否是系统中的某个人
    • 实际:系统中一个人只有一张照片,新来一张照片与所有系统中照片对比,看是否有相近的
    • Siamese网络
      • 不用softmax
      • 将每个人映射成一个向量
      • 判断是否是一个人,只需要求向量差的范数即可
    • 二分类:
      • 向量(网络得到)–一层逻辑回归:连个向量是否一致
    • triplet损失
      国科大高级人工智能+prml4-CNN_第5张图片

你可能感兴趣的:(高级人工智能,国科大模式识别与机器学习,卷积,神经网络)