T5 (Text-to-Text Transfer Transformer) (SV)
T5 (Text-to-Text Transfer Transformer) — är en familj av stora språkmodeller, utvecklad av forskare vid Google AI och presenterad år 2019[1]. Den centrala innovationen i T5 är ett enhetligt «text-to-text»-ramverk som behandlar varje uppgift inom naturlig språkbehandling (NLP) som ett problem med att omvandla en textsekvens till en annan. Detta möjliggjorde användningen av en enda modell, en enda förlustfunktion och ett enda träningsförfarande för ett brett spektrum av uppgifter, såsom översättning, sammanfattning, frågesvar och klassificering[2].
Modellen är baserad på standardarkitekturen för transformer med «enkoder-dekoder», vilket skiljer den från modeller av typen BERT (enbart enkoder) och GPT (enbart dekoder). Arbetet med T5 utformades som en storskalig empirisk studie för att systematiskt undersöka och jämföra olika metoder för transfer learning inom NLP, snarare än att skapa en principiellt ny metod[1].
Paradigmet «Text-to-Text»
Kärnidén i T5 är att alla uppgifter formuleras i ett enhetligt format. Modellen tar emot text som indata och genererar text som utdata. För att modellen ska kunna skilja mellan de uppgifter den ställs inför läggs ett speciellt prefix-instruktion till i indatasekvensen[2].
- Översättning: `translate English to German: That is good.` → `Das ist gut.`
- Sentimentklassificering: `sst2 sentence: a very exciting film.` → `positive`
- Sammanfattning: `summarize: [lång artikeltext]` → `[kortfattad sammanfattning]`
Detta tillvägagångssätt förenklar radikalt tillämpningen av modellen och eliminerar behovet av att utveckla uppgiftsspecifika «huvuden» (task-specific heads) för varje enskild uppgift, vilket var karaktäristiskt för arkitekturer som BERT[3].
Arkitektur och skalning
Enkoder-dekoder-arkitektur
T5 använder en standard-transformer-arkitektur bestående av två delar[1]:
- Enkoder: Bearbetar hela indatasekvensen samtidigt och skapar en rik kontextualiserad representation. Precis som i BERT är T5:s enkoder dubbelriktad.
- Dekoder: Genererar utdatatexten token för token (autoregressivt) med hjälp av den representation som erhållits från enkoderns.
Denna hybrida struktur gör det möjligt för T5 att effektivt hantera både uppgifter som rör språkförståelse och uppgifter som rör textgenerering[4].
Viktiga förbättringar
T5:s arkitektur inkluderar flera förändringar jämfört med den ursprungliga transformer-modellen:
- Relativa positionella embeddings: Istället för absoluta sinusoidala embeddings använder T5 en förenklad men effektiv form av relativ positionskodning, där ett träningsbart skalärt förskjutningsvärde (bias), som enbart beror på det relativa avståndet mellan tokens, läggs till i attention-logitarna[1].
- Modifierad lagnormalisering (Layer Norm): Normaliseringen är placerad utanför den residuala kopplingen (residual connection), och det additiva förskjutningsvärdet (bias) har tagits bort för att öka träningsstabiliteten.
Modellskalor
I det ursprungliga arbetet presenterades modellen i flera konfigurationer med varierande antal parametrar, vilket möjliggjorde en systematisk studie av skalningens inverkan[5]:
- T5-Small: ~60 miljoner parametrar
- T5-Base: ~220 miljoner parametrar
- T5-Large: ~770 miljoner parametrar
- T5-3B: ~3 miljarder parametrar
- T5-11B: ~11 miljarder parametrar
Studien visade att ökad modellskala är ett av de mest tillförlitliga sätten att förbättra modellens prestanda[1].
Förträning: datasetet C4 och uppgiften Span Corruption
Uppgiften Span Corruption
För förträning av T5 valdes en avbrusnings-uppgift (denoising), närmare bestämt en specifik variant kallad fragmentskadning (span corruption)[6]. Metoden fungerar på följande sätt:
- I indatatexten maskeras slumpmässigt 15 % av tokens.
- Till skillnad från MLM-metoden i BERT, där enskilda tokens maskeras, maskeras i T5 hela sammanhängande fragment (spans).
- Varje skadat fragment ersätts med en enda unik mask-token (till exempel `<X>`, `<Y>`).
- Modellen tränas att generera en sekvens av de borttagna fragmenten, åtskilda av motsvarande masker, som utdata.
Detta tillvägagångssätt tvingar modellen att förutsäga hela textsekvenser, vilket visade sig vara en mer effektiv förträningsuppgift än enkel språkmodellering[1].
Datasetet C4 (Colossal Clean Crawled Corpus)
För att förverkliga potentialen hos transfer learning skapade forskarna en enorm och kvalitetsmässigt renad textdatamängd, C4, med en storlek på ungefär 750 GB[2]. Den togs fram genom storskalig rensning och filtrering av det offentligt tillgängliga webbkorpusen Common Crawl[7]. Rensningsprocessen inkluderade borttagning av dubbletter, malltext ("Lorem ipsum"), ofullständiga meningar samt filtrering av obscent språk[8].
Kritik mot datasetet C4
Trots det uttalade målet att skapa ett «rent» korpus har filtreringsprocessen för C4 kritiserats för systematiska snedvridningar. Forskning har visat att ordfiltret oproportionerligt raderade texter kopplade till HBTQ+-gemenskaper, liksom texter på afroamerikansk engelska (AAE)[8]. Dessutom påträffades en betydande mängd kränkande och upphovsrättsskyddat innehåll i datasetet. Dessa problem illustrerar svårigheten med att skapa objektivt «högkvalitativa» datamängder och hur tekniska filtreringsbeslut kan leda till oavsiktliga sociala snedvridningar.
Resultat och prestanda
Vid publiceringen satte T5 nya prestandarekord (state-of-the-art) på en mängd benchmark, inklusive GLUE, SuperGLUE, SQuAD och sammanfattningsuppgifter[2]. Framför allt uppnådde modellen T5-11B på SuperGLUE ett resultat nära mänsklig nivå och visade därigenom förmågan att klara uppgifter som kräver komplex logisk slutledning[9]. Dessa resultat bekräftade forskningens centrala hypotes: kombinationen av ett enhetligt ramverk, stor skala och ett högkvalitativt dataset är en ytterst kraftfull strategi för att uppnå ledande resultat inom NLP.
Utveckling och varianter av T5
T5-ansatsen har legat till grund för ett flertal efterföljande modeller:
- mT5: En flerspråkig version av T5, tränad på korpusen mC4 som täcker 101 språk[10].
- ByT5: En experimentell version som helt avstår från tokenisering och arbetar direkt med råa UTF-8-bytes. Detta gör den robust mot stavfel och möjliggör hantering av vilket språk som helst «ur kartongen»[11].
- Switch Transformer: En skalbar version av T5 som introducerade arkitekturen Mixture-of-Experts (MoE), vilket möjliggjorde en ökning av antalet parametrar till biljoner samtidigt som rimliga beräkningskostnader bibehölls[12].
- FLAN-T5: Detta är inte en ny arkitektur, utan en standard-T5 som genomgått ett ytterligare steg av finjustering på hundratals uppgifter formulerade som instruktioner (instruction tuning). Detta förbättrade avsevärt dess förmåga att generalisera till nya, tidigare osedda uppgifter i zero-shot-läge (utan exempel)[13].
- UL2: En modell som vidareutvecklar T5:s idéer och använder ett nytt förträningsobjektiv kallat Mixture of Denoisers, vilket kombinerar olika maskningsscheman för text i syfte att förbättra universaliteten[14].
Referenser
- Officiellt T5-arkiv på GitHub
- Inlägg på Google Research-bloggen om T5-forskningen
Litteratur
- Vaswani, A. et al. (2017). Attention Is All You Need. arXiv:1706.03762.
- Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. arXiv:1910.10683.
- Xue, L. et al. (2021). mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer. arXiv:2010.11934.
- Dodge, J. et al. (2021). Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus. arXiv:2104.08758.
- Fedus, W. et al. (2021). Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity. arXiv:2101.03961.
- Ni, J. et al. (2021). Sentence-T5: Scalable Sentence Encoders from Pre-trained Text-to-Text Models. arXiv:2108.08877.
- Guo, M. et al. (2021). LongT5: Efficient Text-To-Text Transformer for Long Sequences. arXiv:2112.07916.
- Xue, L. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
- Tay, Y. et al. (2022). UL2: Unifying Language Learning Paradigms. arXiv:2205.05131.
- Chung, H. W. et al. (2022). Scaling Instruction-Finetuned Language Models. arXiv:2210.11416.
- Longpre, S. et al. (2023). The Flan Collection: Designing Data and Methods for Effective Instruction Tuning. arXiv:2301.13688.
Noter
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 Raffel, Colin; Shazeer, Noam; Roberts, Adam; et al. «Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer». Journal of Machine Learning Research. [1]
- ↑ 2.0 2.1 2.2 2.3 «Exploring Transfer Learning with T5: the Text-To-Text Transfer Transformer». Google Research Blog. [2]
- ↑ «A Detailed Look At Google's T5 Model in NLP». DhiWise Blog. [3]
- ↑ «T5 (Text-to-Text Transfer Transformer)». GeeksforGeeks. [4]
- ↑ «T5». Hugging Face Transformers Documentation. [5]
- ↑ «T5 (language model)». In Wikipedia. [6]
- ↑ «C4 Dataset». Papers With Code. [7]
- ↑ 8.0 8.1 Dodge, J.; Sap, M.; Marasović, A.; et al. «Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus». arXiv. [8]
- ↑ «Google T5 algorithm scores 88.9 on SuperGLUE languge benchmark, compared to 89.8 human baseline». Reddit, r/linguistics. [9]
- ↑ Xue, Linting; Constant, Noah; Roberts, Adam; et al. «mT5: A massively multilingual pre-trained text-to-text transformer». arXiv. [10]
- ↑ Xue, Linting; Barua, Aditya; Constant, Noah; et al. «ByT5: Towards a token-free future with pre-trained byte-to-byte models». arXiv. [11]
- ↑ Fedus, William; Zoph, Barret; Shazeer, Noam. «Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity». arXiv. [12]
- ↑ Chung, Hyung Won; et al. «Scaling Instruction-Finetuned Language Models». arXiv. [13]
- ↑ Tay, Yi; Dehghani, Mostafa; Tran, Vinh; et al. «UL2: Unifying Language Learning Paradigms». arXiv. [14]