Ahoj! Nový způsob trénování neuronových sítí: založený na přeskupení starých AI nápadů smíchaných s videoherním "save scumming". Je to způsob, jak vynutit "kop", který může zachránit určité typy modelů (zejména malé nebo exotické topologie), když jsou zaseknuté. Slepý. Evoluční. Tlak.
Říkám tomu "frustrace": je to jako restartovat uloženou hru a znovu zkusit souboj s bossem. Jak? Vezměte epochu Posledního známého dobra (LKG), AŽ POTÉ zabijete neuron. Pak přeškol. Na rozdíl od Dropout není poškození přechodný šum během dávek. Model rozbijeme AŽ POTÉ, co se zlepší.
V Frustraci (Persistentní [Stochastická] Ablace) je škoda výmol, kterému je třeba se vyhnout a zaplnit ho současně během další epochy. 2 strategie: zničit všechny váhy (například ve skryté vrstvě) pro neuron, nebo jen příchozí (jako pro výstupní logit).
Testovali jsme s jednoduchými topologiemi MLP sítí, od milionů až po stovky parametrů, katalogizovali jsme jejich "trenovatelnost" na základě šířky (# neuronů) oproti hloubce (# vrstev). PSA zachránila některé modely, které Dropout & Weight Decay nedokázali: chaotický režim (v modré).
To funguje i v nefunkčních návrzích, kde problém zmizelého gradientu činí zpětné šíření nepoužitelným. (Což, když nemáte přeskakovací připojení, není tolik vrstev!) Také můžeš rozdělit poškození na štěpy a trénovat více poškozených LKG najednou na různých GPU.
Článek odráží první důkaz konceptu, a ano, celý nápad má *mnoho* omezení. Zvlášť jak výpočetně plýtvavý je ten ráčna, nebo že byl na datové sadě MNIST (hračka) a ne na ImageNetu. Ale dobrá zpráva! První testy ResMLP ukazují slibné výsledky!
Snažili jsme se být důkladní. Testovali jsme 98 topologií, z nichž mnohé měly konfigurace pro porovnání parametrů (různé rozměry, stejný výsledný počet parametrů). Měřili jsme 3 různé PSA techniky na 3 kontrolách, každá přes 10 studií. Celkem 5 880 pokusů. Reprodukovatelný.
I v podmínkách, kdy by problém mizejícího gradientu měl znemožnit trénink (například v jednoduchém MLP 18x18), PSA dokázala trénovat útokem na výstupní logity na MNIST. Nevěříte mi? Vyzkoušejte to a uvidíte!
Je tu spousta skvělých malých "aha" momentů. Mějte na paměti, že žádná z těch základních myšlenek není nová. Jen jsme je uspořádali novým způsobem, abychom zkusili něco, co je teď opravdu reálné, když jsou GPU tak výkonné.
Budoucí práce: • Reprodukce původních testů na ResMLP, CNN a Transformers (ResMLP opravuje VGP, ale u patologických topologií to vypadá, že PSA stále pomáhá) • Zkoušet to na ImageNet < – drahé, ale tohle je skutečný důkaz, který potřebujeme.
Pozorování: • Likvidace stejného výstupního logitu konzistentně vytváří "antiexpertní" modely a když se podíváte na jejich matice zmatení, vidíte dyslexii v akci (zabijte 2 a klasifikace přeteče na 5, 7 a 8) • Nemusíme se držet stochastických útoků
Proč je to cenné? • Pokud bude fungovat na větších datových sadách a moderních modelových architekturách, doufám, že by mohl být cenným nástrojem při tvorbě malých jazykových modelů (SLM).
GitHub s článkem a kódem zde:
1,53K