BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei...

67
UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA FACULTATEA DE MATEMATICǍ ŞI INFORMATICǍ SPECIALIZAREA INFORMATICĂ LUCRARE DE DIPLOMǍ ÎNVĂŢAREA BAYESIANĂ Conducător ştiinţific Prof. univ. dr. Czibula Gabriela Absolvent Mureşan Laura Elena Cluj Napoca 2011

Transcript of BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei...

Page 1: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA

FACULTATEA DE MATEMATICǍ ŞI

INFORMATICǍ

SPECIALIZAREA INFORMATICĂ

LUCRARE DE DIPLOMǍ

ÎNVĂŢAREA BAYESIANĂ

Conducător ştiinţific

Prof. univ. dr. Czibula Gabriela

Absolvent

Mureşan Laura Elena

Cluj Napoca

2011

Page 2: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

2

CUPRINS

INTRODUCERE ………………………………………………….................................. 3

1. Învăţarea în sisteme cu inteligenţă artificială …………………...........................… 5

1.1 Inteligenţa artificială ……………………………........................................................ 5

1.2 Învăţarea …………………………………………………........................................... 8

2. Învăţare Bayesiană……………………………………………….............................. 11

2.1 Teorema lui Bayes ……………………………………….......................................... 12

2.2 Probabilitatea maximă ................................................................................................ 15

2.3 Clasificatorul Optimal Bayes ...................................................................................... 19

3. Metode de învăţare Bayesiană ................................................................................... 21

3.1 Clasificatorul Naiv Bayes ........................................................................................... 21

3.2 Reţele Bayesiene ......................................................................................................... 23

3.3 Algoritmul Expectation-Maximization ....................................................................... 34

4. Rezultate ale cercetării în utilizarea metodelor de învăţare bayesiene ................. 38

5. Aplicaţia practică......................................................................................................... 45

5.1 Enunţ ........................................................................................................................... 45

5.2 Analiză şi proiectare ................................................................................................... 45

5.3 Implementare .............................................................................................................. 51

5.4 Manual de utilizare ..................................................................................................... 56

5.5 Rezultate ..................................................................................................................... 61

5.6 Extinderi posibile ........................................................................................................ 62

CONCLUZII………………………………………………………................................ 64

TABELUL FIGURILOR ............................................................................................... 65

BIBLIOGRAFIE…………………………………………………................................. 66

Page 3: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

3

INTRODUCERE

În ultima perioadă s-a dezvoltat un interes aparte pentru utilizarea unor tehnici din teoria

deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria

deciziilor prevede un cadru normativ de reprezentare şi motivare cu privire la problemele de luare

a deciziilor în condiţii de incertitudine. Raţionamentul Bayesian oferă o abordare probabilistică a

inferenţei. Maniera de luare a decizilor optime are în vedere cantităţiile de interes reprezentate de

distribuţii de probabilitate, dar şi datele de antrenare observate. Această abordare este importantă

în domeniul maşinilor de învăţare deoarece oferă o manieră de aproximare cantitativă necesară

pentru justificarea evaluării ipotezelor alternative. Acest raţionament se află la temelia

algoritmilor care manipulează direct probabilităţi.

Modelul de învăţare Bayesian este relevant pentru studiul maşinilor de învăţare din două

motive. Primul dintre ele este acela că algoritmii Bayesieni care calculează direct probabilităţi

pentru anumite ipoteze sunt printre cele mai practice abordări pentru unele tipuri de probleme de

învăţare. Al doilea motiv ar fi acela că metodele Bayesiene oferă o perspectivă utilă pentru

înţelegerea mai uşoară a multor algoritmi de învăţare care nu manipulează în mod explicit

probabilităţi.

Prin prezenta lucrare este oferită o bază de cunoştiinţe necesară pentru înţelegerea

modului în care sunt procesate informaţiile la nivelul unei maşini autoinstruibile construită pe

raţionamentul Bayesian, dar şi un exemplu concret de astfel de sistem.

O introducere în domeniul Inteligenţei Artificiale şi a procesului de învăţare automată este

oferită în Capitolul 1. Această asociere este de o importanţă majoră deoarece tendinţa generală de

a crea sisteme informatice tot mai independente şi adaptabile face studiul Învăţării Automate unul

dintre cele mai atractive domenii de cercetare în Inteligenţa Artificială.

Prin Capitolul 2 este oferită o imagine de ansamblu asupra raţionamentului Bayesian, prin

prezentarea teoremei lui Bayes, a principiului de determinare a ipotezei de probabilitate maximă

şi a clasificatorului optimal specific.

Metodele de învăţare care au fost dezvoltate pe baza principiului Bayesian sunt prezentate

în cel de-al 3-lea capitol. Printre acestea amintim Clasificatorul Naiv Bayes, reţelele Bayesiene şi

Algoritmul EM.

Capitolul 4 este constituit dintr-un studiu de cercetare a rezultatelor obţinute în urma

utilizării metodelor de învăţare Bayesiene.

În ultimii ani, am fost cu toţii martorii unei explozii în ceea ce priveşte disponibilitatea

informaţiilor online, cu milioane de documente din fiecare domeniu uşor accesibil prin

Page 4: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

4

intermediul Internetului. Odată cu creşterea cantităţii de informaţii disponibile, incapabilitatea

oamenilor de a le asimila şi utiliza în manieră profitabilă devine din ce în ce mai evidentă.

Paradigma cu cel mai mare succes pentru organizarea unui astfel de set de informaţii, cu scopul

de a le face mai accesibile pentru utilizatori, este clasificarea diferitelor documente în funcţie de

domeniul lor. Aceasta este şi sarcina problemei abordate în manieră practică şi prezentă în al 5-

lea capitol al lucrării.

Page 5: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

5

CAPITOLUL 1

ÎNVĂŢAREA ÎN SISTEME CU INTELIGENŢĂ

ARTIFICIALĂ

1.1 Inteligenţa artificială

Omenirea şi-a definit singură existenţa, denumindu-se de la sine „homo sapiens”,

deoarece capacităţiile noastre mentale sunt foarte importante pentru viaţa de zi cu zi şi pentru

stima proprie. Acest domeniu al inteligenţei artificiale, dezvoltat şi cercetat inţial ca şi parte a

psihologiei, a fost pus odată cu trecerea timpului sub aripa unei ştiinţe aflată în continuă

ascensiune şi anume informatica. Dezvoltarea calculatorului în ultimele patru decenii a permis

cercetătorilor din domeniu să încerce utilizarea acestora pentru rezolvarea unor probleme din ce

în ce mai complicate şi mai apropiate ca şi complexitate de problemele soluţionate de om.

Pe masură ce piedicile legate de viteza de procesare şi capacitatea de memorare au fost

rezolvate la nivelul tehnologiei construcţiei calculatorului, limitarea utilizării tehnicii de calcul în

locul expertului uman se datorează, în principal, incapacităţii de a instrui şi programa adecvat un

calculator. Posibil ca această dorinţă de a utiliza calculatorul la tot ceea ce poate fi rezolvat de

om, să fi dus la introducerea acestei ramuri în informatică.

Obţinută ca şi o combinaţie între ştiinţa calculatoarelor, filozofie, psihologie, matematică,

dar şi alte ştiinţe, inteligenţa artificială începe acolo unde se termina informatica clasică.

Încercarea ei majoră şi prioritară este aceea de a înţelege caracteristiciile entităţiilor vii inteligente

şi de a crea entităţi artificiale comparabile cu acestea.

Oamenii se confruntă, de asemenea, cu o limitare fiziologică cu privire la dimensiunea

creierelelor lor. Se estimează că in creierul uman tipic există aproximativ o suta de miliarde de

neuroni şi un milion de miliarde de sinapse. Aceasta este o cantitate enormă de forţă pură, de

calcul brută, în comparaţie cu computerele de astăzi. După cercetarile actuale, numai pentru a

reproduce creierul mic uman mezencefalic care coordonează mişcările şi procesele fiziologice

umane (muschii, glandele endocrine, etc.) este nevoie de un creier electronic de dimensiunea

întregii noastre planete pentru a lucra la tehnologia actuală Intel Core I5 sau I7 şi a coordona

numai corpul. De la acest punct se poate spune că ne apropiem de adevarata tehnologie, care se

manifestă printr-o lucrătură mai fină la nivel nano/pico/femto/atto/zepto/yocto – metro.

Tehnicile inteligenţei artificiale vizează crearea de maşini inteligente de calcul, adică

sisteme având la bază caracteristicile inteligenţei umane şi anume raţionamentul, capacitatea de

Page 6: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

6

învăţare, rezolvare şi comunicare. În general aceste sisteme sunt destinate rezolvării problemelor

pentru care nu există algoritmi de calcul clasici.

Datorită liniei de ascensiune din ultimele decenii, inteligenţa artificială a reuşit să

acapareze o mare varietate de subcâmpuri, de interes general, cum ar fi percepţia şi raţionamentul

logic, tehnici aplicate în diverse jocuri, demonstarea teoremelor matematice sau diagnosticarea

medicală. Adesea cercetătorii din domeniu aleg sa aplice metodele lor în orice zonă care implică

eforturi intelectuale umane, ceea ce permite afirmarea faptului că acest câmp al ştiinţei este unul

cu adevărat universal.

Puterea de captivare a inteligenţei artificiale este cu adevărat de apreciat, însă rămâne

totuşi întrebarea ce este ea. Există o serie destul de amplă de definiţii care s-au dat, însă ele se

concentrează în jurul a patru direcţii. Dacă pe de o parte se poate face o separare între procesul de

gandire, raţionare şi comportament, de cealalta parte se vorbeşte despre măsurarea succesului în

termeni de performanţă umană împotriva unui concept ideal de inteligenţă care poate fi numit

raţional[1].

Se poate astfel vorbi despre inteligenţa artificială ca fiind dată de:

Sisteme care gîndesc ca oamenii. Sisteme care gîndesc raţional.

Sisteme care acţionează ca oamenii. Sisteme care acţionează raţional.

În contextul sistemelor care gândesc ca şi oamenii, inteligenţa artificială este definită ca

fiind activitatea legată de automatizarea activităţiilor asociate gândirii umane, cum ar fi:

rezolvarea problemelor, luarea deciziilor sau învăţarea.

Din perspectiva sistemelor care gândesc raţional, este definită ca fiind studiul facultăţiilor

mentale cu ajutorul metodelor computaţionale sau studiul proceselor de calcul care fac posibile

percepţia, raţionamentul sau acţiunea.

Datorită capacităţii de a acţiona ca şi oamenii, inteligenţa artificială este arta de a crea

maşini capabile să realizeze activităţi umane ce implică inteligenţa, respectiv studiul

modalităţiilor prin care computerele să realizeze activităţi care momentan sunt mai bine făcute de

către om.

Privit ca şi un sistem care acţionează raţional, IA este acel domeniu al informaticii

preocupat de automatizarea comportamentului inteligent, respectiv ca şi acel domeniu de studiu

care caută să explice şi să imite comportamentul inteligent în termeni de procese computaţionale.

În ciuda tuturor acestor abordări, cea mai practică definiţie a inteligenţei artificiale a fost

dată de testul cercetătorului britanic, Alain Turing, care pune faţă în faţă omul şi maşina. Un om

pune întrebări la care i se raspund pe de o parte de către un om şi pe de alta de către o maşină.

Dacă cel care pune întrebările nu reuşeşte să decidă care dintre interlocutorii săi este uman şi care

artificial, atunci maşina creată poate fi considerată inteligentă.

Page 7: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

7

Pentru a putea totuşi trece de testul Turing, o maşină trebuie sa posede anumite

caracteristici:

- capacitatea de procesare a limbajului natural, pentru a fi capabil să comunice într-

o anumită limbă;

- capacitatea de reprezentare a cunoştiinţelor, pentru a putea stoca informaţia

acumulată atât înainte cât şi în timpul interogării;

- capacitatea de raţionament automat, necesară utilizării informaţiei memorate

pentru a răspunde la întrebări şi a putea trage concluzii;

- capacitatea de învăţare automată, pentru a putea să se adapteze la noi situaţii şi

pentru a putea face faţă extrapolării.

Dotat cu astfel de trăsături, un sistem inteligent poate face inferenţe şi elabora concluzii,

poate găsi soluţii sau lua decizii favorabile pentru domeniul respectiv.

La fel ca orice ştiinţă aflată sub ochii atenţi ale cercetătorilor din domeniu, influenţaţi de

propriile convingeri, încă de la început au putut fi observate două direcţii de dezvoltare în

inteligenţa artificială. Prima dintre ele este constituită de paradigma logico-simbolică. Pe de-o

parte s-a urmărit realizarea de maşini capabile să reproducă funcţiile co gnitive ale

minţii umane, pe de altă parte s -a încercat realizarea de programe care să permită

prelucrarea simbolică a informaţiilor(cunoştiinţelor) folosind metodele logicii.

Aceasta presupune existenţa unor mecanisme de reprezentare simbolică a

cunoştinţelor şi a unei baze de cunoştinţe unde sunt memorate faptele. Modele

logice sunt apoi utilizate pentru deducerea unor cunoştinţe noi. Un exemplu îl

constituie demonstratorul automat de teoreme (1956) realizat de A. Newell şi H.A.

Simon. În cadrul acestei direcţii s-au realizat primele programe inteligente capabile

de a substitui experienţa unui specialist.

Cea de-a doua direcţie de dezvoltare a inteligenţei artificiale are la bază

paradigma conexionistă. Aceasta provine din ideea că pornind de la modele ale

activităţii neuronale se po t construi programe şi implicit şi maşini inteligente. În

1958 s-a realizat prima şi cea mai simplă reţea neuronală

art ificială numită perceptron . În cazul acestor reţele informaţia nu mai este

memorată în zone bine precizate, cum se întamplă în cazul calculatoarelor

standard, ci este memorată difuz în toată reţeaua. O astfel de memorare se

realizează prin stabilirea de valori corespunză toare pentru ponderile

conexiunilor sinaptice dintre neuronii reţelei.

Aceste direcţii nu sunt în fapt atât de ermetic separate, o serie de metode,

noţiuni şi rezultate circulă între ele. Se pot gândi sisteme ce combină o reţea

neuronală şi un sistem expert .

Page 8: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

8

În prezent se asistă la reconturarea direcţi ilor inteligenţei artificiale.

Calculul evolutiv (incluzând algoritmii genetici , strategiile evolutive şi

programarea evolutiva), sistemele inteligente bazate pe logica nuanţată(fuzzy) şi

calculul neuronal definesc domeniul i nteligenţei computaţ ionale (sau calcul

inteligent). Caracteristica principală a acestui domeniu este reprezentarea

numerică a cunoaşterii, care îl diferenţiază net de inteligenţa artificială

tradiţională, bazată pe reprezentarea simbolică şi inferenţe logice.

1.2 Învăţare

Încă de cînd au fost inventate calculatoarele s-a pus problema ca acestea să fie învăţate să

culeagă informaţii din mediul în care se află, să le analizeze şi să fie capabile să acţioneze

autonom. Până în prezent nu a fost descoperită tehnica potrivită care ar putea fi aplicată asupra

acestor maşini de calcul pentru ca ele să înveţe, să analizeze, să proceseze informaţiile şi să

acţioneze în consecinţă, asemeni omului.

Inteligenţa artificială, asemeni inteligenţei biologice, se dobândeşte în urma unui

îndelungat şi continuu proces de învăţare, de aceea problema învăţării ocupa un loc important în

cercetarea maşinilor auto-instruibile. Din păcate sistemele cu inteligenţă artificială obişnuite au

posibilităţi de învăţare foarte reduse sau nu au deloc. Întreaga cunoaştere necesară acestor sisteme

trebuie să fie programată în ele. Sistemele nu îşi pot corecta erorile şi nu îşi pot îmbunătăţi

performanţele prin experienţe şi nici nu pot învăţa prin experimentare. Nu pot genera automat

algoritmi, soluţii prin analogie cu cele vechi. Sistemelor le lipseşte abilitatea de a face inferenţe

inductive. Aproape toate sistemele cu inteligenţă artificială sunt sisteme deductive, adică pot

trage concluzii asupra informaţiilor incorporate, dar nu pot genera singure noi cunoştinţe, deci nu

sunt sisteme adaptive.

Învăţarea nu se poate face pe baza unui set foarte mare de cunoştinţe, atât din cauza

costurilor mari presupuse de acumularea unor baze de informaţii mari cât şi din cauza

complexităţii memorării şi prelucrării unui volum mare de informaţii. În acelaşi timp însă,

învăţarea trebuie să ducă la formularea de suficiente “reguli” atât cât să permită rezolvarea unor

probleme dintr-un spaţiu mai larg decât cel pe baza căruia s-a făcut învăţarea.

Sistemele concepute pentru învăţarea/instuirea automată au în vedere îmbunătăţirea

performanţei, în raport cu o sarcină, pe baza experienţei accumulate anterior. Având în vedere

aceste lucruri, maşinile de învăţare sunt în mod inerent un domeniu multidisciplinar. Ele se

bazează pe rezultate din inteligenţă artificială, probabilităţi şi statistică, teoria complexităţii

computaţionale, teoria controlului, a informaţiei, filozofie, psihologie, neurobiologie şi alte

domenii.

Page 9: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

9

Modelul general de realizare a unui astfel de sistem care învaţă trebuie sa integreze patru

componente conceptuale[1]. Acestea sunt:

- elementul de învăţare; este cel responsabil cu îmbunătăţirea performanţei pe baza

câtorva cunoştinţe elementare despre ceea ce învaţă şi un feedback despre cum se descurcă

sistemul;

- elementul de performanţă; responsabil cu selectarea acţiunii la un moment dat;

- criticul; conceput pentru a furniza sistemului feedback-ul despre cât de bine se

descurcă în sarcinile pe care le are de rezolvat şi care are un standard fix de performanţă;

- generatorul de probleme; responsabil de sugerarea acţiunilor care vor duce la noi

experienţe informative.

Se poate observa faptul că unul dintre punctele importante în design-ul intern al unei

maşini autoinstruibile este reprezentat de feedback. Aceasta informaţie despre cum se descurcă

sistemul în rezolvarea sarcinilor, prin prezenţa sau absenţa ei, identifică clasele de tipuri de

învăţare. Acest proces atât de dificil şi totodată captivant poate fi realizat în trei moduri esenţiale:

a) Învăţarea supervizată: este un tip de învăţare inductivă ce pleacă de la un set de

exemple de instanţe ale problemei şi formează o funcţie de evaluare (şablon) care să permită

clasificarea (rezolvarea) unor instanţe noi. Învăţarea este supervizată în sensul că setul de

exemple este dat împreună cu clasificarea lor corectă. Aceste instanţe rezolvate se numesc

instanţe de antrenament. Formal, setul de instanţe de antrenament este o mulţime de perechi

atribut-valoare (x,f(x)), unde x este instanţa iar f(x) clasa căreia îi aparţine instanţa respectivă. La

acest tip de învăţare, în etapa de antrenare este momentul în care se construieste modelul, iar în

etapa de testare acesta este aplicat. Scopul învăţării este construirea unei funcţii-şablon care să

clasifice corect instanţele-exemplu, iar pentru un x pentru care nu se cunoaşte f(x) să propună o

aproximare cât mai corectă a valorii f(x). Din aceasta clasa de învaţare fac parte: arborii de

decizie, reţelele neuronale, maşinile cu support vectorial, învăţarea Bayesiană şi învăţarea bazată

pe instante.

b) Învăţarea nesupervizată: elimină complet necesitatea unor instanţe de

antrenament, deci şi problemele legate de acestea. Scopul învăţării nesupervizate nu este definit

anterior ca un concept ţintă, algoritmul fiind lăsat singur să identifice concepte posibile. În

general, învăţarea nesupervizată presupune existenţa unor instanţe neclasificate, un set de reguli

euristice pentru crearea de noi instanţe şi evaluarea unor concepte deduse, eventual un model

general al spaţiului de cunoştinţe în care se găsesc aceste instanţe. Un algoritm de învăţare

nesupervizată construieşte concepte pentru a clasifica instanţele, le evaluează şi le dezvoltă pe

cele considerate “interesante” de regulile euristice. În general, concepte interesante sunt

considerate cele care acoperă o parte din instanţe, dar nu pe toate. Învăţarea nesupervizată

permite identificarea unor concepte complet noi plecând de la date cunoscute.

Page 10: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

10

c) Învăţarea prin întărire: se face fără ca algoritmul de învăţare să compare direct

şablonul obţinut cu rezultatele corecte pentru exemplele de antrenament. În schimb este

implementată o modalitate de a “răsplăti” sau “pedepsi” sistemul în funcţie de cât de mult se

apropie de rezultatul corect. Acest feedback este singura metodă a sistemului de învăţare de a se

regla pentru îmbunătăţirea rezultatelor sale. Acest lucru face învăţarea prin întărire mai dificilă,

căci sistemul nu mai primeşte informaţii directe despre cum şi cât să se corecteze, ci doar ştie

dacă se apropie sau se depărtează de rezultatul optim. De asemenea, feedback-ul poate veni doar

uneori, nu neapărat la fiecare schimbare în şablonul ipotetic, deci sistemul trebuie să aibă o

modalitate de a direcţiona şi impulsiona singur schimbarea pentru îmbunătăţirea şablonului.

Învăţarea prin încurajare este utilă în situaţiile în care nu dispunem de un set de antrenament, nu

putem identifica cu precizie instanţe valide sau eronate, fie din cauza complexităţii

reprezentaţionale, fie din cauza lipsei de informaţii sigure. Dispunem însă de capacitatea de a

aprecia corectitudinea unei soluţii obţinute de sistem, fie chiar şi doar comparativ cu celelalte

soluţii.

Un aspect foarte important atât în ceea ce priveşte învăţarea supervizată cât şi cea

nesupervizată este reprezentat de preprocesarea datelor. Aceasta se realizează prin

normalizare(aplicarea prelucrărilor statistice asupra datelor), scalarea datelor numerice, analiza

componentelor principale sau selectarea doar a acelor atribute care deţin o anumită proprietate.

Învăţarea automată tradiţională se bazează pe un model conceptual raţional al lumii fizice.

Pe baza acestui model s-au obţinut structuri de reprezentare tot mai complexe, strategii de căutare

mai eficiente şi progrese semnificative atât în crearea unor sisteme ce simulează aspecte ale

inteligenţei biologice, cât şi în înţelegerea modului în care funcţionează inteligenţa umană. Ideea

unui model conceptual raţional al lumii fizice se bazează însă pe tradiţia filozofică raţionalistă,

care însă nu modelează şi felul în care raţionează inteligenţa biologică. Inteligenţa umană are la

bază atât raţionamente logice şi ştiinţifice cât şi raţionamente empirice, esenţiale mai ales în

interpretarea necunoscutului. Acest lucru a dus la crearea de noi metode de modelare a

inteligenţei, cum ar fi reţelele neuronale şi algoritmii genetici, sau la includerea unor

raţionamente empirice similare celor umane în algoritmi de învăţare mai tradiţionali. Rezultatele

semnificative date de aplicarea acestor noi idei promit crearea unor sisteme tot mai inteligente,

până la crearea primei inteligenţe artificiale reale. Probabil, prima inteligenţă artificială veritabilă

nu va fi creată de programatori umani, ci de un sistem artificial ce va învăţa să fie inteligent

observând instanţele date de raţionamentele umane.

Metodele învăţării automate au devenit instrumente de bază în implementarea sistemelor

complexe de inteligenţă artificială. Există numeroase centre de cercetare şi conferinţe anuale

având ca principal domeniu dezvoltarea şi evaluarea metodologiilor de învăţare automată.

Tendinţa generală de a crea sisteme informatice tot mai independente şi adaptabile face studiul

Învăţării Automate unul dintre cele mai atractive domenii de cercetare în Inteligenţa Artificială.

Page 11: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

11

CAPITOLUL 2

ÎNVĂŢARE BAYESIANĂ

Secţiunea anterioară a subliniat modul în care învăţarea, raţionamentul şi luarea decizilor

ar trebui să funcţioneze în teorie. Cu toate acestea, teoria nu ţine seama de cerinţele de calcul şi

de capacitatea de stocare. În situaţii realiste, calculul exact, urmăreşte regula lui Bayes, principiul

marginalizării sau regula utilităţii aşteptate. Prin urmare, un subiect de cercetare îndelung

dezbătut este devoltarea unor metode care să aproximeze cu un randament cât mai apropiat de

rezultatul teoretic, aplicaţiile practice.

Raţionamentul Bayesian oferă o abordare probabilistică a inferenţei. Maniera de luare a

decizilor are în vedere cantităţiile de interes reprezentate de distribuţii de probabilitate, dar şi

datele de antrenare observate. Această abordare este importantă în termeni de maşini de învăţare

deoarece oferă o manieră de aproximare cantitativă necesară pentru justificarea evaluării

ipotezelor alternative. Acest raţionament se află la temelia algoritmilor care manipulează direct

probabilităţi şi oferă un cadru amplu dispus analizării unor operaţii comparativ cu alţi algoritmi

care nu abordează studiul probabilistic.

Modelul de învăţare Bayesian este relevant pentru studiul maşinilor de învăţare din două

motive. Primul dintre ele este acela că algoritmii bayesiani care calculează direct probabilităţi

pentru anumite ipoteze, cum ar fi algoritmul de clasificare naiv al lui Bayes, sunt printre cele mai

practice abordări pentru anumite tipuri de probleme de învăţare. Studiile arată nu doar faptul că

aceşti algoritmi sunt competitivi cu alţii, dar şi faptul că pentru unele clase de probleme i-au

surclasat.

Al doilea motiv pentru care metodele Bayesiene sunt importante este că ele oferă o

perspectivă utilă pentru înţelegerea mai uşoară a multor algoritmi de învăţare care nu

manipulează în mod explicit probabilităţi. Perspectivele bayesiene pot fi folosite pentru

analizarea reţelelor neuronale sau a arborilor de decizie.

Familiarizarea cu metodele Bayesiene este importantă pentru înţelegerea şi caracterizarea

funcţionării mai multor algoritmi care ţin de maşinile de învăţare. Aceste idei de abordare pot fi

amestecate şi cu alte metode existente în cazul în care un model complet bayesian este complicat

de definit, dar tehnicile lui pot fi transferate.

Caracteristicile metodelor de învăţare bayesiene sunt:

- Fiecare exemplu de antrenare poate scădea sau creşte progresiv probabilitatea că o

ipoteză este corectă. Această abordare a procesului de învăţare este mai flexibilă comparativ cu

Page 12: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

12

algoritmii care elimină complet o ipoteză dacă se dovedeşte că ea e în contradicţie cu cel puţin un

singur exemplu.

- Cunoştiinţele anterioare pot fi combinate cu datele de antrenare observate pentru a

determina probabilitatea finală a ipotezei. Cunoştiinţele anterioare sunt obţinute prin asocierea

unei probabilităţi anterioare pentru fiecare ipoteză candidat şi o distribuţie de probabilitate pentru

altele observate pentru fiecare ipoteză în parte.

- Pot găzdui ipoteze care fac predicţii probabilistice.

- Cazurile noi pot fi clasificate prin combinarea predicţiilor mai multor ipoteze,

ponderate în funcţie de probabilitatea lor.

- Chiar şi atunci când calculele sunt greu de făcut, pot oferi un standard de luare a

deciziilor optime.

La fel ca şi la orice sistem informatic, şi aici ne lovim de dificultăţi în aplicarea

lui. Ele se referă la necesitatea unor cunoştiinţe anterioare despre domeniul probabilistic şi la

costul de calcul semnificant pentru a determina ipoteza Bayes optimă.

2.1 Teorema lui Bayes

Teorema lui Bayes este una dintre teoremele fundamentale ale teoriei

probabilităţiilor, care determină probabilitatea apartenenţei evenimentelor şi a obiectelor la o

anumită grupă. Probabilitatea bayesiană este numele dat mai multor interpretări ale noţiunii

de probabilitate, care au în comun ideea de probabilitate ca credinţă parţială, în loc de cea de

frecvenţă de apariţie a unui eveniment. Aceasta permite aplicarea probabilităţii mai multor

propoziţii şi nu doar cele care au o clasă de referinţă. Termenul de „bayesian” a început să fie

folosit în acest sens cam din 1950. Nu se ştie dacă Bayes însuşi a îmbrăţişat larga interpretare

denumită astăzi bayesiană. Este dificil să se evalueze ideile filosofice ale lui Bayes despre

probabilitate, deoarece eseul său nu intră în chestiuni de interpretare. Acolo, Bayes

defineşte probabilitatea ca şi: “Probabilitatea oricărui eveniment este raportul între valoarea la

care ar trebui calculată o aşteptare în funcţie de întâmplarea unui eveniment, şi valoarea lucrului

aşteptat după ce s-a întâmplat”.

În teoria modernă a utilităţii, utilitatea aşteptată poate fi considerată a fi

probabilitatea unui eveniment înmulţită cu răsplata primită în cazul lui. Rearanjarea acestei

formule pentru a permite calculul probabilităţii dă definiţia lui Bayes. Aşa cum arată Stigler,

această definiţie este subiectivă şi nu necesită evenimente repetate; ea, însă, necesită ca

evenimentul în chestiune să fie observabil, fiindcă altfel nu se poate spune deloc că „s-a

întâmplat”. Stigler argumentează că Bayes intenţiona să obţină rezultate într-o manieră mai

limitată decât studiile moderne; dată fiind definiţia probabilităţii după Bayes, rezultatul său

Page 13: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

13

privind parametrul unei distribuţii binomiale are sens doar în măsura în care se poate paria pe

consecinţele sale observabile[12].

În cazul maşinilor de învăţare sunetm interesaţi de determinarea celei mai bune

ipoteze pentru un spaţiu H, având în vedere datele de antrenare D. În acest context, atunci când

vorbim despre cea mai bună ipoteză ne referim la cea mai probabilă ipoteză având datele D şi alte

cunoştiinţe iniţiale despre probabilităţiile diverselor ipoteze din H. Teorema lui Bayes conferă o

metodă directă de a calcula aceste probabilităţi. Mai precis, ea furnizează o manieră de a calcula

probabilitatea unei ipoteze bazată pe probabilitatea anterioară a acesteia, denotată din diverse date

observate având în vedere ipotezele .

Pentru a putea exprima în termeni matematici teorema lui Bayes, avem nevoie de

anumite notaţii. Vom considera o ipoteză h din spaţiul ipotezelor H. Prin P(h) vom nota

probabilitatea iniţială a ipotezei h. La probabilitatea anterioară observării datelor de antrenare D

ne vom referi prin P(D), iar la probabilitatea de a observa datele D în raport cu ipoteza h, prin

P(D|h). Deşi trebuie să avem în vedere toate acestea, în lumea maşinilor de învăţare suntem

interesaţi de o altă probabilitate notată prin P(h|D). Aceasta este probabilitatea ulterioară a lui h,

aceea ca ipoteza h să se petreacă având în vedere datele de antrenare D. Aceasta reflectă influenţa

datelor de antrenare asupra decizilor care pot fi luate, în contrast cu P(h), probabilitate

independent de D.

Teorema lui Bayes este piatra de temelie a învăţarii bayesiene deoarece ea

furnizează metoda de a calcula probabilitatea ulterioară, P(h|D), din P(h), P(D) şi P(D|h), astfel:

)(

P(h) * h)|P(D)D|(

DPhP

Din această ecuaţie, care concentrează raţionamentul bayesian, se poate observa faptul că

P(h|D) creşte deodată cu P(h) şi P(D|h), şi descreşte atunci când P(D) creşte.

În numeroase discuţii despre teorema lui Bayes este posibil să existe susţinători ai

psihologiei cognitive care să afirme faptul că oamenii nu iau suficient de mult în considerare

frecvenţele anterioare. Acest lucru înseamnă că atunci când oamenii abordează o problemă pentru

care există o oarecare indicaţie către evaluarea ca şi adevărată a unei condiţii, ei tind să judece

probabilitatea acelei condiţii numai după cât de bine se potriveşte indicaţia cu ea, fără a lua în

considerare frecvenţa anterioară a condiţiei.

În multe scenari de învăţare, se consider câteva seturi de ipoteze candidat H şi interesul se

axează asupra găsirii celei mai probabile ipoteze h din H, având în vedere datele de antrenare D.

Fiecare dintre aceste ipoteze de probabilitate maximă este numită “ipoteză maximă posterioară”

[1](maximum a posteriori hypothesis-MAP). Pentru determinarea MAP se foloseşte teorema lui

Page 14: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

14

Bayes pentru a calcula probabilitatea ulterioară a fiecărei ipoteză candidat. Mai precis se poate

spune ca o ipoteza hMAP este ipoteză maximă posterioară dacă:

) D |h ( PmaxargmaxargHh

MAPh

)(

P(h) * h)|P(Dmaxarg

DPHh

)(*)|(maxarg hPhDPHh

După cum se poate observa în cea din urmă formă a ecuaţiei care exprimă hMAP lipseşte

termenul P(D). Acest fapt este deoarece P(D) este o constantă independentă de valoarea pe care o

ia h.

Există în practică şi cazuri în care toate ipotezele dintr-un spaţiu al problemei H au

aceeaşi probabilitate: P(hi)=P(hj), pentru oricare ar fi hi, hj din H. În aceste situaţii ecuaţia

anterioară poate fi simplificată sub forma:

)|(maxarg hDPhHh

MAP

Această ipoteză se mai numeşte şi ipoteza de probabilitate maximă, P(D|h) fiind numită

probabilitatea maximă.

Deoarece teorema lui Bayes este mult mai generală, ea poate fi la fel de bine aplicată pe

orice set H de propuneri ce se exclude reciproc şi a căror sumă de probabilitate este 1. Datorită

faptului că această teoremă furnizează principala manieră de a calcula probabilitatea ulterioară a

fiecărei ipoteze luând în calcul datele de antrenare, poate fi folosită ca şi bază pentru un algoritm

simplu care calculează probabilitatea pentru fiecare ipoteză şi o afişează pe cea mai probabilă. Pe

baza unui studiu realizat[1] s-a observat că în anumite condiţii, mai mulţi algoritmi returnează

aceeaşi ipoteză ca şi această forţă brută Bayesiană, în ciuda faptului că acestea nu manipulează în

mod direct probabilităţi şi sunt considerabil mai eficiente.

Să presupunem câteva spaţii finite de ipoteze H, definite peste spaţiul instanţă X, în care

sarcina este de a învăţa unele concepe ţintă: ]1,0[: Xc . La fel ca oricărui elev dispus să înveţe,

şi la aces elev virtual trebuie să îi fie furnizate cateva secvenţe de exemple, date de antrenare.

Considerăm aceste date sub forme de grupuri de genul: (x1,d1), (x2,d2), …, (xm,dm), unde xi este o

instanţă din X, di o valoare ţintă pentru xi şi di=c(xi). Cu presupunerea simplă care nu restrânge

generalitatea, şi anume că setul de instanţe deţinut (x1, x2, …, xm) este fix astfel încât setul de date

de antrenament D poate fi scris ca şi o secvenţă de valori ţintă (d1, d2,…, dm).

Proiectarea unui algoritm simplu, bazat pe conceptul de învăţare şi pe teorema lui Bayes,

care să returneze o ipoteză posterioară maximă, poate fi facut astfel:

Page 15: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

15

1. Pentru oricare hєH calculează

P(h|D)=)(

)(*)|(

DP

hPhDP

2. Returnează ipoteza hMAP cu cea mai mare probabilitate posterioară

)|(maxarg DhPhHh

MAP

Acest algoritm poate necesita calcule serioase deoarece foloseşte teorema lui Bayes

pentru fiecare ipoteză h din H. Acest lucru poate fi o piedică pentru spaţii foarte mari de ipoteze,

dar totuşi algoritmul este de interes deoarece furnizează un standard la care ne-am putea raporta

performanţa altor concept de algoritmi de învăţare.

Pentru a specifica o problemă reală pentru acest algoritm, trebuie să precizăm ce valori

vor fi folosite pentru P(h) şi pentru P(D|h). Posibilitatea de alegere a distribuţiei de probabilitate

pentru P(h) şi P(D|h) rămâne la alegerea noastră şi totuşi în legătură strânsă cu cunoştiinţele

noastre anterioare despre sarcina de învăţare.

Le vom alege astfel în concordanţă cu urmatoarele ipoteze:

1. datele de antrenare D sunt fără constrângeri;

2. conceptul ţintă c este conţinut in H;

3. nici o ipoteză nu este mai probabilă decât alta: HhH

hP ,1

)(

Astfel:

altfel

DdxhdhDP

iii

,0

),(,1)|(

După ce vom trece de această etapă de definire şi îndeplinire a anumitor condiţii vom

putea spune cu adevărat că avem o problemă definită complet pentru algoritmul de învăţare brut

Bayes. În conformitate cu alegerea noastră pentru P(h) şi P(D|h) se poate spune că fiecare ipoteză

inconsistentă are probabilitatea 0 şi deasemenea că fiecare ipoteză consistentă este o ipoteză de

probabilitate maximă.

2.2 Probabilitatea maximă

Analiza Bayesiană poate fi folosită uneori pentru a arăta că un algoritm particular de

învăţare poate sa furnizeze ca şi rezultat ipoteza de probabilitate maximă chiar dacă acesta s-ar

putea să nu folosească regula Bayesiană sau să calculeze probabilităţiile în vreun mod.

Page 16: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

16

În statistică, estimarea probabilităţii maxime este o metodă de estimare a parametrilor

dintr-un model statistic. Atunci când aplicăm unui set de date un model statistic estimăm

parametri modelului prin estimarea probabilităţii maxime.

Algoritmul de determinare a probabilităţii maxime este şi el bazat pe regula Bayes.

Diferenţa se stabileşte la linia unde învăţarea Bayesiană foloseşte probabilităţiile anterioare ale

unui model, iar învăţarea bazată pe determinarea probabilităţii maxime nu. Cea din urmă se

bazează la determinarea probabilităţii maxime pe parametri anteriori, şi nu pe model.

Estimarea probabilităţii maxime vede paramatri ca şi cantităţi a căror valoare este fixată,

dar necunoscută. Aceste valori sunt estimate prin maximizarea probabilităţii de a obţine

exemplele observate. Această abordare de estimare este oarecum diferită de estimarea Bayesiană

care vede parametri ca şi variabile aleatoare având distribuţii anterioare cunoscute şi care

converteşte aceste distribuţii în distribuţii posterioare pe baza exemplelor de antrenare.

Metoda de estimare prin probabilitatea maximă este o parte fundamentală din analiza

datelor. În condiţiile în care învăţarea înseamnă antrenare este de multe ori nevoie de

aproximarea unor parametri bazându-ne pe datele de antrenare. Deşi acest lucru este destul de

greu de realizat el nu este imposibil. Având colecţia de date de antrenare D=(x1,x2, ...,xn) este

nevoie de estimarea unor parametri necunoscuţi, fie ei Ф, în sensul în care probabilitatea datelor

este maximizată. Probabilitatea datelor este dată de relaţia:

n

k

kxPDP1

)|()|( .

Logaritmul probabilităţii este:

n

k

kxPDPL1

)|()|(ln)( .

Având aceste date se ajunge la formula de determinare a probabilităţii maxime care este:

)|(maxarg)|(maxarg*

DLDP .

Aceasta este cea mai brutal metodă de aproximare a inferenţei Bayesiene şi deşi este cea

mai simplă soluţie pentru găsirea ponderilor, taie baneficiile tipului de învăţare Bayesian. Lipsa

de constrângeri asupra spaţiului de ponderi poate permite apariţia unor soluţii numeric

improbabile.

Una dintre problemele pentru care această metodă de aproximare este folosită este cea a

reducerii pătratului erorii[1]. Problema învăţării unei funcţii ţintă continue este o problemă cu

care se confruntă multe abordări ale învăţării, şi amintim aici reţelele neuronale, regresia liniară şi

montarea curbelor polinomiale. O analiză Bayesiană simplă va arăta că pe baza anumitor ipoteze,

orice algoritm de învăţare care minimizează pătratul erorii dintre predicţiile ipoteză de ieşire şi

datele de antrenare, va returna o ipoteză de probabilitate maximă. Semnificaţia acestui rezultat

este că el oferă o justificare Bayesiană pentru multe reţele neuronale sau metode de montare a

Page 17: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

17

curbelor care doresc să minimalizeze suma pătratelor erorii peste datele de antrenare. Având un

sistem nevoit să înveţe se consideră o instanţă a spaţiului X şi un spaţiu de ipoteze H definit pe X

ca și un spaţiu de funcţii reale(fiecare hєH este o funcţie de forma Xh : ). Sarcina acestiu

sistem este de a învăţa o funcţie ţintă necunoscută, hєH, definită în forma precizată. Un set de m

exemple de antrenare este prevăzut, în cazul în care valorile ţintă a fiecăriu exemplu sunt corupte

aleatoriu de perturbaţii în conformitate cu o distribuţie de probabilitate normală. Mai precis,

fiecare exemplu este o pereche de forma(xi,di), unde di=f(xi)+ei, f(xi) este valoarea neperturbată a

funcţiei ţintă şi ei este o variabilă aleatoare care simbolizează perturbaţia. Se presupune că

valorile ei sunt independente şi sunt distribuite în conformitate cu distribuţia normală de

probabilitate cu medie 0. Sarcina sistemului este de a obţine o ipoteză de probabilitate maximă

sau o ipoteză maximă ulterioară(MAP) echivalentă în cazul în care toate ipotezele au aceeaşi

prioritate.

Distribuţia normală a probabilităţii care apare la ei, este o distribuţie bună care poate fi în

totalitate caracterizată prin media ei şi abaterea standard.Vom arăta cele propuse pornind de la

ecuaţia care defineşte ipoteza de probabilitate maximă, cu precizarea că vom folosi p pentru a ne

referi la densitatea de probabilitate:

)|(maxarg hDph

HhML

.

Asumând faptul că exemplele de antrenare sunt independente de h, putem scrie P(D|h) ca

şi produs a p(di|h):

m

i

iHh

ML hdph1

)|(maxarg .

Deseori este mult mai uşor să se lucreze cu logaritmul funcţiei de probabilitate, caz în

care se obţine:

Hh

n

i

i

n

i

iHh

ML hdphdph

11

)|(logmaxarg)|(logmaxarg .

Luând în calcul perturbaţia ei, cu distribuţia de probabilitate normală, de medie 0 şi

varianţă necunoscută, se denotă faptul că şi di trebuie să fie tot normal distribuită şi cu aceeaşi

varianţă centrată în jurul funcţiei ţintă f(xi). După calculele de rigoare şi eliminări ale elementelor

care nu depind de h se ajunge la următoare expresie a ipotezei de probabilitate maximă:

m

i

iiHh

ML xhdh1

2))((minarg .

Prin aceasta este demonstrat faptul că ipoteza de probabilitate maximă este cea care

minimalizează suma pătratelor erorii peste datele de antrenare de valori di şi predicţiile de ipoteze

h(xi).

Dacă numărul de parametri este m, T

mhhh ),...,( 1 se defineşte operatorul gradient:

Page 18: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

18

m

h

h

h

.

.

.

1

.

Atunci, estimarea probabilităţii maxime trebuie să satisfacă condiţiile de necesitate:

n

i

n

i

ihih hdphdp1 1

0)|(log)|(log .

Având în vedere toate cele prezentate anterior pot fi conturate câteva dintre proprietăţiile

estimării probabilităţii maxime. Ea reprezintă punctul pentru care exemplele observate sunt cele

mai probabile. Procedura cu derivatele parţiale poate da ca şi rezultat câteva extreme locale.

Pentru a determina un optim global, trebuie să fie verificate fiecare dintre aceste soluţii în mod

individual. O proprietate invariantă este aceea că, dacă se obţine că hML este probabilitatea

maximă pentru spaţiul de ipoteze H, atunci pentru fiecare funcţie f(h), estimarea de probabilitate

maximă a lui f(h) este f(hML).

În funcţie de distribuţia de probabilitate pe care o au ipotezele din H, se poate vorbi

despre cazul Gaussian sau despre cel Bernouli. Pentru a măsura cât de bine se potriveşte o

distribuţie peste datele de antrenare, se poate folosi testul statistic Kolmogorov-Smirno. Acesta

este definit ca valoarea maximă a diferenţei absolute dintre funcţia de distribuţie cumulativă,

estimată în cadrul eşantionului de testare şi cea calculată din distribuţiile montate. După ce sunt

calculaţi parametri pentru diferite distribuţii, se poate calcula statistica Kolmogorov-Smirno

pentru fiecare distribuţie în parte şi se alege aceea cu cea mai mică valoare ca fiind cea mai

potrivită pentru exemplele alese.

Minimizarea sumei pătratelor erorii este o abordare în mai multe reţele neuronale, în

probleme de montare a curbelor şi alte abordări pentru aproximarea funcţiilor cu valori reale.

Analiza anterioară consideră apariţia perturbaţiei numai la nivelul valorilor ţintă din exemplele de

formare şi nu ia în considerare perturbaţiile care ar putea apărea la nivelul atributelor de descriere

a instanţelor. Aceasta este una dintre problemele de limitare ale abordării prezentate.

O altă problemă specifică reţelelor neuronale este cea referitoare la învăţarea prezicerilor

de probabilităţi. Să considerăm situaţia în care funcţia de învăţat este nedeterministă, cu două

valori discrete la ieşire, }1,0{: Xf . De exemplu, spaţiul instanţă X poate fi reprezentant de

pacienţii care au anumite afecţiuni medicale, iar valoarea funcţiei ţintă f(x) ar putea fi egală cu 1

dacă pacientul supravieţuieşte bolii şi 0, în caz contrar. La fel de bine X ar putea reprezenta

solicitanţii la un împrumut bancar împreună cu istoria lor de creditare şi f(x) ar putea fi 1 dacă

solicitantul ar putea rambursa cu success un împrumut viitor sau 0, în caz contrar. În ambele

Page 19: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

19

cazuri ne putem aştepta ca f să fie o funcţie probabilistică. De exemplu, dacă dintr-un set de

pacienţi cu aceleaşi simptomele observabile am avea ca şi rezultat că 92% supravieţuiesc, iar 8%

nu, imprecizia va veni tocmai din incapacitatea noastră de a respecta toate caracteristicile

distinctive ale pacienţilor sau de la un mecanism al evoluţiei bolii cu adevarat probabilistic.

Indiferent de sursa problemei, efectul e că funcţia ţintă de intrare este o funcţie probabilistică.

Având în vedere aceste date ale problemei, se caută o reţea neuronală care să înveţe

funcţia ţintă )1)(()('],1,0[:' xfPxfXf . În exemplul anterior, dacă x este unul dintre cei

92% dintre pacienţii care suprevieţuiesc bolii, atunci 92.0)(' xf deoarece, probabilistic, funcţia

f(x) va fi egală cu 1 în 92% dintre cazuri şi cu 0 în rest. Pentru ca p rețea neuronală să învețe

funcția 'f , o modalitate destul de brută ar fi aceea de a colecta prima dată frecvenţele observate

de 1 si 0 pentru fiecare posibilă valoare x şi de a instrui apoi reţeaua neuronală cu frecvenţa ţintă

pentru fiecare x. Însă, un mod mai efficient, este acela de a antrena mai degrabă direct din

exemple observate de funcţia f, dar obţinând pe lângă aceasta şi o ipoteză de probabilitate

maximă pentru 'f .

2.3 Clasificatorul Optimal Bayes

Trecând de la ipoteza de probabilitate maximă spre problemele de clasificare, una dintre

întrebările care apar este “care este cea mai probabilă clasificare pentru o nouă instanţă având în

vedere datele de antrenare?”. Răspunsul pare destul de simplu de dat atâta timp cât aplicarea

principiului de ipoteză de probabilitate maximă este posibilă. În realitate există o manieră mai

bună de rezolvare a problemei.

Pentru a dezvolta unele idei intuitive să considerăm spaţiul ipotezelor ca fiind compus din

3 instanţe: h1, h2 şi h3. Presupunem că probabilităţiile ulterioare ale acestor ipoteze, având în

vedere datele de antrenare, sunt 0.4, 0.3, respectiv 0.3. Astfel este uşor de observat faptul că

ipoteza de probabilitate maximă este h1. Să presupunem că este furnizată spre clasificare o nouă

instanţă X. Aceasta este clasificată pozitiv de către h1 şi negativ de către h2 şi h3. Luând în calcul

toate ipotezele, probabilitatea ca X să fie pozitivă este 0.4, iar cea ca X să fie negativă este 0.6. În

acest caz, cea mai probabilă clasificare(cea negativă) este diferită de clasificarea generată de

ipoteza de probabilitate maximă.

În general, cea mai probabilă clasificare a unei noi instanţe este obţinută prin combinarea

ponderată a predicţiilor tuturor probabilităţiilor ulterioare a ipotezelor din spaţiul problemei. Dacă

posibila clasificare a noului exemplu poate lua oricare valoare din setul funcţiilor ţintă(vi єV),

atunci probabilitatea P(vj |D) ca clasificarea corectă pentru noua instanţă să fie vj este chiar:

Hh

iijj

i

DhPhvPDvP )|(*)|()|(

Page 20: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

20

Optimul de clasificare a noii instanţe este valoarea vj pentru care P(vj|D) este maximă.

Astfel putem spune că optimul de clasificare al lui Bayes este dat de formula:

Hh

iijVv

ij

DhPhvP )|(*)|(maxarg .

Este important de remarcat faptul că nici un alt sistem de clasificare folosind acelaşi

spaţiu de ipoteze şi aceleaşi cunoştiinţe anterioare nu poate depăşi această metodă în termeni de

performanţă. Această metodă maximizează probabilitatea ca noua instanţă să fie clasificată corect

având în vedere datele problemei, spaţiul ipotezelor şi probabilităţiile lor anterioare.

Spre exemplu, în procesul de învăţare boolean, cu conceptele folosind diferite versiuni ale

spaţiului, clasificarea optimală Bayes a noii instanţe este obţinută prin luarea în calcul a unui vot

ponderat între toţi membrii spaţiului, cu fiecare ipoteză candidat, ponderată de probabilitatea ei

ulterioară. O proprietete interesantă a clasificatorului optimal Bayes este aceea că predicţiile pe

care acesta le face pot corespunde unei ipoteze care nu este conţintă in H[1]. Să presupunem că se

foloseşte formula de calculare a ipotezei optime de mai sus pentru a clasifica fiecare instanţă din

X. Etichetarea instanţelor definite în acest fel nu trebuie să corespundă cu etichetarea instanţelor

unei singure ipoteze hєH. O modalitate de a observa acest lucru este de a ne gândi la

clasificatorul optimal Bayes având în vedere un spaţiu al problemei diferit de H pentru care se

aplică teorema lui Bayes. În particular, acest spaţiu include efectiv ipotezele care fac comparaţii

între combinaţiile liniare a predicţiilor de la mai multe ipoteze din H.

Chiar dacă clasificarea optimală Bayes obţine cea mai bună performanţă care poate fi

obţinută din datele de antrenare, poate fi destul de costisitoare de aplicat. Costul este datorat

faptului că algoritmul calculează toate probabilităţiile ulterioare pentru fiecare ipoteză din H şi

apoi le combină cu fiecare ipoteză pentru a clasifica fiecare nouă instanţă.

Ca şi o alternativă, însă mai puţin optimă, se poate folosi metoda lui Gibbs[1]. Având o

nouă instanţă de clasificat, algoritmul lui Gibbs aplică pur şi simplu o ipoteză aleasă în funcţie de

distribuţia de probabilitate ulterioară peste spaţiul ipotezelor. În mod surprinzător, poate fi arătat

faptul că, în anumite condiţii, eroarea de clasificare comparativ cu clasificatorul optimal Bayes

nu este atât de mare[(Haussler et al. 1994] .

Page 21: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

21

CAPITOLUL 3

METODE DE ÎNVĂŢARE BAYESIANĂ

3.1 Clasificatorul Naiv Bayes

Una dintre cele mai vechi metode de clasificare este dată de Clasificatorul Naiv

Bayes(CNB). Deşi simplu în structură şi bazat pe presupuneri nerealiste, CNB a surclasat,

deseori, tehnici mult mai sofisticate. De fapt, datorită structuri sale extrem de simple, CNB este o

alegere foarte atractivă atunci când vine vorba despre un set de variabile independente mare. În

ciuda simplicităţii sale, CNB este rareori folosit în practică, cele mai populare pachete software

statistice neavând un modul de CNB. Motivele pentru acestea ar fi pe de o parte faptul căci

clasele de probabilitate părtinitoare ar putea fi o problemă reală pentru aplicaţiile de modelare în

care accentul nu cade neaparat pe clasificare. Un alt motiv este acela că CNB estimează sub

presupunearea că predicţiile sunt independent condiţionate, având în vedere valorile ţintă. Ca şi

un rezultat, relaţiile dintre variabilele dependente şi predicţii sunt estimate în mod izolat, fără a

lua în calcul covarianţa dintre predicţii. Prin urmare, CNB nu este capabil să aproximeze funcţii

de regresie multivariate şi ca un instrument de explorare a datelor nu se adaugă mai multe

informaţii decât o analiză univariată. În anumite domenii performanţele CNB au fost comparabile

cu cele ale reţelelor neuronale sau ale învăţarii în arbori de decizie. Succesul CNB, în prezenţa

carcteristicilor de dependenţă, poate fi explicată astfel: optimalitatea în termeni de pierdere zero-

unu(eroarea de clasificare) nu este neaparat legată de calitatea de a potrivi o distribuţie de

probabilitate. Mai degrabă, o clasificare optimă se obţine atâta timp cât ambele distribuţii efective

estimate sunt de accord cu privire la clasa cea mai probabilă.

Această metodă extrem de practică a învăţarii Bayesiene se aplică pentru sarcinile de

învăţare în cazurile în care fiecare instanţă x este descrisă printr-o conjuncţie de valori şi fiecare

funcţie ţintă )(xf poate lua orice valoare dintr-un anumit set finit de valori, V. Se porneşte de la

un set de date de antrenare pentru funcţia ţintă şi o nouă instanţă descrisă printr-un n-uplu de

valori atribut (a1,a2,..., an). Sistemul este solicitat să facă o predicţie cu privire la valoarea ţintă

sau la clasa din care face parte noua instanţă. Abordarea Bayesiană pentru clasificarea noii

instanţe constă în a îi atribui cea mai probabilă valoare ţintă având date valorile atributelor care

descriu noua instanţă. Să notăm cea mai probabilă valoare ţintă cu MAPv şi valorile atributelor cu

),...,,( 21 naaa . În acest caz avem relaţia: ),...,,|(maxarg 21 njVv

MAP aaavPvj

. Putem folosi

teorema lui Bayes pentru a rescrie relaţia şi vom obţine:

Page 22: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

22

),...,,(

)(*)|,...,,(maxarg

21

21

n

jjn

VvMAP

aaaP

vPvaaaPv

j

)(*)|,...,,(maxarg 21 jjnVv

vPvaaaPj

Acum se pune problema de a estima cele două probabilităţi care apar în relaţia de mai sus

pe baza datelor de antrenare. Este relativ simplu de estimat probabilitatea )( jvP , aceasta făcându-

se prin simpla numărare a frecvenţei cu care apare fiecare valoare ţintă jv în datele de antrenare.

Cu toate astea, estimarea diferiţilor termeni )|,...,,( 21 jn vaaaP în această manieră nu este posibilă

dacă setul de antrenare nu este extrem de mare. Problema este că numărul termenilor de acest fel

este egal cu numărul instanţelor înmulţit cu numărul posibilelor valori ţintă. De aceea trebuie să

vedem fiecare instanţă în spaţiul instanţelor de mai multe ori pentru a obţine estimări de date

fiabile.

CNB se bazează pe simpla presupunere că valorile atributelor sunt independent

condiţionate de valorile ţintă. Altfel spus, presupunerea este că având valorile ţintă ale

instanţelor, probabilitatea de a observa îmbinarea a1,a2,…,an este egală cu produsul

probabilităţiilor pentru atributele individuale[1]:

n

i

jijn vaPvaaaP1

21 )|()|,...,,( .

În aceste condiţii, formula pentru determinarea valorii ţintă de probabilitate maximă este:

n

i

jijVv

NB vaPvPvj 1

)|(*)(maxarg , unde prin NBv ne referim la valoarea ţintă de ieşire

pentru CNB. Este observabil faptul că în cazul CNB numărul termenilor )|( ji vaP distincţi care

trebuiesc estimaţi din datele de antrenare este acelaşi cu numărul de atribute cu valori distincte

înmulţit cu numărul de valori ţintă distincte. Acest număr este considerabil mai mic decăt

numărul de termeni )|,...,,( 21 jn vaaaP pe care i-am fi estimat iniţial.

Învăţarea CNB implică un pas de învăţare în care diferiţi termeni )( jvP şi )|( ji vaP sunt

estimaţi, bazându-ne pe frecvenţa lor peste datele de antrenare. Setul acestor estimări corespunde

ipotezelor care au fost învăţate în partea de antrenare. Aceste ipoteze sunt apoi folosite pentru a

clasifica fiecare nouă instanţă prin aplicarea ecuaţiei CNB. Oricând este îndeplinită ipoteza de

clasificare naivă Bayes cu privire la independenţa condiţională, NBv este identic cu clasificarea

data de ipoteza maximă corespunzătoare(MAP).

Dacă se vorbeşte despre problemele de clasificare binară, în care funcţia ţintă este 0 sau 1,

sunt cunoscute câteva limitări a CNB. El poate învăţa doar funcţii liniare ale discriminantului şi

de aceea este totdeauna suboptimal pentru concepe non-liniar separabile. În cazul în care funcţia

ţintă poate avea mai mult de două valori posibile, CNB este capabil să înveţe şi funcţii

polinomiale. Acesta este motivul pentru care este necesară separabilitatea polinomială, dar nu

Page 23: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

23

este condiţie suficientă pentru optimalitatea CNB pentru concept cu un domeniu de caracteristici

finit.

În ciuda limitărilor sale, CNB s-a dovedit a fi optim pentru unele clase de concepte care

au un grad ridicat de dependenţe facilitate, cum ar fi concepte disjunctive şi conjunctive. Tocmai

de aceea se poate spune că CNB este optimal pentru orice două clase de concepte cu caracteristici

nominale care atribuie clasei 0 exact un exemplu, şi clasei 1 un alt exemplu, cu probabilitatea

1[3]. O observaţie aproape evidentă este aceea că performanţa CNB scade odată cu creşterea

numărului de clase.

Surprinzător, precizia CNB nu este direct corelată cu gradul de dependenţe facilitate,

masurată ca informarea reciprocă între clasele condiţionate de caracteristici. În schimb, un

predictor de precizie mai bună este pierderea de informaţii care conţin caracteristici despre clase,

atunci când se presupune un model naiv Bayes. Cu toate acestea, în continuare studiul empiric şi

teoretic este necesar pentru a înţelege mai bine relaţia dintre aceste metrici de informaţii teoretice

şi comportamentul Bayes naiv. Direcţiile suplimentare includ, deasemenea, analiza naivă Bayes

cu privire la aplicabilitatea practică, care are dependenţe aproape deterministe, caracterizând alte

regiuni ale optimalităţii naiv Bayes şi studiul efectului diferiţilor parametri de date cu privire

la eroarea naiv Bayes. În cele din urmă, o mai bună înţelegere a impactului ipotezei de

independenţă asupra clasificări poate fi utilizată pentru a elabora tehnici de aproximare pentru o

mai bună învăţare a clasificatorilor Bayesieni, şi pentru deducţia probabilistică, spre exemplu,

pentru găsirea probabilităţii maxime.

O diferenţă interesantă între metoda de învăţare naivă Bayes şi alte metode este aceea că

în acest caz nu există o căutare explicită în spaţiul posibilelor ipoteze. În schimb, ipoteza este

formată fără căutare, prin simpla numărare a frecvenţelor diferitelor date combinate cu datele de

antrenare.

3.2 Reţele Bayesiene

Reţelele Bayesiene, cunoscute şi sub numele de reţele de încredere, aparţin familiei de

modele grafice probabilistice. Aceste structuri grafice sunt folosite pentru a reprezenta

cunoştiinţe despre un anumit domeniu incert. În particular, fiecare nod al grafului reprezintă o

variabilă aleatoare, în timp ce arcele dintre noduri reprezintă dependenţele probabilistice dintre

nodurile conectate. Aceste dependenţe condiţionate sunt deseori calculate folosind metode de

calcul statistic cunoscute. Prin urmare, reţelele bayesiene combină principii din teoria grafelor,

teoria probabilităţiilor, informatică, dar şi statistică.

Reţelele Bayesiene corespund structurii de modele grafice cunoscute ca şi grafe aciclice

dirijate, populare în statistici, maşini de învăţare, precum şi în rândul societăţii de Inteligenţă

Artificială[4]. Ele sunt deopotrivă riguroase matematic cât şi intuitibile de înţeles. Acestea permit

Page 24: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

24

o reprezentare eficientă de calcul a distribuţiei de probabilitate comună peste un set de variabile

aleatoare. Structura unui graf aciclic orientat este definită prin intermediul a două mulţimi:

mulţimea nodurilor şi cea a arcelor orientete. Nodurile sunt reprezentate de cercuri etichetate cu

numele variabilelor aleatoare. Nodurile sunt reprezentate ca şi dependenţe directe între variabile.

În particular, un arc de la nodul xi la nodul xj reprezintă o dependenţă statistică între variabilele

corespunzătoare nodurilor. Astfel, săgeata reprezintă faptul că valoarea luată de variabila xj

depinde de valoarea luată de variabila xi, sau altfel spus, xi infueţează xj. Referinţa la nodul xi este

cea de „părinte” a nodului xj, şi similar, xj este „fiu” pentru nodul xi. O extensie a acestor termeni

genealogici este adesea folosită pentru a defini setul „succesorilor”- setul nodurilor la care se

poate ajunge direct dintr-un nod- sau setul „predecesorilor”- setul nodurilor de la care se poate

ajunge în manieră directă la nodul curent. Structura unui graf aciclic garantează faptul că nici un

nod nu va fi propriul său succesor sau predecesor. Această condiţie este una de importanţă vitală

pentru factorizarea probabilităţiilor comune a unei colecţii de noduri. Este de remarcat faptul că,

deşi săgeţiile reprezintă legături directe de cauzalitate între variabile, procesul de raţionament

poate opera asupra reţelelor Bayesiene prin propagarea informaţiilor în orice direcţie.

O reţea Bayesiană reflectă o simplă declaraţie de independenţă condiţionată. Fiecare

variabilă este independentă de non-succesorii săi în grafic, având în vedere starea parinţilor ei.

Această proprietete este utilizată pentru a reduce, uneori în mod semnificativ, numărul de

parametri care sunt necesari pentru a caracteriza distribuţia de probabilitate comună a

variabilelor. Această reducere oferă o modalitate eficientă de a calcula probabilităţiile ulterioare,

având în vedere cunoştiinţele anterioare. În plus faţă de structura unui graf aciclic orientat, care

este adesea considerat a fi partea „calitativă” a modelului, trebuie precizaţi şi parametri ei

„cantitativi”. Parametri sunt descrişi într-o manieră consistentă cu proprietatea lui Markov, unde

distribuţia de probabilitate condiţionată în fiecare nod, depinde doar de parinţii nodului. Pentru o

distribuţie discretă a variabilelor, probabilitatea condiţionată este adesea reprezentată de o tabelă,

care reţine probabiliatea locală ca un fiu să aibă fiecare dintre valorile fezabile, pentru fiecare

combinaţie de valori ale parinţilor. Distribuţia comună a colecţiei de variabile poate fi unic

determinată pe baza acestui tabel local de probabilităţi condiţionate.

Astfel, poate fi spus că o reţea Bayesiană este un graf aciclic adnotat care reprezintă o

distribuţie de probabilitate condiţionată peste un set de variabile aleatoare. Altfel spus, o reţea

Bayesiană descrie distribuţia de probabilitate care reglementează un set de variabile prin

specificarea unui set de ipoteze independente condiţionate şi a unui set de probabilităţi

condiţionate.

În contrast cu clasificatorul naiv Bayes, care presupunea că toate variabilele sunt

independent condiţionate, având în vedere valoarea variabilei ţintă, reţelele Bayesiene permit

precizarea ipotezelor condiţionate independente care se aplică la subseturi de variabile. Prin

acestea ele oferă o abordare intermediară cu mai puţine constrângeri decât ipoteza globală de

Page 25: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

25

independenţă condiţionată facută de clasificatorul naiv Bayes, dar mai maleabilă decât evitarea

totală a ipotezelor independente condiţionate.

Există multe reprezentări disponibile pentru analizarea datelor, incluzând reprezentările

bazate pe reguli, arborii de decizie şi reţelele neuronale şi de asemenea sunt multe tehnici de

analizare a datelor cum ar fi estimarea densităţiilor, clasificări, regresii sau grupări. Cu toate

acestea reţelele Bayesiene şi metodele bazate pe teorema lui Bayes au de oferit ceva în plus[5].

În primul rând, reţelele Bayesiene pot manevra uşor seturi incomplete de date. Spre

exemplu, într-o problemă de clasificare sau de regresie pot exista două variabile de intrare

puternic anticorelate. Această corelaţie nu este o problemă standard pentru tehnicile de învăţare

supervizată în cazul în care toate intrările sunt măsurate în fiecare caz. Când una dintre intrări nu

este observată, oricum, majoritatea modelelor vor avea ca şi răspuns o predicţie fără o acurateţe

prea bună, deoarece ele nu codifică corelaţia dintre variabilele de intrare. Reţelele Bayes oferă o

modalitate naturală de a codifica astfel de dependenţe.

În al doilea rând, reţelele Bayesiene permit învăţarea relaţiilor cauzale. Acest proces de

înăţare este util situaţiilor în care dorim să înţelegem un domeniu problemă şi cunoştiinţele ne pot

permite să facem predicţii în prezenţa intervenţiilor. Spre exemplu, un analist de marketing s-ar

putea să îşi dorească să ştie dacă se merită sau nu să crească expunerea la un anumir anunţ, cu

scopul de a creşte vânzarea produsului. Pentru a răspunde la această întrebare, analistul poate

decide dacă publicitatea este o cauză a creşterii vânzărilor unui produs şi în ce măsură. Utilizarea

reţelelor Bayes ajută la găsirea unor astfel de răspunsuri chiar şi atunci când nu există

experimente despre efectele de expunere crescută.

În al treilea rând, reţelele Bayesiene împreună cu tehnicile statisticale Bayes facilitează

combinarea domeniilor de cunoştiinţe şi a datelor. Oricine a făcut o analiză a lumii reale ştie că

importanţa domeniului de cunoştiinţe sau a prirităţiilor este esenţială, în special atunci când

datele sunt rare. Faptul că unele sisteme comerciale, cum ar fi sistemele expert, pot fi construite

pe baza cunoştiinţelor anterioare este cu siguranţă o mărturie a puterii şi a necesităţii unor

cunoştiinţe anterioare. Reţelele Bayes au o semantică cauzală care face codificarea cunoştiinţelor

anterioare destul de simplă. În plus, ele codifică rezistenţa relaţiilor cauzale cu probabilităţi.

În al patrulea rând, metodele Bayesiene în combinaţie cu reţelele Bayes şi alte tipuri de

modele, oferă o abordare eficientă şi principială de evitare a aglomerării datelor. Nu este necesar

să deţinem unele dintre variabile pentru testare. Folosind abordarea Bayes, modelele pot fi

netezite până când toate datele disponibile pot fi folosite pentru antrenare.

În problemele de învăţare reale interesul cade asupra relaţiilor dintre un set mare de

variabile. Reţelele Bayesiene sunt o reprezentare potivită pentru această sarcină. Ele reprezintă un

model grafic care codifică eficient distribuţia de probabilitate comună pentru un set mare de

variabile. O reţea Bayesiană poate fi văzută ca şi un set de variabile },...,{ 1 nXXX care

compun o structură reţelistică S, răspunzătoare de codificarea unui set de afirmaţii de

Page 26: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

26

independenţă condiţionată asupra variabilelor X, şi un set P de distribuţii de probabiliate locală

asociate fiecărei variabile. Aceste componente definesc distribuţia de probabilitate comună

pentru X. Structura reţelistică S este graful aciclic orientat, iar nodurile din S sunt în relaţie de 1-

la-1 cu variabiele din X. Fie Xi variabila corespunzătoare nodului Xi şi Pai părinţii nodului Xi în

S. Lipsa unor posibile arce din S codifică independenţele condiţionate. În particular, având dată

structura reţelistică S, distribuţia de probabilitate comună pentru X este dată de relaţia:

n

i

ii Paxpxp1

)|()( .

Distribuţiile de probabilitate locală P sunt distribuţiile corespunzătoare termenilor din

produs. În consecinţă, perechea (S, P) codifică distribuţia comună p(x).

Probabilităţiile codificate de reţelele Bayesiene pot fi Bayesiene sau fizice. Când

construim reţele Bayesiene doar din cunoştiinţe anterioare, probabilităţiile vor fi Bayesiene. Când

învăţam aceste reţele din date, probabilităţiile vor fi fizice şi valorile incerte.

Pentru a ilustra procesul de construire a unei reţele Bayesiene considerăm problema

detectării fraudelor asupra cardurilor de credit. Prima problemă întâmpinată este cea a

determinării variabilelor modelului. O posibilă alegere ar fi Fraudă(F), Gaz(G), Bijuterii(B),

Vârstă(V) şi Sex(S). Acestea marchează dacă ultima achiziţie poate fi frauduloaasă sau nu, dacă

au fost achiziţionate gaze naturale sau bijuterii, precum şi vârsta şi sexul deţinătorului cardului.

Bineînţeles că într-o problemă reală vor fi incluse mult mai multe variabile. Deasemenea, am

putea modela starea uneia sau mai multora dintre aceste variabile la un nivel de detaliu. De

exemplu, putem preusupe că variabila Vârstă este una continuă. Starea acestor variabile este

ilustrată în imaginea din Fig. 1.

Fig. 1

Ca şi parte a sarcinii de lucru trebuiesc identificate clar obiectivele modelului(predictie/

explorare/ explicare); identificarea a cât mai multe observaţii care sunt relevante pentru problemă

şi determinarea unui subset de observaţii care sa fie luate în calcul pentru model; organizarea

observaţiilor în variabile având stări exclusive reciproc şi colectiv exhaustive. Dificultăţiile aici

nu sunt unice pentru modelarea problemei prin reţele Bayesiene, ci sunt comune în cele mai

multe abordări.

Page 27: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

27

Următorul pas pentru construirea unei reţele Bayesiene este acela de a construi graful

aciclic care să codifice relaţiile de independenţă condiţionată. O abordare pentru a face acest

lucru se bazează pe urmatoarele observaţii. Pornind de la lanţul regulii de probabilitate avem:

n

i

ii xxxpxp1

11 ),...,|()( .

Atunci, pentru fiecare Xi, va exista un subset },...,{ 11 ii XX astefel încât Xi şi

},...,{ 11 iXX \Πi sunt independent condiţionate având dat Πi. Deci, pentru fiecare x,

)|(),...,|( 11 iiii xpxxxp .

Combinând ultimele doua ecuaţii vom obţine:

n

i

iixpxp1

)|()( .

Comparând ecuaţiile obţinute până acum se observă faptul că setul de variabile (Π1,..., Πn)

corespunde setului de părinţi din reţeaua Bayes (Pa1,..., Pan), care la rândul său caracterizează pe

deplin arcele din structura reţelistică S.

În consecinţă, pentru a determina structura unei reţele Bayesiene, trebuiesc ordonate

cumva variabilele şi determinat setul de variabile care satisface ecuaţia

)|(),...,|( 11 iiii xpxxxp , pentru i=1,..., n. În exemplul anterior, folosind ordonarea (F, V, S,

G, B), obţinem independenţele condiţionale:

),,|(),,,|(

)|(),,|(

)(),|(

)()|(

svfbpgsvfbp

fgpsvfgp

spvfsp

vpfvp

.

Aplicând acestea obţinem structura prezentată în Fig.2.

Page 28: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

28

Fig. 2

Totuşi, această abordare are un mare dezavantaj. Dacă se alege aleator ordinea

variabilelor, structura rezultată a reţelei poate eşua în a dezvălui multe independenţe condiţionate

între variabile. Spre exemplu, dacă construim o reţea Bayesiană pentru problema fraudei folosind

ordinea (B, G, S, V, F) a variabilelor, vom bţine o structură reţelistică complet conectată. Astfel,

în cel mai rău caz, numărul de seturi ordonate de variabile care trebuiesc explorate este de n!, şi

asta pentru a găsi cea mai bună ordonare. Din fericire, există o altă modalitate de constriure a

unei reţele Bayes, care nu necesită o ordonare. Această abordare se bazează pe două observaţii:

oamenii pot găsi uşor relaţii între variabile şi relaţiile cauzale corespund dependenţelor

condiţionale. În particular, pentru a construi o reţea Bayes pentru un set de variabile dat, trebuie

doar trasate arcele de la variabilele cauză spre efectele lor imediate. În aproape toate cazurile,

această abordare duce la o structură reţelistică care satisface definiţia dată prin ecuaţia

n

i

ii Paxpxp1

)|()( . De exemplu, presupunând că Fraudă este o cauză directă a Gaz, şi Fraudă,

Vârstă şă Sex sunt cause directe a Bijuterii vom obţine aceeaşi stuctură reţelistică ca şi mai sus.

Semantica cauzală a reţelelor Bayesiene este responsabilă, în mare parte, pentru succesul reţelelor

Bayesiene folosite ca şi reprezentare pentru sistemele expert[1].

În etapa finală a construirii reţelei Bayes, se evaluează distribuţiile de probabilitate locală

)|( ii Paxp . În exemplul prezentat, unde toate variabilele au o distribuţie discretă, se evaluează o

distribuţie pentru Xi, pentru fiecare configuraţie a Pai.

Page 29: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

29

Este de remarcat faptul că în practică, de obicei, aceste secvenţe de paşi urmaţi sunt

amestecate. Spre exemplu, hotărârea independenţelor condiţionate şi/sau a cauzelor şi efectelor

pot influenţa formularea problemei. Deasemenea, evaluarea probabilităţiilor poate conduce la

modificarea structurii reţelei.

3.2.1 Deducţia în reţele Bayesiene

S-ar putea să dorim să folosim reţelele bayesiene şi pentru a deduce valoarea unei

variabile ţintă, având în vedere valorile observate ale altor variabile. Desigur, deoarece avem de-a

face cu variabile aleatoare atribuirea unei singure valori pentru variabila ţintă nu va fi corectă tot

timpul. Ceea ce se doreşte cu adevărat este deducerea distribuţiei de probabilitate pentru variabila

ţintă, ea specificând probabilitatea pe care o va lua fiecare dintre valorile sale posibile, având în

vedere valorile observate ale celorlalte variabile. Acest pas de deducţie poate fi unul extrem de

simplu, asta în cazul în care sunt cunoscute valorile pentru toate celelalte variabile din reţea. În

caz mai general, se pune problema deducerii unei valori pentru o variabilă ţintă, având în vedere

valori doar pentru un subset de variabile. În general, reţelele Bayesiene pot fi folosite pentru a

calcula distribuţia de probabilitate pentru orice subset de variabile de reţea având date valorile

sau distribuţia pentru orice subset de variabile rămase[1].

De exemplu, în problema anterioară privind detectarea fraudei, se doreşte să se cunoască

probabilitatea pentru Fraudă, având date observaţii despre celelalte variabile. Această

probabilitate nu este stocată direct în model, ci necesită a fi calculată. În general, calculul unei

probabilitîţi de interes având dat un model, este cunoscut sub numele de deducţie probabilistică.

Deoarece o reţea Bayesiană pentru X, determină distribuţia de probabilitate comună

pentru X, se poate, în principiu, folosi reţeaua pentru a calcula orice probabiliatte de interes. De

exemplu, pentru reţeaua prezentată mai sus, probabilitatea pentru Fraudă având în vedere

observaţiile despre celelalte variabile poate fi calculată astfel:

'),,,,'(

),,,,(

),,,(

),,,,(),,,|(

fbgsvfp

bgsvfp

bgsvp

bgsvfpbgsvfp .

Din păcate, pentru probleme cu multe variabile, această abordare directă de calcul nu este

una practică. Din fericire, măcar atunci când toate variabilele sunt discrete putem exploata

independenţele condiţionate codificate în reţeaua Bayesiană pentru a face calculul mai eficient. În

exemplul prezentat, avînd în vedere independenţele condiţionate obţinem ecuaţia echivalentă:

'

'

),,'|()'|()'(

),,|()|()(

),,'|()'|()()()'(

),,|()|()()()(),,,|(

f

f

svfbpfgpfp

svfbpfgpfp

svfbpfgpspvpfp

svfbpfgpspvpfpbgsvfp

Page 30: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

30

Mai mulţi cercetători au dezvoltat diferiţi algoritmi de deducţie probabilistică din reţele

Bayesiene, cu variabile discrete care exploatează independenţele condiţionate aproximativ în

aceeaşi manieră ca şi cea prezentată anterior, deşi cu diferite răsturnări de situaţie. De exemplu,

Howard şi Matheson (1981), Olmsted (1983), şi Shachter (1988) au dezvoltat un algoritm care

inversează arcele dintr-o structură reţelistică până în momentul în care răspunsul la interogarea

probabilistică dată poate fi citit direct din graf. În acel algoritm, fiecare arc intern corespunde

unei aplicaţii a teoremei lui Bayes. Pearl(1986) a dezvoltat o schemă de parsare a mesajelor care

actualizează distribuţia de probabilitate pentru fiecare nod dintr-o reţea Bayesiană, ca şi răspuns

la observaţiile uneia sau mai multor variabile. Lauritzen şi Spiegelhalter (1988), Jensen et al.

(1990), şi Dawid (1992) au creat un algoritm care prima dată transformă reţeaua într-un arbore în

care fiecare nod corespunde unui subset de variabile. Algoritmul exploatează câteva proprietăţi

matematice ale acestui arbore pentru a putea efectua deducţia probabilistică. Acesta din urmă este

cel mai des utilizat algoritm pentru variabilele discrete.

Metode pentru deducţia exactă în reţelele Bayesiene, care codifică distribuţii Gaussiene

multivariabile sau mixte, au fost dezvoltate de către Shachter şi Kenley (1989) şi respectiv

Lauritzen (1992). Aceste metode folosesc şi afirmaţiile de independenţă condiţionată pentru a

simplifica deducţia. Deasemenea, au fost dezvoltate şi metode de aproximare a deducţiei în reţele

Bayesiene cu alte tipuri de distribuţii, cum ar fi modelul general liniar de regresie.

Deşi independenţa condiţionată este folosită pentru a simplifica deducţia probabilistică,

pentru deducţia exactă într-o reţea Bayesiană aleatoare pentru variabile discrete timpul de

rezolvare polinomial este nedeterminist(Cooper, 1990). La fel este şi în cazul deducţiei

aproximative pentru metodele de tip Monte-Carlo. Sursa acestor dificultăţi constă în cicluri

nedirijate din structura reţelei Bayesiene- acele cicluri din structură unde sunt ignorate orientările

arcelor. Când o structură de reţea Bayesiană conţine multe cicluri nedirijate, deducţia este

imposibil de tratat. Cu toate acestea, pentru multe aplicaţii structura este destul de simplă(sau

poate fi simplificată suficient fără a sacrifica prea mult din acurateţe) astfel încât deducţia este

eficientă. Pentru aplicaţii unde metodele de deducţie sunt impracticabile, cercetătorii dezvoltă

tehnici care sunt adaptabile la tipologii specializate de reţele sau la interogări particulare de

deducţie.

Cu toate aceste metode de deducţii exacte, probabilistice sau aproximative care sacrifică

precizia pentru a obţine performanţă, metodele aproximative s-au dovedit a fi cele mai utile în

multe cazuri.

Reţelele Bayesiene au primit numeroase laude pentru că sunt considerate a fi un

instrument puternic pentru realizarea deducţiilor probabilistice, dar au unele limitări care

împiedică aplicarea lor pentru rezolvarea unor probleme mai complexe.

Page 31: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

31

3.2.2 Învăţarea reţelelor Bayesiene

Focusul mai multor cercetări este acela de a descoperi răspunsul la întrebarea: „Se pot

găsi algoritmi eficienţi pentru învăţarea în reţele Bayesiene din datele de antrenare?”.

Pentru această problemă pot fi considerate mai multe stări. Prima dată, structura reţelei

trebuie să fie dată în avans, sau trebuie sa fie deductibilă din datele de antrenare. În al doilea

rând, toate variabilele reţelei pot fi direct observabile în fiecare exemplu de antrenare, sau unele

sunt neobservabile.

În cazul în care structura reţelei este dată şi toate variabilele sunt observabile în exemplele

de antrenare, învăţarea tabelelor de condiţionare probabilistică este simplă. Se recurge la

estimarea pur şi simplu a tabelului de probabilitate condiţionată a intrărilor la fel ca şi în cazul

Clasificatorului Naiv Bayes.

În cazul în care e dată reţeaua, dar doar unele valori ale variabilelor sunt observabile din

datele de antrenare, problema învăţării e mai dificilă. Această problemă este analoagă cu

învăţarea ponderilor pentru unităţiile ascunse într-o reţea neuronală artificială, când sunt date

valorile nodurilor de intrare şi a celor de ieşire, dar sunt lăsate nespecificate valorile unităţiilor

ascunse.

În particular, dacă considerăm cea mai simplă versiune a problemei, vom folosi datele

pentru a actualiza probabilităţiile într-o reţea Bayesiană dată. Presupunând că distribuţia de

probabilitate comună fizică pentru X poate fi codificată într-o structură reţelistică S, se obţine:

n

i

h

iii

h

S SPaxpSxp1

),,|(),|( ,unde i este vectorul de parametri pentru distribuţia

),,|( h

iii SPaxp , S este vectorul de parametri (θ1 … θn), şi Sh simbolizează faptul ca distribuţia

de probabilitate comună fizică poate fi luată în funcţie de S. În plus, se consideră un eşantion

aleator D= {x1,…, xN} din distribuţia de probabilitate comună a lui X, iar un element xl va fi un

caz. Se codifică incertitudinile referitoare la parametri S prin definirea unei variabile Θs şi

aprecierea prealabilă a unei funcţii de densitate de probabilitate )|( h

S Sp . Problema de învăţare

a probabilităţiilor într-o reţea Bayesiană poate fi enunţată simplu: avâmd dat un eşantion aleator

D, să se calculeze distribuţia posterioară ),|( h

S SDp .

Funcţia de distribuţie locală este distribuţia ),,|( h

iii SPaxp , văzută ca şi o funcţie de

variabilă θi. această funcţie de distribuţie locală, în contextul învăţarii supervizate, nu este altceva

decât o clasificare probabilistică sau o funcţie de regresie. Astfel, o reţea Bayesiană poate fi

vazută ca o colecţie de clasificări probabilistic/ modele de regresie, organizate în funcţie de

relaţiile de independenţă condiţionată. Exemplele de modele de clasificare/regresie care produc

rezultate probabilistic includ regresia liniară, regresia liniară generalizată, reţele neuronale

probabilistice (e.g., MacKay, 1992a, 1992b), arbori de decizie probabilistici (e.g., Buntine, 1993;

Page 32: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

32

Friedman and Goldszmidt, 1996), metode de estimare a densităţii nucleului (Book, 1994), şi

metode dicţionar (Friedman, 1995). În principiu, fiecare dintre aceste forme poate fi folosită

pentru a învăţa probabilităţiile într-o reţea Bayesiană şi, în cele mai multe cazuri, sunt disponibile

şi tehnicile de învăţare Bayesiană. Cu toate acestea, cele mai studiate modele includ distribuţia

multinomială nerestrictivă (e.g., Cooper and Herskovits,1992), regresia liniară cu perturbaţii

Gaussiene(e.g., Buntine, 1994; Heckerman and Geiger,1996), şi regresia liniară generalizată(e.g.,

MacKay, 1992a şi 1992b; Neal, 1993; şi Saul et al., 1996).

În cazul distribuţiei multinomiale nerestrictive, fiecare variabilă Xi є X este discretă,

având ri posibile valori xi1, …, xi

ri, şi fiecare funcţie de distribuţie locală este o colecţie de

distribuţii multinomiale, câte una pentru fiecare configuraţie Pai. Adică, presupunem:

0),,|( ijk

h

i

j

i

k

i SPaxp , unde Pai1,..., Pai

qi (

ii Pax ii rq ) reprezintă configuraţiile

lui Pai şi ii q

jkr

ijki 12 ))(( sunt parametrii. Parametrul θij1 este dat de

ri

k ijk21 . Pentru

convenienţă se defineşte vectorul de parametri ),...,( 2 iijrijij , pentru fiecare i şi j.

Având date aceste clase de distribuţie de probabilitate, se poate calcula distribuţia

posterioară ),|( h

S SDp eficient şi în formă închisă, în două ipoteze. Prima dintre ele este aceea

că nu lipsesc date din eşantionul D şi atunci spunem că acesta este complet. A doua ipoteză este

aceea că vectorii de parametri θij sunt reciproc independenţi. Acestă ipoteză poate fi reprezentată

prin:

n

i

q

j

h

ij

h

S

i

SpSp1 1

)|()|( , numită şi independenţa parametrilor.

Având în vedere factorii de distribuţie de probabilitate comună conform unei structuri

reţelistice S, ipoteza de independenţă a parametrilor poate fi reprezentată de către o structură de

reţea Bayesiană mai mare. În conformitate cu ipotezele de date complete si independenţa

parametrilor, parametri rămân independenţi având un eşantion aleatoriu dat:

n

i

q

j

hh

S

i

SDijpSDp1 1

),|(),|( .

Astfel, putem actualiza valorile fiecărui vector de parametri θij independent, la fel ca şi în

cazul unei singure variabile. Presupunând că fiecare vector θij are distribuţia anterioară Dir(θij |

αij1, ..., αijri), se obţine distribuţia posterioară:

),...,|(),|( 11 ii ijrijrijijij

h

ij NNDirSDp , unde Nijk reprezintă numărul de cazuri

în care Xi=xik şi Pai=Pai

j.

În acest caz, calculele sunt simple deoarece distribuţiile multinomiale nerestrictive fac

parte din familia exponenţialelor. Calculele pentru regresia linară cu perturbaţii Gaussiene sunt

deasemenea simple (Buntine, 1994; Heckerman and Geiger, 1996).

Page 33: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

33

Însă, nu în toate cazurile de învăţare se cunosc toţi parametri. O diferenţă importantă în

ceea ce priveşte datele lipsă este prezenţa, sau nu, a unei observaţii care asigură o dependenţă

între valorile lipsă şi starea actuală a variabilelor. De exemplu, o dată lipsă într-un studiu referitor

la droguri poate indica faptul că starea pacientului s-a agravat încât nu a mai fost posibil să

participe la studiu. În contrast, dacă o variabilă este ascunsă, atunci absenţa acestei date este

independentă de stare. Totuşi, metodele Bayesiene şi modelele grafice sut potrivite pentru analiza

ambelor situaţii, metodele de manipulare a datelor care lipsesc în cazul în care absenţa este

independentă de starea generală fiind mai simple decât cele în care există o dependenţă.

Presupunând faptul că structura reţelei poate fi imbunătăţită, există totuşi o incertitudine

în ceea ce priveşte structura reţelei care codifică distribuţia de probabilitate comună pentru X.

Urmând abordarea Bayesiană, se codifică această nesiguranţă prin definirea unei variabile

discrete a cărei stare corespunde cu ipotezele posibile Sh din structura reţelei şi evaluările

probabilităţiilor p(Sh). Astfel, având dat un eşantion aleatoriu D din distribuţia de probabilitate

fizică pentru X, se calculează distribuţia posterioară p(Sh|D) şi distribuţia posterioară

),|( h

S SDp , şi se folosesc aceste distribuţii pentru a calcula datele de interes. De exemplu,

pentru a prezice următorul caz, după ce s-a luat în vedere D, se calculează:

hS

S

h

S

h

SN

h

N dSDpSxpDSpDxp ),|(),|()|()|( 11 .

În calcularea sumei, se presupune că ipotezele din structura reţelei sunt reciproc

exclusive. Calcularea lui )|( DSp h nu este dificilă, cel puţin în principiu. Din teorema lui Bayes

avem: )(/)|()()|( DpSDpSpDSp hhh , unde p(D) este o constantă de normalizare care nu

este dependentă de structură. În acest fel, pentru a determina distribuţia posterioară pentru

structura reţelei, este necesară calcularea probabilităţii marginale a datelor p(D|Sh), pentru fiecare

posibilă structură.

Din păcate, întreaga abordare Bayesiană care a fost descrisă este deseori imposibil de pus

în practică. O importantă piedică în calculare este pusă de media de peste modele din ecuaţia de

prezicere a unui următor caz. Dacă este considerat modelul de reţea Bayesiană cu n variabile,

numărul posibilelor structuri ipotetice este mai mult decât exponenţial în n. În consecinţă, în

situaţii în care utilizatorul nu poate furniza aproape toate ipotezele, abodarea este intratabilă.

Statisticienii, care s-au confruntat cu această problemă decade la rând în contextul altor

tipuri de modele, folosesc două abordări pentru a rezolva problema: selecţia modelelor şi media

modelului selectiv. Prima abordare este aceea de a selecta un model “bun” dintre toate modelele

posibile şi folosirea lui ca şi când ar fi modelul corect. Cea de-a doua abordare este de a selecta

un număr uşor de gestionat de modele bune dintre toate modelele posibile şi folosirea lor

pretinzănd că sunt modele exhaustive. Aceste abordări asemănătoare ridică mai multe semne de

întrebare. În particular, aduc aceste abordări acurateţea dorită atunci când sunt aplicate

Page 34: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

34

structurilor de reţele Bayesiene? Dacă da, cum se caută modelele cele mai bune? Şi cum se

decide dacă un model este sau nu bun?

Răspunsul referitor la acurateţe este unul greu de dat în teorie. Cu toate acestea, câţiva

cercetători au arătat prin experimente că selecţia unei singure ipoteze bune oferă adesea

previziuni exacte (Cooper and Herskovits 1992; Aliferis and Cooper 1994; Heckerman et al.,

1995b) şi că media modelelor folosind metode de tip Monte-Carlo poate uneori să fie eficientă şi

să ofere predicţii chiar mai bune (Madigan et al., 1996). Aceste rezultate sunt oarecumva

surprinzătoare şi sunt în mare măsură responsabile de marele interes recent asupra procesului de

învăţare cu reţele Bayesiene.

Este de observat faptul că media modelelor şi selecţia lor duce la modele care sunt bine

generalizate pentru datele noi. De aceea, aceste tehnici ne ajută la împiedicarea overfitting-ului

datelor. Metodele Bayesiene pentru media modelelor şi selecţia lor sunt eficiente atunci când

toate cazurile din D pot fi folosite atât pentru finisarea cât şi pentru antrenarea modelului. Acest

avantaj este valabil şi pentru abordarea Bayesiană în general.

3.3 Algoritmul Expectation-Maximization

În statistici, un algoritm de aşteptare a maximizării(EM=expectation-maximization) este

o metodă pentru găsirea probabilităţii maxime sau a maximei posterioare(MAP), estimări ale

parametrilor în modele statistice, în cazul în care modelul depinde de variabile latente

neobservate. EM este o metodă interactivă care alternează între a efectua o aşteptare(E), care

calculează probabilităţii aşteptate, evaluate folosind estimarea actuală pentru variabilele latente,

şi o etapă de maximizare(M), care calculează parametrii maximizând probabilitatea găsită la

pasul E. Aceste estimări ale parametrilor sunt apoi folosiţi pentru a determina distribuţia

variabilelor latente în următorul pas E.

Algoritmul EM are două aplicaţii principale. Prima dintre ele este cea în care valori ale

datelor lipsesc din cauza limitărilor sau a problemelor apărute în cadrul procesului de observare.

A doua apare atunci când funcţia de probabilitate poate fi obţinută şi simplificată prin

presupunerea că există parametri suplimentari, dar ei lipsesc.

Cu valori lipsă, sau parametri de date care sunt generate de unele ipoteze de distribuţii,

datele X se numesc date incomplete. Se presupune că datele complete, Z=(X,Y) există cu datele

lipsă Y, şi că există şi o funcţie de densitate comună, definită după cum urmează:

)|(*),|()|,()|( xpxypyxpzp

,unde θ este un set de parametri necunoscuţi dintr-o distributie incluzând şi un parametru

care lipseşte.

Cu funcţia de densitate se defineşte probabilitatea de date complete ca fiind:

Page 35: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

35

)|,(),|()|( YXpYXLZL .

Probabilitatea originală L(θ|X) este numită funcţia de probabilitate a datelor incomplete.

Deoarece datele lipsă Y sunt necunoscute sub o anumită ipoteză de distribuţie, ne putem gândi la

L(θ|X,Y) ca şi la o funcţie de o variabilă aleatoare, Y, cu valorile constante, X şi θ.

)(),|( ),( YfYXL X .

Folosind funcţia de probabilitate a datelor complete cu privire la datele lipsă Y, având în

vedere datele observate, algoritmul EM găseşte valorile preconizate, precum şi estimările actuale

ale parametrilor la pasul E şi maximizează aşteptările la pasul M.

Algoritmul EM găseşte, în primul rând, logaritmul probabilităţii datelor complete,

)|,(log YXp , cu privire la datele necunoscute Y, având datele X şi estimările curente ale

parametrilor. De aceea definim:

],|)|,([log),( )1()1( ii xYXpEQ

unde )1( i sunt estimările curente ale parametrilor pe care ii folosim pentru a evalua

aşteptările şi reprezintă noii parametri pe care îi optimizăm pentru a creşte valoarea lui Q.

Cheia pentru a înţelege această expresie este aceea că X şi )1( i sut constante, este o variabilă

normală pe care dorim să o ajustăm, şi Y este o variabilă aleatoare guvernată de distribuţia

),|( )1( iXyf . Partea dreaptă a ecuaţiei anterioare poate fi rescrisă sub forma:

Yy

ii dyXyfyXpXYXpE ),|()|,(log],|)|,([log )1()1( .

De observat este că ),|( )1( iXyf reprezintă distribuţia marginală a datelor

neobservate şi este dependentă atât de datele observate X cât şi de parametri actuali, iar Y este

spaţiul valorilor pe care le poate lua y. În cele mai bune cazuri, distribuţia marginală este o

expresie analitică simplă a parametrilor asumaţi şi poate a datelor. În cele mai rele cazuri,

densitatea poate fi foarte greu de obţinut. Uneori, densitatea folosită în practică este:

)|(),|()|,( )1()1()1( iii XfXyfXyf , dar aceasta nu are efectuaţi paşii anteriori,

deoarece factorul suplimentar )|( )1( i

X Xf nu depinde de θ.

Analogic, presupunem că avem o funcţie h de două variabile. Considerăm h(θ,Y), unde θ

este o constantă şi Y este o variabilă aleatoare guvernată de o distribuţie )(yfY . Atunci:

y

YY dyyfyhYhEq )(),()],([)( este o funcţie deterministică care poate fi maximizată

dacă se doreşte.

Această evaluare a aşteptării reprezintă pasul E al algoritmului. În funcţia Q(θ,θ’) primul

parametru corespunde parametrilor care vor fi optimizaţi la final în încercarea de a maximiza

probabilitatea, iar cel de-al doilea argument corespunde parametrilor pe care îi folosim pentru a

evalua aşteptările.

Page 36: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

36

Cel de-al doilea pas al algoritmului, pasul M, este de a maximiza aşteptările calculate la

primul pas. Acestea se obţin:

),(maxarg )1()( ii Q

.

Prin repetarea celor doi paşi se garantează creşterea probabilităţii logaritmului şi faptul că

algoritmul converge la un maxim local al funcţiei de probabilitate.

La fel ca în cazul oricărui algoritm, şi acesta a suferit modificări sau îmbunătăţiri odată cu

trecerea timpului. O variantă a sa ar fi algoritmul structural EM care incearcă să optimizeze direct

rezultatul Bayesian, mai rapid decât o aproximare asimptotică. Prezentarea este într-o stare

oarecumva mai generală decît a modelelor existente. Presupunem că avem un set de date de

intrare cu un număr de exemple. Presupunem că setul de date este fixat şi că denotă fiecare

valoare, fie că e furnizată, fie că lipseşte, în date de către o variabilă aleatoare. De exemplu, dacă

avem de-a face cu o problemă standard de învăţare unde setul de date de antrenare constă în N

instanţe, fiecare dintre ele fiind o posibilă parţială atribuire la k variabile, atunci avem nevoie de

kN variabile aleatoare care să descrie datele de antrenare. Fie O setul de variabile observate,

adică setul variabilelor a căror valoare a fost determinată de datele de antrenare. Similar, fie H

setul variabilelor ascunse, adică variabilele care nu au fost observate.

Presupunem existenţa unei clase de modele M, astfel încât fiecare model M є M este

parametrizat de un vector θM

astfel încât fiecare alegere de valori pentru θM

defineşte o distribuţie

peste V. Presupunem că avem cunoştiinţe anterioare despre modele şi despre valorile

parametrilor din fiecare model şi deasemenea faptul că variabilele iau valori dintr-un domeniu

finit. Cu toate acestea, rezultatul obţinut poate fi aplicat cu uşurinţă şi variabilelor continue

standard. Pentru a găsi un model de probabilitate maximă este suficient dacă se maximizează

)()|( hh MPMDP , deoarece termenul de normalizare P(Mh) este acelaşi pentru toate modelele

noi de comparare. Se presupune deasemenea că poate fi calculată, sau cel puţin estimată,

probabilitatea datelor complete, P(H,O hM| ). Se mai presupune că având un model se pot

efectua predictive de deducţie eficiente. Deşi acest lucru nu este valabil şi pentru modelele

factorizate, pentru acestea se poate calcula în mod eficient aproximări. Având în vedere toate

aceste date, algoritmul sistematic EM poate fi definit astfel[6]:

Până nu s-a ajuns la convergenţa algoritmului, pentru n=0,1,...

Se calculează probabilitatea posterioară ),|( oMP h

n

Mh

La pasul E: pentru fiecare M, se calculează:

h

hh

n

h

n

h

n MohPMohPoMMoHPEMMQ ),,(log),|(],|),,([log):(

La pasul M: se alege Mn+1 care maximizează Q(M: Mn)

Dacă Q(Mn: Mn)= Q(M n+1: Mn) atunci rezultatul este Mn.

Page 37: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

37

Ideea acestui algoritm este aceea că la fiecare iteraţie se urmăreşte maximizarea scorului

aşteptat a modelelor în schimbul scorului lor actual.

Algoritmul EM este util, în special, atunci când probabilitatea este o familie exponenţială.

Atunci pasul E devine suma aşteptărilor a suficiente statistici, iar pasul M presupune

maximizarea unei funcţii liniare. Într-un asemenea caz, de obicei, este posibil să se obţină un

formular închis de actualizări pentru fiecare pas, folosind formula lui Sundberg.

Există şi alte metode de găsire a estimării riscului maxim, cum ar fi coborârea gradient,

gradient conjugat, sau variaţii ale metodelor Gauss-Newton. Spre deosebire de algoritmul EM,

astfel de metode impun, de obicei, evaluarea primei şi/sau a celei de-a doua derivate a funcţiei de

probabilitate.

EM este frecvent utilizat pentru gruparea(clustering) datelor în procesele maşinilor de

învăţare automată. În procesarea limbajului natural sunt folosite două instanţe ale algoritmului.

Algoritmul Baum-Welch(cunoscut şi sub numele de „înainte-înapoi”) şi algoritmul de interior-

exterior pentru inducţia nesupervizată a probabilităţiilor gramaticilor independente de context. În

psihometrie, EM este aproape indispensabil pentru estimarea parametrilor elementelor şi a

abilităţiilor latente a elementelor de teorie a răspunsului modelelor.

Algoritmul EM(şi varianta sa mai rapidă Aşteptarea maximizată a unui subset ordonat)

este, de asemenea, utilizat pe scară largă în reconstrucţia de imagini medicale, în special, în

tomografia cu emisie de pozitroni şi tomografia computerizată cu emisie de foton unic.

Page 38: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

38

CAPITOLUL 4

REZULTATE ALE CERCETĂRII ÎN UTILIZAREA

METODELOR DE ÎNVĂŢARE BAYESIENE

Abordarea Bayesiană implică colectarea datelor din experieţele antrerioare cu scopul de a

ajunge la concluzii privitoare la evenimentele din viitor. Metodele Bayesiene au devenit destul de

populare în ultimii ani, cu aplicare în diferite domenii de cercetare. La fel ca orice ramură a

inteligenţei artificiale, şi aceasta „suferă” modificări în mod continuu, fiind sub atenta privire a

cercetătorilor dornici să descopere ceva nou.

4.1 Clasificatorul Naiv Bayes

Este cunoscut faptul că una dintre cele mai des rezolvate probleme folosind tematica

Bayesiană este cea referitoare la clasificarea textelor. Deşi poate părea cel puţin ciudat, în această

problemă, abordarea Bayesiană a surclasat alţi algoritmi mult mai sofisticaţi, obţinând acurateţi

impresionante. Tot în aceeaşi tematică se încadrează şi problema de filtrare a mail-urilor. Cea mai

faimoasă abordare în acest caz este cea a lui Paul Graham, împreună cu îmbunătăţirile aduse de

Tim Peter[8]. Această problemă de clasificare binară este rezolvată în manieră simplă, folosind în

mare parte Clasificatorul Naiv Bayes, dar la care i s-au adus anumite modificări. Clasificatorul

Bayesian corelează anumite cuvinte sau simboluri, cu calitatea de spam sau de non-spam a unui

mail şi apoi, folosind deducţia Bayesiană, calculează probabilitatea ca un mail sa facă parte dintr-

o categorie sau alta.

Diferite variante ale tehnicii Bayesiene de bază au fost puse în aplicare într-o serie de

lucrări de cercetare şi produse soft comercializabile. Mulţi dintre clienţii moderni de mail au

implementat un mecanism de filtrare a spamurilor bazat pe tehnica Bayesiană. De cele mai multe

ori, chiar şi clienţii îşi pot instala programe de filtrare de mailuri. Pe parte de server, filtrele de

spam-uri, cum ar fi DSPAM, SpamAssassin, SpamBayes, Bogofilter sau ASSP, folosesc tehnicile

de filtrare Bayesiene, iar funcţionalitatea este încorporată în softwareul de server.

O altă direcţie în care se încearcă punerea în practică a sistemelor inteligente este

medicina. Deşi procentul pacienţilor care se încred în deciziile luate de sistemele inteligente este

destul de mic, acest lucru nu îi descurajează pe cercetătorii care se încăpăţanează în a oferi

variante de siteme îmbunătăţite zi de zi şi care ating o acurateţe uneori mai mare decât cea a

medicilor. Un exemplu de sistem care ar putea fi folosit în acest sens şi care are o acurateţe de

84% este cel de evaluare a riscului de reapariţie sau de progresie a cancerului după radioterapie.

Page 39: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

39

În cadrul acestui studiu au fost analizate datele de la 142 de pacienţi cu tumoare pe creier care au

fost iradiate din 2000 până în 2005. Au fost alese 96 de atribute referitoare la boală, la pacient şi

la tratement. Aceste atribute, în formă binară, au constituit setul de date de antrenare pentru

clasificatorul naiv Bayes. Acesta din urmă a calculat o probabilitate condiţionată individuală de a

fi categorisit ca şi: reapariţie sau progresie(1), şi nerecidivare sau progresie(0). Precizia, selecţia

atributelor şi calitatea clasificării au fost determinate prin compararea cu rezultatele actuale ale

tratamentului şi metoda de validare încrucişată.

În cadrul aceluiaşi test, cu scopul de a găsi cel mai potrivit sistem pentru problema de

rezolvat, s-au folosit şi alte sisteme şi au fost comparate rezultatele obţinute. S-a apelat la arborii

de decizie şi la reţelele Bayesiene- care par a fi cele mai des utilizate sisteme în medicină- şi

rezultatele comparative sunt surprinse de tabelul următor[7]:

Sistem Performanţă Sensibilitate Specificitate

Clasificatorul Naiv Bayes 82% 0.79 0.83

Reţele Bayesiene 80% 0.73 0.85

Arbori de decizie 71% 0.62 0.75

După o evaluare iniţială studiile suplimentare cu alte sisteme au fost întreupte.

Clasificatoarele precum arborii de decizie sau reţelele neuronale ar necesita un mai mare efort de

lucru cu sistemele din parte clinicianului. Este necesară reducerea arborilor de decizie pentru

eliminarea normelor ireale generate de sistem. Extinderea arborilor cu noi atribute este, de

asememenea, o problemă consumatoare de timp şi spaţiu. În mod similar, folosirea reţelelor

neuronale în contextul clinic de zi cu zi ar putea fi o şi mai mare sursă de probleme. Evaluarea

importanţei atributelor în reţelele neuronale nu este posibilă, ceea ce îngreunează procesul de

generalizare şi de optimizare. Astfel, atenţia a rămas concentrată asupra CNB, deoarece are cea

mai bună performanţă, sensibilitate, specificitate şi simplitate în întreţinere. Rezultatele obţinute

sunt foarte încurajatoare şi justifică dezvoltarea în continuare a sistemelor bazate pe CNB, ca un

instrument valoros în sprijinirea deciziilor clinice zilnice.

O altă problemă interesantă de abordat pentru domeniul informatic este cea de

recunoaştere a expresiilor faciale şi a emoţiilor. În acest sens, pentru rezolvarea provocării s-a

folosit clasificatorul naiv Bayes Cauchy, care foloseşte ca şi model de distribuţie, distribuţia

Cauchy, deoarece s-a demonstrat în manieră experimentală că oferă rezultate mai bune decât cea

Gaussiană. Baza oricărui sistem de recunoaştere constă în extragerea celor mai bune caracteristici

pentru a descrie fenomenul fizic. Aşadar, clasificarea imaginilor vizuale relevate de expresia

facială este un pas înainte ca orice recunoaştere de expresie să poată fi atinsă. Un prim pas este

acela de a se găsi un model care să asocieze mişcarea muşchilor faciali unei expresii. Acest

model trebuie sa fie cât mai general pentru a putea fi aplicat tuturor oamenilor. Cel mai bun

model cnoscut este dat de către un studiu al cercetătorilor Ekman şi Friesen, cunoscut sub numele

Page 40: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

40

de Sistemul de Codificare a Acţiunilor Faciale(SCAF). Acesta clasifică expresiile faciale în şase

categorii de bază care corespund trăirilor de: bucurie, surprindere, tristeţe, frică, furie şi dispreţ.

SCAF codifică expresiile faciale ca şi o serie de combinaţii de mişcări ale muşchiilor faciali.

Testarea algoritmului de clasificare a expresiilor faciale a fost realizată pe un grup de 5 oameni

care au mimat câte 6 secvenţe de expresii, cuprinzând toate cele 6 categorii. Cinci dintre secvenţe

au fost folosite în procesul de antrenare şi una a fost lăsată pentru testare. Media de performanţă

obţinută pentru distribuţia Gaussiană este de 79.36%, iar pentru cea Cauchy de 80.05%[11] Se

poate observa că folosirea distribuţiei Cauchy nu aduce decât o mică îmbunătăţire a performanţei.

Deşi acurateţea obţinută nu este tocmai mare, după procesul de antrenare, sistemul poate totuşi

prezice, cu o acurateţe de 88-89% dacă o persoană afişează o expresie facială pozitivă sau

negativă.

O variantă îmbunătăţită a CNB, numită CNB Dinamic, a fost folosită pentru

recunoaşterea vizuală a gesturilor. Potrivit unui studiu realizat, cu un set de 150 de exemple

pentru fiecare dintre cele 5 gesturi elementare(atenţie, vino, înainte, stop şi la stânga), precizia

obţinută este de 96,75%.

Algoritmul clasic CNB consideră atribute şi clase cu domenii discrete. Atunci când are

de-a face cu domenii continue, clasificatorul necesită unele modificări. O modalitate de rezolvare

a problemei este aceea de a partiţiona, de a discretiza domeniul de atribute într-un număr finit de

seturi clasice. Dar acest lucru poate cauza o pierdere de informaţii. O metodă mai bună constă

într-o hibridizare a clasificatorului, punând împreună Teoria Fuzzy şi CNB, numit CNB Fuzzy:

ii nn

ni

Xx Xx

xnxCa

cxPcxPcP )|(...)|()(argmaxy(a)FNBClassif 1

, unde ]1,0[ix denotă o funcţie membru sau ii Xx într-un nou exemplu a. Pentru a fi

conservativ, este necesar ca toate să fie normalizate în ipoteza variabilei curente, în cazul acesta

1 ii iXx x . Clasificatorul a fost antrenat sub scenariul în care un agent aruncă mingea unui

coechipier şi un adversar încearcă să intercepteze trecerea. Clasificatorul, antrenat cu 1000 de

example, a clasificat corect un set de 250 de exemple, în proporţie de 80%. Acest rezultat este

mai bun decât cel obţinut cu implementarea folosind arbori de decizie, care a obţinut o

performanţă de 65%. Se crede că performanţa unui astfel de sistem este în stânsă legătură cu

modul de construire a seturilor fuzzy, şi că ar putea creşte dacă seturile ar fi construite mai atent.

4.2 Reţele Bayesiene

Reţelele Bayesiene au devenit un instrument extrem de universal pentru cercetători,

practicieni şi factorii de decizie managerială. Acestea au fost aplicate cu succes într-o gamă largă

Page 41: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

41

de domenii precum: exploatarea datelor, marketing, gruparea clienţilor, medicină, detecţia

fraudelor, analiza riscurilor, planificare strategică, seismologie, meteorologie, ş.a.

Reţelele Bayesiene sunt cunoscute pentru faptul că furnizează o reprezentare compactă şi

simplă a informaţiilor probabilistice, care permit crearea de modele asociind un număr mare de

variabile.

Un exemplu de aplicare al reţelelor Bayesiene ar putea fi în prezicerea numărului de

defecte găsite într-un modul software. Acest factor depinde de numărul de defecte reziduale şi

este de asemenea critic dependent de cantitatea de utilizare prin operaţionare a softului. Dacă

sistemul nu este folosit atunci nu se vor găsi defecte, indiferent dacă ele există sau nu. Numărul

de defecte reziduale este determinat de numărul de defecte introduse în timpul dezvoltării minus

numărul de defecte găsite şi depanate. Evident este faptul că numărul de defecte găsite şi

depanate este dependent de numărul de defecte introduse în sistem. Acesta din urmă este la

rândul său influenţat de gradul de complexitate şi de calitatea design-ului produsului. În cele din

urmă, numărul de defecte constatate este influenţat în mare parte şi de nivelul efortului de testare.

Dacă spre exemplu este cunoscut faptul că în sistem au fost introduse două defecte şi că gradul de

testare este bun, atunci probabilitatea de a descoperi cele două erori este de 0.9 întrucât

probabilitatea de a găsi un singur defect este de 0.1[9]. Pentru organizaţiile care colectează deja

date de metrici software, utilizarea reţelelor Bayesiene, pentru anticiparea defectelor soft şi a

fiabilităţii, este un argument destul de convingător. Modelele de cauzalitate permit încorporarea

de factori explicatori simpli, cum ar fi efortul de testare, care pot avea un impact major asupra

rezultatelor prevăzute. În timp ce astfel de modele de reţele Bayesiene s-au dovedit a fi utile,

precizia lor a fost constânsă în mod tradiţional de subiectivitatea care rezultă în mod inevitabil

din suscitarea expert şi de discretizările statice necesare în algoritmi de deducţie.

Reţelele Bayesiene sunt folosite deseori şi pentru a reduce lipsurile altor sisteme în

diferite probleme. Unele dintre acestea sunt şi sistemele de procesare ale limbajului natural care

de obicei au performanţe scăzute, deoarece ele se bazează pe cunoştiinţe nesigure şi eterogene.

De exemplu, atunci când un pronume se referă la o expresie lingvistică anterior introdusă în text,

este anaforic. Acest lucru este des întâlnit în limba engleză prin folosirea pronumelui „it” care

deseori este gol din punct de vedere semantic. Orice sistem de rezoluţie anaforică începe prin

identificarea apariţiei pronumelui şi distringerea între apariţia lui anaforică şi cea non-anaforică.

Primele sisteme care au abordat această problemă de clasificare s-au bazat fie pe reguli scrise

manual fie pe învăţarea automată a unor indici relevanţi. Indiferent de startegia utilizată,

performanţa acestor sisteme este limitată de calitatea cunoştiinţelor pe care le exploatează, care

de obicei sunt doar parţial credibile şi eterogene. O nouă abordare care să treacă dincolo de

limitările tradiţionale este folosirea reţelelor Bayesiene. Ca şi un formalism probabilistic, ea oferă

capacitatea de a integra cunoştiinţe eterogene într-o reprezentare unică precum şi un mecanism

elegant de luare în considerare a unei estimări prioritare de fiabilitate în decizia clasificării.

Page 42: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

42

Reţelele Bayesiene sunt un model conceput pentru a manevra informaţii mai dubioase decât alte

sisteme. Acestea se bazează pe o descriere calitativă a relaţiilor de dependenţă şi un set de

probabilităţi condiţionate, fiecare nod reprezentând o variabilă aleatoare. Explorarea reţelei

constă în propagarea de noi informaţii în reţea şi actualizarea celor deja existente, în conformitate

cu observaţiile. În urma unor studii realizate în paralel pe diferite sisteme s-au obţinut

următoarele rezultate:

Metoda Rezultat

Reguli puternice de constângere 88.11%

Reguli slabe de constrângere 88.88%

Maşini cu suport vectorial 92.71%

Clasificatorul Naiv Bayes 92.58%

Reţele Bayesiene 95.91%

Această comparaţie confirmă faptul că reţelele Bayesiene propun un mod interesant de a

combina diverşi indici, chiar dacă unii dintre ei nu erau de încredere totală. Prin studiul realizat

se aşteaptă confirmarea contribuţiei reţelelor Bayesiene în problemele de procesare a limbajului

natural pe o sarcină care este mai complexă decât cea de clasificare a apariţiei pronumelui „it” , şi

anume rezoluţia anaforă[10].

Un alt cadru sugestiv care utilizează o filizofie probabilistică Bayesiană este cel al

sistemelor de evaluare a riscurilor, spre exemplu în cadrul cutremurelor. Cadrul permite

dezvoltarea unor modele de risc care sunt uşor de actualizat şi facilitează caracterizarea

sistemelor care sunt luate în considerare în ceea ce priveşte capacitatea de a susţine

despăgubiri(vulnerabilitatea) şi capacitatea de a limita consecinţele pentru efectul direct al

daunelor(robusteţea). O reţea Bayesiană este modelată ca şi o clasă de obiecte, aplicată pentru

fiecare clădire în parte. Orice informaţie în ceea ce priveşte indicatorii caracteristici poate fi

utilizată cu scopul de actualizare a probabilităţiilor Bayesiene necesare în evaluarea de risc. Într-

un astfel de cadru, indicatorii pe baza cărora se iau deciziile de risc joacă un rol foarte important.

Spre exemplu, indicatori de evaluare a riscului pentru un oraş pot fi consideraţi a fi orice cantităţi

legate de încărcarea clădirilor(expunerea), puterea componentelor structurii(vulnerabilitatea) sau

redundanţa, ductilitatea şi eficienţa controlului asupra întreţinerii(robusteţea).

Pentru că o reţea Bayesiană permite calculul probabilistic pentru orice tip de declaraţie, în

cazul în care se cunosc toate variabilele relevante, ea poate fi folosită şi pentru diagnosticare

medicală, predicţie şi/sau selecţia tratamentului. Aceeaşi reţea, poate fi folosită pentru a trata o

gamă variată de probleme decizionale medicale. Diagnosticarea pneumoniei, spre exemplu, este o

sarcină destul de dificilă deoarece niciuna dintre simptome nu este cauzată de agenţi patogeni. Cu

precădere în secţiile de terapie intensivă este comun pentru un pacient să aibă febră, deoarece

există multe situaţii cauzatoare de febră diferite de pneumonie. Este nevoie şi de alţi indicatori

Page 43: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

43

specifici pentru a putea exista siguranţa că boala despre care se vorbeşte este pneumonia.

Modelul Bayesian încorporează cunoştiinţele temporale despre diagnosticul de pneumonie, deşi a

fost demostrat recent că acest lucru nu este cu adevărat important.

4.3 Forme hibridizate

Algoritmii hibrizi exploatează cele mai bune proprietăţi ale diferitelor metode pentru a

rezolva, în manieră cât mai eficientă, diferite probleme. Cu acelaşi scop au fost proiectaţi o serie

largă de algoritmi care au ca şi punct comun teoria Bayesiană. Fie că este vorba de hibridizări la

nivelul căutării celei mai probabile ipoteze, fie că este vorba de combinarea cu arborii de decizie

sau maşinile cu suport vectorial, raţionamentul Bayesian a fost păstrat.

Un astfel de algoritm hibrid este şi algoritmul de clasificare numit Arborele-NB(NB-Tree)

folosit pentru clasificarea unui set de înregistrări. Aceste include o structură de arbore de decizie

având niciunul sau mai multe noduri de decizie şi unul sau mai multe noduri frunză. În fiecare

nod de decizie se efectuează un test pe baza a unuia sau mai multor atribute. În fiecare nod

frunză, un clasificator, bazat pe raţionamentul Bayesian, clasifică înregistrările. Arborele-NB

pare a fi o abordare viabilă pentru a induce clasificatoarele pe seturi de date unde mai multe

atribute sunt relevante pentru clasificare, sau nu sunt neaparat independente. La fel de bine

algoritmul este aplicabil pentru baze de date extrem de mari unde interpretabilitatea unui

clasificator este importantă. În practică, Arborii-NB sunt prezenţi la scară largă în bazele de date

şi, în general, surclasează arborii de decizie sau CNB, luaţi independent.

După cum am afirmat şi în capitolul anterior, problema învăţării reţelelor Bayesiene este

o problemă cu timp polinomial nedeterminist. Pentru a reduce complexitatea Bayesiană de

alegere a structurii reţelistice, s-a ajuns la o hibridizare bazată pe algoritmii genetici. În

cromozomul genetic sunt memorate informaţii despre numărul părinţilor nodului curent, numărul

părinţilor fiecăruia dintre părinţii nodului curent(între 0 şi 2) şi caracteristica care corespunde

fiecăruia dintre nodurile anterioare. Spre exemplu, un nod poate avea doi părinţi, iar vechinul său

doar unul. Acest lucru asigură o mai mare diversitate în obţinerea structurii reţelistice. Acurateţea

obţinută experimental cu algoritmul evolutiv genetic a fost de 86.1% după 100 de generaţii, spre

deosebire de algoritmul obişnuit de determinare a structurii reţelei Bayesiene, K2, care a obţinut

o acurateţe de 65%. Aceste teste au fost efectuate pe aplicaţii din medicină, pentru a clasifica

pacienţii în funcţie de vârstă, pe baza informaţiilor obţinute din semnalele electrocardiogramei.

Comparaţia dintre un algoritm greedy hill-climb şi unul genetic pentru descoperirea structurii

reţelistice a arătat o creştere semnificativă a clasificării, în cazul folosirii celei de-a doua metode.

O altă problemă tratată destul de recent prin utilizarea inteligenţei computaţionale este cea a

datelor lipsă din bazele de date. Un algoritm hibrid de reţele Bayesiene auto-asociative şi

algoritmi genetici s-a dovedit a fi o abordare de succes pentru imputarea datelor lipsă.

Page 44: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

44

Maşinile cu suport vectorial(SVM) sunt un concept destul de recent din ştiinţa

calculatoarelor folosite pentru clasificarea şi analiza de regresie asupra unui set de metode de

învăţare supervizată care să analizeze date şi să recunoască modele[15]. Împreună cu reţelele

Bayesiene, printr-un algoritm hibridizat, ele au fost utilizate pentru a reduce eroarea maşinilor-

unelte termice [13]. Precizia de predicţie a erorii acestor maşini depinde, în mod semnificativ, de

structura modelului de eroare. Datele experimentale sunt prima dată clasificate cu ajutorul unui

model de reţea Bayesiană, bazată pe un sistem de reguli. După ce clasificare a aavut loc, eroarea

este prezisă folosind un model de SVM. Acest model hibrid prezice eroarea termică în

concordanţă cu condiţiile specifice de funcţionare. Această abordare a problemei a condus la

elaborarea unui model de predicţie mai generalizat decât metoda convenţională de cartografiere a

erorii şi a temperatuii, indiferent de condiţii. Un astfel de model este util în special într-un mediu

de producţie în care maşinile-uneltă sunt supuse la condiţii de funcţionare variate.

Tot împreună cu SVM, reţelele Bayesiene au fost folosite şi într-un sistem de

recunoaştere automată a acţiunilor umane [14]. A fost demonstrat faptul că această asociere

îmbunătăţeşte în mare măsură rata de recunoaştere a acţiunilor, pe baza cunoştiinţelor anterioare.

Experimentele făcute arată faptul că sistemul poate rula în timp real pentru detectarea

comportamentelor anormale şi produce un rezultat robust prin utilizarea deplină a informaţiilor

anterioare cu privire la mişcare.

Page 45: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

45

CAPITOLUL 5

APLICAŢIA PRACTICĂ

5.1 Enunţ

Pentru a ilustra importanţa practică a metodelor de învăţare Bayesiană, vom considera

problema de învăţare în care instanţele sunt reprezentate de documente text.

Clasificarea textuală este procesul de clasificare a documentelor în categorii predefinite,

pe baza conţinutului lor. Această problemă este o cerinţă principală a sistemelor de regăsire a

textelor, care consideră textele un răspuns la interogările utilizatorilor, dar şi a sistemelor de

înţelegere a textelor, care transformă textele în rezumate, ca un răspuns la interogări şi la

extragerea de date. Algoritmii de învăţare supervizată existenţi necesită suficient de multe

documente pentru învăţarea cât mai exactă a sarcinii de clasificare. Există numeroase documente

text disponibile în format electronic, iar numărul lor este în continuă creştere. Aceste documente

reprezintă o masă masivă de informaţii care este uşor accesibilă. Căutarea unui anumit document

într-o asemenea colecţie necesită un efort uriaş, în special ca timp şi răbdare. Această sarcină

poate fi totuşi uşurată atâta timp cât documentele sunt organizate. Chiar dacă nici acest obiectiv

nu pare a fi mai uşor, el poate fi automatizat prin extragerea de date pe baza cărora se realizează o

clasificare- o tehnică de inteligenţă artificială.

Spre exemplu, ne putem gândi la învăţarea unui concept ţintă cum ar fi "clasificarea

articolelor electronice de ştiri" în categorii considerate de interes pentru un anumit utilizator. În

cazul în care un sistem este capabil de a învăţa conceptul ţintă precis, ar putea filtra automat

volumul mare de documente text online şi ar prezenta unui utilizator doar documentele cele mai

relevante.

În cazul de faţă, sarcina care se doreşte a fi dusă la îndeplinire este cea a realizării unui

produs soft capabil să clasifice documente de ştiri în categorii pentru care el a fost antrenat.

5.2 ANALIZĂ ŞI PROIECTARE

Metoda propusă pentru a rezolva problema clasificării textuale este o implementare a

Clasificatorului Naiv Bayes, descris în secţiunile anterioare. Interesant de observat este faptul că

abordările probabilistice, cum ar fi şi cea descrisă de algoritmul folosit aici, sunt printre cele mai

eficiente pentru învăţarea clasificării documentelor de tip text.

Algoritmul CNB se aplică sub anumite condiţii generale. Dintre acestea face parte şi

existenţa unui spaţiu al instanţelor, X, constituit din toate documentele text posibile. Sunt

Page 46: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

46

prezentate apoi exemple de antrenare a unei funcţii ţintă necunoscute, f(x), care poate lua orice

valoare dintr-un set finit de valori ţintă V. Sarcina sistemului este de a învăţa din aceste exemple

de antrenare pentru a putea prezice valoarea ţintă pentru documentele text apărute ulterior. În

cazul aplicaţiei pe care o voi descrie funcţia ţintă poate lua valori dintr-un set de cinci categorii

de ştiri.

Cele două aspecte de design implicate în aplicarea CNB la astfel de probleme de

clasificare a textelor sunt găsirea unei reprezentări potrivite a documentelor text arbitrare, în

termeni de valori atribut, şi alegerea modului de estimare a probabilităţiilor cerute de acest

clasificator.

În ceea ce priveşte reprezentarea textelor, abordarea aleasă este una extrem de simplă.

Pentru un document text datse defineşte n atribut pentru fiecare poziţie a unui cuvânt, iar valoarea

atributului este însuşi cuvântul. Poate fi remarcat faptul că textele lungi vor necesita un număr

mare de atribute, însă vom vedea că aceasta nu este o problemă.

Presupunem existenţa unui set de date constând în 5000 de documente împărţite în 5 clase

de ştiri(câte 1000 de documete în fiecare clasă). În faza de antrenare a sistemului am folosit câte

2/3 dintre documentele din fiecare clasă, cealaltă treime fiind folosită pentru testare. Pentru a

clasifica un nou document primit, sistemul trebuie să evalueze expresia:

i

j

w jijVv

NB vwPvPv )|()(maxarg

Unde V este setul celor 5 clase ţintă, iar wi reprezintă toate cuvintele care apar în

documentul de clasificat. Independenţa ipotezelor prevede în acest cadru că probabilitatea

cuvintelor pentru o poziţie din text sunt independente de cuvintele care apar pe alte poziţii. Poate

fi observat faptul că, în general, această ipoteză este în mod evident eronată. De exemplu,

probabilitatea de a observa cuvântul "învăţare", într-un document de inteligenţă artificială, este

mai mare dacă pe o poziţie anterioară se regăseşte cuvântul "maşină". Dacă se alege totuşi luarea

în calcul a tuturor dependenţelor, numărul termenilor de probabilitate care trebuiesc calculaţi este

prohibitiv. Din fericire, în practică, un sistem care învaţă după abordările Naive Bayes se

descurcă extrem de bine în multe probleme de clasificare textuală, în ciuda inexactităţii evidente

a acestei presupuneri de independenţă a ipotezelor.

Pentru a înţelege mai bine funcţionarea acestui sistem de clasificare voi evidenţia paşii

care sunt parcurşi atât în etapa de antrenare cât şi în cea de testare şi clasificare.

A. Antrenarea

Cei mai importanţi paşi de urmat în faza de antrenare constau în construirea vocabularului

şi calcularea probabilităţiilor condiţionate. Pentru prima etapă, cea de construire a vocabularului,

este nevoie de setul de texte care vor fi luate în considerare pentru a duce la împlinirea aceastei

sarcini.

Page 47: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

47

Pentru fiecare clasă de ştiri în parte se vor considera 2/3 din numărul total de documente

pentru antrenare. Clasa "GenerateDocument" este cea care prin metoda "setFilesFromFolder(File

folder)" stabileşte care sunt fişierele care vor fi folosite pentru generarea vocabularului, şi care

pentru testare. Metoda de alegere a fişierelor care vor fi folosite la antrenare este una aleatoare,

generându-se numerele fişierelor în manieră random. Pentru fiecare fişier astfel generat, este

instanţiat un obiect de tip "Document" în care este reţinut numele fisierului şi cuvintele care se

regăsesc în el împreună cu frecvenţa lor de apariţie. Acest set de cuvinte sunt adăugate apoi la

vocabularul clasei din care face parte documentul şi care este actualizat la fiecare nou document.

Un obiect de tip "Vocabular" este instanţiat pentru a reţine cuvintele care apar în cele 5

clase de ştiri. Totuşi, din acet vocabular nu fac parte chiar toate cuvintele care apar în documente.

Sunt eliminate cuvintele care nu sunt considerate relevante pentru clasificarea documentelor, aşa

numitele "stop words". Tot la partea de preprocesare a textelor, fiecare cuvânt este supus unei

modificări. Este definită o instanţă a clasei Stemmer care prin metoda stemming(String word)

returnează baza cuvântului "word", în cazul în care acesta era un cuvânt derivat. Acest lucru ajută

atât la micşorarea spaţiului de memorare a cuvintelor cât şi la o mai bună clasificare.

După ce au fost adăugate vocabularele de la fiecare clasă în parte la vocabularul de

antrenare se mai produce o modificare asupra celui din urmă. La testele de faţă am considerat

relevante doar acele cuvinte care au o frecvenţă de apariţie în datele de test mai mare de 3 şi mai

mică de 100. Această presupunere va elimina cuvintele care apar cel mai rar şi pe cele foarte

comune. După parsarea textelor şi aplicarea acestor restricţii, numărul de cuvinte obţinute la o

antrenare variază undeva în jurul a 10.000 de cuvinte.

Următorul pas este calcularea probabilităţiilor solitate de Clasificatorul Naiv Bayes.

Probabilitatea pentru fiecare din cele 5 clase de ştiri de a apărea în datele de antrenare(P(vj)) este

egală cu 0.2, fapt datorat numărului egal de exemple de antrenare luat din fiecare categorie. O

estimare mai problematică este cea a probabilităţiilor condiţionate. Reamintind presupunerea că

atributele sunt independente şi identic distribuite, estimarea întregului set de probabilităţi

P(wk|vj), va duce la estimarea a aproximativ 50.000 termeni pentru o antrenare.

Pentru a completa designul algoritmului de învăţare este necesară alegerea unei metode de

estimare a termenilor de probabilitate. Pentru aceasta am ales metoda de m-estimare cu priorităţi

uniforme şi cu m reprezentând numărul total al cuvintelor care constituie vocabularul. Astfel,

formula de calcul folosită este:

||

1)|(

Vocabularn

nvwP k

jk

unde n reprezintă numărul de cuvinte din clasa vj, iar nk este numărul de apariţii a

cuvântului wk în clasa vj.

Page 48: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

48

O etapă importantă după calcularea acestor probabilităţi este aceea a memorării lor.

Pentru aceasta, am modelat o bază de date în care sunt reţinite toate cuvintele din vocabular

împreună cu probabilităţiile lor condiţionate pentru fiecare categorie de ştiri în parte.

B. Testarea

În această etapă sunt folosite acele documente text, din fiecare categorie în parte, care nu

au fost folosite în faza de antrenare. Ele sunt obşinute după ce au fost generate documentele

folosite la antrenare, prin eliminarea lor din fiecare categorie în parte.

Pentru fiecare document folosit în faza de testare se aplică Clasificatorul Naiv Bayes şi

rezultatul astfel obţinut este comapart cu clasa din care face parte documentul. Dacă clasificarea a

fost una corectă, aceasta duce la incrementarea ratei de acurateţe a metodei. Aceasta din urmă, se

obţine prin calcularea raportului dintre numărul total de documente clasificate corect şi numărul

de documente testate.

C. Clasificarea

În această fază a execuţiei, pentru un document furnizat ca şi dată de intrare,

Clasificatorul Naiv Bayes returnează valoarea funcţiei ţintă, în cazul de faţă, categoria din care

face parte ştirea conţinută de document. Documentul de intrare este parsat şi el în cuvinte şi sunt

căutate poziţiile cuvintelor care apar şi în vocabularul de antrenare. Pe baza rezultatelor de

antrenare memorate în baza de date, se calculează produsul:

VvvwP j

pozitiii

ji

,)|( ,

unde prin wi se face referire la cuvântul de pe poziţia i din document. Valoarea ţintă

pentru documentul de clasificat se obţine astfel: .)|(*)(maxarg

pozitiii

jijVv

NB vwPvPvj

Valoarea lui vNB reprezintă clasa de ştiri din care documentul face parte conform

clasificării aplicate.

Dacă unul sau mai mult cuvinte din cele prezente în textul de clasificat nu este regăsit

printre cuvintele din vocabularul de la antrenare, acestea sunt pur şi simplu ignorate.

Prin reprezentarea aleasă, dar mai ales pe baza presupunerilor făcute, media de

performanţă obţinută în urma unui set de 50 de rulări este de 96.0256%.

Deşi în implementarea algoritmilor de inteligenţă artificială nu se ia, de cele mai multe

ori, în considerare arhitectura aleasă, accentul căzând în acest caz strict pe metoda de rezolvare

aleasă, în cazul de faţă am recurs la o arhitectură de tipul MVC(Model-View-Controller). Acest

lucru poate fi certificat şi de diagrama prezentată în Fig. 3.

Page 49: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

49

Fig. 3

Pentru a evidenţia şi mai clar modul în care obiectele interacţionează şi ceea ce cuprinde

fiecare pachet din arhitectură, în Fig.4 este prezentată diagrama de clase:

Page 50: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

50

Fig. 4

Page 51: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

51

5.3 IMPLEMENTARE

Clasificatorul Naiv Bayes este relativ rapid şi uşor de implementat, faţă de alţi algoritmi

care sunt mai puţin eronaţi, dar mult mai lenţi. Acesta este cel mai des întâlnit la filtrele de spam

şi în ciuda simplităţii şi a presupunerilor naive, s-a dovedit a fi foarte bun în practică. Pentru a fi

clasificate, obiecatele, sunt reprezentate prin caracteristici numerice.

În implementarea propusă, paşii pe care clasificatorul îi efectuează au fost urmaţi

întocmai. Desemenea, pentru designul aplicaţiei au mai fost luate trei decizii:

1. aplicaţia trebuie să fie uşor de utilizat pentru diferite seturi de date de

antrenare, chiar şi în cazul în care se vor folosi mai multe valori ţintă;

2. aplicaţia trebuie să folosească o interfaţă grafică pentru a facilita

comunicarea cu utilizatorul;

3. aplicaţia trebuie să fie, pe cât posibil, independentă de platforma pe care

rulează.

De aceea, limbajul de programare ales pentru acest proiect este Java, singurele probleme

de independenţă a platformei apărând la reprezentarea datelor de antrenare. La acest proiect,

pentru a reţine rezultatele de probabilitate condiţionată obţinute în urma antrenării, am folosit o

bază de date memorată pe un SQL Server. Tabelul în care sunt reţinute probabilităţiile arată ca şi

cel din Fig. 5:

Fig. 5

Page 52: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

52

Limbajul Java, prin construcţia sa, foloseşte cu precădere principiul de abstractizare.

Încercarea de a impune acest principiu şi aplicaţiei dezvoltate aici a condus la obţinerea unui set

de clase Java, dintre care cele mai importante sunt:

Document:

Această clasă reţine un nume de fişier împreună cu toate cuvintele acre apar în el.

Atributele ei sunt:

- name: String(reţine întreaga cale către fişier);

- words: Hashtable(cuvintele din text reprezintă cheile Hashtable-ului, iar frecvenţa lor de

apariţie, un întreg, reprezintă valoarea cheii).

Cele mai importante metode ale acestei clase sunt:

- setWords(): metodă care împarte documentul dat de "name" în cuvinte, eliminând

caracterele speciale şi spaţiile. După ce sunt obţinute cuvintele se setează valoarea pentru

atributul "words".

- isNotStoppedWord(String): metodă cu valoare booleană care verifică dacă

cuvântul transmis ca şi parametru face parte dintr-o listă de cuvinte care nu sunt relevante pentru

clasificare(cuvinte care apar in majoritatea documentelor).

FunctiiTarget:

Este clasa responsabilă de modelarea valorilor ţintă pe care le poate lua un document.

Atributele ei sunt:

- funcTarget: String(numele funcţiei ţintă);

- probabilitate: float(probabilitatea P(vj) descrisă în capitolele anterioare,

probabilitatea ca un document sa fie din clasa funcţiei ţintă).

Această clasă nu are metode deosebite de cele existente la aproape orice clasă de modele

Java, şi anume constructorii şi metodele de tip get/set.

Vocabular;

Această clasă este printre cele mai importante, deoarece în cazul clasificării textuale,

vocabularul obţinut după antrenare şi vocabularul noului document text sunt obiecte cheie.

Atributele acestei clase nu sunt multimple, ci se rezumă la o dată membră în care sunt reţinute

atât cuvintele care apar cât şi frecvenţa lor:

- words: Hashtable<String, Integer>

Printre metodele acestei clase se numără:

- search(String): returnează frecvenţa din vcabular a cuvântului transmis ca şi

parametru, în cazul în care acesta există în vocabular, sau 0 în caz contrar;

Page 53: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

53

- addToVocabulary(Hashtable): este metoda care adaugă la vocabular şi alte

cuvinte. În cazul în care cuvântul există deja în vocabular atunci îi este modificată doar frecvenţa

de apariţie, iar în caz contrar este adăugat;

- o altă metodă importantă din această clasă este cea prin care se elimină cuvintele

care sunt considerate irelevante. Abordarea originală în această privinţă este aceea că, faţă de alte

implementări care eliminau doar cele mai frecvente 100 de cuvinte[1], aici sunt eliminate

cuvintele cu o frecvenţă mai mică de 3 şi mai mare de 100. Această metodă, deşi are un impact

major asupra procesului de clasificare, este destul de simplă, după cum se poate observa:

public void eliminFrecvente(){

int i=0;

Enumeration<String> enumKey=words.keys();

while(enumKey.hasMoreElements()){

String s=enumKey.nextElement();

if(words.get(s)>=100 || words.get(s)<=3)

words.remove(s);

}

}

GenerateDocument:

O clasă extrem de importantă atât pentru procesul de antrenare cât şi pentru cel de testare.

În cadrul ei sunt generate documentele care se folosesc la antrenarea sistemului. Datele ei

membre includ:

- trainingFiles: File[](un vectode de fişiere ce vor fi folosite la antrenare);

- length: int(numărul de fişiere ce se vor folosi al antrenare);

- testFiles: File[](vectod de fişiere ce vor fi folosite pentru a testa performanţa

sistemului);

Pe langă metodele de get/set o metodă importantă a clasei este:

- setFilesFromFolder(File folder): aici sunt de fapt instanţiate valorile trainingFiles

şi testFiles. Pentru directorul dat ca şi parametru se construieşte un vector care conţine doar

fişierele din el(folderul poate avea şi alte subdirectoare). Din numărul total al acestor fişiere, sunt

generate 2/3 de fişiere care reprezintă trainingFiles, restul fiind testFiles. Generarea fişierelor se

face în manieră aleatoare.

NaiveBayesClassifier:

Aceasta este clasa care de fapt include algoritmul de clasificare. Datele ei membre sunt:

- document: Document(documentul care trebuie clasificat);

- vocabular: Vocabular(reţine vocabularul obţinut după faza de antrenare);

Page 54: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

54

- functiiTinta: FunctiiTintaRepository(funcţiile ţintă împreună cu probabilităşiile

lor, date regăsite într-o bază de date, după antrenare);

- repProbCond: ProbabilitateConditionataRepositoryDB(pentru cuvintele obţinute

la antrenare s-au memorat probabilităţiile condiţionate în funcţie de fiecare clasă într-o bază de

date)

- clasificare: String(aici se reţine valoarea funcţiei ţintă după procesul de

clasificare).

Clasificarea propriu-zisă a documentului este realizată în cadrul metodei Clasifica() a

cărui corp este:

public void Clasifica(){

Hashtable<String, Integer> cuvDoc=document.getWords();

//cuvintele din documentul de clasificat

ArrayList<BigDecimal> lista=new ArrayList<BigDecimal>();

float p;

for(int i=0;i<functiiTarget.length;i++){

BigDecimal produs=new BigDecimal(1);

Enumeration<String> enumWord=cuvDoc.keys();

while(enumWord.hasMoreElements()){

String c=enumWord.nextElement();

if(vocabular.search(c)!=0){

p=repProbCond.getProbabilitate(c, i+1);

if(p>0){

produs=produs.multiply(newBigDecimal(p));

if(produs.equals(0))

produs=BigDecimal.valueOf(Double.MIN_VALUE);

}

}

}

lista.add(i, produs.multiply(newBigDecimal(functiiTarget[i].getProbabilitate())));

}

int Vj=maxim(lista);

clasificare="clasa"+Vj;

}

Valoarea maximă pentru funcţia ţintă este determinată cu ajutorul metodei maxim

descrisă astfel:

private int maxim(ArrayList<BigDecimal> lista) {

BigDecimal max= new BigDecimal(0);

int poz=0;

for(int i=0;i<lista.size();i++){

max=lista.get(i).max(max);

}

Page 55: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

55

return lista.indexOf(max);

}

Antrenare:

În cadrul acestei clase, după cum ne sugerează şi numele ei, se produce etapa de

antrenare. Sunt apelate toate metodele necesare din celelalte clase pentru a duce la îndeplinire

sarcina de antrenare. Este clasa în care sunt calculate probabilităţiile fiecărei funcţie ţintă în parte,

dar şi probabilităţiile condiţonate. Tot în această clasă este determinată şi performanţa sistemului

cu fiecare antrenare.

Metodele cele mai importante din această clasă sunt:

- calculeazaNk: în care este calculat unul dintre parametri necesari pentru

determinarea probabilităţiilor condiţionate;

- calculeazaProbConditionata: în care sunt calculate probabilităţiile condiţionate

pentru fiecare cuvânt în parte. Ea este descrisă astfel:

private static void calculeazaProbConditionata(MapStringList nk,

int[] n, Vocabular vocabular, ProbabilitateConditionataRepositoryDB probRep, int nrFunctiiT) {

//Calculez P( Wk|Vj)=(Nk+1)/(n[k]+|vocabular|)

float prob;

Enumeration<String> enumWords=vocabular.getAllWords().keys();

while(enumWords.hasMoreElements()){

String c=enumWords.nextElement().toString();

ArrayList<Float> nnk=nk.getValues(c);

for(int j=0;j<nrFunctiiT;j++){

prob= (nnk.get(j)+1)/(n[j]+vocabular.getAllWords().size());

probRep.addProbCond(c, prob,j+1);

}

}

}

5.4 Manual de utilizare

Aplicaţia este destinată tuturor utilizatorilor care doresc o mai bună sortare a articolelor

de ştiri care îi invadează zi de zi. Cu un design modern şi plăcut produsul satisface toate

necesităţiile unui astfel de sistem şi facilitează comunicarea cu utilizatorul.

La lansarea în execuţie a softului fereastra care apare are formatul celei din Fig.6.

Page 56: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

56

Fig.6

Pornind de la această fereastră, posibilităţiile de acţionare sunt multiple. Deoarece sarcina

principală a sistemului este aceea de a clasifica documente de ştiri, el oferă beneficiarului

posibilitatea de a îşi alege documentele care urmează a fi clasificate. Pentru aceasta, prin

executarea unui click pe meniul File utilizatorul poate alege atât deschiderea unui fişier deja

existent, cât şi crearea unui fişier nou. În primul caz, la alegerea opţiunii Open se deschide o

fereastră care permite navigarea prin structura de directoare şi fişiere ale calculatorului şi care

arată ca şi cea din Fig. 7.

Page 57: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

57

Fig.7

După alegerea fişierului care se doreşte a fi clasificat, la selectarea opţiunii Open,

fereastra iniţială(Fig. 6) este reactualizată, numele fişierului ales apărând în caseta de sub textul

Choosen Document. Dacă acesta este fişierul pe care utilizatorul doreşte să îl trimită spre

clasificare, tot ce mai are de făcut este să selecteze opţiunea Classification disponibilă în meniul

Run. După aceasta, articolul este clasificat, iar rezultatul este afişat utilizatorul în fereastra

principală, care arată ca şi în Fig. 8.

Page 58: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

58

Fig. 8

O altă opţiune oferită beneficiarului este aceea de a îşi edita propriile lui articole de ştiri

pe care mai apoi să se clasifice. Această variantă este disponibilă prin selectarea opţiunii New din

meniul File. În fereastra nou apărută, celui care editează ştirea îi este solicitat să asocieze acesteia

un nume înainte de a o salva. În caz contrar, apariţia unui mesaj de eroare este inevitabilă. Titlul

ştirii este folosit pentru a denumi fişierul în care ea este salvată, şi nu influenţează în nici o formă

procesul de clasificare. După editarea ştirii şi salvarea ei(prin apăsarea butonului de Save),

fereastra principală este reactualizată prin apariţia în prima casetă a numelui fişierului salvat.

Fereastra de editare este prezentată şi în Fig. 9.

Page 59: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

59

Fig. 9

Cu toate acestea prezentate, partea de prezentare a sistemului din ceea ce priveşte

clasificarea este rezolvată. Însă, în cadrul unui sistem de clasificare, un accent important cade pe

partea de antrenare. Cu scopul de a oferi beneficiarului posibilitatea de reutilizare a softului şi în

alte domenii decât cel pentru care a fost proiectat, acestuia îi este dispinibilă şi opţiunea de

antrenare. Atâta timp cât utilizatorul dispune de un set de date de antrenare destul de mare şi bine

structurat, performanţa sistemului nu va fi diminuată considerabil. Opţiunea de antrenare a

sistemului este disponibilă prin accesarea meniului Run şi alegerea opţiunii de Training. Pentru

a împiedica accesarea din greşeală a acestei opţiuni, utilizatorului îi este cerut să confirme dacă

doreşte lansarea în execuţie a procesului de antrenare sau nu, print-o fereastră de dialog ca şi cea

prezentată în Fig. 10.

Page 60: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

60

Fig. 10

Dacă butonul ales este Yes atunci va începe re-antrenarea sistemului, însă dacă opţiunea

aleasă este Cancel se va reveni la starea anterioară a produsului.

Aplicaţia mai dispune şi de un meniu Help. De aici utilizatorul poate dispune de

informaţii referitoare la produs, disponibile prin selecatrea opţiunii About sau poate accesa

manualul de utilizare, prin alegerea opţiunii How to...

Page 61: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

61

5.5 Rezultate

Valoarea ţintă a clasificării pentru un nou articol, în acest caz, este numele categoriei de

ştiri din care el face parte. În algoritmul de Clasificare Naiv Bayes au fost luate în considerare 5

categorii de ştiri. Din fiecare categorie în parte au fost alese câte 1000 de articole, formânt un set

de 5000 de documente. Algoritmul a fost aplicat folosind 2/3 din aceste documente ca şi exemple

de antrenare, iar performanţa a fost măsurată folosind1/3 din documente(cele acre nu au fost

folosite la antrenare). Având în vedere faptul că sunt folosite 5 categorii de ştiri, ne.am putea

aştepta ca la ghicitul aleatoriu să rezulte o performanţă de 20%. Cu toate acestea, acurateţea

obţinută de către program a fost de 96.025%, o medie obţinută în urma unui set de 50 de execuţii.

Graficul de variaţie a performanţelor, cu abaterea de la valoarea medie, este redat în Fig. 11.

Fig. 11

Algoritmul folosit este similar cu cel despre care se vorbeşte în [1], cu excepţia că doar un

subset dintre cuvintele care apar în documente au fost incluse în Vocabularul algoritmului. Dacă

acolo se vorbea despre eliminarea celor mai frecvente 100 de cuvinte din vocabular şi a celor cu o

frecvenţă mai mică de 3, în particular, algoritmul dezvoltat elimină toate cuvintele cu o frecvenţă

mai mare de 100 şi mai mică de 3. Vocabularul obţinut conţine aproximativ 11000 de cuvinte.

Pentru realizarea unei paralele între programul dezvoltat, aplicabil pentru 5 clase de ştiri,

şi cel prezentat de T.Mitchell în [1] am recurs al câteva mici modificări. Prin includerea abordării

Page 62: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

62

de eliminare a celor mai frecvente 100 de cuvinte, în urma unui set de 10 execuţii, performanţa

sistemului a fost de 96,69%. Deşi performanţele, având în vedere cele două abordări, sunt

apropiate ca şi valori, este de precizat faptul că prin eliminarea doar a celor mai frecvente 100 de

cuvinte timpul de execuţie este mult mai mare şi la fel şi spaţiul utilizat. Cu această abordare,

vocabularul obţinut în urma antrenării este de aproximativ 29000 de cuvinte.

Luând în considerare faptul că prin aplicarea algoritmului asupra celor 20 de clase de ştiri

performanţa obţinută a fost de 89%, putem concluziona prin afirmarea faptului că performanţa

unui sistem de clasificare textuală este direct proporţional cu numărul claselor ţintă.

5.6 Posibile extinderi

În varianta actuală a softului, pentru datele de antrenare testate, precizia obţinută este una

satisfăcătoare. Acest lucru nu înseamnă însă faptul că avem de-a face cu un soft perfect. Există

părţi în care el suportă modificări şi eventuale îmbunătăţiri.

Una dintre cele mai mari probleme cu care se confruntă orice aplicaţie care se bazează pe

analiza şi procesarea documentelor text este cea a preprocesării. Această operaţie este una

elementară şi de o importanţă majoră în problematica clasificării textuale. Lipsa unui astfel de

proces, aplicat înainte de operaţia de clasificare, are un impact major asupra preciziei sistemului,

dar şi asupra resurselor pe care acesta le foloseşte. Pentru o singură clasă de ştiri, la aplicaţia

prezentată, numărul de cuvinte iniţial este redus cu aproximativ 1000 de cuvinte, după aplicare

preprocesării. Deşi acest proces nu lipseşte aplicaţiei analizate, el poate fi îmbunătăţit, aducând

un plus performanţei actuale.

Spre deosebire de exemplul prezentat de Tom Mitchell în [1], unde numărul categoriilor

de ştiri era 20, programul dezvoltat cu acelaşi scop foloseşte doar 5 categorii de clase. Această

restrângere a fost realizată cu scopul de a micşora complexitatea algoritmului, atât ca timp de

execuţie cât şi ca spaţiu necesar. Pentru o organizare mai detaliată a ştirilor primite de un

utilizator, integrarea celor 15 categorii lipsă din sistemul iniţial nu reprezintă o problemă

inabordabilă. În prezenţa unui set de date de antrenare suficient de mare şi bine structurat,

aplicaţia poate fi folosită pentru clasificare oricăror tipuri de informaţii, nu doar a ştirilor.

O provocare pentru orice aplicaţie este aceea ca ea să fie independentă de platforma pe

care rulează. Prin imlementarea acestui algoritm de clasificare în limbajul Java este asigurată o

parte a acestei sarcini. O limitare, la acest moment, pentru utilizarea aplicaţiei pe orice platformă

este conexiunea la o bază de date din cadrul SQL Server-ului. Această bază de date este folosită

pentru stocatea probabilităţiilor condiţionate rezultate în urma fazei de antrenare. Pentru a

îmbunătăţii viteza de lucru şi a uşura portabilitatea aplicaţiei pe alte platforme o soluţie ar fi

utilizarea de fişiere XML. Acestea din urmă pot fi privite ca o mini-bază de date, care însă este

Page 63: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

63

uşor de manipulat şi care poate fi folosită cu succes pentru transferul de date între sisteme

altminteri incompatibile.

Cu toate acestea, în forma sa actuală, proiectul dezvoltat atinge o rată de performanţă

ridicată şi facilitează, printr-o interfaţă cu design atractiv, comunicarea cu utilizatorii.

Page 64: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

64

Concluzii

Abilitatea de a învăţa anumite concepte din prezentarea unor exemple este una dintre

capacităţiile de bază ale cunoaşterii umane. Scopul acestei lucrări a fost acela de a evidenţia

existenţa acestei abilităţi şi în rândul ştiinţei calculatoarelor. Acest lucru a fost realizat prin

tehnicile de învăţare Bayesiene prezentate şi prin aplicaţia practică analizată.

În dezvoltarea unui model al conceptului de învăţare care este în acelaşi timp

computaţional, dar şi capabil să se potrivescă exact comportamentului uman, sper că am adus un

plus de lumină în înţelegerea modului în care oamenii sunt capabili de a face deducţii corecte, pe

baza unor exemple pozitive.

În prezenta lucrare am propus o manieră de implementare a Clasificatorului Naiv Bayes

pentru procesul de categorisire a articolelor de ştiri. Deşi problematica aceasta a mai fost

abordată, prin amprenta proprie pusă asupra operaţiunii de preprocesare a datelor, am obţinut un

algoritm cu o complexitate computaţională mai bună şi cu performanţe similare. Scopul acestui

proiect este unul important, având în vedere vasta cantitate de informaţii disponibile pe Internet.

Capacitatea de a clasifica documentele neetichetate ar duce la uşurarea accesului pentru cei care

fac cercetări într-un anumit domeniu. Motoarele de căutare disponibile la această oră ar putea

ajunge al rezultate mai bune dacă informaţiile ar fi mai bine organizate.

Page 65: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

65

Tabelul figurilor

Fig. 1- Starea variabilelor dintr-o reţea Bayesiană .....................................................pg. 26

Fig. 2- Structura unei reţele Bayesiene .......................................................................pg. 28

Fig. 3- Diagrama de pachete a aplicaţiei ....................................................................pg. 49

Fig. 4- Diagrama de clase a aplicaţiei .........................................................................pg. 50

Fig. 5- Tabelul probabilităţiilor condiţionate ..............................................................pg. 51

Fig. 6- Fereastra principală a aplicaţiei .......................................................................pg. 56

Fig. 7- Fereastra pentru selectarea fişierelor ...............................................................pg. 57

Fig. 8- Fereastra cu rezultatul clasificării ....................................................................pg. 58

Fig. 9- Fereastra pentru editarea unei ştiri ...................................................................pg. 59

Fig. 10- Mesajul de confirmare a antrenării ................................................................pg. 60

Fig. 11- Graficul de performanţă a sistemului .............................................................pg. 61

Page 66: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

66

Bibliografie

[1] Tom Mitchell - Machine Learning, McGraw-Hill, 1997

[2] Stuart J. RUSSEL, Peter NORVIG – Artificial Intelligence, Prentice-Hall, Englewood

Cliffs, New Jersey, 1995

[3] Irins Rish - An empirical study of the naive Bayes classifier, IJCAI 2001, Workshop on

Empirical Methods in Artificial Intelligence.

[4] Ben-Gal I., Bayesian Networks, in Ruggeri F., Faltin F. & Kenett R., Encyclopedia of

Statistics in Quality & Reliability, Wiley & Sons (2007).

[5] David Heckerman, A Tutorial on Learning With Bayesian Networks, March 1995

Revised Novemb er 1996),Technical Report MSR-TR-95-06, Microsoft Research ,

WA 98052

[6] Nir Friedman, The Bayesian Structural EM Algorithm, Computer Science Division,

387 Soda Hall, University of California, Berkeley, CA 94720

[7] Joanna Kazmierska?????? , Application of the Naive Bayesian Classifier to optimize

treatment decisions, Department of Medical Physics, Great Poland Cancer Centre,

Poznan, Polan, Radiotherapy and Oncology 86 (2008) 211–216

[8] Tianhao Sun, Spam Filtering based on Naive Bayes Classification, 2009

[9] N. Fenton, M. Neil, D. Marque, Using Bayesian networks to predict software defects

and reliability, Department of Computer Science, Queen Mary, University of London,

London, UK, 2008

[10] Davy Weissenbacher, Bayesian Network, a model for NLP?, Laboratoire

d’Informatique de Paris-Nord, Universite Paris-Nord, Villetaneuse, FRANCE, EACL

'06 Proceedings of the Eleventh Conference of the European Chapter of the

Association for Computational Linguistics: Posters & Demonstrations, 2006

[11] N. Sebe, M.S. Lew, I. Cohen, A. Garg, T.S. Huang, Emotion Recognition Using a

Cauchy Naive Bayes Classifier, ICPR '02 Proceedings of the 16 th International

Conference on Pattern Recognition (ICPR'02) Volume 1, 2002

[12] http://en.wikipedia.org/wiki/Bayesian_probability

[13] R. Ramesh, M. A. Mannan, A. N. Poo şi S. S. Keerthi, Thermal error measurement

and modelling in machine tools. Part II. Hybrid Bayesian Network—support vector

machine model, Singapore, 2003

[14] Yufeng Chen, Guoyuan Liang, Ka Keung Lee, Yangsheng Xu, Abnormal Behavior

Detection by Multi-SVM-Based Bayesian Network, Information Acquisition, ICIA '07.

International Conference on, 2007

[15] http://en.wikipedia.org/wiki/Support_vector_machine

Page 67: BABEŞ-BOLYAI UNIVERSITY OF CLUJ-NAPOCAgabis/DocDiplome/Bayesian/LicentaFinal.pdf · deciziei Bayesiene pentru a aborda probleme din domeniul Inteligenţei Artificiale. Teoria deciziilor

67