DeepMind presenterte et maskinlæringssystem for å generere kode fra en tekstbeskrivelse av en oppgave

DeepMind-selskapet, kjent for sin utvikling innen kunstig intelligens og konstruksjon av nevrale nettverk som er i stand til å spille data- og brettspill på menneskelig nivå, presenterte AlphaCode-prosjektet, som utvikler et maskinlæringssystem for å generere kode som kan delta. i programmeringskonkurranser på Codeforces-plattformen og demonstrere gjennomsnittlig resultat. Et sentralt trekk ved utviklingen er muligheten til å generere kode i Python eller C++, ved å ta som input en tekst med en problemstilling på engelsk.

For å teste systemet ble 10 nye Codeforces-konkurranser med mer enn 5000 deltakere valgt ut, holdt etter fullført opplæring av maskinlæringsmodellen. Resultatene av å fullføre oppgavene tillot AlphaCode-systemet å delta omtrent midt i vurderingen av disse konkurransene (54.3%). Den spådde totale vurderingen av AlphaСode var 1238 poeng, noe som sikrer inntreden i Topp 28% blant alle Codeforces-deltakere som har deltatt i konkurranser minst én gang i løpet av de siste 6 månedene. Det bemerkes at prosjektet fortsatt er i det innledende utviklingsstadiet og i fremtiden er det planlagt å forbedre kvaliteten på den genererte koden, samt utvikle AlphaCode mot systemer som hjelper til med å skrive kode, eller applikasjonsutviklingsverktøy som kan brukes av personer uten programmeringskunnskaper.

Prosjektet bruker Transformers nevrale nettverksarkitektur i kombinasjon med samplings- og filtreringsteknikker for å generere ulike uforutsigbare kodevarianter som tilsvarer naturlig språktekst. Etter filtrering, gruppering og rangering, elimineres den mest optimale arbeidskoden fra den genererte strømmen av alternativer, som deretter kontrolleres for å sikre at riktig resultat oppnås (hver konkurranseoppgave indikerer et eksempel på inputdata og resultatet som tilsvarer dette eksemplet , som bør fås etter å ha kjørt programmet).

DeepMind presenterte et maskinlæringssystem for å generere kode fra en tekstbeskrivelse av en oppgave

For å trene maskinlæringssystemet grovt, brukte vi en kodebase tilgjengelig i offentlige GitHub-repositories. Etter å ha utarbeidet den innledende modellen ble det gjennomført en optimaliseringsfase, basert på en samling kode med eksempler på problemer og løsninger foreslått av deltakere i konkurransene Codeforces, CodeChef, HackerEarth, AtCoder og Aizu. Totalt ble 715 GB kode fra GitHub og mer enn en million eksempler på løsninger på typiske konkurranseproblemer brukt til trening. Før man gikk videre til kodegenerering, gikk oppgaveteksten gjennom en normaliseringsfase, hvor alt unødvendig ble eliminert og bare vesentlige deler var igjen.

DeepMind presenterte et maskinlæringssystem for å generere kode fra en tekstbeskrivelse av en oppgave


Kilde: opennet.ru

Legg til en kommentar