[Google] PaLI: A Jointly-Scaled Multilingual Language-Image Model
Xi Chen, Xiao Wang, Soravit Changpinyo, AJ Piergiovanni, Piotr Padlewski, Daniel Salz, Sebastian Goodman, Adam Grycner, Basil Mustafa, Lucas Beyer, Alexander Kolesnikov, Joan Puigcerver, Nan Ding, Keran Rong, Hassan Akbari, Gaurav Mishra, Linting Xue, Ashish Thapliyal, James Bradbury, Weicheng Kuo, Mojtaba Seyedhosseini, Chao Jia, Burcu Karagol Ayan, Carlos Riquelme, Andreas Steiner, Anelia Angelova, Xiaohua Zhai, Neil Houlsby, Radu Soricut
Статья: https://arxiv.org/abs/2209.06794
Пост в блоге: https://ai.googleblog.com/2022/09/pali-scaling-language-image-learning-in.html
Модель: снова нет и, кажется, не будет (“The model is for research prototype and the current version is not available for the public.”)
Репа (но там только карточка модели): https://github.com/google-research/google-research/tree/master/pali
Продолжение интересной движухи про картиночно-языковые модели, теперь с фокусом на скейлинг и мультиязычность. Картиночно-языковые модели ощутимо развились в этом году. Мы уже писали про CoCa (https://hottg.com/gonzo_ML/997) и про Flamingo (https://hottg.com/gonzo_ML/941). У таких моделей на входе картинка+текст, а на выходе текст. И все задачи сводятся к генерации выходного текста.
Новая модель PaLI (Pathways Language and Image model) это продолжение темы про скейлинг на основе гугловой системы Pathways. На ней уже была обучена большая языковая модель PaLM (https://arxiv.org/abs/2204.02311) на 540B параметров. PaLI не такая гигантская, в ней 17B параметров (4B в картиночной части и 13B в языковой). Это больше CoCa (2.1B=1B+11.1B), но меньше Flamingo (80B=10B+70B).
Интересно, что теперь модель мультиязычная, поддерживает 109 языков.
Модель состоит из картиночного энкодера, преобразующего картинку в токены, которые дальше без всякого пулинга подаются вместе с текстом в текстовый encoder-decoder архитектуры T5, выдавая на выходе текст.
PaLI не обучали совсем с нуля, а инициализировали готовыми унимодальными Лего-блоками: мультиязычным encoder-decoder mT5-XXL (https://hottg.com/gonzo_ML/442) на 13B параметров, и предобученным ViT (https://hottg.com/gonzo_ML/434). Что интересно, взяли большой ViT-G (https://arxiv.org/abs/2111.07991) на 1.8B параметров, а также дополнительно обучили новый ViT-e (“enormous”) на 4B параметров. Кажется, это сейчас самый большой в природе ViT, жаль неопубликованный.
Всего было три разные PaLI модели, на 3B (1B mT5-Large + 1.8B ViT-G), 15B (13B mT5-XXL + 1.8B ViT-G) и (основная) 17B (13B mT5-XXL + 3.9B ViT-e).
Для обучения собрали мультиязычный картиночно-языковой датасет WebLI с поддержкой 109 языков (русского там довольно много, кстати). В нём 10B картинок и 12B alt-текстов. В дополнение к аннотациям с веба из картинок с помощью OCR извлекли тексты через GCP Vision API, что дало 29B пар картинка-OCR. Это существенно больше датасетов для CLIP, ALIGN или LiT. Датасет не пошарен.
Модель предобучалась на смеси задач, каждая из которых задаёт текст, который должна выдать модель (обучение с обычным LM-style teacher forcing и кроссэнтропийным лоссом после софтмакса). Среди задач: восстановление испорченного текстового span’а, split-captioning картинки и captioning, OCR, English and Cross-Lingual VQA, English and Cross-Lingual visual question generation (VQG), English-only Object-Aware (OA) VQA, Object detection.
Вся модель собрана на JAX/Flax (https://hottg.com/gonzo_ML/1083) с фреймворками T5X (https://github.com/google-research/t5x) и Flaxformer (https://github.com/google/flaxformer).
Самую большую PaLI обучали на 1,024 TPUv4 чипах 7 дней, что получается свыше $500K по ценам гугл клауда на on-demand (https://cloud.google.com/tpu/pricing). Но это меньше, чем для CoCa (2,048 TPUv4 на 5 дней) и Flamingo (1,536 TPUv4 на 15 дней). Предобучали на картинках 224×224, но самую большую PaLI затем пре-файнтюнили на 588×588.
>>Click here to continue<<
