Sobes.tech
Middle — Senior

Co je to CTC ztráta a kde se používá v ASR?

sobes.tech AI

Odpověď od AI

Ztráta CTC (Connectionist Temporal Classification) je funkce ztráty používaná k tréninku modelů, které předpovídají sekvence s nevyrovnanými vstupními a výstupními daty, například v úlohách rozpoznávání řeči (ASR).

Hlavním problémem v ASR je, že délka vstupního zvukového signálu a délka textové transkripce se neshodují, a jejich zarovnání je neznámé. CTC umožňuje modelu učit se bez explicitního zarovnání, automaticky zohledňujíc všechny možné odpovídající cesty mezi vstupními snímky a výstupními symboly.

Jak CTC funguje:

  • Model předpovídá v každém časovém kroku rozdělení pravděpodobností nad symboly (včetně speciálního symbolu "blank" — prázdný).
  • CTC vypočítává pravděpodobnost správné sekvence sčítáním všech možných cest, které lze zredukovat na cílovou sekvenci po odstranění prázdných symbolů a opakování.
  • Funkce ztráty je záporný logaritmus této pravděpodobnosti.

Použití v ASR:

  • Trénink modelů jako RNN, LSTM, Transformer, pro převod audia na text.
  • Umožňuje nevyžadovat přesné zarovnání mezi audem a textem.

Příklad: pokud model předpovídá sekvenci symbolů s prázdnými symboly a opakováními, CTC agreguje všechny cesty odpovídající cílové transkripci.

Tímto způsobem je ztráta CTC klíčovou součástí pro trénink systémů automatického rozpoznávání řeči, zejména když je zarovnání mezi audem a textem neznámé nebo obtížné získat.