Machine learning is a great field to get into; not only is it highly sought after by employers, it also helps you understand the world in a new way.
Most machine learning algorithms are based heavily in math, and are made possible by programming. Here are the basic things I would suggest picking up as you tackle machine learning
Quick overview of Machine learning
Basic terminology:
- Most common settings: Supervised setting, Unsupervised setting, Semi-supervised setting, Reinforcement learning.
- Most common problems: Classification (binary & multiclass), Regression, Clustering.
- Preprocessing of data: Data normalization.
Optimization basics:
- Terminology & Basic concepts: Convex optimization, Lagrangian, Primal-dual problems, Gradients & subgradients, ℓ1ℓ1 and ℓ2ℓ2 regularized objective functions.
- Algorithms: Batch gradient descent & stochastic gradient descent, Coordinate gradient descent.
- Implementation: Write code for stochastic gradient descent for a simple objective function, tune the step size, and get an intuition of the algorithm.
Classification:
- Logistic Regression
- Support vector machines: Geometric intuition, primal-dual formulations, notion of support vectors, kernel trick, understanding of hyperparameters, grid search.
- Regression:
-
- Ridge regression
- Clustering:
-
- k-means & Expectation-Maximization algorithm.
- Top-down and bottom-up hierarchical clustering.
Bayesian methods:
- Basic terminology: Priors, posteriors, likelihood, maximum likelihood estimation and maximum-a-posteriori inference.
- Gaussian Mixture Models
- Latent Dirichlet Allocation: The generative model and basic idea of parameter estimation.
Neural Networks:
- Basic terminology: Neuron, Activation function, Hidden layer.
- Convolutional neural networks: Convolutional layer, pooling layer, Backpropagation.
Most popular Machine learning packages : numpy, scikit-learn, openCV, pandas
Most Important topics in Machine learning
- Linear regression
- Neural networks
- Back propogation algorithm
- Principal component analysis
- Support Vector Machines (SVM)
- Recommender Systems
Here are some examples:
- Supervised Learning – Your email provider kindly places that sketchy email from the “Nigerian prince with $50,000 to deposit into an overseas bank account” into the spam folder.
- Unsupervised Learning – Marketing firms “kindly” use hundreds of behavior and demographic indicators to segment customers into targeted offer groups.
- Reinforcement Learning – A computer and camera within a self-driving car interact with the road and other cars to learn how to navigate a city.