Perceptron

Perceptron , sau perceptron [nb 1] ( eng. perceptron din lat. perceptio  - percepție ; germ . Perzeptron ) - un model matematic sau computerizat de percepție a informațiilor de către creier ( modelul cibernetic al creierului ), propus de Frank Rosenblatt în 1958 și implementat pentru prima dată sub formă de mașină electronică „Mark-1” [nb 2] în 1960 . Perceptronul a fost unul dintre primele modele    rețelele neuronale și „Mark-1” - primul neurocomputer din lume .

Perceptronul este format din trei tipuri de elemente și anume: semnalele care provin de la senzori sunt transmise elementelor asociative , iar apoi elementelor care reacţionează . Astfel, perceptronii vă permit să creați un set de „asocieri” între stimulii de intrare și răspunsul de ieșire dorit. În termeni biologici, aceasta corespunde transformării, de exemplu, a informațiilor vizuale într-un răspuns fiziologic de la neuronii motori . Conform terminologiei moderne, perceptronii pot fi clasificați ca rețele neuronale artificiale:

  1. cu un singur strat ascuns; [nb 3]
  2. cu functie de transfer de prag ;
  3. cu propagare directă a semnalului .

Pe fondul popularității tot mai mari a rețelelor neuronale în 1969, a fost publicată o carte de Marvin Minsky și Seymour Papert , care a arătat limitările fundamentale ale perceptronilor. Acest lucru a condus la o schimbare în interesul cercetătorilor de inteligență artificială în domeniul calculului simbolic , opus rețelelor neuronale [nb 4] . În plus, din cauza complexității studiului matematic al perceptronilor, precum și a lipsei unei terminologii general acceptate, au apărut diverse inexactități și concepții greșite .

Ulterior, a reluat interesul pentru rețelele neuronale și, în special, pentru munca lui Rosenblatt. Deci, de exemplu, biocalcularea se dezvoltă rapid , care în baza sa teoretică de calcule, printre altele, se bazează pe rețele neuronale, iar perceptronul este reprodus pe baza filmelor care conțin bacteriorhodopsin .

Apariția perceptronului

În 1943, Warren McCulloch și Walter Pitts au propus conceptul unei rețele neuronale artificiale în lucrarea lor „A logical calculus of ideas relating to neuronal activity” [1] . În special, ei au propus un model de neuroni artificiali . Donald Hebb în lucrarea sa din 1949 „Organizarea Comportamentului” [2] a descris principiile de bază ale învățării neuronilor.

Aceste idei au fost dezvoltate câțiva ani mai târziu de neurofiziologul american Frank Rosenblatt . El a propus o schemă pentru un dispozitiv care simula procesul de percepție umană și l-a numit „perceptron”. Perceptronul transmitea semnale de la fotocelule , care erau un câmp senzorial, către blocuri de celule de memorie electromecanice. Aceste celule au fost conectate aleatoriu între ele în conformitate cu principiile conectivismului . În 1957, la Laboratorul de Aeronautică Cornell, a fost finalizată cu succes o simulare a funcționării unui perceptron pe un computer IBM 704 , iar doi ani mai târziu, pe 23 iunie 1960, la Universitatea Cornell , a fost demonstrat primul neurocomputer  - Mark-1 , care a putut să recunoască unele litere ale alfabetului englez [3] [4] .

Pentru a „învăța” perceptronul să clasifice imaginile, a fost dezvoltată o metodă iterativă de învățare prin încercare și eroare, care amintește de procesul de învățare umană - metoda de corectare a erorilor [5] . În plus, atunci când recunoaște o anumită literă, perceptronul ar putea evidenția trăsăturile caracteristice ale literei care erau statistic mai frecvente decât diferențele nesemnificative în cazuri individuale. Astfel, perceptronul a reușit să generalizeze literele scrise în moduri diferite (scris de mână) într-o singură imagine generalizată. Cu toate acestea, capacitățile perceptronului erau limitate: mașina nu putea recunoaște în mod fiabil literele parțial închise, precum și literele de o dimensiune diferită, situate cu o schimbare sau rotație, decât cele utilizate în stadiul antrenamentului său [6] .

Raportul privind primele rezultate a apărut încă în 1958  – apoi Rosenblatt a publicat articolul „Perceptron: A probabilistic model for storing and organizing information in the brain” [7] . Dar el își descrie teoriile și ipotezele cu privire la procesele de percepție și perceptroni mai detaliat în 1962 în cartea „Principles of Neurodynamics: Perceptrons and the Theory of Brain Mechanisms”. În carte, el ia în considerare nu numai modele de perceptron gata făcute cu un singur strat ascuns, ci și perceptroni multistrat cu conexiuni încrucișate (capitolul al treilea) și invers (capitolul al patrulea). Cartea introduce, de asemenea, o serie de idei și teoreme importante, de exemplu, teorema de convergență a perceptronului [8] este demonstrată .

Descrierea perceptronului elementar

Un perceptron elementar este format din trei tipuri de elemente: elemente S, elemente A și un element R. Elementele S sunt un strat de senzori sau receptori. Într-o realizare fizică, ele corespund, de exemplu, celulelor fotosensibile din retina ochiului sau fotorezistoarelor unei rețele de camere. Fiecare receptor poate fi într-una din cele două stări - repaus sau excitație și numai în ultimul caz transmite un singur semnal la stratul următor, la elementele asociative.

Elementele A se numesc asociative, deoarece fiecare astfel de element, de regulă, corespunde unui întreg set (asociere) de elemente S. Elementul A este activat de îndată ce numărul de semnale de la elementele S la intrarea sa depășește o anumită valoare [nb 5] . Astfel, dacă pe câmpul senzorial se află un set de elemente S corespondente sub forma literei „D”, elementul A este activat dacă un număr suficient de receptori au raportat apariția unui „punct alb de lumină” în vecinătatea lor, adică elementul A va fi asociat, parcă, cu prezența/absența literei „D” într-o zonă.

Semnalele de la elementele A excitate, la rândul lor, sunt transmise la sumatorul R, iar semnalul de la i-lea element asociativ este transmis cu un coeficient [9] . Acest coeficient se numește greutatea legăturii A-R.

La fel ca elementele A, elementul R calculează suma valorilor semnalelor de intrare înmulțite cu greutăți ( forma liniară ). Elementul R, și odată cu el perceptronul elementar, scoate „1” dacă forma liniară depășește pragul , altfel ieșirea va fi „-1”. Matematic, funcția implementată de elementul R poate fi scrisă după cum urmează:

Antrenamentul unui perceptron elementar constă în modificarea coeficienților de greutate ai legăturilor A–R. Greutățile legăturilor S–A (care pot lua valorile {−1; 0; +1}) și valorile de prag ale elementelor A sunt alese aleatoriu la început și apoi nu se modifică. (Vezi mai jos pentru o descriere a algoritmului .)

După antrenament, perceptronul este gata să lucreze în mod recunoaștere [10] sau generalizare [11] . În acest mod, perceptronul este prezentat cu obiecte necunoscute anterior, iar perceptronul trebuie să determine cărei clase aparțin. Lucrarea perceptronului este următoarea: atunci când este prezentat un obiect, elementele A excitate transmit un semnal elementului R, egal cu suma coeficienților corespunzători . Dacă această sumă este pozitivă, atunci se ia decizia ca obiectul dat să aparțină primei clase, iar dacă este negativă, atunci a doua [12] .

Concepte de bază ale teoriei perceptronilor

Cunoașterea serioasă cu teoria perceptronilor necesită cunoașterea definițiilor și teoremelor de bază, a căror totalitate este baza pentru toate tipurile ulterioare de rețele neuronale artificiale . Dar, cel puțin, este necesar să înțelegem cel puțin din punctul de vedere al teoriei semnalului , care este originală, adică descrisă de autorul perceptronului F. Rosenblatt.

Descriere bazată pe semnale

Mai întâi, să definim elementele constitutive ale perceptronului, care sunt cazuri speciale ale unui neuron artificial cu o funcție de transfer de prag .

Dacă la ieșirea oricărui element obținem 1, atunci spunem că elementul este activ sau excitat .

Toate elementele luate în considerare sunt numite simple , deoarece implementează funcții de salt . Rosenblatt a susținut, de asemenea, că alte tipuri de funcții, cum ar fi liniare [14] , pot fi necesare pentru a rezolva probleme mai complexe .

Ca urmare, Rosenblatt a introdus următoarele definiții:

În plus, puteți indica următoarele concepte propuse în carte și dezvoltate ulterior în cadrul teoriei rețelelor neuronale:

Descriere bazată pe predicate

Marvin Minsky a studiat proprietățile calculului paralel , dintre care perceptronul era un caz special la acea vreme. Pentru a-i analiza proprietățile, a trebuit să reproșeze teoria perceptronilor în limbajul predicatelor . Esența abordării a fost următoarea: [nb 6] [19]

Aplicată la perceptronul „vizual”, variabila X a simbolizat imaginea unei figuri geometrice ( stimul ). Un predicat privat permitea fiecăruia să-și „recunoaște” propria figură. Predicatul ψ a însemnat situația în care combinația liniară (  — coeficienți de transmisie) a depășit un anumit prag θ.

Oamenii de știință au identificat 5 familii de perceptroni care, în opinia lor, au proprietăți interesante: [20]

  1. Perceptroni limitati în diametru  - fiecare figură X, recunoscută de anumite predicate, nu depășește o valoare fixă ​​în diametru.
  2. Perceptroni de ordine mărginită  - fiecare predicat particular depinde de un număr limitat de puncte din X.
  3. Gamba perceptroni  - fiecare predicat particular trebuie să fie o funcție de prag liniară, adică un mini-perceptron.
  4. Perceptronii aleatori  sunt perceptroni de ordin limitat, unde predicatele parțiale sunt funcții booleene selectate aleatoriu. Cartea notează că acest model a fost cel mai amănunțit studiat de grupul lui Rosenblatt.
  5. Perceptroni mărginiți  - setul de predicate parțiale este infinit, iar setul de valori posibile ale coeficienților este finit.

Deși un astfel de aparat matematic a făcut posibilă aplicarea analizei doar perceptronului elementar Rosenblatt, a dezvăluit multe limitări fundamentale pentru calculul paralel, de care niciun tip de rețele neuronale artificiale moderne nu este liber.

Clasificare istorică

Conceptul de perceptron are o istorie interesantă, dar de neinvidiat. Ca urmare a terminologiei nedezvoltate a rețelelor neuronale din ultimii ani, a criticilor dure și a neînțelegerii sarcinilor cercetării perceptronului și, uneori, a acoperirii presă false, sensul original al acestui concept a fost denaturat. Comparând evoluțiile lui Rosenblatt și recenziile și articolele moderne, putem distinge 4 clase destul de izolate de perceptroni:

Perceptron cu un strat ascuns Acesta este perceptronul clasic, căruia îi este dedicată cea mai mare parte a cărții lui Rosenblatt și este luat în considerare în acest articol: are un strat de elemente S-, A- și R-. Perceptron cu un singur strat Acesta este un model în care elementele de intrare sunt conectate direct la elementele de ieșire folosind un sistem de greutăți. Este cea mai simplă rețea feed-forward  - un clasificator liniar și un caz special al perceptronului clasic, în care fiecare element S corespunde în mod unic unui element A, legăturile S-A au o pondere de +1 și toate elementele A au un prag θ = 1. Perceptronii cu un singur strat sunt de fapt neuroni formali , adică elemente de prag McCulloch-Pitts. Au multe limitări, în special, nu pot identifica situația în care se aplică diferite semnale intrărilor lor („sarcină XOR”, vezi mai jos ). Perceptron multistrat (după Rosenblatt) Acesta este un perceptron cu straturi suplimentare de elemente A. Rosenblatt a analizat-o în partea a treia a cărții sale. Perceptron multistrat (conform lui Rumelhart) Acesta este un perceptron în care există straturi suplimentare de elemente A, în plus, antrenamentul unei astfel de rețele se realizează conform metodei de propagare înapoi a erorii și toate straturile perceptronului (inclusiv S-A) sunt antrenate. Este un caz special al perceptronului multistrat al lui Rosenblatt.

În prezent, în literatură, termenul „perceptron” este cel mai adesea înțeles ca un perceptron cu un singur strat ( în engleză  Single-layer perceptron ), în plus, există o concepție greșită comună că a fost acest tip de model cel mai simplu propus de Rosenblatt. Spre deosebire de unul cu un singur strat, au pus un „perceptron multistrat” ( ing.  Perceptron multistrat ), din nou, cel mai adesea însemnând perceptronul multistrat al lui Rumelhart, nu al lui Rosenblatt. Perceptronul clasic într-o astfel de dihotomie este denumit multistrat.

Algoritmi de învățare

O proprietate importantă a oricărei rețele neuronale este capacitatea de a învăța . Procesul de învățare este o procedură de ajustare a greutăților și a pragurilor pentru a reduce diferența dintre vectorii de ieșire doriti (țintă) și rezultați. În cartea sa, Rosenblatt a încercat să clasifice diverși algoritmi de învățare cu perceptron, numindu-i sisteme de întărire.

Un sistem de recompensă  este orice set de reguli pe baza cărora matricea de interacțiune (sau starea de memorie) a unui perceptron poate fi modificată în timp [21] .

Descriind aceste sisteme de întărire și precizând tipurile lor posibile, Rosenblatt se bazează pe ideile lui D. Hebb despre învățare propuse de acesta în 1949 [2] , care pot fi reformulate în următoarea regulă în două părți:

Învățare supravegheată

Metoda clasică de antrenare a unui perceptron este metoda de corectare a erorilor [8] . Este un tip de învățare supravegheată în care greutatea conexiunii nu se modifică atâta timp cât reacția curentă a perceptronului rămâne corectă. Când apare o reacție incorectă, greutatea se modifică cu unu, iar semnul (+/-) este determinat opus semnului erorii.

Să presupunem că dorim să antrenăm perceptronul să separe două clase de obiecte, astfel încât atunci când sunt prezentate obiecte din prima clasă, rezultatul perceptronului este pozitiv (+1), iar când sunt prezentate obiecte din a doua clasă, acesta este negativ ( −1). Pentru a face acest lucru, vom executa următorul algoritm: [5]

  1. Selectăm aleatoriu praguri pentru elementele A și stabilim conexiuni S-A (ele nu se vor schimba în continuare).
  2. Se presupune că coeficienții inițiali sunt egali cu zero.
  3. Vă prezentăm un exemplu de antrenament : obiecte (de exemplu, cercuri sau pătrate) care indică clasa căreia îi aparțin.
    • Arătăm perceptronului un obiect de primă clasă. În acest caz, unele elemente A vor fi entuziasmate. Coeficienții corespunzători acestor elemente excitate sunt măriți cu 1.
    • Prezentăm un obiect din clasa a doua și coeficienții acelor elemente A care sunt excitate în timpul acestei afișari sunt reduse cu 1.
  4. Ambele părți ale pasului 3 vor fi efectuate pentru întregul set de antrenament. Ca urmare a antrenamentului, se vor forma valorile greutăților de conectare .

Teorema de convergență a perceptronului [8] , descrisă și dovedită de F. Rosenblatt (cu participarea lui Block, Joseph, Kesten și alți cercetători care au lucrat cu el), arată că un perceptron elementar antrenat după un astfel de algoritm, indiferent de starea coeficienților de greutate și succesiunea apariția stimulentelor vor duce întotdeauna la realizarea unei soluții într-o perioadă finită de timp.

Învățarea fără profesor

Pe lângă metoda clasică de învățare cu perceptron, Rosenblatt a introdus și conceptul de învățare nesupravegheată , propunând următoarea metodă de învățare:

Sistemul de armare alfa  este un sistem de armare în care greutățile tuturor conexiunilor active care conduc la element se modifică cu aceeași cantitate r, iar greutățile conexiunilor inactive nu se modifică în acest timp [23] .

Apoi, odată cu dezvoltarea conceptului de perceptron multistrat , sistemul alfa a fost modificat și a devenit cunoscut sub numele de regula deltei . Modificarea a fost efectuată pentru a face funcția de învățare diferențiabilă (de exemplu, sigmoid ), care, la rândul său, este necesară pentru aplicarea metodei de coborâre a gradientului , datorită căreia se pot antrena mai mult de un strat.

Metoda de backpropagation

Pentru a antrena rețele multistrat, un număr de oameni de știință, inclusiv D. Rumelhart , au propus un algoritm de învățare în gradient supravegheat care conduce un semnal de eroare calculat de ieșirile perceptronului către intrările sale , strat cu strat. Aceasta este acum cea mai populară metodă de antrenare a perceptronilor multistrat. Avantajul său este că poate antrena toate straturile rețelei neuronale și este ușor de calculat local. Cu toate acestea, această metodă necesită foarte mult timp, în plus, pentru aplicarea ei este necesar ca funcția de transfer a neuronilor să fie diferențiabilă. În același timp, în perceptroni, a fost necesar să se abandoneze semnalul binar și să se utilizeze valori continue la intrare [24] .

Iluzii tradiționale

Ca urmare a popularizării rețelelor neuronale artificiale de către jurnaliști și marketeri, au fost făcute o serie de inexactități, care, cu studiul insuficient al lucrărilor originale pe această temă, au fost interpretate greșit de tinerii (la acea vreme) oameni de știință. Drept urmare, până astăzi se poate întâlni o interpretare insuficient de profundă a funcționalității perceptronului în comparație cu alte rețele neuronale dezvoltate în anii următori.[ când? ]

Inexactități terminologice

Cea mai comună eroare de terminologie este definirea unui perceptron ca o rețea neuronală fără straturi ascunse (perceptron cu un singur strat, vezi mai sus ). Această eroare se datorează unei terminologii insuficient dezvoltate în domeniul rețelelor neuronale într-un stadiu incipient al dezvoltării lor. F. Wasserman a făcut o încercare de a clasifica diferite tipuri de rețele neuronale într-un anumit fel:

După cum se poate observa din publicații, nu există o modalitate general acceptată de a număra numărul de straturi din rețea. O rețea multistrat constă din seturi alternante de neuroni și greutăți. Stratul de intrare nu efectuează sumarea. Acești neuroni servesc doar ca ramuri pentru primul set de greutăți și nu afectează capacitățile de calcul ale rețelei. Din acest motiv, primul strat nu este luat în considerare la numărarea straturilor, iar rețeaua este considerată cu două straturi, deoarece doar două straturi efectuează calcule. În plus, greutățile stratului sunt considerate a fi asociate cu neuronii care le urmează. Prin urmare, stratul constă dintr-un set de greutăți urmate de neuroni care însumează semnalele ponderate [25] .

Ca urmare a acestei reprezentări, perceptronul a intrat sub definiția unei „rețele neuronale cu un singur strat”. Acest lucru este parțial adevărat deoarece nu are straturi ascunse de neuroni de învățare (ale căror greutăți se adaptează sarcinii). Și, prin urmare, întregul set de conexiuni fixe ale sistemului de la elementele S la elementele A poate fi înlocuit logic cu un set (modificat conform unei reguli stricte) de semnale de intrare noi care vin imediat la elementele A (eliminând astfel primul strat). de conexiuni cu totul). Dar aici pur și simplu nu iau în considerare faptul că o astfel de modificare transformă reprezentarea neliniară a problemei într-una liniară.

Prin urmare, pur și simplu ignorarea straturilor neantrenabile cu conexiuni fixe (într-un perceptron elementar, acestea sunt conexiuni S-A) vă permite să trageți concluzii greșite despre capacitățile rețelei neuronale. Deci, Minsky a acționat foarte corect, reformulând elementul A ca predicat (adică o funcție); dimpotrivă, Wasserman a pierdut deja această idee și are un element A - doar o intrare (aproape echivalent cu un element S). Cu o asemenea confuzie terminologică, se trece cu vederea faptul că perceptronul mapează câmpul receptiv al elementelor S la câmpul asociativ al elementelor A, în urma căruia orice problemă inseparabilă liniar este transformată într-una separabilă liniar.

Erorile funcționale

Majoritatea concepțiilor greșite funcționale se rezumă la presupusa imposibilitate de a rezolva o problemă inseparabilă liniar cu un perceptron. Dar există o mulțime de variații pe această temă, să le luăm în considerare pe cele principale.

Problemă XOR

Concepție greșită: perceptronul nu este capabil să rezolve „ problema XOR ”.

O concepție greșită foarte comună. Imaginea din dreapta arată o soluție perceptron la această problemă. Această concepție greșită apare, în primul rând, datorită faptului că definiția lui Minsky a unui perceptron este interpretată incorect (a se vedea mai sus ), și anume, predicații echivalează imediat intrările, deși predicatul lui Minsky este o funcție care identifică un întreg set de valori de intrare [nb 7 ] . În al doilea rând, datorită faptului că perceptronul Rosenblatt clasic este confundat cu un perceptron cu un singur strat (din cauza inexactității terminologice descrise mai sus).

O atenție deosebită trebuie acordată faptului că „perceptronul cu un singur strat” în terminologia modernă și „perceptronul cu un singur strat” în terminologia lui Wasserman sunt obiecte diferite. Iar obiectul descris în ilustrație, în terminologia lui Wasserman, este un perceptron cu două straturi.

Capacitatea de învățare pentru probleme liniar inseparabile

Concepție greșită: prin alegerea unor ponderi aleatorii , învățarea poate fi realizată pentru sarcini liniar inseparabile (în general, orice), dar numai dacă aveți noroc , iar în noile variabile (ieșiri ale neuronilor A) sarcina se dovedește a fi liniar separabilă. Dar s-ar putea să nu ai noroc.

Teorema de convergență a perceptronului [8] demonstrează că nu există și nu poate exista niciun „poate fi norocos”; când elementele A sunt egale cu numărul de stimuli și cu matricea G nespecială  , probabilitatea soluției este de 100%. Adică, atunci când câmpul receptor este mapat pe un câmp asociativ mai mare cu o dimensiune de către un operator aleator (neliniar) , problema neliniară se transformă într-una separabilă liniar. Iar următorul strat antrenabil găsește deja o soluție liniară într-un spațiu de intrare diferit. De exemplu, antrenarea unui perceptron pentru a rezolva „problema XOR” (vezi ilustrația) se realizează în următorii pași:
Greutăți Iterații
unu 2 3 patru 5
w1 0 unu unu unu unu 2 2 2 2
w2 0 0 unu unu unu unu unu 2 2
w3 −1 0 unu 0 −1 0 −1 0 −1
Semnale de intrare (x, y) unsprezece 0, 1 zece unsprezece unsprezece 0, 1 unsprezece zece unsprezece
Capacitatea de învățare din câteva exemple

Concepție greșită: dacă într-o problemă dimensiunea intrărilor este destul de mare și există puține exemple de antrenament, atunci într-un spațiu atât de „umplut slab”, numărul de succese s-ar putea să nu fie mic. Aceasta indică doar un caz particular de adecvare a perceptronului, și nu universalitatea acestuia.

Acest argument poate fi testat cu ușurință pe o problemă de testare numită „tabla de șah” sau „burete cu apă” [26] [nb 8] :
Având în vedere un lanț de 2· N unuri sau zerouri care sunt alimentate în paralel cu intrările perceptronului. Dacă acest lanț este simetric în oglindă față de centru, atunci rezultatul este +1, în caz contrar 0. Exemplele de antrenament sunt toate lanțurile (acest lucru este important) .
Pot exista variații ale acestei sarcini, de exemplu:
Să luăm o imagine alb-negru cu o dimensiune de 256×256 elemente ( pixeli ). Datele de intrare pentru perceptron vor fi coordonatele punctului (8 biți + 8 biți, sunt necesare un total de 16 elemente S), la ieșire vom cere culoarea punctului. Antrenăm perceptronul pentru toate punctele (întreaga imagine). Ca rezultat, avem 65.536 de perechi diferite stimul-răspuns. Învață fără greșeli.
Dacă acest argument este adevărat, atunci perceptronul nu va putea niciodată să învețe fără să facă o singură greșeală. Altfel, perceptronul nu va greși niciodată. În practică, se dovedește că această sarcină este foarte simplă pentru un perceptron: pentru a o rezolva, perceptronul are nevoie de 1500 de elemente A (în loc de cele 65.536 complete necesare pentru orice sarcină). În acest caz, numărul de iterații este de aproximativ 1000. Cu 1000 de elemente A, perceptronul nu converge în 10.000 de iterații. Dacă, totuși, numărul de elemente A crește la 40.000, atunci se poate aștepta convergența în 30-80 de iterații. Un astfel de argument apare deoarece această problemă este confundată cu problema Minsky „despre predicatul „paritate”” [27] . Stabilizarea greutății și convergența

Concepție greșită: perceptronul lui Rosenblatt are tot atâtea elemente A câte intrări există. Iar convergența conform lui Rosenblatt este stabilizarea ponderilor.

În Rosenblatt citim:

Dacă numărul de stimuli din spațiul W este egal cu n > N (adică mai mare decât numărul de elemente A ale perceptronului elementar), atunci există o clasificare C(W) pentru care nu există soluție [28]. ] .

Din aceasta rezultă că:
  1. pentru Rosenblatt, numărul de elemente A este egal cu numărul de stimuli (exemple de antrenament), și nu numărul de intrări;
  2. convergența după Rosenblatt, aceasta nu este stabilizarea ponderilor, ci prezența tuturor clasificărilor necesare, adică, de fapt, absența erorilor.
Creștere exponențială a numărului de elemente ascunse

Concepție greșită: dacă coeficienții de greutate pentru elementele stratului ascuns (elementele A) sunt fixați, atunci este necesar ca numărul de elemente ale stratului ascuns (sau complexitatea acestora) să crească exponențial odată cu creșterea dimensiunii problemei (numărul de receptori). Astfel, principalul lor avantaj este pierdut - capacitatea de a rezolva probleme de complexitate arbitrară cu ajutorul unor elemente simple.

Rosenblatt a arătat că numărul de elemente A depinde doar de numărul de stimuli care trebuie recunoscuți (vezi paragraful anterior sau teorema de convergență a perceptronului ). Astfel, cu o creștere a numărului de receptori, dacă numărul de elemente A este fix, capacitatea perceptronului de a rezolva probleme de complexitate arbitrară nu depinde direct. Această concepție greșită provine din următoarea frază a lui Minsky:

Examinând predicatul de paritate, am văzut că coeficienții pot crește cu |R| (numărul de puncte din imagine) exponențial [29] .

În plus, Minsky a explorat și alte predicate, precum „egalitatea”. Dar toate aceste predicate reprezintă o sarcină destul de specifică pentru generalizare, și nu pentru recunoaștere sau predicție. Deci, de exemplu, pentru ca perceptronul să îndeplinească predicatul „paritate”, trebuie să spună dacă numărul de puncte negre dintr-o imagine alb-negru este par sau nu; iar pentru a îndeplini predicatul „egalitate”, spuneți dacă partea dreaptă a imaginii este egală cu partea stângă. Este clar că astfel de sarcini depășesc sfera sarcinilor de recunoaștere și predicție și sunt sarcini de generalizare sau pur și simplu de calculare a anumitor caracteristici. Acest lucru a fost demonstrat în mod convingător de Minsky și este o limitare nu numai a perceptronilor, ci și a tuturor algoritmilor paraleli , care nu sunt capabili să calculeze astfel de predicate mai rapid decât algoritmii secvenţiali. Prin urmare, astfel de sarcini limitează capacitățile tuturor rețelelor neuronale și ale perceptronilor în special, dar acest lucru nu are nimic de-a face cu conexiunile fixe ale primului strat; întrucât, în primul rând, era vorba despre valoarea coeficienților conexiunilor celui de-al doilea strat, iar în al doilea rând, întrebarea este doar în eficiență, și nu în principiu. Adică, perceptronul poate fi, de asemenea, antrenat pentru această sarcină, dar capacitatea de memorie și rata de învățare necesare pentru aceasta vor fi mai mari decât atunci când se utilizează un algoritm secvenţial simplu. Introducerea greutăților antrenabile în primul strat nu va face decât să agraveze situația, deoarece va necesita mai mult timp de antrenament, deoarece variabilele de relație dintre S și A împiedică mai degrabă decât contribuie la procesul de învățare [30] . Mai mult, la pregătirea unui perceptron pentru sarcina de a recunoaște stimuli de tip special, pentru a menține eficiența, vor fi necesare condiții speciale pentru învățarea stocastică [31] , ceea ce a fost demonstrat de Rosenblatt în experimente cu un perceptron cu legături variabile S-A .

Caracteristici și limitări ale modelului

Capacitățile modelului

Rosenblatt însuși a considerat perceptronul în primul rând ca următorul pas important către studiul și utilizarea rețelelor neuronale, și nu ca o versiune finală a unei „ mașini capabile să gândească ” [nb 9] . Chiar și în prefața cărții sale, el, răspunzând criticilor, a remarcat că „programul de cercetare perceptron este legat în principal nu de inventarea dispozitivelor cu „inteligență artificială”, ci de studiul structurilor fizice și al principiilor neurodinamice” [32] .

Rosenblatt a propus o serie de teste psihologice pentru a determina capacitățile rețelelor neuronale: experimente privind discriminarea , generalizarea , recunoașterea secvenței , formarea conceptelor abstracte , formarea și proprietățile „ conștiinței de sine ”, imaginația creativă și altele [33] . Unele dintre aceste experimente sunt departe de capacitățile actuale ale perceptronilor, așa că dezvoltarea lor este mai filozofic în direcția conectivismului . Cu toate acestea, pentru perceptroni s-au stabilit două fapte importante care își găsesc aplicație în problemele practice: posibilitatea de clasificare (obiecte) și posibilitatea de aproximare (limite de clase și funcții) [34] .

O proprietate importantă a perceptronilor este capacitatea lor de a învăța, în plus, conform unui algoritm destul de simplu și eficient (vezi mai sus ).

Limitări ale modelului

Rosenblatt însuși a identificat două limitări fundamentale pentru perceptronii cu trei straturi (constând dintr-un strat S, un strat A și un strat R): lipsa capacității lor de a-și generaliza caracteristicile la noi stimuli sau situații noi și incapacitatea lor de a analiza complexe. situaţii din mediul extern.mediu prin împărţirea lor în altele mai simple [17] .

În 1969, Marvin Minsky și Seymour Papert au publicat cartea Perceptrons, în care au arătat matematic că perceptronii precum cel al lui Rosenblatt erau în mod fundamental incapabili să îndeplinească multe dintre funcțiile pe care le doreau de la perceptroni. În plus, la acea vreme teoria calculului paralel era slab dezvoltată, iar perceptronul era pe deplin în concordanță cu principiile unor astfel de calcule. În general, Minsky a arătat avantajul calculării secvențiale față de paralel în anumite clase de probleme asociate cu o reprezentare invariantă. Critica sa poate fi împărțită în trei teme:

  1. Perceptronii au limitări în sarcinile legate de reprezentarea invariantă a imaginilor, adică independent de poziția lor pe câmpul senzorial și față de alte figuri. Astfel de probleme apar, de exemplu, dacă trebuie să construim o mașină pentru citirea literelor sau numerelor tipărite, astfel încât această mașină să le poată recunoaște indiferent de poziția lor pe pagină (adică, astfel încât decizia mașinii să nu fie afectată de translație , rotație ). , întindere-comprimare a caracterelor) [ 6] ; sau dacă trebuie să stabilim din câte părți este formată o figură [35] ; sau dacă două figuri sunt una lângă alta sau nu [36] . Minsky a dovedit că acest tip de problemă nu poate fi rezolvată complet folosind calculul paralel, inclusiv perceptronul.
  2. Perceptronii nu au un avantaj funcțional față de metodele analitice (de exemplu, statistice ) în sarcinile legate de prognoză [37] . Cu toate acestea, în unele cazuri, acestea reprezintă o metodă mai simplă și mai productivă de analiză a datelor .
  3. S-a demonstrat că unele probleme pot fi rezolvate în principiu de un perceptron, dar pot necesita timp nerealist de mare [38] sau memorie nerealist de mare [39] .

Cartea lui Minsky și Papert a influențat în mod semnificativ dezvoltarea științei inteligenței artificiale, deoarece a mutat interesul științific și subvențiile de la organizațiile guvernamentale americane într-o altă direcție de cercetare - abordarea simbolică a AI .

Aplicații ale perceptronilor

Aici vor fi prezentate doar elementele de bază ale aplicării practice a perceptronului pe două sarcini diferite. Problema de predicție (și problema sa echivalentă de recunoaștere a modelelor ) necesită o precizie ridicată, în timp ce problema de control al agenților necesită o rată de  învățare ridicată. Prin urmare, luând în considerare aceste sarcini, se poate familiariza pe deplin cu capacitățile perceptronului, dar acest lucru este departe de a epuiza opțiunile de utilizare.

În problemele practice, perceptronul va trebui să poată alege dintre mai mult de două opțiuni, ceea ce înseamnă că trebuie să aibă mai mult de un element R la ieșire. După cum arată Rosenblatt, caracteristicile unor astfel de sisteme nu diferă semnificativ de caracteristicile unui perceptron elementar [40] .

Predicție și recunoaștere a modelelor

În aceste sarcini, perceptronul este necesar să determine dacă un obiect aparține unei clase prin parametrii săi (de exemplu, după aspect, formă, silueta). Mai mult, acuratețea recunoașterii va depinde în mare măsură de reprezentarea reacțiilor de ieșire ale perceptronului. Aici sunt posibile trei tipuri de codare: configurație , pozițională și hibridă. Codarea pozițională, când fiecare clasă are propriul său element R, oferă rezultate mai precise decât alte tipuri. Acest tip este folosit, de exemplu, în lucrarea lui E. Kussul și colaboratorii „Rosenblatt Perceptrons for Recognizing Handwritten Digits”. Cu toate acestea, nu se aplică în cazurile în care numărul de clase este semnificativ, de exemplu, câteva sute. În astfel de cazuri, poate fi utilizată codarea hibridă configurație-pozițională, așa cum sa făcut în lucrarea lui S. Yakovlev „Un sistem de recunoaștere a obiectelor în mișcare bazat pe rețele neuronale artificiale”.

Managementul agentului

În inteligența artificială, agenții de învățare ( adaptarea mediului ) sunt adesea luați în considerare. În același timp, în condiții de incertitudine , devine importantă analiza nu numai a informațiilor actuale, ci și a contextului general al situației în care agentul a căzut, prin urmare, aici se folosesc perceptronii de feedback [41] . În plus, în unele sarcini devine importantă creșterea ratei de învățare a perceptronului, de exemplu, cu ajutorul modelării refractarității [42] .

După o perioadă cunoscută sub numele de „ Iarna inteligenței artificiale ”, interesul pentru modelele cibernetice a reînviat în anii 1980 , pe măsură ce susținătorii AI simbolic nu au reușit să se apropie de problemele „înțelegere” și „sens”, determinând traducerea automată și recunoașterea modelelor tehnice. neajunsuri fatale. Minsky însuși și-a exprimat public regretul că discursul său a deteriorat conceptul de perceptroni, deși cartea a arătat doar deficiențele unui singur dispozitiv și unele dintre variațiile acestuia. Dar, în general, AI a devenit sinonim cu abordarea simbolică, care se exprimă în crearea de programe din ce în ce mai complexe pentru computere care simulează activitățile complexe ale creierului uman.

Vezi și

Note

  1. Opțiunea „perceptron” este cea originală, folosită în traducerea cărții lui Rosenblatt (1965), tot în cartea de referință: Explanatory Dictionary of Artificial Intelligence / Compilers A. N. Averkin, M. G. Gaaze-Rapoport , D. A. Pospelov . - M . : Radio şi comunicare, 1992. - 256 p. Varianta „perceptron” este mai frecventă, a apărut la traducerea cărții lui Minsky și Papert (1971); vezi și: Enciclopedia cibernetică. Volumul 2. Mikh-Yach . - Kiev: Ch. ed. USE, 1974. - S. 156-158. Copie arhivată (link indisponibil) . Consultat la 1 februarie 2009. Arhivat din original la 31 martie 2009. 
  2. „Mark-1”, în special, a fost un sistem care imită ochiul uman și interacțiunea acestuia cu creierul.
  3. „Trei straturi” conform clasificării adoptate de Rosenblatt și „două straturi” conform notației moderne - cu particularitatea că primul strat nu este antrenabil.
  4. Abordarea simbolică include, de exemplu, crearea de sisteme expert , organizarea bazelor de cunoștințe , analiza textului .
  5. În mod formal, elementele A, ca și elementele R, sunt sumatori cu un prag , adică neuroni unici .
  6. Prezentarea din această secțiune este oarecum simplificată datorită complexității analizei bazate pe predicate.
  7. Un predicat este echivalent cu o intrare numai într-un caz special - doar când depinde de un argument.
  8. M. M. Bongard consideră această sarcină cea mai dificilă pentru desenarea unui hiperplan în spațiul receptorilor.
  9. În primele etape ale dezvoltării științei inteligenței artificiale, sarcina acesteia a fost considerată într-un sens abstract - crearea de sisteme care să semene cu mințile umane (vezi inteligența generală artificială ). Formulările moderne de sarcini în AI tind să fie mai precise.

Surse

  1. Warren S. McCulloch și Walter Pitts . Un calcul logic al ideilor  imanente în activitatea nervoasă  // Buletin de biologie matematică . - New York : Springer New York , 1943. - V. 5 , nr. 4 . - S. 115-133 .
  2. 12 Donald Olding Hebb . Organizarea comportamentului: o teorie neuropsihologică . - Wiley , 1949. - 335 p. Ediție contemporană: Donald Olding Hebb . Organizarea comportamentului: o teorie neuropsihologică . - Lawrence Erlbaum Associates , 2002. - 335 p. - ISBN 0805843000 , ISBN 978-0-8058-4300-2 .
  3. Perceptroni: O rețea de învățare asociativă . Preluat la 2 mai 2008. Arhivat din original la 19 august 2011.
  4. Apariția perceptronului  (link inaccesibil)
  5. 1 2 Sisteme de recunoaștere a modelelor (link inaccesibil) . Preluat la 4 octombrie 2019. Arhivat din original la 18 decembrie 2017. 
  6. 1 2 Minsky M., Papert S., p. cincizeci.
  7. The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain (link descendent) . Preluat la 2 mai 2008. Arhivat din original la 18 februarie 2008. 
  8. 1 2 3 4 Rosenblatt F., p. 102.
  9. Fomin, S. V., Berkinblit, M. B. Mathematical problems in biology Arhivat 21 decembrie 2009 la Wayback Machine
  10. Rosenblatt, F., p. 158-162.
  11. Rosenblatt, F., p. 162-163.
  12. Bryukhomitsky Yu. A. Modele de rețele neuronale pentru sistemele de securitate a informațiilor, 2005.
  13. 1 2 3 Rosenblatt F., p. 81.
  14. 1 2 3 Rosenblatt, F., p. 200.
  15. 1 2 3 4 Rosenblatt F., p. 82.
  16. Rosenblatt F., p. 83.
  17. 1 2 Rosenblatt F., p. 93.
  18. Rosenblatt, F., p. 230.
  19. Minsky, Papert, p. 11-18.
  20. Minsky, Papert, p. optsprezece.
  21. Rosenblatt, F., p. 85-88.
  22. Khaikin S., 2006, p. 96.
  23. Rosenblatt, F., p. 86.
  24. Khaikin S., 2006, p. 225-243, 304-316.
  25. ^ Wasserman, F. Neurocomputer Engineering: Theory and Practice, 1992.
  26. Bongard, M. M., p. 29.
  27. Minsky M., Papert S., p. 59.
  28. Rosenblatt, F., p. 101.
  29. Minsky, Papert, p. 155, 189 (nu verbatim, simplificat pentru expresivitate).
  30. Rosenblatt, p. 239
  31. Rosenblatt, p. 242
  32. Rosenblatt, F., p. optsprezece.
  33. Rosenblatt, F., p. 70-77.
  34. vezi Ezhov A. A., Shumsky S. A. „Neurocomputing...”, 2006. Curs 3: Supervised learning: Pattern recognition Copie de arhivă datată 1 noiembrie 2011 la Wayback Machine
  35. Minsky M., Papert S., p. 76-98.
  36. Minsky M., Papert S., p. 113-116.
  37. Minsky M., Papert S., p. 192-214.
  38. Minsky, Papert, p. 163-187
  39. Minsky, Papert, p. 153-162
  40. Rosenblatt, F., p. 219-224.
  41. Yakovlev S. S. Utilizând principiul recurenței Jordan în perceptronul Rosenblatt, Jurnal „AUTOMATICS AND COMPUTING TECHNIQUE”, Riga, 2009 Arhivat la 1 iulie 2017 la Wayback Machine . Laboratorul virtual Wiki.
  42. Yakovlev S.S. , Investigation of Refractoriness principle in Recurrent Neural Networks, Scientific procedures of Riga Technical University, Issue 5, Vol.36, RTU, Riga, 2008, P. 41-48. Explorarea principiului refractarității în rețelele neuronale recurente (traducere) Arhivat 7 martie 2016 la Wayback Machine .

Literatură

Link -uri