Jak funguje transferové učení?

Technika strojového učení zvaná transfer learning umožňuje modelům využívat znalosti z jedné oblasti v jiné. Vychází z představy, že dovednosti získané při zvládání jedné práce lze přenést na související úkol, čímž se ušetří čas a zdroje. V oblasti hlubokého učení, kde se na obrovském množství dat trénují masivní neuronové sítě, získalo transferové učení na popularitě.

Modely se díky přenosovému učení mohou učit z menších souborů dat, což je jedna z jeho klíčových výhod. Transferové učení nám umožňuje začít s předtrénovaným modelem, který se již dříve učil z rozsáhlého souboru dat, místo toho, abychom museli model trénovat od začátku, což vyžaduje značné množství označených dat. Důležité vlastnosti a vzory jsou již zakořeněny v předtrénovaném modelu, který lze použít jako odrazový můstek pro budoucí úlohy. Výkon předtrénovaného modelu můžeme zlepšit i s menším množstvím dat tím, že jej vyladíme na menší sadě dat.

Použití předtrénované konvoluční neuronové sítě (CNN) pro kategorizaci obrázků je známým příkladem učení přenosem. CNN se často používají pro úlohy rozpoznávání obrazu a ukázalo se, že jsou úspěšné při získávání cenných informací z obrázků. Můžeme začít s předtrénovanou CNN, jako je VGG16 nebo ResNet, místo abychom CNN trénovali od začátku pro konkrétní problém klasifikace obrázků. K trénování těchto algoritmů byly použity miliony anotovaných fotografií z velkých souborů obrazových dat, jako je ImageNet. Model můžeme upravit tak, aby plnil konkrétní klasifikační úlohu, která nás zajímá, tak, že vyřadíme několik posledních vrstev předtrénovaného modelu a nahradíme je novými vrstvami. Nově naučené vrstvy jsou vyškoleny k identifikaci konkrétních tříd v naší datové sadě, zatímco předtrénovaný model slouží jako extraktor příznaků.

Přestože má transferové učení mnoho výhod, je třeba vzít v úvahu i jeho nevýhody. Významnou nevýhodou je možnost negativního přenosu. Pokud jsou znalosti získané z jedné práce negativně využity k provedení jiné práce, jedná se o tzv. negativní přenos. K tomu může dojít, pokud se obě úlohy od sebe příliš liší nebo pokud předtrénovaný model zachytil vlastnosti, které jsou irelevantní nebo protichůdné. Aby se nebezpečí negativního přenosu snížilo, musí být předtrénovaný model pečlivě vybrán a musí být použity vhodné postupy jemného doladění.

Tři základní přístupy k učení přenosu jsou přizpůsobení doméně, jemné doladění a extrakce příznaků. Předtrénovaný model se při extrakci příznaků používá jako pevný extraktor příznaků. Pouze malá část vrstev předtrénovaného modelu je trénována na nové sadě dat; zbývající vrstvy jsou zmrazeny. Na druhou stranu jemné doladění umožňuje měnit váhy předtrénovaného modelu během trénování. Pokud jsou nový soubor dat a původní soubor dat, na kterém byl předtrénovaný model trénován, podobné, může být tato strategie užitečná. Pokud se zdrojová a cílová doména liší, používá se přizpůsobení domény. Minimalizací rozdílu mezi oběma doménami se předtrénovaný model přizpůsobí cílové doméně.

Na základě vztahu mezi zdrojovou a cílovou doménou lze učení přenosem rozdělit do pěti kategorií: induktivní přenos, neřízený přenos, transduktivní přenos, jednorázový přenos a přenos s více úlohami. Při přenosu informací mezi doménami s různými prostory příznaků a úlohami učení se označuje jako induktivní přenos. Unsupervised transfer se týká přenosu znalostí mezi doménami bez použití označených dat. Při přenosu znalostí ze zdrojové domény do cílové domény s využitím částečně označených dat se jedná o tzv. transduktivní přenos. Učení z jedné zdrojové domény do jedné cílové domény se označuje jako jednorázový přenos. V neposlední řadě víceúlohový přenos zahrnuje přenos informací z několika zdrojových domén do cílové domény.

Souhrnně lze říci, že transferové učení je účinná metoda, která umožňuje modelům využívat informace získané z jedné úlohy nebo domény k tomu, aby vynikly v související činnosti nebo doméně. Tím, že se začne s předtrénovanými modely a upraví se pro různé úlohy nebo soubory dat, lze ušetřit čas a zdroje. Pro efektivní transferové učení je zásadní volba správných metod a postupů, je však třeba dbát na to, aby nedošlo k negativnímu přenosu.

FAQ
Je transferové učení algoritmus?

Transferové učení však není metoda. Využití znalostí z jedné úlohy nebo domény ke zlepšení učení a výkonu v jiné úloze nebo doméně, která s ní souvisí, je strategií strojového učení. Transferové učení často zahrnuje zahájení nové úlohy s předem natrénovanými modely, které byly natrénovány na značném množství dat. Předem natrénované modely slouží jako základ znalostí, který lze upravit nebo přizpůsobit konkrétní úloze, což umožňuje rychlejší a efektivnější učení.

Jaký je reálný příklad transferového učení?

Praktickou ukázkou přenosového učení je použití vyškolených modelů v úlohách počítačového vidění. Například model, který byl vycvičen na rozsáhlém souboru dat k identifikaci různých předmětů, lze použít jako výchozí bod pro novou úlohu, například identifikaci konkrétních druhů automobilů na fotografiích. Model lze doladit pomocí menšího souboru dat přizpůsobeného aktuální úloze s využitím znalostí a vlastností získaných z původního souboru dat, čímž se ušetří čas a prostředky na zpracování. I s malým množstvím označených dat se může model díky tomuto přenosu znalostí rychle přizpůsobit a dobře plnit novou úlohu.