funcțiile de activare sunt cea mai importantă parte a oricărei rețele neuronale în învățarea profundă. În învățarea profundă, sarcinile foarte complicate sunt clasificarea imaginii, transformarea limbajului, detectarea obiectelor etc. care sunt necesare pentru a aborda cu ajutorul rețelelor neuronale și a funcției de activare. Deci, fără ea, aceste sarcini sunt extrem de complexe de gestionat.
pe scurt, o rețea neuronală este o tehnică foarte puternică în învățarea automată care imită practic modul în care un creier înțelege, cum? Creierul primește stimulii, ca intrare, din mediu, îl procesează și apoi produce ieșirea în consecință.
Introducere
funcțiile de activare a rețelei neuronale, în general, sunt cea mai importantă componentă a învățării profunde, ele sunt utilizate fundamental pentru determinarea producției modelelor de învățare profundă, precizia și eficiența performanței modelului de formare care poate proiecta sau împărți o rețea neuronală la scară imensă.
funcțiile de activare au lăsat efecte considerabile asupra capacității rețelelor neuronale de a converge și viteza de convergență, nu vrei să cum? Să continuăm cu o introducere în funcția de activare, tipuri de funcții de activare & importanța și limitările lor prin acest blog.
care este funcția de activare?
funcția de activare definește ieșirea de intrare sau set de intrări sau în alți termeni definește nod de ieșire de nod care este dat în intrări. Ei decid practic să dezactiveze neuronii sau să-i activeze pentru a obține ieșirea dorită. De asemenea, efectuează o transformare neliniară pe intrare pentru a obține rezultate mai bune pe o rețea neuronală complexă.
funcția de activare ajută, de asemenea, la normalizarea ieșirii oricărei intrări în intervalul cuprins între 1 și -1. Funcția de activare trebuie să fie eficientă și ar trebui să reducă timpul de calcul, deoarece rețeaua neuronală uneori instruită pe milioane de puncte de date.
funcția de activare decide practic în orice rețea neuronală că informațiile primite sau primite sunt relevante sau sunt irelevante. Să luăm un exemplu pentru a înțelege mai bine ce este un neuron și modul în care funcția de activare limitează valoarea de ieșire la o anumită limită.
neuronul este de fapt este o medie ponderată de intrare, atunci această sumă este trecut printr-o funcție de activare pentru a obține o ieșire.
Y = inkt (greutăți*intrare + părtinire)
aici Y poate fi orice pentru un neuron între gama-infinit la +infinit. Deci, trebuie să ne legăm producția pentru a obține predicția dorită sau rezultatele generalizate.
Y = funcția de activare (inkt (greutăți*intrare + părtinire))
deci, trecem acel neuron la funcția de activare la valorile de ieșire legate.
De ce avem nevoie de funcții de activare?
fără funcția de activare, greutatea și părtinirea ar avea doar o transformare liniară, sau rețeaua neuronală este doar un model de regresie liniară, o ecuație liniară este polinom de un singur grad, care este simplu de rezolvat, dar limitat în ceea ce privește capacitatea de a rezolva probleme complexe sau polinoame de grad superior.
dar opus, adăugarea funcției de activare la rețeaua neuronală execută transformarea neliniară la intrare și o face capabilă să rezolve probleme complexe, cum ar fi traducerile lingvistice și clasificările imaginilor.
în plus, funcțiile de activare sunt diferențiate datorită cărora pot implementa cu ușurință propagări înapoi, strategie optimizată în timp ce efectuează backpropagări pentru a măsura funcțiile de pierdere a gradientului în rețelele neuronale.
tipuri de funcții de activare
cele mai cunoscute funcții de activare sunt prezentate mai jos,
-
pas binar
-
liniar
-
ReLU
-
LeakyReLU
-
Sigmoid
-
Tanh
-
softmax
1. Binar funcția de activare pas
această funcție de activare foarte de bază și vine în minte de fiecare dată dacă încercăm să ieșire legat. Este practic un clasificator de bază de prag, în acest sens, decidem o anumită valoare de prag pentru a decide ieșirea că neuronul ar trebui activat sau dezactivat.
f(x) = 1 Dacă x > 0 altfel 0 dacă X < 0
funcție de pas binar
în acest sens, decidem valoarea pragului la 0. Este foarte simplu și util să clasificați problemele binare sau clasificatorul.
2. Funcția de activare liniară
este o funcție simplă de activare în linie dreaptă în care funcția noastră este direct proporțională cu suma ponderată a neuronilor sau a intrărilor. Funcțiile de activare liniară sunt mai bune pentru a oferi o gamă largă de activări, iar o linie cu o pantă pozitivă poate crește rata de ardere pe măsură ce crește rata de intrare.
în binar, fie un neuron este de ardere sau nu. Dacă știți descendența gradientului în învățarea profundă, atunci ați observa că în această funcție derivata este constantă.
Y = mZ
unde derivata în raport cu Z este constantă m. gradientul de semnificație este, de asemenea, constant și nu are nimic de-a face cu Z. În acest sens, dacă modificările făcute în backpropagare vor fi constante și nu depind de Z, deci acest lucru nu va fi bun pentru învățare.
în acest, al doilea strat nostru este ieșirea unei funcții liniare de intrare straturi anterioare. Așteptați un minut, ceea ce am învățat în acest sens că, dacă comparăm toate straturile și eliminăm toate straturile, cu excepția primului și ultimului, atunci putem obține doar o ieșire care este o funcție liniară a primului strat.
3. ReLU( Rectified Linear unit) funcția de activare
Rectified linear unit sau ReLU este cea mai utilizată funcție de activare chiar acum, care variază de la 0 la infinit, toate valorile negative sunt convertite în zero, iar această rată de conversie este atât de rapidă încât nici nu se poate mapa și nici nu se încadrează în date în mod corespunzător, ceea ce creează o problemă, dar acolo unde există o problemă, există o soluție.
funcția de activare a unității liniare rectificate
folosim funcția Relu neetanșă în loc de ReLU pentru a evita acest lucru impropriu, în gama Relu neetanșă este extinsă, ceea ce îmbunătățește performanța.
funcția de activare Relu Leaky
funcția de activare Relu Leaky
aveam nevoie de funcția de activare Relu Leaky pentru a rezolva problema „Relu muribund”, așa cum s-a discutat în ReLU, observăm că toate valorile de intrare negative se transformă foarte repede în zero și în cazul Relu Leaky nu facem toate intrările negative la zero, ci la o valoare apropiată de zero care rezolvă problema majoră a funcției de activare ReLU.
funcția de activare sigmoidă
funcția de activare sigmoidă este utilizată mai ales deoarece își îndeplinește sarcina cu mare eficiență, este practic o abordare probabilistică față de luarea deciziilor și variază între 0 și 1, deci atunci când trebuie să luăm o decizie sau să prezicem o ieșire, folosim această funcție de activare din cauza intervalului este minim, prin urmare, predicția ar fi mai precisă.
funcția de activare Sigmoid
ecuația pentru funcția sigmoid este
f(x) = 1/(1+e(-x) )
funcția sigmoidă provoacă o problemă denumită în principal problema gradientului de dispariție care apare deoarece convertim intrări mari între intervalul de la 0 la 1 și, prin urmare, derivatele lor devin mult mai mici, ceea ce nu oferă o ieșire satisfăcătoare. Pentru a rezolva această problemă, o altă funcție de activare, cum ar fi ReLU, este utilizată acolo unde nu avem o mică problemă derivată.
funcția de activare a tangentei hiperbolice(Tanh)
funcția de activare Tanh
această funcție de activare este puțin mai bună decât funcția sigmoid, la fel ca funcția sigmoid este de asemenea folosit pentru a prezice sau pentru a diferenția între două clase, dar mapează intrarea negativă numai în cantitate negativă și variază între -1 și 1.
funcția de activare Softmax
Softmax este utilizat în principal la ultimul strat I.e strat de ieșire pentru luarea deciziilor la fel ca lucrările de activare sigmoid, softmax dă practic valoare variabilei de intrare în funcție de greutatea lor și suma acestor greutăți este în cele din urmă una.
Softmax pe clasificarea binară
pentru clasificarea binară, atât sigmoidul, cât și softmax, sunt la fel de abordabile, dar în cazul unei probleme de clasificare multi-clasă folosim în general softmax și entropia încrucișată împreună cu acesta.
concluzie
funcțiile de activare sunt acele funcții semnificative care efectuează o transformare neliniară la intrare și o fac să înțeleagă și să execute sarcini mai complexe. Am discutat despre 7 funcții de activare utilizate în mod major cu limitarea lor (dacă există), aceste funcții de activare sunt utilizate în același scop, dar în condiții diferite.