BLOOM (language model) (SV)

From Systems analysis Wiki
Jump to navigation Jump to search

BLOOM (BigScience Large Open-science Open-access Multilingual Language Model) — är en stor språkmodell (LLM) med öppen åtkomst som innehåller 176 miljarder parametrar. Den utvecklades 2022 inom ramen för projektet BigScience — ett internationellt samarbete mellan mer än 1000 forskare från 70 länder under ledning av företaget Hugging Face[1].

BLOOM är en autoregressiv transformer-modell som kan generera sammanhängande text på 46 naturliga språk och 13 programmeringsspråk. Modellen tränades på superdatorn Jean Zay i Frankrike och blev ett av de första genuint öppna alternativen till slutna modeller som GPT-3 från OpenAI[2].

Bakgrund och utveckling

Initiativet BigScience lanserades i maj 2021 med målet att demokratisera AI-forskning genom att gemensamt skapa en stor öppen språkmodell[1]. Vid den tidpunkten utvecklades de ledande LLM:erna, såsom GPT-3, i slutna miljöer inom stora företag som inte publicerade arkitektur, träningsdata eller källkod. Projektet BigScience samlade mer än tusen frivilliga forskare från hela världen för att skapa en konkurrenskraftig och fullt öppen modell.

Projektet erhöll ett beräkningsresursbidrag för den franska superdatorn Jean Zay (IDRIS/CNRS). Träningen av modellen genomfördes från den 11 mars till den 6 juli 2022[3]. Utvecklingen bedrevs med maximal transparens: teamet publicerade information om dataurval och träningsinställningar samt genomförde offentliga diskussioner i enlighet med projektets antagna etiska stadga.

Arkitektur och träning

Modellarkitektur

BLOOM bygger på en autoregressiv transformer-arkitektur (decoder-only), liknande modellen GPT-3[2].

Arkitektoniska egenskaper hos BLOOM[4]
Parameter Egenskap
Typ Decoder-only transformer
Parametrar 176 247 271 424
Lager (layers) 70
Attention-huvuden 112
Doldt tillståndsdimension 14 336
Sekvenslängd 2048 token
Aktiveringsfunktion GeLU; positionskodning ALiBi

Modellen implementerades med hjälp av ramverken Megatron-LM och DeepSpeed, utvecklade av Nvidia respektive Microsoft, med ett antal modifieringar för effektiv distribuerad träning[5].

Träningsdata

BLOOM tränades på ett specialskapat textdatakorpus kallat ROOTS (The Responsible Open-science Open-collaboration Text Sources). Den totala datamängden uppgick till 1,6 terabyte rensat och deduplicerat text (≈366 miljarder token)[6].

Korpuset innehåller texter på 59 språk:

  • 46 naturliga språk, inklusive engelska (30 % av token), kinesiska, franska, spanska, arabiska samt ett flertal lågresursspråk (till exempel Chi Tumbuka — 0,00002 % av token).
  • 13 programmeringsspråk, inklusive Python, Java, JavaScript och C++.

Detta flerspråkiga och flerdomäns-dataset samlades in medvetet för att göra modellen användbar för ett brett spektrum av språkgemenskaper.

Prestanda och tillämpning

BLOOM uppvisar konkurrenskraftiga resultat på en mängd olika benchmark, jämförbara med modeller av liknande storlek såsom OPT-175B från Meta, trots sin flerspråkighet[2].

Modellen kan utföra ett brett spektrum av uppgifter i zero-shot-läge (utan ytterligare träning), bland annat:

  • Textgenerering i en given stil.
  • Sammanfattning av dokument.
  • Frågebesvarande utifrån kontext.
  • Översättning mellan språk.
  • Generering av enkel programkod.

För att förbättra den praktiska användbarheten genomförde BigScience-teamet senare ytterligare multitask fine-tuning av modellen och skapade versionen BLOOMZ, som följer användarinstruktioner mer precist.

Licensiering och öppen åtkomst

Den fullständiga 176-miljardersmodellen BLOOM, dess källkod och data publicerades i juli 2022. Modellen distribueras under den särskilt framtagna licensen RAIL (Responsible AI License) v1.0[7].

Denna licens tillåter kostnadsfri användning och modifiering av modellen, men ålägger ett antal begränsningar för dess tillämpning inom vissa områden. I synnerhet är det förbjudet att använda BLOOM för ändamål som strider mot BigSciences etiska normer, såsom:

  • Massövervakning.
  • Algoritmisk diskriminering.
  • Spridning av desinformation.
  • Styrning av letala vapensystem.

BLOOM blev den första stora AI-modellen som släpptes under en licens med uttryckliga klausuler om ansvarsfull användning[8].

Litteratur

  • 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.

Noter

  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]