Co je overfitting?
Overfitting (přeučení) nastane, když se model strojového učení naučí trénovací data příliš věrně. Místo aby zachytil obecný vzorec, naučí se konkrétní příklady nazpaměť, včetně jejich náhodného šumu a zvláštností. Na datech, na kterých se učil, pak vypadá skvěle, ale na nových, dosud neviděných datech si vede špatně. Právě ten rozdíl mezi výsledkem na tréninku a výsledkem v reálu je typickým příznakem.
Opačný problém je underfitting (nedoučení), kdy je model příliš jednoduchý na to, aby vzorec vůbec zachytil, a chybuje všude. Dobrý trénink leží mezi tím: dost složitý, aby se naučil skutečný signál, a dost zdrženlivý, aby přehlédl šum.
Lidsky řečeno
Představte si studenta, který se doslova nabifluje loňské zkouškové odpovědi. V nanečisto na přesně stejné otázky září, ale jakmile se ho skutečná zkouška zeptá trochu jinak, je ztracený. Naučil se odpovědi, ne látku. Přeučený model dělá totéž: nazpaměť si zapamatoval příklady místo toho, aby pochopil pravidlo za nimi.
Proč na tom záleží
- Skrývá se za hezkými čísly. Model může v testu ukázat 99% přesnost a v produkci stejně selhat, protože se měřil na datech, která si zapamatoval.
- Maří investici. Model, který neumí zobecňovat, není použitelný, ať se na jeho trénink spotřebovalo výpočetního výkonu kolik chce.
- Je hlavním důvodem pro pořádnou testovací sadu. Modelu věříte až poté, co ho prověříte na datech, která nikdy neviděl.
Na co si dát pozor
- Testovat na trénovacích datech. Když výkon měříte na stejných datech, ze kterých se model učil, přeučení zůstane neviditelné. Vždy si oddělte zvláštní testovací sadu.
- Málo dat, příliš složitý model. Velký model s pár příklady si je zapamatuje nazpaměť. Obvykle pomůže víc dat nebo jednodušší model.
- Příliš dlouhý trénink. Od určitého bodu se model přestane učit vzorec a začne se učit šum. Tomu předejde včasné zastavení.
- Přehlížet regularizaci. Techniky jako dropout, penalizace vah a křížová validace existují právě proto, aby modelům bránily v memorování. Když je vynecháte, koledujete si o přeučení.
Související články
- Co je gradientní sestup? - Algoritmus, který učení skutečně provádí, a kde může přestřelit.
- Co je neuronová síť? - Typ modelu, který se bez péče přeučí nejsnáz.
- Co je fine-tuning? - Doladění modelu na nových datech, kde je přeučení častým rizikem.
Chcete být o krok napřed?
Nenechte si utéct naše nejlepší postřehy. Žádný spam, jen praktické analýzy, pozvánky na exkluzivní eventy a shrnutí podcastů přímo do vaší schránky.
