Sisteme informatice adaptive
Nevoia de sisteme de informare adaptivă apare când zonele cu probleme pe care le susțin sunt în continuă evoluție. În acest sens, sistemele adaptive trebuie să îndeplinească o serie de cerințe specifice, și anume:
• să reflecte în mod corespunzător cunoștințele despre zona problematică în fiecare moment;
• să fie potrivite pentru o reconstrucție ușoară și rapidă la schimbarea mediului înconjurător.
Proprietățile adaptive ale sistemelor informatice sunt furnizate datorită intelectualizării arhitecturii lor. Miezul acestor sisteme este modelul constant dezvoltat al zonei problematice, susținut într-o bază de cunoștințe specială - depozite. Kernelul sistemului gestionează procesele de generare sau reconfigurare a software-ului.
La adaptarea tipică de proiectare a dezvoltării tipice la caracteristicile unei zone problematice se efectuează. Pentru a implementa această abordare, se folosesc instrumente pentru proiectarea componentelor (ansamblare) a sistemelor informatice (R / 3, BAAN IV, Prodis, etc.).
Diferența principală dintre abordările este că, atunci când se utilizează CASE-tehnologii de fiecare dată când schimbați zona cu probleme se realizează software-ul de generare, în general, și utilizarea tehnologiei de asamblare - module configurarea și numai în cazuri rare - de prelucrare a acestora.
Tema 2. Rețelele neuronale artificiale. Arhitectura și clasificarea rețelelor neuronale.
Ideea unui dispozitiv detaliat al creierului a apărut abia acum o sută de ani. În 1888, medicul spaniol Ramoni Kayal a arătat experimental că țesutul cerebral constă dintr-un număr mare de noduri asociate de același tip - neuroni. Studiile mai recente folosind un microscop electronic au arătat că toți neuronii, indiferent de tip, au o structură organizațională similară (Figura 2.1). O celulă nervoasă naturală (neuron) constă dintr-un corp (soma) care conține un nucleu și procesează - dendrite, prin care semnalele de intrare intră în neuron. Una dintre ramurile ramificate la capăt servește la transmiterea semnalelor de ieșire ale unui neuron dat la alte celule nervoase. Se numește axonul. Conjuncția axonului cu dendritul unui alt neuron se numește sinapse. Neuronul este excitat și transmite semnalul prin axon dacă numărul de semnale incitante provenite de la dendriți este mai mare decât numărul de semnale inhibitoare.
Figura 2.1 - Structura neuronului biologic.
În 1943, V. McCulloch și W. Pitts au propus un sistem de procesare a informațiilor sub forma unei rețele constând din calculatoare simple create pe principiul unui neuron biologic. O rețea neuronică artificială (ANN) este o colecție de elemente simple (procesoare) - neuroni artificiali, conectați într-un fel încât să se asigure interacțiunea între ele. Neuronii artificiali sunt caracterizați de regula de combinare a semnalelor de intrare și de o funcție de transfer care vă permite să calculați semnalul de ieșire.
Figura 2.2 - Modelul cybernetic al unui neuron.
Informațiile care ajung la intrarea neuronilor sunt sintetizate luând în considerare factorii de ponderare a semnalului:
unde w0 este schimbarea (pragul, deplasarea) neuronului.
În funcție de valoarea factorului de ponderare wi. Semnalul de intrare xi este amplificat sau suprimat. Suma ponderată a semnalelor de intrare este, de asemenea, numită intrarea potențială sau combinată a neuronului.
Trecerea este de obicei interpretată ca comunicarea care provine de la un element, activitatea care este întotdeauna egală cu 1. În general, pentru comoditate, vectorul de intrare este extins prin adăugarea acestui semnal la x = Si prag w0 este adus sub semnul însumării (1, xn x0.):
Funcția de transfer sau funcția de activare a neuronului este regula potrivit căreia suma ponderată a semnalului P recepționat este convertit într-un semnal de ieșire al neuronului Y, care este transmis altor neuroni din rețea, m. E. Y = f (P). Figura 2.3 prezintă graficele celor mai comune funcții de activare neuronală.
Funcția de prag ignoră informațiile numai dacă suma algebrică a semnalelor de intrare depășește o anumită valoare constantă P *, de exemplu:
Funcția de prag nu oferă o flexibilitate suficientă pentru ANN pentru formare. Dacă valoarea potențialului calculat nu atinge un prag predeterminat, atunci semnalul de ieșire nu este format și neuronul "nu funcționează". Aceasta duce la o scădere a intensității semnalului de ieșire al neuronului și, ca o consecință, la formarea unei valori scăzute a potențialului intrărilor ponderate în următorul strat de neuroni.
Funcția liniară este diferențiată și ușor de calculat, care într-o serie de cazuri face posibilă reducerea erorilor semnalelor de ieșire din rețea, deoarece funcția de transfer a rețelei este, de asemenea, liniară. Cu toate acestea, nu este universal și nu oferă soluții pentru multe probleme.
Un anumit compromis între funcția-stupencha lea liniară și este o funcție de activare sigmoidă Y = 1 / (1 + exp (-kP)), care simulează transferul care este neuronului biologic (Fig. 3.3 in)-ticile caracterizat.
Figura 2.3 - Funcții artificiale de transfer al neuronului:
a) liniar; b) pas cu pas; c) sigmoidal.
Coeficientul k determină abrupta funcției neliniare: cu k mai mare, cu cât funcția sigmoidală este mai apropiată de funcția de prag; Mai mici k, cu atât este mai aproape de k liniar. Tipul funcției de transfer este selectat ținând cont de sarcina specifică rezolvată prin utilizarea rețelelor neuronale. De exemplu, în problemele aproximării și clasificării, se preferă curba sigmoidă.
Arhitectura și clasificarea ANN
Fiecare neuron este asociat cu un set de legături de intrare prin care semnalele de la alte elemente ale rețelei sunt alimentate la acest element și un set de legături de ieșire prin care semnalele acestui element sunt transmise altor neuroni. Anumiți neuroni sunt concepuți pentru a primi semnale din mediul extern (elemente de intrare), iar altele - pentru a scoate în mediul extern rezultatele calculelor (elemente de ieșire).
În 1958, Frank Rosenblatt a propus următorul model al unei rețele neuronale - perceptronul. Perceptronul Rosenblatt (Figura 2.4) constă din neuroni k, are intrări d, ieșiri k, și numai un singur strat de greutăți configurabile wij.
Figura 2.4 - Perceptron al lui Rosenblatt.
Neuronii de intrare sunt de obicei concepuți pentru a distribui semnalele de intrare între ceilalți neuroni din rețea, astfel încât ele necesită ca semnalul emis de element să fie același cu semnalul de intrare. Spre deosebire de alte neuroni de rețea, intrarea are doar o intrare. Cu alte cuvinte, fiecare element de intrare poate recepționa un semnal de la un senzor corespunzător. Deoarece elementele de intrare sunt destinate exclusiv distribuirii semnalelor primite din mediul extern, mulți cercetători nu consideră în general elementele de intrare ca parte a rețelei neuronale.
Perceptron este capabil să rezolve problemele liniare. Numărul de intrări din rețea determină dimensionalitatea spațiului din care sunt selectate datele de intrare: pentru două caracteristici, spațiul se dovedește a fi bidimensional, pentru trei atribute este tridimensional, iar pentru d atributele este d-dimensional. Dacă o linie dreaptă sau un hiperplane din spațiul de date de intrare poate împărți toate eșantioanele în clasele corespunzătoare, atunci problema este liniară, altfel este neliniară. Figura 2.5 prezintă seturile de puncte din plan, iar în cazul în care a) limita este liniară, în cazul în care b) este neliniară.
Figura 2.5 - Reprezentarea geometrică a liniilor (a) și
(b) probleme neliniare.
Pentru a rezolva problemele neliniare, sunt propuse modele de perceptroni multistrat (MLP), capabili de a construi o linie între imaginile care pot fi recunoscute. În rețelele cu mai multe straturi, fiecare neuron poate trimite un semnal de ieșire numai la următorul strat și primește semnale de intrare numai de la stratul anterior, așa cum se arată în Figura 2.6. Straturile neuronilor situate între intrare și ieșire sunt numite ascunse, deoarece nu primesc și nu transmit date direct din mediul extern. O astfel de rețea permite alocarea proprietăților de date globale datorită prezenței conexiunilor sinaptice suplimentare și creșterii nivelului de interacțiune a neuronilor.
Figura 2.6 - Schema perceptronului multistrat.
Determinarea numărului de straturi ascunse și numărul de neuroni din fiecare strat pentru o anumită sarcină este o rezolvare a problemelor informale cu care este posibil să se utilizeze o regulă de degetul mare: numărul de neuroni din stratul următor este de două ori mai puțin decât în precedent
În prezent, în plus față de un perceptron multistrat, există multe modalități de specificare a structurilor rețelelor neuronale. Toate tipurile de rețele neuronale pot fi divizate în mod condiționat în rețele de propagare directă și rețele cu feedback. După cum sugerează și numele, în rețelele de primul tip, semnalele de la neuron la neuron se propagă într-o direcție bine definită - de la intrările rețelei la ieșirile sale. În rețelele de tipul al doilea, valorile de ieșire ale oricărui neuron de rețea pot fi transmise la intrările sale. Acest lucru permite rețelei neuronale să simuleze procese mai complexe, de exemplu temporare, dar face ieșirile unei astfel de rețele instabile, în funcție de starea rețelei din ciclul precedent. Vezi Figura 2.7. este prezentată clasificarea celor mai frecvente tipuri de rețele neuronale.
Figura 2.7 - Clasificarea tipurilor comune de ANN.
Subiect 3. Rețele tip perceptron
Problema clasificării imaginilor. Predarea cu un profesor
F. Rosenblatt a propus utilizarea unui perceptron pentru problemele de clasificare. Multe aplicații pot fi interpretate ca probleme de clasificare. De exemplu, recunoașterea optică a caracterelor. Caracterele scanate sunt asociate cu clasele corespunzătoare. Există multe opțiuni pentru afișarea literei "H", chiar și pentru un anumit font - simbolul poate apărea, de exemplu, neclar - dar toate aceste imagini trebuie să aparțină clasei "H".
Când se știe la ce clasă se referă fiecare dintre exemplele de instruire, puteți utiliza strategia de învățare împreună cu profesorul. Sarcina pentru rețea este de a învăța cum să se potrivească modelului de rețea cu ținta de control care reprezintă clasa. Cu alte cuvinte, cunoașterea mediului este reprezentată de o rețea neurală sub formă de perechi "intrare-ieșire". De exemplu, rețelele pot afișa o imagine a literei "H" și pot instrui rețeaua în așa fel încât elementul de ieșire "H" corespunzător să fie pornit și elementele de ieșire corespunzătoare altor litere sunt dezactivate. În acest caz, modelul de intrare poate fi un set de valori care caracterizează pixelii de imagine tonuri de gri, iar proba de ieșire țintă - vector valori de coordonate ale tuturor care trebuie să fie egal cu 0, cu excepția coordonatele corespunzătoare clasei „H“, valoare care trebuie să fie egale.
Figura 3.1 prezintă o diagramă bloc care ilustrează această formă de antrenament. Să presupunem că profesorul și rețeaua instruită primesc un vector de instruire din mediul înconjurător. Pe baza cunoștințelor încorporate, profesorul poate forma și transmite rețelei neuronale instruite răspunsul dorit corespunzător acestui vector de intrare. Parametrii rețelei sunt ajustați luând în considerare vectorul de învățare și semnalul de eroare. Semnalul de eroare este diferența dintre semnalul dorit și răspunsul curent al rețelei neuronale. După absolvire, profesorul poate fi oprit și permite rețelei neuronale să lucreze cu mediul în sine.
Figura 3.1 - Conceptul de predare a ANN cu profesorul.
Algoritmul de învățare perceptron include următorii pași:
· Sistemul este prezentat cu o imagine de referință.
· Dacă rezultatul recunoașterii este același cu cel dat, coeficienții de ponderare ai legăturilor nu se modifică.
· Dacă INS recunoaște incorect rezultatul, atunci factorii de ponderare primesc o creștere în direcția creșterii calității recunoașterii.