Rozdíl mezi strojovým učením a hlubokým učením
Klíčový rozdíl mezi strojovým učením a hlubokým učením
Hlavní rozdíly mezi strojovým učením a hlubokým učením jsou:
- Strojové učení poskytuje vynikající výkon na malé/střední datové sadě, zatímco hluboké učení poskytuje vynikající výkon na velké datové sadě
- ML pracuje na low-end stroji, zatímco DL vyžaduje výkonný stroj, nejlépe s GPU.
- Doba provedení strojového učení od několika minut do hodin, zatímco hluboké učení trvá až týdny.
- Díky strojovému učení potřebujete k trénování algoritmu méně dat než hluboké učení. Hluboké učení vyžaduje rozsáhlý a různorodý soubor dat k identifikaci základní struktury.

Co je AI?
AI (umělá inteligence) je obor počítačové vědy, ve kterém jsou stroje naprogramovány a je jim dána kognitivní schopnost myslet a napodobovat akce jako lidé a zvířata. Měřítkem pro AI je lidská inteligence týkající se uvažování, řeči, učení, vize a řešení problémů, což je daleko v budoucnosti.
AI má tři různé úrovně
1) Úzká AI: Umělá inteligence je prý úzká, když stroj může vykonávat konkrétní úkol lépe než člověk. Aktuální výzkum AI je tady
2) Obecná AI: Umělá inteligence dosáhne obecného stavu, kdy může provádět jakýkoli intelektuální úkol se stejnou úrovní přesnosti jako člověk
3) Aktivní AI: AI je aktivní, když může porazit lidi v mnoha úkolech
Rané systémy umělé inteligence používaly porovnávání vzorů a expertní systémy.
Co je strojové učení (ML)?
ML (Strojové učení) je typ AI, ve kterém je počítač trénován k automatizaci úkolů, které jsou vyčerpávající nebo pro člověka nemožné. Je to nejlepší nástroj pro analýzu, pochopení a identifikaci vzorců v datech na základě studia počítačových algoritmů. Strojové učení může dělat rozhodnutí s minimálním zásahem člověka.
Porovnání Umělá inteligence ve srovnání se strojovým učením využívá strojové učení data k naplnění algoritmu, který dokáže pochopit vztah mezi vstupem a výstupem. Když stroj dokončí učení, může předpovědět hodnotu nebo třídu nového datového bodu.
Co je hluboké učení (DL)?
Hluboké učení je počítačový software, který napodobuje síť neuronů v mozku. Je to podmnožina strojového učení a nazývá se hluboké učení, protože využívá hluboké neuronové sítě. Stroj používá různé vrstvy k učení z dat. Hloubka modelu je reprezentována počtem vrstev v modelu. Hluboké učení je nový stav techniky z hlediska umělé inteligence. Při hlubokém učení se fáze učení provádí prostřednictvím neuronové sítě. Neuronová síť je architektura, kde jsou vrstvy naskládány na sebe
Rozdíl mezi strojovým učením a hlubokým učením
Níže je uveden klíčový rozdíl mezi hlubokým učením a strojovým učením
Parametr | Strojové učení | Hluboké učení |
---|---|---|
Závislosti na datech | Vynikající výkon na malé/střední datové sadě | Vynikající výkon na velké datové sadě |
Hardwarové závislosti | Práce na low-end stroji. | Vyžaduje výkonný stroj, nejlépe s GPU: DL provádí značné množství násobení matrice |
Funkce inženýrství | Je třeba porozumět funkcím, které reprezentují data | Není třeba rozumět nejlepší funkci, která představuje data |
Doba provedení | Od několika minut až po hodiny | Až týdny. Neuronová síť potřebuje vypočítat značný počet vah |
Interpretovatelnost | Některé algoritmy jsou snadno interpretovatelné (logistika, rozhodovací strom), některé jsou téměř nemožné (SVM, XGBoost) | Obtížné až nemožné |
Kdy použít ML nebo DL?
V tabulce níže shrnujeme rozdíl mezi strojové učení si hluboké učení s příklady.
Parametr | Strojové učení | Hluboké učení |
---|---|---|
Tréninkový datový soubor | Malý | Velký |
Vyberte funkce | Ano | Ne |
Počet algoritmů | Mnoho | Málo |
Čas tréninku | Krátký | Dlouho |
Díky strojovému učení potřebujete k trénování algoritmu méně dat než hluboké učení. Hluboké učení vyžaduje rozsáhlý a různorodý soubor dat k identifikaci základní struktury. Kromě toho strojové učení poskytuje rychleji trénovaný model. Trénink většiny pokročilé architektury hlubokého učení může trvat dny až týden. Výhodou hlubokého učení oproti strojovému učení je, že je vysoce přesné. Nemusíte chápat, jaké funkce nejlépe reprezentují data; neuronová síť se naučila, jak vybrat kritické funkce. Ve strojovém učení si musíte sami vybrat, jaké funkce zahrnout do modelu.
Proces strojového učení
Představte si, že máte sestavit program, který rozpoznává objekty. K trénování modelu použijete a klasifikátor. Klasifikátor používá vlastnosti objektu, aby se pokusil identifikovat třídu, do které patří.
V příkladu bude klasifikátor natrénován, aby zjistil, zda je obrázek:
- Jízdní kolo
- Loď
- Auto
- Rovina
Čtyři výše uvedené objekty jsou třídou, kterou musí klasifikátor rozpoznat. Chcete-li vytvořit klasifikátor, musíte mít nějaká data jako vstup a přiřadit jim štítek. Algoritmus vezme tato data, najde vzor a poté jej zařadí do odpovídající třídy.
Tento úkol se nazývá učení pod dohledem. Při učení pod dohledem zahrnují tréninková data, která předáváte algoritmu, štítek.
Trénink algoritmu vyžaduje provedení několika standardních kroků:
- Sbírejte data
- Trénujte klasifikátor
- Dělejte předpovědi
První krok je nezbytný, výběr správných dat způsobí úspěch nebo selhání algoritmu. Data, která zvolíte pro trénování modelu, se nazývají a vlastnost. V příkladu objektu jsou funkcemi pixely obrázků.
Každý obrázek je řádek v datech, zatímco každý pixel je sloupec. Pokud má váš obrázek velikost 28×28, datová sada obsahuje 784 sloupců (28×28). Na obrázku níže je každý obrázek transformován do příznakového vektoru. Štítek sděluje počítači, jaký objekt je na obrázku.
Cílem je použít tato trénovací data ke klasifikaci typu objektu. První krok spočívá ve vytvoření sloupců prvků. Druhý krok pak zahrnuje výběr algoritmu pro trénování modelu. Když je trénování hotové, model předpoví, jaký obrázek odpovídá jakému objektu.
Poté je snadné použít model k předpovídání nových obrázků. Pro každý nový obrázek vložený do modelu stroj předpoví třídu, do které patří. Modelem prochází například zcela nový obrázek bez štítku. Pro člověka je triviální představit si obraz jako auto. Stroj využívá své předchozí znalosti k předpovědi, že obraz je auto.
Proces hlubokého učení
Při hlubokém učení se fáze učení provádí prostřednictvím neuronové sítě. Neuronová síť je architektura, kde jsou vrstvy naskládány na sebe.
Zvažte stejný příklad obrázku výše. Tréninková sada by byla napájena neuronovou sítí
Každý vstup jde do neuronu a je vynásoben váhou. Výsledek násobení proudí do další vrstvy a stává se vstupem. Tento proces se opakuje pro každou vrstvu sítě. Poslední vrstva se nazývá výstupní vrstva; poskytuje skutečnou hodnotu pro regresní úlohu a pravděpodobnost každé třídy pro klasifikační úlohu. Neuronová síť používá matematický algoritmus k aktualizaci vah všech neuronů. Neuronová síť je plně natrénována, když hodnota vah dává výstup blízký skutečnosti. Například dobře trénovaná neuronová síť dokáže rozpoznat objekt na obrázku s vyšší přesností než tradiční neuronová síť.
Automatizujte extrakci funkcí pomocí DL
Datová sada může obsahovat tucet až stovky funkcí. Systém se poučí z relevance těchto funkcí. Ne všechny funkce jsou však pro algoritmus smysluplné. Zásadní součástí strojového učení je najít relevantní sadu funkcí, aby se systém něco naučil.
Jedním ze způsobů, jak provést tuto část ve strojovém učení, je použít extrakci funkcí. Extrakce funkcí kombinuje existující funkce a vytváří relevantnější sadu funkcí. Lze to provést pomocí PCA, T-SNE nebo jiných algoritmů pro redukci rozměrů.
Například při zpracování obrazu musí odborník z obrazu ručně extrahovat prvek, jako jsou oči, nos, rty a tak dále. Tyto extrahované prvky jsou přiváděny do klasifikačního modelu.
Hluboké učení řeší tento problém, zejména pro konvoluční neuronové sítě. První vrstva neuronové sítě se z obrázku naučí drobné detaily; další vrstvy spojí předchozí znalosti a vytvoří komplexnější informace. V konvoluční neuronové síti se extrakce příznaků provádí pomocí filtru. Síť aplikuje na obrázek filtr, aby zjistila, zda existuje shoda, tj. tvar prvku je shodný s částí obrázku. Pokud existuje shoda, síť použije tento filtr. Proces extrakce rysů se proto provádí automaticky.
Shrnutí
Umělá inteligence předává stroji kognitivní schopnosti. Při srovnání umělé inteligence a strojového učení používaly dřívější systémy umělé inteligence systémy porovnávání vzorů a expertní systémy.
Myšlenkou strojového učení je, že stroj se může učit bez lidského zásahu. Stroj potřebuje najít způsob, jak se naučit řešit úlohu s ohledem na data.
Hluboké učení je průlom v oblasti umělé inteligence. Když je k dispozici dostatek dat, na kterých lze trénovat, dosahuje hluboké učení působivých výsledků, zejména při rozpoznávání obrázků a překladu textu. Hlavním důvodem je, že extrakce funkcí se provádí automaticky v různých vrstvách sítě.