1 / 47

Retele neuronale

Retele neuronale. Scopul cursului Calcul neuronal (Neural Computing) Calcul evolutiv (Evolutionary Computing) Calcul fuzzy (Fuzzy Computing) Structura cursului si aspecte organizatorice. Scopul cursului. Rezolvarea problemelor dificile. Probleme rau-puse: Dificil de formalizat

makayla
Download Presentation

Retele neuronale

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Retele neuronale • Scopul cursului • Calcul neuronal (Neural Computing) • Calcul evolutiv (Evolutionary Computing) • Calcul fuzzy (Fuzzy Computing) • Structura cursului si aspecte organizatorice Retele neuronale - curs 1

  2. Scopul cursului • Rezolvarea problemelor dificile Probleme rau-puse: • Dificil de formalizat • Se cunosc doar exemple nu si un model general • Metodele clasice nu pot fi aplicate Exemplu: clasificarea angajatilor unei companii in doua clase in functie de credibilitatea privind acordarea unui imprumut bancar Probleme “bine-puse”: • Exista un model formal asociat problemei • Exista un algoritm de rezolvare Exemplu: clasificarea angajatilor unei companii in doua clase in functie de venitul acestora (venit mai mic respectiv mai mare decat un prag dat) Retele neuronale - curs 1

  3. Scopul cursului • Probleme bine puse Algoritm = descriere a metodei Date de intrare Rezultat Clasa 1 sau Clasa 2 Venit If venit>1000 then Clasa 1 else Clasa 2 Retele neuronale - curs 1

  4. Scopul cursului Exemple: (900, Clasa1), (500, Clasa 1),(5000,Clasa 2), (1100, Clasa2) • Probleme rau puse Sistem adaptiv (incorporeaza un modul de invatare/evolutie) Date de intrare Rezultate Clasa 1 sau Clasa 2 Venit Modelul este extras de catre sistemul adaptiv pe baza exemplelor Retele neuronale - curs 1

  5. Scopul cursului Metodele de rezolvare a problemelor rau-puse se caracterizeaza prin: • Abilitatea de a extrage modele din exemple • Adaptabilitate la probleme cu caracter dinamic • Robustete la erori (zgomot) in datele de intrare • Capacitatea de a furniza rezultate intr-un interval rezonabil de timp (chiar daca rezultatele sunt aproximative – dar acceptabile dpdv practiv) Domeniul care se ocupa cu dezvoltarea unor astfel de tehnici este denumit “computational intelligence” sau “soft computing” Retele neuronale - curs 1

  6. Scopul cursului Soft Computing “is a collection of new techniques in computer science, especially in artificial intelligence; unlike hard computing, it is tolerant of imprecision, uncertainty and partial truth. In effect, the role model for soft computing is the human mind. The guiding principle of soft computing is: exploit the tolerance for imprecision, uncertainty and partial truth to achieve tractability, robustness and low solution cost.” [Wikipedia] Computational Intelligence “is a branch of the study of artificial intelligence; it aims to use learning, adaptive, or evolutionary algorithms to create programs that are, in some sense, intelligent. “ [Wikipedia] Terminologie: Calcul inteligent (?) Inteligenta computationala (?) Calcul tolerant (?) Retele neuronale - curs 1

  7. Scopul cursului Sursa de inspiratie Creierul uman Evolutia naturala Rationament uman si limbaj natural Instrumente Retele neuronale artificiale Algoritmi evolutivi Sisteme fuzzy Directii Calcul neuronal Calcul evolutiv Calcul fuzzy Retele neuronale - curs 1

  8. Scopul cursului Calcul natural = metode de rezolvare a problemelor inspirate de natura Calcul neuronal Calcul ADN Calcul membranar Calcul evolutiv Calcul cuantic Calcul fuzzy Retele neuronale - curs 1

  9. Calcul neuronal • Principii de baza • Modelul biologic • Retele neuronale artificiale • Aplicabilitate • Scurt istoric Retele neuronale - curs 1

  10. Principii de baza Dpdv functional: retea neuronala artificiala = sistem adaptiv capabil sa furnizeze raspunsuri pentru o problema dupa ce a fost antrenata pentru probleme similare Exemple Data de intrare Retea neuronala = Sistem adaptiv (antrenabil) Raspuns Retele neuronale - curs 1

  11. Principii de baza Dpdv structural: Retea neuronala = ansamblu de unitati functionale (neuroni) interconectate Unitate functionala = model foarte simplificat al neuronului biologic care efectueaza prelucrari simple asupra unor date de intrare Retea neuronala artificiala = model foarte simplificat la creierului Retele neuronale - curs 1

  12. Principii de baza • Comportarea complexa a unei RN emerge din interactiunea si aplicarea in paralel a multor reguli simple • Abordarea bottom-up este complementara abordarii top down specifica inteligentei artificiale clasice • Abilitatea de invatare deriva din adaptabilitatea unor parametri asociati unitatilor functionale (acesti parametri sunt ajustati in procesul de invatare) • Prelucrarile sunt preponderent numerice spre deosebire de abordarile din inteligenta artificiala clasica care acopera si sfera simbolica Retele neuronale - curs 1

  13. Calcul neuronal • Principii de baza • Modelul biologic • Retele neuronale artificiale • Aplicabilitate • Scurt istoric Retele neuronale - curs 1

  14. Modelul biologic Creier uman cca 1011 neuroni si 1015 interconexiuni (sinapse) Retele neuronale - curs 1

  15. Modelul biologic Cum “lucreaza un neuron” ? • Primeste semnale de intrare prin dendrite • Semnalele de intrare genereaza diferente de potential pe membrana celulara • Diferenta de potential se propaga pana la conul axonal • De-a lungul axonului este transmis un tren de impulsuri electrice • Impulsurile electrice ajunse la terminatiile axonului provoaca eliberarea unor neurotransmitatori in spatiul sinaptic … transfer de informatie catre dendritele altui neuron Retele neuronale - curs 1

  16. Modelul biologic Creier uman • Un numar mare (1011) de unitati functionale de viteza relativ mica (ms) cu putere de calcul limitata • Numar foarte mare (1015) de conexiuni de viteza limitata • Memorie cu caracter asociativ • Cunostintele sunt stocate in sinapse • Adaptarea se realizeaza prin modificarea conexiunilor • Calculator (vonNeumann) • Unul sau cateva procesoare de viteza mare (timp raspuns: ns) si cu putere mare de calcul • Una sau cateva magistrale de comunicare de viteza mare • Memorie accesata prin adresa • Componenta ce incorporeaza cunoasterea este separata de cea destinata efectuarii calculelor • Adaptabilitate redusa Retele neuronale - curs 1

  17. Calcul neuronal • Principii de baza • Modelul biologic • Retele neuronale artificiale • Aplicabilitate • Scurt istoric Retele neuronale - curs 1

  18. Retele neuronale artificiale RNA = unitati functionale interconectate cu parametri ajustabili Unitate functionala: mai multe intrari, o singura iesire Operatii specifice unei unitati functionale (ex.) intrari iesire Ponderi numerice atasate conexiunilor Retele neuronale - curs 1

  19. Retele neuronale artificiale Exemplu: arhitectura pe nivele (feedforward) Structura RNA • Arhitectura (graf orientat etichetat) • Functionare (functii vectoriale, relatii de recurenta, ecuatii diferentiale) • Invatare/antrenare (algoritm de ajustare a parametrilor ajustabili) Relatie de functionare: Retele neuronale - curs 1

  20. Retele neuronale artificiale Exemple de arhitecturi: Arhitectura pe nivele Arhitectura recurenta Arhitectura celulara Retele neuronale - curs 1

  21. Retele neuronale artificiale Invatare = extragerea modelului corespunzator problemei pornind de la exemple = determinarea parametrilor retelei Strategii de invatare: • Supervizata (i.e. invatare cu instructor, set de antrenare ce contine date de intrare si raspunsuri corecte) • Nesupervizata (i.e. bazata doar pe datele de intrare) • Intarire (i.e. de tip recompensa/penalizare) Retele neuronale - curs 1

  22. Calcul neuronal • Principii de baza • Modelul biologic • Retele neuronale artificiale • Aplicabilitate • Scurt istoric Retele neuronale - curs 1

  23. Aplicatii • Clasificare si recunoasterea formelor Date de intrare: ansamblu de trasaturi ale unui obiect Ex: informatii despre angajat Iesire: Clasa caruia ii apartine obiectul Ex: eligibil sau neeligibil pt. un credit bancar Alte exemple: recunoasterea caracterelor, clasificarea imaginilor, clasificarea texturilor, recunoasterea vorbirii, clasificarea semnalelor (EEG, EKG) Particularitate: antrenare supervizata (bazata pe exemple de clasificare corecta) Retele neuronale - curs 1

  24. Exemplu: recunoasterea caracterelor Exemple de reprezentari ale cifrei 1 Problema: recunoasterea caracterelor reprezentate prin bitmap-uri Dupa antrenare va recunoaste si reprezentarea: 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 0 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 Reteaua invata aceste exemple 0 0 1 1 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 1 1 0 0 1 1 0 0 0 1 1 1 1 1 1 0 Retele neuronale - curs 1

  25. Aplicatii • Gruparea datelor (varianta nesupervizata a clasificarii – datele se grupeaza in functie de similaritatile intre ele) Date de intrare: ansamblu de trasaturi ale unui obiect Ex: informatii privind traseul urmat de catre utilizator intr-un sistem de comert electronic Iesire: clasa caruia ii apartine obiectul Ex: grupuri de utilizatori cu comportare similare Alte exemple: segmentarea imaginilor Retele neuronale - curs 1

  26. Aplicatii Exemplu: segmentarea imaginilor = identificarea regiunilor omogene din imagine (faciliteaza analiza continutului imaginii) Retele neuronale - curs 1

  27. Aplicatii • Aproximare / estimarea = determinarea unei relatii intre doua variabile Date de intrare: valori ale variabilelor independente Ex: valori obtinute prin masuratori Iesire: valoare corespunzatoare variabilei dependente Ex: valoarea estimata pentru marimea care depinde de variabilele independente Retele neuronale - curs 1

  28. Aplicatii • Predictie = estimarea valorii(valorilor) viitoare dintr-o serie temporala Date intrare: succesiune de valori Ex: rata de schimb valutar din ultima luna Iesire: estimarea valorii urmatoare Ex: estimarea ratei pentru maine Alte exemple: predictia stocurilor, predictia in meteorologie Retele neuronale - curs 1

  29. Aplicatii • Optimizare = rezolvare in timp rezonabil a unor probleme de optimizare combinatoriala pentru care nu exista algoritmi clasici de complexitate polinomiala • Memorii asociative = memorii in care regasirea informatiei se bazeaza pe versiuni partiale ale informatiei stocate si nu pe adresa • Control adaptiv = determinarea unui semnal de control ce asigura un anumit semnal de iesire al sistemului Retele neuronale - curs 1

  30. Calcul neuronal • Principii de baza • Modelul biologic • Retele neuronale artificiale • Aplicabilitate • Scurt istoric Retele neuronale - curs 1

  31. Scurt istoric • Pitts & McCulloch (1943) • Primul model matematic al neuronului biologic • Hebb (1949) • Regula de ajustare a ponderilor sinaptice: permeabilitatea sinaptica dintre doi neuroni creste daca acestia devin activi simultan Retele neuronale - curs 1

  32. Scurt istoric • Prima lansare a retelelor neuronale (1950– 1965) • Rosenblatt (1958) • Perceptron: retea simpla pentru recunoasterea caracterelor Perceptron learning rule: primul algoritm de invatare (bazat pe principiul penalizarii erorilor) • Algoritm de antrenare si teorema de convergenta: perceptronul poate fi antrenat sa raspunda corect pentru orice problema de clasificare liniar separabila • Widrow and Hoff (1960, 1962) • Algoritm de antrenare bazat pe minimizarea unei functii de eroare folosind o metoda de optimizare Retele neuronale - curs 1

  33. Scurt istoric • Perioada de stagnare (1965 – 1980) • Minski si Papert au facut cunoscute limitarile perceptronului: Nu poate reprezenta (invata) unele functii booleene simple (XOR) - Tot ei au intuit solutia (utilizarea mai multor nivele) dar nu au putut dezvolta la ora respectiva un algoritm de antrenare adecvat Retele neuronale - curs 1

  34. Scurt istoric • Renasterea interesului pt. domeniu (1980 - prezent) • Tehnici noi: • Algoritmul BackPropagation (Werbos-1974, Rumelhart-1985) • Modele inspirate de fizica (reteaua Hopfield, masina Boltzmann, etc.) • Invatare nesupervizata (Kohonen, Grossberg) • Extinderea domeniului de aplicabilitate Observatie: • Retelele neuronale au limitari si dezavantaje • Trebuie utilizata doar cand tehnicile clasice esueaza (solutii de compromis) Retele neuronale - curs 1

  35. Legatura cu alte domenii Informatica Biologie Neurofiziologie Inteligenta artificiala Data mining Psihologie cognitiva Retele neuronale Inginerie Prelucrarea semnalelor Control adaptiv Matematica Algebra liniara (calcul vectorial si matricial) Analiza numerica (metode de minimizare) Economie Predictie stocuri Analiza riscului Statistica (estimare, regresie) Ecuatii diferentiale Retele neuronale - curs 1

  36. Calcul evolutiv • Principiile calculului evolutiv • Structura unui algoritm evolutiv • Clase de algoritmi evolutivi • Aplicatii ale calculului evolutiv Retele neuronale - curs 1

  37. Principii de baza • Este inspirat de procesele de evolutie din natura bazate pe principiile ereditatii si a supravietuirii celui mai bun individ • Se bazeaza pe determinarea solutiei unei probleme prin explorarea spatiului solutiilor potentiale folosind o populatie de “cautatori” (agenti) • Elementele populatiei sunt codificate in functie de specificul problemei (siruri de biti, vectori de valori reale, arbori etc.) Retele neuronale - curs 1

  38. Principiile calculului evolutiv Analogia dintre procesele de evolutie din natura si rezolvarea problemelor Rezolvarea problemelor Problema Solutie candidat Calitate solutie Evolutia in natura Mediu Individ Grad de adaptare la mediu Retele neuronale - curs 1

  39. Structura unui algoritm evolutiv solutie Algoritm evolutiv = proces iterativ constand in aplicarea succesiva a unor operatori - recombinare - mutatie - selectie asupra unei populatii initializata aleator Initializare populatie Conditie de oprire Evaluare Selectie Recombinare, mutatie Retele neuronale - curs 1

  40. Variante de algoritmi evolutivi • Algoritmi genetici: • Codificarea binara a informatiei • Incrucisarea (recombinarea) este operatorul principal • Mutatia este operator secundar • Adecvate pentru probleme de optimizare combinatoriala • Strategii evolutive: • Codificare reala a informatiei • Mutatia este operatorul principal • Incrucisarea este operator secundar • Adecvate pentru rezolvarea de probleme de optimizare continua Retele neuronale - curs 1

  41. Variante de algoritmi evolutivi • Programare genetica: • Elementele populatiei sunt structuri (arbori, expresii, programe etc) • Permit generarea unor structuri de calcul prin procese de evolutie • Programare evolutiva: • Codificare reala a informatiei • Mutatia este singurul operator • Utilizata in rezolvarea problemelor de optimizare continua Tendinta curenta: hibridizarea diferitelor variante Retele neuronale - curs 1

  42. Aplicatii ale algoritmilor evolutivi • Probleme de planificare a activitatilor (generarea automata a orarelor sau planificarea sarcinilor). • Probleme de predictie (evolutia unui activ financiar sau a cursului valutar). • Programare automata (generarea unor programe care sau structuri computationale cum sunt automatele celulare si retelele de sortare). • Prelucrarea imaginilor (proiectarea filtrelor pentru imagini si analiza imaginilor). • Proiectarea retelelor neuronale (stabilirea arhitecturii si/sau a ponderilor). • Probleme de identificare a unor structuri (bioinformatica) • Simularea unor activitati creative (generare de imagini, muzica etc.) Retele neuronale - curs 1

  43. Calcul fuzzy • Se bazeaza pe calculul nuantat ce foloseste valori “fuzzy” in locul unor valori exacte • Multime fuzzy: fiecare element are asociata o functie de apartenenta • Regula fuzzy: regula implicand variabile lingvistice Rece Cald Fierbinte Aplicatii: dispozitive de control (masini de spalat, frigidere, lifturi etc) Retele neuronale - curs 1

  44. Structura cursului • Proiectarea retelelor neuronale • Retele cu un singur nivel. Perceptron. Probleme liniar separabile. Algoritmii Widrow-Hoff si Delta. • Retele multinivel. Algoritmul BackPropagation si variante. Probleme neliniar separabile si aproximare • Retele cu functii radiale • Invatare bazata pe competitie. Retele Kohonen. Teoria rezonantei adaptive • Invatare de tip corelativ. Analiza in componente principale • Retele recurente (Hopfield, Elman, retele celulare) • Proiectarea evolutiva a retelelor neuronale Retele neuronale - curs 1

  45. Structura laboratorului Scop: simularea tipurilor fundamentale de retele neuronale Instrumente: MatLab (Scilab, Weka, JavaSNNS) Teme laborator • Implementare perceptron simplu • Implementare algoritm Backpropagation • Implementare retea cu functii radiale • Implementare retea Kohonen Retele neuronale - curs 1

  46. Notare Teme: 40% (1 punct/ tema) Test final: 60% Proiect optional: 60%-80% Pot fi combinate in orice varianta Retele neuronale - curs 1

  47. Materiale de curs http://web.info.uvt.ro/~dzaharie/ • C. Bishop – Neural Networks for Pattern Recognition, Clarendon Press, 1995 • L. Chua, T. Roska – Cellular neural networks and visual computing , Cambridge.University Press, 2004. • A. Engelbrecht – Computational Intelligence. An Introduction, 2007 • M.Hagan, H. Demuth, M.Beale – Neural Networks Design, PWS Publishing 1996 • Hertz,J.;Krogh,A.;Palmer,R. - Introduction to the Theory of Neural Computation, Addison-Wesley P.C., 1991. • Ripley, B.D. - Pattern Recognition and Neural Networks, Cambridge University Press, 1996. Retele neuronale - curs 1

More Related