Ce este o rețea neuronală? Introducere în rețelele neuronale artificiale



Acest blog despre ce este o rețea neuronală vă va prezenta conceptele de bază ale rețelelor neuronale și cum pot rezolva probleme complexe bazate pe date.

Odată cu progresul în învățarea automată, a luat un drum înalt. Învățarea profundă este considerată a fi cea mai avansată tehnologie construită pentru a rezolva probleme complexe care utilizează seturi de date masive. Acest blog despre ce este o rețea neuronală vă va prezenta conceptele de bază ale rețelelor neuronale și cum pot rezolva probleme complexe bazate pe date.

Pentru a obține cunoștințe aprofundate despre inteligența artificială și învățarea profundă, vă puteți înscrie pentru live de Edureka cu suport 24/7 și acces pe viață.





Iată o listă de subiecte care vor fi tratate în acest sens Blog:

  1. Ce este o rețea neuronală?
  2. Ce este Deep Learning?
  3. Diferența dintre AI, ML și, DL
  4. Nevoia de învățare profundă
  5. Caz de utilizare a învățării profunde
  6. Cum funcționează rețelele neuronale?
  7. Rețeaua neuronală explicată cu un exemplu

Definiție simplă a unei rețele neuronale

Modelat în conformitate cu creierul uman, a Rețeaua neuronală a fost construită pentru a imita funcționalitatea unui creier uman . Creierul uman este o rețea neuronală formată din mai mulți neuroni, în mod similar, o rețea neuronală artificială (ANN) este formată din perceptroni multipli (explicată mai târziu).



Rețea neuronală - Ce este o rețea neuronală - Edureka

O rețea neuronală constă din trei straturi importante:

  • Strat de intrare: După cum sugerează și numele, acest strat acceptă toate intrările furnizate de programator.
  • Stratul ascuns: Între stratul de intrare și stratul de ieșire este un set de straturi cunoscute sub numele de straturi ascunse. În acest strat, se efectuează calcule care au ca rezultat ieșirea.
  • Strat de ieșire: Intrările trec printr-o serie de transformări prin stratul ascuns, ceea ce duce în final la ieșirea care este livrată prin acesta strat.

Înainte de a intra în profunzimea funcționării unei rețele neuronale, să înțelegem ce este Deep Learning.



Ce este învățarea profundă?

Învățarea profundă este un domeniu avansat de învățare automată care folosește conceptele rețelelor neuronale pentru a rezolva cazuri de utilizare extrem de computaționale care implică analiza datelor multi-dimensionale. Automatizează procesul de extragere a caracteristicilor, asigurându-se că este nevoie de o intervenție umană foarte minimă.

Deci, ce este mai exact Deep Learning?

Învățarea profundă este un avansat sub-câmpul Machine Learning care folosește algoritmi inspirați de structura și funcția creierului numite Rețele neuronale artificiale.

Diferența dintre AI, ML și DL (Inteligență artificială vs învățare automată vs învățare profundă)

Oamenii deseori tind să creadă asta , , și Invatare profunda sunt aceleași, deoarece au aplicații comune. De exemplu, Siri este o aplicație de AI, Machine learning și Deep learning.

Deci, cum sunt legate aceste tehnologii?

  • Inteligență artificială este știința obținerii mașinilor care imită comportamentul oamenilor.
  • Învățare automată este un subset al Inteligenței Artificiale (AI) care se concentrează pe obținerea de mașini care să ia decizii prin alimentarea acestora cu date.
  • Invatare profunda este un subset de Machine Learning care folosește conceptul de rețele neuronale pentru a rezolva probleme complexe.

Pentru a rezuma AI, Machine Learning și Deep Learning sunt câmpuri interconectate. Învățarea automată și învățarea profundă ajută inteligența artificială oferind un set de algoritmi și rețele neuronale de rezolvat probleme bazate pe date.

Acum, că sunteți familiarizați cu elementele de bază, să înțelegem ce a dus la necesitatea unei învățări profunde.

Nevoia de învățare profundă: limitări ale algoritmilor și tehnicilor tradiționale de învățare automată

Învățarea automată a fost o descoperire majoră în lumea tehnică, a condus la automatizarea sarcinilor monotone și consumatoare de timp, a ajutat la rezolvarea problemelor complexe și la luarea deciziilor mai inteligente. Cu toate acestea, au existat câteva dezavantaje în învățarea automată care au dus la apariția învățării profunde.

cum să arunci o dublă la un int în java

Iată câteva limitări ale învățării automate:

  1. Imposibil de procesat date cu dimensiuni ridicate: Învățarea automată poate procesa doar dimensiuni mici ale datelor care conțin un set mic de variabile. Dacă doriți să analizați date care conțin 100 de variabile, atunci învățarea automată nu poate fi utilizată.
  2. Ingineria caracteristicilor este manuală: Luați în considerare un caz de utilizare în care aveți 100 de variabile predictive și trebuie să le restrângeți doar pe cele semnificative. Pentru a face acest lucru, trebuie să studiați manual relația dintre fiecare dintre variabile și să aflați care sunt cele importante în prezicerea rezultatului. Această sarcină este extrem de plictisitoare și necesită mult timp pentru un dezvoltator.
  3. Nu este ideal pentru efectuarea detectării obiectelor și procesării imaginilor: Deoarece detectarea obiectelor necesită date de dimensiuni ridicate, învățarea automată nu poate fi utilizată pentru procesarea seturilor de date de imagine, este ideală numai pentru seturile de date cu un număr restrâns de caracteristici.

Înainte de a intra în adâncurile Rețele neuronale, să luăm în considerare un caz de utilizare din lumea reală în care este implementată Deep Learning.

Învățare profundă Caz de utilizare / Aplicații

Știați că PayPal procesează peste 235 miliarde de dolari în plăți din patru miliarde de tranzacții de către cei peste 170 de milioane de clienți ai săi? Folosește această cantitate vastă de date pentru a identifica posibilele activități frauduloase, printre alte motive.

Cu ajutorul algoritmilor de învățare profundă, PayPal a extras date din istoricul achizițiilor clientului, pe lângă examinarea tiparelor de fraudă probabilă stocate în bazele sale de date pentru a prezice dacă o anumită tranzacție este sau nu frauduloasă.

Compania se bazează pe tehnologia Deep Learning & Machine Learning de aproximativ 10 ani. Inițial, echipa de monitorizare a fraudei a folosit modele simple și liniare. Dar, de-a lungul anilor, compania a trecut la o tehnologie de învățare automată mai avansată numită Deep Learning.

Ke Wang, manager al riscului de fraudă și Data Scientist la PayPal, a citat:

„Ce ne place de învățarea automată mai modernă și mai avansată este capacitatea sa de a consuma mult mai multe date, de a gestiona straturi și straturi de abstractizare și de a putea„ vedea ”lucruri pe care o tehnologie mai simplă nu le-ar putea vedea, chiar și ființele umane ar putea nu pot vedea. ”

Un model liniar simplu este capabil să consume aproximativ 20 de variabile. Cu toate acestea, cu tehnologia Deep Learning se pot rula mii de puncte de date. Prin urmare, prin implementare Prin tehnologia Deep Learning, PayPal poate analiza în cele din urmă milioane de tranzacții pentru a identifica orice fraudă activitate.

Acum, să intrăm în adâncurile unei rețele neuronale și să înțelegem cum funcționează acestea.

Cum funcționează o rețea neuronală?

Pentru a înțelege rețelele neuronale, trebuie să o descompunem și să înțelegem cea mai de bază unitate a unei rețele neuronale, adică un Perceptron.

Ce este un Perceptron?

Un Perceptron este o rețea neuronală cu un singur strat care este utilizată pentru clasificarea datelor liniare. Are 4 componente importante:

  1. Intrări
  2. Greutăți și părtinire
  3. Funcția de însumare
  4. Funcția de activare sau transformare

Logica de bază din spatele unui Perceptron este după cum urmează:

Intrările (x) primite de la stratul de intrare sunt înmulțite cu greutățile lor atribuite w. Valorile înmulțite sunt apoi adăugate pentru a forma suma ponderată. Suma ponderată a intrărilor și ponderile lor respective sunt apoi aplicate unei funcții de activare relevante. Funcția de activare mapează intrarea la ieșirea respectivă.

Greutăți și prejudecăți în învățarea profundă

De ce trebuie să atribuim greutăți fiecărei intrări?

Odată ce o variabilă de intrare este alimentată în rețea, o valoare aleasă aleatoriu este atribuită ca pondere a acelei intrări. Ponderea fiecărui punct de date de intrare indică cât de importantă este intrarea în prezicerea rezultatului.

Parametrul de polarizare, pe de altă parte, vă permite să reglați curba funcției de activare în așa fel încât să se obțină o ieșire precisă.

Funcția de însumare

Odată ce intrările sunt atribuite o anumită greutate, se ia produsul intrării și greutății respective. Adăugarea tuturor acestor produse ne oferă suma ponderată. Acest lucru se face prin funcția de însumare.

Funcția de activare

Scopul principal al funcțiilor de activare este să mapeze suma ponderată la ieșire. Funcțiile de activare precum tanh, ReLU, sigmoid și așa mai departe sunt exemple de funcții de transformare.

Pentru a afla mai multe despre funcțiile Perceptronilor, puteți parcurge acest lucru Blog.

Înainte de noi încheiați acest blog, să luăm un exemplu simplu pentru a înțelege cum funcționează o rețea neuronală.

Rețelele neuronale explicate cu un exemplu

Luați în considerare un scenariu în care doriți să construiți o rețea neuronală artificială (ANN) care clasifică imaginile în două clase:

  • Clasa A: Conținând imagini cu frunze neboli
  • Clasa B: Conținând imagini cu frunze bolnave

Deci, cum creați o rețea neuronală care clasifică frunzele în culturi bolnave și ne-bolnave?

Procesul începe întotdeauna cu procesarea și transformarea intrării în așa fel încât să poată fi procesată cu ușurință. În cazul nostru, fiecare imagine frunză va fi împărțită în pixeli în funcție de dimensiunea imaginii.

De exemplu, dacă imaginea este compusă din 30 x 30 pixeli, atunci numărul total de pixeli va fi de 900. Acești pixeli sunt reprezentați ca matrici, care sunt apoi alimentați în stratul de intrare al rețelei neuronale.

La fel cum creierul nostru are neuroni care ajută la construirea și conectarea gândurilor, un ANN are perceptroni care acceptă intrările și le procesează, trecându-le de la stratul de intrare la stratul ascuns și în cele din urmă de ieșire.

Pe măsură ce intrarea este trecută de la stratul de intrare la stratul ascuns, fiecare greutate inițială este atribuită fiecărei intrări. Intrările sunt apoi înmulțite cu greutățile lor corespunzătoare și suma lor este trimisă ca intrare la următorul strat ascuns.

Aici, o valoare numerică numită polarizare este atribuită fiecărui perceptron, care este asociată cu ponderarea fiecărei intrări. Mai mult, fiecare perceptron este trecut prin activare sau printr-o funcție de transformare care determină dacă un anumit perceptron este activat sau nu.

Un perceptron activat este folosit pentru a transmite date la nivelul următor. În acest mod, datele sunt propagate (propagare înainte) prin rețeaua neuronală până când perceptronii ajung la stratul de ieșire.

La nivelul de ieșire, se derivă o probabilitate care decide dacă datele aparțin clasei A sau clasei B.

Sună simplu, nu-i așa? Ei bine, conceptul din spatele Rețelelor neuronale se bazează pur pe funcționarea creierului uman. Aveți nevoie de cunoștințe aprofundate despre diverse concepte matematice și algoritmi. Iată o listă de bloguri pentru a începe:

  1. Ce este Deep Learning? Noțiuni introductive despre învățarea profundă
  2. Învățare profundă cu Python: Ghid pentru începători pentru învățare profundă

Dacă ați găsit acest blog relevant, consultați de Edureka, o companie de învățare online de încredere, cu o rețea de peste 250.000 de elevi mulțumiți răspândiți pe tot globul. Cursul de învățare profundă Edureka cu certificare TensorFlow îi ajută pe cursanți să devină experți în formarea și optimizarea rețelelor neuronale de bază și convoluționale, utilizând proiecte și atribuiri în timp real, împreună cu concepte precum funcția SoftMax, rețelele neuronale de auto-codificare, mașina restricționată Boltzmann (RBM).