Algoritmii de învățare automată se bazează pe principiul de a identifica modele în date și de a utiliza aceste modele pentru a face prognoze sau decizii. Acești algoritmi sunt dezvoltați prin utilizarea unui set de date de antrenament și prin ajustarea parametrilor pentru a obține cele mai bune rezultate. Acești algoritmi pot fi supervizați sau nesupervizați, ceea ce înseamnă că pot fi folosiți pentru a învața atât din datele etichetate, cât și din cele neetichetate.