complete guide artificial neural network machine learning
Ovaj vodič objašnjava što je umjetna neuronska mreža, kako funkcionira ANN, struktura i vrste arhitekture ANN-a i neuronske mreže:
U ovome Obuka za strojno učenje za sve , istražili smo sve o Vrste strojnog učenja u našem prethodnom vodiču.
Ovdje, u ovom vodiču, razgovarajte o različitim algoritmima u neuronskim mrežama, zajedno s usporedbom između strojnog učenja i ANN-a. Prije nego što naučimo kako ANN pridonosi strojnom učenju, moramo znati što je umjetna neuronska mreža i kratko znanje o strojnom učenju.
Istražimo više o strojnom učenju i umjetnoj neuronskoj mreži !!
=> Pročitajte cjelovitu seriju treninga za strojno učenje
Što ćete naučiti:
- Što je strojno učenje?
- Što je umjetna neuronska mreža?
- Struktura biološke neuronske mreže
- Usporedba biološkog i umjetnog neurona
- Karakteristike ANN-a
- Struktura ANN-a
- Funkcija aktiviranja
- Što je umjetni neuron?
- Kako djeluje umjetni neuron?
- Osnovni modeli ANN-a
- Arhitektura neuronske mreže
- Primjer mreže umjetnih neurona
- Usporedba strojnog učenja i ANN-a
- Neuronske mreže i duboko učenje
- Umjetne neuronske mreže
- Ograničenja neuronskih mreža
- Zaključak
- Preporučena literatura
Što je strojno učenje?
Strojno učenje je područje znanosti koje omogućuje računalima sposobnost učenja i djelovanja bez izričitog programiranja. To je potpolje umjetne inteligencije.
Što je umjetna neuronska mreža?
ANN je nelinearni model koji se široko koristi u strojnom učenju i ima perspektivnu budućnost u području umjetne inteligencije.
Umjetna neuronska mreža analogna je biološkoj neuronskoj mreži. Biološka neuronska mreža struktura je milijardi milijardi međusobno povezanih neurona u ljudskom mozgu. Ljudski mozak sastoji se od neurona koji šalju informacije različitim dijelovima tijela kao odgovor na izvršenu radnju.
Slično ovome, Umjetna neuronska mreža (ANN) računalna je mreža u znanosti koja sliči karakteristikama ljudskog mozga. ANN se može modelirati kao izvorni neuroni ljudskog mozga, stoga se dijelovi za obradu ANN-a nazivaju umjetnim neuronima.
ANN se sastoji od velikog broja međusobno povezanih neurona nadahnutih radom mozga. Ti neuroni imaju sposobnost učenja, generaliziranja podataka o treningu i dobivanja rezultata iz složenih podataka.
Te se mreže koriste u područjima klasifikacije i predviđanja, identifikacije uzoraka i trendova, problema s optimizacijom itd. ANN uči iz podataka treninga (poznati ulazni i ciljni izlaz) bez ikakvog programiranja.
Naučena neuronska mreža naziva se an stručni sustav s mogućnošću analize podataka i odgovaranja na pitanja određenog područja.
Formalna definicija ANN-a koju je dao dr. Robert Hecht-Nielson, izumitelj jednog od prvih neuro računala je:
'... računalni sustav koji se sastoji od niza jednostavnih, međusobno vrlo povezanih procesnih elemenata, koji obrađuju informacije svojim dinamičkim odzivom stanja na vanjske ulaze'.
Struktura biološke neuronske mreže
Biološka neuronska mreža sastoji se od:
- Soma: To se naziva i staničnim tijelom. Tu se nalazi stanična jezgra.
- Dendriti: To su mreže nalik stablu koje su povezane s tijelom stanice. Napravljeno je od živčanog vlakna.
- Axon: Axon prenosi signal iz tijela stanice. Razdvaja se u niti i svaki se pramen završava u strukturi nalik žarulji koja se naziva sinapsa. Električni signali se prenose između sinapse i dendrita.

(slika izvor )
Usporedba biološkog i umjetnog neurona
| Biološki neuron | Umjetni neuron |
|---|---|
| ML se primjenjuje u e-trgovini, zdravstvu, preporukama o proizvodima itd. | ANN se primjenjuje u domeni financija, strojnom učenju i umjetnoj inteligenciji. |
| Napravljen je od stanica. | Stanice odgovaraju neuronima. |
| Ima dendrite koji su međusobne veze između tijela stanice. | Težine veze odgovaraju dendritima. |
| Soma prima ulaz. | Soma je slična neto ulaznoj težini. |
| Akson prima signal. | Izlaz ANN odgovara aksonu. |
Karakteristike ANN-a
- Nelinearnost: Mehanizam koji se u ANN-u slijedi za generiranje ulaznog signala je nelinearan.
- Nadzirano učenje: Ulazni i izlazni podaci mapiraju se, a ANN se obučava sa skupom podataka o obuci.
- Učenje bez nadzora: Ciljni izlaz nije dat, pa će ANN učiti sam otkrivajući značajke u uzorcima unosa.
- Prilagodljiva priroda: Utezi veze u čvorovima ANN-a sposobni su sami prilagoditi sebe da daju željeni izlaz.
- Analogija bioloških neurona: ANN ima strukturu i funkcionalnost nadahnutu ljudskim mozgom.
- Tolerancija kvarova: Te su mreže vrlo tolerantne jer se informacije distribuiraju u slojevima i računanje se događa u stvarnom vremenu.
Struktura ANN-a
Umjetne neuronske mreže obrađuju elemente u obliku algoritama ili hardverskih uređaja po uzoru na neuronsku strukturu moždane kore ljudskog mozga.
Te se mreže također nazivaju i neuronskim mrežama. NN se sastoji od mnogih slojeva. Više međusobno povezanih slojeva često se naziva 'višeslojni perceptron'. Neuroni u jednom sloju nazivaju se 'čvorovi'. Ti čvorovi imaju 'funkciju aktivacije'.
ANN ima 3 glavna sloja:
- Ulazni sloj: Ulazni obrasci dovode se do ulaznih slojeva. Postoji jedan ulazni sloj.
- Skriveni slojevi: Može biti jedan ili više skrivenih slojeva. Obrada koja se odvija u unutarnjim slojevima naziva se 'skriveni slojevi'. Skriveni slojevi izračunavaju izlaz na temelju 'težina' koja je 'zbroj ponderiranih veza sinapse'. Skriveni slojevi pročišćavaju ulaz uklanjanjem suvišnih podataka i šalju ih na sljedeći skriveni sloj za daljnju obradu.
- Izlazni sloj: Ovaj skriveni sloj povezuje se s 'izlaznim slojem' gdje je izlaz prikazan.
Funkcija aktiviranja
Aktivacijska funkcija je unutarnje stanje neurona. To je funkcija ulaza koju neuron prima. Funkcija aktivacije koristi se za pretvaranje ulaznog signala na čvoru ANN u izlazni signal.
Što je umjetni neuron?
Umjetna neuronska mreža sastoji se od međusobno vrlo povezanih procesnih elemenata koji se nazivaju čvorovi ili neuroni.
Ti neuroni rade paralelno i organizirani su u arhitekturi. Čvorovi su međusobno povezani vezama povezivanja. Svaki neuron nosi uteg koji sadrži informacije o ulaznom signalu.
Kako djeluje umjetni neuron?
Umjetni neuron prima ulaz. Ovi ulazi imaju težinu koja se naziva „sinapsa“. Ti neuroni (koji se nazivaju i čvorovi) imaju 'aktivacijsku funkciju'. Ova funkcija aktivacije radi na ulazu i obrađuje ga dajući izlaz.
Ponderirani zbroj ulaza postaje ulazni signal za aktiviranje funkcije dajući jedan izlaz. Te se ulazne težine mogu podesiti tako da neuronska mreža može prilagoditi svoje parametre dajući željeni izlaz.
Nekoliko uobičajenih funkcija aktiviranja koje se koriste u umjetnoj neuronskoj mreži su:
# 1) Funkcija identiteta
Može se definirati kao f (x) = x za sve vrijednosti x. Ovo je linearna funkcija gdje je izlaz jednak ulazu.

alat za pretvorbu videozapisa u YouTube
# 2) Binarna funkcija koraka
Ova se funkcija koristi u jednoslojnim mrežama za pretvaranje neto ulaza u izlaz. Izlaz je binarni, tj. 0 ili 1. T predstavlja vrijednost praga.


(slika izvor )
# 3) Bipolarna funkcija koraka
Funkcija bipolarnog koraka ima bipolarne izlaze (+1 ili -1) za neto ulaz. T predstavlja vrijednost praga.


# 4) Sigmoidna funkcija
Koristi se u mrežama za razmnožavanje.
Dvije su vrste:
- Binarna sigmoidna funkcija: Također se naziva i unipolarna sigmoidna funkcija ili logistička sigmoidna funkcija. Raspon sigmoidnog funkcionalnog je 0 do 1.


- Bipolarni sigmoid: Bipolarna sigmoidna funkcija kreće se od -1 do +1. Slična je funkciji hiperboličke tangente.


(slika izvor )
# 5) RampFunction


The ponderirani zbroj ulaza označava 'umnožak težine ulaza i vrijednosti ulaza' zbrojen za sve ulaze.
Neka I = {I1, I2, I3… In} bude obrazac za unos neurona.
Neka je W = {W1, W2, W3… Wn} težina pridružena svakom ulazu u čvor.
Ponderirani zbroj ulaza = Y = (? Wi * Ii) za i = 1 do n

Osnovni modeli ANN-a
Modeli umjetne neuronske mreže sastoje se od 3 cjeline:
- Utezi ili sinaptičke veze
- Pravilo učenja koje se koristi za podešavanje utega
- Aktivacijske funkcije neurona
Arhitektura neuronske mreže
U ANN-u su neuroni međusobno povezani i izlaz svakog neurona povezan je na sljedeći neuron pomoću utega. Arhitektura ovih međusobnih veza važna je u ANN-u. Ovaj je raspored u obliku slojeva, a veza između slojeva i unutar sloja je arhitektura neuronske mreže.
Najčešće poznate mrežne arhitekture su:
- Jednoslojna mreža za prosljeđivanje
- Višeslojna mreža za prosljeđivanje
- Pojedinačni čvor s vlastitim povratnim informacijama
- Jednoslojna ponavljajuća mreža
- Višeslojna ponavljajuća mreža
Pogledajmo ih detaljno.
što trebam za pokretanje jar datoteke
# 1) Jednoslojna mreža za prosljeđivanje
Sloj je mreža formirana od neurona. Ti su neuroni povezani s ostalim neuronima sljedećeg sloja. Za jedan sloj postoje samo ulazni i izlazni slojevi. Ulazni sloj povezan je s čvorovima izlaznog sloja s utezima.
Svi ulazni čvorovi povezani su na svaki od izlaznih čvorova. Pojam prosljeđivanje naprijed prikazuje da nema povratne informacije poslane s izlaznog sloja na ulazni sloj. To tvori jednoslojnu mrežu za prosljeđivanje.

(slika izvor )
# 2) Višeslojna mreža za prosljeđivanje unaprijed
Višeslojna mreža sastoji se od jednog ili više slojeva između ulaza i izlaza. Ulazni sloj samo prima signal i baferira ga dok izlazni sloj prikazuje izlaz. Slojevi između ulaza i izlaza nazivaju se skriveni slojevi.
Skriveni slojevi nisu u kontaktu s vanjskim okolišem. S većim brojem skrivenih slojeva, izlazni je odgovor učinkovitiji. Čvorovi u prethodnom sloju povezani su sa svakim čvorom u sljedećem sloju.
Kako na ulazni ili skriveni sloj nije povezan izlazni sloj, on tvori višeslojnu mrežu za prosljeđivanje.

# 3) Jedan čvor s vlastitim povratnim informacijama
Mreže u kojima se izlazni sloj izlaza vraća natrag kao ulaz na ulazni sloj ili ostali skriveni slojevi nazivaju se mrežama povratnih informacija. U sustavima povratnih informacija s jednim čvorom postoji jedan ulazni sloj gdje se izlaz preusmjerava natrag kao povratna informacija.

# 4) Jednoslojna ponavljajuća mreža
U jednoslojnoj rekurentnoj mreži, mreža povratnih informacija čini zatvorenu petlju. U ovom modelu, pojedini neuron prima povratne informacije o sebi ili o ostalim neuronima u mreži ili oboje.

# 5) Višeslojna ponavljajuća mreža
U višeslojnoj rekurentnoj mreži postoji više skrivenih slojeva i izlaz se preusmjerava natrag na neurone prethodnih slojeva i druge neurone u istim slojevima ili na isti neuron.

Primjer mreže umjetnih neurona
Uzmimo donju mrežu s danim ulazom i izračunajmo neto ulazni neuron i dobijemo izlaz neurona Y s aktivacijskom funkcijom kao binarni sigmoidni.

Ulaz ima 3 neurona X1, X2 i X3 i jedan izlaz Y.
Ponderi povezani s ulazima su: {0,2, 0,1, -0,3}
Ulazi = {0,3, 0,5, 0,6}
Neto unos = {x1 * w1 + x2 * w2 + x3 * w3}
Neto ulaz = (0,3 * 0,2) + (0,5 * 0,1) + (0,6 * -0,3)
Neto unos = -0,07
Izlaz za binarni sigmoid:

X je -0,07
Izlaz je 0,517
kako otvoriti .json datoteke

Usporedba strojnog učenja i ANN-a
| Strojno učenje | Umjetna neuronska mreža |
|---|---|
| Strojno učenje uči na ulaznim podacima i otkriva obrasce izlaznih podataka od interesa. | ANN se koriste u algoritmima strojnog učenja za obuku sustava pomoću sinapsi, čvorova i poveznica. |
| ML je podskup područja umjetne inteligencije. | ANN je također dio područja znanosti o umjetnoj inteligenciji i podskup strojnog učenja. |
| ML algoritmi uče iz podataka koji se šalju algoritmu u svrhu donošenja odluka. Neki od ovih algoritama su klasifikacija. Klasteriranje, udruživanje podataka. | ANN je znanost dubokog učenja koja analizira podatke logičkim strukturama kao što to čine ljudi. Neki od shema učenja ANN-a su hebbian, perceptron, back propagation, itd. |
| ML algoritmi imaju mogućnosti samoučenja, ali zahtijevaju ljudsku intervenciju ako je ishod netočan. | ANN algoritmi imaju mogućnosti prilagođavanja pomoću težina veze ako se ispostavi da je pogrešan. |
| ML algoritmi zahtijevaju vještine programiranja, strukturu podataka i znanje baze podataka velikih podataka. | ANN također zahtijeva jake vještine iz matematike, vjerojatnosti, struktura podataka itd. |
| ML programi mogu predvidjeti ishod za naučeni skup podataka i prilagoditi se novim podacima. | ANN može naučiti i samostalno donijeti pametnu odluku za nove podatke, ali to je dublje od strojnog učenja. |
| Nadzirano i nenadzirano učenje spada u strojno učenje. | Učenje poput Kohenena, radijalne pristranosti, neuronske mreže s povratnim naprijed spada u ANN. |
| Neki primjeri ML-a su Googleovi rezultati pretraživanja itd. | Neki primjeri ANN-a su prepoznavanje lica, prepoznavanje slika itd. |
Neuronske mreže i duboko učenje
Mreže dubokog učenja sadrže nekoliko skrivenih slojeva između ulaza i izlaza. Te se mreže razlikuju po dubini skrivenih slojeva u njima. Ulazni podaci prolaze kroz više koraka prije nego što se prikaže izlaz.
Te se mreže razlikuju od ranijih NN-a, poput perceptrona koji je imao jedan skriveni sloj i zvao se Plitke mreže. Svaki skriveni sloj u mreži dubinskog učenja trenira podatke s određenim značajkama na temelju rezultata prethodnog sloja.
Podaci prolaze kroz mnoge slojeve nelinearne funkcije na čvoru. Što je veći broj slojeva, to se mogu prepoznati složenije značajke jer će sljedeći sloj izvoditi agregaciju obilježja iz prethodnih slojeva.
Više skrivenih slojeva u mreži povećava složenost i apstrakciju. Ta se dubina također naziva hijerarhijom značajki. Zbog toga su mreže za duboko učenje sposobne rukovati visokodimenzionalnim podacima.
Neki primjeri mreža dubokog učenja uključuju grupiranje milijuna slika na temelju njegovih karakteristika i sličnosti, filtriranje poruka e-pošte, primjenu filtara na poruke u CRM-u, prepoznavanje govora itd.
Mreže za dubinsko učenje mogu se trenirati na označenom i neobilježenom skupu podataka. Za neobilježeni skup podataka mreže poput Boltzmannovih strojeva za odabir vrše automatsko izdvajanje značajki.
Mreža automatski uči analizirajući ulaz kroz uzorkovanje i minimizirajući razliku u izlazu i distribuciji unosa. Ovdje neuronska mreža pronalazi korelacije između značajki i ishoda.
Mreže dubokog učenja obučene na označenim podacima mogu se primijeniti na nestrukturirane podatke. Što se više podataka o obuci bude slalo u mrežu, to će ona postati točnija.
Sposobnost mreže da uči iz neobilježenih podataka prednost je u odnosu na ostale algoritme učenja.
Umjetne neuronske mreže
Neuronske mreže uspješno su korištene u raznim rješenjima kao što je prikazano u nastavku.
# 1) Prepoznavanje uzorka: ANN se koristi za prepoznavanje uzoraka, prepoznavanje slika, vizualizaciju slika, rukopis, govor i druge takve zadatke.
# 2) Problemi s optimizacijom: Problemi poput pronalaska najkraćeg puta, rasporeda i proizvodnje gdje se moraju zadovoljiti ograničenja problema i treba postići optimalna rješenja koriste se nacionalnim mrežama.
# 3) Predviđanje: NN može predvidjeti ishod za situacije analizom prošlih trendova. Aplikacije poput bankarstva, burze, prognoze vremena koriste Neural Networks.
# 4) Sustavi upravljanja: Kontrolni sustavi poput računalnih proizvoda, kemijskih proizvoda i robotike koriste neuronske mreže.
Ograničenja neuronskih mreža
U nastavku su navedeni neki od nedostataka neuronskih mreža.
- Te su mreže crni okviri za korisnika jer korisnik nema nikakvih uloga osim hranjenja ulaza i promatranja izlaza. Korisnik nije svjestan treninga koji se događa u algoritmu.
- Ti su algoritmi prilično spori i zahtijevaju mnogo ponavljanja (koje se nazivaju i epohe) kako bi se dobili točni rezultati. To je zato što CPU izračunava težine, funkciju aktiviranja svakog čvora zasebno, čineći tako da troši vrijeme kao i resurse. Također uzrokuje problem s velikom količinom podataka.
Zaključak
U ovom smo tutorijalu saznali o umjetnoj neuronskoj mreži, njezinoj analogiji s biološkim neuronom i vrstama neuronske mreže.
ANN potpada pod strojno učenje. To je računski model sastavljen od više neuronskih čvorova. Ti čvorovi primaju ulaz, obrađuju ulaz pomoću funkcije aktivacije i prosljeđuju izlaz sljedećim slojevima.
Ulazi su povezani s utezima veze veze koji se nazivaju sinapsa. Osnovni ANN sastoji se od ulaznog sloja, težina, funkcije aktivacije, skrivenog sloja i izlaznog sloja.
Funkcije aktiviranja koriste se za pretvaranje ulaza u izlaz. Neki od njih su binarni, bipolarni, sigmoidalni i rampni. Postoje različite vrste ANN-a kao što su prosljeđivanje jednoslojnog uvlačenja, višeslojno uvlačenje, ponavljajuće mreže itd. Na temelju broja skrivenih slojeva i mehanizama povratnih informacija.
ANN s mnogo skrivenih slojeva između ulaza i izlaza čine mrežu dubokog učenja. Mreže dubokog učenja imaju visoku složenost i razinu apstrakcije što ih čini sposobnima za računanje visokodimenzionalnih podataka s tisućama parametara.
ANN se koristi u području predviđanja, obrade slika, kontrolnih sustava itd. Oni su uspješno primijenjeni kao rješenje niza problema u znanosti.
Nadamo se da je ovaj vodič objasnio sve što trebate znati o umjetnim neuronskim mrežama !!
=> Posjetite ovdje za ekskluzivnu seriju strojnog učenja
Preporučena literatura
- Data Mining vs Machine Learning vs Artificial Intelligence vs Deep Learning
- Testiranje mrežne sigurnosti i najbolji alati mrežne sigurnosti
- Vrste strojnog učenja: Nadzirano protiv nenadgledanog učenja
- 11 Najpopularnijih softverskih alata za strojno učenje 2021. godine
- Vodič za strojno učenje: Uvod u ML i njegove primjene
- Vodič za masku podmreže (podmreže) i kalkulator podmreže IP
- Vodič za procjenu i upravljanje mrežnom ranjivošću
- 15 najboljih alata za mrežno skeniranje (mrežni i IP skener) od 2021