Geoffrey Hinton, professor ved University of Toronto og ingeniørstipendiat ved Google-hjerne, publiserte nylig en artikkel om Frem-Forover algoritme (FF), en teknikk for å trene nevrale nettverk som bruker to foroverpasseringer av data gjennom nettverket, i stedet for tilbakemelding, for å oppdatere modellvektene.

Hintons motivasjon for algoritmen er å adressere noen av manglene ved standard backpropagation-trening som krever full kunnskap om beregningen i foroverpasset for å beregne derivater og lagre aktiveringsverdier under trening. Hintons innsikt var å bruke to foroverpasseringer av inndata - en positiv og en negativ—som har motsatte objektive funksjoner som skal optimaliseres. Hinton viste at nettverk trent med FF kunne utføre datasynsoppgaver (CV) så vel som de som ble trent ved bruk av backpropagation. I følge Hinton,

Forward-Forward-algoritmen (FF) er sammenlignbar i hastighet med backpropagation, men har fordelen at den kan brukes når de nøyaktige detaljene i foroverberegningen er ukjente. Den har også fordelen at den kan lære mens den sender sekvensielle data gjennom et nevralt nettverk uten noen gang å lagre de nevrale aktivitetene eller stoppe for å spre feilderivater... De to områdene der forover-forover-algoritmen kan være overlegen bakoverforplantning, er som en modell. av læring i cortex og som en måte å gjøre bruk av svært laveffekt analog maskinvare uten å ty til forsterkende læring.

Selv om kunstige nevrale nettverk (ANN) er basert på en matematisk modell av hjernen, standard tilbakepropageringsalgoritmen som brukes til å trene disse nettverkene er ikke basert på noen kjent biologisk prosess. Foruten å være biologisk usannsynlig, har tilbakepropagering også noen beregningsmessige ulemper som nevnt ovenfor. Hinton påpeker at ANN-er kan trenes ved hjelp av forsterkningslæring (RL) uten tilbakepropagasjon, men denne teknikken "skalerer dårlig ... for store nettverk som inneholder mange millioner eller milliarder av parametere." I 2021 dekket InfoQ et biologisk plausibelt alternativ til backpropagation kalt null-divergens inferenslæring (Z-IL) som nøyaktig kan reprodusere resultatene av tilbakepropagering.

Hintons FF-algoritme erstatter forover-bakover-pasningene for backpropagation-trening med to forover-pasninger som "fungerer på samme måte som hverandre." Den første foroverpasseringen opererer på positive data fra et treningssett, og nettverksvektene justeres for å få denne inngangen til å øke et lags beste verdi. I den andre fremovergangen får nettverket et generert negativt eksempel som ikke er hentet fra datasettet. Nettverksvektene justeres slik at denne inngangen reduserer et lags godhet.

Hinton brukte FF til å trene flere nevrale nettverk til å utføre CV-oppgaver på MNIST og CIFAR datasett. Nettverkene var relativt små, inneholdt to eller tre skjulte konvolusjonslag, og ble trent i mindre enn 100 epoker. Når de ble evaluert på testdatasett, presterte de FF-trente nettverkene "bare litt dårligere" enn de som ble trent ved bruk av backpropagation.

Diego Fiori, CTO hos Nebuly, implementerte Hintons FF-algoritme og diskuterte resultatene hans på Twitter:

Hintons papir foreslo 2 forskjellige Forward-Forward-algoritmer, som jeg kalte Base og Recurrent. La oss se hvorfor, til tross for navnet, Base faktisk er den mest effektive algoritmen ... Base FF-algoritmen kan være mye mer minneeffektiv enn den klassiske bakstøtten, med opptil 45 % minnebesparelse for dype nettverk.