Uczenie maszynowe opiera się na koncepcji istniejących algorytmów podstawowych, które ukazują ciekawą charakterystykę danego zbioru danych, ale bez konieczności pisania kodu komputerowego specyficznego dla konkretnego zadania. Zamiast pisać kod, dostarczasz dane wejściowe od algorytmu podstawowego i tworzysz swoją własną logikę, która wykorzystuje te dane.

Jako przykładem możemy się posłużyć algorytmem klasyfikacji. Dzieli on dane na różne grupy. Bez zmiany ani jednej linijki kodu ten sam algorytm klasyfikacji może zostać użyty do rozpoznawania ręcznie napisanych cyfr czy przenoszenia wiadomości e-mail do folderu ze spamem lub pozostawiania ich w skrzynce odbiorczej. Wystarczy zapewnić inne dane uczące, a algorytm dostarczy inną logikę grupowania danego zbioru danych.