Čo je to AI?
AI (Umelá inteligencia) je odvetvie počítačovej vedy, v ktorom sú stroje programované a majú kognitívne schopnosti myslieť a napodobňovať činy ako ľudia a zvieratá. Meradlom pre AI je ľudská inteligencia týkajúca sa uvažovania, reči, učenia, videnia a riešenia problémov, ktorá je v budúcnosti ďaleko.
AI má tri rôzne úrovne:
- Úzka AI : O umelej inteligencii sa hovorí, že je úzka, keď stroj dokáže vykonať konkrétnu úlohu lepšie ako človek. Aktuálny výskum AI je tu
- Všeobecná AI : Umelá inteligencia dosiahne všeobecný stav, keď môže vykonávať akékoľvek intelektuálne úlohy s rovnakou úrovňou presnosti ako človek
- Aktívna AI : AI je aktívna, keď dokáže poraziť ľudí pri mnohých úlohách
Skoré systémy AI používali systémy porovnávania vzorov a expertné systémy.

V tomto návode sa naučíte
- Čo je to AI?
- Čo je ML?
- Čo je to Deep Learning?
- Proces strojového učenia
- Proces hlbokého učenia
- Automatizujte extrakciu funkcií pomocou DL
- Rozdiel medzi strojovým učením a hlbokým učením
- Kedy použiť ML alebo DL?
Čo je ML?
ML (Machine Learning) je typ AI, v ktorom je počítač trénovaný na automatizáciu úloh, ktoré sú pre človeka vyčerpávajúce alebo nemožné. Je to najlepší nástroj na analýzu, pochopenie a identifikáciu vzorcov v dátach na základe štúdia počítačových algoritmov. Strojové učenie môže robiť rozhodnutia s minimálnym zásahom človeka.
Pri porovnaní umelej inteligencie a strojového učenia používa strojové učenie údaje na napájanie algoritmu, ktorý dokáže pochopiť vzťah medzi vstupom a výstupom. Po dokončení učenia môže stroj predvídať hodnotu alebo triedu nového údajového bodu.
Čo je to Deep Learning?
Hlboké učenie je počítačový softvér, ktorý napodobňuje sieť neurónov v mozgu. Je to podmnožina strojového učenia a nazýva sa to deep learning, pretože využíva hlboké neurónové siete. Zariadenie používa na učenie sa z údajov rôzne vrstvy. Hĺbku modelu predstavuje počet vrstiev v modeli. Hlboké učenie je novým pokrokom v oblasti umelej inteligencie. Pri hlbokom učení sa fáza učenia uskutočňuje prostredníctvom neurónovej siete. Neurónová sieť je architektúra, kde sú vrstvy naskladané na seba
Proces strojového učenia
Predstavte si, že máte vytvoriť program, ktorý rozpoznáva objekty. Na nacvičenie modelu použijete klasifikátor . Klasifikátor využíva vlastnosti objektu na pokus o identifikáciu triedy, do ktorej patrí.
V príklade bude klasifikátor trénovaný na zisťovanie, či je obraz:
- Bicykel
- Čln
- Auto
- Rovina
Štyri vyššie uvedené objekty sú triedou, ktorú musí klasifikátor rozpoznať. Ak chcete zostaviť klasifikátor, musíte mať nejaké údaje ako vstup a priradiť im štítok. Algoritmus tieto dáta vezme, nájde vzor a potom ho zaradí do príslušnej triedy.
Táto úloha sa nazýva supervidované učenie. Pri výučbe pod dohľadom obsahujú tréningové dáta, ktoré napájate do algoritmu, štítok.
Výcvik algoritmu vyžaduje vykonanie niekoľkých štandardných krokov:
- Zhromažďujte údaje
- Trénujte klasifikátora
- Robte predpovede
Prvý krok je nevyhnutný, výber správnych údajov spôsobí, že algoritmus bude úspešný alebo zlyhá. Dáta, ktoré sa rozhodnete trénovať model, sa nazývajú vlastnosť. V príklade objektov sú to pixely obrázkov.
Každý obrázok je riadok v údajoch, zatiaľ čo každý pixel je stĺpec. Ak má váš obrázok veľkosť 28 x 28, množina údajov obsahuje 784 stĺpcov (28 x 28). Na obrázku nižšie bol každý obrázok transformovaný do vektora funkcií. Štítok informuje počítač o tom, aký objekt je na obrázku.

Cieľom je použiť tieto tréningové údaje na klasifikáciu typu objektu. Prvý krok spočíva vo vytvorení stĺpcov funkcií. Potom druhý krok zahrnuje výber algoritmu na trénovanie modelu. Po dokončení výcviku model predpovedá, aký obrázok zodpovedá akému objektu.
Potom je ľahké model predvídať nové obrázky. Pri každom novom vložení obrázka do modelu stroj predpovedá triedu, do ktorej patrí. Modelom prechádza napríklad úplne nový obrázok bez štítku. Pre človeka je vizualizácia obrazu ako automobilu triviálna. Stroj využíva svoje predchádzajúce znalosti aj na predpovedanie obrazu automobilu.
Proces hlbokého učenia
Pri hlbokom učení sa fáza učenia uskutočňuje prostredníctvom neurónovej siete. Neurónová sieť je architektúra, kde sú vrstvy naskladané na seba.
Zvážte ten istý príklad obrázku vyššie. Cvičná zostava by bola napájaná na neurálnu sieť
Každý vstup vstupuje do neurónu a je vynásobený hmotnosťou. Výsledok násobenia prúdi do ďalšej vrstvy a stáva sa vstupom. Tento proces sa opakuje pre každú vrstvu siete. Výsledná vrstva sa nazýva výstupná vrstva; poskytuje skutočnú hodnotu pre regresnú úlohu a pravdepodobnosť každej triedy pre klasifikačnú úlohu. Neurónová sieť používa matematický algoritmus na aktualizáciu hmotností všetkých neurónov. Neurónová sieť je úplne trénovaná, keď hodnota váh dáva výstup blízky realite. Napríklad dobre trénovaná neurónová sieť dokáže rozpoznať objekt na obrázku s vyššou presnosťou ako tradičná neurónová sieť.

Automatizujte extrakciu funkcií pomocou DL
Sada údajov môže obsahovať tucet až stovky funkcií. Systém sa poučí z relevantnosti týchto funkcií. Nie všetky funkcie však majú pre tento algoritmus význam. Rozhodujúcou súčasťou strojového učenia je nájsť relevantnú sadu funkcií, vďaka ktorým sa systém niečo naučí.
Jedným zo spôsobov vykonania tejto časti v strojovom učení je použitie extrakcie funkcií. Extrakcia funkcií kombinuje existujúce funkcie a vytvára relevantnejšiu sadu funkcií. Môže sa to robiť pomocou PCA, T-SNE alebo pomocou akýchkoľvek iných algoritmov znižovania rozmerov.
Napríklad pri spracovaní obrazu musí odborník extrahovať funkciu manuálne z obrázka, ako sú oči, nos, pery atď. Tieto extrahované funkcie sú zdrojom pre klasifikačný model.
Hlboké učenie rieši tento problém, najmä pre konvolučnú neurónovú sieť. Prvá vrstva neurónovej siete sa naučí malé detaily z obrázku; ďalšie vrstvy spoja predchádzajúce poznatky a vytvoria komplexnejšie informácie. V konvolučnej neurónovej sieti sa extrakcia znakov vykonáva pomocou filtra. Sieť použije na obrázok filter, aby sa zistilo, či existuje zhoda, tj. Tvar prvku je identický s časťou obrázka. Ak dôjde k zhode, sieť použije tento filter. Proces extrakcie funkcií sa preto vykonáva automaticky.

Rozdiel medzi strojovým učením a hlbokým učením
Nižšie uvádzame hlavný rozdiel medzi programami Deep Learning a Machine Learning
Strojové učenie |
Hlboké učenie |
|
Závislosti údajov |
Vynikajúci výkon v malom / strednom súbore údajov |
Vynikajúci výkon na veľkej množine údajov |
Závislosti od hardvéru |
Pracujte na stroji nižšej triedy. |
Vyžaduje výkonný stroj, najlepšie s GPU: DL vykonáva značné množenie matíc |
Funkčné inžinierstvo |
Musíte pochopiť funkcie, ktoré predstavujú údaje |
Nie je potrebné chápať najlepšiu vlastnosť, ktorá predstavuje údaje |
Čas vykonania |
Od pár minút do hodín |
Až týždne. Neurónová sieť musí vypočítať značný počet váh |
Interpretovateľnosť |
Niektoré algoritmy sa dajú ľahko interpretovať (logistické, rozhodovací strom), niektoré sú takmer nemožné (SVM, XGBoost) |
Ťažké až nemožné |
Kedy použiť ML alebo DL?
V nasledujúcej tabuľke zhrnieme pomocou príkladov rozdiel medzi strojovým učením a hlbokým učením.
Strojové učenie | Hlboké učenie | |
Súbor údajov o školení | Malý | Veľký |
Vyberte funkcie | Áno | Nie |
Počet algoritmov | Veľa | Málo |
Čas na tréning | Krátky | Dlhé |
Pri strojovom učení potrebujete na trénovanie algoritmu menej dát ako pri hlbokom učení. Hlboké vzdelávanie si vyžaduje rozsiahly a rôznorodý súbor údajov na identifikáciu základnej štruktúry. Okrem toho strojové učenie poskytuje rýchlejšie trénovaný model. Najpokročilejšia architektúra hlbokého učenia sa môže trénovať dni až týždeň. Výhodou hlbokého učenia oproti strojovému učeniu je, že je vysoko presný. Nemusíte chápať, ktoré funkcie sú najlepším vyjadrením údajov. neurónová sieť sa naučila vyberať kritické vlastnosti. V strojovom učení si musíte sami zvoliť, ktoré funkcie má model obsahovať.
Zhrnutie
Umelá inteligencia dodáva stroju kognitívne schopnosti. Pri porovnaní AI vs Machine Learning používali skoré systémy AI porovnávanie vzorov a expertné systémy.
Myšlienka strojového učenia spočíva v tom, že stroj sa môže učiť bez ľudského zásahu. Stroj musí nájsť spôsob, ako sa naučiť, ako vyriešiť úlohu, na základe ktorej sú dané údaje.
Hlboké učenie je prielom v oblasti umelej inteligencie. Ak je dostatok údajov na trénovanie, hlboké učenie dosahuje pôsobivé výsledky, najmä pokiaľ ide o rozpoznávanie obrázkov a preklad textu. Hlavným dôvodom je to, že extrakcia funkcií sa vykonáva automaticky v rôznych vrstvách siete.