Společnost DeepMind vytvořila umělou inteligenci s názvem AlphaCode, která je schopna psát kód pro řešení libovolných problémů, které jí byly zadány.
Společnost otestovala svůj systém v porovnání s programovacími soutěžemi. AlphaCode dosáhl odhadované pozice, která ho řadí mezi 54 % nejlepších lidských programátorů. Podle společnosti DeepMind je tento výsledek významným krokem vpřed v oblasti autonomního kódování. Schopnost umělé inteligence AlphaCode ale nemusí nutně představovat druh programovacích úloh, kterým čelí průměrný programátor.
Datová sada, z které se AlphaCode učil, obsahovala 715 GB kódu ze souborů převzatých z úložišť GitHub napsaných v jazycích C++, C#, Go, Java, JavaScript/TypeScript, Lua, Python, PHP, Ruby, Rust a Scala. Společnost potom tento AI model doladila pomocí datových sad získaných z Codeforces. Codeforces je soutěžní programovací platforma, která sdílí týdenní programovací výzvy a má podobný systém hodnocení jako Elo používaný v šachách.
Deset problémů z Codeforces bylo vloženo do systému AlphaCode přesně ve stejném formátu, v jakém jsou zadávány lidem. AlphaCode pak vygeneroval větší počet možných odpovědí a poté vybral tu nejlepší. „Celý proces je automatický, bez lidského výběru nejlepších odpovědí,“ uvedli Yujia Li a David Choi, spoluvedoucí týmu, kteří pracují na AlphaCode.
AlphaCode byl lepší než 72 % ostatních uživatelů
V průměru se umístil mezi 54,3 % nejlepších odpovědí. Společnost DeepMind odhaduje, že Alphacode má Elo 1238, což ho řadí mezi 28 % nejlepších uživatelů, kteří na webu soutěžili v posledních šesti měsících.
„Mohu s jistotou říci, že výsledky AlphaCode předčily má očekávání,“ uvedl zakladatel platformy Codeforces Mike Mirzayanov v prohlášení, které sdílela společnost DeepMind. „Byl jsem skeptický, protože i u jednoduchých problémů je často nutné algoritmus nejen implementovat, ale také (a to je nejtěžší část) vymyslet. AlphaCode dokázal podat výkon na úrovni nového slibného soutěžícího.“
Ukázka, jak AlphaCode řeší problém – alphacode.deepmind.com. Foto: DeepMind
Společnost DeepMind uvádí, že současný soubor dovedností AlphaCode je použitelný pouze v oblasti kompetitivního programování. Jeho schopnosti ale otevírají dveře k vytvoření budoucích nástrojů, které zpřístupní programování a jednoho dne jej možná plně automatizují.