Regularizácia v kontexte strojového učenia je dôležitou technikou používanou na zvýšenie výkonu zovšeobecnenia modelov, najmä pri práci s vysokorozmernými údajmi alebo zložitými modelmi, ktoré sú náchylné na nadmerné prispôsobenie. Prepracovanie nastane, keď sa model naučí nielen základné vzorce v trénovacích údajoch, ale aj šum, čo vedie k slabému výkonu na neviditeľných údajoch. Regularizácia zavádza do modelu ďalšie informácie alebo obmedzenia, aby sa predišlo nadmernému vybaveniu penalizáciou príliš zložitých modelov.
Základnou myšlienkou regularizácie je začleniť penalizačný člen do stratovej funkcie, ktorú sa model snaží minimalizovať. Tento penalizačný výraz odrádza model od prispôsobenia šumu do trénovacích údajov tým, že kladie náklady na zložitosť, zvyčajne meranú veľkosťou parametrov modelu. Regulácia tak pomáha dosiahnuť rovnováhu medzi správnym prispôsobením tréningových údajov a zachovaním schopnosti modelu zovšeobecňovať na nové údaje.
V strojovom učení sa bežne používa niekoľko typov regularizačných techník, pričom najrozšírenejšie sú regularizácia L1, regularizácia L2 a výpadok. Každá z týchto techník má svoje vlastné charakteristiky a aplikácie.
1. Regularizácia L1 (lasová regresia): Regulácia L1 pridáva k stratovej funkcii penalizáciu rovnajúcu sa absolútnej hodnote veľkosti koeficientov. Matematicky to môže byť reprezentované ako:
kde je pôvodná stratová funkcia,
je parameter regularizácie a
sú parametre modelu. Účinok regularizácie L1 spočíva v tom, že má tendenciu vytvárať riedke modely, čo znamená, že niektoré koeficienty tlačí na nulu, čím efektívne vykonáva výber prvkov. To môže byť užitočné najmä pri práci s vysokorozmernými dátami, kde mnohé funkcie môžu byť irelevantné.
2. Regularizácia L2 (ridge regresia): Regulácia L2 pridáva k stratovej funkcii penalizáciu rovnajúcu sa druhej mocnine veľkosti koeficientov. Matematicky sa to vyjadruje takto:
Regulácia L2 odrádza od veľkých koeficientov tým, že penalizuje ich druhé mocniny, čo vedie k rovnomernejšiemu rozloženiu súboru váh. Na rozdiel od L1, regulácia L2 nevytvára riedke modely, pretože nenúti koeficienty, aby boli presne nulové, ale skôr ich udržiava malé. Toto je obzvlášť užitočné, aby ste sa vyhli nadmernej montáži, keď sú všetky funkcie relevantné.
3. Elastická regulácia siete: Elastic Net kombinuje reguláciu L1 aj L2. Je to užitočné najmä v situáciách, keď existuje viacero súvisiacich funkcií. Elastická čistá penalizácia je lineárna kombinácia trestov L1 a L2:
Vyladením parametrov a
Elastic Net dokáže vyvážiť výhody regularizácie L1 aj L2.
4. Výpadok: Dropout je regulačná technika špeciálne navrhnutá pre neurónové siete. Počas tréningu výpadok náhodne nastaví zlomok uzlov (neurónov) vo vrstve na nulu pri každej iterácii. To zabraňuje tomu, aby sa sieť príliš spoliehala na akýkoľvek jednotlivý uzol a povzbudzuje sieť, aby sa naučila robustnejšie funkcie. Dropout je obzvlášť účinný v modeloch hlbokého učenia, kde je nadmerná montáž bežným problémom kvôli veľkému počtu parametrov.
5. Predčasné zastavenie: Aj keď nejde o techniku regularizácie v tradičnom zmysle, skoré zastavenie je stratégiou na zabránenie preťaženiu zastavením tréningového procesu, keď výkon na overovacej sade začne klesať. To je užitočné najmä pri iteračných metódach, ako je gradientný zostup, kde sa model neustále aktualizuje.
Regularizácia je v strojovom učení nevyhnutná, pretože umožňuje modelom dobre fungovať na neviditeľných údajoch riadením ich zložitosti. Výber techniky regularizácie a ladenie jej parametrov ( pre L1 a L2, miera výpadkov pre výpadky) sú dôležité a často vyžadujú experimentovanie a krížovú validáciu na dosiahnutie optimálnych výsledkov.
Zvážte napríklad model lineárnej regresie trénovaný na množine údajov s mnohými funkciami. Bez regulácie by model mohol priradiť veľkú váhu niektorým funkciám, čo by veľmi presne prispôsobilo tréningové údaje, ale v dôsledku preplnenia testových údajov fungovalo zle. Použitím regularizácie L2 sa model povzbudí k rovnomernejšiemu rozloženiu váh, čo môže viesť k lepšiemu zovšeobecneniu nových údajov.
V inom scenári by sa neurónová sieť trénovaná na obrazových údajoch mohla preplniť zapamätaním si špecifických vzorov v trénovacích obrázkoch. Aplikovaním výpadku je sieť nútená naučiť sa viac všeobecných funkcií, ktoré sú užitočné pre rôzne obrázky, čím sa zlepšuje jej výkon na neviditeľných údajoch.
Regularizácia je základným konceptom strojového učenia, ktorý pomáha predchádzať nadmernému vybaveniu pridaním penalizácie za zložitosť k stratovej funkcii modelu. Riadením zložitosti modelu umožňujú techniky regularizácie ako L1, L2, Elastic Net, výpadok a skoré zastavenie lepšie zovšeobecnenie na nové údaje, čo z nich robí nenahraditeľné nástroje v súprave nástrojov strojového učenia.
Ďalšie nedávne otázky a odpovede týkajúce sa EITC/AI/GCML Google Cloud Machine Learning:
- Aký je programovací jazyk pre strojové učenie, je to len Python
- Ako sa strojové učenie aplikuje vo svete vedy?
- Ako sa rozhodujete, ktorý algoritmus strojového učenia použiť a ako ho nájdete?
- Aké sú rozdiely medzi federatívnym učením, Edge Computing a strojovým učením na zariadení?
- Ako pripraviť a vyčistiť dáta pred tréningom?
- Aké sú konkrétne počiatočné úlohy a aktivity v projekte strojového učenia?
- Aké sú základné pravidlá pre prijatie konkrétnej stratégie a modelu strojového učenia?
- Ktoré parametre naznačujú, že je čas prejsť z lineárneho modelu na hlboké učenie?
- Ktorá verzia Pythonu by bola najlepšia na inštaláciu TensorFlow, aby sa predišlo problémom bez dostupných distribúcií TF?
- Čo je hlboká neurónová sieť?
Ďalšie otázky a odpovede nájdete v EITC/AI/GCML Google Cloud Machine Learning