Token (LLM) (HE)

From Systems analysis Wiki
Jump to navigation Jump to search

טוקן (token) — היחידה המינימלית של טקסט שאיתה מסוגלות לעבוד מודלות שפה גדולות (LLM). כל טקסט מומר לפני עיבודו ב-LLM לרצף של טוקנים, אשר לאחר מכן מתורגמים לייצוגים מספריים המתאימים לניתוח ועיבוד על ידי המודל.

בהתאם לאסטרטגיית ה-tokenization הנמצאת בשימוש, טוקן יכול לייצג:

  • מילה שלמה (למשל, "בית")
  • חלק ממילה או שורש (למשל, "בית" ב"בית קטן")
  • תו בודד או סימן פיסוק (למשל, ",", "!")

שימוש בטוקנים מאפשר למודלות שפה ללמוד ולשחזר ביעילות מבני טקסט, לזהות דפוסים, כמו גם להבין את הסמנטיקה והתחביר של הטקסט.

תהליך ה-Tokenization

Tokenization — הוא תהליך פירוק הטקסט המקורי לטוקנים ולאחר מכן המרתם למזהים מספריים המובנים למודל.

שלב זה הוא חובה ויסודי לפעולתן של מודלות שפה גדולות. בעזרתו מקבל ה-LLM את היכולת:

  • לנתח תחביר — את מבנה הטקסט ומיקום האלמנטים (מילים וצירופים);
  • לחלץ סמנטיקה — את המשמעות העמוקה של הטקסט והקשרים בין האלמנטים.

נבדלים מספר שיטות עיקריות של tokenization, ביניהן:

  • Byte Pair Encoding (BPE): אלגוריתם שמחליף באופן איטרטיבי את זוגות התווים התכופים ביותר בטוקנים חדשים, מה שמאפשר עיבוד יעיל של מילים נדירות ווריאציות מורפולוגיות.
  • WordPiece: משמש במודלי BERT ומפרק מילים ליחידות תת-מילוניות, מה שמסייע בעיבוד מילים לא מוכרות.
  • SentencePiece: שיטה המתייחסת לטקסט כרצף של תווים ומיישמת מודלים מבוססי BPE או Unigram לצורך tokenization.

בחירת שיטת ה-tokenization משפיעה על ביצועי המודל, יכולתו לעבד שפות שונות ועל יעילות האימון.

טוקנים מיוחדים

מלבד הטוקנים הבסיסיים, מודלות משתמשות גם בטוקנים מיוחדים לסימון אלמנטים פונקציונליים של הטקסט, כגון:

  • [CLS] (class) — טוקן תחילת רצף, המשמש לרוב למשימות סיווג טקסט;
  • [SEP] (separator) — מפריד בין חלקים שונים של הטקסט (למשל, שאלה ותשובה, משפטים או פסקאות);
  • [MASK] — טוקן מיוחד לסימון מילה שהמודל צריך לחזות (משמש ב-BERT ובמודלי masked-language אחרים);
  • [PAD] (padding) — משמש ליישור הטקסט לפי אורך.

טוקנים מיוחדים אלה מסייעים למודלות לתפוס בצורה מדויקת יותר את המבנה וההקשר של הטקסט המעובד.

טוקנים וחלון ההקשר

חלון הקשר (context window) — הוא המספר המרבי של טוקנים שהמודל מסוגל להתחשב בהם ולעבדם בו-זמנית בעת יצירת טקסט.

למשל, למודל GPT-3 יש חלון הקשר בגודל 2048 טוקנים. משמעות הדבר היא שבעת יצירת טקסט המודל יכול להתחשב בו-זמנית במידע הכלול לכל היותר ב-2048 טוקנים של הטקסט המקורי. גודל חלון ההקשר משפיע על:

  • הכמות המרבית של מידע הזמין למודל;
  • האיכות והמשמעותיות של התשובות שנוצרו;
  • יכולת המודל לתפוס טקסטים ארוכים ולשמור על הקשר על פני מרחק גדול בין טוקנים.

ספרות

  • Sennrich, R.; Haddow, B.; Birch, A. (2016). Neural Machine Translation of Rare Words with Subword Units. arXiv:1508.07909.
  • Kudo, T.; Richardson, J. (2018). SentencePiece: A Simple and Language-Independent Subword Tokenizer and Detokenizer for Neural Text Processing. arXiv:1808.06226.
  • Kudo, T. (2018). Subword Regularization: Improving Neural Network Translation Models with Multiple Subword Candidates. arXiv:1804.10959.
  • Devlin, J. et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
  • Song, X. et al. (2021). Fast WordPiece Tokenization. *EMNLP 2021*. ACL Anthology.
  • Mielke, S. J.; Dalmia, S.; Cotterell, R. (2021). A Brief History of Open-Vocabulary Modeling and Tokenization in NLP. arXiv:2112.10508.
  • Xue, J. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
  • Limisiewicz, T.; Balhar, J.; Mareček, D. (2023). Tokenization Impacts Multilingual Language Modeling: Assessing Vocabulary Allocation and Overlap Across Languages. arXiv:2305.17179.
  • Pourmostafa Roshan Sharami, J.; Shterionov, D.; Spronck, P. (2023). A Systematic Analysis of Vocabulary and BPE Settings for Optimal Fine-tuning of NMT. arXiv:2303.00722.
  • Batsuren, K. et al. (2024). Evaluating Subword Tokenization: Alien Subword Composition and OOV Generalization Challenge. arXiv:2404.13292.
  • Chai, Y. et al. (2024). Tokenization Falling Short: On Subword Robustness in Large Language Models. arXiv:2406.11687.