data2vec: A General Framework for Self-supervised Learning in Speech,Vision and Language
Abstract
不同模态下的自监督学习的总体思想一致,但是在实际过程中的算法和目标却有很大的不同。
data2vec是一个语音、nlp、cv不同领域下通用的自监督学习框架。
其主要的思想是:在标准的Transformer结构下,对数据进行 mask 后,使用 自蒸馏 方法,预测 隐性表示。
该方法预测了整个输入的上下文隐性表示,而不同于在单模态下的预测某个单元(word、visual token、speech unit)的局部信息。
ps:首先目前来说transformer应该算是各个领域最好的特征抽取器,所以选择transformer作为模型主要结构,不同模态下输入输出是不一样的,mask的方法也是不一样的,最后的预测目标也不一样,所以如果想要得到统一的自监督学习框架,目标改成隐状态表示的学习。这样带来的点是最后的预测target不再是一个固定的vocab,而是整个空间表示;但是优点是整个包含输入上下文的表示。
Introduction
自监督方法在cv、nlp、语音等领域被广泛运用,但是目前的自监督方法聚焦于单一模态,所以需要特殊的设计(输入词表、mask、算法目标等)和学习偏置。
特殊的设计:nlp中的word是离散的,词表的范围是有限的,但是cv中信号其实是连续的,且和语音一样词表不是固定的。
学习偏置:偏置的含义应该是先验知识;生物学的理论表明,人类关于视觉世界的理解和语言是相似的。但是目前还上不明确是否可以泛化到其他模态。
data2vec是一个通用的自监督框架,统一了学习目标,适用于不同的模态。但是虽然统一了学习算法,但是仍然分别学习了每种模态的表示。
框架使用自蒸馏的训练方法:教师模块构建整个输入数据的表示作为学习目标。学生模块则是编码mask状态下整个输入数据的表示。
不同的模态下有不同的输入,我们需要使用不同的特征编码器和mask策略。
目标的表示是连续的和语境化的,通过使用自注意机制后使得表示更加丰富。
Related Work
图像中的自监督学习,是一个动量编码器,只回归最顶层的表示;而data2vec则是回归每一层的表示。目前的工作都是聚焦在mask预测目标的transformer上,会对输入进行切分,直接预测图片的像素。data2vec则是预测整个输入的隐状态表示,所以这个表示是语境化的,包含了整张图片的信息。
与nlp中的自监督学习不同,data2vec不预测离散的语言符号,而是连续的上下文表示。优点在于表示空间不受限制,目标是语境化的,bert的单一嵌入学习,需要适应特定目标的所有实例。
与语音中的自监督方法比较,预测语境化的表示不需要对输入进行quantization。
多模式训练,使用配对的数据进行联合训练。data2vec的不同在于统一了不同模态下自监督学习的目标。
Method
给定一部分输入的视图预测整个输入数据的模型表示。学生模块编码mask后数据的表示,教师模块编码未mask的输入表示,两者模块的结构相同,参数采用指数滑动平均进行更新。学习目标就是采用这种自蒸馏的方法使得模型可以预测部分视图下的完整输入表示。
不同模态下的模型结构和mask方法采用各自领域的常用设置,具体可以看实验设置部分。
教师模型和学生模型采用相同的结构以及共享参数,教师模型的参数化采用指数滑动平均方法,在训练初期更新会更快,训练稳定后更新变慢。
选取顶部的K层表示进行回归作为训练目标。
归一化目标可以模型在所有的时间步内陷入一个恒定的表示,也可以防止高范式层支配目标特征。另语音中使用实例归一化,nlp和cv使用层归一化。
data2vec: A General Framework for Self-supervised Learning in Speech,Vision and Language相关推荐
- 【论文翻译】Meta R-CNN : Towards General Solver for Instance-level Low-shot Learning
Meta R-CNN : Towards General Solver for Instance-level Low-shot Learning Meta R-CNN:面向实例级小样本学习的通用解算 ...
- ML之SL:监督学习(Supervised Learning)的简介、应用、经典案例之详细攻略
ML之SL:监督学习(Supervised Learning)的简介.应用.经典案例之详细攻略 目录 监督学习(Supervised Learning)的简介 1.监督学习问题的两大类-分类问题和回归 ...
- 【论文导读】- Link Weight Prediction Using Supervised Learning Methods(使用监督学习方法的链路权重预测及其在Yelp网络中的应用)
文章目录 论文信息 摘要 主要内容(contributions) 图模型和评价指标 特征指标 原图特征指标 原始图转线图 线图特征指标 论文信息 Link Weight Prediction Usin ...
- 监督学习(supervised learning)与非监督学习(unsupervised learning)
一,监督学习(supervised learning): 监督学习(supervised learning)的任务是学习一个模型,使模型能够对任意给定的输入,对其相应的输出做出一个好的预测. 即:利用 ...
- Self -Supervised Learning
Self -Supervised Learning 个人学习笔记: BART使用了MASS中的所有方法(五种),结果表现更好 实验:将DNA表示中的A.T.C和G随机赋英文单词,将每个类别组成一个文本 ...
- INF442 Amphi 6: Supervised learning and k-NN predictors | Genericity
INF442 Amphi 6: Supervised learning and k-NN predictors | Genericity 1. Supervised Learning 1.1 不同的损 ...
- 【FLACC】A Greedy Agglomerative Framework for Clustered Federated Learning
A Greedy Agglomerative Framework for Clustered Federated Learning一种用于聚类联邦学习的贪婪聚合框架 Abstract 1.INTROD ...
- 1.Supervised Learning with Projected Entangled Pair States
Supervised Learning with Projected Entangled Pair States 这份笔记是在阅读论文<Supervised Learning with Proj ...
- 关于弱监督学习的详细介绍——A Brief Introduction to Weakly Supervised Learning
目录 介绍 主动学习 半监督学习 多实例学习 带噪学习 Snorkel 框架介绍 参考 介绍 在机器学习领域,学习任务可大致划分为两类,一种是监督学习,另一种是非监督学习.通常,两者都需要从包含大量训 ...
最新文章
- python编程入门经典 评分-豆瓣评分爆炸!Python+机器学习经典图书
- vb破解万能断点816c24
- lstm处理时序数据结构图_详解LSTM
- c++语言自定义操作符,C++语言复习笔记二
- 应用环境下的TIME_WAIT和CLOSE_WAIT
- 服务器win2008 R2 x64 部署ASP.net core到IIS 并解决 HTTP Error 502.5 的问题
- 在Nature、Science正刊等国际知名杂志发表论文,可直接申报正高级职称!
- 设计师交流社区,在集设原创作品通过交流发现问题,不断进步!
- java int范围_Java之int及它的取值范围
- [渝粤教育] 中国地质大学 职业健康管理体系 复习题
- Sublime Text 2 常用插件介绍
- spring boot shiro视频
- cce是什么意思_CCE 是什么
- iOS 强制横屏的方法
- Java通过jacob生成动态word,还有一种方法通过word书签实现
- Fundamental of 4G LTE - 学习笔记(3)OFDMA/OFDM in 4G LTE (Part1)
- SQLServer中区分中英文标点符号
- Photoshop把杂乱的人像图片简化处理
- lib 文件(基础)
- HCIA/HCIP使用eNSP模拟BGP团体属性策略配置实例