CSE 40171 is an upper-level Computer Science and Engineering course at the University of Notre Dame that introduces students to the field of artificial intelligence. Once a topic of merely historical interest, artificial intelligence has re-emerged as one of the most vibrant subfields of computer science. Applications ranging from video games to autonomous vehicles now rely on breakthroughs related to data-driven learning algorithms and massively parallel hardware. And in light of these successes, one might think that the replication of general intelligence in a computer is just around the corner. However, the reality of the situation is quite the opposite: a comprehensive understanding of how the brain works has yet to emerge. While this divide is a significant stumbling block to progress, it also presents an intriguing opportunity to reverse engineer aspects of intelligence to forward engineer artificial solutions to real problems. A grasp of the limits and the potentials of various approaches to do this is essential. In this vein, this course will be a tour of the classic ideas and state-of-the-art methods in AI, both within the context of our current understanding of how the brain processes information. Throughout the semester, we will develop a framework for artificial intelligence around artificial neural networks that incorporates a model search framework, assessments of anatomical and functional fidelity with the brain, and a Bayesian cognitive read-out layer. An emphasis is placed on application domains where AI has achieved the most success: Games, Robotics, Computer Vision and Natural Language Processing.
Upon successful completion of this course, students will be able to:
Understand the philosophical underpinnings of the field and motivations for pursuing the replication of certain competencies of the brain.
Relate real-life problems to perceptual and cognitive models that are able to solve aspects of them in an efficient manner.
Deploy general search algorithms that can be applied to a wide variety of tasks.
Formulate decision making processes that can be used for planning and classification purposes.
Build intelligent agents that perform simple tasks in an autonomous fashion.
Learn task-specific models from large collections of labeled training data samples using algorithms that are optimized using numeric solvers.
Utilize the Pytorch framework for building solutions to problems related to games, computer vision, natural language processing, and other general data science applications.
Identify problems that are solvable with today's AI algorithms and others that require novel solutions.
Grasp the aspects of artificial intelligence where neuroscience and computer science come together to form the basis of a new class of learning algorithms.
|Course Introduction||08/28||Introduction, Syllabus, History of AI Slides|
|08/30||Philosophical Perspectives Slides||R&N Chpt. 1|
|Introduction to Biological Intelligence|
|The Brain||09/2||Perception Slides||D. Marr on AI|
|09/4||Cognition Slides||To Grow a Mind|
|09/6||Neural Computation Slides||The Connectome|
|Machine Learning Model of Intelligence||Artificial Neural Networks||09/9||Structure of Neural Networks Slides||R&N 18.7.0-18.7.3; Homework 01|
|09/11||Gradient-based Optimization Slides||R&N 18.7.4-18.7.5|
|09/13||Artificial Neural Network Architectures Slides||NN Zoo|
|Search Problems in AI|
|Uninformed Search||09/16||Search Spaces Slides||R&N 3.1-3.2|
|09/18||Film Screening: AlphaGo||Film Response||09/20||Film Screening: AlphaGo|
|09/23||Search Trees Slides||R&N 3.3-3.4; Homework 02|
|Informed Search||09/25||A* Search Slides||R&N 3.5|
|09/27||Search Heuristics Slides||R&N 3.6|
|Constraint Satisfaction Problems||09/30||Defining CSPs Slides||R&N 6.1|
|10/2||Inference and Backtracking Search Slides||R&N 6.2-6.3; Homework 03|
|10/4||Local Search and Problem Structure Slides||R&N 4.1, 6.4-6.5|
|Adversarial Search||10/7||Games, Optimality, and Minimax Slides||R&N 5.1-5.2|
|10/9||Game Trees: Alpha-Beta Pruning; Imperfect Decisions Slides||R&N 5.3-5.4|
|10/11||Game Trees: Expectimax; Partial Observability Slides||R&N 5.5-5.8; Homework 04|
|Neural Network Model Search||10/14||High-Throughput Screening Slides||Pinto et al. 2009|
|10/16||Hyperparameter Optimization Strategies Slides||Bergstra et al. 2011|
|10/18||Neural Architecture Search Slides||Zoph and Le 2017|
|Quiz on First Half of Semester||10/28||Review||Project Proposal|
|10/30||Checklist 01 Quiz 01|
|AI Research at Notre Dame||11/1||Adam Czajka on Biometric Recognition from the Human Iris|
|11/4||Aparna Bharati on Detecting Disinformation on the Internet with AI|
|Structure of the Brain|
|Connectomics||11/6||Anatomical Imaging in Neuroscience Slides||Kasthuri et al. 2015; Homework 05|
|11/8||Segmentation of Neural Volumes: Classical Approaches Slides||Arganda-Carreras et al. 2015|
|11/11||Segmentation of Neural Volumes: Flood-filling Networks Slides||Li et al. 2019|
|Artificial Neural Networks with Anatomical Fidelity||11/13||Networks of the Brain Slides||Sporns 2011|
|11/15||Recurrence in Artificial and Biological Networks Slides||Kietzmann et al. 2018; Homework 06|
|11/18||Connectome-Based Artificial Neural Networks Slides||Tschopp et al. 2018; Project Update|
|Function of the Brain|
|Artificial Neural Networks with Functional Fidelity||11/20||Functional Imaging in Neuroscience Slides||Zoccolan et al. 2009|
|11/22||Internal Behavior of Artificial and Biological Networks Slides||Yamins et al. 2013|
|11/25||Models of Neural Network Dynamics Slides||Paugam-Moisty 2006; Homework 07|
|Bayesian Statistics for Decision Making|
|Probabilistic Read-Out Layers for Artificial Neural Networks||12/2||Bayes' Theorem and Knowledge Representation Slides||R&N 14.1-14.3|
|12/4||Bayesian Hierarchical Modelling Slides||Allenby et al. 2005; Homework 08|
|12/6||Combining Bayesian Models with Artificial Neural Networks Slides||Campero et al. 2017|
|Quiz on Second Half of Semester||12/9||Review|
|12/11||Checklist 02 Quiz 02|
|Final Project||12/18||Project Due|
|Participation Participation in class, film response, office hours, and slack chats.||100|
|Homeworks Homework assignments.||8 × 100|
|Project Final group project.||700|
|Quizzes In-class quizzes.||2 × 200|
All Homeworks are to be submitted to your own private GitLab repository. Unless specified otherwise:
Students are expected to attend and contribute regularly in class. This means answering questions in class, participating in discussions, and helping other students.
Foreseeable absences should be discussed with the instructor ahead of time.
Any student who has a documented disability and is registered with Disability Services should speak with the professor as soon as possible regarding accommodations. Students who are not registered should contact the Office of Disabilities.
Any academic misconduct in this course is considered a serious offense, and the strongest possible academic penalties will be pursued for such behavior. Students may discuss high-level ideas with other students, but at the time of implementation (i.e., programming), each person must do his/her own work. Use of the Internet as a reference is allowed but directly copying code or other information is cheating. It is cheating to copy, to allow another person to copy, all or part of an exam or a assignment, or to fake program output. It is also a violation of the Undergraduate Academic Code of Honor to observe and then fail to report academic dishonesty. You are responsible for the security and integrity of your own work.
In the case of a serious illness or other excused absence, as defined by university policies, coursework submissions will be accepted late by the same number of days as the excused absence.
Otherwise, a late penalty, as determined by the instructor, will be assessed to any late submission of an assignment. In general, the late penality is -10 points off for each day after the assigned deadline. The instructor reserves the right to refuse any unexcused late work.
Notre Dame has implemented a classroom recording system. This system allows us to record and distribute lectures to you in a secure environment. You can watch these recordings on your computer, tablet, or smartphone. The recordings can be accessed within Sakai.
Because we will be recording in the classroom on select occasions, your questions and comments may be recorded. (Video recordings typically only capture the front of the classroom.) If you have any concerns about your voice or image being recorded, please speak to me to determine an alternative means of participating. No content will be shared with individuals outside of your course without your permission except for faculty and staff that need access for support or specific academic purposes.
These recordings are jointly copyrighted by the University of Notre Dame and your instructor. Posting them to other websites, including YouTube, Facebook, Vimeo, or elsewhere without express, written permission may result in disciplinary action and possible civil prosecution.
For the assignments in this class, you may discuss with other students and consult printed and online resources. You may quote from books and online sources as long as you cite them properly. However, you may not look at another student's solution, and you may not copy solutions.
For further guidance please refer to the CSE Honor Code or ask the instructor.