É um subconjunto da Inteligência Artificial focado no desenvolvimento de algoritmos e modelos estatísticos que possibilitam os sistemas computacionais melhorarem a sua performance na resolução de problemas mediante a existência de um conjunto de dados, sem a necessidade de uma programação explícita. Por outras palavras, com estes algoritmos e modelos, os sistemas computacionais aprendem as intrincadas relações existentes num determinado conjunto de dados e melhoram a sua eficiência ao resolver os problemas associados a este dados. Dessa forma, o programador não necessita (de programação tradicional em) apresentar todos passos ou as condições num programa para que o sistema computacional execute. A dita eficiência se consegue através do processo de treinamento (usando algoritmos e dados) onde o computador aprende a reconhecer os padrões, insights, e se tornam capazes de realizarem previsões ou tomarem decisões baseadas nestes dados.
Existem diversas quantidades significativas de algoritmos Machine Learning. Simultaneamente, consoante a filosofia (paradigma) de desenvolvimento e aplicação estes modelos podem ser agrupados em três categorias principais tais como:
Entre as categorias acima tudo indica que as mais usadas são os modelos supervisionados. A categoria supervisionada divide-se por sua vez em duas – entre Regressão e Classificação.
Assim como as supervisionada, os modelos não-supervisionado também se dividem em subcategorias, entre elas: agrupado (clustering), hierárquico (hierarchical), redutor da dimensão e detector de anomalia.
Os especialistas precisam avaliar a eficiência dos modelos de aprendizado de máquina antes de pôr em produção (disponibilizar ao público ou pôr em funcionamento pleno). De modo geral, existem procedimentos ou mesmo métricas para quantificar o nível de eficiência.