Andersons vinkel

GPUs kan være bedre, ikke bare raskere, på å trene dype neurale nettverk

mm
Legg til Unite.AI blant dine foretrukne kilder på Google

Forskere fra Polen og Japan, som arbeider med Sony, har funnet bevis for at maskinlæringsystemer som er trent på GPUs i stedet for CPUs kan inneholde færre feil under treningsprosessen og produsere bedre resultater, i motsetning til den vanlige forståelsen av at GPUs bare utfører slike operasjoner raskere, ikke bedre.

Forskningen, som har tittelen Impact of GPU Uncertainty on the Training of Predictive Deep Neural Networks, kommer fra Fakultetet for psykologi og kognitiv vitenskap ved Adam Mickiewicz-universitetet og to japanske universiteter, sammen med SONY Computer Science Laboratories.

Studien viser at ‘usikkerheter’ som dype neurale nettverk viser i møte med ulike maskinvare- og programvarekonfigurasjoner favoriserer mer kostbare (og mer og mer sjeldne) grafikkprosessorer, og fant i tester at et dyp neuralt nettverk som ble trent eksklusivt på CPU produserte høyere feilrater over samme antall epoker (antall ganger systemet prosesserer treningsdataene over en sesjon).

I dette supplementære eksempelet fra papiret, ser vi (nederste to radene), lignende resultatkvalitet fra en rekke GPUs, og (første raden), de underlegne resultater fra en rekke ellers svært dyktige CPUs. Kilde: https://arxiv.org/pdf/2109.01451.pdf

I dette supplementære eksempelet fra papiret, ser vi (nederste to radene), lignende resultatkvalitet fra en rekke GPUs, og (første raden), de underlegne resultater fra en rekke ellers svært dyktige CPUs. Kilde: https://arxiv.org/pdf/2109.01451.pdf

Merkeelige fenomener

Disse preliminære funn gjelder ikke enhetlig over populære maskinlæringsalgoritmer, og i tilfelle av enkle autoencoder-arkitekturer, viser fenomenet seg ikke.

Likevel antyder arbeidet en mulig ‘flukthastighet’ for effektivitet av treningsprosessen i komplekse neurale nettverk, hvor å dekke samme operasjoner med lavere hastighet og lengre trenings tid ikke oppnår like god ytelse som man ville forvente av matematiske iterasjonsrutiner.

Forskerne foreslår at denne ytelsesforskjellen kan være spesiell for visse typer neurale nettverk, og at de usikre aspektene ved GPU-spesifikk prosessering, ofte sett på som en hindring som til slutt skal overvindes, ikke bare kan gi betydelige fordeler, men også kan bli medvitende inkorporert i senere systemer. Papiret foreslår også at funnene kan gi dypere innsikt i hjernen-relatert beregningsprosessering.

Å identifisere de merkeelige aspektene som øker effisiensen og kvaliteten på resultater på denne måten på GPUs, har potensialet for å gi en dypere innsikt i ‘svarte boks’ AI-arkitekturer, og til og med forbedre CPU-ytelse – selv om de underliggende årsakene er uviss.

Autoencoder vs. PredNet

I studien av anomaliene, brukte forskerne en grundig autoencoder og også Harvard Universitys Predictive Neural Network PredNet, forskning fra 2016 som var designet for å utforske og prøve å replikere atferden til det menneskelige cerebrale cortex.

Begge systemer er dype neurale nettverk designet for å syntetisere passende bilder gjennom usupervisert læring (med data fra hvilke labels var utelatt), selv om autoencoderen behandler lineært ett bilde per batch, som ville produsere en utgang som neste bilde i en gjentakende pipeline. Autoencoderen ble trent på MNIST-skrive database.

Autoencoderen i forskernes tester ble trent på MNIST-database, som består av 60 000 treningsbilder på 28x28 piksler, anti-alias for gråskala-induksjon, samt 10 000 testbilder.

Autoencoderen i forskernes tester ble trent på MNIST-database, som består av 60 000 treningsbilder på 28×28 piksler, anti-alias for gråskala-induksjon, samt 10 000 testbilder.

I motsetning til dette, evaluerte PredNet komplekse video-inndata, og i tilfelle av denne forskningen, ble den trent på FPSI-datasettet, som har omfattende kroppsbåret videoopptak av en dag på Disney World i Orlando, Florida (Disney var en av forskningsmedarbeiderne på papiret fra 2012).

Bilde sekvenser fra FPSI, som viser første-personsvisninger på en dag på Disney World.

Bilde sekvenser fra FPSI, som viser første-personsvisninger på en dag på Disney World.

De to arkitekturerna er svært forskjellige i kompleksitet. Autoencoderen er designet for å rekonstruere bilder i stedet for å forutsi målverdier. I motsetning til dette, har PredNet fire lag, hvor hvert lag består av representasjonsnevroner som bruker konvolusjonell langtidsminne (LSTM).

Lagene produserer kontekstuelle forutsigelser som så sammenlignes med et mål for å produsere en feilterm som propagerer gjennom nettverket. Begge modellene bruker usupervisert læring.

Den enkle, lineære arkitekturen til autoencoderen, og den mer labyrintiske og rekursive nettverket til PredNet.

Den enkle, lineære arkitekturen til autoencoderen, og den mer labyrintiske og rekursive nettverket til PredNet.

Begge systemer ble testet på en rekke maskinvare- og programvarekonfigurasjoner, inkludert CPUs uten GPUs (Intel i5-4590, i7-6800K, i5-7600K eller AMD Ryzen-5-3600) og CPUs med GPUs (Intel i5-7600K + NVIDIA GTX-750Ti, i5-7600K + GTX-970, i7-6700K + GTX-1080, i7-7700K + GTX-1080Ti, i7-9700 + RTX-2080Ti, i5-7600K + RTX-2060 super, AMD Ryzen-5-3600 + RTX-2070 super eller i5-9400 + Titan-RTX).

Den interaktive prosessviseren htop ble brukt for å sikre at all treningsprosess skjedde enten på en enkelt tråd (på en Intel i7-6800K), på fire tråder (på en Intel i5-4590 og i5-7600K) eller seks tråder (på en AMD Ryzen-5-3600).

Sadelpunkter

På autoencoderen var gjennomsnittsforskjellen over alle konfigurasjoner, med og uten cuDNN, ikke signifikant. For PredNet var resultater mer overraskende, med merkbar forskjell i tap-evaluering og kvalitet mellom CPU- og GPU-treningsprosesser.

Gjennomsnittlig tapresultater for PredNet-treningsprosessen over fire CPUs og åtte GPUs, med nettverket trent på 5000 video-rammer i 250 batcher, med gjennomsnittlig tap for de siste 1000 rammer (50 batcher) avbildet. cuDNN var slått av.

Gjennomsnittlig tapresultater for PredNet-treningsprosessen over fire CPUs og åtte GPUs, med nettverket trent på 5000 video-rammer i 250 batcher, med gjennomsnittlig tap for de siste 1000 rammer (50 batcher) avbildet. cuDNN var slått av.

Forskerne konkluderer med at ‘Selv om mekanismen er uklar, ser det ut til at GPU-hardwaren har evnen til å fremme treningsprosessen av DNN-er.’

Resultatene indikerer at GPUs kan være bedre på å unngå sadelpunkter – områdene i en gradient-forfall som beskriver bunnen av en skråning.

Nadir av skråningene i en gradient-forfall er 'sadelpunktet', oppkalt etter åpenbare årsaker. Kilde: https://www.pinterest.com.au/pin/436849232581124086/

Nadir av skråningene i en gradient-forfall er ‘sadelpunktet’, oppkalt etter åpenbare årsaker. Kilde: https://www.pinterest.com.au/pin/436849232581124086/

Sadelpunkter, selv om de er en hindring, har i stor grad blitt forkastet som lett å gå rundt i nyere tanker om optimalisering av stokastisk gradient-forfall (SGD), men det nye papiret foreslår ikke bare at GPUs kan være unikt utstyrt for å unngå dem, men at påvirkningen av sadelpunkter burde kanskje bli gjenopptatt.

Forfatter innen maskinlæring, domenespesialist i menneskeskapesynthese. Tidligere sjef for forskningsinnhold i Metaphysic.ai, til det ble oppløst i DNEG's Brahma.ai.
Portfolio nettsted: martinanderson.ai
Kontakt: martin@martinanderson.ai