Hallo! Een nieuwe manier om neurale netwerken te trainen: gebaseerd op een herschikking van oude AI-ideeën gemengd met "save scumming" uit videogames. Het is een manier om een "kick" te forceren die bepaalde modeltypes (vooral kleine of exotische topologieën) kan redden wanneer ze vastzitten. Blind. Evolutionair. Druk.
Ik noem het "Frustratie": het is alsof je een opgeslagen videogame opnieuw opstart en de eindbaas opnieuw probeert te verslaan. Hoe? Neem een Laatste Bekende Goede (LKG) epoch, DAN dood je een neuron. Dan hertrainen. In tegenstelling tot Dropout is de schade geen tijdelijke ruis tijdens batches. We breken het model NADAT het verbetert.
In Frustratie (Persistente [Stochastische] Ablatie) is de schade een pothole die tijdens de volgende epoch zowel vermeden als gevuld moet worden. 2 strategieën: alle gewichten doden (zoals in een verborgen laag) voor een neuron, of alleen de inkomende (zoals voor een output logit).
We hebben getest met eenvoudige MLP-netwerkstructuren, variërend van miljoenen parameters tot honderden, en hun "trainbaarheid" gecatalogiseerd op basis van breedte (# neuronen) versus diepte (# lagen). PSA redde enkele modellen die Dropout & Weight Decay niet konden: een chaotisch regime (in blauw).
Dit werkt zelfs in gebroken ontwerpen waar het Vanishing Gradient Probleem backpropagation nutteloos maakt. (Wat, wanneer je geen skip-verbindingen hebt, niet zo veel lagen zijn!) Daarnaast kun je de schade verdelen en meerdere beschadigde LKG's tegelijk trainen op verschillende GPU's.
Het document weerspiegelt het eerste proof-of-concept, en ja, het hele idee heeft *veel* beperkingen. Vooral hoe computationeel verspilling de ratchet is, of dat het op de MNIST-dataset (een speeltje) was en niet op ImageNet. Maar goed nieuws! Vroege ResMLP-tests tonen veelbelovende resultaten!
We hebben geprobeerd grondig te zijn. We hebben 98 topologieën getest, veel daarvan met parameterovereenkomende configuraties (verschillende dimensies, dezelfde resulterende parameter telling). We hebben 3 verschillende PSA-technieken gemeten tegen 3 controles, over 10 proeven elk. In totaal 5.880 proeven. Reproduceerbaar.
Zelfs onder omstandigheden waarin het Vanishing Gradient Probleem het trainen onmogelijk had moeten maken (zoals in een eenvoudige MLP van 18x18), was PSA in staat om te trainen door de output logits op MNIST aan te vallen. Geloof je me niet? Probeer het en zie!
Er zijn veel coole kleine "aha"-momenten hierin. Houd er rekening mee dat geen van de onderliggende ideeën nieuw zijn. We hebben ze gewoon op een nieuwe manier gerangschikt om iets te proberen dat echt alleen haalbaar is nu GPU's zo krachtig zijn.
Toekomstig werk: • Reproductie van de originele tests op ResMLP, CNN en Transformers (ResMLP verhelpt VGP, maar voor pathologische topologieën lijkt PSA nog steeds te helpen) • Het proberen op ImageNet <- kostbaar, maar dit is het echte bewijs dat we nodig hebben.
Observaties: • Het consistent doden van dezelfde output logit creëert "anti-expert" modellen, en wanneer je naar hun verwarringsmatrixen kijkt, zie je dyslexie in actie (dood 2 en de classificatie overstroomt naar 5, 7 en 8) • We hoeven niet vast te houden aan stochastische aanvallen
Waarom is dit waardevol? • Als het werkt op grotere datasets en moderne modelarchitecturen, dan hoop ik dat het een waardevol hulpmiddel kan zijn bij het bouwen van Kleine Taalmodellen (SLMs).
GitHub met het paper & de code hier:
1,51K