深度学习预训练与MMPretrain

learner_911 2023-06-06 19:29:12

一、MMPreTrain算法库介绍

MMPretrain源自 MMClassification 和MMSelfSup,并开发了许多新功能, 是一个全新升级的预训练开源算法框架,旨在提供各种强大的预训练主干网络,并支持了不同的预训练策略。下面 是MMPreTrain的安装步骤:

 1. 算法库与任务组成

 2. 框架概览

二、经典主干网络

1. ResNet

 

残差建模:让新增加的层拟合浅层网络与深层网络之间的差异,更容易学习梯度可以直接回传到浅层网络监督浅层网络的学习没有引入额外参入,让参数更有效贡献到最终的模型中。

ResNet中的两种残差模块:

ResNet-34:34层ImageNet Top-5准确率:94.4%

 

 

5级,每级包含若干残差模块,不同残差模块个数不同 ResNet 结构

每级输出分辨率减半,通道倍增

全局平均池化压缩空间维度

单层全连接层产生类别概率

2. Vision Transformer

模型示意图:

其中注意力机制是重要部分:

三、自监督学习

自监督学习的常见类型:基于各种代理任务、基于对比学习、基于掩码学习

1. SimCLR(对比学习)

基本假设:如果模型能很好地提取图片内容的本质,那么无论图片经过什么样的数据增强操作,提取出来的特征都应该极为相似。

即:对于某种图片x,对它进行两次数据增强,得到x1和x2,x1和x2互为正样本,其他图片的增强结果都是x,和x的负样本

2. MAE

基本假设:模型只有理解图片内容、掌握图片的上下文信息,才能恢复出图片中被随机遮挡的内容

即:将输入图片划分成规则不重叠的图像块,随机掩盖掉一部分图像块,将没有遮蔽的图像块按顺序送入 Transformer Encoder中,获得特征向量,将遮蔽的图像块(只包含位置信息)按原来的位置插入特征向量中,最后放入Decoder里,生成原始图片。

四、多模态算法

1. CLIP

在大规模数据集上使用NLP监督预训练图像分类器,证明了简单的预训练任务,即预测图像和文本描述是否相匹配是一种有效的、可扩展的方法

用4亿对来自网络的图文数据对,将文本作为图像标签,进行训练。进行下游任务时,只需要提供和图像对应的文本描述,就可以进行 zero-shot transfer,并取得可观的结果

 2. BLIP

 

该模型有3个loss:ITC、ITM、LM,由Image Encoder分别于Text Encoder、Image-grouded Text encoder、Image-grounded Text decoder进行计算损失

ITC:对文本与图像进行特征匹配、特征区分,计算相似度loss

ITM:对文本与图像是否相匹配进行计算loss,二分类问题

LM:对文字生成的loss计算

...全文
125 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
深度学习(DL,Deep Learning)是机器学习(ML,Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI,Artificial Intelligence)。 [1] 深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字、图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。 深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。 [1] 深度学习在搜索技术、数据挖掘、机器学习、机器翻译、自然语言处理、多媒体学习、语音、推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。 [1] 深度学习是一类模式分析方法的统称,就具体研究内容而言,主要涉及三类方法: [2] (1)基于卷积运算的神经网络系统,即卷积神经网络(CNN)。 [2] (2)基于多层神经元的自编码神经网络,包括自编码(Auto encoder)以及近年来受到广泛关注的稀疏编码两类(Sparse Coding)。 [2] (3)以多层自编码神经网络的方式进行预训练,进而结合鉴别信息进一步优化神经网络权值的深度置信网络(DBN)。 [2] 通过多层处理,逐渐将初始的“低层”特征表示转化为“高层”特征表示后,用“简单模型”即可完成复杂的分类等学习任务。由此可将深度学习理解为进行“特征学习”(feature learning)或“表示学习”(representation learning)。 [3] 以往在机器学习用于现实任务时,描述样本的特征通常需由人类专家来设计,这成为“特征工程”(feature engineering)。众所周知,特征的好坏对泛化性能有至关重要的影响,人类专家设计出好特征也并非易事;特征学习(表征学习)则通过机器学习技术自身来产生好特征,这使机器学习向“全自动数据分析”又前进了一步。 [3] 近年来,研究人员也逐渐将这几类方法结合起来,如对原本是以有监督学习为基础的卷积神经网络结合自编码神经网络进行无监督的预训练,进而利用鉴别信息微调网络参数形成的卷积深度置信网络。与传统的学习方法相比,深度学习方法预设了更多的模型参数,因此模型训练难度更大,根据统计学习的一般规律知道,模型参数越多,需要参与训练的数据量也越大。 [2] 20世纪八九十年代由于计算机计算能力有限和相关技术的限制,可用于分析的数据量太小,深度学习在模式分析中并没有表现出优异的识别性能。自从2006年,Hinton等提出快速计算受限玻耳兹曼机(RBM)网络权值及偏差的CD-K算法以后,RBM就成了增加神经网络深度的有力工具,导致后面使用广泛的DBN(由Hin

535

社区成员

发帖
与我相关
我的任务
社区描述
构建国际领先的计算机视觉开源算法平台
社区管理员
  • OpenMMLab
  • jason_0615
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧