Token (LLM) (RO)

From Systems analysis Wiki
Jump to navigation Jump to search

Token (token) — unitatea minimă de text cu care pot lucra modelele lingvistice mari (LLM). Orice text este convertit în prealabil într-o secvență de token-uri înainte de a fi procesat de un LLM, acestea fiind apoi traduse în reprezentări numerice, convenabile pentru analiza și procesarea de către model.

În funcție de strategia de tokenizare utilizată, un token poate reprezenta:

  • Un cuvânt întreg (de exemplu, „casă\")
  • O parte a unui cuvânt sau o rădăcină (de exemplu, „cas" în „căsuță\")
  • Un singur caracter sau semn de punctuație (de exemplu, „,\", \"!\")

Utilizarea token-urilor permite modelelor lingvistice să studieze și să reproducă eficient structurile textului, să identifice tipare, precum și să înțeleagă semantica și sintaxa textului.

Procesul de tokenizare

Tokenizarea (tokenization) — este procesul de segmentare a textului sursă în token-uri, urmată de conversia acestora în identificatori numerici înțeleși de model.

Această etapă este obligatorie și fundamentală pentru funcționarea modelelor lingvistice mari. Cu ajutorul ei, LLM dobândește capacitatea de a:

  • Analiza sintaxa — structura textului și dispunerea elementelor (cuvinte și fraze);
  • Extrage semantica — sensul profund al textului și relațiile dintre elemente.

Se disting câteva metode principale de tokenizare, printre care:

  • Byte Pair Encoding (BPE): Un algoritm care înlocuiește iterativ cele mai frecvente perechi de caractere cu token-uri noi, permițând procesarea eficientă a cuvintelor rare și a variațiilor morfologice.
  • WordPiece: Utilizat în modelele BERT, descompune cuvintele în unități sub-cuvânt, ajutând la procesarea cuvintelor necunoscute.
  • SentencePiece: O metodă care tratează textul ca o secvență de caractere și aplică modele bazate pe BPE sau Unigram pentru tokenizare.

Alegerea metodei de tokenizare influențează performanța modelului, capacitatea sa de a procesa diverse limbi și eficiența antrenării.

Token-uri speciale

Pe lângă token-urile de bază, modelele utilizează și token-uri speciale pentru a marca elementele funcționale ale textului, cum ar fi:

  • [CLS] (class) — token de început al secvenței, utilizat frecvent pentru sarcini de clasificare a textului;
  • [SEP] (separator) — separă diferite părți ale textului (de exemplu, întrebarea și răspunsul, propozițiile sau paragrafele);
  • [MASK] — token special pentru marcarea cuvântului pe care modelul trebuie să îl prezică (utilizat în BERT și alte modele masked-language);
  • [PAD] (padding) — utilizat pentru alinierea textului la o lungime uniformă.

Aceste token-uri speciale ajută modelele să perceapă mai precis structura și contextul textului procesat.

Token-uri și fereastra de context

Fereastra de context (context window) — reprezintă numărul maxim de token-uri pe care modelul le poate lua în considerare și procesa simultan în timpul generării textului.

De exemplu, modelul GPT-3 are o fereastră de context de 2048 de token-uri. Aceasta înseamnă că, la generarea textului, modelul poate lua în considerare simultan informațiile conținute în maximum 2048 de token-uri din textul sursă. Dimensiunea ferestrei de context influențează:

  • Volumul maxim de informații disponibil modelului;
  • Calitatea și coerența răspunsurilor generate;
  • Capacitatea modelului de a procesa texte lungi și de a menține contextul pe distanțe mari între token-uri.

Bibliografie

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