1. Predict a category
1.1. Random forest
1.2. Accuracy
1.2.1. Decision forest
1.2.2. Neural network
1.2.3. Decision jungle
1.2.4. Support Vector Machine
1.3. Speed
1.3.1. Explainable
1.3.1.1. Decision tree
1.3.1.2. Logistic regression
1.3.2. Not explainable
1.3.2.1. Naive bayes
1.3.2.2. Linear Support Vector Machine
2. Recommend items
2.1. Items can be related to users
2.1.1. K-Nearest Neighbors
2.2. Items cannot be related to users directly
2.2.1. Very large dataset
2.2.1.1. Alternating least squares
2.2.2. Small to medium dataset
2.2.2.1. Matrix factorization
3. Find unusual data/events
3.1. K-Means clustering
3.2. One-class SVM
3.3. PCA based anomaly detection
4. Discover structure
4.1. Find possible categories
4.1.1. Text only
4.1.1.1. Topic mapping
4.1.2. Categorical values
4.1.2.1. K-modes clustering
4.1.3. Hierarchical data
4.1.3.1. Hierarchical clustering
4.1.4. Numeric values
4.1.4.1. K-means clustering
4.1.4.2. Gaussian mixture
4.2. Find relationships
4.2.1. Text only
4.2.1.1. Topic mapping
4.2.2. Transactional data such as sales orders
4.2.2.1. Association rule learning
5. Find out what influences an observed outcome
5.1. Principal component analysis
5.2. Kernel approximation
5.3. Isomap
5.4. Local Linear Embedding
6. Predict a quantity
6.1. Speed
6.1.1. Linear regression
6.1.2. Decision tree
6.1.3. Ridge regression
6.2. Accuracy
6.2.1. Random forest
6.2.2. Decision jungle
6.2.3. Neural network
6.2.4. Support Vector Regressor