顺手训了一个史上最大ViT?Google升级视觉语言模型PaLI:支持100+种语言

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
简介: 顺手训了一个史上最大ViT?Google升级视觉语言模型PaLI:支持100+种语言

近几年自然语言处理的进展很大程度上都来自于大规模语言模型,每次发布的新模型都将参数量训练数据量推向新高,同时也会对现有基准排行进行一次屠榜!

 

比如今年4月,Google发布5400亿参数的语言模型PaLM(Pathways Language Model)在语言和推理类的一系列测评中成功超越人类,尤其是在few-shot小样本学习场景下的优异性能,也让PaLM被认为是下一代语言模型的发展方向。

 

 

同理,视觉语言模型其实也是大力出奇迹,可以通过提升模型的规模来提升性能。

 

当然了,如果只是多任务的视觉语言模型,显然还不是很通用,还得支持多种语言的输入输出才行。

 

最近Google就将PaLM扩展升级成PALI(Pathways Language and Image model),兼具多语言和图像理解的能力,同时支持100+种语言来执行各种横跨视觉、语言和多模态图像和语言应用,如视觉问题回答、图像说明(image caption)、物体检测、图像分类、OCR、文本推理等。

 

论文链接:https://arxiv.org/abs/2209.06794

 

模型的训练使用的是一个公开的图像集合,其中包括自动爬取的109种语言的标注,文中也称之为WebLI数据集。

 

在WebLI上预训练的PaLI模型在多个图像和语言基准上取得了最先进的性能,如COCO-Captions、TextCaps、VQAv2、OK-VQA、TextVQA等等,也超越了先前模型的多语言视觉描述(multilingual visual captioning)和视觉问答的基准。

 

模型架构

 

PALI的目标之一是研究语言视觉模型在性能和规模上的联系是否相同,特别是语言-图像模型的可扩展性(scalability)。

 

所以模型的架构设计上就很简单,主要是为了实验方便,尤其是可重复使用且可扩展。

 

 

模型由一个处理输入文本的Transformer编码器和一个生成输出文本的自回归Transformer解码器组成。

 

在处理图像时,Transformer编码器的输入还包括代表由ViT处理的图像的视觉词(visual words)。

 

PaLI模型的一个关键设计是重用,研究人员用之前训练过的单模态视觉和语言模型(如mT5-XXL和大型ViTs)的权重作为模型的种子,这种重用不仅使单模态训练的能力得到迁移,而且还能节省计算成本。

 

模型的视觉组件使用的是迄今为止最大的ViT架构ViT-e,它与18亿参数的ViT-G模型具有相同的结构,并使用相同的训练参数,区别就是扩展为了40亿参数

 

虽然在视觉领域和语言领域都对缩放规律进行了研究,但在视觉和语言的组合模型中对缩放行为的探讨较少,扩大视觉骨干模型的规模可能会导致在分类任务中的收益饱和。

 

研究人员也进一步证实了这一点,可以观察到 ViT-e在ImageNet上只比ViT-G好一点,但ViT-e在PaLI的视觉语言任务上有很大的改进。例如,ViT-e在COCO字幕任务上比ViT-G多出近3个CIDEr点。任务上比ViT-G多出3分。这也暗示了未来在视觉语言任务中使用更大的ViT骨架模型的空间。

 

 

研究人员采用mT5骨干作为语言建模组件,使用预训练的mT5-Large(10亿参数)和mT5-XXL (130亿参数)来初始化PaLI的语言编码器-解码器,然后在许多语言任务中进行继续混合训练,包括纯语言理解任务,这也有助于避免灾难性的遗忘mT5的语言理解和生成能力。

 

最后得到了三个不同尺寸的PALI模型。

 

 

109种语言的数据集

 

深度学习相关的扩展研究表明,模型越大,所需的训练数据集也越大。

 

所以为了全面研究和释放语言-图像预训练模型的潜力,研究人员从互联网上爬取了大量的图像和文本数据,构建了一个全新的数据集WebLI,其中包括109种语言的120亿alt-texts和100亿张图片。

 

 

除了用网络文本进行标注外,研究人员还应用云端视觉API对图像进行OCR识别,进而得到290亿个图像-OCR的数据对。

 

 

使用near-duplication对68个常见的视觉和视觉语言数据集的训练、验证和测试部分的图像进行了去重处理,以避免下游评估任务的数据泄露。

 

 

为了进一步提高数据质量,研究人员还会根据「图像和alt-text」的跨模态相似度进行评分,并调整阈值,最后只保留10%的图像,总共有10亿张图像用于训练PaLI

 

训练大模型

 

由于视觉-语言任务是多模态,所以需要模型具有多种语义处理能力,而且会有不同的目标。比如有些任务需要对物体进行局部定位以准确解决任务,而其他一些任务可能需要更多的全局语义信息。

 

同样地,有的语言任务可能需要长的答案,而有些则需要紧凑的答案。

 

为了解决所有这些不一致的目标,研究人员利用WebLI预训练数据的丰富性,引入预训练任务的混合(Pretraining Task Mixture),为各种下游应用准备模型。

 

为了让模型更通用以解决多种任务,作者将所有的任务归入一个单一的通用API(输入:图像+文本;输出:文本),使多个图像和语言任务之间能够进行知识共享,这也是与预训练设置的共享。

 

用于预训练的目标作为加权的混合被投影到同一个API中,目的是既保持重复使用的模型组件的能力,又能训练模型执行新的任务。

 

模型使用开源的T5X和Flaxformer框架在JAX中用Flax进行训练,视觉部分的ViT-e使用开源的BigVision框架,将语言部分的词向量与视觉部分生成的patch向量级联起来,共同作为多模态编码器-解码器的输入,编码器使用mT5-XXL预训练初始化。在PaLI的训练过程中,视觉组件的权重被冻结,只更新多模态编码器-解码器的权重。

 

在实验部分,研究人员在常见的视觉语言基准上对PaLI进行了比较,且PaLI模型在这些任务上取得了最先进的结果,甚至超过了以往文献中提出的超大型的模型。

 

 

比如170亿参数的PALI在一些VQA和图像标题任务上的表现优于800亿参数的Flamingo模型。

 

并且PALI在单语言或单视觉的任务上也保持了良好的表现,虽然这并非是PALI主要的训练目标。

 

文中还研究了图像和语言模型组件在模型扩展方面是如何相互作用的,以及模型在哪里产生最大的收益。

 

最后得出的结论是,对这两个组件进行联合扩展(缩放)会产生最好的性能,具体来说,对需要相对较少参数的视觉组件进行缩放是最关键的,同时缩放对于提高多语言任务的性能也很重要。

 

 

在35种语言的基准Crossmodal-3600上评估了PaLI后可以发现多语言起标题任务从PaLI模型的扩展中受益更多。

 

 

为了避免在大型语言和图像模型中产生或加强不公平的偏见,需要对所使用的数据和模型如何使用这些数据保持透明,以及测试模型的公平性并进行负责任的数据分析,所以文中同时提供了一个Data Card和Model Card

 


参考资料:https://ai.googleblog.com/2022/09/pali-scaling-language-image-learning-in.html

相关文章
|
3月前
|
JavaScript 前端开发 测试技术
一个google Test文件C++语言案例
这篇文章我们来介绍一下真正的C++语言如何用GTest来实现单元测试。
25 0
|
7月前
|
JavaScript 测试技术
【sgGoogleTranslate】自定义组件:基于Vue.js用谷歌Google Translate翻译插件实现网站多国语言开发
【sgGoogleTranslate】自定义组件:基于Vue.js用谷歌Google Translate翻译插件实现网站多国语言开发
|
机器学习/深度学习 人工智能 安全
2023 Google 开发者大会:无障碍游戏体验升级、安卓开发人员生产力爆棚
2023 Google 开发者大会:无障碍游戏体验升级、安卓开发人员生产力爆棚
|
关系型数据库 MySQL API
Go语言微服务框架 - 6.用Google风格的API接口打通MySQL操作
随着RPC与MySQL的打通,整个框架已经开始打通了数据的出入口。 接下来,我们就尝试着实现通过RPC请求操作MySQL数据库,打通整个链路,真正地让这个平台实现可用。
52 0
|
机器学习/深度学习 Prometheus Kubernetes
谁在用Go语言?Google、Uber、Netflix等大公司广泛采用
谁在用Go语言?Google、Uber、Netflix等大公司广泛采用
113 0
|
机器学习/深度学习 安全 JavaScript
Google Earth Engine(GEE)——R 语言 Google 地球引擎20个基本案例分析
Google Earth Engine(GEE)——R 语言 Google 地球引擎20个基本案例分析
880 0
Google Earth Engine(GEE)——R 语言 Google 地球引擎20个基本案例分析
|
机器学习/深度学习 数据采集 人工智能
好饭不怕晚,Google基于人工智能AI大语言对话模型Bard测试和API调用(Python3.10)
谷歌(Google)作为开源过著名深度学习框架Tensorflow的超级大厂,是人工智能领域一股不可忽视的中坚力量,旗下新产品Bard已经公布测试了一段时间,毁誉参半,很多人把Google的Bard和OpenAI的ChatGPT进行对比,Google Bard在ChatGPT面前似乎有些技不如人。 事实上,Google Bard并非对标ChatGPT的产品,Bard是基于LaMDA模型对话而进行构建的,Bard旨在构建一个对话式的AI系统,使其能够更好地理解人类语言,并且具备进行多轮对话的能力。而GPT的目标是生成自然语言文本。
好饭不怕晚,Google基于人工智能AI大语言对话模型Bard测试和API调用(Python3.10)
|
机器学习/深度学习 数据采集 自然语言处理
谷歌为1000+「长尾」语言创建机器翻译系统,Google翻译已支持部分小众语言
谷歌为1000+「长尾」语言创建机器翻译系统,Google翻译已支持部分小众语言
141 0
|
机器学习/深度学习 编解码 数据可视化
无需多视图!Google重磅升级NeRF:仅需一张平面图即可生成3D模型
无需多视图!Google重磅升级NeRF:仅需一张平面图即可生成3D模型
584 0
|
人工智能
Google Earth Engine(GEE)——Tasks升级,实现RUN ALL可以一键下载任务类型中的所有影像
Google Earth Engine(GEE)——Tasks升级,实现RUN ALL可以一键下载任务类型中的所有影像
316 0
Google Earth Engine(GEE)——Tasks升级,实现RUN ALL可以一键下载任务类型中的所有影像

热门文章

最新文章