Zero shot learning
Čo je zero shot learning?
Zero shot learning je technika strojového učenia, pri ktorej model dokáže klasifikovať alebo rozpoznať objekty a koncepty, s ktorými sa počas trénovania nikdy nestretol. Na rozdiel od tradičných prístupov, kde model potrebuje príklady každej triedy, zero shot learning využíva sémantické informácie a vzťahy medzi triedami na generalizáciu znalostí na úplne nové kategórie.
Princípy zero shot learning
Základom zero shot learning je prepojenie vizuálnych alebo textových reprezentácií s popismi tried prostredníctvom zdieľaného sémantického priestoru. Model sa učí mapovať vstupy do tohto priestoru, kde sú triedy reprezentované pomocou atribútov, textových popisov alebo vektorových embeddingov.
Kľúčovú úlohu zohráva transfer learning. Model prenáša znalosti získané z tréningových tried na nové, nevidené triedy. Tento prenos je možný vďaka tomu, že model neučí priamo rozpoznávať konkrétne triedy, ale učí sa chápať vzťahy medzi vlastnosťami objektov a ich popismi.
V kontexte veľkých jazykových modelov sa zero shot learning prejavuje schopnosťou modelu vykonávať úlohy len na základe inštrukcie v prompte, bez potreby ukážkových príkladov. Model využíva znalosti nadobudnuté počas predtrénovania na rozsiahly korpus textov.
Typy zero shot learning
Rozlišujeme niekoľko variantov tejto techniky podľa miery dostupných informácií:
- Čisté zero shot learning – model nemá žiadne príklady cieľových tried, iba ich sémantické popisy
- Generalizované zero shot learning – model klasifikuje súčasne tréningové aj nové triedy
- Transduktívne zero shot learning – model má prístup k neoznačeným dátam z cieľových tried počas trénovania
Každý variant má svoje špecifické využitie. Čisté zero shot learning je najnáročnejšie, ale najpraktickejšie v scenároch, kde nové triedy vznikajú dynamicky.
…termín „shot“ v kontexte strojového učenia označuje počet príkladov z danej triedy, nie pokus? Zero shot teda znamená nula príkladov, few shot znamená niekoľko príkladov.
Príklady použitia zero shot learning
V počítačovom videní sa zero shot learning využíva na rozpoznávanie objektov z kategórií, ktoré neboli súčasťou trénovacích dát. Napríklad model natrénovaný na rozpoznávanie bežných zvierat dokáže identifikovať vzácne druhy len na základe ich textového popisu.
V spracovaní prirodzeného jazyka túto techniku využívajú veľké jazykové modely na klasifikáciu textov do kategórií definovaných používateľom. Model dokáže určiť sentiment, tému alebo zámer textu bez špecifického trénovania na danú úlohu.
Medicínska diagnostika predstavuje ďalšiu oblasť využitia. Modely môžu identifikovať zriedkavé ochorenia na základe popisu symptómov, aj keď tréningové dáta obsahovali len bežné diagnózy.
Obmedzenia zero shot learning
Hlavnou výzvou zostáva takzvaný domain shift – rozdiel medzi distribúciou tréningových a cieľových tried. Ak sú nové triedy príliš odlišné od tréningových, kvalita predikcií výrazne klesá. Generalizácia je tiež závislá od kvality sémantických popisov tried.
Ďalším obmedzením je nižšia presnosť v porovnaní s tradičným učením s učiteľom, kde má model k dispozícii príklady všetkých tried. Zero shot learning preto nie je vhodný pre úlohy vyžadujúce vysokú presnosť v kritických aplikáciách.
Zdroje a odkazy
Použité zdroje:
- Xian et al. (2017) – Zero-Shot Learning – A Comprehensive Evaluation of the Good, the Bad and the Ugly: https://arxiv.org/abs/1707.00600
Odporúčané zdroje:
- Papers With Code – Zero-Shot Learning: https://paperswithcode.com
Uvedené informácie sú orientačné a môžu sa líšiť v závislosti od verzie, implementácie a prostredia.