Token (LLM) (FA)

From Systems analysis Wiki
Jump to navigation Jump to search

توکن (token) — کوچک‌ترین واحد متنی است که مدل‌های زبانی بزرگ (LLM) قادر به پردازش آن هستند. هر متنی پیش از پردازش توسط LLM ابتدا به دنباله‌ای از توکن‌ها تبدیل می‌شود و سپس این توکن‌ها به بازنمایی‌های عددی مناسب برای تحلیل و پردازش توسط مدل ترجمه می‌شوند.

بسته به راهبرد توکن‌سازی مورد استفاده، یک توکن می‌تواند نمایانگر موارد زیر باشد:

  • یک کلمهٔ کامل (مانند «خانه»)
  • بخشی از کلمه یا ریشه (مانند «خانه» در «خانه‌کوچک»)
  • یک نویسه یا علامت نگارشی منفرد (مانند «,» یا «!»)

استفاده از توکن‌ها به مدل‌های زبانی امکان می‌دهد ساختارهای متن را به‌صورت مؤثر فراگیرند و بازتولید کنند، الگوها را شناسایی کنند، و معناشناسی و نحو متن را درک نمایند.

Tokenization - توکن‌سازی

توکن‌سازی (tokenization) — فرایند تقسیم متن مبدأ به توکن‌ها و تبدیل آن‌ها به شناسه‌های عددی قابل‌فهم برای مدل است.

این مرحله برای عملکرد مدل‌های زبانی بزرگ اجباری و بنیادین است. از طریق این فرایند، LLM قادر می‌شود:

  • نحو را تحلیل کند — ساختار متن و جایگاه عناصر (کلمات و عبارات) را بررسی نماید؛
  • معناشناسی را استخراج کند — مفهوم عمیق متن و روابط میان عناصر را دریابد.

چند روش اصلی توکن‌سازی وجود دارد که از جمله آن‌ها می‌توان به موارد زیر اشاره کرد:

  • Byte Pair Encoding (BPE): الگوریتمی که به‌صورت تکراری متداول‌ترین جفت‌های نویسه را با توکن‌های جدید جایگزین می‌کند و این امر پردازش مؤثر کلمات نادر و تنوعات صرفی را ممکن می‌سازد.
  • WordPiece: در مدل‌های BERT استفاده می‌شود و کلمات را به واحدهای زیرکلمه‌ای تقسیم می‌کند که در پردازش کلمات ناشناخته مفید است.
  • SentencePiece: روشی که متن را به‌عنوان دنباله‌ای از نویسه‌ها در نظر می‌گیرد و از مدل‌های مبتنی بر BPE یا Unigram برای توکن‌سازی بهره می‌برد.

انتخاب روش توکن‌سازی بر کارایی مدل، توانایی آن در پردازش زبان‌های مختلف و بهره‌وری آموزش تأثیر می‌گذارد.

توکن‌های ویژه

علاوه بر توکن‌های اصلی، مدل‌ها از توکن‌های ویژه‌ای نیز برای نشان دادن عناصر کارکردی متن استفاده می‌کنند، از جمله:

  • [CLS] (class) — توکن آغاز دنباله که اغلب برای وظایف طبقه‌بندی متن به‌کار می‌رود؛
  • [SEP] (separator) — بخش‌های مختلف متن را از هم جدا می‌کند (مانند سؤال و جواب، جملات یا بندها)؛
  • [MASK] — توکن ویژه‌ای برای نشان دادن کلمه‌ای که مدل باید پیش‌بینی کند (در BERT و سایر مدل‌های masked-language استفاده می‌شود)؛
  • [PAD] (padding) — برای هم‌طول کردن متن‌ها به‌کار می‌رود.

این توکن‌های ویژه به مدل‌ها کمک می‌کنند ساختار و بافت متن در حال پردازش را با دقت بیشتری درک کنند.

Context Window - پنجرهٔ متنی

پنجرهٔ متنی (context window) — حداکثر تعداد توکن‌هایی است که مدل می‌تواند هم‌زمان در هنگام تولید متن در نظر بگیرد و پردازش کند.

برای مثال، مدل GPT-3 دارای پنجرهٔ متنی به اندازهٔ ۲۰۴۸ توکن است. این بدان معناست که هنگام تولید متن، مدل می‌تواند هم‌زمان اطلاعات موجود در حداکثر ۲۰۴۸ توکن از متن مبدأ را در نظر بگیرد. اندازهٔ پنجرهٔ متنی بر موارد زیر تأثیر می‌گذارد:

  • حجم حداکثر اطلاعات در دسترس مدل؛
  • کیفیت و انسجام پاسخ‌های تولیدشده؛
  • توانایی مدل در پردازش متون طولانی و حفظ بافت در فاصله‌های زیاد میان توکن‌ها.

منابع

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