Resources for MSAIL Members
This page will be updated periodically with new resources. Keep an eye out!
Feel free to send any resource requests that you’d like listed here to
msail-admin@umich.edu.
Furthermore, if you are a resource owner and would like links to your work removed from this page, contact us at the email above.
Table of Contents
- Learning Concepts
- Campus Involvement
- Conferences
- Past Talks
- Medium/Blog articles
- Meta-skills and Mindset
About this page
This page serves as a conglomeration of resources for MSAIL members to gain access to knowledge regarding AI. This includes
technical content,
ways to get involved on campus,
opportunities for research, jobs, and networking, and
other advice regarding involvement in the field.
We intend to continually update this page with more resources and will occasionally restructure it to provide better depth.
Learning Concepts
It’s important to know that AI is a broad field spanning the past century. We shouldn’t simply think of AI as “deep learning”, because it’s not. We’re listing resources regarding the most popular topics first because we understand they’re likely what initially grabbed your interest, but do note that there’s plenty of research being carried out on topics that we’ve probably never even heard of.
Sam Finlayson from Harvard/MIT has a fantastic page on resources you can use to dive into ML. It’s quite advanced but provides a good starting point for those looking for a comprehensive list. We’ll be using some of these resources in our own lists.
Keep in mind that just because we link a large list doesn’t mean you should be going through the entire thing. There’s way too much stuff to look at. The links within links within links are all meant to provide options; choose a specific topic that interests you (for example, generative models) and slowly explore it.
Intro to Deep Learning
Understanding deep learning to a satisfactory degree requires working familiarity (but not necessarily mastery) with the following prerequisite topics:
- Vector and Matrix Operations
- Calculus (Partial and total derivatives, gradients)
- Probability
- Basic statistics
Check out the slides/recordings from our education sessions, where some of these concepts are explained.
For a more thorough introduction to the field, we suggest the following resources:
- Fast AI’s Deep Learning course
- EECS 498/598 - Deep Learning for Computer Vision @ University of Michigan
- CS231n - Convolutional Neural Networks for Visual Recognition @ Stanford University
In particular, the second listed resource (EECS 498/598) is a course offered here every Fall. It is very similar to CS231n, so just one of the two would be satisfactory. These two courses are extremely well designed and we recommend them as a starting point.
Computer Vision
EECS 598 and CS231n (linked above) are a good start for getting involved with vision. These courses are heavily focused on deep learning, so if you want to learn about some of the methods that were popular before deep learning took off, try materials from EECS 442.
Here’s a massive resource list called Awesome Computer Vision
The reason we link those courses above is because they cover a good breadth of topics in vision. You will know what you need to in order to make proper searches for your own research and projects once you’ve gone through one of them.
Natural Language Processing
NLP also has a few courses worth looking at:
- CS224n - NLP with Deep Learning @ Stanford University
-
EECS 598 - NLP with Deep Learning @ University of Michigan
- This class was a seminar. It was less focused on educational material and more focused on contemporary research. So scroll this page if you’re looking for interesting papers.
Other resources:
-
Awesome NLP
- Similar to Awesome CV linked in the previous section, this is a massive list of resources to get acquainted with the field.
- NLP Textbook by Jacob Eisenstein
- Jay Alammar’s Blog
-
The Annotated Transformer
- This is a really nice guide going through a “line by line” implementation of Attention is All You Need (the seminal transformer paper)
Reinforcement Learning
Here are some courses you can look at to learn about reinforcement learning:
- CS 285 - Deep Reinforcement Learning @ UC Berkeley
-
CS 234 - Reinforcement Learning @ Stanford University
- This links to a series of lecture videos because the course website was taken down for some reason.
Open AI put a ton of effort into creating a comprehensive resource for people to learn RL:
Other resources:
-
Awesome RL
- Similar to Awesome CV/NLP linked in the previous sections, this is a massive list of resources to get acquainted with the field.
- Resources from DeepMind
-
Sutton & Barto - Intro to RL Textbook
- This is the de facto textbook for people to self-study RL. We can’t guarantee that this link will always work, but if it’s taken down, “Sutton and Barto” is all you’d need to search up.
-
Lilian Weng’s Lil’ Log
- Her blog contains more than just RL, but her RL posts are thorough and accessible (provided you have a basic ML background). In general, we really recommend blog posts from professionals because they’re easy to read yet rife with information.
Finally, we also have the reinforcement learning theory course (EECS 598) here at Michigan. However, materials aren’t posted online and enrollment is, as usual, heavily limited - so we recommend looking at the materials from other courses in the meantime.
We’re in the process of adding more learning resources!
Campus involvement
Getting involved during your time on campus is the fastest way to learn about AI. You should definitely take relevant courses, but we also recommend joining a research group or relevant team to get more practice and familiarity with relevant topics. This includes participating in MSAIL-sponsored projects. MSAIL has a reading group, but it’s hard to balance all the different subfields of AI in just ~15 sessions in a semester. We highly recommend joining reading groups for more depth regarding the topics you’re interested in.
Classes
Last updated on 9/23/21. This is a listing of courses related to AI (from a technical perspective) here at the University of Michigan. We tried to be as comprehensive as possible, but there are far too many courses to sift through, so we may have missed some. More information is available on the LSA course guide.
As a side note, there are many courses that we can argue are related to AI from a less technical perspective. For example, take classes in the cognitive sciences - the development of human-like AI is heavily motivated by studies in this field. We leave these classes out for brevity’s sake.
Undergraduate-level Classes:
Class Code | Class Name | Last offered? |
---|---|---|
EECS 442 | Computer Vision | F21 |
EECS 445 | Machine Learning | F21 |
EECS 492 | Intro to AI | F21 |
EECS 467 | Autonomous Robotics (MDE) | F21 |
LING 441 | Introduction to Computational Linguistics | F21 |
ROB 102 | Introduction to Robotics Algorithms and Programming | F21 |
EECS 367 | Introduction to Autonomous Robotics | F20 |
ROB 464 | Hands-on Robotics | W20 |
Graduate-level Classes:
Class Code | Class Name | Last offered? |
---|---|---|
EECS 505 | Computational Data Science and Machine Learning | F21 |
EECS 545 | Machine Learning | F21 |
EECS 592 | Foundations of AI | F21 |
EECS 542 | Advanced Topics in Computer Vision | F21 |
EECS 551 | Matrix Methods for Signal Processing, Data Analysis, and Machine Learning | F21 |
EECS 595/LING 541 | Natural Language Processing | F21 |
ROB 535 | Self Driving Cars: Perception and Control | F21 |
AEROSP 567 | AEROSP 567: Inference Estimation and Learning | F21 |
EECS 568/ROB 530 | Mobile Robotics | W21 |
EECS 692 | Advanced Artificial Intelligence | W21 |
EECS 504 | Foundations of Computer Vision | F20 |
Special Topics Classes:
Each of these classes is listed under EECS 498, 598 or both - you will need to select the relevant section when registering.
Class Code | Class Name | Last offered? |
---|---|---|
EECS 498 | Principles of Machine Learning | F21 |
EECS 598 | Randomized Numerical Linear Algebra for Machine Learning | F21 |
EECS 498 | Intro to Algorithmic Robotics | F21 |
EECS 498 | Conversational AI | F21 |
EECS 598 | Human-Computer Interaction | F21 |
EECS 498 | Intro to Natural Language Processing | W21 |
EECS 498/598 | Ethics for AI and Robotics | W21 |
EECS 498/598 | Applied Machine Learning for Affective Computing | W21 |
EECS 598 | Statistical Learning Theory | W21 |
EECS 598 | Unsupervised Visual Learning | W21 |
EECS 598 | Adversarial Machine Learning | W21 |
EECS 598 | Systems for AI | W21 |
EECS 556/598 | Image Processing | W21 |
EECS 498/598 | Deep Learning for Computer Vision | F20 |
EECS 598 | Reinforcement Learning Theory | F20 |
EECS 598 | Deep Learning for NLP | F20 |
EECS 598 | Situated Language Processing for Embodied AI Agents | W20 |
EECS 598 | The Ecological Approach to Vision | W20 |
Research Labs
A list of professors is available on the Michigan AI Lab faculty page. Each professor’s lab will be linked to on their homepage.
Reading Groups
Right now, we are aware of three relevant reading groups that allow for public participation. Many research labs have internal reading groups as well.
Group Name | Page |
---|---|
Computer Vision Reading Group | https://sites.google.com/umich.edu/cv-reading-group/home |
Natural Language Processing Reading Group | https://lit.eecs.umich.edu/reading_group.html |
Reinforcement Learning Reading Group | https://sites.google.com/umich.edu/rl-reading-group |
Conferences
AI researchers nowadays usually write papers with the goal of submitting them to a conference. Conferences are a great way to meet other people in the field, get feedback on your work, and discuss ideas about further research. These are usually good places to start if you want to look for recent literature on a given topic.
Listed below are links to the pages of some highly-ranked machine learning conferences. Note that most of these links are for specific years (mostly 2021 because that’s when this list was first made); use Google to look up pages for other years.
This is not intended to be a complete list of AI/ML conferences. Usually, your first paper will be at a lower-tier conference as you get used to publishing.
General ML Conferences
Computer Vision Conferences
Natural Language Processing Conferences
Previous Talks
MSAIL has hosted a number of talks over the years given by Michigan professors and students. You might find them insightful in providing a survey of current and past research.
Medium/Blog Articles
Medium articles are nice because they tend to be much shorter and easier to read than bona fide research papers. However, not all Medium articles are high quality. As such, we have provided a selection of high-quality Medium articles and blog posts in the vein of a Medium article. MSAIL also publishes its own blog.
Under construction – we will be adding more articles in the near future!
Introductory
“A Gentle Introduction to Machine Learning Concepts (Robbie Allen)”
Computer Vision
Overview of GANS (Zak Jost):
“Part 1 (GAN)”,
“Part 2 (DCGAN)”,
“Part 3 (InfoGAN)”
“Understanding Variational Autoencoders (VAES) (Joseph Rocca)”
NLP
“The Illustrated Transformer (Jay Alammar)”
“How GPT3 Works - Visualizations and Animations (Jay Alammar)”
“Transformer Architecture: The Positional Encoding”
Uncategorized
“How Graph Neural Networks (GNN) work: introduction to graph convolutions from scratch (Nikolas Adaloglou)”
“Understanding Latent Space in Machine Learning (Ekin Tiu)”
“Papers we love” repository
Meta-skills and Mindset
Conducting Research
Richard Hamming:
“You and your research”
Michael Nielsen:
“Principles of Effective Research”
John Schulman:
“An Opinionated Guide to ML Research”
Reading research papers
https://web.stanford.edu/class/ee384m/Handouts/HowtoReadPaper.pdf
https://www.eecs.harvard.edu/~michaelm/postscripts/ReadPaper.pdf
Giving Talks
https://web.eecs.umich.edu/~cscott/talk_advice.htm
Grad School
- Mor Harschol-Balter (CMU): Applying to CS PhD programs
- Eric Gilbert (Umich CSE, SI): Advice to his students
- Sebastian Ruder (Deepmind): 10 Tips for Research and a PhD
- Ronald Azuma (UNC): “So long, and thanks for the Ph.D.!”
- Andrej Karpathy (Tesla, OpenAI): A Survival Guide to a PhD
- Philip Guo (UCSD): Advice for early-stage Ph.D. students
- Andrey Kurenkov (Stanford): Lessons Learned the Hard Way in Grad School