Here are some really useful resources to have a head-start in different important topics related to machine learning and other sub-domains.
Publications
Books in core Artificial Intelligence
- The AI bible Artificial Intelligence: A Modern Approach (AIMA)
- Look into GitHub for coding solutions of AIMA in here
Books in Reinforcement Learning
- Reinforcement Learning: An Introduction by Richard S. Sutton and Andrew G. Barto
- Look into GitHub for coding solutions in Python of this book in here
Books in Deep Learning
Books in Machine Learning
-
In Python
- Python Machine Learning by Sebastian Raschka and Vahid Mirjalili
- Look into GitHub for coding solutions in Python of this book in here
- Machine Learning in Action by Peter Harrington
- Look into GitHub for coding solutions in Python of this book in here
- Machine Learning with Python/Scikit-Learn – Application to the Estimation of Occupancy and Human Activities
2. In R (Based on statistical learning)
- The Elements of Statistical Learning Data Mining, Inference, and Prediction by Trevor Hastie, Robert Tibshirani, Jerome Friedman
- Look into GitHub for coding solutions in R of this book in here
- An Introduction to Statistical Learning with Applications in R by Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani
- Look into GitHub for coding solutions in R of this book in here
- Statistical Learning with Sparsity The Lasso and Generalizations by Trevor Hastie, Robert Tibshirani and Martin Wainwright
3. In MATLAB
- Machine Learning: a Probabilistic Perspective by Kevin Patrick Murphy
- Look into GitHub for coding solutions in both MATLAB and Python of this book in here
4. In WEKA
- Data Mining: Practical Machine Learning Tools and Techniques by Ian H. Witten and Eibe Frank in here and here
- Look into this elaborated appendix of WEKA for this book in here
Books in Pattern Recognition
- Pattern Classification (2nd ed.) by R. O. Duda, P. E. Hart and D. G. Stork
- Get the official solution manual of this book in here and codes in MATLAB in here
- Pattern Recognition 4th Edition by Sergios Theodoridis and Konstantinos Koutroumbas
- Get the coding solutions of this book in MATLAB in here
- Support Vector Machines for Pattern Classification by Shigeo Abe
Some great blogs
- Andrej Karpathy blog
- Sebastian Ruder
- Colah’s blog
- WILDML – Artificial Intelligence, Deep Learning, and NLP
- Distill
Topic-specific lectures and video tutorials
- Machine Learning by Andrew Ng
- MIT OpenCourseWare – Computational Science & Engineering 1,2
- Convolutional Neural Networks for Visual Recognition
- The Learning Problem – Introduction; supervised, unsupervised, and reinforcement learning
- Neural Networks for Machine Learning taught by Geoffrey Hinton
- Neural networks class – Université de Sherbrooke
- Deep Learning for Natural Language Processing
- Oxford Deep NLP 2017 course
In addition to the above-mentioned resources, there are some extremely important areas AI share and extend concepts with. Three most useful of them are Linear Algebra, Calculus (with extensions to multivariate calculus) and Probability and Statistics. Complete understanding and reasoning of these areas will help you grasp many involved topics of neural networks, deep learning, computer vision etc. Below are some great books and online resources you should check in order to master them.
Linear Algebra
-
Books
- Fundamentals of Linear Algebra by James B. Carrell
- Linear Algebra by David Cherney, Tom Denton and Rohit Thomas
2. Video Tutorials
Calculus
-
Books
- Mathematical Methods for Computer Vision, Robotics, and Graphics by Justin Solomon
- Calculus Made Easy by Silvanus P. Thompson and Martin Gardner
2. Video Tutorials
Probability and Statistics
-
Books
- Introduction to Probability and Statistics by William Mendenhall, Robert Beaver, Barbara Beaver, S. Ahmed
- Get the student solution manual of this book in here
- Basic Probability Theory by Robert B. Ash
- Probability Theory: The Logic of Science by E. T. Jaynes
2. Video Tutorials
The best way to learn a concept is to apply them to solve a real problem with hands-on programming. In the fields of AI, you will have to work with a large amount of data, in more advanced level, big data. Therefore, decent idea of software engineering including parallel programming, how to work with CPU, GPU and TPU (Tensor Processing Unit) etc. are equally important. Below are some resources where you will get firm knowledge about these stuffs.
Parallel Programming (In Python)
- Effective Python: 59 Specific Ways to Write Better Python by Brett Slatkin
- An introduction to parallel programming using Python’s multiprocessing module by Sebastian Raschka
GPU accelerated Machine Learning
- A Full Hardware Guide to Deep Learning by Tim Dettmers
- Building your own deep learning box
- Intro to Parallel Programming Using CUDA to Harness the Power of GPUs
- CUDA by Example – An Introduction to General-purpose GPU Programming
- Check out some GPU-based frameworks written in Python and CUDA – Theano, Tensorflow, PyTorch
TPU accelerated Machine Learning
I hope you have found this article useful. Please feel free to comment below about any questions, concerns or doubts you have. Also, your feedback on how to improve this blog and its contents will be highly appreciated.
You can learn of new articles and scripts published on this site by subscribing to this RSS feed.
This article is copyrighted. Please cite this website should you like to reproduce or distribute this article in whole or part in any form.
Like!! Really appreciate you sharing this blog post.Really thank you! Keep writing.
What’s up, after reading this awesome paragraph i am as well glad to share my experience here with colleagues.
This is my first time pay a quick visit at here and i
am really happy to read all at single place.
Hello everybody, here every one is sharing these kinds
of know-how, thus it’s fastidious to read this web site, and I used to go to see this webpage everyday.
Nice article, i like it!
Thanks!