Machine Learning
Last updated
Was this helpful?
Last updated
Was this helpful?
One of the fastest growing technologies of 21st century, machine learning finds applications in almost all of the areas of science. Machine Learning provides the computers with ability to perform various tasks on their own without implicitly programming them. This opens up a plethora of possibilities that can transform the way we interact with machines. Interested already? Read on to get started in the field.
Start with on Coursera by DeepLearning.AI and Stanford University.
Instructed by Andrew Ng, this 3-course specialization covers all the basics you need to get off in the field.
Python is the preferred language in the real world applications of Machine Learning. Now that you have sufficient knowledge about machine learning, get down to implementing the ML algorithms and do some toy projects using Python.
Learn Python here:
You can also refer:
To implement the machine learning algorithms in Python, learn to use the following python modules:
NumPy and Pandas: Used for advanced matrix manipulation and linear algebra. | |
Matplotlib: Used for visualization, plotting and drawing stuff. | |
Having learned python, learn and implement various ML algorithms from scratch in Python to get used to the modules mentioned above. Given below are brief overviews of most common ML algorithms.
: An open self-paced machine learning course covering topics from classical ML.
Linear Regression: |
Logistic Regression: |
SVM:
Neural Networks:
k-Means Clustering:
KNN (K-Nearest Neighbours):
Decision Trees:
Naive Bayes:
Once you have mastered the basics, there's no need to reinvent the wheel and spend hours implementing a simple algorithm. There are dedicated libraries for quickly prototyping commonly used machine learning algorithms and techniques.
Following are some great sites to practice your skills and try your hand at real-world problems.
Once you have mastered the basics, you can further specialize in one of the many subfields of AI. Deep learning is a vast field and is used exclusively in other fields too. Therefore, though being one of the subfields, it is highly recommended to master deep learning before moving on any further.
Almost a requirement for any subfield of AI. Master it first.
The field of AI specializing in understanding text and voice data. Used in chatbots, personal assistants, is one of the fastest growing fields of AI. Resources:
Reinforcement Learning is a rapidly growing field of AI, that allows a system to learn by itself, without the need of a labeled training dataset. The algorithms used in RL are quite different from those in classical machine learning. The field holds a lot of promises and large amount research is underway in this field. Resources:
Easy-to-follow blogs on machine learning:
scikit-learn
: Contains implementations for almost all of the widely used algorithms in machine learning.
PyTorch
: Currently the most widely used libraries in the field of Deep Learning (a subset of machine learning that deals specifically with neural networks with more than one hidden layers and also with some advanced models derived from neural networks). PyTorch
speeds up computation manifolds for neural networks and makes it easy to implement them. Also, it is more flexible than its counterparts |
OpenCV
: This one is used for another field of AI, Computer Vision (deals with working on image data) Contains implementations for various common computer vision tasks like edge detection, object detection, and tracking and much more.
: #1 platform for competitive data science.
: Frequently hosts hackathons related to machine learning.
Deep Learning Specialization by Andrew Ng: . Taught in Python, this specialization covers chief aspects of deep learning in an easy-to-follow manner, typical of Andrew Ng. Enroll here:
Convolutional Neural Networks Course: is a quite popular course, and has a lot of useful content. You will chiefly learn convolutional neural networks (as the course name suggests), but the course covers sequence models and generative models as well.
has a YouTube playlist which will help with intuitive understanding and visualization.
A very good .
Fast.ai's course gets you down to implementing deep learning applications using TensorFlow and their own fast.ai
library. This course is instructed by , a Kaggle grandmaster and past Kaggle #1). You will get hands-on experience by implementing many deep learning challenges on Kaggle in the course.
Fifth course of Deep Learning specialization: . Like the rest of the courses in the specialization, this one's a good course for getting started with NLP.
Deep Learning for NLP: . A Stanford course on Natural Language Processing.
by Jay Alammar.
: Widely used library for NLP applications.
by David Silver. The basic course for getting started with reinforcement learning. Widely acknowledged by the community.
: The lectures 16-20 of CS229 cover reinforcement learning, instructed by Andrew Ng.
by Hugging Face. The course contains theory part, hands-on experience and challenges.
Reinforcement Learning: An Introduction (1st Edition, 1998), book by Richard Sutton and Andrew Barto: . This is the bible of reinforcement learning literature. Contains extensive information of various RL algorithms. Source code for the book is available .