---
title: "Tokenization (NLP) (CS)"
source: "https://systems-analysis.info/int/Tokenization_(NLP)_(CS)"
wiki: "systems-analysis.info/int"
article: "Tokenization_(NLP)_(CS)"
language: "cs"
categories:
  - "Category:Core LLM concepts"
  - "Category:Czech"
  - "Category:Large language models"
  - "Category:LLM core concepts"
  - "Category:Machine learning"
revision_id: 8124
wiki_created_at: 2026-09-07T01:12:41Z
wiki_modified_at: 2026-09-07T01:12:41Z
downloaded_at: 2026-09-07T23:23:29Z
---

# Tokenization (NLP) (CS)

**Tokenizace** v kontextu velkých jazykových modelů (LLM) je základní proces předběžného zpracování, který spočívá v rozdělení textové sekvence na menší, zvládnutelné jednotky nazývané **tokeny**. Tyto tokeny jsou následně převedeny na číselné identifikátory, které může model zpracovávat. Tokenizace je kriticky důležitým prvním krokem, protože přímo ovlivňuje výkon, efektivitu, spravedlnost a kvalitu porozumění jazyku modelem.

## Základní koncepty

### Token

**Token** je diskrétní jednotka textu, kterou zpracovává jazykový model. V závislosti na zvolené metodě tokenizace může token představovat:

- Celé slovo (například „kočka").
- Část slova nebo podslovo (například „ne-", „-hled-", „-al").
- Jednotlivý znak (například „a", „b", „c").
- Bajt (v případě byte-level tokenizace).

Každému unikátnímu tokenu je přiřazen specifický indexový číslo ze **slovníku tokenizátoru**.

### Slovník tokenizátoru

**Slovník** (nebo vokabulář) je úplný soubor všech možných tokenů, které model dokáže rozpoznat. Velikost slovníku je důležitým hyperparametrem:

- Velký slovník umožňuje reprezentovat více slov jako celky, což zlepšuje porozumění a zkracuje délku sekvencí, ale zvyšuje velikost modelu a složitost trénování.
- Malý slovník je kompaktnější, ale vyžaduje rozdělení vzácných nebo složitých slov na větší počet podslov, což může prodlužovat sekvence a ztěžovat zachycení sémantiky.

Velikost slovníku se mezi modely výrazně liší: od ~50 000 tokenů v GPT-2 až po více než 100 000 v moderních modelech, jako jsou GPT-4 (100 277) a LLaMA-3 (128 000).

## Základní metody tokenizace

Existují tři základní úrovně granularity tokenizace.

### 1. Tokenizace na úrovni slov (Word-level)

- **Princip:** Text je rozdělen na jednotlivá slova na základě oddělovačů (mezery, interpunkce).
- **Výhody:** Intuitivně srozumitelná; sekvence tokenů jsou kratší, což snižuje výpočetní zátěž.
- **Nevýhody:**
  - Problém neznámých slov (Out-of-Vocabulary, OOV): Model nedokáže zpracovat slova, která nebyla ve trénovacím slovníku, ani překlepy a nová slova.
  - Velká velikost slovníku: Je třeba ukládat všechna unikátní slova, což je zvláště problematické pro jazyky s bohatou morfologií.

### 2. Tokenizace na úrovni znaků (Character-level)

- **Princip:** Text je rozdělen na jednotlivé znaky.
- **Výhody:**
  - Žádný problém OOV: Jakékoli slovo lze reprezentovat jako sekvenci znaků.
  - Malý slovník: Omezen velikostí abecedy a speciálních znaků.
- **Nevýhody:**
  - Dlouhé sekvence: Text se převádí na velmi dlouhé sekvence tokenů, což výrazně zvyšuje výpočetní náklady.
  - Ztráta sémantiky: Pro model je obtížnější zachytit význam, protože pracuje s jednotlivými znaky, nikoli s celými slovy.

### 3. Podslová tokenizace (Subword Tokenization)

Jde o přechodný a dnes nejpopulárnější přístup, který kombinuje výhody předchozích metod.

- **Princip:** Často používaná slova zůstávají jako celé tokeny, zatímco vzácná nebo neznámá slova jsou rozdělena na menší, smysluplné části (podslova).
- **Výhody:**
  - Efektivně zpracovává OOV slova a morfologické variace.
  - Řiditelná velikost slovníku.
  - Zachycuje morfologickou strukturu slov.
- **Hlavní algoritmy:**
  - **Byte Pair Encoding (BPE):** Iterativní algoritmus, který začíná se sadou znaků a postupně slučuje nejčastěji se vyskytující páry do nových tokenů. Používá se v modelech GPT. **Byte-level BPE**, používaný v GPT-2 a RoBERTa, považuje slova za sekvence bajtů, čímž zcela řeší problém OOV.
  - **WordPiece:** Algoritmus podobný BPE, ale pro slučování párů vybírá ty, které maximalizují pravděpodobnost trénovacích dat. Používá se v modelech BERT.
  - **Unigram LM:** Na rozdíl od BPE/WordPiece začíná tato metoda s velkou sadou podslov a postupně ji zmenšuje odstraňováním těch tokenů, které nejméně ovlivňují celkovou pravděpodobnost korpusu. To umožňuje vytvářet několik pravděpodobných tokenizací pro jedno slovo (podslová regularizace).
- **Nástroj SentencePiece:** Knihovna od Google, která implementuje BPE a Unigram LM a zpracovává text jako nepřetržitý proud znaků, což ji činí univerzální pro jazyky bez explicitních oddělovačů slov (například čínštinu). Používá se v modelech LLaMA a T5.

## Tokenizace v multimodálních LLM

V multimodálních modelech pracujících nejen s textem se tokenizace rozšiřuje i na další typy dat:

- **Vizuální tokenizace:** Obrázky jsou rozděleny na malé záplaty (patche) (například 16x16 pixelů), které jsou následně převedeny na vektory-tokeny, obdobně jako textové tokeny.
- **Audio tokenizace:** Nepřetržité audiosignály jsou převedeny na sekvenci diskrétních tokenů, které představují krátké zvukové úseky.
- **Jednotný přístup (TEAL):** Koncept, při němž jsou data jakékoli modality nejprve tokenizována pomocí příslušného tokenizátoru a jejich embedding jsou poté zpracovány ve společném sjednoceném prostoru.

## Problémy a omezení

Tokenizace, přes svůj velký význam, je zdrojem mnoha problémů v práci LLM:

- **Nekonzistentnost a citlivost:** Malé změny ve vstupních datech (překlep, velikost písmen, mezera na konci) mohou zásadně změnit tokenizaci, což vede k nepředvídatelnému chování modelu.
- **Vícejazyčné problémy:** Jednotný slovník pro mnoho jazyků bývá neefektivní pro nízkozdrojové nebo morfologicky bohaté jazyky, což vede k příliš dlouhým sekvencím tokenů.
- **Vliv na uvažování:** Nelogické rozdělení čísel (například „25 000" na „25", „,", „000") nebo znaků ztěžuje provádění aritmetických a symbolických úloh.
- **Glitch tokeny (Glitch Tokens):** Anomální nebo vzácné tokeny z trénovacích dat (například uživatelská jména z Redditu), které mohou způsobovat nepředvídatelné nebo škodlivé chování modelu.

## Vyvíjející se oblast a budoucí směry

Výzkum v oblasti tokenizace se aktivně rozvíjí v následujících směrech:

- **Modely bez tokenizátoru:** Vývoj modelů (CANINE, ByT5) pracujících přímo na úrovni bajtů nebo znaků, aby byl zcela odstraněn krok explicitní tokenizace a s ní spojené problémy.
- **Adaptivní a trénovatelná tokenizace:** Vytváření tokenizátorů, které se mohou dynamicky přizpůsobovat jazyku, doméně nebo dokonce konkrétnímu vstupnímu textu, nebo jsou trénovány společně s hlavním modelem.
- **Kognitivně orientované přístupy:** Vývoj metod inspirovaných kognitivní vědou o lidském zpracování jazyka (například „Princip nejmenší námahy") pro vytváření sémanticky smysluplnějších tokenizací.

## Odkazy

- Přehled tokenizace v kurzu o LLM od Hugging Face
- Dokumentace k tokenizaci od Mistral AI

## Literatura

- Schuster, M.; Nakajima, K. (2012). *Japanese and Korean Voice Search*. PDF.
- 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.
- Song, X. et al. (2021). *Fast WordPiece Tokenization*. 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.
- Clark, J. H. et al. (2022). *CANINE: Pre-Training an Efficient Tokenization-Free Encoder for Language Representation*. arXiv:2103.06874.
- Limisiewicz, T.; Balhar, J.; Mareček, D. (2023). *Tokenization Impacts Multilingual Language Modeling*. 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.
