Strojové učení se zaměřuje na vytváření algoritmů, které umožňují počítačům učit se ze vstupních dat a provádět úkoly bez explicitního programování. Na druhou stranu, hluboké učení je specifický typ strojového učení, který využívá umělé neuronové sítě s mnoha vrstvami (tzv. hluboké neuronové sítě) k analýze a učení se z obrovského množství dat. Hluboké učení je schopné automaticky extrahovat vlastnosti a vzory ze vstupních dat a dosáhnout vysoké úrovně přesnosti v různých úlohách, jako je rozpoznávání obrazu, překlad jazyka nebo predikce.
I když jsou jak strojové učení, tak hluboké učení podoblastmi umělé inteligence, existují mezi nimi rozdíly. Strojové učení se spoléhá na sérii ručně vytvořených funkcí a označená data k trénování modelů. Na druhou stranu hluboké učení je schopné naučit se složité vztahy mezi datovými body bez potřeby ručního inženýrství funkcí. Hluboké učení je také schopné vícevrstvého učení, což znamená, že může naučit se více abstrakcí a vztahů v datech, zatímco strojové učení je často omezeno na jednu vrstvu. Navíc, modely hlubokého učení nedávno dosáhly impozantních výsledků v mnoha úkolech, jako je například rozpoznávání objektů a zpracování přirozeného jazyka.