CMU Artificial Intelligence Seminar Series sponsored by


Back to Seminar Schedule

Tuesday, March 15, 2022

Time: 12:00 - 01:00 PM ET
Recording of this Online Seminar on Youtube

Kevin Ellis -- What Program Synthesis Can Learn From How People Write Code

Relevant Paper(s):

Abstract: How can we best make systems which learn to write computer programs? Here I explore the idea that we should take insight from the techniques and tools that human coders use when building software, but that we should combine those insights with machine learning methods. I focus on two basic coding techniques: writing libraries, and using interpreters ("REPLs"). For libraries, I present a system called DreamCoder, which grows a library of reusable subroutines as it solves a range of programming problems. DreamCoder's architecture builds on the structure of wake-sleep neural network training algorithms, and combines both symbolic and neural learning. For interpreters, I present a system which learns to interact with a REPL while it writes code, showing that this can help mitigate the combinatorial search difficulties of program synthesis. At the end of the talk, I will present preliminary results on modeling another aspect of coding: creating challenging and interesting programming problems.

Bio: Kevin Ellis works in artificial intelligence and programming languages. He is an assistant professor of computer science at Cornell University, and was previously a research scientist at Common Sense Machines. He did his PhD at MIT in cognitive science.