Rețele neuronale artificiale în termeni simpli

  • Creier
  • Când, la o sticlă de bere, am început să vorbesc despre rețele neuronale, oamenii de obicei începeau să mă privească cu frică, se întristau, uneori începu să le zvâcnească ochii, iar în cazuri extreme se târau sub masă. Dar, de fapt, aceste rețele sunt simple și intuitive. Da Da exact! Și lasă-mă să îți demonstrez!

    Să presupunem că știu două lucruri despre o fată - dacă mă place sau nu și, de asemenea, dacă am ceva de discutat cu ea. Dacă există, atunci o vom considera o unitate, dacă nu, atunci - zero. Luăm un principiu similar pentru aspect. Întrebare: „De care fată mă voi îndrăgosti și de ce?”


    Puteți gândi simplu și fără compromisuri: „Dacă ești drăguță și ai ceva de vorbit, atunci mă voi îndrăgosti. Dacă nu este niciunul, atunci lăsați-o.”



    Dar dacă doamna este drăguță pentru mine, dar nu e nimic de discutat cu ea? Sau vice versa?


    Este clar că pentru fiecare dintre noi un lucru va fi mai important. Mai exact, fiecare parametru are nivelul său de importanță, sau mai bine zis, greutatea lui. Dacă înmulțim parametrul cu greutatea lui, obținem, respectiv, „influența aspectului” și „influența vorbărețului conversației”.


    Și acum, cu conștiința curată, îmi pot răspunde la întrebarea mea:


    „Dacă influența carismei și influența vorbărețului în total este mai mare decât valoarea „amorosii”, atunci mă voi îndrăgosti...”



    Adică, dacă pun multă greutate pe „vorbirea” unei doamne și o greutate mică pe aspect, atunci într-o situație controversată mă voi îndrăgosti de o persoană cu care este plăcut să discutăm. Si invers.



    De fapt, această regulă este un neuron.


    Un neuron artificial este o funcție care transformă mai multe date de intrare într-o singură ieșire. Prin ajustarea ponderilor acestor fapte, precum și a pragului de excitație, ajustăm adecvarea neuronului. În principiu, pentru mulți, știința vieții se termină la acest nivel, dar această poveste nu este despre noi, nu?


    Să mai tragem câteva concluzii:

    • Dacă ambele greutăți sunt mici, atunci îmi va fi greu să mă îndrăgostesc de cineva.
    • Dacă ambele greutăți sunt prea mari, atunci mă voi îndrăgosti de cel puțin un stâlp.
    • Poți să mă faci să mă îndrăgostesc și de un stâlp coborând pragul amorosului, dar te rog să nu-mi faci asta! Să uităm de el deocamdată, bine?

    Apropo de prag

    Este amuzant, dar parametrul „amorozitate” se numește „pragul de excitare”. Dar, pentru ca acest articol să nu primească un rating de „18+”, să fim de acord să spunem doar „prag”, ok?

    Retea neurala

    Nu există doamne unic atractive și fără ambiguitate sociabile. Da, și a te îndrăgosti este diferit, indiferent de ce spune cineva. Prin urmare, în loc de „0” și „1” brutal și fără compromisuri, să folosim procente. Apoi puteți spune - „Sunt foarte îndrăgostit (80%), sau „această doamnă nu este prea vorbăreț (20%)”.


    Primivul nostru „neuron-maximalist” din prima parte nu ne mai convine. El este înlocuit de un „neuron înțelept”, al cărui rezultat va fi un număr de la 0 la 1, în funcție de datele de intrare.



    „Neuron-sage” ne poate spune: „această doamnă este destul de frumoasă, dar nu știu despre ce să vorbesc cu ea, așa că nu o admir cu adevărat”



    O oarecare terminologie

    Apropo, faptele de intrare ale unui neuron se numesc sinapse, iar judecata de ieșire se numește axon. Conexiunile cu greutate pozitivă se numesc excitatoare, iar cele cu greutate negativă se numesc inhibitoare. Dacă greutatea este egală cu zero, atunci se consideră că nu există nicio legătură (conexiune moartă).


    Să mergem mai departe. Să facem o altă evaluare pe baza acestor două fapte: cât de bine este să lucrezi (cooperezi) cu o astfel de fată? Vom acționa exact în același mod - adăugați un neuron înțelept și reglați greutățile într-un mod confortabil pentru noi.


    Dar a judeca o fată după două caracteristici este foarte nepoliticos. Să o judecăm după trei! Să mai adăugăm un fapt - banii. Care va varia de la zero (absolut sărac) la unu (fiica lui Rockefeller). Să vedem cum se vor schimba judecățile noastre odată cu apariția banilor...


    Pentru mine, am hotărât că, din punct de vedere al farmecului, banii nu sunt foarte importanți, dar un look chic încă mă poate afecta, pentru că voi face greutatea banilor mică, dar pozitivă.


    La serviciu, absolut nu-mi pasă câți bani are fata, așa că voi face greutatea egală cu zero.



    A evalua o fată doar pentru muncă și a te îndrăgosti este foarte stupid. Să adăugăm cât de plăcut va fi să călătorești cu ea:

    • Carisma în această sarcină este neutră (greutate zero sau mică).
    • Vorbăreața ne va ajuta (greutate pozitivă).
    • Când călătoria reală rămâne fără bani, începe adevărata unitate, așa că voi face greutatea banilor ușor negativă.

    Să combinăm toate aceste trei scheme într-una singură și să descoperim că am trecut la un nivel mai profund de judecată, și anume: de la carismă, bani și vorbăreț la admirație, cooperare și confort de a călători împreună. Și rețineți - acestea sunt, de asemenea, semnale de la zero la unu. Deci, acum pot adăuga ultimul „neuron-maximalist” și să-l las să răspundă fără echivoc la întrebarea - „căsătorește-te sau nu”?



    Bine, desigur, nu totul este atât de simplu (în ceea ce privește femeile). Să aducem un pic de dramă și realitate în lumea noastră simplă și irizată. În primul rând, să facem neuronul „căsătorește-te – nu te căsători”. Toată lumea are îndoieli, într-un fel sau altul. Și încă ceva - să adăugăm neuronul „Vreau copii de la ea” și, ca să fiu complet sincer, neuronul „stai departe de ea”.


    Nu înțeleg nimic despre femei și de aceea rețeaua mea primitivă arată acum ca în poza de la începutul articolului.


    Judecățile de intrare sunt numite „stratul de intrare”, judecățile finale se numesc „stratul de ieșire”, iar cea ascunsă în mijloc se numește cea „ascunsă”. Stratul ascuns sunt judecățile mele, semifabricate, gânduri despre care nimeni nu știe. Pot exista mai multe straturi ascunse sau poate să nu existe niciunul.

    Jos maximalismul.

    Ține minte, am vorbit despre impactul negativ al banilor asupra dorinței mele de a călători cu o persoană? Deci - am mințit. Călătoriile sunt cele mai potrivite pentru o persoană care nu are nici puțini, nici mulți bani. Sunt atât de interesat și nu voi explica de ce.


    Dar aici ma confrunt cu o problema:


    Dacă pun greutatea banilor negativă, atunci cu cât sunt mai puțini bani, cu atât mai bine pentru călătorii.
    Dacă este pozitiv, atunci cu cât este mai bogat - cu atât mai bine,
    Dacă zero - atunci banii sunt „pe partea”.


    La mine nu funcționează așa, cu o singură greutate, să forțez neuronul să recunoască situația „nici mai mult, nici mai puțin”!


    Pentru a ocoli acest lucru, voi face doi neuroni - „mulți bani” și „puțini bani”, și le voi hrăni cu un flux de numerar de la doamna noastră.


    Acum am două judecăți: „mult” și „puțin”. Dacă ambele concluzii sunt nesemnificative, atunci literalmente se va dovedi „nici mai mult, nici mai puțin”. Adică, să adăugăm încă un neuron la ieșire, cu ponderi negative:



    "Nu prea mult." Săgeți roșii - conexiuni pozitive, albastre - negative


    În general, aceasta înseamnă că neuronii sunt similari elementelor constructoare. Așa cum un procesor este făcut din tranzistori, putem asambla un creier din neuroni. De exemplu, judecata „Fie bogat, fie inteligent” poate fi făcută astfel:



    Sau sau. Săgeți roșii - conexiuni pozitive, albastre - negative




    putem înlocui neuronii „înțelepți” cu „maximaliști” și apoi obținem operatorul logic XOR. Principalul lucru - nu uitați să ajustați pragurile de excitare.


    Spre deosebire de tranzistori și de logica fără compromisuri dacă-atunci a unui programator tipic, o rețea neuronală poate lua decizii informate. Rezultatele lor se vor schimba fără probleme, cu o schimbare lină a parametrilor de intrare. Asta este înțelepciunea!


    Aș dori să vă atrag atenția asupra faptului că adăugarea unui strat de doi neuroni a permis neuronului „nici mai mult, nici mai puțin” să facă o judecată mai complexă și mai echilibrată, să treacă la un nou nivel de logică. De la „mult” sau „putin” - la o soluție de compromis, la o judecată mai profundă, din punct de vedere filozofic. Ce se întâmplă dacă adăugăm mai multe straturi ascunse? Ne putem gândi la acea rețea simplă, dar cum rămâne cu rețeaua care are 7 straturi? Suntem capabili să înțelegem profunzimea judecăților ei? Ce se întâmplă dacă există aproximativ o mie de neuroni în fiecare dintre ei, inclusiv cel de intrare? De ce crezi că este capabilă?


    Imaginează-ți că am continuat să-mi complic exemplul de căsătorie și de îndrăgostire și am ajuns la o astfel de rețea. Undeva în ea toți cei nouă neuroni ai noștri sunt ascunși, iar acesta este deja mai mult ca adevărul. Cu toată dorința, este pur și simplu imposibil să înțelegem toate dependențele și profunzimea judecăților unei astfel de rețele. Pentru mine, trecerea de la o rețea de 3x3 la 7x1000 este comparabilă cu realizarea scării, dacă nu a universului, atunci a galaxiei - raportat la înălțimea mea. Mai simplu spus, nu pot. Decizia unei astfel de rețele, ieșirea aprinsă a unuia dintre neuronii săi, va fi inexplicabilă din punct de vedere logic. Aceasta este ceea ce în viața de zi cu zi putem numi „intuiție” (cel puțin - „una dintre ..”). Dorința de neînțeles a sistemului sau indiciu.


    Dar, spre deosebire de exemplul nostru sintetic 3x3, în care fiecare neuron al stratului ascuns este destul de clar formalizat, într-o rețea reală nu este neapărat cazul. Într-o rețea bine reglată, a cărei dimensiune nu este excesivă pentru rezolvarea sarcinii, fiecare neuron va detecta o trăsătură, dar acest lucru nu înseamnă absolut că în limba noastră există un cuvânt sau o propoziție care o poate descrie. Dacă este proiectat asupra unei persoane, atunci acesta este un fel de caracteristică a lui pe care o simțiți, dar nu o puteți explica în cuvinte.

    Educaţie.

    Cu câteva rânduri mai devreme, am menționat o rețea bine reglată, care probabil a provocat o întrebare tăcută: „Cum putem crea o rețea formată din câteva mii de neuroni? Câți „ani-om” și vieți pierdute sunt necesare pentru asta?... Mi-e teamă să ghicesc răspunsul la ultima întrebare. Este mult mai bine să automatizezi un astfel de proces de configurare - să forțezi rețeaua să se configureze singură. Acest proces de automatizare se numește învățare. Și pentru a-mi da o idee superficială, voi reveni la metafora originală despre „problema foarte importantă”:


    Apărăm în această lume cu un creier pur, inocent și cu o rețea neuronală care nu este absolut în acord cu doamnele. Trebuie să fie configurat corect cumva, astfel încât fericirea și bucuria să vină la noi acasă. Pentru a face acest lucru, avem nevoie de puțină experiență și există mai multe modalități de a o obține:


    1) Antrenament cu un profesor (pentru romantici). Vezi destule melodrame de la Hollywood și citește o mulțime de romane pline de lacrimi. Sau uită-te la părinții și/sau prietenii tăi. După aceea, în funcție de eșantion, mergeți să verificați cunoștințele acumulate. După o încercare nereușită - să se repete din nou, începând cu romane.


    2) Învățarea fără profesor (pentru experimentatorii disperați). Încercați metoda „poke” pentru a vă căsători cu o duzină sau două femei. După fiecare căsătorie, zgâriindu-ți napii de nedumerit. Repetați până când realizați că sunteți obosit și „știți deja cum se întâmplă”.


    3) Învățarea fără profesor, varianta 2 (calea optimiștilor disperați). Uită totul, fă ceva în viață și într-o zi vei fi căsătorit. După aceea, reconfigurează-ți rețeaua în conformitate cu realitatea actuală, astfel încât totul să se potrivească.



    Toate cele de mai sus sunt valabile pentru o rețea neuronală artificială de tip „perceptron”. Restul rețelelor sunt similare în principii de bază, dar au propriile lor nuanțe.


    Succes cu greutățile și mostrele grozave de antrenament! Ei bine, dacă acest lucru nu mai este necesar, atunci spuneți altcuiva despre asta.



    Greutățile rețelei mele neuronale nu sunt configurate și nu pot înțelege în niciun fel la ce resursă ar trebui să se refere acest articol.

    Numai utilizatorii înregistrați pot participa la sondaj. Intrati va rog.