Machine Learning Algorithms Catalog

As I work on practicing and solving machine learning problems, I often forget which algorithms I should consider applying.

Thanks to Dr. Jason Brownlee’s suggestions on learning machine learning algorithms, I have pulled together a table that summarizes some of the popular algorithms with key information about them.

Here are the explanations of the column attributes.

  • Regression: Is this algorithm suitable for solving regression problems, yes or no.
  • Two-Class: Is this algorithm suitable for solving binary classification problems, yes or no.
  • Multi-Class: Is this algorithm suitable for solving general classification problems, yes or no.
  • Clustering: Is this algorithm suitable for solving clustering or unsupervised problems, yes or no.
  • Class (Weka): The intended class variables designed to be solved by the algorithm. I obtained the information from Weka [http://www.cs.waikato.ac.nz/ml/weka].
  • Attributes (Weka): The intended attributes or features that the algorithm can use. I obtained the information from Weka.
  • Data Prep Tips (MLM): Some key things to know about handling the data for the algorithm. I credit the information to Dr. Jason Brownlee and his Machine Learning Mastery website.
  • Learning Style: Supervised or Unsupervised
  • Algorithm Class: Linear, Nonlinear, Ensemble for supervised algorithms or Clustering for unsupervised algorithms
  • Weka Library: The name of the algorithm implemented in Weka.
  • R Caret Library: The name of the algorithm implemented in the Caret package for R [http://caret.r-forge.r-project.org].
  • Python Library: The name of the algorithm implemented in the scikit-learn library for Python [http://scikit-learn.org/].