Programovanie

Vysvetlenie čiastočne kontrolovaného učenia

Jeff Bezos vo svojom liste pre akcionárov spoločnosti Amazon z roku 2017 napísal niečo zaujímavé o Alexe, hlasovej inteligentnej asistentke Amazonu:

V USA, Veľkej Británii a Nemecku sme za posledných 12 mesiacov vylepšili porozumenie hovoreného jazyka Alexa o viac ako 25% prostredníctvom zdokonalenia komponentov strojového učenia Alexa a používania učebných techník s čiastočným dohľadom. (Tieto techniky výučby s čiastočným dohľadom znížili množstvo označených údajov potrebných na dosiahnutie rovnakého zlepšenia presnosti až 40-krát!)

Vzhľadom na tieto výsledky by mohlo byť zaujímavé vyskúšať si učenie s čiastočným dohľadom nad našimi vlastnými problémami s klasifikáciou. Čo je to však výučba s čiastočným dohľadom? Aké sú jeho výhody a nevýhody? Ako to môžeme využiť?

Čo je to výučba s čiastočným dohľadom?

Ako môžete očakávať od názvu, učenie s čiastočným dohľadom je prechodom medzi učením pod dohľadom a učením bez dozoru. Učenie pod dohľadom začína tréningovými údajmi, ktoré sú označené správnymi odpoveďami (cieľové hodnoty). Po ukončení procesu výučby získate model s vyladenou váhou, ktorý dokáže predpovedať odpovede na podobné údaje, ktoré ešte neboli označené.

Učenie s čiastočným dohľadom využíva na označenie modelu označené aj neoznačené údaje. V niektorých prípadoch, napríklad v prípade spoločnosti Alexa, sa pridaním neoznačených údajov skutočne zvýši presnosť modelu. V iných prípadoch môžu neoznačené údaje model zhoršiť; rôzne algoritmy majú slabé miesta v porovnaní s rôznymi charakteristikami údajov, o čom sa zmienim nižšie.

Všeobecne platí, že označovanie údajov stojí peniaze a vyžaduje čas. To nie vždy problém, pretože niektoré súbory údajov už majú značky. Ale ak máte veľa údajov, iba niektoré z nich sú označené, potom je dobrou technikou vyskúšať učenie pod dohľadom.

Algoritmy učenia sa pod dohľadom

Výučba s čiastočným dohľadom siaha najmenej o 15 rokov, možno aj viac; Jerry Zhu z University of Wisconsin napísal literárny prieskum v roku 2005. Učenie s čiastočným dohľadom sa v posledných rokoch opäť oživilo, a to nielen na Amazone, pretože znižuje chybovosť pri dôležitých kritériách.

Sebastian Ruder z DeepMind napísal v apríli 2018 blogový príspevok o niektorých algoritmoch výučby s čiastočným dohľadom, ktoré vytvárajú proxy štítky. Patria sem autotréning, učenie sa z viacerých pohľadov a samostatné zhromažďovanie.

Self-training využíva vlastné predpovede modelu pre neoznačené dáta na doplnenie do označenej dátovej sady. V zásade nastavíte určitú hranicu úrovne spoľahlivosti predpovede, často 0,5 alebo vyššiu, nad ktorú predikcii uveríte a pridáte ju do označenej množiny údajov. Model neustále preškoľujete, kým nebudú k dispozícii ďalšie sebavedomé predpovede.

Z toho vyvstáva otázka skutočného modelu, ktorý sa má použiť na výcvik. Rovnako ako vo väčšine strojového učenia, aj tu pravdepodobne budete chcieť vyskúšať všetky vhodné modely kandidátov v nádeji, že nájdete ten, ktorý bude fungovať dobre.

Autotréning mal zmiešané úspechy. Najväčšou chybou je, že model nie je schopný opraviť svoje vlastné chyby: jedna spoľahlivá (ale nesprávna) predpoveď povedzme na odľahlú hodnotu môže poškodiť celý model.

Výcvik s viacerými pohľadmi trénuje rôzne modely na rôznych pohľadoch na údaje, ktoré môžu obsahovať rôzne sady funkcií, inú architektúru modelov alebo rôzne podmnožiny údajov. Existuje niekoľko výcvikových algoritmov pre viac pohľadov, ale jedným z najznámejších je trojvýcvik. V podstate vytvoríte tri rozmanité modely; zakaždým, keď sa dva modely dohodnú na štítku údajového bodu, tento štítok sa pridá k tretiemu modelu. Rovnako ako v prípade autotréningu, aj tu prestanete, keď k žiadnemu z modelov nepridáte ďalšie štítky.

Samoskladanie zvyčajne používa jeden model s niekoľkými rôznymi konfiguráciami. V metóde rebríkovej siete sa predikcia na čistom príklade používa ako značka proxy pre náhodne narušený príklad s cieľom vyvinúť funkcie odolné voči šumu.

Výukový program Jerry Zhu z roku 2007 zohľadňuje aj množstvo ďalších algoritmov. Patria sem generatívne modely (napríklad tie, ktoré predpokladajú Gaussovo rozdelenie pre každú triedu), podporné vektorové stroje s čiastočným dohľadom a algoritmy založené na grafoch.

Učenie sa pod dohľadom v cloude

Učenie s čiastočným dohľadom sa pomaly dostáva do bežných služieb strojového učenia. Napríklad Amazon SageMaker Ground Truth používa na mechanické označovanie a určovanie hraníc časti obrazovej sady Amazon Mechanical Turk a na označenie zvyšku obrazovej sady používa školenie neurónovej siete.

Podobné programy učenia s čiastočným dohľadom sa dajú použiť aj pre iné druhy učenia sa s čiastočným dohľadom, vrátane spracovania prirodzeného jazyka, klasifikácie a regresie vo viacerých službách. Na väčšinu z nich však budete musieť napísať svoj vlastný kód lepidla pre algoritmus s čiastočným dohľadom.

Prečítajte si viac o strojovom učení:

  • Vysvetlenie strojového učenia
  • Vysvetlenie hlbokého učenia
  • Vysvetlenie spracovania prirodzeného jazyka
  • Vysvetlenie kontrolovaného učenia
  • Výučba bez dozoru vysvetlená
  • Vysvetlenie čiastočne kontrolovaného učenia
  • Vysvetlenie posilňovacieho učenia
  • Vysvetlenie automatizovaného strojového učenia alebo AutoML
  • AI, strojové učenie a hlboké učenie: Všetko, čo potrebujete vedieť
  • Najlepšie rámce strojového učenia a hlbokého učenia
  • 6 spôsobov, ako zlyhať strojové učenie
  • Lekcie strojového učenia: 5 spoločností sa delí o svoje chyby
  • Najlepší softvér s otvoreným zdrojom pre strojové učenie
  • 5 najlepších programovacích jazykov pre vývoj AI