Takéřízené učení, učení z označených datPokročilý
Definice
Učení s učitelem je způsob strojového učení, při němž model trénuje na vstupech spárovaných se správnými odpověďmi nebo štítky. Algoritmus se učí mapovat data na cílovou hodnotu a jeho úspěch se měří na oddělených datech, která model při tréninku neviděl.
Co model dostává při učení s učitelem
Učení s učitelem pracuje s datovou sadou, kde má každý trénovací záznam vstupní část a očekávaný výsledek. Vstupem mohou být číselné vlastnosti, text, obrázek nebo kombinace více signálů. Očekávaný výsledek se často nazývá štítek, cílová proměnná nebo label. Model se během tréninku snaží najít vztah, který z nových vstupů odhadne správný výstup.
Úloha může být klasifikace, když výstupem je třída, nebo regrese, když výstupem je spojitá hodnota. Trénink neurčuje člověk pravidly pro každý případ zvlášť. Člověk připraví data, zvolí metodu, nastaví měření kvality a kontroluje, jestli se model neučí jen náhodné zvláštnosti trénovací sady.
Trénovací sada, chyba a generalizace
Trénování porovnává predikci modelu se známou odpovědí a z rozdílu počítá chybu. Optimalizační algoritmus pak upravuje parametry tak, aby se chyba snižovala. U neuronových sítí se k tomu často používá Backpropagation, u jednodušších modelů mohou stačit jiné postupy.
Důležité není jen zapamatovat si trénovací záznamy. Dobrý model generalizuje: dává rozumné odpovědi i pro data, která při učení neviděl. Proto se data dělí nejméně na trénovací a testovací část, často také na validační část pro výběr hyperparametrů.
X_train, y_train = trenovaci_vstupy, trenovaci_stitky
model.fit(X_train, y_train)
predikce = model.predict(X_test)
metrika = vyhodnot(predikce, y_test)Dva praktické scénáře
Příklad: třídění reklamací v e-shopu
E-shop má historické reklamace označené kategoriemi jako doprava, platba, poškozené zboží nebo vrácení peněz. Model se učí z textu zprávy a dalších údajů odhadnout kategorii nové reklamace. Výsledek pomůže směrovat tiket správnému týmu, ale člověk stále řeší nejasné nebo právně citlivé případy.
Příklad: odhad ceny doručení
Logistická aplikace zná minulé objednávky, vzdálenost, hmotnost, typ služby a skutečnou cenu přepravy. Regresní model se naučí odhadovat cenu pro novou zásilku před odesláním. Nepřesnost se projeví přímo v marži, takže tým sleduje chybu zvlášť pro města, venkovské oblasti a neobvyklé rozměry balíků.
Kde označená data přestávají stačit
Učení s učitelem závisí na kvalitě štítků. Špatně označené příklady, nevyvážené třídy nebo data z jiného prostředí mohou model zavést špatným směrem. Model trénovaný na starých cenách, starém chování uživatelů nebo starých typech útoků může po změně trhu rychle ztratit užitečnost.
Dalším rizikem je únik informace. Pokud se do vstupů dostane údaj, který by v reálném okamžiku predikce nebyl dostupný, testovací metrika vypadá výborně, ale produkční systém selže. Praktická práce proto zahrnuje audit dat, monitoring po nasazení a pravidelné přeučení.
Příklady z praxe
Třídění reklamací v e-shopu
E-shop má historické reklamace označené kategoriemi jako doprava, platba, poškozené zboží nebo vrácení peněz. Model se učí z textu zprávy a dalších údajů odhadnout kategorii nové reklamace. Výsledek pomůže směrovat tiket správnému týmu, ale člověk stále řeší nejasné nebo právně citlivé případy.
Odhad ceny doručení
Logistická aplikace zná minulé objednávky, vzdálenost, hmotnost, typ služby a skutečnou cenu přepravy. Regresní model se naučí odhadovat cenu pro novou zásilku před odesláním. Nepřesnost se projeví přímo v marži, takže tým sleduje chybu zvlášť pro různé segmenty zásilek.
X_train, y_train = trenovaci_vstupy, trenovaci_stitky model.fit(X_train, y_train) predikce = model.predict(X_test) metrika = vyhodnot(predikce, y_test)
Časté omyly
- MýtusKdyž mám hodně dat, učení s učitelem si poradí samo.
- Ve skutečnostiVelké množství dat nepomůže, pokud jsou štítky chybné, vstupy nereprezentují reálný provoz nebo je v datech skrytý únik informace. Kvalita dat a správné vyhodnocení jsou stejně důležité jako velikost sady.
- MýtusModel s nejlepší chybou na trénovacích datech je nejlepší model.
- Ve skutečnostiNízká trénovací chyba může znamenat přeučení. Učení s učitelem se posuzuje hlavně podle výkonu na validačních a testovacích datech, která model při optimalizaci nepoužil.
Časté dotazy
- Proč učení s učitelem potřebuje testovací data?
- Testovací data ukazují, jestli se model naučil použitelný vztah, ne jen detaily trénovací sady. Učení s učitelem může dosáhnout nízké chyby na datech, která už vidělo, a přesto selhat na nových případech. Oddělený testovací vzorek simuluje budoucí použití a pomáhá odhalit přeučení, únik informace nebo špatné rozdělení dat.
- Kolik označených dat učení s učitelem potřebuje?
- Učení s učitelem potřebuje tolik označených dat, aby pokrylo důležité varianty reálných vstupů. Malá sada může stačit pro jednoduchý problém s jasnými vzory, ale složitý text, obraz nebo chování uživatelů obvykle vyžaduje výrazně širší pokrytí. Rozhodující není jen počet záznamů, ale také kvalita štítků, vyváženost tříd a podobnost dat s budoucím provozem.
- Stačí u učení s učitelem sledovat přesnost?
- Přesnost není vždy nejlepší metrika pro učení s učitelem, hlavně když jsou třídy nevyvážené. Model, který u vzácného podvodu vždy řekne „nepodvod“, může mít vysokou přesnost a zároveň nulovou praktickou hodnotu. V takových úlohách se sleduje například precision, recall, F1 skóre, ROC křivka nebo náklad chybného rozhodnutí.
- Může se model učený s učitelem doučovat za běhu?
- Učení s učitelem může být průběžně aktualizované, ale produkční doučování vyžaduje opatrnost. Nové štítky přicházejí se zpožděním, mohou obsahovat chyby a mohou měnit rozdělení dat. Bez validace může nová verze modelu zhoršit výsledky pro část uživatelů. Běžná praxe je dávkové přeučení, porovnání verzí a monitoring po nasazení.
Zdroje
- Supervised learning(otevře se v novém okně)
- Machine Learning Glossary(otevře se v novém okně)
- Basic classification: Classify images of clothing(otevře se v novém okně)
- Quickstart(otevře se v novém okně)