PREPARATION

_____________________

Here is my advice on how you should prepare for graduate study in AI & Reality research. While these are what I consider to be important, I believe they are generally important for most AI/ML and computer vision labs anywhere.

  • Note: This is not requirements before joining our lab. When you intern or become a graduate student in our IRIS Lab, you will learn on the basis of following. And I hope that these will be a guide for prospective students in the direction of their pre-study.

English

During your graduate study, you will need to read and write a lot in English. It doesn't mean you need to know a lot of rare words or use a fancy syntax. You just need to be logical, succinct, and clear for academic writing. I generally recommend aiming for a high score in TOEFL writing if you need a concrete goal to work on. It is also good to reading AI/ML papers from the point of writing and its structure (not advanced vocabulary words and fancy syntax). Often times writing can be improved by reading.

Programming

While English is the universal medium for communicating with other "people", we can say that programming is the universal medium for communicating with "computers" . Modern AI/ML programming is mostly based on Python with various libraries, so you need to be familiar with it to make what you think come true. If you dedicate a few weeks of Python programming now, you will save time equivalent to a few months during your study (and years in your life). Followings are my suggestions for learning programming.

  • Coursera Python 3 Programming: This specialization teaches the fundamentals of programming in Python 3. You will begin at the beginning, with variables, conditionals, and loops, and get to some intermediate material like keyword parameters, list comprehensions, lambda expressions, and class inheritance.

  • LeetCode: It's a website where people–mostly software engineers–practice their coding skills. Questions are ranked by level of difficulty: easy, medium, and hard. You should be able to solve most easy problems, but don't put too much time on it and I don't recommend solving hard problems.

Mathematics

If AI is the secret sauce to make food smarter, then mathematics is the air for all the essential ingredients to make that sauce. AI/ML and mathematics have an inescapable area to work upon. A popular recommended mathematics for AI/ML are as follows:

  • Linear Algebra: This is a MIT linear algebra course by Prof. Gilbert Strang. This course is a basic subject on matrix theory and linear algebra. Emphasis is given to topics that will be useful in other disciplines, including systems of equations, vector spaces, determinants, eigenvalues, similarity, and positive definite matrices.

  • Probability Theory: This is an introduction to probability and statistics course at UC Irvine by Prof. Michael C. Cranston. This course covers basic principles of probability and statistical inference. Topics covered in this course: Axiomatic definition of probability, random variables, probability distributions, expectation.

  • Convex Optimization: This is a Stanford convex optimization course by Prof. Stephen P. Boyd. This course concentrates on recognizing and solving convex optimization problems that arise in engineering including optimization problems. basics of convex analysis, least-squares and minimax problems, etc.

AI & ML

Congrats! If you have studied some parts of above programming and mathematics, you are now ready to learn machine learning and deep learning. I recommend the following classes where you can perform the basics and practice of AI/ML based on the knowledge of mathematics and Python programming skills.

  • Machine Learning: This is a Stanford machine learning course by Prof. Andrew Ng. This course provides a broad introduction to statistical machine learning (at an intermediate / advanced level) and covers supervised learning, unsupervised learning, learning theory, and reinforcement learning among other topics.

  • Deep Learning: This is an introduction to deep learning course at UC Berkeley by Alex J. Smola and Mu Li at Amazon Web Services. This class provides a practical introduction to deep learning, including theoretical motivations and how to implement it in practice.