【动手学深度学习】7.3 网络中的网络(NiN)(个人向笔记)

  • LeNet,AlexNet和VGG都有一个共同的设计模型:通过一系列卷积层和汇聚层来提取空间结构特征,然后通过全连接层对特征的表征进行处理
  • AlexNet和VGG对LeNet的改进主要是在于如何扩大和加深这两个模块
  • 网络中的网络(NIN)提出了:在每个像素的通道上分别使用MLP

1. NiN块

  • 卷积层的输入由四维张量组成:样本,通道,高度和宽度
  • 全连接层的输入和输出分别对应于样本和特征的二维张量。NiN的想法时在每个像素位置(针对每个高度和宽度)应用一个全连接层,如果我们将权重连接到每个空间位置,可以将其视为 1 × 1 1\times1 1×1 的卷积层,或者说是作为每个像素位置上独立作用的全连接层
  • 从另一个角度看,即将空间维度中每个像素视为单个样本,将通道视为不同特征
  • 下图说明了VGG和NiN它们块之间的主要差异。NiN块以一个普通的卷积层开始,后面是两个 1 × 1 1\times1 1×1的卷积层。这两个 1 × 1 1\times1 1×1 充当带有ReLU激活函数的逐像素全连接层。第一层卷积窗口形状由用户设置,随后的卷积窗口形状固定为 1 × 1 1\times1 1×1


2. NiN模型

  • 最初的 NiN 网络是在 AlexNet 后不久提出的,显然它从 AlexNet 中得到了一些启示
  • NiN使用窗口形状为 11 × 11 11\times11 11×11、 5 × 5 5\times5 5×5 和 3 × 3 3\times3 3×3 的卷积层,输出通道数量与AlexNet中的相同。 每个NiN块后有一个最大汇聚层,汇聚窗口形状为 3 × 3 3\times3 3×3,步幅为2
  • NiN和AlexNet之间的一个显著区别是NiN完全取消了全连接层。 相反,NiN使用一个NiN块,其输出通道数等于标签类别的数量。最后放一个全局平均汇聚层(global average pooling layer),生成一个对数几率 (logits)。NiN设计的一个优点是,它显著减少了模型所需参数的数量。然而,在实践中,这种设计有时会增加训练模型的时间

3. 训练模型

相关推荐
小糖学代码16 分钟前
LLM系列:2.pytorch入门:10.划分训练集与测试集(sklearn.model_selection)
人工智能·python·深度学习·神经网络·学习·sklearn
白日梦想家April_Liu17 分钟前
不蕉绿的青椒手册——审稿篇
人工智能·深度学习·目标检测
染予19 分钟前
共阵面系统学习
网络·学习
sheyuDemo20 分钟前
关于小土堆目标检测YOLOv5的一些报错
人工智能·深度学习·yolo·目标检测
乔江seven22 分钟前
【跟李沐学AI】25 物体检测和数据集
人工智能·深度学习·目标检测
Hcoco_me22 分钟前
Ai:Agent/ infra / 智驾 / 推广算法 题库
人工智能·深度学习·算法·自动驾驶·剪枝
星浩AI23 分钟前
(一)PyTorch 深度学习环境搭建与微调实战[附源码]
pytorch·深度学习·机器学习
heimeiyingwang25 分钟前
【架构实战】服务注册与发现Nacos:微服务时代的“电话总机“
网络·架构
FelixZhang02828 分钟前
工业时序工况识别项目复盘:从深度学习探索到 LightGBM/CatBoost 落地
人工智能·深度学习·机器学习·gru·lstm·边缘计算·boosting
Heartache boy37 分钟前
野火STM32_HAL库版课程笔记-I2C介绍
笔记·stm32·单片机