前馈神经网络

MLP:multi-layer percetron

  • Feed Forward and Back error propagation
  • 解决异或划分问题

缺点:

  1. 容易过拟合
  2. 容易陷入局部最优化
  3. 梯度消失
  4. 计算资源不充分,训练集小
  • DNN 深一点效果好,宽一点容易理解,发现潜在规律

  • 前向计算公式:

梯度消失与爆炸

在这里插入图片描述

通用逼近定理

在这里插入图片描述
根据通用近似定理,对于具有线性输出层和至少一个使用“挤压”性质的激活函数的隐藏层组成的前馈神经网络

  • 只要其隐藏层神经元的数量足够,它可以以任意的精度来近似任何从一个定义在实数空间中的有界闭集函数。

  • 隐含层的数量不是越多越好,层数和特征的个数太多,会造成优化的难度和出现过拟合的现象
  • 只需要输入最基本的特征x1, x2, 只要给予足够多层的神经网络和神经元,神经网络会自己组合出最有用的特征

tensorflow实现

CNN的卷积BP算法

AlexNet

  • 修改点:Dropout、Regularization、ReLu激活函数、最大池化法
  • 特点:池化窗口更大,跟改为最大池化;更大的卷积核(三个额外的卷积核),更大的步长,由于图像尺寸增大,输出通道更多
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

LRN

局部响应归一化层(Local Response Normalization)
为什么要引入LRN层?

  • 首先要引入一个神经生物学的概念:侧抑制(lateral inhibitio),即指被激活的神经元抑制相邻的神经元。
  • 归一化(normaliazation)的目的就是“抑制”,LRN就是借鉴这种侧抑制来实现局部抑制,尤其是我们使用RELU的时候,这种“侧抑制”很有效 ,因而在alexnet里使用有较好的效果。

归一化有什么好处?

  1. 归一化有助于快速收敛
  2. 对局部神经元的活动创建竞争机制,使得其中响应比较大的值变得相对更大,并抑制其他反馈较小的神经元,增强了模型的泛化能力。

VGG

  • 比AlexNet更深入更大,以获得更强的特征
    • 更多稠密层,更多卷积层(更深更窄更好),分组成块(VGG块重复)

NIN

  • 深度可分离卷积,先通道分离,再逐点卷积,结合起来
    • Xception的核心思想是使用深度可分离卷积来替代传统的卷积操作。深度可分离卷积将卷积操作分为两个步骤:深度卷积和逐点卷积
    • 首先,使用深度卷积在每个输入通道上进行卷积操作,
    • 然后使用逐点卷积将不同通道之间的信息进行整合。这种方法可以大大减少模型参数数量和计算量,同时提高模型的准确性和泛化能力。
      在这里插入图片描述
      在这里插入图片描述

SE-Net

SE-Net的核心思想是使用Squeeze-and-Excitation(S-E)模块来增强卷积神经网络的表示能力。
在传统的卷积神经网络中,每个卷积层都会学习一些特征,但是这些特征并不是同等重要的,有些特征对于分类任务更加重要,有些特征则不那么重要。

  • 因此,SE-Net提出了S-E模块来自适应地学习每个通道的权重,从而增强网络的表示能力。
    在这里插入图片描述
    S-E模块包括两个步骤:squeeze和excitation。
  • 在squeeze步骤中,通过全局平均池化操作来压缩每个通道的特征图,得到一个全局特征向量。这个全局特征向量包含了每个通道的全局信息,可以用来表示每个通道的重要性。
  • 在excitation步骤中,使用一个全连接层来学习每个通道的权重,然后使用softmax函数将权重归一化,最后使用这些权重来对每个通道的特征图进行加权求和。这样,S-E模块可以自适应地学习每个通道的重要性,从而增强网络的表示能力。

注意力机制:注意力机制则是通过学习一组权重,来对不同位置的特征图进行加权求和

注意力机制可以分为两种:空间注意力和通道注意力。

  • 空间注意力是通过学习一组权重,来对不同位置的特征图进行加权求和,从而使模型更关注重要的区域。
  • 通道注意力则是通过学习一组权重,来对不同通道的特征图进行加权求和,从而增强模型的表示能力。

CondenseNet

Group Convolution 分组卷积

  • 常规卷积
    在这里插入图片描述
  • 分组卷积
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

EfficientNet

EfficientNet的核心思想是使用复合缩放系数和网络结构搜索来设计高效且准确的卷积神经网络。
具体来说,EfficientNet将网络深度宽度分辨率三个维度进行复合缩放,从而得到一系列不同规模的网络。然后,使用网络结构搜索算法来搜索每个规模下的最优网络结构,从而得到高效且准确的卷积神经网络。

在EfficientNet中,网络深度、宽度和分辨率三个维度都是重要的因素。

  • 网络深度可以增加模型的表达能力,但会增加模型的计算量和参数数量;
  • 网络宽度可以增加模型的特征提取能力,但会增加模型的计算量和参数数量;
  • 分辨率可以提高模型对细节的感知能力,但会增加模型的计算量和内存占用。
  • 因此,EfficientNet通过复合缩放系数来平衡这三个维度,得到一系列不同规模的网络,从而可以在不同的计算资源限制下,选择适合的网络规模。

EfficientNet还使用网络结构搜索算法来搜索每个规模下的最优网络结构。这个算法可以自动搜索最优的网络结构,从而得到高效且准确的卷积神经网络。这种方法可以大大减少人工设计网络的时间和精力,同时提高模型的准确性和泛化能力。