Klasifikace a rozpoznávání
Klasifikace, rozpoznávání a shlukování, čili tři slova pro tři různé věci
V běžné řeči to jsou synonyma. V rozpoznávání ne, a je to jeden z prvních rozdílů, které musíš mít srovnané. Není to slovíčkaření - liší se tím, co o třídách víš předem, a z toho plyne, jaké metody vůbec můžeš použít.
Napiš „klasifikace" tam, kde jde o shlukování, a sáhneš po metodě, která potřebuje označená data. Ta ale nejsou a nebudou, protože kdyby byla, nebylo by co shlukovat.
Tahle stránka rozliší ty tři pojmy, zavede rozhodovací pravidlo a diskriminační funkce a řekne, na jaké stránky pokračovat. Konkrétní metody jsou jinde: příznakové, Bayesovy, shlukovací a strukturální. Nepotřebuješ k tomu nic předem.
Definice a to jediné, čím se liší
Rozpoznávání je úloha, při které objekty zařazujeme do tříd podle jejich společných vlastností tak, že vzájemně si podobné objekty zařazujeme do stejné třídy.
Z toho se dělí tři případy:
| Úloha | Počet tříd | Známé předem | Příklad |
|---|---|---|---|
| Klasifikace | pevný, známý | ano | rozpoznávání znaků |
| Rozpoznávání (v užším smyslu) | není znám předem | ne | rozpoznávání plynulé řeči |
| Shlukování | není znám | ne, jen podobnost | segmentace zákazníků |
Klasifikace zařazuje do předem známého, pevného počtu tříd. Máš deset číslic a víš, že jich je deset. Sem patří všechno učení s učitelem.
Rozpoznávání v užším smyslu znamená, že počet tříd není předem znám a třídy identifikujeme až během rozpoznávání. Typicky u plynulé řeči - dopředu nevíš, kolik slov padne a kde jedno končí a druhé začíná.
Shlukování (klastrování) zařazuje objekty do tříd na základě jejich podobnosti, přičemž příslušné třídy nejsou známy. To je učení bez učitele a je to jiná disciplína, i když výsledek vypadá podobně.
Tenhle rozdíl je nejdůležitější věc na stránce, protože rozhoduje o tom, co může být tvůj vstup. Klasifikátor potřebuje trénovací data s označením. Shlukovací algoritmus žádné označení nedostane a nemůže tedy ani spočítat přesnost, dokud mu někdo nedodá referenci.
Jak se objekt vůbec dostane dovnitř
Objekty se reprezentují prostřednictvím signálů:
- jednorozměrných - zvuky, hudba, řeč,
- dvourozměrných - snímky scén,
- vícerozměrných - obecné případy.
Podle charakteru se mluví o objektech vizuálních, akustických a taktilních.
Ze signálu se pak dělá jedna ze dvou věcí, a to je dělicí čára celého oboru:
Příznakový popis - ze signálu se spočítá vektor čísel a pracuje se s ním. Tomu se věnují příznakové metody.
Strukturální popis - objekt se popíše svými částmi a vztahy mezi nimi. Tomu se věnuje strukturální rozpoznávání.
Rozhodovací pravidlo
Klasifikátor přiřazuje objekt do třídy pomocí skalární funkce:
ω = d(x) případně ω = d(x, q)
kde x je popis objektu a q je nastavení klasifikátoru - tedy to, co se natrénuje.
Ten druhý zápis je ten, který se v praxi používá. Rozděluje totiž klasifikátor na dvě části: strukturu, kterou navrhneš ty (funkce d), a parametry, které se naučí z dat (vektor q). U perceptronu jsou q váhy, u k-NN je to celá trénovací množina, u naivního Bayese tabulka pravděpodobností.
Diskriminační funkce
Praktičtější způsob, jak klasifikátor postavit: každé třídě ωi přiřaď funkci gi(x) a klasifikátor pak vybere tu s nejvyšší hodnotou:
ω* = arg max gi(x)
i∈I
Tenhle zápis se ti bude vracet pořád, tak si ho zapamatuj. Skoro každý klasifikátor v téhle wiki se dá napsat jako arg max z něčeho:
| Metoda | Co je gi(x) |
|---|---|
| Bayesův klasifikátor | `p(x |
| Minimální vzdálenost | −‖ei − x‖, tedy záporná vzdálenost od etalonu |
| Neuronová síť | i-tý výstup po softmaxu |
| k-NN | počet sousedů z třídy i mezi k nejbližšími |
Hranice mezi třídami je pak množina bodů, kde se dvě diskriminační funkce rovnají. Odtud plyne, proč je perceptron lineární klasifikátor - jeho g je lineární funkce, takže gi(x) = gj(x) je rovnice nadroviny.
Co si odnést
Klasifikace = známé třídy. Potřebuje označená trénovací data.
Rozpoznávání = neznámý počet tříd, určuje se za běhu. Typicky u spojitého signálu.
Shlukování = žádné třídy, jen podobnost. Učení bez učitele.
Rozhodovací pravidlo d(x, q) odděluje strukturu od naučených parametrů.
Skoro každý klasifikátor je arg max z diskriminační funkce. Liší se jen tím, co do ní dosadíš.
Kam dál
- Příznakové metody - objekt jako vektor čísel, LBP, k-NN, rozhodovací stromy
- Bayesova klasifikace - pravděpodobnostní pohled a naivní Bayes
- Shlukování - k-means, hierarchické metody, DBSCAN
- Strukturální rozpoznávání - objekt jako primitiva a vztahy mezi nimi
- Metriky a vyhodnocení - jak se pozná, že to funguje