多模态再次统一!Meta发布自监督算法data2vec 2.0:训练效率最高提升16倍!

简介: 多模态再次统一!Meta发布自监督算法data2vec 2.0:训练效率最高提升16倍!



 新智元报道  

编辑:LRS

【新智元导读】效率更高的多模态自监督学习框架data2vec 2.0来啦!


近几年人工智能领域的突破大多由自监督学习推动,比如BERT中提出的MLM (Masked Language Model) ,通过将文本中的部分单词遮盖后重新预测,使得海量无标记文本数据也能用来训练模型,自此开启了大规模预训练模型的新时代。


但自监督学习算法也有明显的局限性,通常只适用于单一模态(如图像、文本、语音等)的数据,并且需要大量的算力从海量数据中进行学习。


相比之下,人类的学习效率要显著高于当前的AI模型,并且可以从不同类型的数据中进行学习。


2022年1月,Meta AI发布了自监督学习框架data2vec,将三个模态的数据(语音、视觉和文本)通过一个框架整合起来,大有一统多模态的趋势。


最近Meta AI发布了data2cec 2.0版本,主要在性能方面对上一代进行了改进:在精度相同的情况下,训练速度相比其他算法最高提升了16倍!

论文链接:https://ai.facebook.com/research/publications/efficient-self-supervised-learning-with-contextualized-target-representations-for-vision-speech-and-language

代码链接:https://github.com/facebookresearch/fairseq/tree/main/examples/data2vec


data2vec 1.0


目前来说,大部分机器学习模型仍然是基于有监督学习的模式,需要有专门的标注人员对目标数据打标签,但对于某些任务来说(比如地球上的几千种人类语言),收集标注数据是不可行的。


相比之下,自监督学习不需要告诉模型正确和错误,而是让机器通过观察世界来学习图像、语音和文本的结构。


相关的研究成果促进了语音(如,wave2vec 2.0)、计算机视觉(例如,掩码自编码器)和自然语言处理(例如,BERT)等领域的发展。


data2vec的主要思路就是先建立一个教师网络,首先计算来自图像、文本或语音的目标表征。然后对数据进行掩码遮盖掉部分输入,并用一个学生网络重复该过程预测教师模型得到的表征。



也就是说,学生模型只能在接受「不完整输入信息」的同时预测「完整输入数据」的表示。


为了保证两个模型的一致性,二者的参数时共享的,但在训练初期会让Teacher模型的参数更新更快。


在实验结果上,data2vec在语音、视觉、文本等任务上对比baseline模型性能提升明显。


data2vec 2.0


data2vec提出了一个通用的自监督学习框架统一了语音、视觉和语言三个模态数据的学习,而data2vec2.0主要解决的痛点就是构建自监督模型需要大量的GPU做算力支撑才能完成训练。


与最初的 data2vec 算法类似,data2vec 2.0预测数据的上下文化的表征(contextualized representations),或是神经网络的层次,而非预测图像的像素、文本段中的词或语音。



与常见的其他算法不同,这些所谓的目标表征是上下文化的,这意味着算法需要将整个训练示例考虑在内。


比如说,模型学习单词 bank 的表征是基于包含bank的整个句子,从而更容易推算出单词的正确含义,比如区分具体指代「金融机构」还是「河边的土地」。

研究人员认为上下文化的目标会促进更丰富的学习任务,并使 data2vec 2.0比其他算法学习得更快。


data2vec 2.0通过以下三种方式提高了原始 data2vec 算法的效率:


1、为特定训练样例构建目标表征,并将该表征重用在掩码版本上。


在掩码版本中,训练样例中的不同部分会被随机隐藏。随后两个版本学到的表征都会输入到学生模型中,为不同的掩码版本预测相同的上下文化的目标表征,从而有效地分摊了创建目标表征所需的计算量。


2、类似于掩码自编码器(masked autoencoder, MAE),学生模型中的编码器网络并不运训练样例中的空白部分(blanked out)。


在图像实验中,大约80%的部分都是空白,从而显著节省了计算周期。


3、使用了一个更有效的解码器模型,不再依赖于Transformer网络,而是依赖于一个多层卷积网络。


实验部分


为了更直观地理解 data2vec 2.0 比 data2vec 和其他同类算法的效率要高多少,研究人员在计算机视觉、语音和文本任务相关的基准测试中进行了广泛的实验。


实验中主要考虑最终的精确度以及预训练模型所需的时间,实验环境都是在相同的硬件上(GPU 的型号、数量等)来测量算法的运行速度。



在计算机视觉任务上,研究人员在标准 ImageNet-1K 图像分类基准上评估了 data2vec 2.0,模型通过该数据集可以学习图像表征。


实验结果显示,data2vec 2.0可以等同于掩码自编码器(MAE)的准确性,但是速度要快16倍。


如果继续给data2vec 2.0算法更多的运行时间,它可以达到更高的精度,并且仍然会比MAE的速度快。



在语音任务上,研究人员在 LibriLanguage 语音识别基准上进行了测试,它的准确性是 wave2vec 2.0的11倍以上。



对于自然语言处理任务,研究人员在通用语言理解评估(GLUE)基准上评估了 data2vec 2.0,仅需一半的训练时间即可达到与 BERT 的重新实现 RoBERTa 相同的精度。


参考资料:https://ai.facebook.com/blog/ai-self-supervised-learning-data2vec/

相关文章
|
1月前
|
存储 机器学习/深度学习 算法
蓝桥杯练习题(三):Python组之算法训练提高综合五十题
蓝桥杯Python编程练习题的集合,涵盖了从基础到提高的多个算法题目及其解答。
60 3
蓝桥杯练习题(三):Python组之算法训练提高综合五十题
|
22天前
|
分布式计算 Java 开发工具
阿里云MaxCompute-XGBoost on Spark 极限梯度提升算法的分布式训练与模型持久化oss的实现与代码浅析
本文介绍了XGBoost在MaxCompute+OSS架构下模型持久化遇到的问题及其解决方案。首先简要介绍了XGBoost的特点和应用场景,随后详细描述了客户在将XGBoost on Spark任务从HDFS迁移到OSS时遇到的异常情况。通过分析异常堆栈和源代码,发现使用的`nativeBooster.saveModel`方法不支持OSS路径,而使用`write.overwrite().save`方法则能成功保存模型。最后提供了完整的Scala代码示例、Maven配置和提交命令,帮助用户顺利迁移模型存储路径。
|
1月前
|
机器学习/深度学习 算法 决策智能
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
|
1月前
|
算法 Java C++
【贪心算法】算法训练 ALGO-1003 礼物(C/C++)
【贪心算法】算法训练 ALGO-1003 礼物(C/C++)
【贪心算法】算法训练 ALGO-1003 礼物(C/C++)
|
1月前
|
算法 C++
蓝桥 算法训练 共线(C++)
蓝桥 算法训练 共线(C++)
|
4月前
knn增强数据训练
【7月更文挑战第27天】
39 10
|
4月前
|
数据采集 编解码 人工智能
破解ChatGPT惊人耗电!DeepMind新算法训练提效13倍,能耗暴降10倍
【7月更文挑战第19天】DeepMind的JEST算法革新AI训练,提升效率13倍,节能10倍。通过联合数据批次选择,预训练指导及多分辨率训练,优化资源利用,降低能耗。实验显示性能提升,达到SOTA水平,但实施需大量资源,依赖优质参考模型。[论文链接](https://arxiv.org/pdf/2406.17711)
69 10
|
4月前
knn增强数据训练
【7月更文挑战第28天】
41 2
|
3月前
|
机器学习/深度学习 运维 算法
监督算法和无监督算法之间的区别
【8月更文挑战第23天】
105 0
|
3月前
|
算法 搜索推荐
支付宝商业化广告算法问题之基于pretrain—>finetune范式的知识迁移中,finetune阶段全参数训练与部分参数训练的效果如何比较
支付宝商业化广告算法问题之基于pretrain—>finetune范式的知识迁移中,finetune阶段全参数训练与部分参数训练的效果如何比较