Pikainen lukeminen Deepseekin uudesta Manifold-Constrained Hyper-Connections -artikkelista: - Haluat kasvattaa jäännöskokoa 1×C:stä n×C:hen (n virtaa yhden sijaan). Aiempi jäännöspäivitys: x' = x + kerros(x). Tee x:stä n×C ja käytä x' = Ax + B kerrosta (Cx). A, B, C ovat kaikki riippuvaisia x:stä ja ovat pieniä matriiseja (n×n, n×1, n×1). A vaikuttaa vaikuttavimmalta. Tämä on Hyper-Connections (HC). - HC:llä on sama ongelma kuin muilla jäännösmuokkausmenetelmillä – lopulta opittujen A-matriisien tulo (identiteettipolun varrella) räjähtää/häviää. - Tämän korjaamiseksi he projisoivat A-matriisit Birkhoffin polytooppiin (yksinkertaisemmin sanoin: muunnetaan se exp:n jälkeen positiivisiksi alkioiksi, matriisiksi, jonka rivisummat ja sarakkeiden summat muodostavat 1 – kutsutaan kaksinkertaiseksi stokastiseksi matriisiksi). Tällä on hyviä ominaisuuksia – näiden matriisityyppien tuloilla on silti rivin ja sarakkeen summa 1 (sulkeutumisen vuoksi), joten asiat eivät räjähdä (spektriraja), ja invariantti on, että virtausten painojen summa on 1. Kun n = 1, tästä tulee standardi jäännösvirta, mikä on mukavaa. Niiden muunnosmenetelmä on yksinkertainen – vaihtoehtoisesti jaetaan rivit ja sarakkeet rivi- ja sarakkeiden summilla 20 iteraatioksi (suppenevat haluamaamme matriisiin, kun iteraatiot menevät äärettömyyteen). He huomaavat, että 20 riittää sekä eteen- että taaksepäin kulkemiseen (60 kerroksen aikana maksimi taaksepäin vahvistus on 1,6 verrattuna tavalliseen HC:hen, ja 1,6 ei ole kovin erilainen kuin 1). - Näiden matriisien (kaikkien permutaatiomatriisien konveksi kuori) yhdistäminen johtaa informaation sekoittumiseen kerrosindeksin kasvaessa, mikä on mukava intuitio ja näkyy hyvin selvästi heidän 60 kerroksen yhdistelmämatriisissaan. Uskon, että kokonaisuutena saadaan painotettu summa jäännösreiteistä (ajatellen gradientteja), kun taas loogisesti ryhmiteltävien polkujen painot summautuvat yhteen. Melko periaatteellinen lähestymistapa mielestäni, ja se tekee myös eduista (eteen- ja taaksepäin) hyvin vakaita. - Mielenkiintoinen huomio – ensimmäisellä puoliskolla on paljon "pooling"-tyyppistä sekoitusta verrattuna kerrosten toiseen puoliskoon. Kerrosten toinen puolisko käsittelee eri kanavia tarkemmin/terävämmin kuin ensimmäinen, melko intuitiivista. - Ne myös muuttavat B:n ja C:n parametrisointia (sigmoidi tanhin sijaan, jotta merkkien muutos vältyy todennäköisesti, ja kerroin 2 ennen B:tä, uskon että keskimääräisen jäännöskertoimen säilyttämiseksi C ei tarvitse tätä, koska syöte on joka tapauksessa esinormoitu). - Siistit järjestelmäoptimoinnit, jotka tekevät tästä operaattorin nopean – ne tekevät ytimen fuusiota, uudelleenlaskennan mHC:n taaksepäin ja jopa muokkaavat DualPipea (heidän putkiston rinnakkaisuustoteutuksensa). - Vain 6,7 % yleiskustannukset koulutuksessa, kun n = 4, tappio laskee 0,02 ja parannuksia vertailuarvoissa.