Úvod do algoritmov hlbokého učenia
Hlboké učenie je krokom k priblíženiu sa k umelej inteligencii, ktorá by mohla prijímať rozhodnutia ako ľudské mozgy, tj mať schopnosť učiť sa pomocou pokusov a omylov rovnako ako ľudia. Ľudský mozog má miliardy neurónov (približne 86 miliárd; zdroj: Wikipedia). Pri umelých neurónoch pomáha hlboké vzdelávanie napodobňovať ľudskú myseľ. Na spracovanie informácií a rozhodnutie pomocou umelých neurónových sietí existuje niekoľko algoritmov, ktoré sa nazývajú algoritmy hlbokého učenia. Algoritmy sa učia v každej vrstve postupne, tj; z funkcií v ďalšej vrstve je pridaná vyššia hodnota. Ak sú údaje malé, neúplné alebo príliš jednoduché, model hlbokého učenia sa môže preplniť. Algoritmy hlbokého učenia sú účinné, ak sú údaje obrovské.
Algoritmy hlbokého učenia
Ak chcete vytvoriť hlboký vzdelávací model, musíte napísať niekoľko algoritmov, zmiešať ich a vytvoriť sieť neurónov. Hlboké vzdelávanie má vysoké výpočtové náklady. Aby sme pomohli hlbokým vzdelávacím modelom, existujú hlboké vzdelávacie platformy ako tok Tensor, Py-Torch, Chainer, Keras atď. Pri hlbokom učení sme sa pokúsili replikovať ľudskú neurónovú sieť s umelou neurónovou sieťou, ľudský neurón sa v perceptróne nazýva perceptrón. hlboký vzdelávací model. Tieto perceptrónové jednotky spájame do neurónovej siete, ktorá má 3 sekcie:
- Vstupná vrstva
- Skryté vrstvy
- Výstupná vrstva
Perceptrón má vstupné uzly (dendrity v ľudskom mozgu), aktivačnú funkciu na vytvorenie malého rozhodnutia a výstupné uzly (axón v ľudskom mozgu). Uvidíme, ako jeden perceptron funguje, ich vzájomné prepojenie vytvorí hlboký vzdelávací model. Vstupným informáciám (počet vstupných premenných / funkcií) sa priraďuje určitá váha a privádzajú sa do aktivačnej funkcie. Ovládacia funkcia robí rozhodnutie a vysiela výstup. Výstup tohto perceptrónu bude vstupom do ďalších neurónov. Akonáhle je šarža spracovaná, počíta sa chyba backpropagácie v každom neuróne pomocou nákladovej funkcie / krížovej entropie. Týmto spôsobom sa znovu pridelia vstupné hmotnosti a celý proces pokračuje, až kým krížová entropia nespĺňa podmienky.
Máme rôzne aktivačné funkcie, ako sú sigmoidné funkcie, hyperbolická tangensová funkcia, usmernená lineárna jednotka (ReLU), aby sme urobili malé rozhodnutie. Na vytvorenie dobrého modelu je potrebný hlboký vzdelávací model. Model s viac ako 3 skrytými vrstvami sa spravidla považuje za hlbokú neurónovú sieť. Deep learning je v podstate skupina neurónov s množstvom parametrov definovaných pre každú vrstvu. Na vytvorenie modelu Deep Learning sú populárnymi architektúrami RNN, CNN atď.
Architektonické metódy pre algoritmy hlbokého učenia
Na vytvorenie tejto architektúry sa používajú tieto algoritmy:
1. Propagácia späť
V tomto algoritme vypočítame parciálne deriváty. Všeobecne platí, že metóda optimalizácie gradientu zostupu, deriváty (gradienty) sa počítajú pri každej iterácii. Pri hlbokých vzdelávacích funkciách nie sú jednoduché, sú zložením rôznych funkcií. V tomto prípade je ťažké vypočítať gradienty, takže na výpočet derivátov používame približnú diferenciáciu. Čím väčší je počet parametrov, tým bude drahšia približná diferenciácia.
2. Stochastické klesanie
V zostupe je cieľom nájsť globálne minimá alebo optimálne riešenie. Aby sme to však dosiahli, musíme zvážiť aj riešenia miestnych minim (nie žiaduce). Ak je objektívnou funkciou konvexná funkcia, je ľahké nájsť globálne minimá. Počiatočná hodnota funkcie a rýchlosť učenia sú rozhodujúce parametre na nájdenie globálnych minim. To možno ľahko pochopiť zvážením rieky vychádzajúcej z vrcholu hory a hľadaním podhoria (globálne minimá). Ale mimochodom, bude sa musieť vyhnúť určitým výkyvom (miestnym minimám). Východiskový bod a rýchlosť rieky (v našom prípade počiatočná hodnota a miera učenia) sú rozhodujúcimi faktormi na nájdenie globálnych minim.
3. Miera učenia
Miera učenia je ako rýchlosť rieky, môže skrátiť čas na tréning a zvýšiť výkon. Všeobecne platí, že ak sa chcete naučiť akúkoľvek techniku / šport, na začiatku je miera výučby pomerne vysoká ako na konci, keď sa človek má naučiť. Po prechodnej fáze bude učenie pomalé, dôraz sa bude klásť na jemné doladenie. To isté sa uplatňuje v hlbokom učení, príliš veľké zmeny sa riešia vyššou mierou učenia a pomalým znižovaním rýchlosti učenia sa neskôr na jemné doladenie.
4. Normalizácia šarže
Pri hlbokom učení sa počiatočná hodnota hmotnosti (náhodne vybraná) a učenia určuje miera pre minidávku. Na začiatku by bolo veľa odľahlých hodnôt a počas backpropagácie musia byť tieto odľahlé hodnoty kompenzované, aby sa vypočítali váhy, aby sa dosiahol výstup. Výsledkom tejto kompenzácie sú ďalšie epochy. Aby sme tomu zabránili, používame dávkovú normalizáciu.
5. Vypadnite
Pri hlbokom učení sa zvyčajne stretávame s problémom nadmerného osadenia. Prebytok vo veľkých sieťach s niekoľkými parametrami sťažuje predpovedanie testovacích údajov. Aby sme sa tomu vyhli, používame metódu výpadku, ktorá počas tréningu ruší náhodné jednotky vytvorením rôznych „zoslabených sietí“. Pri testovaní sa tieto predpovede týchto riedených sietí spriemerujú, čo pomáha predchádzať nadmernému vybavovaniu.
6. Bag of Words
Na predpovedanie ďalšieho slova používame nepretržité vrecko slov. Napríklad v e-mailovej správe vidíme, že automatické podanie žiadosti o doplnenie vety je súčasťou NLP. Deje sa to tak, že sa vezme do úvahy veľa viet a za konkrétne slovo, ktoré je zachytené. Tieto špecifické slová a okolité slová sa privádzajú do neurónovej siete. Po tréningovom modeli dokáže predpovedať konkrétne slovo na základe okolitých slov.
7. Dlhodobá krátkodobá pamäť
LSTM je veľmi užitočný pri problémoch s predikciou postupnosti, ako je preklad jazyka, predpovedanie predaja a zisťovanie ceny akcií. LSTM má výhodu oproti iným technikám, pretože dokáže vziať do úvahy predchádzajúce údaje. LSTM robí modifikáciu mechanizmom bunkových stavov. Pamätá si, že som zabudol na veci. Tri hlavné aspekty LSTM ho odlišujú od ostatných techník hlbokého učenia. Po prvé, keď by mal mať neurón vstup, po druhé, kedy si treba pamätať na predchádzajúce údaje a na čo zabudnúť, a tretí je, keď odovzdať výstup.
záver
Model hlbokého učenia je krokom k replikácii ľudskej mysle. Namiesto biologických neurónov používa hlboké učenie umelú neurálnu sieť. Hlboké vzdelávanie má vysoké výpočtové náklady, ktoré možno znížiť použitím rámcov hlbokého učenia, ako je tok Tensor a Py-Torch atď. RNN, CNN sú architektonické metódy pre hlboké vzdelávacie modely. V tomto článku sú opísané rôzne algoritmy Deep learning, ktoré sa používajú v týchto architektúrach.
Odporúčané články
Toto je príručka pre hlboké učenie sa algoritmov. Tu diskutujeme architektonické metódy pre algoritmy hlbokého učenia spolu s vrstvami. Viac informácií nájdete aj v ďalších navrhovaných článkoch -
- Úvod do algoritmov strojového učenia
- Top 14 aplikácií strojového učenia
- Umelá inteligencia vs strojové učenie vs hlboké učenie
- Top 13 užitočných otázok a odpovedí na hlboké vzdelávanie