You are on page 1of 39

nvarea automat

Singurul lucru important este ceea ce nvm dup ce tim totul. (Earl Weaver)

1. Descriere general nvarea automat, unul din sub-domeniile de baz ale Inteligenei Artificiale, se preocup cu dezvoltarea de algoritmi i metode ce permit unui sistem informatic s nvee date, reguli, chiar algoritmi. nvarea automat presupune n primul rnd identificarea i implementarea unei modaliti ct mai eficiente de a reprezenta informaii, n sensul facilitrii cutrii, reorganizrii i modificrii lor. Alegerea modului de a reprezenta aceste date ine att de concepia general asupra modului de rezolvare a problemei, ct i de caracteristicile datelor cu care se lucreaz. nvarea nu se poate face pe baza unui set foarte mare de cunotine, att din cauza costurilor mari presupuse de acumularea unor baze de informaii mari ct i din cauza complexitii memorrii i prelucrrii unui volum mare de informaii. n acelai timp ns, nvarea trebuie s duc la formularea de suficiente reguli att ct s permit rezolvarea unor probleme dintr-un spaiu mai larg dect cel pe baza cruia s-a fcut nvarea. Adic nvarea trebuie s mbunteasc performana unui sistem nu doar n rezolvarea repetat a unui acelai set de probleme, ci i n rezolvarea unor probleme noi. Acest lucru presupune o generalizare a unei metode de rezolvare pentru a acoperi un numr ct mai mare de instane posibile, dar i pstrarea unei specializri suficiente pentru a fi identificate corect instanele acceptate. Aceasta se poate face fie inductiv, generaliznd o problem plecnd de la un set de exemple, fie deductiv, plecnd de la o baz de

cunotine suficiente asupra universului problemei i extrgnd date i reguli eseniale. Pentru a putea face acest lucru, un algoritm de nvare trebuie s fie capabil s selecteze acele elemente semnificative pentru rezolvarea unei instane viitoare a problemei. Aceasta alegere se face pe baza unor criterii de selecie numite diagonale inductive. O alt component esenial al unui algoritm de nvare este metoda de verificare, o metod capabil s confirme dac generalizrile fcute sau regulile deduse se apropie mai mult de soluia ideal dect starea anterioar a sistemului. O prezentare mai detaliat a componentelor eseniale ale unui sistem capabil de nvare este fcut n seciunea a doua a acestui capitol. Studiul nvrii automate a dus la descrierea a numeroase metode, variind dup scop, date de antrenament, strategia de nvare i modalitatea de reprezentare a datelor. Seciunea a treia face o prezentare a principalelor direcii n nvarea supervizat, ce folosete un set de instane rezolvate ale problemei pentru a antrena sistemul n vederea rezolvrii unor instane noi. Seciunea a patra prezint nvarea prin ncurajare, ce implementeaz o metod de a rsplti sistemul n funcie de progresul fcut n gsirea unei soluii optime. Algoritmii genetici, prezentai n seciunea a cincea, folosesc metode de reprezentare i cutare similare mecanismelor biologice. Seciunea a asea prezint nvarea bazat pe cunotine, ce deduce soluii pe baza unor cunotine anterioare asupra domeniului problemei. Seciunea a aptea face o prezentare a dezavantajelor conceptului de nvare supervizat, iar apoi n seciunea a opta se descrie nvarea nesupervizat i problema clasificrii. 2. Caracteristici ale unui sistem capabil de nvare Specificarea unei metode de nvare automat presupune definirea urmtoarelor date: scopul metodei i baza de cunotine necesar; formalismul de reprezentare a datelor utilizate i a celor nvate; un set de operaii asupra datelor disponibile i nvate; un spaiu general al problemei n care se va specifica soluia;

opional, reguli euristice pentru cutarea n spaiul problemei.

2.1 Scopul metodei i baza de cunotine necesar O metod de nvare este definit n primul rnd de datele de plecare i scopul algoritmului, adic ce se dorete s se obin pe baza acestor date. Plecnd de la aceste caracteristici, avem urmtoarele variante: datele de plecare sunt un set de exemple pozitive i negative de instane ale problemei, algoritmul trebuind s gseasc o generalizare care s includ instanele pozitive i s le exclud pe cele negative; datele de plecare constau ntr-un set redus de exemple pozitive, iar algoritmul, plecnd cu o baz de cunotine generale asupra domeniului problemei, trebuie s fac o generalizare; datele de plecare sunt un set de instane neclasificate, algoritmul trebuind s identifice clase de instane cu proprieti similare; date de plecare sub forma uneia sau a mai multor instane ce descriu situaii ca fiind analogii ale problemei de rezolvat, algoritmul trebuind s identifice elementele ce formeaz analogia i s deduc soluia problemei. Datele din baza de cunotine mai sunt caracterizate i de acurateea i calitatea lor. Cel ce nva trebuie s in cont de ncrederea n sursa de informaii i de detalierea i gradul de organizare a informaiilor. Anumite date ce ar putea contribui semnificativ la acurateea unei metode de nvare, dac ar fi prezente n baza de cunotine, pot fi prea greu de obinut. Raportul pre / ctig de informaie trebuie avut n vedere att n crearea bazei de cunotine ct i n descrierea metodelor de nvare. 2.2 Formalismul de reprezentare a datelor utilizate i a celor nvate Conceptele i instanele problemei utilizate n algoritmul de nvare trebuiesc formalizate ca expresii sau obiecte cu proprieti cuantificabile i

clar definite. Reprezentarea acestor proprieti se face n general ntr-o form structurat, cum ar fi un tabel sau un graf. Un exemplu de descriere a unor instane folosind logica propoziional este:
mrime(obj1,mic) culoare(obj1,roie) forma(obj1,rotund) mrime(obj2,mare) culoare(obj2,roie) forma(obj2,rotund)

iar descrierea unui concept general pentru instane de tipul celor de mai sus ar fi:
mrime(x,y) culoare(x,z) forma(x,rotund)

2.3 Setul de operaii Algoritmul trebuie s aib la dispoziie unelte care s i permit manipularea datelor n reprezentarea specific. Operaiile necesare sunt n general cele de generalizare i specializare a unui concept, de modificare i adugare de instane i expresii, de cutare n spaiul problemei. Operatorii de generalizare i specializare sunt eseniali n orice algoritm de nvare. Tipurile principale de generalizri folosite sunt: nlocuirea constantelor cu variabile; Exemplu:
culoare(obj1,roie)

se generalizeaz

culoare(x,roie) culoare(x,y)

renunarea la condiii dintr-o conjuncie; Exemplu:


mrime(obj1,mic) culoare(obj1,roie) forma(obj1,rotund)

se generalizeaz

culoare(obj1,roie) forma(obj1,rotund)

adugarea unei disjuncii la o expresie; Exemplu:

mrime(obj1,mic) culoare(obj1,roie) forma(obj1,rotund)

se generalizeaz

mrime(obj1,mic) culoare(obj1,roie) forma(obj1,rotund) mrime(obj1,mare)

nlocuirea unei proprieti cu o descriere mai general; Exemplu:


culoare(obj1,roie) culoare(obj1,culoare_de_baz)

se generalizeaz

Mrimea setului de operaii disponibile i complexitatea lor sunt lucruri care au n general un impact puternic asupra rezultatelor obinute prin nvare, asupra vitezei nvrii. De asemenea, operaiile disponibile restrng soluiile posibile la cele care pot fi obinute i exprimate prin aceste operaii, deci definirea lor trebuie s fie considerat una din cele mai importante etape, att n descrierea algoritmilor de nvare ct i n formularea problemelor pentru sistemele de nvare automat. 2.4 Spaiul general al problemei Limbajul de reprezentare i setul de operaii descriu un spaiu de definiie a conceptului problemei. nvarea const n navigarea prin acest spaiu n scopul ajungerii la un concept-int sau la noi cunotine. Dificultatea rezolvrii problemei este direct proporional cu complexitatea acestui spaiu general al problemei. Evident, dimensiunea sa este strns legat de formalismul de reprezentare ales i de operaiile descrise pentru aceste reprezentri, lucruri ce sunt fcute odat cu descrierea metodei de nvare i formularea problemei. Aceasta nseamn c putem descrie o metod de nvare rapid, pe un spaiu mic de soluii, dar formalismul de reprezentare i operaiile nu vor avea o putere expresiv mare. Trebuie avut n vedere echilibrul ntre puterea descriptiv i timpul de gsire a unei soluii. De asemenea, de aici rezult i faptul c o metod de nvare conceput pentru o problem

specific se va comporta de obicei mai bine dect o metod general de nvare. 2.5 Reguli euristice pentru cutare Ordinea i modalitatea prin care se face cutarea n spaiul de soluii al problemei sunt, n general, stabilite printr-un set de reguli euristice. Aceste reguli direcioneaz algoritmul i l ajut s ia decizii n privina momentului i felului n care se poate generaliza sau specializa un concept, sau se poate introduce un concept nou. Aceste euristici sunt n general descrise odat cu algoritmul propriu-zis, fiind proprii fiecrei metode de nvare. Aceste reguli pot lipsi, ele nefiind n general eseniale funcionrii algoritmului, ci avnd doar rolul de a optimiza funcionarea sa. 3. nvarea supervizat nvarea supervizat este un tip de nvare inductiv ce pleac de la un set de exemple de instane ale problemei i formeaz o funcie de evaluare (ablon) care s permit clasificarea (rezolvarea) unor instane noi. nvarea este supervizat n sensul c setul de exemple este dat mpreun cu clasificarea lor corect. Aceste instane rezolvate se numesc instane de antrenament. Formal, setul de instane de antrenament este o mulime de perechi atribut-valoare (x,f(x)), unde x este instana iar f(x) clasa creia i aparine instana respectiv. De exemplu, un set de instane de antrenament ar putea fi:
I1: (culoare(obj1,roie) forma(obj1,rotund), f(obj1)=sfer) I2: (mrime(obj2,mare) forma(obj2,cubic), f(obj2)=cub)

Scopul nvrii este construirea unei funcii-ablon care s clasifice corect instanele-exemplu, iar pentru un x pentru care nu se cunoate f(x) s propun o aproximare ct mai corect a valorii f(x). 3.1 Concepte invabile PAC Teoria nvrii Computaionale propune o baza teoretic pentru sistemele capabile de nvare. Problema principal care se pune este: cum demonstrm faptul ca un ablon se apropie de perfeciune n etichetarea oricror instane noi? Fie f funcia pe care dorim s o aproximm, S un set de instane de antrenament (x,f(x)) , iar h funcia indus prin nvare. Este sau nu h(x) aproape de f(x), pentru orice x din spaiul instanelor posibile? Argumentul standard este acela c h nu poate fi prea departe de f, cci h clasific corect instanele de antrenament, deci probabil i pe celelalte. Deci h este probabil aproximativ corect (PAC). Un concept este nvabil PAC dac exist un algoritm eficient care are o probabilitate mare de a gsi o aproximare a conceptului probabil aproximativ corect. Termenul invabil PAC a fost introdus de Valiant (1984). Presupunerea aflat la baza acestei justificri este aceea c instanele de antrenament i instanele de testare sunt uniform distribuite n spaiul instanelor posibile ale problemei. Acest lucru este fundamental n justificarea oricrui rezultat al unei nvrii supervizate. Pentru calculul devierii unei funcii-ablon h faa de f, putem defini o funcie de eroare E(h) ca fiind:
E(h) = Pr(h(x) != f(x) | x din D)

unde D este o mulime de instane uniform distribuite n spaiul instanelor posibile. ablonul h este numit aproximativ corect dac E(h)<=e, unde e este o probabilitate maxim de eroare. Capacitatea unui concept de a fi invabil PAC este independent de algoritmul folosit. Atunci de ce depinde? Cum recunoatem un concept invabil? Rspunsul st n capacitatea acelui concept de a fi reprezentat

printr-o formalizare neambigu. Concepte ca minge, ptrat, profitabil pot fi definite prin proprieti ce le identific n mod unic. Aceste proprieti pot fi definite pentru c exist limbaje de reprezentare pentru ele. Aceste concepte pot fi nvate cu att mai uor cu ct numrul de proprieti ce le definesc n mod unic este mai mic. 3.2 Arbori de decizie Un arbore de decizie este una din cele mai utilizate structuri de reprezentare utilizate n nvarea automat. Pentru o instan specificat de un set de proprieti, arborele verific anumite proprieti pentru a naviga prin arbore i ajunge la o frunz care va fi eticheta acelei instane. Fiecare nod intern al arborelui reprezint un test fcut asupra uneia sau mai multor proprieti ale instanei, iar ramurile descendente din acel nod sunt identificate de posibilele rezultate ale acelui test. Un arbore de decizie construiete pentru o instan o conjuncie logic ce se verific pentru proprietile instanei i formeaz un fel de demonstraie a clasificrii fcute pe baza acelor proprieti. Ca exemplu, fie arborele binar de decizie din Figura 1.

Patrulater? DA NU Altceva

Unghiuri drepte? DA Laturi egale? NU NU Laturi egale?

DA

DA

NU Trapez

Patrat

Dreptunghi

Romb

Figura 1: Exemplu de arbore binar de decizie Acest arbore identific tipurile de patrulatere innd cont de anumite proprieti de baz. O instan de intrare pentru acest arbore este o figur geometric definit de proprietile sale. Arborele face anumite teste i ajunge la un nod terminal care identific tipul figurii geometrice, dac este un patrulater, sau rspunde Altceva dac nu este un patrulater. Drumul luat pentru a ajunge la rspuns poate fi reconstituit i formeaz o demonstraie a rspunsului. De exemplu, pentru instana:

Drumul parcurs va forma demonstraia:

Figura este romb, deoarece este patrulater i nu are unghiuri drepte i are laturile egale. Avantajul principal al arborilor de decizie este acela c minimizeaz numrul de teste la cele suficiente pentru a formula un rspuns. Avantajul este evident chiar n exemplul dat: arborele identific orice figur geometric, indiferent de proprietile sale. De exemplu, pentru instana:

arborele nu va verifica proprietile nerelevante pentru problem, ci va face testul Patrulater?, i va rspunde imediat nu. nvarea unui arbore de decizie plecnd de la un set S de exemple etichetate i mulimea P de proprieti se face dup algoritmul:
begin 1. if (toate elementele din S au aceeai etichet) then ntoarce un nod terminal cu eticheta respectiv else { 2. caut proprietatea p din P cu cel mai mare ctig de informaie (vezi 3.3) 3. creaz un arbore de decizie cu rdcina coninnd testul acelei proprieti 4. for 5. (fiecare repet de rezultat la pasul posibil 1 pentru al testului de acelei cu proprieti) { setul exemple valoarea corespunztoare a proprietii testate 6. leag subarborele rezultat la ramura curent } } 7. ntoarce arborele end

Elementul esenial este, evident, identificarea proprietii ce aduce cel mai mare ctig de informaie prin testarea ei n arborele de decizie.

3.3 Calculul ctigului de informaie Teoria informaiei (Shannon,1948) este baza matematic ce permite calculul coninutului de informaie al unui mesaj. Un mesaj poate fi privit ca un rspuns la o ntrebare I. Astfel, dac rspunsurile posibile sunt vi iar probabilitile lor de apariie sunt P(vi), coninutul de informaie al rspunsului la ntrebarea I este dat de formula:
I(P(v1), ..., P(vn)) = i=1 -P(vi) log2 P(vi)

la n

Pentru arborii de decizie vrem s aflm ns ctigul de informaie al unui rspuns la o ntrebare, comparativ cu celelalte ntrebri posibile. Pentru a calcula ctigul de informaie al unui test T se utilizeaz formula:
Ctig(T) = I(1-p(v1 )/|S|, , 1-p(vn )/|S|) - CostUlterior(T)

unde |S| este cardinalul mulimii de instane de antrenament, p(vi) numrul de instane pentru care rspunsul la ntrebarea I este vi , iar CostUlterior(T) reprezint cantitatea de informaie necesar pentru a finaliza arborele de decizie n cazul selectrii testului T la pasul curent.
CostUlterior(T) = i pi(vin )/|Si|) (|Si|)/(|S|) * I(1-pi(vi1 )/|Si|, , 1-

= 1 la nv

unde Si este mulimea de instane care au valoarea vi pentru proprietatea testat. 3.4 Probleme n utilizarea arborilor de decizie Algoritmul de nvare pentru arbori de decizie poate gsi proprieti nerelevante, dar regulate, ca fiind eseniale n etichetarea unei instane. Dac numrul de proprieti este mare, iar exemplele sunt insuficient de

mprtiate n spaiul problemei, algoritmul poate deduce c, de exemplu, culoarea neagr este semnificativ pentru a decide dac o figur geometric este patrulater. Aceasta problem se numete suprapunerea seturilor. O alta problem semnificativ este aceea a lurii unei decizii privind adugarea de noduri n arbore. Este posibil ca adugarea unui nou test n arbore s nu mbunteasc precizia sa de clasificare, sau chiar s o scad. O soluie la ambele probleme este folosirea unei metode de a direciona cutarea n mulimea de proprieti pentru a asigura identificarea celei mai directe ci spre soluia corect. n acest scop, unei proprieti i asociem i o valoare de relevan statistic pe baza creia determinm ansa ca relevana proprietii respective s fie independent de setul de instane pe care antrenm arborele. Astfel eliminm testarea oricrei proprieti cu probabilitate mare de a fi irelevant pentru scopul nvrii. Alt soluie este validarea ncruciat, o metod ce testeaz submulimi de instane pentru a vedea ct de bine ar fi clasificate folosind testul curent. Se realizeaz o medie a rezultatelor pentru testele verificate i media se folosete la selectarea testelor viitoare. O alt problem este necesitatea existenei unui set complet de proprieti pentru instanele problemei. Pentru clasificarea unei instane, arborele de decizie poate testa oricare din proprietile sale, deci nu putem folosi instane cu proprieti ale cror valori sunt necunoscute. Exist mai multe variante de a permite algoritmului s lucreze cu seturi incomplete de proprieti ale instanelor: putem da unei proprieti necunoscute o valoare pe baza valorilor luate n instane similare, sau putem chiar construi un arbore de decizie pentru a gsi o valoare pentru acea proprietate. Cea mai simpl metod este ns de a atribui acelei proprieti valoarea cea mai des ntlnit n setul de instane. Algoritmul de nvare pentru arbori de decizie a fost definit n forma iniial n (Quinlan,1983), unde sunt descrii un tip de arbori de decizie numii ID3. n acea form, proprietile luau doar valori booleene, rezultnd deci arbori binari de cutare. O extindere evident ar fi folosirea unor proprieti cu valori multiple, lucru fcut ntr-o form ulterioar a algoritmului (ID5 Utgoff,1988). ID5 mai adaug i construirea incremental a arborelui,

exemplele de intrare fiind tratate pe rnd, n urma fiecrui exemplu rezultnd un arbore de decizie ce va fi mbuntit de exemplele ulterioare. De asemenea, instanele propriu-zise sunt pstrate n frunzele arborelui i sunt folosite pentru a determina necesitatea adugrii unui nou nod de testare la acel nivel. 3.5 Inducerea abloanelor logice nvarea inductiv nseamn practic cutarea unui ablon descriptiv cu care s fie comparate instane noi ale problemei. Iniial, ablonul propus este vag, el fiind detaliat atunci cnd ntlnim o instan fals pozitiv (o instan incorect clasificat corect) sau fals negativ (o instan corect clasificat incorect). Cutarea instanelor clasificate incorect i corectarea ablonului se poate face n dou moduri: metoda ablonului prezent optim i metoda angajamentului minim. Metoda ablonului prezent optim (Mill, 1843) modific ablonul n cazul gsirii unei instane incorect clasificate dup metoda: dac instana este fals pozitiv, specializeaz ablonul pentru a nu mai acoperi acea instan prin renunarea la disjuncii sau adugarea de noi termeni; dac instana este fals negativ, generalizeaz ablonul prin adugarea de disjuncii sau renunarea la unii termeni; dac nu poate fi gsit un ablon valid, revin la optimul precedent. Punctul slab al acestei metode este numrul mare de teste necesare la fiecare modificare a ablonului, cci fiecare instan trebuie verificat din nou. Metoda angajamentului minim (Mitchell,1977) propune pstrarea tuturor abloanelor posibile ce sunt consistente cu instanele testate pn n momentul curent. Cu fiecare nou instan se elimin din spaiul versiunilor abloanele inconsistente cu acea instan. Algoritmul ce realizeaz acest lucru se numete algoritmul de nvare prin eliminarea candidailor (Mitchell,1982) i are forma:
begin

1.Iniializeaz G cu cel mai general concept din spaiu Iniializeaz S cu prima instan pozitiv din intrare 2.Pentru fiecare instan pozitiv p begin 3.terge toate instanele din G care nu se potrivesc cu p 4.Pentru fiecare sS, dac s nu se potrivete cu p, nlocuiete s cu cea mai specific generalizare care se potrivete cu p 5.terge din S toate instanele mai generale dect alta din S 6.terge din S toate instanele mai putin specifice dect alta din G end; 7.Pentru fiecare instan negativ n Begin 8.terge toate instanele din S care se potrivesc cu n 9.Pentru fiecare gG care se potrivete cu n, nlocuiete g cu cea mai general specializare care nu se potrivete cu n 10.terge din G toate instanele mai specifice dect alta din G 11.terge din G toate instanele mai specifice dect alta din S end; 12.Dac G=S i ambele conin o singur instan, atunci acea instan este conceptul cutat 13.Dac G i S sunt vide, atunci nu exist un concept care s acopere negative end toate instanele pozitive i nici una din cele

Mulimile G i S conin informaia att din instanele pozitive ct i din cele negative i nu mai este necesar ca ele s fie reinute separat. Algoritmul folosete G pentru a testa specificitatea conceptelor din S i S pentru a testa generalitatea conceptelor din G, cele dou mulimi definind astfel doua limite ntre care se va gsi ablonul optim, n caz c el exist.

Problema principal n identificarea oricrui ablon este sensibilitatea algoritmilor la instane neconsistente. Algoritmii nu au nici o posibilitate de a decide dac o instan de antrenament este etichetat corect, deci n cazul unei inconsistene va eua. Soluiile posibile sunt fie de a menine mai multe abloane posibile, fiecare consistent cu majoritatea instanelor, fie de a lua n considerare numai instanele statistic probabile. Complexitatea computaional Pentru p instane pozitive i n instane negative de antrenament, complexitatea de timp a nvrii prin metoda ablonului prezent optim este O(p*n), iar cea de spaiu O(p+n). Pentru metoda angajamentului minim, complexitatea de timp este O(sg(p+n)+s2p+ g2n) iar cea de spaiu este O(s+g), unde dimensiunile maxime pentru mulimile S respectiv G. 3.6 Reele neuronale Reelele neuronale au fost inspirate de modelul creierului biologic privit ca o reea uria n care uniti de calcul mici transmit semnale simple prin conectori ctre alte uniti din reea, n urma??? modelului format de conectori i a semnalelor transmise rezultnd raionamente inteligente. Modelul abstract al creierului biologic a fost numit reea neuronal (McCullogh Pitts 1943). O reea neuronal este format dintr-o mulime de noduri i conexiuni ntre noduri. Intrrile ntr-un nod pot veni fie din exteriorul reelei fie de la un alt nod din reea, iar ieirile pot merge n afara reelei sau pot intra n alt nod din reea. Fiecare conexiune are ataat un cost ce afecteaz semnalul transmis prin ea. nvarea unei reele se face prin ajustarea acestor costuri. Un neuron din reea, aa cum a fost definit iniial (McCullogh Pitts 1943) are forma: x1 x2
w1 w2

s i g sunt

F(net)

x3

w3

unde x1,x2,,xn sunt semnalele primite de neuron, w1,w2,,wn sunt costurile pentru fiecare semnal, net=I=1
la n

wixi iar f(net) este o funcie care

calculeaz ieirea din neuron (funcie de activare). Dac f(net) este mai mare dect un prag stabilit pentru reea, atunci neuronul transmite semnal mai departe. Exist dou tipuri de reele neuronale: reele cu flux unidirecional i reele recurente. O reea cu flux unidirecional este un graf orientat aciclic n care semnalele trec n aceeai direcie tot timpul. Reelele de acest tip sunt de obicei multistratificate, adic neuronii sunt grupai pe straturi care primesc semnale doar de la straturi precedente i transmit doar la straturi ulterioare din structura reelei. Reelele recurente permit cicluri, ceea ce mrete numrul i complexitatea problemelor ce pot fi reprezentate, dar n acelai timp face mai dificil analiza i evaluarea reelei. Exist dou tipuri de astfel de reele: reele Hopfield i maini Boltzmann. Reelele Hopfield au conectori bidirecionali cu costuri simetrice n ambele direcii, semnalele trimise de i ctre neuroni sunt 1 sau 1, iar funcia de activare este sign(net). Mainile Boltzmann au conectori unidirecionali iar funcia de activare este calculat continuu pe baza valorilor net la fiecare modificare a semnalelor. Problema n utilizarea reelelor neuronale pentru nvare este stabilirea topologiei iniiale a reelei. Topologia este foarte important att n privina a ceea ce poate fi reprezentat de reea ct i n dificultatea nvrii unui anumit concept. Exist doua direcii n care se poate merge pentru a rezolva aceasta problem: fie se pleac de la o reea complex i se aplic anumite metode pentru a determina ce conexiuni pot fi eliminate fr ca reeaua s piard din performan, fie se pleac de la o reea minim dezvoltat i se adaug noduri i conexiuni dup un sistem similar celui folosit la inducerea arborilor de decizie. 3.7 Perceptronul

Perceptronul este un model de reea neuronal unistratificat cu flux unidirecional. Semnalele de intrare sunt fie de tip excitator (se folosesc la calculul valorii net), fie de tip inhibator (dac pe un conector inhibator se primete un semnal, nodul ce l primete transmite semnal negativ, indiferent de valoarea f(net)). Perceptronii sunt capabili s nvee doar funcii liniar separabile, adic funcii n a cror reprezentare n spaiu putem separa oricare doua clase de valori ale funciei printr-un singur plan. Perceptronii nva prin ajustarea costurilor pe fiecare conector. Fie P i N mulimi de instane pozitive, respectiv negative de antrenament. Algoritmul de nvare pentru un perceptron este: begin 1.alege w=(w1,w2,,wn) iniial oarecare 2.ct timp pentru w perceptronul nu calculeaz corect o instan din P sau N begin 3.alege I=(x1,x2,,xn) o instan din P sau N 4.dac IP iar f(net)<=prag atunci 5. pentru i=1 la n 7. pentru i=1 la n End; End unde c este o constanta numit constant de nvare ce stabilete fineea pailor ce se fac spre o form corect a perceptronului. 3.8 Reele multistratificate de perceptroni Din pcate limitarea perceptronului de a nu fi capabil s nvee dect funcii liniar separabile a fcut ca interesul n el s scad, ns la mijlocul anilor 80 au fost dezvoltate reele multistratificate de perceptroni, ce elimin acest dezavantaj. wi=wi+c*xi wi=wi-c*xi 6.if IN iar f(net)>prag atunci

Metoda standard de nvare folosind o reea neuronal multistratificat unidirecional se numete retropropagare (Bryson si Ho 1969). O reea de acest tip are un strat de intrare, ce conine noduri n care toate intrrile provin din exteriorul reelei, un strat intern (ascuns) i un strat de ieire, n care ieirile tuturor nodurilor pleac n exteriorul reelei. Algoritmul de retropropagare, pentru w, P si N definite ca la nvarea perceptronului, are forma:
Begin 1.alege I=(x1,x2,,xn) din P sau N 2.dac D(I)O(I) 3.pentru fiecare nod de pe nivelul de ieire 4.wi,j= wi,j-c*(D(I)-O(I))*O(I)*(1-O(I))* xi,j 5.pentru nodurile din celelalte straturi luate n sensul invers al fluxului n reea 6. wi,j= wi,j-c*O(I)*(1-O(I))*(-I* wi,j)* xi,j End; 7.repet de la pasul 1 de k ori End

unde c este constanta de nvare, D(I) si O(I) sunt ieirea ateptat respectiv ieirea real din reea pentru instana I, iar I=(D(i)-O(i))*O(i)*(1-O(i)), unde D(i) i O(i) sunt ieirea dorit i cea ateptat din nodul i. Numrul k de repetri ale algoritmului se stabilete anterior. Dac numrul de noduri interne este prea mare comparativ cu numrul instanelor de antrenament, algoritmul nu va generaliza suficient reeaua, iar dac numrul de noduri interne este prea mic, reeaua poate eua n gsirea unei configuraii compatibile cu setul de instane de antrenament. O reea multistratificat unidirectional cu un strat intern poate reprezenta orice funcie continu, iar o reea multistratificat cu dou straturi interne poate reprezenta orice funcie (Cybenko 1989). Complexitatea computaional

O reea neuronal are nevoie de 2n/n noduri interne pentru a reprezenta o funcie boolean de n variabile. Pentru m instane de antrenament i w conectori, fiecare pas (verificare i corectare) are complexitatea n timp O(m*w). 3.9 nvarea Bayesian nvarea n modelul Bayesian presupune meninerea unor variante posibile ale ablonului, fiecare variant fiind evaluat prin calcularea probabilitii ca ea s clasifice corect o instan viitoare. Aceast probabilitate se calculeaz folosind rezultatele anterioare ale clasificrilor fcute de ablonul respectiv. La un moment dat, trebuie ns ca cel puin o parte din abloanele ipotetice s fie eliminate ca fiind posibile soluii. Acest lucru se face prin stabilirea unui ablon ca fiind cel mai probabil i eliminarea tuturor celorlalte, sau cel puin a celor cu o probabilitate considerabil mai mic. Fie HMAX clasa de abloane cu probabilitatea maxim. Notm acea probabilitate cu P(HMAX,D), unde D este mulimea de instane. Pentru a identifica probabilitatea maxim, trebuie s calculm probabilitile tuturor ipotezelor curente, folosind regula lui Bayes: P(Hi | D) = [P(D | Hi) x P(Hi)] / P(D) unde Hi este o clasa de abloane care clasifica similar instanele din D. Cum P(D) nu poate fi influenat de algoritm, singura metod de mbuntire a probabilitii de corectitudine este fie mrirea ansei ca setul de instane s duc la gsirea unui ablon aproximativ corect (P(D | Hi)), fie mrirea ansei ca un ablon s fie aproximativ corect (P(Hi)). Acest model de a forma o reea de abloane posibile se numete nvarea folosind o reea de fapte. n funcie de structura reelei i de variabilele interne, putem diferenia patru tipuri de reele de fapte:

reele n care structura este cunoscut i variabilele vizibile, n care partea nvabil este cea a probabilitilor condiionate ale abloanelor;

reele cu structura necunoscut, dar variabile vizibile, n care nvarea poate reconstrui topologia reelei; reele cu structura cunoscut i variabile ascunse, care sunt analoage reelelor neuronale; reele cu structura necunoscut i variabile ascunse, pentru care nu exist nici o metoda de nvare.

3.10 Comparaie ntre reelele neuronale i reelele de fapte (belief networks) Comparaia ntre cele doua modele de reele de nvare poate fi fcut la nivelul reprezentrii, a sistemului de inferen i a sistemului de nvare. La nivelul reprezentrii, ambele tipuri de reele se bazeaz pe atributele instanelor. Ambele pot lucra cu intrare discret sau continu. Diferena principal este aceea c n reelele de fapte reprezentarea unui ablon este localizat, n timp ce n reelele neuronale reprezentarea este distribuit n toat reeaua. Reelele de fapte evalueaz un ablon att la nivelul rezultatelor sale ct i la nivelul probabilitii sale n raport cu alte abloane. Reelele neuronale nu pot face dect o evaluare a rezultatelor unui ablon. nvarea n reelele neuronale se face n timp liniar, n reele de fapte se face n timp exponenial. ns o reea neuronal are nevoie de spaiu exponenial mai mare dect cel necesar unei reele de fapte pentru a reprezenta acelai lucru. n reelele de fapte este mai uor s adugm sistemului de nvare o baza iniial de cunotine. De asemenea, ansa ca o reea de fapte s gseasc un concept nvabil PAC este mai mare, deoarece reprezentarea abloanelor este localizat, deci ele sunt influenate de mai puini factori legai de topologia reelei.

3.11 nvarea prin ncurajare Spre deosebire de metodele de nvare supervizat prezentate mai sus, nvarea prin ncurajare se face fr ca algoritmul de nvare s compare direct ablonul obinut cu rezultatele corecte pentru exemplele de antrenament. n schimb este implementat o modalitate de a rsplti sau pedepsi sistemul n funcie de ct de mult se apropie de rezultatul corect. Acest feedback este singura metod a sistemului de nvare de a se regla pentru mbuntirea rezultatelor sale. Acest lucru face nvarea prin ncurajare mai dificil, cci sistemul nu mai primete informaii directe despre cum i ct s se corecteze, ci doar tie dac se apropie sau se deprteaz de rezultatul optim. De asemenea, feedback-ul poate veni doar uneori, nu neaprat la fiecare schimbare n ablonul ipotetic, deci sistemul trebuie s aib o modalitate de a direciona i impulsiona singur schimbarea pentru mbuntirea ablonului. Exist dou tipuri de informaie ce pot face parte din feedback-ul primit de sistem: informaie utilitar, prin care sistemul nva utilitatea unei anumite stri n care se afl i care permite sistemului s caute acele stri care maximizeaz ansa de a gsi o soluie optim; valoarea unei aciuni, adic sistemul afl potenialul unei aciuni de a fi sau nu util ntr-o anumit stare, practic potenialul unei aciuni de a apropia sistemul de gsirea unei soluii optime. nvarea prin ncurajare este util n situaiile n care nu dispunem de un set de antrenament, nu putem identifica cu precizie instane valide sau eronate, fie din cauza complexitii reprezentaionale, fie din cauza lipsei de informaii sigure. Dispunem ns de capacitatea de a aprecia corectitudinea unei soluii obinute de sistem, fie chiar i doar comparativ cu celelalte soluii. 3.12 nvarea pasiv ntr-un domeniu cunoscut de stri

Dac furnizm unui sistem de nvare un domeniu de stri prin care poate trece mpreun cu un model ce calculeaz ansa de a trece dintr-o stare n alta, sistemul poate nva dup un set de secvene de antrenament formate dintr-un ir de stri consecutive n urma crora se obine o rsplat cunoscut, fie pozitiv sau negativ. Scopul sistemului devine astfel nvarea utilitii fiecrei stri posibile. Presupunerea la baza nvrii utilitii unei stri dintr-o secven este aceea c rsplata obinut dup o secven este rezultatul sumei utilitilor strilor ce compun secvena, adic suma pozitiv a utilitilor strilor favorabile adunat cu suma negativ a utilitilor strilor nefavorabile d un numr pozitiv atunci cnd secvena este rspltit, i un numr negativ cnd secvena este pedepsit. Exist trei modaliti ca un sistem s nvee utilitatea strilor sale: nvarea naiv, nvarea adaptiv dinamic i nvarea dup diferena temporal. nvarea naiv este reprezentat de metoda minimului de stri negative (Least Mean Squares - LMS Widrow si Hoff 1960). Metoda calculeaz utilitatea unei stri ca fiind media utilitii secvenelor n care ea apare. Aceast metod minimizeaz ntr-adevr numrul de stri defavorabile prin care ar trebui s treac sistemul pentru a ajunge la un ablon satisfctor, ns nu minimizeaz numrului de stri prin care ar trebui s treac i nici nu garanteaz gsirea celui mai optim ablon. Utilitatea unei stri gsit prin nvarea naiv este departe de utilitatea real, pentru c n calculul ei nu se ine cont de faptul c utilitatea unei stri este dependent i de suma ponderat de probabiliti ale utilitilor strilor ulterioare. Utilitatea real a strii i este calculat dup formula: U(i) = R(i) + j MijU(j) unde R(i) este rsplata strii i i Mij este probabilitatea trecerii din starea I n starea j. nvarea adaptiv dinamic este reprezentat de orice metod de nvare prin ncurajare care calculeaz utilitile strilor sistemului printr-un

algoritm dinamic, dup formula de mai sus. Dei este o metod ce d rezultate foarte bune, ea prezint dezavantajul c este foarte costisitoare n timp, cci cutarea n spaiul strilor este de ordin exponenial. nvarea dup diferena temporal folosete diferena ntre utilitile strilor succesive dintr-o secven pentru a le ajusta la fiecare trecere prin ele. Ideea de baza este de a folosi tranziiile observate pentru a ajusta utilitatea strii i pentru a se potrivi cu utilitatea strii succesoare j folosind ecuaia: U(i) <- U(i) + c(R(i) + U(j) - U(i)) unde c este o constant de nvare. Aceast metod funcioneaz cu att mai bine cu ct numrul de secvene de antrenament n care apare fiecare stare este mai mare. Constanta c este stabilit anterior nvrii, funcie de dimensiunea setului de antrenare. Diferena principal ntre nvarea adaptiv dinamic i nvarea dup diferena temporal este c nvarea dup diferena temporal ajusteaz utilitatea unei stri n conformitate cu un succesor iar nvarea adaptiv dinamic ajusteaz utilitile strilor n conformitate cu toi succesorii lor, n funcie de probabiliti. O ajustare n cazul nvrii adaptiv dinamice se propag n ntreaga list de utiliti, pe cnd n cazul nvrii dup diferena temporal o ajustare se face numai la nivelul unei tranziii locale. Pentru a diminua efectul de propagare, un sistem de nvare adaptiv dinamic poate adopta o regula euristic de genul: ajusteaz utilitile doar strilor pentru care utilitile succesorilor cei mai probabil au fost mult modificate n pasul curent. 3.13 nvarea pasiv ntr-un domeniu necunoscut de stri Deoarece nvarea dup diferena temporal i nvarea naiv nu in cont de modelul M de calcul al probabilitilor de trecere de la o stare la alta, ele funcioneaz la fel i n cazul unui domeniu de stri necunoscut.

Chiar dac nu cunoatem modelul M, dac domeniul de stri este suficient de puin complex, putem estima un model M calculnd probabilitatea ca din starea i s trecem n starea j ca fiind Sij/Si, unde Sij este numrul de tranziii de la i la j iar Si numrul total al tranziiilor de la i la alt stare. 3.14 nvarea activ Diferena dintre un sistem pasiv i unul activ de nvare este aceea c sistemul pasiv folosete o strategie predefinit pentru a decide ce pai s urmeze, iar un sistem activ decide ce urmeaz s fac funcie de cum estimeaz c va fi afectat rezultatul nvrii. Pentru a reprezenta un sistem activ de nvare, unui domeniu de stri i atam modelul M ce nu va calcula probabilitatea de trecere din starea i n starea j, ci probabilitatea de trecere din starea i n starea j n urma aciunii a. Utilitatea unei stri va fi calculat dup formula: U(i) = R(i) + maxa * jMaijU(j) Mai este util definirea unei funcii de calcul a utilitii aciunii a n starea i. Putem calcula acest lucru dup formula: Ua(i) = maxa Q(a, i) unde Q(a,i) reprezint valoarea efecturii aciunii a n starea i rezultat n urma unei secvene de antrenament n care are loc acea aciune. Practic un sistem activ de nvare i auto-evalueaz aciunile posibile la fiecare pas de execuie, selectnd cele care mresc probabilitatea atingerii unei stri optime. 3.15 Algoritmii genetici Algoritmii genetici sunt inspirai de mecanismul seleciei naturale. n natur, organismele care nu sunt adaptate mediului nconjurtor nu mai evolueaz i dispar n timp, iar cele adaptabile continu sa se dezvolte. De

asemenea, o generaie a oricrui organism tinde s pstreze trsturile predecesorilor la care mai adaug eventual trsturi noi dezvoltate. Algoritmii genetici simuleaz aceste comportamente. Un algoritm genetic are un mecanism de a selecta dintr-o populaie de abloane pe cele mai adaptate pentru a le dezvolta ulterior, renunnd la celelalte. Un individ este reprezentat printr-un ir de bii ce codific atributele sale definitorii. Fiecare element component al acelui ir de bii se numete gen . Funcionarea unui algoritm genetic const n trecerea prin mai multe generaii ale unei populaii iniiale. La fiecare pas algoritmul selecteaz indivizii cu probabilitatea cea mai mare de a fi optimi. Indivizii astfel selectai sunt folosii pentru crearea generaiei viitoare folosind pri din codul lor de gene pentru a forma alte iruri de gene ce definesc ali indivizi. Algoritmul mai atribuie i o ans ca la fiecare nou cod de gene format s aib loc o mutaie ce va modifica la ntmplare unul sau mai muli bii. Avantajul unui algoritm de acest tip este c nu necesit nici un fel de cunotine anterioare pentru a rezolva orice fel de problem nvabil, dar rezolvarea dureaz mai mult dect dac am folosi alte metode. Algoritmii evolutivi sunt o form mai avansat a algoritmilor genetici n care un individ reprezint o structur mai complex, cum ar fi o secven de program, iar formarea de noi indivizi se face dup metode mai elaborate. Sistemele de clasificare sunt algoritmi genetici care dezvolt reguli de clasificare a unor instane. Fiecrei reguli i se atribuie un cost i are un set de alte reguli ca condiii i alt set ca rezultate. La fiecare pas, se selecteaz regulile ce pot fi aplicate n starea curenta a sistemului, i se alege cea care va fi aplicat funcie de costul sau i de relaiile sale cu celelalte reguli. Costurile regulilor sunt ajustate n funcie de contribuia lor la atingerea obiectivului sistemului de clasificare. 3.16 nvarea bazat pe cunotine Metodele de nvare prezentate mai sus se bazeaz pe generalizarea unui set de instane pentru a forma un concept. Locul si modul n care nvarea generalizeaz un ablon este ales numai funcie de regularitile

identificate n setul de instane de antrenament. Aceste metode nu in cont de semantica acelor instane, ci numai de reprezentarea lor formal. nvarea care folosete o surs anterioar de cunotine referitoare la domeniul problemei pentru a ghida formarea unui concept nou se numete nvare supervizat deductiv sau nvare bazat pe cunotine. Avantajele acestei metode de nvare sunt semnificative: setul de instane de antrenament poate fi mult redus, iar ansa de a ajunge la un ablon corect este mai mare, datorit eliminrii unor generalizri fcute pe baza unor similariti aparente, dar false. abloanele posibile nu sunt extrase din regulariti identificate n instanele de antrenament, ci din cunotinele anterioare ce explic mcar una din clasificrile cunoscute. nvarea deductiv nu produce nici o regul nou ce nu poate fi dedus din baza de cunotine. Orice rezultat al unei nvri deductive ar putea fi deci obinut i printr-un mecanism de inferen pe baza regulilor cunoscute. Utilitatea nvrii deductive st ns n faptul c este o metod mult mai rapid de a extrage concepte din reguli cunoscute, cci ofer un mecanism de a direciona cutarea spre conceptul dorit. 3.17 nvarea bazat pe explicaii nvarea bazat pe explicaii pleac de la o baz de cunotine anterioare despre domeniul problemei i caut s gseasc explicaia clasificrilor fcute n instanele de antrenament. Cnd o explicaie este gsit, ea este generalizat pentru a include ct mai multe instane similare. Fie baza de cunotine urmtoare: rotund(X) uor(X) => minge(X) mic(X) => uor(X) fr_coluri(X) => rotund(X) Din aceast baz de cunotine i din instana de antrenament: culoare(obj,rou) mic(obj) rotund (obj) => minge(obj)

dorim s obinem un ablon pentru a identifica obiecte cu proprietatea minge(obj). Un algoritm de nvare bazat pe explicaii va gsi justificarea instanei pe baza cunotinelor, i anume: mic(obj) => uor(obj) uor(obj) rotund(obj) => minge(obj) rotund (obj) Prin generalizare, va fi format ablonul: mic(X) rotund(X) => minge(X) Forma general a algoritmului de nvare bazat pe explicaii, pentru P premiza si C concluzia unei reguli din baza de cunotine, i S ablonul curent propus, este: Begin 1. Ts = cel mai general unificator al P*S si C*S 2. S = S*Ts 3. Tg = cel mai general unificator al P*G si C*G 4. G = G*Tg 5. daca P si C sunt compatibile cu o instan de antrenament Begin 6.Ts = cel mai general unificator al P*S si C*S 7.S = S*Ts End; End unde G este lista substituiilor de generalizare (nlocuire a unei constante cu o variabil n premiza unei reguli). 3.18 nvarea bazat pe relevan

nvarea bazat pe relevan este o form de nvare automat bazat pe o baza de cunotine ce conine informaii privind relevana unor anumite proprieti ale unei instane n privina apartenenei sale la conceptul int. De exemplu, proprietatea unui obiect de a fi rotund are o relevan mare n privina apartenenei sale la conceptul minge, n schimb proprietatea sa de a avea culoarea roie este irelevant. Aceasta metod presupune ca baza de cunotine s conin dependene funcionale care s contribuie la definirea conceptului. Algoritmul de nvare va ncerca, pe aceast baz, s gseasc implicaii consistente cu proprietile cunoscute ale instanelor de antrenament. 3.19 nvarea inductiv bazat pe cunotine nvarea inductiv bazat pe cunotine folosete regulile cunoscute i instanele de antrenament pentru a ncerca s formeze reguli noi care s explice proprietile care nu sunt justificabile pe baza cunotinelor anterioare. De exemplu, pentru baza de cunotine: rotund(X) uor(X) sare(X) => minge(X) mic(X) => uor(X) i instanele: rotund(obj1) mic(obj1) elastic (obj1) sare (obj1) => minge(obj1) rotund(obj2) uor(obj2) elastic (obj2) sare (obj2) => minge(obj2) mic(obj3) sare (obj3) => nu_minge(obj3) un algoritm de nvare inductiv ar observa concordana ntre proprietile unui obiect uor, elastic i sare. Regula obinut ar fi: uor(X) elastic (X) => sare(X)

Principalele variante ale nvrii inductive bazate pe explicaii sunt rezoluia invers i nvarea top-down. Rezoluia invers se bazeaz pe faptul c dac un concept poate clasifica o instan doar pe baza setului de cunotine atunci aceast clasificare se poate demonstra printr-o rezoluie. Scopul este de a inversa rezoluia pentru a afla ipotezele iniiale de la care a plecat. Astfel, pentru un rezolvent C sunt obinute dou clauze C1 i C2 din care, pe baza regulilor cunoscute, se poate obine C. Clauzele finale obinute astfel devin premisele unei reguli a crei concluzie este C. nvarea top-down este o generalizare a arborilor de decizie pentru a acoperi logica clasic. Ideea este de a pleca cu o regul foarte general, care va fi specializat pentru a acoperi doar datele cunoscute. Proprietile unei instane sunt reprezentate ca literali, iar ablonul este un set de clauze ce simuleaz un arbore de decizie. Plecnd de la un concept-int i un set de instane de antrenament, un algoritm de nvare top-down construiete o clauz Horn, iniial vid, care clasific o instan n conceptul int. La aceast clauz se adaug treptat literalii care vor mbunti cel mai mult acurateea clasificrilor. Algoritmul continu pn la obinerea unei clauze care este satisfcut de o parte a instanelor pozitive de antrenament i de nici o instan negativ de antrenament. Clauza apoi este generalizat pentru a acoperi toate instanele pozitive de antrenament. Alegerea literalilor ce urmeaz s fie adugai se face pe baza unor reguli euristice. 3.20 Dezavantajele nvrii supervizate Toate metodele de nvare prezentate n seciunile precedente presupun existena unui set de instane de antrenament despre care tim dac aparin sau nu unui concept int. Ele sunt folosite pentru a verifica i direciona modificarea ablonului nvat de algoritm. Necesitatea existenei acestor instane este punctul slab al nvrii supervizate, cci ele introduc o serie de probleme, cum ar fi:

Problema limbajului de reprezentare: trebuie gsit o modalitate de a reprezenta instanele i conceptul-int ntr-o form care s permit verificarea, generalizarea i specializarea unor abloane. Un limbaj simplu de reprezentare poate fi gsit relativ uor pentru orice domeniu, dar el poate duce la spaii foarte mari de cutare a conceptului-int. Inconsistena datelor: instanele de antrenament i eventualele cunotine anterioare ale sistemul pot fi inconsistente cu existena unui concept int. Erorile pot proveni att din clasificarea instanelor ct i din ncapacitatea limbajului de reprezentare ales de a descrie conceptul int. Descrierea conceptului int: un algoritm de nvare poate sa nu gseasc nici un ablon corespunztor conceptului int sau poate s gseasc mai multe abloane corespunztoare. n cazul identificm mai multor abloane posibile, este probabil ca ele s fie inconsistente ntre ele, deci insuficient de generale. 4. nvarea nesupervizat nvarea nesupervizat elimin complet necesitatea unor instane de antrenament, deci i problemele legate de acestea. Scopul nvrii nesupervizate nu este definit anterior ca un concept int, algoritmul fiind lsat singur s identifice concepte posibile. n general, nvarea nesupervizat presupune existena unor instane neclasificate, un set de reguli euristice pentru crearea de noi instane i evaluarea unor concepte deduse, eventual un model general al spaiului de cunotine n care se gsesc aceste instane. Un algoritm de nvare nesupervizat construiete concepte pentru a clasifica instanele, le evalueaz i le dezvolt pe cele considerate interesante de regulile euristice. n general, concepte interesante sunt considerate cele care acoper o parte din instane, dar nu pe toate. nvarea nesupervizat permite identificarea unor concepte complet noi plecnd de la date cunoscute. ncercri de a aplica acest tip de nvare n

cercetarea tiinific au dus la rezultate semnificative. Astfel AM (Davis i Lenat 1982) pleca de la un set de concepte de baz din teoria mulimilor, un set de operaii de creare a noi concepte prin modificarea i combinarea celor existente, i un set de reguli euristice pentru a alege conceptele interesante. Algoritmul a descoperit numerele naturale, conceptul de numr prim, precum i o serie de alte concepte din teoria numerelor. BACON (Langley 1987) a fost o ncercare de a dezvolta un model computaional de dezvoltare a unor legi cantitative tiinifice noi. Folosind date privind relaia ntre distanele dintre planete i soare i perioada lor de revoluie, BACON a re-descoperit legile lui Kepler privind micarea planetelor. Totui aceste ncercri s-au dovedit limitate n rezultate. Principalul factor ce limiteaz numrul i relevana conceptelor nvate de acest gen de algoritmi este faptul c ele nu pot nva noi metode de a crea i evalua concepte. Pentru a obine rezultate mai relevante, ar trebui inti descris un set mult mai complex de operaii pentru crearea de noi concepte, precum i nite reguli euristice mai flexibile pentru evalua aceste concepte. 4.1 Identificarea claselor de instane Domeniul n care nvarea nesupervizat s-a dovedit ns mai util este cel al identificrii automate de clase n mulimi neclasificate de instane. Aceast problem presupune existena unei mulimi de obiecte negrupate i a unor mijloace de a gsi i msura similariti ntre aceste obiecte. Scopul unui algoritm de identificare a unor clase de obiecte este de a grupa obiectele ntro ierarhie de clase dup criterii cum ar fi maximizarea similaritii obiectelor din aceeai clas. Ierarhia de clase este reprezentat de obicei ca un arbore, fii unui nod reprezentnd categorii distincte dar incluse n categoria printe. n privina nvrii automate aplicate la identificarea claselor de instane exista dou abordri principale: taxonomia numeric i gruparea conceptual. Taxonomia numeric se bazeaz pe reprezentarea unui obiect ca o colecie de atribute cuantificabile. Dac reprezentm un obiect ca un vector numeric de proprieti, atunci similaritatea dintre dou obiecte cu n proprieti reprezint distana dintre reprezentrile vectorilor respectivi n spaiul

n-dimensional. Un algoritm de clasificare bazat pe taxonomia numeric pentru mulimea de obiecte O are forma: Begin 1. selecteaz din O perechea (X,Y) de obiecte cu cel mai mare grad de similaritate 2. elimin X i Y din O 3. formeaz o clas nou definit de f(X,Y), unde f este de obicei funcia medie aritmetic 4. ct timp mai exist un obiect din O pentru care gradul de similaritate cu clasa nou definit este mai mare de un prag S Begin 5.adaug obiectul la clas 6.elimin obiectul din O End; 7. repet de la pasul 1 pn cnd O este mulime vid End Algoritmul poate fi extins i la obiecte reprezentate ca seturi de simboluri i nu vectori numerici. Singurul obstacol este gsirea unei metode de a msura similaritile dintre obiecte. O soluie simpl este de a calcula gradul de similaritate ca fiind proporia dintre numrul de proprieti comune i numrul total de proprieti. Cu ct aceast proporie va fi mai aproape de 1, cu att obiectele respective vor avea ansa mai mare de a aparine aceleiai clase. Dezavantajul acestei metode de clasificare st n faptul c nu ine cont de rolul semantic al proprietilor obiectelor. De exemplu, pentru obiectele: obiect1 = (rotund, rou, mic) obiect2 = (ptrat, rou, mic) obiect3 = (rotund, verde, mare)

va fi gsit un grad de similaritate mai mare ntre obiect1 si obiect2 dect ntre obiect1 i obiect3, dei proprietatea mai relevant ar trebui s fie rotund i nu rou i mic. Aceast metod formeaz deci clase pe baza apropierii de suprafa dintre obiecte, i nu folosete nici un mecanism de a diferenia proprietile n funcie de relevana lor n clasificare. Un alt dezavantaj const n faptul c aceast metod de clasificare nu construiete definiia conceptelor pe baza crora clasific obiectele. Clasele sunt reprezentate extensional (ca o enumerare de obiecte) i nu intensional, ca un ablon de recunoatere a obiectelor fiecrei clase. Gruparea conceptual rezolv aceast problem prin folosirea unor metode de nvare automat pentru a defini concepte plecnd de la o baz de cunotine asupra domeniului clasificrii. Forma general a unui algoritm de nvare pentru clasificarea conceptual, aa cum a fost descris n CLUSTER/2 (Michalski si Stepp 1983), este: Begin 1. selecteaz k obiecte din O (la ntmplare sau folosind o funcie de selecie) 2. pentru fiecare obiect selectat, folosind obiectul ca instan pozitiv i celelalte obiecte selectate ca instane negative, construiete o definiie general a conceptului clasei construite n jurul obiectului selectat 3. calsific toate obiectele din O folosind definiiile claselor obinute 4. generalizeaz definiia fiecrei clase att timp ct obiecte din celelalte clase nu sunt acoperite de aceast definiie 5. folosind o metod numeric, caut elementul cel mai apropiat de centrul fiecrei k clase formate 6. pentru aceste k elemente repet paii 1-5 pn la formarea unor clase satisfctoare 7. dac nu au fost obinute clase satifctoare i nu se observ mbuntiri dup cteva repetri ale pailor 1-5, selecteaz alte k elemente ct mai departate de centrele celor k clase End 4.2 Structura cunotinelor taxonomice

Algoritmii de nvare supervizat i metodele de clasificare prezentate mai sus definesc o clas printr-o serie de atribute necesare i suficiente pentru apartenena la acea clas. Dei eficient n multe situaii, aceast definiie nu permite o clasificare flexibil i structurat aa cum ntlnim n conceptele umane. De exemplu, un om poate recunoate un obiect ca fiind un exemplu mai bun al unei categorii, iar alt obiect un exemplu mai prost. O vrabie este un exemplu mai bun al conceptului pasre dect un pinguin. Aceast difereniere nu este permis de definiia clasic a unei clase. Teoria asemnrii familiale (Wittgestein 1953) d o definiie mai apropiat de cea uman pentru o clas. Astfel, o clas este definit de sistemul complex de similariti ntre membrii ei, nu de o serie de atribute necesare i suficiente pentru apartenena la acea clas. Aceast definiie permite ca membrii unei clase s nu aib nici o proprietate comun. Un exemplu ar fi cel al clasei sport, ai crei membri difer prin numrul de juctori, regulile de joc, precum i alte proprieti, totui clasa este bine definit si neambigu. Clasificrile umane mai difer de cele formale i prin identificarea unor clase de baz mult mai relevante n clasificare dect generalizrile sau specializrile lor. Conceptul autoturism este mai util n descrierea unui obiect dect generalizarea sa vehicul sau o specializare a sa cabriolet. n spatele unui astfel de concept de baz sunt mai multe informaii recunoscute de un clasificator uman, dar nu i de un sistem automat de clasificare. Orice metod ce i propune s identifice clase noi de obiecte trebuie s in cont de mecanismul clasificrii umane. COBWEB (Fisher 1987) este un algoritm de clasificare ce i propune s se apropie de modelul uman. COBWEB recunoate clase de baz i grade de apartenen la clase. COBWEB este un algoritm de nvare incremental ce definete un numr optim de clase plecnd de la un set de instane neclasificate. Clasele sunt reprezentate printr-un set de proprieti, fiecare valoare posibile a unei proprieti avnd ataat probabilitatea P(pi=vij | ck) ca proprietatea pi va avea valoarea vij pentru un obiect aparinnd clasei ck.

Atunci cnd primete o instan nou, COBWEB consider utilitatea plasrii instanei ntr-o clas existent sau a crerii unei noi clase plecnd de la acea instan. Criteriul folosit pentru evaluarea calitativ a unei clasificri se numete utilitatea claselor (Gluck i Corter 1985). Acest criteriu ncearc sa maximizeze att probabilitatea ca obiectele din aceeai categorie s aib valori comune pentru o proprietate ct i probabilitatea ca obiecte din categorii diferite s aib valori diferite ale aceleiai proprieti. Utilitatea claselor se calculeaz pentru toate clasele ck , toate proprietile pi si toate valorile posibile vij ale acelei proprieti, ca: kij P(pi=vij) P(pi=vij | ck) P(ck | pi=vij) Maximizarea acestei sume nseamn mbuntirea modului n care sunt construite clasele. Algoritmul COBWEB este: Cobweb(Nod, Instan) Begin 1. dac Nod este nod frunz Begin 2. creaz doi fii ai nodului Nod, F1 i F2 3. iniializeaz probabilitile din F1 cu cele din Nod 4. iniializeaz probabilitile din F2 cu cele din Instan 5. adaug Instan la Nod, modificnd corespunztor probabiltile End; altfel Begin 6. adaug Instan la Nod, modificnd corespunztor probabilitile 7. pentru fiecare descendent D al Nod, calculeaz utilitatea claselor obinute prin includerea Instan n D 8. fie S1 scorul obinut de cel mai bun set de clase D1 9. fie S2 scorul obinut de al doilea mai bun set de clase D2

10. fie S3 scorul obinut dac am plasa Instan ntr-o clas nou 11. fie S4 scorul obinut dac am reuni D1 i D2 ntr-un set de clase 12. fie S5 scorul obinut dac am nlocui D1 cu fii si End 13. dac S1 este cel mai bun scor 14. Cobweb(D1, Instan) altfel 15. dac S3 este cel mai bun scor 16. iniializeaz probabilitile din noua clas cu cele din Instan altfel 17. dac S4 este cel mai bun scor Begin 18. fie Dn setul de clase obinut prin reunirea D1 i D2 19. Cobweb(Dn, Instan) End; altfel 20. dac S5 este cel mai bun scor Begin 21. nlocuiete D1 cu fii si 22. Cobweb (Nod, Instan) End; End Algoritmul face o cutare n spaiul taxonomiilor posibile folosind utilitatea claselor pentru a evalua i selecta seturile posibile de clase. Iniial, pleac cu o singur clas cu probabilitile primei instane primite. Pentru fiecare instan ulterioar, algoritmul parcurge arborele de clase (format iniial dintr-o singur clas) i evalueaz cel mai bun pas, dintre variantele: adaug o noua clas format din instana nou adaug instana nou la clasa existent la care se potrivete cel mai bine

reunete dou clase existente n una singur i adaug instana la clasa rezultat nlocuiete o clas existent cu fii ei i adaug instana la clasa rezultat la care se potrivete cel mai bine.

COBWEB este un algoritm eficient ce produce taxonomii cu un numr rezonabil de clase. Prezint tendina de a grupa instane n clase de baz, i datorit utilizrii probabilitilor, accept noiunea de grad de apartenen la o clas. 5. Concluzii nvarea automat tradiional se bazeaz pe un model conceptual raional al lumii fizice. Pe baza acestui model s-au obinut structuri de reprezentare tot mai complexe, strategii de cutare mai eficiente i progrese semnificative att n crearea unor sisteme ce simuleaz aspecte ale inteligenei biologice, ct i n nelegerea modului n care funcioneaz inteligena uman. Ideea unui model conceptual raional al lumii fizice se bazeaz ns pe tradiia filozofic raionalist, care ns nu modeleaz i felul n care raioneaz inteligena biologic. Inteligena uman are la baz att raionamente logice i tiinifice ct i raionamente empirice, eseniale mai ales n interpretarea necunoscutului. Acest lucru a dus la crearea de noi metode de modelare a inteligenei, cum ar fi reelele neuronale i algoritmii genetici, sau la includerea unor raionamente empirice similare celor umane n algoritmi de nvare mai tradiionali. Rezultatele semnificative date de aplicarea acestor noi idei promit crearea unor sisteme tot mai inteligente, pn la crearea primei inteligene artificiale reale. Probabil, prima inteligen artificial veritabil nu va fi creat de programatori umani, ci de un sistem artificial ce va nva s fie inteligent observnd instanele date de raionamentele umane. Metodele nvrii automate au devenit instrumente de baz n implementarea sistemelor complexe de inteligen artificial. Exist numeroase centre de cercetare i conferine anuale avnd ca principal domeniu dezvoltarea i evaluarea metodologiilor de nvare automat (vezi

bibliografia). Tendina general de a crea sisteme informatice tot mai independente i adaptabile face studiul nvrii Automate unul dintre cele mai atractive domenii de cercetare n Inteligena Artificial.

BIBILOGRAFIE ... - Legturi utile: http://www.aaai.org/AITopics/html/machine.html ...- Cursuri disponibile on-line: http://www.cs.iastate.edu/~honavar/Courses/cs673/machine-learningcourses.html -- European Conference on Machine Learning: http://www.ecmlpkdd2007.org/ -- Knowledge Discovery and Data: http://www.acm.org/sigs/sigkdd/kdd/2007/ -- Association for the Advancement of Artificial Intelligence's national Conferene on Artificial Intelligence: http://www.aaai.org/Conferences/AAAI/aaai07.php Alpaydin E. - Introduction To Machine Learning, MIT Press, 2004 DeJong G, Mooney R. Explanation-based learning. An alternative view, Machine Learning, 1986 Fisher J. Concept Formation: Knowledge and Experience in Unsupervised Learning, Lawrence Erlbaum, 1991 Jebara T. - Machine Learning: discriminative and generative, Springer, 2004 Mitchell T.M. Machine Learning, McGraw-Hill, 1997

Quinlan, J.R. - Learning Efficient Classification Procedures And Their Application To Chess End Games., Michalski, Ryszard S., J. G. Carbonell . T. M. Mitchell, : Machine Learning - An Artifical Intelligence Approach, . 463-482. Tioga Publishing Company., 1983 Quinlan J.R. Induction of Decision Trees, Machine Learning, 1986 Quinlan J.R. Programs for Machine Learning, Morgan Kaufmann, 1993 Shannon C.E. - A Mathematical Theory of Communication, Bell System Technical Journal, Vol. 27, pp. 379423, 623656, 1948 Shavlik J., Mooney R.J., Towell G.G. Machine Learning, Morgan Kaufmann, 1991 Utgoff P. - ID5: An incremental ID3. In Proceedings of the Fifth International Conference on Machine Learning, pages 107-120, Ann Arbor, MI, Morgan Kaufmann, 1988 Valiant, L. G. - A theory of the learnable. Communications of the ACM 1984 pp1134-1142, 1984 Weiss S.M., Kuliowski G Computational systems that learn: classification and prediction methods from statistics, neural nets, machine learning and expert systems, Morgan Kaufmann, 1993 Mill, J. S. - Collected Works, Toronto: University of Toronto Press, 1963-89), XIII, 566., 1843

You might also like