Machine learning explores algorithms that can learn from and make predictions on data. There are two types of machine learning: unsupervised and supervised learning. Unsupervised learning is when the task is to group a collection of unlabeled patterns into meaningful categories. This type of learning is typically associated with data mining and big data analytics. There are no labels assigned to the algorithm, leaving the machine to discover its own structure. This is useful in identifying hidden patterns and anomalies.

Supervised learning is when a collection of labeled patterns is provided, and the learning process is measured by the quality of labeling a newly encountered problem. With active learning, a computer can only obtain training levels for a limited set of instances but can optimize its choice of labels. It can be presented to the user for labeling.