Sunteți pe pagina 1din 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)

se generalizeaz

culoare(obj1,culoare_de_baz)

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

NU

Laturi egale?

DA

Patrat

Laturi egale?
NU

Dreptunghi

DA

Romb

NU
Trapez

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

au

aceeai

etichet)

then

ntoarce un nod terminal cu eticheta respectiv


else {
2.

caut

proprietatea

din

cu

cel

mai

mare

ctig

de

informaie (vezi 3.3)


3. creaz un arbore de decizie cu rdcina coninnd testul
acelei proprieti
4.

for

(fiecare

rezultat

posibil

al

testului

acelei

proprieti) {
5.

repet

de

la

pasul

pentru

setul

de

exemple

cu

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

la n

-P(vi) log2 P(vi)

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

= 1 la nv

(|Si|)/(|S|) * I(1-pi(vi1 )/|Si|, , 1-

pi(vin )/|Si|)

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

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

toate

instanele

pozitive

nici

una

din

cele

negative
end

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

s i g sunt

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:
w1

x2

w2

F(net)

x1

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

wi=wi+c*xi

6.if IN iar f(net)>prag atunci


7. pentru i=1 la n

wi=wi-c*xi

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.

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

S-ar putea să vă placă și