DreamCoder- Growing Generalizable, Interpretable Knowledge With Wake-Sleep Bayesian Program Learning
Offered By: Yannic Kilcher via YouTube
Course Description
Overview
Explore a comprehensive video lecture on DreamCoder, an innovative system that learns to solve problems by writing programs. Delve into the wake-sleep learning algorithm that alternates between extending the language with new symbolic abstractions and training neural networks on imagined and replayed problems. Discover how DreamCoder tackles classic inductive programming tasks and creative challenges like drawing pictures and building scenes. Learn about its ability to rediscover fundamental concepts in functional programming, vector algebra, and classical physics. Examine the system's architecture, neural-guided search process, abstraction phase, and dreaming phase. Analyze experimental results on LOGO drawings, ablation studies, and the system's capacity to uncover physical laws and recursive programming algorithms. Gain insights into the potential of combining symbolic reasoning with deep learning for more explainable and generalizable artificial intelligence.
Syllabus
- Intro & Overview
- DreamCoder System Architecture
- Wake Phase: Neural Guided Search
- Abstraction Phase: Extending the Internal Library
- Dreaming Phase: Training Neural Search on Fictional Programs and Replays
- Abstraction by Compressing Program Refactorings
- Experimental Results on LOGO Drawings
- Ablation Studies
- Re-Discovering Physical Laws
- Discovering Recursive Programming Algorithms
- Conclusions & Discussion
Taught by
Yannic Kilcher
Related Courses
The Brain-Targeted Teaching® Model for 21st Century SchoolsJohns Hopkins University via Coursera Design Thinking Action Lab
Stanford University via NovoEd Creative Problem Solving
University of Minnesota via Coursera Leading Innovation in Arts and Culture
Vanderbilt University via Coursera Ignite Your Everyday Creativity
State University of New York via Coursera