FUNDAMENTE ALE IC Fundamente ale inteligentei … · ۩ IC elimina nevoia de programare; ۩ Intr-un...
Transcript of FUNDAMENTE ALE IC Fundamente ale inteligentei … · ۩ IC elimina nevoia de programare; ۩ Intr-un...
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 1 / 28
Fundamente ale inteligentei computationale
➢Definirea inteligentei
➢ Incadrarea IC
➢Subdomenii ale IC
➢Mituri despre IC
➢Adaptare
➢Autoorganizare
➢CI ca adaptare si autoorganizare
➢Capacitatea de generalizare
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 2 / 28
Definire - cont.
➢Inteligenţa computaţională (Calcul inteligent)
❖ Include o varietate de metode de calcul inspirate din
natură (Bio-inspired computing).
❖ Îşi propune preluarea ideilor şi mecanismelor de
inspirație biologică pentru rezolvarea diferitelor
probleme şi situaţii precum şi implementarea acestora
(calculator, sisteme cu microcontroler, etc), în
încercarea de a obţine de la maşini performanţe
asemănătoare sistemelor din natură.
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 3 / 28
Definire - cont.
➢Inteligenţa computaţională (Calcul inteligent)
❖Conţine conceptele practice de adaptare şi auto-organizare,
paradigme, algoritmi şi implementari care fac posibile sau
facilitează realizarea acţiunilor potrivite (comportament
inteligent) în medii complexe şi schimbatoare (variabile în
timp) [Ebe07].
❖ Implică calcule numerice furnizând unui sistem abilitatea de a
învaţa şi/sau de a rezolva situaţii noi – percepţia asupra
sistemului fiind aceea ca acesta posedă anumite atribute de
rationament [Ebe07]:
» generalizare
» descoperire
» asociere
» abstractizare
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 4 / 28
➢ Inteligenţa computaţională contine tehnici de rezolvare a
problemelor "rău-puse" sau a celor pentru care modelele
formale conduc la algoritmi foarte costisitori.
❖ Probleme "rău-puse“ - nu pot fi descrise complet printr-un
model formal, se cunosc doar exemple de rezolvare a
problemei.
▪ căutare persoane într-o bază de date folosind drept cheie de
căutare imaginea persoanei căutate.
❖ Probleme "bine-puse“ - li se poate asocia un model formal
(de exemplu un model matematic) pe baza căruia se poate
dezvolta o metodă de rezolvare cu caracter algoritmic.
▪ căutare persoane într-o bază de date folosind drept cheie de
căutare CNP-ul.
Definire - cont.
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 5 / 28
Definire
➢ Inteligenţa:
❖ Capacitatea de a înţelege uşor şi bine (corect), de a sesiza ceea
ce este esenţial, de a rezolva situaţii sau probleme noi pe baza
experienţei acumulate anterior [DEX].
❖ Capacitatea de adaptare la împrejurări noi, de a sesiza
relaţiile esenţiale şi de a găsi o solutie dintr-o anumită situaţie, de
a rezolva probleme noi [MDN].
❖ Capacitatea unui sistem de a-şi adapta comportarea pentru a-şi
îndeplini obiectivele într-un domeniu de medii inconjuratoare.
Aceasta este o proprietate a tuturor sistemelor decizionale
conduse de scop [David Fogel 1995].
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 6 / 28
Incadrarea IC➢ IC – simularea pe un sistem de calcul a inteligenţei biologice
➢ IC - similară “Inteligenţei artificiale”, care este bazată penoţiunea de cunostinţa
➢ Inteligenţă: • biologică; • artificială; • computaţională
➢ IC este strâns legată (există o suprapunere semnificativă) de
domeniul numit “soft computing” [Lotfi Zadeh 1998]
❖ exploatează toleranţa la imprecizie, nesiguranţă şi adevăr parţial,
pentru a obţine flexibilitate, robusteţe şi costuri scăzute
❖ diferă fundamental de calculul convenţional (hard), caracterizat
tocmai de lipsa tratarii impreciziei şi a adevărurilor parţiale
Inteligentaartificiala(conventionala)
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 7 / 28
Incadrarea IC - cont.
➢ Ce atribute ale sistemelor IC nu apar la IA conventionala si la hard
computing:▪ capacitatea de generalizare
▪ capacitatea de a lucra cu adevar partial si incertitudini
▪ toleranta fata de erori si zgomot, ceea ce conduce la sisteme torelante
la defecte;
▪ capacitatea de a functiona bine in medii complexe si variabile
➢ Ce atribute ale sistemelor hard computing nu apar la sistemele cu IC
(soft computing):▪ precizia
▪ certitudinea
✓ Nu vom utiliza IC in verificarea contului bancar si calculul impozitului
✓ Viata si sistemele reale abunda in imprecizii, incertitudini, adevaruri partiale si
neliniaritati
✓ Multe sarcini dificile – dezvoltarea sistemelor de optimizare si diagnosticare in
medii complexe si variabile – pot fi duse la bun sfarsit cu implementari de IC
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 10 / 28
Subdomenii ale IC➢ Reţele neuronale artificiale (Artificial Neural Network)
➢ Algoritmi genetici (Genetic Algorithms) – calcul evolutiv
➢ Logică fuzzy (Fuzzy logic)
➢ Sisteme hybride
➢ …
• Subdomeniile sunt intr-o relatie de complementaritate (nu
concurentiala), fiecare contribuie cu avantajele si metodele proprii la
solutionarea problemelor.
• Retelele neuronale: capacitate de invatare, adaptare si generalizare
• Algoritmii genetici: cautare “sistematica” (exhaustiva) a solutiei,
optimizare (globala)
• Logica fuzzy: captarea cunostiintelor expertilor, utilizarea limbajului
natural
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 11 / 28
Sursa de inspiraţie
➢Creierul, cu uimitoarele sale capacităţi de învăţare,
înmagazinare a cunoştinţelor şi prelucrare a informaţiei
este sursa de inspiraţie pentru dezvoltarea reţelelor
neuronale artificiale (RNA).
➢ Procesul natural de evoluţie al speciilor, selecţia naturală
şi alţi operatori genetici stau la baza strategiilor
evolutive, în particular a algoritmilor genetici
➢Limbajul natural, modul de acţiune, capacitatea de
raţionament chiar în situaţii de informaţii insuficiente
şi/sau imprecise, specifice oamenilor, sunt preluate în
logica fuzzy şi în sistemele cu logică fuzzy (SLF).
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 12 / 28
Reţele neuronale artificiale
➢Retelele neuronale artificiale sunt sisteme de prelucrare a
informatiei ce modeleaza structura paralela, masiva a
creierului – inspiratie biologica.
➢ Simuleaza o structura de calcul paralela, puternic
interconectata, ce contine un numar mare de elemente de
prelucrare (neuroni) relativ simple.
➢Elementele de prelucrare sunt conectate prin conexiuni cu
ponderi
➢ Ponderile conexiunilor stocheaza informatia
(cunostintele), reteaua fiind astfel capabila de adaptare
(invatare) prin modificarea acestor ponderi.
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 13 / 28
Calcul evolutiv➢Arii ale calculului evolutiv [Ebe07]:
❖ Algoritmi genetici (genetic algorithms)
❖ Programare evolutiva (evolutionary programming)
❖ Strategii evolutive (evolution strategies)
❖ Programare genetica (genetic programming)
❖ Optimizarea roiurilor de particule (particle swarm optimization)
✓ Modeleaza procese ale evolutiei naturale: selectie, recombinare, mutatie.
✓Metode de cautare stocastica, inspirate din mecanisme de evolutie
naturala biologica.
✓ Lucreaza cu populatii de solutii potentiale si aplica principiul
supravietuirii celui mai bun (teoria evolutionista - Darwin) pentru a furniza
aproximari din ce in ce mai bune ale solutiei.
✓ Evolutia indivizilor din populatie, astfel ca acestia devin mai adaptati
mediului dacat indivizii din care au fost creati - similar cu adaptarea
naturala - optimizare
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 14 / 28
Logica fuzzy➢ Fuzzy: vag, neclar, imprecis, scamos, pufos, nuanţat
➢ Fuzziness: imprecizie nestatistica si caracter vag al informatiilor
si datelor.
➢ Logica fuzzy
❖ logica rationamentului aproximativ, care este o extensie a
logicii multivalente; generalizare a logicii conventionale,
utilizeaza limbaj natural, capteaza conostiintele expertilor
❖ multimile fuzzy se refera la clase de obiecte cu granite
graduale, in care apartenenta la o clasa creste treptat intre 0
(totala neapartenenta) si 1 (apartenenta completa).
➢ Lotfi Zadeh, parintele logicii fuzzy:
“Motivul pentru care am ales cuvântul fuzzy este că ceea ce am avut în
minte sunt clasele de obiecte care nu au graniţe precis delimitate”.
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 15 / 28
Logica fuzzy - cont.
“Pe masură ce creşte complexitatea, formulările precise
pierd din înţeles şi formulările pline de înţeles pierd din
precizie.” – Lotfi Zadeh
Precizie si semnificatie in lumea reala [FLT]
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 16 / 28
Mituri (neadevaruri) depre IC۩ Necesitatea supercomputerelor/laureatilor Nobel/sume mari
de bani pentru a obtine rezultate utilizand IC;
۩ Implementarile IC sunt cele mai rapide, mai ieftine si mai
bune;
۩ IC elimina nevoia de programare;
۩ Intr-un sistem, partea de IC este mult mai importanta dacat
partea de pre-prelucrare a datelor;
۩ Numai expertii in biologie pot utiliza IC;
۩ Logica fuzzy este vaga, imprecisa;
۩ Logica fuzzy este un alt fel de probabilitate;
۩ IC furnizeaza intotdeauna optimizarea absoluta (optim
global).
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 17 / 28
Instruirea (învăţarea)❖ Capacitatea unui sistem de a-si modifica parametrii (de a evolua)
cu scopul de a-si indeplini mai bine sarcinile.
❖ Proces in cursul caruia o structura este modificata progresiv
(optimizata) pentru a furniza performante mai bune in mediul său.
➢Tipuri de instruire
▪ Supervizată (supervised learning)
▪ Nesupervizată (unsupervised learning)
▪ (Cu) întărire (reinforcement learning)
➢ Suportul instruirii
▪ seturi de date numerice
▪ algoritmi matematici
➢ Instruirea poate fi
▪ on-line (dinamica)
▪ off-line (statica)
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 18 / 28
Spatiile instruirii➢ Spaţiul intrarilor (spatiul problemei)
▪ Domeniul dinamic al variabilelor de intrare, in general cunoscut
➢ Spatiul iesirilor sistemului (spatiul funcţiei)
▪ Domeniul dinamic al variabilelor de iesire
▪ Specificat ca si constrangere hard sau soft
➢ Spatiul evaluarii (potrivirii)
▪ Spatiul in care se evalueaza “calitatea” solutiilor rezultate in
urma instruirii
▪ In general se scaleaza adecvarea (potrivirea - fitness ) solutiei
• probleme de minimizare
• probleme de maximizare
➢ Uneori spatiul evaluarii este identic cu spatiul iesirii, alteori se
fac transformari, de la spatiul iesirii la cel al evaluarii
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 19 / 28
Legea suficientei➢Daca solutia unei probleme este:
❖ destul de buna (satisface specificatiile)
❖ destul de rapida
❖ destul de ieftina
atunci este suficient!
Dificultati ale instruirii➢Numar mare de variabile
➢ Functii de evaluare complexe, neliniare, variabile in
timp si in spatiul parametrilor de intrare
➢Mediu complex si variabil
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean
Machine learning (ML)ML is he process by which a computer learns from experience (e.g. using
programs that can learn from historical cases) [Turban, Sharda, Delen, Decision Support and
Business Intelligence, 9th edition, Pearson Education Limited, 2014]
❖ A beginner's introduction to the Top 10 Machine Learning (ML)
algorithms. [https://www.kdnuggets.com/2017/10/top-10-machine-
learning-algorithms-beginners.html]
❖ Top 10 Machine Learning Algorithms for Beginners
[https://www.kdnuggets.com/2017/10/top-10-machine-learning-
algorithms-beginners.html]
❖ Understanding Machine Learning Algorithms
[https://www.kdnuggets.com/2017/10/understanding-machine-learning-
algorithms.html]
Machine learning – a machine that is going to learn something
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 21 / 28
Instruire supervizata ➢ Procesul de invatare (adaptare) al sistemului astfel ca el sa
produca o iesire specificata ca raspuns la o intrare
specificata
➢ Sistemul să emuleze comportamentul descris prin
exemplele intrare – ieșire (date numerice), dezvoltându-
și în același timp și capacitate de generalizare
➢ Instruirea sistemului se realizeaza pe durata mai multor
epoci (iteratii) de instruire.
➢ Supervizat – iesirea este apriori cunoscuta pentru toate
intrarile si algoritmul de instruire utilizeaza o masura a
erorii pentru a dirija antrenarea (Reed and Marks 1999).
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 22 / 28
Instruire supervizată
➢Exista o masura directa a nivelului de potrivire
❖ o funcție eroare dintre ieșirea dorită (cunoscuta) și
ieșirea calculată (suma erorilor pătratice, media erorilor
pătratice, radicalul erorii medii pătratice, suma erorilor
absolute)
➢Algoritmul de instruire utilizează adeseori informații
despre gradienții funcției eroare, în raport cu o suprafață a
erorii mediată pentru toate exemplele intrare-ieșire într-o
epocă de instruire
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 23 / 28
Instruirea supervizata - cont.
• “Profesorul”: seturi de
date intrare-iesire;
• Instruirea se realizeaza in
epoci (iteratii) succesive;
• Potrivirea este adeseori
invers proportionala cu
suma erorilor;
• Buna pentru aproximarea
functiilor, recunoastere de
forme; predictie
• Examplu: algoritmul cu
propagare inversa –
antrenarea retelelor
neuronale, neuro-fuzzy
(ANFIS)
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 24 / 28
➢ Sistemul se adapteaza la regularitatile sau similitudinile
naturale existente in setul de date, pentru a se realiza
gruparea datelor
➢Nu exista un “profesor” sau “critic” extern
➢Nu exista nici o indicatie a potrivirii datelor incorporata in
algoritmul de instruie nesupervizata
➢ Interpretarea rezultatului instruirii (este bun, este
utilizabil) este realizata la finalizarea instruirii
➢Evaluarea “off-line” este in general realizata de un expert
uman sau de un sistem inteligent.
Instruirea nesupervizata
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 25 / 28
Instruirea nesupervizata - cont.
• În general pentru probleme de grupare
(clustering), sau “invatare competitiva”
• Gruparea vectoriilor de intrare (pattern)
similari in submultimi (grupuri) – clustere
(clase)
• Elementele dintr-un grup (clasa) au un
grad ridicat de “asociere naturala” intre ei
• Grupurile (clusterele) sunt “relativ
distincte” unele fata de altele
• 3 aspecte:
• numar de grupuri
• centrele grupurilor
• repartizarea punctelor de date
(pattern) la grupuri (clustere)
• ex: gruparea substractiva fuzzy, fuzzy C-
means
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 26 / 28
Instruirea cu întărire (reinforcement learning)
➢ Interactiune cu un critic care furnizeaza informatii euristice pentru
intarire (ajutor, sprijin, reimprospatare)
➢ Este necesar sa existe un fel de masura a potrivirii sau a scopului dar
care nu se poate obtine direct
➢ Pot exista interpretari: solutia este buna, este rea, cum este fata de o
alta solutie
➢ Este metoda de adaptare cea mai apropiata de sistemele biologice
❖ animalele (inclusiv oamenii) tind sa evite comportarile ce le provoaca
discomfort si tind sa caute sau sa repete actiunile care le aduc comfort.
Learning by interacting with the environment and observing the results of these interactions. This mimics the fundamental way
in which humans (and animals alike) learn. As humans, we have a direct sensori-motor connection to our environment,
meaning we can perform actions and witness the results of these actions on the environment. The idea is commonly known as
"cause and effect", and this undoubtedly is the key to building up knowledge of our environment throughout our lifetime.
Reinforcement learning is a sub-area of machine learning that is concerned with learning-
by-doing-and-measuring to maximize some notion of long-term reward. Reinforcement
learning differs from supervised learning in that correct input-output pairs are never
presented to the algorithm. [Turban, Sharda, Delen, Decision Support and Business Intelligence, 9th edition, Pearson
Education Limited, 2014]
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 27 / 28
Adaptarea întărită - cont.
• adeseori sistemul primeste o
serie de date (intrare, stare)
• doar la sfarsit se evolueaza
potrivirea sistemului
• “criticul” se uita numai la
rezultatele finale, neluand in
considerare erorile datorate
fiecarei intrari
• exemplu: optimizarea
gruparilor de particule (se poate
calcula doar cat de buna este o
solutie fata de alta)
Experienţa este un profesor dur pentru că întâi îţi dă testul şi abia apoi îţi
predă lecţia” (Vernon Law)
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean 28 / 28
O vedere simplificata a IC
➢Datele prelucrate provin din afara sistemului
➢Cunostintele incorporate sunt continute in interiorul
sistemului
FUNDAMENTE ALE IC
Computational Intelligence in Complex Decision Systems G. Oltean
Capacitatea de generalizare➢ Capacitatea de a determina corect valoarea iesirii pentru vectori de
intrare la care sistemul nu a fost expus pe durata antrenarii
iesirilorspatiul,intrarilorspatiul),( YXxfy
Setul de date
de antrenare:
antrenaredeperechidenumarul
...,2,1,x,
n
niYXyxS ii
Construirea modelului Sxxfxf ** pentru
Sistem “perfect”:
Sxxfxf
Sxxfy
),()(
,*
Poate sa nu fie valabil datorita erorilor si zgomotului
prezente in setul de date de antrenare
Poate fi suparator daca S se imparte in set de
antrenare si set de test
In urma antrenarii poate apare “suprapotrivirea” sistemului cu setul de
date de antrenare – performante slabe pentru setul de test.