Vodič za duboko učenje: Umjetna inteligencija pomoću dubokog učenja



Ovaj blog o Vodiču za duboko učenje pomoći će vam da razumijete sve o dubinskom učenju i njegovom odnosu sa Strojnim učenjem i umjetnom inteligencijom.

Budući da je važna podskupina strojnog učenja, potražnja za je zabilježio golem porast, posebno među onima koji su zainteresirani za otključavanje neograničenih mogućnosti AI.Inspiriran sve većom popularnošću dubokog učenja, smislio sam smisliti niz blogova koji će vas educirati o ovom novom trendu na polju umjetne inteligencije i pomoći vam da shvatite o čemu se radi. Ovo je prvi od mnogih blogova u seriji pod nazivom - Vodič za duboko učenje .

Vodič za duboko učenje

U ovom blogu Vodiča za duboko učenje provest ću vas kroz sljedeće stvari koje će poslužiti kao osnova za nadolazeće blogove:





  • Što je omogućilo postojanje dubokog učenja
  • Što je duboko učenje i kako to djeluje?

Možete proći kroz ovu snimku Vodiča za duboko učenje gdje je naš instruktor detaljno objasnio teme s primjerima koji će vam pomoći da bolje razumijete ovaj koncept.

Vodič za duboko učenje | Neuronske mreže dubokog učenja | Edureka

Primjene umjetne inteligencije i dubokog učenja

Sada razmislite o ovome, umjesto da radite sav svoj posao, imate stroj koji će ga dovršiti umjesto vas ili može učiniti nešto za što ste mislili da uopće nije moguće. Na primjer:



Predviđanje budućnosti - Vodič za duboko učenje - Edureka

Predviđanje budućnosti: Može nam prethodno pomoći u predviđanju zemljotresa, tsunamija itd., Tako da se mogu poduzeti preventivne mjere kako bi se mnogi životi spasili od pada u kandže prirodnih nepogoda.

Chat-botovi: Svi biste čuli za Siri, koja je Appleov glasovni virtualni pomoćnik. Vjerujte mi, uz pomoć dubokog učenja ova virtualna pomoć postaje pametnija iz dana u dan. Zapravo, Siri se može prilagoditi prema korisniku i pružiti bolju personaliziranu pomoć.
Samovozeći automobili: Zamislite, kako bi to bilo nevjerojatno za tjelesne invalide i starije ljude kojima je teško samostalno voziti. Osim toga, spasit će milijune nevinih života koji se svake godine sretnu u prometnim nesrećama zbog ljudske pogreške.

Google AI očni liječnik: Nedavna je inicijativa koju je Google poduzeo u suradnji s indijskim lancem za njegu očiju kako bi razvili AI softver koji može pregledati skeniranje mrežnice i prepoznati stanje zvano dijabetička retinopatija, koje može uzrokovati sljepoću.

AI glazbeni skladatelj: Pa, tko je mislio da možemo imati skladatelja AI glazbe koristeći Deep Learning. Stoga me ne bi iznenadilo kad bih čuo da sljedeću najbolju glazbu daje stroj.
Stroj za čitanje snova: Ovo mi je jedan od najdražih, stroj koji može zabilježiti vaše snove u obliku video zapisa ili slično. S toliko nerealnih aplikacija AI i dubokog učenja koje smo do sada vidjeli, nisam bio iznenađen kad sam otkrio da je to pokušano u Japanu prije nekoliko godina na tri ispitna predmeta i da su uspjeli postići blizu 60% točnosti. To je nešto sasvim nevjerojatno, a istinito.


Prilično sam siguran da bi vam neke od ovih stvarnih aplikacija AI i dubokog učenja naježile. Dobro, ovo vam postavlja osnovu, a sada smo spremni nastaviti dalje u ovom vodiču za duboko učenje i shvatiti što je umjetna inteligencija.



Što je umjetna inteligencija?

Umjetna inteligencija nije ništa drugo nego sposobnost stroja da oponaša inteligentno ljudsko ponašanje. AI se postiže oponašanjem ljudskog mozga, razumijevanjem načina razmišljanja, učenja, odlučivanja i rada dok pokušava riješiti problem.

Na primjer: Stroj koji igra šah ili softver koji se aktivira glasom koji vam pomaže u raznim stvarima na vašem iPhoneu ili sustav prepoznavanja registarske pločice koji snima registarsku pločicu prebrzog automobila i obrađuje ga kako bi izvukao registracijski broj i identificirao vlasnika automobila . Sve to prije nije bilo baš lako implementirati Duboko učenje . Ajmo sada razumjeti razne podskupove umjetne inteligencije.

Podskupovi umjetne inteligencije

Do sada biste čuli puno o umjetnoj inteligenciji, strojnom učenju i dubokom učenju. Međutim, znate li vezu između sve troje? U osnovi, duboko učenje je podpolje strojnog učenja, a strojno učenje podpolje umjetne inteligencije kao što je prikazano na donjoj slici:

Kad pogledamo nešto poput AlphaGo , često se prikazuje kao veliki uspjeh za duboko učenje, ali zapravo je kombinacija ideja iz nekoliko različitih područja umjetne inteligencije i strojnog učenja. Zapravo, iznenadili biste se kad biste čuli da ideja dubokih neuronskih mreža nije nova, već da potječe iz 1950-ih. Međutim, postalo je moguće praktički ga implementirati zbog vrhunskih resursa koji su danas dostupni.

Dakle, krećući se naprijed u ovom blogu udžbenika dubokog učenja, istražimo Strojno učenje praćeno njegovim ograničenjima.

Što je strojno učenje?

Strojno učenje podgrupa je umjetne inteligencije koja omogućuje računalima mogućnost učenja bez izričitog programiranja. U strojnom učenju ne moramo eksplicitno definirati sve korake ili uvjete kao bilo koja druga programska aplikacija. Naprotiv, stroj se osposobljava na skupu podataka o obuci, dovoljno velik da stvori model, koji pomaže stroju da donosi odluke na temelju svog učenja.

Na primjer: Vrste cvijeta želimo odrediti na temelju duljine latica i sepusa (listovi cvijeta) pomoću strojnog učenja. Onda, kako ćemo to učiniti?

Skup podataka o cvijeću koji sadrži različite karakteristike različitih cvjetova zajedno s njihovim vrstama uložit ćemo u naš stroj, kao što možete vidjeti na gornjoj slici. Koristeći ovaj skup ulaznih podataka, stroj će stvoriti i obučiti model koji se može koristiti za klasifikaciju cvijeća u različite kategorije.
Nakon što se naš model obuči, prenijet ćemo niz karakteristika kao ulaz u model.
Napokon, naš će model prikazati vrste cvijeta prisutne u novom skupu ulaznih podataka. Nazvan je ovaj proces osposobljavanja stroja za stvaranje modela i njegovo korištenje za donošenje odluka Strojno učenje . Međutim, ovaj postupak ima određena ograničenja.

Ograničenja strojnog učenja

Strojno učenje nije sposobno rukovati visokodimenzionalnim podacima jer su ulaz i izlaz prilično veliki. Rukovanje i obrada takvih vrsta podataka postaje vrlo složeno i iscrpljujuće resurse. Ovo se naziva Prokletstvo dimenzionalnosti . Da bismo to jednostavnije razumjeli, uzmimo u obzir sljedeću sliku:

Uzmite u obzir crtu od 100 metara i bacili ste novčić negdje na crtu. Sad vam je sasvim prikladno pronaći novčić jednostavnim hodanjem po liniji. Upravo je ta linija jednodimenzionalna cjelina.
Dalje, uzmite u obzir da imate kvadrat bočne strane od 100 metara, kao što je prikazano na gornjoj slici, a opet ste negdje između ostavili novčić. Sad je sasvim očito da će vam trebati više vremena da pronađete novčić unutar tog kvadrata u odnosu na prethodni scenarij. Ovaj kvadrat je dvodimenzionalni entitet.
Krenimo korak unaprijed uzimajući u obzir kocku bočne 100 jardi svaka, a negdje između ste bacili novčić. Sada je još teže pronaći novčić ovaj put. Ova je kocka trodimenzionalna cjelina.

Stoga možete primijetiti kako se složenost povećava kako se dimenzije povećavaju.A u stvarnom životu visokodimenzionalni podaci o kojima smo govorili imaju tisuće dimenzija što ih čini vrlo složenima za rukovanje i obradu. Visokokvalitetni podaci mogu se lako pronaći u slučajevima korištenja poput obrade slika, NLP-a, prevođenja slika itd.

Strojno učenje nije bilo u stanju riješiti ove slučajeve uporabe, pa je duboko učenje priskočilo u pomoć. Dubinsko učenje sposobno je rukovati visokodimenzionalnim podacima, a također je učinkovito u samostalnom fokusiranju na prave značajke. Taj se postupak naziva izdvajanje značajki. Krenimo sada u ovaj Vodič za duboko učenje i shvatimo kako funkcionira duboko učenje.

Kako funkcionira dubinsko učenje?

Pokušavajući redizajnirati ljudski mozak, Deep Learning proučava osnovnu jedinicu mozga koja se naziva moždana stanica ili neuron. Inspiriran iz neurona razvijen je umjetni neuron ili perceptron. Sada, shvatimo funkcionalnost bioloških neurona i kako oponašamo tu funkcionalnost u perceptronu ili umjetnom neuronu:

kako proći referencom u javi
  • Ako se usredotočimo na strukturu biološkog neurona, on ima dendrite koji se koriste za primanje ulaznih podataka. Ti se ulazi zbrajaju u staničnom tijelu i pomoću Axona prenose se na sljedeći biološki neuron kao što je prikazano na gornjoj slici.

  • Slično tome, perceptron prima više ulaza, primjenjuje razne transformacije i funkcije i daje izlaz.

  • Kao što znamo da se naš mozak sastoji od više povezanih neurona koji se nazivaju neuronska mreža, možemo imati i mrežu umjetnih neurona nazvanih perceptroni koji tvore duboku neuronsku mrežu. Krenimo dalje u ovom vodiču za duboko učenje kako bismo shvatili kako izgleda duboka neuronska mreža.

Vodič za duboko učenje: Što je dubinsko učenje?

  • Bilo koja duboka neuronska mreža sastojat će se od tri vrste slojeva:
    • Ulazni sloj
    • Skriveni sloj
    • Izlazni sloj
U gornjem je dijagramu prvi sloj ulazni sloj koji prima sve ulaze, a zadnji sloj izlazni sloj koji daje željeni izlaz.
Svi slojevi između tih slojeva nazivaju se skriveni slojevi. Zahvaljujući vrhunskim resursima dostupnim u današnje vrijeme, može biti n broj skrivenih slojeva.
Broj skrivenih slojeva i broj perceptrona u svakom sloju u potpunosti će ovisiti o slučaju upotrebe koji pokušavate riješiti.

Sad kad imate sliku dubokih neuronskih mreža, krenimo dalje u ovom vodiču za duboko učenje kako bismo dobili pogled na visokoj razini o tome kako duboke neuronske mreže rješavaju problem prepoznavanja slika.

Upotreba dubokog učenja - slučaj

Želimo izvršiti prepoznavanje slika pomoću Deep Networks:

Ovdje prenosimo visokodimenzionalne podatke na ulazni sloj. Da bi se podudarao s dimenzionalnošću ulaznih podataka, ulazni sloj sadržavat će više podslojeva perceptrona tako da može potrošiti cijeli ulaz.
Izlaz primljen od ulaznog sloja sadržavat će uzorke i moći će prepoznati rubove slika na temelju razine kontrasta.
Ovaj će izlaz biti proslijeđen na skriveni sloj 1, gdje će moći prepoznati razne značajke lica poput očiju, nosa, ušiju itd.
Sada će se to dovesti na skriveni sloj 2, gdje će moći oblikovati cijela lica. Zatim se izlaz sloja 2 šalje izlaznom sloju.
Konačno, izlazni sloj vrši klasifikaciju na temelju rezultata dobivenog iz prethodnog i predviđa ime.

Dopustite mi da vas postavim pitanje, što će se dogoditi ako bilo koji od ovih slojeva nedostaje ili neuronska mreža nije dovoljno duboka? Jednostavno, nećemo moći točno identificirati slike. To je sam razlog zašto ovi slučajevi upotrebe nisu imali rješenje svih ovih godina prije dubokog učenja. Samo da nastavimo dalje, pokušat ćemo primijeniti duboke mreže na MNIST skupu podataka.

  • Skup podataka Mnist sastoji se od 60 000 uzoraka treninga i 10 000 ispitnih uzoraka rukom napisanih znamenkasti slika. Zadatak je ovdje osposobiti model koji može točno prepoznati znamenku prisutnu na slici.

  • Da bi se riješio ovaj slučaj upotrebe, stvorit će se duboka mreža s više skrivenih slojeva za obradu svih 60 000 slika piksel po piksel i na kraju ćemo dobiti izlazni sloj.
  • Izlazni sloj bit će niz indeksa 0 do 9, pri čemu svaki indeks odgovara odgovarajućoj znamenci. Indeks 0 sadrži vjerojatnost da je 0 znamenka prisutna na ulaznoj slici.
  • Slično tome, indeks 2 koji ima vrijednost 0,1 zapravo predstavlja vjerojatnost da je 2 znamenka prisutna na ulaznoj slici. Dakle, ako vidimo da je najveća vjerojatnost u ovom polju 0,8 koja je prisutna u indeksu 7 niza. Stoga je broj prisutan na slici 7.

Zaključak

Dakle, dečki, ovdje se radilo o dubokom učenju ukratko. U ovom vodiču za duboko učenje vidjeli smo razne primjene dubokog učenja i razumjeli njegov odnos s AI i Strojnim učenjem. Tada smo shvatili kako možemo koristiti perceptron ili osnovne građevne blokove umjetnog neurona za stvaranje duboke neuronske mreže koja može obavljati složene zadatke poput njih. Napokon smo prošli jedan od slučajeva dubokog učenja gdje smo izvršili prepoznavanje slika koristeći duboke neuronske mreže i razumjeli sve korake koji se događaju iza scene. Sada ćemo u sljedećem blogu ove serije Vodiča za duboko učenje naučiti kako implementirati perceptron pomoću TensorFlow-a, koji je Python-ova knjižnica za duboko učenje.

Sad kad znate za duboko učenje, pogledajte Edureka, pouzdana tvrtka za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta. Tečaj Edureka za dubinsko učenje s certifikatom TensorFlow pomaže učenicima da postanu stručnjaci u obuci i optimizaciji osnovnih i konvolucijskih neuronskih mreža koristeći projekte i zadatke u stvarnom vremenu zajedno s konceptima kao što su SoftMax funkcija, Neuronske mreže s automatskim kodiranjem, Ograničeni Boltzmannov stroj (RBM).

Imate pitanje za nas? Molimo spomenite to u odjeljku za komentare i javit ćemo vam se.