T5 (Text-to-Text Transfer Transformer) (HE)
T5 (Text-to-Text Transfer Transformer) — הוא משפחה של מודלי שפה גדולים שפותחה על ידי חוקרי Google AI והוצגה בשנת 2019[1]. החידוש המרכזי של T5 הוא מסגרת עבודה (framework) אחידה מסוג «text-to-text», הרואה בכל משימת עיבוד שפה טבעית (NLP) בעיה של המרת רצף טקסט אחד לאחר. גישה זו אפשרה להשתמש במודל יחיד, בפונקציית הפסד יחידה ובנוהל אימון יחיד למגוון רחב של משימות, כגון תרגום, סיכום, מענה על שאלות וסיווג[2].
המודל מבוסס על ארכיטקטורת transformer סטנדרטית מסוג «encoder-decoder», המבדילה אותו ממודלים כמו BERT (encoder בלבד) ו-GPT (decoder בלבד). העבודה על T5 נוצרה כמחקר אמפירי רחב היקף לצורך חקירה שיטתית והשוואה של שיטות שונות של למידת העברה (transfer learning) ב-NLP, ולא כיצירת שיטה חדשנית מהותית[1].
פרדיגמת «Text-to-Text»
הרעיון המרכזי של T5 הוא שכל המשימות מנוסחות בפורמט אחיד. המודל מקבל טקסט כקלט ומייצר טקסט כפלט. כדי שהמודל יוכל להבחין בין המשימות המוטלות עליו, מתווסף לרצף הקלט קידומת-הוראה טקסטואלית מיוחדת[2].
- תרגום: `translate English to German: That is good.` → `Das ist gut.`
- סיווג סנטימנט: `sst2 sentence: a very exciting film.` → `positive`
- סיכום: `summarize: [טקסט מאמר ארוך]` → `[תקציר]`
גישה זו מפשטת באופן קיצוני את תהליך השימוש במודל, ומייתרת את הצורך בפיתוח «ראשים» ייעודיים (task-specific heads) עבור כל משימה בנפרד, כפי שאפיין ארכיטקטורות כמו BERT[3].
ארכיטקטורה וסקלאביליות
ארכיטקטורת encoder-decoder
T5 משתמש בארכיטקטורת transformer סטנדרטית המורכבת משני חלקים[1]:
- Encoder: מעבד את רצף הקלט כולו בו-זמנית, ויוצר ייצוג עשיר ומקוטקסט. כמו ב-BERT, ה-encoder של T5 הוא דו-כיווני.
- Decoder: מייצר את טקסט הפלט token אחר token (בצורה אוטו-רגרסיבית), תוך שימוש בייצוג שהתקבל מה-encoder.
מבנה היברידי זה מאפשר ל-T5 לפתור ביעילות הן משימות של הבנת שפה והן משימות של יצירת טקסט[4].
שיפורים מרכזיים
ארכיטקטורת T5 כוללת מספר שינויים ביחס למודל ה-transformer המקורי:
- Relative positional embeddings: במקום embeddings סינוסואידליים מוחלטים, T5 משתמש בצורה פשוטה אך יעילה של קידוד מיקום יחסי, שבה מתווסף לוגיט ה-attention הסחה (bias) ניתנת ללמידה, התלויה אך ורק במרחק היחסי בין tokens[1].
- נירמול שכבות (Layer Norm) מותאם: הנירמול הוצא מחוץ לחיבור השיורי (residual connection), וממנו הוסרה ההסחה האדיטיבית (bias) לשם שיפור יציבות האימון.
גדלי המודל
בעבודה המקורית הוצג המודל במספר תצורות הנבדלות בכמות הפרמטרים, מה שאפשר לחקור בשיטתיות את השפעת הסקאלה[5]:
- T5-Small: ~60 מיליון פרמטרים
- T5-Base: ~220 מיליון פרמטרים
- T5-Large: ~770 מיליון פרמטרים
- T5-3B: ~3 מיליארד פרמטרים
- T5-11B: ~11 מיליארד פרמטרים
המחקר הראה כי הגדלת הסקאלה של המודל היא אחת הדרכים האמינות ביותר לשיפור הביצועים שלו[1].
אימון מקדים: dataset C4 ומשימת Span Corruption
משימת Span Corruption
לאימון המקדים של T5 נבחרה משימת הפחתת רעש (denoising), ובמיוחד הגרסה הספציפית שלה הנקראת פגיעה בקטעים (span corruption)[6]. השיטה פועלת כך:
- ברצף הקלט, 15% מה-tokens מוסתרים באופן אקראי.
- בניגוד לשיטת MLM ב-BERT, שבה מוסתרים tokens בודדים, ב-T5 מוסתרים קטעים שלמים ורציפים (spans).
- כל קטע פגוע מוחלף ב-token מסכה ייחודי אחד (למשל, `<X>`, `<Y>`).
- המודל מאומן לייצר כפלט את רצף הקטעים שהוסרו, מופרדים על ידי המסכות המתאימות.
גישה זו מחייבת את המודל לחזות רצפי טקסט שלמים, וזה הוכח כמשימה יעילה יותר לאימון מקדים מאשר מידול שפה פשוט[1].
Dataset C4 (Colossal Clean Crawled Corpus)
כדי לממש את פוטנציאל למידת ההעברה, יצרו החוקרים מאגר נתוני טקסט עצום ומנוקה באיכות גבוהה בשם C4, בנפח של כ-750 GB[2]. הוא הופק באמצעות ניקוי וסינון נרחבים של קורפוס הרשת הזמין לציבור Common Crawl[7]. תהליך הניקוי כלל הסרת כפילויות, טקסטים שבלוניים ("Lorem ipsum"), משפטים חלקיים, וכן סינון שפה פוגענית[8].
ביקורת על dataset C4
למרות המטרה המוצהרת של יצירת קורפוס «נקי», תהליך הסינון של C4 זכה לביקורת בשל הטיות שיטתיות. מחקרים הראו כי מסנן השפה הפוגענית הסיר באופן לא פרופורציונלי טקסטים הקשורים לקהילות LGBTQ+, כמו גם טקסטים באנגלית אמריקאית אפרו-אמריקאית (AAE)[8]. בנוסף, במאגר הנתונים נמצא כמות ניכרת של תוכן פוגעני ומוגן בזכויות יוצרים. בעיות אלו ממחישות את מורכבות יצירת מאגרי נתונים «איכותיים» באופן אובייקטיבי, ואת האופן שבו החלטות טכניות על סינון עלולות להוביל להטיות חברתיות בלתי מכוונות.
תוצאות וביצועים
במועד פרסומה, T5 קבעה שיאי ביצועים חדשים (state-of-the-art) על שלל benchmarks, כולל GLUE, SuperGLUE, SQuAD ומשימות סיכום[2]. בפרט, המודל T5-11B השיג ב-SuperGLUE תוצאה הקרובה לרמה האנושית, ובכך הדגים יכולת להתמודד עם משימות הדורשות היסק לוגי מורכב[9]. תוצאות אלו אישרו את ההשערה המרכזית של המחקר: שילוב של framework אחיד, סקאלה גדולה ומאגר נתונים איכותי מהווה אסטרטגיה עוצמתית ביותר להשגת תוצאות מובילות ב-NLP.
אבולוציה וגרסאות T5
גישת T5 שימשה בסיס למגוון מודלים עוקבים:
- mT5: גרסה רב-לשונית של T5, שאומנה על הקורפוס mC4, המכסה 101 שפות[10].
- ByT5: גרסה ניסיונית שמוותרת לחלוטין על tokenization ועובדת ישירות עם בייטים גולמיים של UTF-8. הדבר הופך אותה לעמידה בפני שגיאות כתיב ומאפשר לה לטפל בכל שפה «מהקופסה»[11].
- Switch Transformer: גרסה סקאלאבילית של T5, שהכניסה את ארכיטקטורת Mixture-of-Experts (MoE), מה שאפשר להגדיל את מספר הפרמטרים לטריליונים תוך שמירה על עלויות חישוב סבירות[12].
- FLAN-T5: זו אינה ארכיטקטורה חדשה, אלא T5 סטנדרטי שעבר שלב נוסף של fine-tuning על מאות משימות שנוסחו כהוראות (instruction tuning). הדבר שיפר משמעותית את יכולתו להכללה על משימות חדשות שלא ראה קודם, במצב zero-shot (ללא דוגמאות)[13].
- UL2: מודל המפתח את רעיונות T5, המשתמש ב-objective אימון מקדים חדש בשם Mixture of Denoisers, המשלב תוכניות מיסוך טקסט שונות לשיפור האוניברסאליות[14].
קישורים חיצוניים
- מאגר T5 הרשמי ב-GitHub
- מאמר בבלוג Google Research על מחקר T5
ספרות
- 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.
הערות
- ↑ 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]