AI kan programmere på niveau med mennesker

AlphaCode, en ny AI-algoritme fra Alphabet-selskabet DeepMind, har deltaget i konkurrencer i programmering og klarer sig ganske godt.

AI kan programmere på niveau med mennesker

Googles nye kunstige intelligens, AlphaCode, kan programmere i programmeringskonkurrencer på niveau med menneskelige programmører, oplyser moderselskabet Alphabet i et blogindlæg.

AlphaCode kan ikke alene programmere på niveau med mennesker – det er inden for konkurrencepræget programmering, hvor niveauet er højere, at algoritmen er konkurrencedygtig.

Læs også: Hvad er kunstig intelligens? Sådan ser fremtiden med AI ud

Løser komplekse problemer

Ifølge Alphabet-selskabet Deepmind opnåede AlphaCode en estimeret rangering, der placerer algoritmen blandt de bedste 54 procent af deltagerne i 10 konkurrencer på platformen Codeforces. Her forsøgte 5 000 deltagere at løse komplekse problemer, der krævede en kombination af kritisk tænkning, logik, algoritmer, kodning og forståelse af sprog. På den anden platform CodeContests løste algoritmen 34,2 procent af udfordringerne.

Det er ifølge DeepMind første gang, at et computersystem har opnået et så højt konkurrencemæssigt niveau inden for konkurrencer i programmering.

AlphaCode er trænet med 41,4 milliarder parametre – cirka det firdobbelte af konkurrenten Codex fra OpenAI. Træningsdataene kommer fra offentlige repositorier på GitHub, hvor der er programmeret med sprogene C++, C#, Go, Java, JavaScript, Lua, PHP, Python, Ruby, Rust, Scala og TypeScript.

Læs også: Her er de 10 mest populære programmeringssprog i verden

Store besparelser på debugging

I løbet af 2021 har maskindrevet programmering været under hastig udvikling. Microsoft har udviklet en funktion i Power Apps, der bruger OpenAI’s GPT-3-sprogmodel til at assistere folk i valget af formler. Intel har ControlFlag, der automatisk opdager fejl i kode, mens Facebook har TransCoder, der automatisk kan konvertere kode fra et programmeringssprog til et andet.

Og der er en god grund til, at techgiganterne investerer masser af penge i kunstig intelligens til at programmere. Ifølge en undersøgelse fra University of Cambridge bruges mindst halvdelen af udvikleres tid på at debugge eller fejlrette kode, hvilket koster softwarebranchen omkring 312 milliarder dollar om året.

Ved at bruge AI til at overvåge og gennemgå kode kan udgifterne til programmering af software reduceres mærkbart – og samtidig giver det mere tid til udviklernes hovedopgave – at programmere kode.

Kan misbruges til malware

Selv om kunstig intelligens allerede viser stort potentiale inden for programmering, har teknologien ifølge DeepMind også sine begrænsninger. For eksempel kan den nuværende algoritme ikke altid producere kode med korrekt syntaks, og jo mere udfordrende kode der skal skrives, jo sværere har algoritmen – ikke overraskende – det.

Ligesom andre algoritmer – særligt sprogmodeller – har algoritmer til at skrive kode også haft problemer med bias og fordomme, som stammer fra træningsmaterialet. Samtidig er der også risiko for, at algoritmen skriver kode, som på overfladen ser korrekt ud, men som kan vise sig at udgøre en sikkerhedsrisiko.

Med algoritmen GPT-J har forskere også påvist, at det er muligt at snyde sig til at bestå introduktionsopgaver inden for datalogi og at omgå software til at opdage plagieret kode.

Læs også: Nyheder om kunstig intelligens