• Home
  • Kemi
  • Astronomien
  • Energi
  • Naturen
  • Biologi
  • Fysik
  • Elektronik
  • Algoritm designar optimerade maskininlärningsmodeller upp till 200 gånger snabbare än traditionella metoder

    MIT-forskare har utvecklat en effektiv algoritm som kan tillhandahålla en "tryckknapp"-lösning för att automatiskt designa snabbt fungerande neurala nätverk på specifik hårdvara. Kredit:Chelsea Turner, MIT

    Ett nytt område inom artificiell intelligens innebär att använda algoritmer för att automatiskt designa maskininlärningssystem som kallas neurala nätverk, som är mer exakta och effektiva än de som utvecklats av mänskliga ingenjörer. Men denna så kallade NAS-teknik (neural architecture search) är beräkningsmässigt dyr.

    En av de toppmoderna NAS-algoritmerna som nyligen utvecklats av Google tog 48, 000 timmars arbete av en grupp grafiska bearbetningsenheter (GPU) för att producera ett enda konvolutionellt neuralt nätverk, används för bildklassificering och identifieringsuppgifter. Google har möjlighet att köra hundratals GPU:er och andra specialiserade kretsar parallellt, men det är utom räckhåll för många andra.

    I ett dokument som presenterades vid den internationella konferensen om läranderepresentationer i maj, MIT-forskare beskriver en NAS-algoritm som direkt kan lära sig specialiserade konvolutionella neurala nätverk (CNN) för målhårdvaruplattformar – när den körs på en massiv bilddatauppsättning – på bara 200 GPU-timmar, vilket skulle kunna möjliggöra en mycket bredare användning av dessa typer av algoritmer.

    Resursbundna forskare och företag skulle kunna dra nytta av den tids- och kostnadsbesparande algoritmen, säger forskarna. Det breda målet är "att demokratisera AI, " säger medförfattaren Song Han, en biträdande professor i elektroteknik och datavetenskap och en forskare vid Microsystems Technology Laboratories vid MIT. "Vi vill göra det möjligt för både AI-experter och icke-experter att effektivt designa neurala nätverksarkitekturer med en tryckknappslösning som körs snabbt på en specifik hårdvara."

    Han tillägger att sådana NAS-algoritmer aldrig kommer att ersätta mänskliga ingenjörer. "Syftet är att avlasta det repetitiva och tråkiga arbete som kommer med att designa och förfina neurala nätverksarkitekturer, säger Han, som på uppsatsen får sällskap av två forskare i sin grupp, Han Cai och Ligeng Zhu.

    "Path-level" binärisering och beskärning

    I sitt arbete, forskarna utvecklade sätt att ta bort onödiga komponenter för neurala nätverksdesign, för att minska datortiderna och använda endast en bråkdel av hårdvaruminnet för att köra en NAS -algoritm. En ytterligare innovation säkerställer att varje utsänd CNN körs mer effektivt på specifika hårdvaruplattformar - CPU:er, GPU:er, och mobila enheter - än de som är utformade med traditionella metoder. I tester, forskarnas CNN mättes 1,8 gånger snabbare på en mobiltelefon än traditionella guldstandardmodeller med liknande noggrannhet.

    En CNNs arkitektur består av beräkningsskikt med justerbara parametrar, kallas "filter, "och de möjliga anslutningarna mellan dessa filter. Filter bearbetar bildpixlar i rutnät på rutor - till exempel 3x3, 5x5, eller 7x7—med varje filter som täcker en kvadrat. Filtren rör sig i huvudsak över bilden och kombinerar alla färgerna i deras täckta rutnät av pixlar till en enda pixel. Olika lager kan ha olika stora filter, och ansluta för att dela data på olika sätt. Utmatningen är en kondenserad bild - från den kombinerade informationen från alla filter - som lättare kan analyseras av en dator.

    Eftersom antalet möjliga arkitekturer att välja mellan - kallat "sökutrymme" - är så stort, Att använda NAS för att skapa ett neuralt nätverk på massiva bilddatauppsättningar är beräkningsmässigt oöverkomligt. Ingenjörer kör vanligtvis NAS på mindre proxydatauppsättningar och överför sina inlärda CNN-arkitekturer till måluppgiften. Denna generaliseringsmetod minskar modellens noggrannhet, dock. Dessutom, samma utmatade arkitektur tillämpas också på alla hårdvaruplattformar, vilket leder till effektivitetsfrågor.

    Forskarna tränade och testade sin nya NAS-algoritm på en bildklassificeringsuppgift i ImageNet-datauppsättningen, som innehåller miljontals bilder i tusen klasser. De skapade först ett sökutrymme som innehåller alla möjliga CNN-kandidat-"sökvägar" – vilket betyder hur lagren och filtren ansluter för att bearbeta data. Detta ger NAS-algoritmen fritt spelrum för att hitta en optimal arkitektur.

    Detta skulle vanligtvis innebära att alla möjliga vägar måste lagras i minnet, som skulle överskrida GPU-minnesgränserna. För att ta itu med detta, forskarna använder en teknik som kallas "binarisering på vägnivå, " som lagrar endast en samplade väg åt gången och sparar en storleksordning i minnesförbrukning. De kombinerar denna binarisering med "beskärning på vägnivå, " en teknik som traditionellt lär sig vilka "neuroner" i ett neuralt nätverk som kan raderas utan att påverka produktionen. Istället för att kassera neuroner, dock, forskarnas NAS-algoritm beskär hela vägar, vilket helt förändrar det neurala nätverkets arkitektur.

    I träning, alla vägar ges initialt samma sannolikhet för urval. Algoritmen spårar sedan vägarna – lagrar bara en åt gången – för att notera noggrannheten och förlusten (en numerisk straffavgift som tilldelas för felaktiga förutsägelser) för deras utdata. Den justerar sedan banornas sannolikheter för att optimera både noggrannhet och effektivitet. I slutet, Algoritmen beskär alla vägar med låg sannolikhet och behåller bara den väg som har högst sannolikhet – vilket är den slutliga CNN-arkitekturen.

    Hårdvarumedveten

    En annan viktig innovation var att göra NAS-algoritmen "hårdvarumedveten, Han säger, vilket innebär att den använder latensen på varje hårdvaruplattform som en återkopplingssignal för att optimera arkitekturen. För att mäta denna latens på mobila enheter, till exempel, stora företag som Google kommer att använda en "farm" av mobila enheter, vilket är väldigt dyrt. Forskarna byggde istället en modell som förutsäger latensen med bara en enda mobiltelefon.

    För varje valt lager i nätverket, algoritmen samplar arkitekturen på den latensprediktionsmodellen. Den använder sedan informationen för att designa en arkitektur som körs så snabbt som möjligt, samtidigt som man uppnår hög noggrannhet. I experiment, forskarnas CNN sprang nästan dubbelt så snabbt som en guldstandardmodell på mobila enheter.

    Ett intressant resultat, Han säger, var att deras NAS -algoritm utformade CNN -arkitekturer som länge avfärdades som för ineffektiva - men, i forskarnas tester, de var faktiskt optimerade för viss hårdvara. Till exempel, ingenjörer har i princip slutat använda 7x7-filter, eftersom de är beräknat dyrare än flera, mindre filter. Än, forskarnas NAS-algoritm hittade arkitekturer med några lager av 7x7-filter körde optimalt på GPU:er. Det beror på att GPU:er har hög parallellisering – vilket innebär att de beräknar många beräkningar samtidigt – så att de kan behandla ett enda stort filter samtidigt mer effektivt än att behandla flera små filter ett i taget.

    "Detta går emot tidigare mänskligt tänkande, " säger Han. "Ju större sökutrymme, de mer okända sakerna du kan hitta. Du vet inte om något kommer att vara bättre än den tidigare mänskliga erfarenheten. Låt AI ta reda på det."


    © Vetenskap https://sv.scienceaq.com