Carnegie Mellon University

MSE Course Spotlight

17-644 Applied Deep Learning, taught by Assistant Professor Vincent Hellendoorn, introduces students to a variety of neural network architectures, including convolutional neural nets, recurrent neural nets, encoder-decoder with attention, and long-short term memory, as well as experience diagnosing and improving model performance.

Hellendoorn’s recent research focuses on incorporating intelligent methods into the software engineering process: 

“Deep learned models of code are poised to become widely useful in software engineering practice, helping to find and repair bugs (ICLR'20), predict types (FSE'18), and, in time, perhaps even synthesize entire functions. That could bring big changes to software development. For one, AI is notoriously fickle in practice and thus requires expert guidance — both to tailor models to the intricacies of our domain to improve results (ICLR'20 paper), and to validate deployed models to ensure that they are delivering useful results (ICSE'19 paper). The leading software engineers of the future thus need to be well-versed in deep learning: its training, evaluation, pitfalls and opportunities, and importantly, its relations to software engineering practice. This course prepares those engineers.”