Algorithms are the core of machine learning solutions. An algorithm is a step-by-step process or set of rules for solving a problem. There are scores of different algorithms and researchers are constantly producing new ones.
It is impossible to know in advance which machine learning algorithm will perform the best for a given problem; the only way is to try as many algorithms as possible – this is known as No Free Lunch Theorem.
Some of the commonly used supervised learning algorithms are listed below. .
- Naïve Bayes – classification tasks only
- Logistic regression – classification tasks only
- Linear regression – regression tasks only
- Artificial neural network (ANN)
- Decision tree
- K-nearest neighbors (k-NN)
- Support vector machines (SVM)
- Ensemble methods – stacking, bagging (eg, random forest), boosting (eg, AdaBoost, Gradient Boosted Trees), voting