Few-shot a Zero-shot
Učení s malým počtem příkladů (Few-shot Learning, FSL) a učení bez příkladů (Zero-shot Learning, ZSL) — to jsou paradigmata strojového učení zaměřená na řešení problému nedostatku označených dat. Umožňují modelům učit se a zobecňovat znalosti na základě velmi omezeného množství informací, což je klíčové pro využití umělé inteligence v reálných scénářích, kde je shromažďování velkých datových sad nemožné nebo neúčelné.
Všudypřítomný problém nedostatku dat
Moderní modely hlubokého učení dosahují působivých výsledků, ale jejich efektivita zpravidla přímo závisí na obrovských objemech označených dat. Shromažďování a anotování takových dat je nákladný, pracně náročný a často nemožný proces. Tento problém, známý jako „informační hlad", je obzvláště akutní v oblastech, jako jsou:
- Diagnostika vzácných onemocnění.
- Specializovaná průmyslová výroba.
- Robotika a interakce s novými objekty.
- Kategorizace neustále vznikajících nových produktů nebo témat.
FSL a ZSL nabízejí řešení tím, že přesouvají důraz z „velkých dat" na „chytrá data", se zaměřením na efektivní přenos a zobecňování znalostí.
Učení s malým počtem příkladů (Few-shot Learning)
Few-shot Learning (FSL) — je paradigma, ve kterém se model učí rozpoznávat nové třídy na základě velmi malého počtu označených příkladů (obvykle 1 až 5), nazývaných opěrná sada (support set).
Klíčová myšlenka
Základní myšlenka FSL spočívá nikoli v pouhém naučení příznaků pro konkrétní třídy, ale v naučení procesu učení (learning to learn). Model musí rychle se přizpůsobit novým, dosud neznámým úlohám s využitím minimálního počtu příkladů. Toho je dosaženo prostřednictvím předem získaných znalostí a strategií adaptace.
Základní přístupy v FSL
- Meta-učení („Učení se učit"): Jde o dominantní paradigma ve FSL. Model se trénuje na množství různorodých úloh, aby se naučil efektivně přizpůsobovat novým.
- Na základě metrik: Modely (například siamské nebo prototypové sítě) se učí budovat prostor embeddingů, kde vzdálenost mezi vektory odráží sémantickou blízkost. Klasifikace nového příkladu probíhá porovnáním jeho embeddingu s embeddingy z opěrné sady.
- Na základě optimalizace: Modely (například MAML) se učí nacházet takovou inicializaci parametrů, která umožňuje rychlé doladění (za několik kroků gradientního sestupu) pro novou úlohu.
- Učení v kontextu (In-Context Learning): S příchodem velkých jazykových modelů (LLM) se stal populárním přístup, kde jsou příklady z opěrné sady poskytnuty modelu přímo v promptu. Model provádí „implicitní meta-učení" během inference a přizpůsobuje se úloze bez aktualizace vah.
Rozšířené přístupy v FSL
- One-shot Learning: Jde o speciální případ FSL, kdy počet příkladů pro každou třídu je roven jedné (K=1 v notaci „N-way K-shot"). Klasickými příklady architektur jsou Matching Networks a Siamese Networks.
- Generativní metody a augmentace dat: FSL aktivně využívá generativní modely (GAN, VAE, difuzní modely) pro syntézu dodatečných datových příkladů. To umožňuje uměle rozšířit opěrnou sadu a zlepšit kvalitu klasifikace, zejména pro vzácné nebo neobvyklé třídy.
- Transduktivní FSL: Na rozdíl od standardního (induktivního) přístupu zde model při adaptaci zohledňuje nejen označenou opěrnou sadu, ale i celý soubor neoznačených testovacích příkladů (dotazů). To umožňuje zachytit strukturu dat v dotazech, například pomocí technik šíření štítků (label propagation), a zvýšit robustnost klasifikace.
Učení bez příkladů (Zero-shot Learning)
Zero-shot Learning (ZSL) — je paradigma, ve kterém je model schopen rozpoznávat třídy, ani jeden příklad kterých neviděl ve fázi trénování.
Klíčová myšlenka
Toho je dosaženo pomocí doplňkové sémantické informace, která popisuje jak viděné, tak neviděné třídy. Model se učí mapování z prostoru vstupních příznaků (například obrázků) do společného sémantického prostoru.
Mechanismy sémantické informace
- Sémantické atributy: Třídy jsou popsány sadou člověkem definovaných atributů (například pro třídu „zebra": [má_pruhy, má_kopyta, je_savec]).
- Vektorové reprezentace slov (Word Embeddings): Názvy tříd nebo jejich textové popisy jsou převedeny na embeddingy pomocí předtrénovaných jazykových modelů (například Word2Vec, BERT).
- Prompting v LLM: S příchodem multimodálních modelů, jako je CLIP, může být ZSL prováděno porovnáváním embeddingu obrázku s embeddingy textových popisů tříd (například „fotografie psa", „fotografie kočky").
Typy ZSL: Tradiční, Zobecněný, Induktivní a Transduktivní
- Tradiční ZSL: Ve fázi testování musí model klasifikovat příklady pouze z neviděných tříd.
- Zobecněný ZSL (Generalized ZSL, GZSL): Realističtější a složitější scénář, kde musí model klasifikovat příklady jak z viděných, tak z neviděných tříd. To vyžaduje, aby model nejen rozpoznával nové, ale i odlišoval je od již známého, bojujíc se sklonem k viděným třídám.
- Induktivní ZSL: Standardní formulace, kde se model trénuje pouze na datech a sémantických popisech viděných tříd, bez jakéhokoli přístupu k informacím o neviděných třídách.
- Transduktivní ZSL: Pokročilejší schéma, kde může model během trénování využívat neoznačené příklady z neviděných tříd. To umožňuje předem přizpůsobit sémantický prostor a zlepšit výslednou kvalitu.
Generativní přístupy v ZSL
- Generování příznaků neviděných tříd: K řešení problému zkreslení v GZSL jsou široce využívány generativní modely (VAE, GAN). Ty syntetizují nikoli samotné obrázky, ale jejich příznakové vektory (embeddingy) pro neviděné třídy na základě jejich sémantických popisů. To umožňuje vyvážit datovou sadu pro trénování finálního klasifikátoru.
Srovnávací analýza a synergie
| Aspekt | Učení s malým počtem příkladů (FSL) | Učení bez příkladů (ZSL) |
|---|---|---|
| Základní myšlenka | Naučit se rychle přizpůsobit novým třídám na základě několika příkladů. | Naučit se rozpoznávat nové třídy na základě jejich sémantických popisů. |
| Požadavky na data pro novou úlohu/třídu | Několik označených příkladů (1–5) pro každou novou třídu. | Nula označených příkladů; vyžaduje se sémantický popis. |
| Přenos znalostí | Učení procedurálních znalostí („jak se adaptovat") nebo dobrého prostoru příznaků. | Učení sémantických vztahů a atributů, přenos znalostí prostřednictvím společného sémantického prostoru. |
| Typické případy použití | Rychlé prototypování, personalizace, rozpoznávání vzácných objektů, robotika. | Objev nových druhů, kategorizace vznikajících témat, zpracování zcela nových typů produktů. |
Klíčové nuance a současné trendy
- Rozdíl mezi Zero-shot Learning a Zero-shot Prompting: Je důležité tyto pojmy rozlišovat. ZSL je architektonické paradigma strojového učení vyžadující specializovaný model a sémantickou informaci. Zero-shot Prompting je aplikační technika prompt engineeringu, kde velký jazykový model (například GPT-4) řeší úlohu bez příkladů v promptu, spoléhaje výhradně na své vnitřní znalosti.
- Role rozsáhlého předtrénování: Moderní úspěch FSL a ZSL je do značné míry podmíněn výkonnými základními modely (BERT, CLIP, GPT-4). Jejich předtrénování na obrovských datových souborech vytváří univerzální a sémanticky bohatý embedding frontend, který slouží jako vynikající základ pro rychlou adaptaci a sémantické odvozování v podmínkách nedostatku dat.
FSL a ZSL představují různé body na spektru efektivity využití dat a často se používají společně. Například ZSL může být využit pro inicializaci reprezentací, které jsou následně doladěny pomocí FSL, jakmile se objeví první příklady nové třídy.
Klíčové výzkumné instituce a účastníci
Výzkum v oblasti FSL a ZSL aktivně probíhá jak v akademických kruzích, tak v průmyslových laboratořích.
- Univerzity: Stanfordská univerzita, Pekingská univerzita, Národní univerzita Singapuru.
- Průmyslové laboratoře: Google AI, Meta AI, OpenAI.
S příchodem výkonných základních modelů se těžiště výzkumu přesunulo od vývoje specializovaných architektur pro FSL/ZSL k metodám efektivní adaptace těchto modelů.
Literatura
- Finn, C. et al. (2017). Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks. arXiv:1703.03400.
- Koch, G. et al. (2015). Siamese Neural Networks for One-Shot Image Recognition. PDF.
- Vinyals, O. et al. (2016). Matching Networks for One Shot Learning. arXiv:1606.04080.
- Snell, J. et al. (2017). Prototypical Networks for Few-Shot Learning. arXiv:1703.05175.
- Sung, F. et al. (2018). Learning to Compare: Relation Network for Few-Shot Learning. arXiv:1711.06025.
- Chen, Y. et al. (2021). Meta-Baseline: Exploring Simple Meta-Learning for Few-Shot Learning. arXiv:2003.04390.
- Wang, Y. et al. (2020). Generalizing from a Few Examples: A Survey on Few-Shot Learning. arXiv:1904.05046.
- Xian, Y. et al. (2018). Zero-Shot Learning — A Comprehensive Evaluation of the State of the Art. arXiv:1707.00600.
- Verma, V. K. et al. (2018). Generalized Zero-Shot Learning via Synthesized Examples. arXiv:1712.03878.
- Radford, A. et al. (2021). Learning Transferable Visual Models from Natural Language Supervision. arXiv:2103.00020.
- Xian, Y. et al. (2019). Zero-Shot Learning via Simultaneous Generating and Learning. arXiv:1910.09446.
- Verma, V. K. et al. (2017). Zero-Shot Learning via Generative Adversarial Training of Class-Conditional Feature Vectors. arXiv:1712.00981.
Viz také
- Velké jazykové modely