• OpenMMLab AI 实战营笔记4——MMPreTrain算法库:构建高效、灵活、可扩展的深度学习模型


    摘要

    MMPreTrain算法库:构建高效、灵活、可扩展的深度学习模型

    随着深度学习技术的不断发展,越来越多的算法库被开发出来,其中MMPreTrain算法库就是其中之一。MMPreTrain算法库是一个强大的工具箱,提供了丰富的模型、推理API、环境搭建软件栈、代码框架、数据流、配置及运作方式等功能,使得用户可以快速构建高效、灵活、可扩展的深度学习模型

    一、工具箱介绍

    MMPreTrain算法库是一个轻量级的深度学习框架,支持多种计算加速器,包括CPU、GPU、TPU等。它提供了大量的算法模型,可以帮助用户快速搭建深度学习模型,同时还提供了一系列的工具,如数据增强、数据读取、模型评估等,使得用户能够更加方便地进行模型训练和优化。

    在这里插入图片描述

    二、丰富的模型

    MMPreTrain算法库提供了多种经典的深度学习模型,包括卷积神经网络、循环神经网络、Transformer等,同时还提供了一些先进的模型,如EfficientNet、MobileNetV3以及VIT等。这些模型都经过了严格的测试和优化,可以满足不同场景下的需求。同时支持数据增强和可视化分析等。

    在这里插入图片描述

    三、推理API

    MMPreTrain算法库提供了多种推理API,包括TensorFlow Serving、ONNX Runtime等。这些API可以帮助用户将训练好的模型部署到生产环境中,以提供高效的推理服务。

    支持多种开箱即用的推理任务:

    • 图像分类
    • 图像描述(Image Caption)
    • 视觉问答(Visual Question Answering)
    • 视觉定位(Visual Grounding)
    • 检索(图搜图,图搜文,文搜图)在这里插入图片描述

    四、环境搭建——OpenMMLab软件栈

    MMPreTrain算法库提供了完整的环境搭建软件栈,包括操作系统、CUDA、cuDNN、TensorFlow等。用户只需要按照文档的说明进行安装,即可快速搭建深度学习环境。

    在这里插入图片描述

    五、OpenMMLab重要概念——配置文件

    使用配置文件就可以完成深度学习模型的训练、预测等。配置文件主要包括以下几个方面:
    在这里插入图片描述

    六、代码框架

    MMPreTrain算法库提供了完整的代码框架,包括数据读取、数据结构的定义、模型定义、训练、评估等。用户可以根据自己的需求进行修改和扩展。

    在这里插入图片描述

    六、数据流

    MMPreTrain算法库提了多种数据流处理方式,包括数据增强、数据预处理、数据读取等。这些功能可以帮助用户更加方便地进行数据处理和训练。

    在这里插入图片描述

    七、配置及运作方式

    MMPreTrain算法库提供了多种配置方式,包括命令行参数、配置文件等。用户可以根据自己的需求进行配置,以满足不同场景下的需求。

    在这里插入图片描述

    经典主干网络

    Alexnet、VGG、GooleNet,关于这部分,可以看我的专栏:https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/category_12157249.html?spm=1001.2014.3001.5482,我对模型作了详细的解释。
    在这里插入图片描述

    残差网络

    残差网络的思想:
    在这里插入图片描述
    残差网络的两种结构:
    在这里插入图片描述

    残差网络和VGG 对比:
    在这里插入图片描述
    ResNet34在ImageNet Top5的准确率为94.4%
    在这里插入图片描述
    ResNet是CNN网络中影响力最大的网络。

    Vison Transformer(VIT)

    在nlp中,输入transformer中的是一个序列,而在视觉领域,模型训练中图片的大小是224*224=50176,而正常的bert的序列长度是512,所以展开成1d的序列是bert的100倍,这个的复杂度太高了。

    ViT的总体想法是基于纯Transformer结构来做图像分类任务。其核心流程包括图像分块处理 (make patches)、图像块嵌入 (patch embedding)与位置编码、Transformer编码器和MLP分类处理等4个主要部分。
    在这里插入图片描述

    注意力机制

    加入注意力机制后,实现层次化特征,后层特征是空间邻域内的前层特征的加权求和,权重越大,对应位置的特征月重要。
    在这里插入图片描述
    注意力机制的计算方式
    在这里插入图片描述
    多头注意力机制的计算方式在这里插入图片描述

    自监督学习

    常见类型

    • 基于代理任务
    • 基于对比学习
    • 基于掩码学习在这里插入图片描述

    SimCLR

    推远副样本的距离,拉近正样本之间的特征距离

    在这里插入图片描述

    MAE

    基于掩码的自监督学习。
    在这里插入图片描述

    自监督学习

    DINOV2在iBOT上作了改进

    在这里插入图片描述

    多模态

    CLIP

    论文翻译:https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/125452516,出自OpenAI,论文比较长。文本图像对。

    在这里插入图片描述
    CLIP,零样本迁移,几乎超越了ResNet50
    在这里插入图片描述

    BLIP

    BLIP包含三个Loss,第一个是 Image-Text
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    Others

    在这里插入图片描述

    总结

    首先,学习了MMPreTrain,MMPreTrain算法库是一个非常强大的工具箱,可以帮助用户快速构建高效、灵活、可扩展的深度学习模型。如果您想要学习深度学习或者构建深度学习模型,那么MMPreTrain算法库绝对是一个不错的选择。
    然后,学习了经典的主干网络,比如AlexNet、VGGNet以及Reset。
    接下来,学习了自监督学习,自监督学习有三种方式,包含基于代理任务、基于对比学习、基于掩码学习。
    最后,讲解了多模态任务,常用的有CLIP和BLIP。

  • 相关阅读:
    元数据性能大比拼:HDFS vs S3 vs JuiceFS
    索引的基本知识
    【C++ Primer】 第八章 IO库 习题 答案
    第2章-矩阵及其运算-矩阵创建(1)
    图问题——深度和广度遍历,剑指offer专项105-107
    vue使用websocket与springboot通信
    桥接模式(结构型)
    docker部署go项目
    组内再分组汇总并取前 N 名后合并
    HarmonyOS—HAP唯一性校验逻辑
  • 原文地址:https://blog.csdn.net/m0_47867638/article/details/131444458