Nav: Home

Rice U. turns deep-learning AI loose on software development

April 25, 2018

HOUSTON -- (April 25, 2018) -- 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.'"
-end-
A live web demo is available at: http://www.askbayou.com

High-resolution IMAGES are available for download at:

http://news.rice.edu/files/2018/04/0425_-BAYOU-gp1-lg-1vt7oel.jpg

CAPTION: Rice University computer scientists (from left) Vijay Murali, Chris Jermaine, Swarat Chaudhuri and Letao Qi created a software-coding application called Bayou that can help human programmers by writing chunks of code in response to keywords. (Photo by Jeff Fitlow/Rice University)

http://news.rice.edu/files/2018/04/0425_-BAYOU-lo-lg-v9a7pf.jpg

(Image courtesy of S. Chaudhuri/Rice University)

A copy of the paper is available at: https://arxiv.org/abs/1703.05698

Related news from Rice:

Next for DARPA: 'Autocomplete' for programmers -- Nov. 5, 2014 http://news.rice.edu/2014/11/05/next-for-darpa-autocomplete-for-programmers/

Located on a 300-acre forested campus in Houston, Rice University is consistently ranked among the nation's top 20 universities by U.S. News & World Report. Rice has highly respected schools of Architecture, Business, Continuing Studies, Engineering, Humanities, Music, Natural Sciences and Social Sciences and is home to the Baker Institute for Public Policy. With 3,970 undergraduates and 2,934 graduate students, Rice's undergraduate student-to-faculty ratio is just under 6-to-1. Its residential college system builds close-knit communities and lifelong friendships, just one reason why Rice is ranked No. 1 for quality of life and for lots of race/class interaction and No. 2 for happiest students by the Princeton Review. Rice is also rated as a best value among private universities by Kiplinger's Personal Finance. To read "What they're saying about Rice," go to http://tinyurl.com/RiceUniversityoverview.

Rice University

Related Learning Articles:

Getting kids moving, and learning
Children are set to move more, improve their skills, and come up with their own creative tennis games with the launch of HomeCourtTennis, a new initiative to assist teachers and coaches with keeping kids active while at home.
How expectations influence learning
During learning, the brain is a prediction engine that continually makes theories about our environment and accurately registers whether an assumption is true or not.
Technology in higher education: learning with it instead of from it
Technology has shifted the way that professors teach students in higher education.
Learning is optimized when we fail 15% of the time
If you're always scoring 100%, you're probably not learning anything new.
School spending cuts triggered by great recession linked to sizable learning losses for learning losses for students in hardest hit areas
Substantial school spending cuts triggered by the Great Recession were associated with sizable losses in academic achievement for students living in counties most affected by the economic downturn, according to a new study published today in AERA Open, a peer-reviewed journal of the American Educational Research Association.
Lessons in learning
A new Harvard study shows that, though students felt like they learned more from traditional lectures, they actually learned more when taking part in active learning classrooms.
Learning to look
A team led by JGI scientists has overhauled the perception of inovirus diversity.
Sleep readies synapses for learning
Synapses in the hippocampus are larger and stronger after sleep deprivation, according to new research in mice published in JNeurosci.
Learning from experience is all in the timing
Animals learn the hard way which sights, sounds, and smells are relevant to survival.
Learning language
When it comes to learning a language, the left side of the brain has traditionally been considered the hub of language processing.
More Learning News and Learning Current Events

Trending Science News

Current Coronavirus (COVID-19) News

Top Science Podcasts

We have hand picked the top science podcasts of 2020.
Now Playing: TED Radio Hour

Our Relationship With Water
We need water to live. But with rising seas and so many lacking clean water – water is in crisis and so are we. This hour, TED speakers explore ideas around restoring our relationship with water. Guests on the show include legal scholar Kelsey Leonard, artist LaToya Ruby Frazier, and community organizer Colette Pichon Battle.
Now Playing: Science for the People

#568 Poker Face Psychology
Anyone who's seen pop culture depictions of poker might think statistics and math is the only way to get ahead. But no, there's psychology too. Author Maria Konnikova took her Ph.D. in psychology to the poker table, and turned out to be good. So good, she went pro in poker, and learned all about her own biases on the way. We're talking about her new book "The Biggest Bluff: How I Learned to Pay Attention, Master Myself, and Win".
Now Playing: Radiolab

Uncounted
First things first: our very own Latif Nasser has an exciting new show on Netflix. He talks to Jad about the hidden forces of the world that connect us all. Then, with an eye on the upcoming election, we take a look back: at two pieces from More Perfect Season 3 about Constitutional amendments that determine who gets to vote. Former Radiolab producer Julia Longoria takes us to Washington, D.C. The capital is at the heart of our democracy, but it's not a state, and it wasn't until the 23rd Amendment that its people got the right to vote for president. But that still left DC without full representation in Congress; D.C. sends a "non-voting delegate" to the House. Julia profiles that delegate, Congresswoman Eleanor Holmes Norton, and her unique approach to fighting for power in a virtually powerless role. Second, Radiolab producer Sarah Qari looks at a current fight to lower the US voting age to 16 that harkens back to the fight for the 26th Amendment in the 1960s. Eighteen-year-olds at the time argued that if they were old enough to be drafted to fight in the War, they were old enough to have a voice in our democracy. But what about today, when even younger Americans are finding themselves at the center of national political debates? Does it mean we should lower the voting age even further? This episode was reported and produced by Julia Longoria and Sarah Qari. Check out Latif Nasser's new Netflix show Connected here. Support Radiolab today at Radiolab.org/donate.