Bbabo NET

Vetenskap & Teknik Nyheter

DeepMind hävdar att dess neurala nätverk inte skriver program som är sämre än den genomsnittliga programmeraren

DeepMind har skapat ett artificiell intelligenssystem som heter AlphaCode som det säger "skriver datorprogram på en konkurrenskraftig nivå." Systemet testades mot kodningsutmaningar som används i mänsklig konkurrens och visade sig vara bland de 54 % bästa av programmet.

Detta är ett betydande steg framåt för offlinekodning enligt DeepMind, även om AlphaCode-färdigheter inte nödvändigtvis är representativa för de programmeringsuppgifter som den genomsnittliga kodaren står inför.

Oriol Vinyals, chefsforskare på DeepMind, noterar att forskningen fortfarande är i ett tidigt skede, men dess resultat har flyttat företaget närmare att bygga flexibel AI för att lösa komplexa kodningsproblem. "Vi är glada över AlphaCodes potential att hjälpa programmerare och icke-programmerare att skriva kod, förbättra produktiviteten eller skapa nya sätt att bygga mjukvara", sa Vinyals.

I ett exempel på problem där AlphaCode testades, ombads deltagarna att hitta ett sätt att konvertera en enda sträng av slumpmässigt upprepade bokstäver s och t med hjälp av en begränsad uppsättning indata:

"Du får två strängar s och t, ​​som var och en består av små latinska bokstäver. Du kommer att skriva ut strängens tecken för tecken, med början med det första tecknet och slutar med det sista.

När du ska skriva ett tecken, istället för att trycka på knappen som skriver ut det tecknet, kan du trycka på knappen "Backsteg". Om du trycker på den här knappen raderas det senast inskrivna tecknet som ännu inte har raderats (eller gör ingenting om alla tecken som redan skrivits ut har raderats eller om du ännu inte har skrivit något tecken). Till exempel, om strängen s är "abcbd" och du trycker på backstegsknappen istället för att skriva ut det första och fjärde tecknet, kommer resultatet att bli strängen "bd" (det första trycket på backsteg raderar inga tecken, och den andra genom att trycka på denna knapp raderas tecknet "c" ). Ett annat exempel: om s är "abcaa" och du trycker på Backsteg istället för de två sista bokstäverna, är det "a".

Du måste avgöra om du kan få strängen t om du försöker skriva strängenom att trycka på Backsteg istället för att trycka på knapparna som motsvarar några (möjligen ingen) av bokstäverna i strängen s."

AlphaCode genererade fler möjliga svar och sårade bort dem genom att köra koden och kontrollera utdata, precis som en mänsklig konkurrent skulle göra.

Systemet testades på 10 problem, som löstes av 5000 användare på Codeforces webbplats. I genomsnitt rankas hon bland de bästa 54,3 % av svaren.

DeepMind noterar att AlphaCodes nuvarande kunskapsuppsättning för närvarande bara är tillämplig på området för konkurrenskraftig programmering, men dess möjligheter öppnar dörren för att skapa framtida verktyg som kommer att göra programmering mer tillgänglig.

Många andra företag arbetar med liknande applikationer. Till exempel, i augusti 2021 släppte OpenAI Codex, ett nytt system som automatiskt omvandlar enkla engelska fraser till kod. Codex är baserat på GPT-3.

Än så länge är dock system långt ifrån att bara ta över mänskliga programmerares arbete. Koden de producerar är ofta buggig, och eftersom algoritmerna vanligtvis tränas på offentliga kodbibliotek, reproducerar de ibland upphovsrättsskyddat material.

Så i juni 2021 introducerade Microsoft och GitHub Copilot-programmeringsassistenten baserad på Codex neurala nätverk från Open AI. Systemet är tränat för att arbeta med olika ramverk och programmeringsspråk. I augusti släpptes en förbättrad version av Codex, som översätter engelska fraser till programkod.

Utvecklarna märkte att den neurala nätverksassistenten genererar linjer från projekt med öppen källkod, utan att lyda den ursprungliga licensen. De klagade också över att Copilot genererade dussintals rader med citat och kommentarer från projekt med öppen källkod istället för bara några rader kod. GitHub klargjorde att Copilot vanligtvis inte återger exakta kodsnuttar, utan skapar härledda verk från tidigare mottagna indata. Företaget hävdar att detta bara händer 0,1 % av tiden.

GitHub erkände sedan att utvecklarna vid utbildningen av Copilot använde all offentlig kod som var tillgänglig i tjänstens arkiv, oavsett typ av licens.

Det visade sig också att cirka 40 % av koden som produceras av Copilot innehåller fel och sårbarheter.

DeepMind hävdar att dess neurala nätverk inte skriver program som är sämre än den genomsnittliga programmeraren