BLOOM (language model) (BG)

From Systems analysis Wiki
Jump to navigation Jump to search

BLOOM (BigScience Large Open-science Open-access Multilingual Language Model) — това е голям езиков модел (LLM) с отворен достъп, съдържащ 176 милиарда параметъра. Той е разработен през 2022 година в рамките на проекта BigScience — международно сътрудничество на повече от 1000 изследователи от 70 държави под егидата на компанията Hugging Face[1].

BLOOM е авторегресивен transformer модел, способен да генерира свързан текст на 46 естествени езика и 13 езика за програмиране. Моделът е обучен на суперкомпютъра Jean Zay във Франция и се превърна в една от първите наистина отворени алтернативи на затворените модели, като GPT-3 на OpenAI[2].

Предистория и разработка

Инициативата BigScience е стартирана през май 2021 година с цел демократизиране на изследванията в областта на ИИ чрез съвместното създаване на голям отворен езиков модел[1]. По онова време водещите LLM, като GPT-3, се разработваха по затворен начин в големи компании, които не разкриваха архитектурата, обучителните данни и изходния код. Проектът BigScience обедини повече от хиляда изследователи-доброволци от цял свят за създаването на конкурентоспособен и напълно отворен модел.

Проектът получи грант за изчислителни ресурси на френския суперкомпютър Jean Zay (IDRIS/CNRS). Обучението на модела протече от 11 март до 6 юли 2022 година[3]. Разработката се извършваше с максимална прозрачност: екипът публикуваше информация за подбора на данни, настройките на обучението и провеждаше обществени дискусии, следвайки приетата етична харта на проекта.

Архитектура и обучение

Архитектура на модела

BLOOM е изграден върху авторегресивна transformer архитектура (decoder-only), аналогична на модела GPT-3[2].

Архитектурни характеристики на BLOOM[4]
Параметър Характеристика
Тип Decoder-only transformer
Параметри 176 247 271 424
Слоеве (layers) 70
Глави на внимание 112
Размер на скритото състояние 14 336
Дължина на последователността 2048 токена
Функция на активация GeLU; позиционни кодировки ALiBi

Моделът е реализиран на базата на фреймворките Megatron-LM и DeepSpeed, разработени от Nvidia и Microsoft съответно, с редица модификации за ефективно разпределено обучение[5].

Обучителни данни

BLOOM е обучен върху специално създаден корпус от текстови данни ROOTS (The Responsible Open-science Open-collaboration Text Sources). Общият обем на данните възлиза на 1,6 терабайта почистен и дедублициран текст (≈366 млрд. токена)[6].

Корпусът включва текстове на 59 езика:

  • 46 естествени езика, включително английски (30% от токените), китайски, френски, испански, арабски, както и множество езици с малко ресурси (например Chi Tumbuka — 0,00002% от токените).
  • 13 езика за програмиране, включително Python, Java, JavaScript и C++.

Такъв многоезичен и многодоменен dataset е събран целенасочено, за да направи модела подходящ за широк кръг езикови общности.

Производителност и приложение

BLOOM демонстрира конкурентоспособни резултати на разнообразни benchmark-и, сравними с модели от аналогичен размер, като OPT-175B на Meta, въпреки своята многоезичност[2].

Моделът е способен да изпълнява широк кръг задачи в режим zero-shot (без допълнително обучение), включително:

  • Генериране на текст в зададен стил.
  • Обобщаване на документи.
  • Отговаряне на въпроси по контекст.
  • Превод между езици.
  • Генериране на прост програмен код.

За подобряване на практическата полезност екипът на BigScience по-късно проведе допълнително многозадачно fine-tuning на модела, създавайки версията BLOOMZ, която по-точно следва инструкциите на потребителя.

Лицензиране и отворен достъп

Пълният 176-милиарден модел BLOOM, неговият изходен код и данни са публикувани през юли 2022 година. Моделът се разпространява под специално разработения лиценз RAIL (Responsible AI License) v1.0[7].

Този лиценз разрешава безплатното използване и модифициране на модела, но налага редица ограничения върху приложението му в определени области. По-специално, забранено е използването на BLOOM за цели, противоречащи на етичните норми на BigScience, като:

  • Масово наблюдение.
  • Алгоритмична дискриминация.
  • Разпространение на дезинформация.
  • Управление на летално въоръжение.

BLOOM се превърна в първия голям модел на ИИ, издаден под лиценз с изрични клаузи за отговорно използване[8].

Литература

  • Hendrycks, D.; Gimpel, K. (2016). Gaussian Error Linear Units (GELUs). arXiv:1606.08415.
  • Shoeybi, M.; et al. (2019). Megatron‑LM: Training Multi‑Billion Parameter Language Models Using Model Parallelism. arXiv:1909.08053.
  • Rajbhandari, S.; et al. (2020). ZeRO: Memory Optimizations Toward Training Trillion Parameter Models. arXiv:1910.02054.
  • Press, O.; et al. (2021). Train Short, Test Long: Attention with Linear Biases Enables Input Length Extrapolation. arXiv:2108.12409.
  • Le Scao, T.; et al. (2022). BLOOM: A 176B‑Parameter Open‑Access Multilingual Language Model. arXiv:2211.05100.
  • Muennighoff, N.; et al. (2022). BLOOMZ & mT0: A Cross‑Lingual Baseline for Instruction Finetuning. arXiv:2211.01786.
  • BigScience Workshop (2022). BigScience OpenRAIL‑M License v1.0. Online specification.
  • Akiki, C.; et al. (2022). BigScience: A Case Study in the Social Construction of a Multilingual Large Language Model. arXiv:2212.04960.
  • Yong, Z.‑X.; et al. (2022). BLOOM+1: Adding Language Support to BLOOM for Zero‑Shot Prompting. arXiv:2212.09535.
  • Biderman, S.; et al. (2023). The BigScience ROOTS Corpus: A 1.6 TB Composite Multilingual Dataset. arXiv:2303.03915.

Бележки

  1. 1.0 1.1 «BLOOM». BigScience Blog. [1]
  2. 2.0 2.1 2.2 Le Scao, T., et al. (2022). «BLOOM: A 176B-Parameter Open-Access Multilingual Language Model». arXiv:2211.05100. [2]
  3. «Researchers open-source neural network with 176B parameters». SiliconANGLE. [3]
  4. «bigscience/bloom». Hugging Face. [4]
  5. «The Technology Behind BLOOM Training». Hugging Face Blog. [5]
  6. Biderman, S. et al. (2023). «The BigScience ROOTS Corpus: A 1.6 TB Composite Multilingual Dataset». arXiv:2303.03915. [6]
  7. «BigScience OpenRAIL-M». BigScience Blog. [7]
  8. Heikkilä, M. «BLOOM is the first AI model to be under a...». X. [8]