Umělá inteligence
Obsah Soubory
Rozpoznávání

Klasifikace a rozpoznávání

Aktualizováno 4 min čtení 657 slov

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