DeepMind announces 'Alpha Code' of automatic programming AI, code generation at competitive programming level is possible



DeepMind announces 'AlphaCode ', an artificial intelligence (AI) capable of competitive programming level programming. In addition to AlphaCode, there are AIs that can be programmed automatically, but AlphaCode is said to be a particularly accurate AI that holds 41.4 billion parameters.

Competitive programming with AlphaCode | DeepMind

https://deepmind.com/blog/article/Competitive-programming-with-AlphaCode

Competition-Level Code Generation with Alpha Code
(PDF) https://storage.googleapis.com/deepmind-media/AlphaCode/competition_level_code_generation_with_alphacode.pdf

DeepMind claims its new code-generating system is competitive with human programmers | VentureBeat
https://venturebeat.com/2022/02/02/deepmind-claims-its-new-code-generating-system-is-competitive-with-human-programmers/

In August 2021, OpenAI , an AI research institute, announced the AI system 'Codex' that can convert natural language into code. Codex is positioned as an enhanced version of 'GitHub Copilot ' that automatically complements the continuation of the source code, and since it can generate code from simple commands entered in natural language, even amateurs can easily code.

Released AI system 'Codex' that automatically outputs code from natural language input by OpenAI --GIGAZINE



Alpha Code announced by DeepMind is an AI that has improved this Codex and improved the accuracy until competitive programming level programming becomes possible. In programming tests developed by Codeforces in the Competitive Programming Contest, Alpha Code is in the top 54.3% of 10 tests with more than 5000 participants. In addition, this is a result that is in the top 28% of users who participated in the Codeforces programming test in the past 6 months.

Oriol Vinyals, a senior researcher at DeepMind, said that AlphaCode is the first computer system to achieve competitive programming-level programming: 'AlphaCode not only reads and compiles natural languages, but also produces the correct code. You can. ”“ AlphaCode shows that there is still work to be done to achieve the highest levels of performance and improve the problem-solving capabilities of AI systems. This benchmark is for problem-solving and code generation. I hope it will lead to further innovation. '

According to a study by the University of Cambridge, at least half of the developer's effort is spent on debugging, and the software industry costs an estimated $ 312 billion annually. With the birth of AI-powered programming support tools like AlphaCode, coders will be able to focus on creative, less repetitive tasks and reduce development costs.



The largest version of AlphaCode will contain as many as 41.4 billion parameters, which is about four times the size of Codex. AlphaCode supports programming languages such as C ++, C #, Go, Java, JavaScript, Lua, PHP, Python, Ruby, Rust, Scala, and TypeScript. The training dataset is 715.1GB, which is about the same size as Codex with 600GB or more. In machine learning, VentureBeat points out that 'the correlation between the number of parameters and the degree of sophistication is very well maintained' because the parameters are part of a model learned from historical training data.

AlphaCode is architecturally a Transformer-based language model, much like

Salesforce's CodeT5.

The Transformer architecture consists of two core components, an encoder and a decoder, which contains layers for iterating over input data such as text and images layer by layer. Each layer uses information about which parts of the input are related to each other to generate encodings, passing these encodings to the next layer, and reaching the final encoder layer.

Transformers also usually fine-tune what they learn by doing unsupervised pre-learning followed by supervised or semi-supervised learning. This tweaking process will allow Transformer to perform specific tasks such as answering questions, analyzing emotions, and paraphrasing documents.



In addition, AlphaCode still has many problems, and there are cases where it is not possible to output syntactically correct code, especially when programming in C ++. According to DeepMind, AlphaCode degrades performance when generating code, etc. for dynamic programming to solve complex mathematical problems.

in Software, Posted by logu_ii