BAYOU learned to write code for programmers by studying billions of programs
Computer scientists at Rice University have created a deep-learning, software-coding application that can help human programmers navigate the growing multitude of often-undocumented application programming interfaces, or APIs.
Known as Bayou, the Rice application was created through an initiative funded by the Defense Advanced Research Projects Agency aimed at extracting knowledge from online source code repositories like GitHub. A paper on Bayou will be presented May 1 in Vancouver, British Columbia, at the Sixth International Conference on Learning Representations, a premier outlet for deep learning research. Users can try it out at askbayou.com.
Designing applications that can program computers is a long-sought grail of the branch of computer science called artificial intelligence (AI).
“People have tried for 60 years to build systems that can write code, but the problem is that these methods aren’t that good with ambiguity,” said Bayou co-creator Swarat Chaudhuri, associate professor of computer science at Rice. “You usually need to give a lot of details about what the target program does, and writing down these details can be as much work as just writing the code.”
“Bayou is a considerable improvement,” he said. “A developer can give Bayou a very small amount of information — just a few keywords or prompts, really — and Bayou will try to read the programmer’s mind and predict the program they want.”
Chaudhuri said Bayou trained itself by studying millions of lines of human-written Java code. “It’s basically studied everything on GitHub, and it draws on that to write its own code.”
Bayou co-creator Chris Jermaine, a professor of computer science who co-directs Rice’s Intelligent Software Systems Laboratory with Chaudhuri, said Bayou is particularly useful for synthesizing examples of code for specific software APIs.
“Programming today is very different than it was 30 or 40 years ago,” Jermaine said. “Computers today are in our pockets, on our wrists and in billions of home appliances, vehicles and other devices. The days when a programmer could write code from scratch are long gone.”
Bayou architect Vijay Murali, a research scientist at the lab, said, “Modern software development is all about APls. These are system-specific rules, tools, definitions and protocols that allow a piece of code to interact with a specific operating system, database, hardware platform or another software system. There are hundreds of APIs, and navigating them is very difficult for developers. They spend lots of time at question-answer sites like Stack Overflow asking other developers for help.”
Murali said developers can now begin asking some of those questions at Bayou, which will give an immediate answer.
“That immediate feedback could solve the problem right away, and if it doesn’t, Bayou’s example code should lead to a more informed question for their human peers,” Murali said. Jermaine said the team’s primary goal is to get developers to try to extend Bayou, which has been released under a permissive open-source license.
“The more information we have about what people want from a system like Bayou, the better we can make it,” he said. “We want as many people to use it as we can get.”
Bayou is based on a method called neural sketch learning, which trains an artificial neural network to recognize high-level patterns in hundreds of thousands of Java programs. It does this by creating a “sketch” for each program it reads and then associating this sketch with the “intent” that lies behind the program.
When a user asks Bayou questions, the system makes a judgment call about what program it’s being asked to write. It then creates sketches for several of the most likely candidate programs the user might want.
“Based on that guess, a separate part of Bayou, a module that understands the low-level details of Java and can do automatic logical reasoning, is going to generate four or five different chunks of code,” Jermaine said. “It’s going to present those to the user like hits on a web search. ‘This one is most likely the correct answer, but here are three more that could be what you’re looking for.’”
The Latest on: Artificial intelligence and software development
via Google News
The Latest on: Artificial intelligence and software development
- AIkido Pharma Adds Artificial Intelligence Leader to Advisory Boardon March 20, 2020 at 11:58 am
today announced the addition of Andreas Typaldos to the Company's Advisory Board. Mr. Typaldos is a pioneer software and technology entrepreneur, and a private equity investor through a Typaldos ...
- OpenLicht is developing the light of tomorrow: Light innovation thanks to open source and artificial intelligence (AI)on March 19, 2020 at 9:48 am
The results are now being made public and include the prototype of a smart lighting system based on artificial intelligence ... Use of freely available development environments, software frameworks ...
- Artificial Intelligence & Advanced Machine Learning Market Growth and key Industry Players 2020 Analysis and Forecasts to 2026on March 19, 2020 at 4:40 am
According to BlueWeave Consulting, The global Artificial Intelligence market & Advanced Machine has reached USD 29.8 Billion in 2019 and projected to reach USD 281.24 Billion by 2026 and anticipated ...
- Artificial Intelligence in Healthcare Market Size, Trends 2020 Growth, Share, Regional And Global Industry Trends Forecast To 2026on March 18, 2020 at 1:38 am
Artificial Intelligence in Healthcare Market To Expand Rapidly at Notable CAGR as the various factors mentioned in report contributing to the Market growth of Artificial Intelligence in Healthcare ...
- Artificial Intelligence (AI) Market Analysis, Trends, Growth, Industry Size and Forecast 2025on March 16, 2020 at 12:48 am
The global artificial ... segmented into hardware, software, and services. Geography, the market is segmented on the basis of North America, Europe, Asia-Pacific, and Rest of the World. In 2017, North ...
- Coronavirus: How Artificial Intelligence, Data Science And Technology Is Used To Fight The Pandemicon March 12, 2020 at 11:04 pm
swept from China to the rest of the world, emerging technologies such as artificial intelligence (AI), data science, and other technologies were thrust into action to help humans manage the crisis.
- Apteryx Imaging Inc. Provides Update on Development of Artificial Intelligence Solutions for Dental Imaging in Dentistryon March 10, 2020 at 3:15 pm
VANCOUVER, BC / ACCESSWIRE / March 10, 2020 / Apteryx Imaging Inc. ("Apteryx") refers to its previous announcement on September 18, 2019 that it had partnered with Lucerne-based 4 th IR AG to ...
- Automotive Artificial Intelligence Market Worldwide Industry Share, Size, Gross Margin, Trend, Future Demand and Forecast till 2026on March 10, 2020 at 8:49 am
New York March 10 2020 The Automotive Artificial Intelligence Market is expected to exceed more than US 10 5 Billion by 2024 at a CAGR of 37 5 in the given forecast period Automotive computer science ...
- Instant Messaging Software Market to be Driven by Growing Popularity of Artificial Intelligence and Connected Devices| Radiant Insights, Inc.on March 10, 2020 at 2:12 am
North America dominated the global market space since the past several years and it can be attributed to the presence of a huge number of tech giants and enormous number of research and development ...
via Bing News