Strojové učenie je skupina metód používaných na vytváranie počítačových programov, ktoré sa môžu učiť z pozorovaní a robiť predpovede. Strojové učenie používa algoritmy, regresie a súvisiace vedy na porozumenie dát. Tieto algoritmy možno vo všeobecnosti považovať za štatistické modely a siete.
Hlboké vzdelávanie je podmnožinou metód strojového učenia. Dáta sa analyzujú prostredníctvom viacerých vrstiev siete s hlbokým vzdelávaním, aby sieť mohla vyvodiť závery a rozhodnúť o nich. Hlboké metódy učenia umožňujú veľkú presnosť veľkých súborov údajov, ale vďaka týmto vlastnostiam je hlboké vzdelávanie oveľa náročnejšie na zdroje ako klasické strojové učenie..
Po niekoľko desaťročí sa strojové učenie používa ako metóda na dosiahnutie umelej inteligencie v strojoch. Vo svojom jadre sa oblasť strojového učenia zameriava na vytváranie počítačov, ktoré sa môžu učiť a robiť rozhodnutia, čo robí strojové učenie vhodným pre výskum umelej inteligencie. Nie všetky modely strojového učenia sa však majú rozvíjať „skutočnú“ umelú inteligenciu, ktorá dokonale zodpovedá ľudskej inteligencii alebo ju presahuje. Namiesto toho sú modely často navrhnuté tak, aby skúmali konkrétne obmedzené problémy.
Hlboké vzdelávanie bolo navrhnuté v raných fázach diskusií o strojovom učení, ale len málo výskumníkov sa venovalo metódam hlbokého učenia, pretože výpočtové požiadavky na hlboké vzdelávanie sú oveľa väčšie ako v klasickom strojovom učení. Výpočtová sila počítačov sa však od roku 2000 exponenciálne zvýšila, čo výskumníkom umožňuje robiť obrovské zlepšenia v strojovom učení a konštrukcii umelej inteligencie. Pretože modely hlbokého učenia sa dobre škálovajú so zvýšenými údajmi, hlboké vzdelávanie má potenciál prekonať významné prekážky pri vytváraní skutočnej umelej inteligencie.
Strojové učenie a hlboké učenie sú algoritmické. V klasickom strojovom vzdelávaní vedci používajú relatívne malé množstvo údajov a rozhodujú sa, aké najdôležitejšie vlastnosti sú v údajoch, ktoré algoritmus potrebuje, aby mohol predpovedať. Táto metóda sa nazýva funkcia inžinierstva. Napríklad, ak by sa program strojového učenia učil rozpoznávať obraz lietadla, jeho programátori by vytvorili algoritmy, ktoré by programu umožnili rozpoznať typické tvary, farby a veľkosti komerčných lietadiel. Na základe týchto informácií by program strojového učenia robil predpovede o tom, či sú obrázky prezentované so zahrnutými lietadlami.
Hlboké vzdelávanie sa vo všeobecnosti odlišuje od klasického strojového učenia svojimi mnohými vrstvami rozhodovania. Siete s hlbokým vzdelávaním sa často považujú za „čierne skrinky“, pretože údaje sa analyzujú prostredníctvom viacerých sieťových vrstiev, z ktorých každá robí pozorovania. To môže sťažiť pochopenie výsledkov ako výsledky klasického strojového učenia. Presný počet vrstiev alebo krokov pri rozhodovaní závisí od typu a zložitosti zvoleného modelu.
Strojové učenie sa tradične používa malé súbory údajov, z ktorých sa učia a robia predpovede. Pri malom množstve údajov môžu vedci určiť presné vlastnosti, ktoré pomôžu programu strojového učenia porozumieť a učiť sa z údajov. Ak však program získa informácie, ktoré nedokáže klasifikovať na základe svojich už existujúcich algoritmov, výskumníci zvyčajne budú musieť problémové údaje analyzovať manuálne a vytvoriť novú funkciu. Z tohto dôvodu sa klasické strojové učenie zvyčajne pri veľkom množstve údajov zvyčajne nedá škálovať, ale môže minimalizovať chyby na menších množinách údajov..
Hlboké vzdelávanie je zvlášť vhodné pre veľké súbory údajov a modely často vyžadujú, aby boli užitočné veľké súbory údajov. Z dôvodu zložitosti siete s hlbokým vzdelávaním potrebuje táto sieť značné množstvo tréningových údajov a dodatočných údajov na testovanie siete po tréningu. V súčasnosti výskumníci zdokonaľujú siete hlbokého vzdelávania, ktoré môžu byť efektívnejšie a používajú menšie súbory údajov.
Strojové učenie má variabilné požiadavky na výkon počítača. Existuje veľa modelov, ktoré je možné spustiť na priemernom osobnom počítači. Čím pokročilejšie sú štatistické a matematické metódy, tým ťažšie pre počítač je rýchle spracovanie údajov.
Hlboké vzdelávanie má tendenciu byť veľmi náročné na zdroje. Analýza veľkého množstva informácií prostredníctvom viacerých vrstiev rozhodovania vyžaduje veľa výpočtovej sily. Keď sa počítače stávajú rýchlejšie, hĺbkové vzdelávanie je čoraz prístupnejšie.
Tradičné strojové učenie má niekoľko bežných a významných obmedzení. Overfitting je štatistický problém, ktorý môže ovplyvniť algoritmus strojového učenia. Algoritmus strojového učenia obsahuje určité množstvo „chýb“ pri analýze a predpovedaní pomocou údajov. Algoritmus má ukázať vzťah medzi relevantnými premennými, ale pri nadmernom prispôsobovaní začína tiež zachytávať chybu, čo vedie k „hlučnejšiemu“ alebo nepresnému modelu. Modely strojového učenia sa môžu tiež skloniť k idiosynkrasiám údajov, s ktorými boli trénovaní, čo je problém, ktorý je zrejmý najmä vtedy, keď vedci trénujú algoritmy na celom dostupnom súbore údajov namiesto ukladania časti údajov na testovanie algoritmu proti.
Hlboké vzdelávanie má rovnaké štatistické úskalia ako klasické strojové učenie, ako aj niekoľko jedinečných problémov. Pre mnoho problémov nie je k dispozícii dostatok údajov na trénovanie primerane presnej siete hlbokého vzdelávania. Zhromažďovanie väčšieho množstva údajov alebo simulovanie problému v skutočnom svete je často neúnosné alebo nemožné, čo obmedzuje súčasný rozsah tém, pre ktoré je možné hĺbkové vzdelávanie použiť..
Strojové učenie a hlboké učenie popisujú metódy výučby počítačov na učenie a rozhodovanie. Hlboké vzdelávanie je podmnožinou klasického strojového učenia a niektoré dôležité rozdiely spôsobujú, že hĺbkové vzdelávanie a strojové učenie sú vhodné pre rôzne aplikácie..