🐧大模型系列篇章

💖 多模态大模型 🔎 GroundingDINO 论文总结
💖 端到端目标检测 🔎 从DETR 到 GroundingDINO 🔥
💖 多模态大模型 👉 CLIP论文总结
💖 多模态大模型 👉 EVA-CLIP
💚 生成模型 👉 从 VAE 到 Diffusion Model (上)
💚 生成模型 👉 从 VAE 到 Diffusion Model (下)🔥
💧 天气大模型

🐧深度学习基础知识篇

💖 深度学习基础知识干货 🔎 Batch Normalization 批量归一化
💖 深度学习基础知识干货 🔎 卷积模型的Memory, Params, Flop是如何计算的?
💖 深度学习基础知识干货 🔎 Cross-Entropy Loss 多分类损失函数
💖 深度学习基础知识干货 🔎 Videos 动作检测
💖 深度学习基础知识干货 🔎 目标检测(Object Detection): 你需要知道的一些概念
💖 深度学习基础知识干货 🔎 微调(fine-tuning)和泛化(generalization)
💖 深度学习基础知识干货 🔎 Group Convolution / Depthwise Convolution 轻量模型的必有的卷积
💖 深度学习基础知识干货 🔎 Gradient checkpointing
💖 深度学习基础知识干货 🔎 Softmax中温度(temperature)参数
💖 深度学习基础知识干货 🔎 什么是few-shot learning

欢迎订阅专栏,第一时间掌握最新科技
大模型系列篇章 专栏链接
深度学习基础知识 专栏链接

一,Norimalize(归一化)的想法:

  • 使得layer的输出为标准正态分布(均值为0,标准差为1)
  • Why? 帮助减少内部 internal covariate shift.
  • 这是一个可微分方程,我们可以把他当作我们网络中的运算符,通过它反向传播。
    This is a differentiable function, so
    we can use it as an operator in our
    networks and backprop through it!
    在这里插入图片描述

二,为什么要做归一化?

  • 帮助减少内部 internal covariate shift.

  • Internal Covariate Shift(内部协变量偏移)它指的是在训练深度神经网络时,由于每一层的输入分布在训练过程中不断变化,导致网络的学习变得困难的问题。具体来说,当一个层的输入分布发生变化时,该层需要不断地适应新的输入分布,这会使得网络的训练过程变得不稳定,同时也会影响收敛速度和性能。

  • 把数据拉回标准正态分布,因为神经网络的Block大部分都是矩阵运算,一个向量经过矩阵运算后值会越来越大,为了网络的稳定性,我们需要及时把值拉回正态分布。
    [(https://img-blog.csdnimg.cn/94d3bfd9614f44b5894916a5f9df59f7.png)
    每一个维度来做均值,方差,得到标准正态分布。

三,问题来了,如果标准正态分布约束过于严格了怎么办?

  • 这时候我们的,可学习的scale(缩放因子),shift(平移因子)就闪亮登场了。
  • 这两个可学习的参数将修复我们的恒等式
  • 标准化后的数据虽然“稳定”,但也可能限制了模型的表达能力(都变成了标准正态分布)。所以 BN 用 γ 和 β 让网络可以学会自己选择要不要放大、缩小或移动这些标准化值。
    在这里插入图片描述

四,注意:Test-Time

  • 我们的均值和方差是在Minibatch的基础上做的。在test阶段,我们只单纯测试一张图片的话是得不到均值和方差的。此时,均值和方差用的就是训练过程中的平均值(average of values seen during training)

  • 当testing的时候batchnorm就变成了一个线性运算(linear operator),可以跟前一层的全连接层或者卷积层融合起来计算。

五,Batch Normalization 放置的位置

  • 通常在全连接层或者卷积层 之后,激活函数之前。
    在这里插入图片描述
    在这里插入图片描述

六,Batch Normalization的优点

  • 使得更深的网络更简单的训练起来 Makes deep networks much easier to train!
  • 用了batch normalization之后 可以设更大的学习率,让其更快的收敛
  • 网络 对初始化更具有鲁棒性 了(因为做了归一嘛)
  • 在训练的时候有起到 正则化 的效果
  • 在test-time 零开销 :因为可以跟conv做融合嘛,一起计算。
    在这里插入图片描述
    在这里插入图片描述

七,Layer Normalization

先来看一下Layer Normalization 与 Batch Normalization的区别
在这里插入图片描述

八,Instance Normalization

在这里插入图片描述

九,不同的Normalization的对比

在这里插入图片描述

network slimming

  • Our approach imposes L1 regularization on the scaling factors in batch normalization (BN) layers, thus it is easy to implement without introducing any change to existing CNN architectures.
  • Pushing the values of BN scaling factors towards zero with L1 regularization enables us to identify insignificant channels (or neurons), as each scaling factor corresponds to a specific convolutional channel (or a neuron in a fully-connected layer).
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐