Sunteți pe pagina 1din 164

Universitatea Lucian Blaga din Sibiu

Facultatea de Inginerie Hermann Oberth


Departamentul de Calculatoare i Inginerie
Electric






CONTRIBUII LA
PROIECTAREA SISTEMELOR DE
CLASIFICARE A
DOCUMENTELOR


Tez de doctorat


Autor:
Asist. univ. Radu George CREULESCU, MSc


Conductor tiinific:
Prof. univ. dr. ing. Lucian N. VINAN, m.c. ASTR

SIBIU, 2011

2




Cuprins

PARTEA I. INTRODUCERE ....................................................................................................................................... 5
1 INTRODUCERE. SCOP I OBIECTIVE PRINCIPALE ................................................................................ 5
1.1 SCOP I OBIECTIVE ............................................................................................................................ 6
1.2 STRUCTURA TEZEI DE DOCTORAT ...................................................................................................... 6
2 STADIUL ACTUAL N PROCESAREA AUTOMAT A DOCUMENTELOR DE TIP TEXT................. 9
2.1 DATA MINING N BAZE DE DATE ........................................................................................................ 9
2.1.1 Preprocesarea datelor ............................................................................................................ 9
2.1.2 Curirea datelor .................................................................................................................. 10
2.1.3 Transformarea i integrarea datelor .................................................................................... 11
2.2 TEXT MINING ................................................................................................................................... 13
2.2.1 Analiza datelor text i regsirea informaiei......................................................................... 14
2.2.2 Metode de regsire a informaiei .......................................................................................... 14
2.2.3 Asocierea ntre cuvinte cheie i clasificarea documentelor .................................................. 15
2.2.4 Alte tehnici de indexare pentru regsirea textului ................................................................ 16
2.3 WWW MINING ................................................................................................................................ 16
2.3.1 Mineritul structurii paginilor web ........................................................................................ 17
2.3.2 Mineritul link-urilor pentru identificarea paginilor web autoritare ..................................... 18
2.3.3 Mineritul utilizrii web ......................................................................................................... 19
2.3.4 Construirea informaiilor de baz pe mai multe niveluri web .............................................. 19
2.3.5 Clasificarea automat a documentelor web.......................................................................... 20
2.4 CLUSTERING VS. CLASIFICARE ........................................................................................................ 21
2.4.1 nvare nesupervizat i supervizat ................................................................................... 21
2.4.2 Clasificare i analiza clasificrii .......................................................................................... 22
2.4.3 Clustering i analiza clusterilor ............................................................................................ 24
2.4.4 Cerine cheie pentru algoritmii de clustering ....................................................................... 25
2.5 METRICI DE SIMILARITATE A DOCUMENTELOR TEXT ....................................................................... 25
2.5.1 Structurarea datelor utilizate n clustering ........................................................................... 25
2.5.2 Disimilaritate i similaritate: msuri ale calitii clusteringului.......................................... 26
2.5.3 Distane uzuale ..................................................................................................................... 26
2.5.4 Tipuri de variabile utilizate n clustering/clasificare ............................................................ 28
2.6 EVALUAREA ALGORITMILOR DE CLASIFICARE/ CLUSTERING ........................................................... 31
2.6.1 Msuri externe de validare a clusteringului i a clasificrii ................................................ 31
2.6.2 Msuri de validare intern a clusterilor ............................................................................... 32
2.7 SETURI DE DATE UTILIZATE ............................................................................................................. 33
2.7.1 Setul de date Reuters ............................................................................................................. 33
2.7.2 Setul de date RSS Web ........................................................................................................ 37
PARTEA A II-A. CLUSTERING ................................................................................................................................39
3 ALGORITMI DE CLUSTERING. PARADIGMA ACTUAL .....................................................................39
3.1 O POSIBIL TAXONOMIE .................................................................................................................. 39
3.1.1 Algoritmi partiionali (sau metode partiionale) ................................................................... 39
3.1.2 Metode ierarhice ................................................................................................................... 45
3.1.3 Metode bazate pe ordinea cuvintelor .................................................................................... 49
3.1.4 Metode bazate pe densiti .................................................................................................... 53
3.1.5 Metode de tip grid-based ...................................................................................................... 53
3.1.6 Metode bazate pe modele ...................................................................................................... 53
3.2 ALGORITMI IERARHICI. HAC IMPLEMENTAREA AGNES .............................................................. 54
3.3 ALGORITMI PARTIIONALI. K-MEDOIDS ......................................................................................... 57

3
4 CERCETRI PRIVIND REPREZENTAREA DOCUMENTELOR N ALGORITMI DE
CLUSTERING ................................................................................................................................................60
4.1 MODELE DE REPREZENTARE UTILIZATE........................................................................................... 60
4.1.1 Reprezentarea utiliznd modelul Vector Space Model - VSM .............................................. 60
4.1.2 Reprezentarea utiliznd modelul Suffix Tree Document Model - STDM .............................. 61
4.2 METODOLOGIA DE LUCRU ............................................................................................................... 62
4.3 METRICI PENTRU CALCULUL MATRICII DE SIMILARITATE I METODE DE EVALUARE UTILIZATE.
METRICA ORIGINAL PROPUS ............................................................................................................................... 63
4.4 REZULTATE OBINUTE PE SETURILE RSS ........................................................................................ 66
4.4.1 Rezultatele obinute de algoritmul HAC cu reprezentare VSM ............................................. 67
4.4.2 Rezultatele obinute de algoritmul HAC cu reprezentare STDM .......................................... 69
4.4.3 Rezultatele obinute de algoritmul k-Medoids cu reprezentare VSM .................................... 74
4.4.4 Rezultatele obinute de algoritmul k-Medoids cu reprezentare STDM ................................. 76
4.4.5 Comparaii ntre algoritmii de clustering i ntre modurile de reprezentare. Superioritatea
metricii propuse 80
PARTEA A III-A. CLASIFICARE .............................................................................................................................90
5 ALGORITMI DE CLASIFICARE. PARADIGMA ACTUAL ....................................................................90
5.1 GENERALITI ................................................................................................................................ 90
5.2 ALGORITMI STOHASTICI .................................................................................................................. 90
5.2.1 Clasificarea bayesian .......................................................................................................... 91
5.2.2 Antrenarea clasificatorului Bayes......................................................................................... 92
5.2.3 Testarea clasificatorului Bayes ............................................................................................. 93
5.2.4 Rezultate obinute cu clasificatorului Bayes ......................................................................... 94
5.3 ALGORITMI DE NVARE BAZAI PE BACKPROPAGATION .............................................................. 96
5.3.1 Modelul neuronului artificial ................................................................................................ 96
5.3.2 Arhitectura reelelor neuronale ............................................................................................ 98
5.3.3 nvarea reelelor neuronale ............................................................................................... 98
5.3.4 Reguli de nvare prin corecie a erorii (error-correction rules) ................................... 99
5.3.5 Regula de nvare Boltzmann ............................................................................................ 102
5.3.6 Regula de nvare Hebb..................................................................................................... 102
5.3.7 Regula de nvare competitiv ........................................................................................... 102
5.3.8 Algoritmul de nvare Backpropagation ............................................................................ 104
5.3.9 Cercetri privind evitarea saturrii ieirii neuronilor........................................................ 107
5.4 ALGORITMI EVOLUIONITI. ALGORITMI GENETICI ....................................................................... 107
5.4.1 Codificarea cromozomilor i problema de optimizare........................................................ 108
5.4.2 Metode de alegere a cromozomilor .................................................................................... 108
5.4.3 Operatorii genetici utilizai ................................................................................................. 110
5.5 ALGORITMI BAZAI PE NUCLEE. SUPPORT VECTOR MACHINE (SVM) ........................................... 110
5.6 CLASIFICATORI HIBRIZI. METACLASIFICATORI .............................................................................. 115
6 CERCETRI PRIVIND PROIECTAREA SISTEMELOR COMPLEXE DE CLASIFICARE ...............116
6.1 EVALUAREA CLASIFICATORILOR DE TIP SVM ............................................................................... 117
6.1.1 Problema limitrii metaclasificatorului cu clasificatori de tip SVM .................................. 118
6.1.2 O prim tatonare a problemei ............................................................................................ 120
6.2 SOLUII EXPLORATE PENTRU MBUNTIREA METACLASIFICATORULUI BAZAT PE CLASIFICATOARE
DE TIP SVM 121
6.2.1 Soluia introducerii unor noi clasificatori SVM .................................................................. 121
6.2.2 Soluia alegerii altei clase................................................................................................... 121
6.2.3 Soluia adugrii unui clasificator de alt tip ...................................................................... 122
6.3 METODE DE SELECIE A CLASIFICATORILOR ................................................................................. 126
6.3.1 Selecia bazat pe vot majoritar (MV). Rezultate ............................................................... 126
6.3.2 Selecia bazat pe distana euclidian (SBED). Rezultate .................................................. 127
6.3.3 Selecia bazat pe distana cosinus (SBCOS). Rezultate .................................................... 128
6.4 ARHITECTURI NEADAPTIVE PROPUSE I DEZVOLTATE ................................................................... 130
6.4.1 Metaclasificator cu ponderi predefinite. Evaluare de tip Eurovision. Rezultate obinute. . 130
6.4.2 Metaclasificator cu ponderi calculate. Design Space Exploration cu algoritmi genetici.
Rezultate obinute. ........................................................................................................................................... 134
6.5 ARHITECTURI ADAPTIVE PROPUSE I DEZVOLTATE ....................................................................... 137
6.5.1 Metaclasificatoare bazate pe similaritate ........................................................................... 137
6.5.2 Metaclasificator bazat pe algoritmul Backpropagation ..................................................... 140

4
PARTEA IV-A. CONCLUZII ....................................................................................................................................148
7 CONCLUZII ......................................................................................................................................................148
7.1 CONTRIBUII ORIGINALE ALE AUTORULUI ..................................................................................... 148
7.1.1 Contribuii originale n problema metaclasificatorilor ...................................................... 150
7.1.2 Contribuii originale n problema clusteringului ................................................................ 152
7.1 CONCLUZII SINTETICE I DEZVOLTRI ULTERIOARE ...................................................................... 152
8 GLOSAR DE TERMENI ..................................................................................................................................154
9 REFERINE BIBLIOGRAFICE ...................................................................................................................156
9.1 BIBLIOGRAFIE ............................................................................................................................... 156
9.2 WEBLIOGRAFIE ............................................................................................................................. 162
10 SINTEZA LUCRRILOR PUBLICATE/ELABORATE DE CTRE AUTOR PE PROBLEMATICA
TEZEI DE DOCTORAT ..............................................................................................................................163





Introducere. Scop i obiective principale
5
Partea I. Introducere


1 Introducere. Scop i obiective principale
Majoritatea informaiilor din lumea real se gsesc n format text. Aceste date sunt
considerate ca avnd un format semistructurat deoarece conin puine metainformaii despre
structura lor. Modelarea i implementarea de tehnici pentru lucrul cu date semistructurate s-au
dezvoltat continuu n ultimii ani. Mai mult dect att, aplicaiile de regsire a informaiilor ca i
metode de indexare a datelor din baze de date au fost adaptate astfel nct s funcioneze cu
aceste documente nestructurate.
Metodele generale de regsire a informaiei nu mai sunt utile pentru cutarea n colecii
mari de date nestructurate sau semistructurate. De obicei, n urma unei interogri utilizatorul
obine puine rezultate relevante conform cu interogarea formulat asupra documentelor
disponibile. Fr anumite cunotine iniiale referitoare la aceste colecii mari de date este dificil
pentru utilizator s formuleze interogri eficiente pentru extragerea de informaii interesante,
relevante i utile pentru utilizator. Pentru a putea compara diferite documente din punct de
vedere al gradului de relevan i utilitate precum i pentru gsirea de reguli pentru organizarea
lor devine tot mai imperioas proiectarea i utilizarea unor unelte specializate n acest sens.
Machine Learning-ul ofer dou abordri privind modalitile ca o main s nvee
documente text i anume, nvarea supervizat denumit n continuare clasificare i cea
nesupervizat denumit n continuare clustering.
n nvarea supervizat exist dou etape distincte: ntr-o prim faz se alege un set de
documente deja preclasificate acest set fiind utilizat apoi ca i set de antrenament. Pe baza
acestei mulimi de antrenament se va extrage o schem de clasificare. Aceast schem de
clasificare este evaluat i validat utiliznd o mulime de documente de test. n a doua etap
schema de clasificare obinut este utilizat apoi n clasificarea altor documente din setul de
testare. Setul de antrenare (mai mic) este diferit fa de setul de testare.
nvarea nesupervizat const n aplicarea unor anumii algoritmi de grupare pentru un
set de date dat direct, fr a se specifica criteriul de grupare i fr a utiliza o etap de antrenare
cum este cazul la nvarea supervizat. Apoi, ntr-o a doua etap, denumit i validarea
clusteringului se aplic diverse msuri (interne sau externe) pentru a putea analiza corectitudinea
clusterelor create.
n prezenta lucrare am plecat de la premisa utilizrii metodelor pur computaionale n
regsirea informaiilor din documente text. Cu toate c n unele cazuri am ncercat adugarea
unei anumite cantiti de informaie semantic n diverii algoritmi utilizai, abordarea din
punct de vedere semantic depete cadrul prezentei teze.
What a good thing Adam had. When he said a
good thing he knew nobody had said it before.
Mark Twain
The secret of getting ahead is getting started.
Agatha Christie
Introducere. Scop i obiective principale
6
1.1 Scop i obiective
Scopul general al acestei lucrri este acela de a contribui la mbuntirea performanelor
sistemelor de clasificare i clustering pentru documente text, prin metode avansate de nvare
nesupervizat i supervizat.
Pentru a ndeplini acest scop am avut n vedere urmtoarele aspecte:
- analizarea critic a stadiului actual al regsirii informaiilor din documente text n
funcie de metodele de nvare utilizate: nvare nesupervizat (clustering) i
respectiv nvare supervizat (clasificare);
- demonstrarea utilitii modelului de reprezentare a documentelor bazat pe arbori
de sufixe (STDM - Suffix Tree Document Model) n anumii algoritmi de
clustering;
- elaborarea i evaluarea unor noi metrici pentru determinarea similaritii ntre
documente reprezentate cu ajutorul modelului STDM n algoritmi de clustering;
- investigarea punctelor mai slabe ale unor metaclasificatori - dezvoltai ntr-o
anterioar tez de doctorat elaborat sub conducerea domnului profesor Lucian
Vinan de ctre domnul ing. Daniel Morariu (2007) - i determinarea unor soluii
pentru mbuntirea acurateei de clasificarea a acestora;
- mbuntirea acurateei de clasificare a documentelor text prin elaborarea unor
metaclasificatori hibrizi bazai pe algoritmi de clasificare de tip SVM i Bayes
respectiv pe algoritmi genetici i reele neuronale pe partea de selecie a
clasificatorului optimal (postclasificare).
1.2 Structura tezei de doctorat
Direciile de cercetare abordate n prezenta tez sunt prezentate n Fig. 1.1. s-au
desfurat n mai multe etape, pe dou direcii mari de cercetare: clustering i clasificare de
documente text. n fiecare etap, informaiile primite, sunt procesate i apoi transmise mai
departe. Fiecare etap poate include unul sau mai muli algoritmi. Rezultatele fiecrui algoritm
utilizat sunt evaluate prin diferite msuri de validare.
Prezenta lucrare este structurat pe patru pri, cuprinznd apte capitole. n prima parte,
care conine capitolele unu i doi sunt prezentate noiuni introductive. Astfel, primul capitol
prezint scopul i obiectivele tezei, o schem de ansamblu a direciilor de cercetare propuse
respectiv structura tezei de doctorat.
n capitolul al doilea se prezint cteva consideraii generale privind procesarea automat
a documentelor de tip text. Sunt trecute n revist aspecte importante legate de pregtirea datelor
- preprocesare, curire, transformare i integrare - n mineritul datelor (data mining) n
general. Avnd n vedere scopul general al acestei lucrri sunt prezentate problemele specifice
ale mineritului textului (text mining) i ale mineritului WEB (WWW mining). De asemenea,
se prezint critic-comparativ aspecte generale legate de nvarea supervizat i cea
nesupervizat cu implicaii pentru analiza clasificrii i cea a clusteringului. Se prezint metricile
utilizate de ctre algoritmi pentru calcularea similaritii sau disimilaritii dintre documente.
Pentru evaluarea rezultatului algoritmilor de clasificare/clustering sunt prezentate i msurile de
evaluare. n finalul capitolului se prezint seturile de date Reuters utilizate pentru algoritmii de
clasificare precum i seturile de date RSS utilizate n algoritmii de clustering.
Partea a doua conine capitolele trei i patru i reprezint cercetarea autorului n domeniul
clusteringului. Astfel, capitolul trei conine o prezentare original a unei posibile taxonomii a
algoritmilor de clustering. Sunt prezentate diferite tipuri de algoritmi de clustering pentru fiecare
Introducere. Scop i obiective principale
7
categorie n parte, fiind analizai detaliat algoritmii cei mai reprezentativi. Algoritmii HAC
(Hierarchical Aglomerative Clustering) i K-Medoids sunt prezentai mai amnunit, cei doi fiind
alei pentru efectuarea experimentelor n clusteringul documentelor text.
n capitolul patru sunt prezentate cercetrile autorului n domeniul clusteringului.
Utilizarea modelului de reprezentare a documentelor ca arbori de sufixe (STDM) n algoritmi de
clustering este analizat i comparat cu modelul clasic vectorial (VSM) de reprezentare a
documentelor.


Fig. 1.1 Procesul de extragere a informaiei din documente text. Abordarea din tez

n acest capitol sunt prezentate metodologia de lucru aplicat la algoritmii de clustering
alei precum i rezultatele obinute de acetia. Se prezint metrici pentru calcularea similaritii
RSS feeds
REUTERS
Extragere cuvinte
Eliminare stop-words
Stemming
8 SVM Naive Bayes
Metaclasificatori
P
o
n
d
e
r
a
r
e

c
u

v
a
l
o
r
i

p
r
e
d
e
f
i
n
i
t
e

P
o
n
d
e
r
a
r
e

c
u

a
l
g
o
r
i
t
m
i

g
e
n
e
t
i
c
i

Ponderare
Backpropagation
Non-adaptivi
Adaptivi
VSM STDM
Matrice de distane
Modele de reprezentare
HAC
single link
K-Medoids
(PAM)
Evaluare
CLASIFICARE
CLUSTERING
A
l
e
g
e
r
e
a

a
l
t
e
i

c
l
a
s
e

Introducere. Scop i obiective principale
8
ntre dou documente reprezentate prin modelul STDM, una fiind original i cea care obine
rezultatele cele mai bune. n finalul capitolului sunt prezentate i analizate rezultatele obinute de
algoritmii de clustering utiliznd diferite metrici i cele dou modele de reprezentare a
documentelor STDM i VSM.
n partea a treia, care conine capitolele cinci i ase se prezint cercetarea efectuat n
domeniul clasificrii documentelor text. n capitolul cinci se face o prezentare a unei posibile
taxonomii pentru algoritmii de clasificare. Sunt prezentai algoritmi de clasificare caracteristici
pentru fiecare categorie i unele rezultate din faza de testare a acestora. De asemenea, la finalul
capitolului cinci sunt prezentate noiuni eseniale legate de metaclasificatoare.
n capitolul ase se prezint cercetri privind proiectarea metaclasificatoarelor. Sunt
propuse unele soluii de mbuntire a unor metaclasificatori existeni i se prezint 3
metaclasificatori originali. Utilizarea unor algoritmi genetici i a unei reele neuronale au dus la
mbuntirea rezultatelor clasificrii documentelor text care sunt prezentate n cadrul acestui
capitol.
Prezenta tez se ncheie cu capitolul apte care este dedicat prezentrii ideilor principale
care se desprind din aspectele teoretice i practice ale cercetrilor efectuate i care sintetizeaz
contribuiile personale aduse n aceast lucrare precum i perspectivele de cercetare.
Mulumiri
n primul rnd cele mai sincere mulumiri doresc s le adresez conductorului meu de
doctorat dl. prof. univ. dr. ing. Lucian N. VINAN, pentru coordonarea tiinific riguroas,
pentru ncrederea acordat i pentru discuiile profesionale extrem de stimulative i interesante
pe care le-am avut precum, pentru exigena manifestat fa de lucrare.
De asemenea, doresc s mulumesc i pe aceast cale colegilor din Catedra de
Calculatoare i Automatizri din cadrul Universitii Lucian Blaga din Sibiu, n special
domnului l. dr. ing. Daniel Morariu, pentru faptul c a acceptat s-i continui munca i pentru
atmosfera plcut creat, care a contribuit i ea semnificativ la motivarea mea.
Doresc s mulumesc referenilor acestei teze de doctorat, pentru acceptul i bunvoina
de a recenza aceast lucrare i pentru efortul competent depus.
Totodat mulumirile mele se ndreapt spre familia i prietenii mei pentru susinerea
moral i pentru faptul c nu au renunat s cread n mine, cu toate c timpul care l-am alocat
lor a fost redus considerabil.
Este interesant faptul c, aceast lucrare a nceput o dat cu cstoria mea, a asistat la
naterea fiicei mele Ana, a nsoit-o n prima zi de grdini cnd nu vorbea, a fost alturi cnd
Ana a nceput s vorbeasc limba german, s schieze i s noate. Sper c prima zi de coal a
Anei va reprezenta actul final pentru aceast tez i totodat ieirea mea ca cercettor din
rndurile grdiniei i intrarea n coal.





Stadiul actual n procesarea automat a documentelor de tip text
9

2 Stadiul actual n procesarea automat a documentelor
de tip text
2.1 Data mining n baze de date
Data mining [Han01] reprezint extragerea cunotinelor din masive de date. Este o
prescurtare pentru mineritul cunotinelor din date (knowledge mining from data). Data mining
este un simplu pas n procesul complex de descoperire a cunotinelor din baze de date. Acest
pas este folosit n special pentru a analiza datele coninute n baze de date. Aceast analiz are ca
rezultat descoperirea caracteristicilor ce pot fi folosite ulterior la organizarea datelor. Astfel, data
mining poate fi privit ca procesul de descoperire a pattern-urilor i a legturilor (corelaiilor)
dintre date (tehnici de acest fel sunt prezentate n [Ian00]). Acest proces trebuie s fie automat
sau semi-automat. Deci, data mining este procesul de descoperire a cunotinelor relevante n
cantiti mari de date organizate n baze de date, depozite de date sau alte magazii de informaii
(data warehouse). Un sistem de data mining trebuie s aib urmtoarele componente majore
[Han01]:
1. Baze de date, depozite de date sau orice alt depozit de informaii cuprinde curirea
datelor (eliminarea zgomotului i corectarea inconsistenelor din date) i tehnicile de
integrare (agregare) efectuate pe date.
2. Baze de date sau servere pentru depozitarea datelor sunt responsabile pentru aducerea
datelor relevante bazate pe cererea utilizatorului.
3. Cunotinele de baz pentru ghidarea cutrii sau evaluarea pattern-urilor rezultate.
4. Motorul data mining este esenial pentru sistemul de data mining i ideal ar trebui s
cuprind module funcionale pentru sarcini cum ar fi, asocierile, clasificrile, analiza
clusterelor i analiza evoluiei i derivrii.
5. Module de evaluare a pattern-urilor sunt folosite pentru a interaciona cu modulul de
data mining pentru a realiza o cutare a pattern-urilor relevante.
6. Interfaa grafic a utilizatorului comunicarea ntre utilizator i sistemul de data mining
pentru specificarea interogrilor de data mining i afiarea informaiilor obinute.
Aadar, data mining este considerat a fi unul dintre cele mai importante domenii n
sistemul de baze de date i unul n care se prevd dezvoltri interesante i promitoare n
industria informatic.
2.1.1 Preprocesarea datelor
Bazele de date din lumea real sunt astzi foarte sensibile la zgomot, la lipsuri i
inconsisten a datelor. Pentru a putea obine rezultate folositoare din date se folosesc
urmtoarele tehnici de preprocesare:
- Curirea datelor pentru eliminarea zgomotului i corectarea inconsistenelor din date;
Information is not knowledge.
Albert Einstein
Stadiul actual n procesarea automat a documentelor de tip text
10
- Agregarea datelor contopirea datelor din surse multiple ntr-o form corespunztore
mineritului. Combin datele din mai multe surse ntr-un depozit de date coerent: depozit
de date sau cub de date;
- Selectarea datelor pentru a selecta informaiile relevante pentru procesul curent de
analiz cu scopul simplificrii muncii n etapa propriu-zis de extragere de cunotine;
- Transformarea datelor pregtirea datelor pentru analiz printr-o reprezentare ct mai
adecvat. Const n operaii cum ar fi normalizarea datelor. Normalizarea poate
mbunti acuratea i eficiena algoritmilor de data mining. Normalizarea datelor
reprezint scalarea tuturor datelor la un domeniu prestabilit;
- Reducerea datelor poate reduce dimensiunea datelor prin agregare, eliminarea
trsturilor caracteristice redundante sau gruparea trsturilor comune.
Aceste tehnici sunt aplicate apriori procesului de data mining i pot mbunti calitatea
procesului pentru gsirea abloanelor i/sau reducerea timpului necesar pentru mineritul efectiv.
2.1.2 Curirea datelor
Deoarece datele pentru procesul de data mining sunt preluate din diverse surse, acestea au
deseori diverse structuri i valori eronate sau lips. Algoritmii de curire a datelor ncearc s
umple valorile lips, s netezeasc valorile considerate zgomot prin identificarea extremelor i
s corecteze inconsistenele n date.
2.1.2.1 Valorile lips
Atunci cnd se aduc toate datele n aceeai structur pot aprea valori lips n valorile
corespunztoare unui document. Pentru a umple valorile lips exist cteva metode clasice:
- Ignorarea tuplelor (valorile atributelor corespunztoare unui document) de obicei este
fcut cnd clasa de etichete sau o mare parte din atributele tuplului lipsesc. Aceast
metod nu este eficient mai ales n cazul n care tuplele conin cteva atribute cu valori
lips. Este n special slab cnd procentajul valorilor lips per atribute variaz
considerabil;
- Umplerea valorilor lips manual n general aceast cale este consumatoare de timp i
nu este fezabil la multe valori lips;
- Utilizarea unei constante globale pentru umplerea valorilor lips nlocuiete toate
atributele lips cu aceeai constant (ex. Unknown sau
)
. Aceast metod este
simpl dar nu este recomandat deoarece poate duce la valori eronate ale tuplului;
- Utilizarea unui atribut de mijloc pentru nlocuirea valorilor lips de exemplu se umple
cu media tuturor valorilor din cmpul respectiv;
- Utilizarea unui atribut de mijloc pentru toate eantioanele aparinnd aceleiai clase din
care provine tuplul Aceasta se aplic n cazul n care avem la dispoziie i un set mic de
date preetichetate. Se vor nlocui valorile lips n setul de datete neetichetat cu media
valorilor pe tuplul respectiv pentru toate documentele aparinnd aceleiai clase din setul
de date etichetat;
- Utilizarea valorii cele mai probabile pentru nlocuirea valorilor lips determinarea
prin regresie a valorilor, are ca rezultat componente bazate pe concluzii utiliznd teoria
Bayesian sau bazat pe arbori de decizie.
Ultima metod este cea mai des folosit pentru c utilizeaz datele prezente pentru a
prezice valorile lips.
Stadiul actual n procesarea automat a documentelor de tip text
11
2.1.2.2 Zgomotul
Zgomotul este o eroare aleatoare sau variabil n valorile msurate. Acesta poate duce la
erori n evaluarea pattern-urilor. Cteva tehnici de netezire a datelor (eliminare a zgomotului)
sunt:
1. Filtrarea reprezint netezirea valorilor sortate prin consultarea vecintii. Valorile
sortate sunt distribuite ntr-un numr de grupuri sau bin (container). Deoarece metoda
consult valoarea vecinului, ea va face o netezire local. Exist mai multe metode de
netezirea a datelor:
- Netezire prin filtru median fiecare element din container este nlocuit cu media
elementelor din acel grup.
- Netezirea prin median fiecare element este nlocuit cu mediana elementelor
din container.
- Netezirea prin margini minimul i maximul sunt date de container i reprezint
graniele, fiecare element este nlocuit de valoarea graniei celei mai apropiate.
2. Clusterarea extremitile pot fi gsite prin grupare, unde valorile similare sunt
organizate ntr-un grup sau cluster. Valorile care rmn afar dup grupare sunt
considerate zgomot i sunt eliminate.
3. Combinarea inspeciei umane cu cea a calculatorului aplicaia este utilizat pentru
identificarea pattern-urilor extreme care reflect un coninut surpriz i respect o
etichet cunoscut. Pattern-urile gsite pot fi bune sau pot fi gunoi. Omul poate sorta
aceste pattern-uri pentru a identifica care dintre acestea reprezint gunoi.
4. Revenirea la starea anterioar datele pot fi netezite prin ajustarea datelor. Regresia
liniar implic gsirea celei mai bune linii pentru a uni dou variabile astfel nct
variabilele cunoscute pot fi utilizate s predicioneze altele. Regresia multipl liniar este
o extensie a regresiei liniare unde mai mult de dou variabile sunt implicate i datele sunt
unite pe o suprafa multidimensional. Se utilizeaz regresia pentru a gsi ecuaia
matematic care ajut la netezirea datelor i elimin zgomotul.
2.1.3 Transformarea i integrarea datelor
Data mining ofer posibilitatea de integrare a datelor concatenarea datelor din surse
multiple de date. Aceste date trebuie transformate ntr-o form convenabil pentru cutare.
2.1.3.1 Integrarea datelor
Este inevitabil ca n etapa de analiz a datelor, s se apeleze i la integrarea datelor din
surse multiple ntr-o surs de date coerent aceasta reprezint depozitarea datelor. Exist un
numr de probleme de luat n considerare pe durata integrrii datelor:
- Identificarea entitilor cum pot ti c customer_id dintr-o baz de date i cust_number
din cealalt fac referire la aceleai entiti. Bazele de date i depozitele de date conin de
obicei metadate. Fiecare metadat poate fi folosit pentru a evita erori n schema de
integrare.
- Redundana un atribut poate fi redundant dac el este derivat dintr-o alt tabel.
Inconsistena n atribute sau dimensiune pot de altfel cauza redundan n setul de date.
Redundana poate fi eliminat prin analiza corelaiilor. Analiza msoar ct de puternic
un atribut implic pe cellalt, bazndu-se pe datele disponibile. Corelaia dintre atributele
A i B poate fi msurat prin [Han01]:
Stadiul actual n procesarea automat a documentelor de tip text
12
B A
B A
n
B B A A
r
o o ) 1 (
) )( (
,

(2.1)
unde n reprezint numrul de tuple, A i B sunt media valorilor A i B iar
A
o i
B
o
reprezint deviaia standard:
1
) (
,
1
) (
: , ,
2 2

= = =

n
B B
n
A A
iar
n
B
B
n
A
A
B A
o o (2.2)
Dac rezultatul relaiei (2.1) este mai mare dect zero atunci A i B sunt posibil corelate,
n sensul c dac valoarea lui A crete va crete i valoarea lui B. De aici, o valoare mare va
indica c A sau B pot fi terse deoarece sunt redundante. Dac rezultatul este zero A i B sunt
independente i nu exist corelaie ntre ele. Dac valoarea rezultat este mai mic ca 0, atunci
A i B au o corelaie negativ (anticorelaie) unde dac valoarea unui atribut crete valoarea
celuilalt atribut va descrete.
- Detecia i rezoluia valorii datelor de conflict valorile pot diferi din cauza scrii de
reprezentare sau codrii. De exemplu nlimea poate fi memorat n diferite uniti de
msura. Preul pentru diferite hoteluri poate implica nu doar diferene de pre ci i
diferene de servicii.
Integrarea cu grij a datelor din surse multiple poate ajuta la reducerea i evitarea
redundanelor i inconsistenelor n setul de date rezultat i poate duce la o mbuntire a
procesului de extragere de cunotine.
2.1.3.2 Transformarea datelor
Transformarea datelor const n reprezentarea sau consolidarea datelor ntr-o form
convenabil pentru mineritul datelor. Ea implic urmtoarele:
- Netezirea se folosete pentru eliminare zgomotului din date. Asemenea tehnici includ
filtrare, clusterare i regresie;
- Agregarea operaii de sumarizare sau agregare sunt aplicate pe date. De exemplu
vnzrile zilnice pot fi agregate ca i calcule lunare sau anuale;
- Generalizarea unde primitivele de date de nivel jos sunt nlocuite cu primitive de nivel
nalt. De exemplu atributul strad poate fi generalizat cu ora sau ar. La fel vrsta
poate fi generalizat n tnr, mediu i btrn;
- Normalizarea se aplic o scalare ntr-un anumit domeniu pentru atribute. De exemplu
datele sunt scalate n intervalul [-1.0, 1.0] sau n intervalul [0.0, 1.0].
- Construirea atributelor (construirea articolelor) unde noi atribute sunt create i
adugate n setul de atribute dat pentru procesul de mining.
n continuare, nu voi detalia tehnicile de netezire, agregare i generalizare, ci m voi axa
pe normalizare pentru c a fost utilizat cu precdere n experimentele prezentate n aceast tez.
Normalizarea reprezint scalarea unei valori a atributului ntr-un domeniu specificat i
se realizeaz printr-o funcie matematic. Dintre metodele de normalizare mai des utilizate, se
menioneaz urmtoarele:
- Normalizarea min-max: transformare liniar de la datele originale. Presupunem min
A
i
max
A
sunt valorile minime i maxime a atributului. Normalizarea valorii v a lui A n v'
n noul domeniu [new_min
A
, new_max
A
] se face dup formula:
`
A
A A A
A A
v min
v (new_max -new_min )+new_min
max -min

= . (2.3)
Normalizarea min-max pstreaz relaiile dintre valorile datelor originale.
Stadiul actual n procesarea automat a documentelor de tip text
13
- Normalizarea z-mediu valoarea A este normalizat n baza unei medii i deviaii
standard a lui A: `
A
v A
v
o

= , unde este valoarea lui A, este valoarea calculat, A este


media iar
A
o este deviaia standard. Aceast metod de normalizare este utilizat cnd
minimul i maximul sunt necunoscute sau A iese din domeniul min-max.
- Normalizare prin scalare decimal normalizare prin mutarea punctului decimal, punct
care se mut innd cont de valoarea maxim absolut a lui A:
10
j
v
v' = unde j este un
ntreg dat de ( ) max 1 v' < . De exemplu pentru A n domeniul [986; 917], j ia valoarea 3.
Normalizarea schimb datele originale n totalitate, n special ultimele dou metode.
Este necesar s se salveze parametrii de normalizare pentru ca noile date s se normalizeze n
aceiai msur.
Construirea atributelor noile atribute sunt construite i adugate plecnd de la atributele deja
existente pentru a ajuta la o mai bun reprezentare a setului de date. De exemplu din atributele
lungime i lime s-ar putea construi atributul arie.
2.2 Text mining
Cele mai multe colecii de date din lumea real sunt n format text i constau din colecii
mari de documente din diferite surse, cum ar fi articole de tiri, lucrri de cercetare, cri,
biblioteci digitale, mesaje e-mail, pagini web i fluxuri RSS etc. Aceste tipuri de date sunt
semistructurate i nu au o structur complet determinist. Au fost dezvoltate tehnici de regsire a
informaiilor, cum ar fi metodele de indexare a textului, care au fost dezvoltate pentru a manevra
documente nestructurate.
Exist mai multe abordri n text mining, care pot fi clasificate din perspective diferite,
unele bazate pe intrri din cadrul sistemului de text mining i unele bazate pe sarcinile care
urmeaz s fie efectuate de sistemul de minerit. n general, abordrile majore, sunt [Han01]: (1)
abordarea bazate pe cuvinte cheie, n cazul n care ca i intrare este un set de cuvinte cheie sau
termeni din documente, (2) abordarea bazat pe etichetare, n cazul n care datele de intrare sunt
reprezentate printr-un set de etichete i (3) abordri bazate pe extragerea de informaii, abordare
care are ca intrare informaii semantice, cum ar fi evenimente, fapte, sau alte entitii descoperite
prin extragerea de informaii. O simpl abordare bazat pe cuvinte cheie ar putea s descopere
doar relaii la un nivel relativ superficial, cum ar fi redescoperirea expresiilor simple (de
exemplu, "baza de date" i "sisteme") sau apariii mpreun n pattern-uri cu semnificaie puin
important (de exemplu, "pescar" i "pete"), dar care nu pot duce la o nelegere profunda a
textului. Metoda etichetrii documentelor se bazeaz pe denumiri de clase, obinute prin
etichetare manual (care este costisitoare i este imposibil de realizat pentru colecii mari de
documente) sau de ctre unii algoritmi de clasificare automat (care pot prelucra un set relativ
mic de clase dar au nevoie n prealabil de definirea etichetelor). Cea de a treia abordare i anume,
extragerea de informaii este mult mai avansat i poate duce la descoperirea unor cunotine
profunde, dar ea necesit o analiz semantic a textului prin nelegerea limbajului natural
utiliznd att metode de nvare automat ct i lingvistica computaional.
Cele trei abordri prezentate sunt rezolvate prin diferite metode. Acestea includ
clusteringul documentelor, clasificarea, extragerea de informaii i analiza asocierilor. n
prezenta lucrare voi prezenta cteva aspecte i cercetri proprii privind clusteringul i
clasificarea de documente text.
Stadiul actual n procesarea automat a documentelor de tip text
14
2.2.1 Analiza datelor text i regsirea informaiei
Un domeniu care a fost dezvoltat o dat cu sistemele de baze de date este regsirea
informaiei (Information Retrieval - IR). Fa de un sistem de baze de date care se axeaz pe
interogri i procesarea tranzaciilor n date structurate, regsirea informaiei este concentrat pe
organizarea i recunoaterea de informaii din documente text. Pentru sistemele de regsire a
informaiei, o problem important o reprezint alegerea documentelor relevante pentru
utilizator.
Deoarece sistemele de regsire a informaiilor i sistemele de baze de date utilizeaz
fiecare diferite tipuri de date, problemele care apar la aceste dou tipuri de sisteme sunt diferite.
Problemele majore ale regsirii informaiei din documente text sunt legate de aproximarea
cutrii bazndu-ne pe cuvinte cheie i pe noiunea de relevan.
2.2.1.1 Msuri de baz pentru regsirea informaiei
S presupunem c un sistem de regsire a informaiei a returnat un numr de documente
pe baza unei interogri formulate. Problema care apare este cum se poate aprecia dac setul de
documente regsit pe baza interogrii este satisfctor.
Prezentm n continuare dou notaii importante pentru sistemele de regsire a informaiei
[Han01]. Fie { } Relevant mulimea tuturor documentele relevante fa de interogare i { } Regasit
mulimea tuturor documentelor gsite n urma interogrii. Setul de documente care le include pe
ambele este notat { } { } Relevant Regasit . Exist 3 msuri de baz pentru aprecierea calitii
textului regsit:
Precizie reprezint probabilitatea ca un document clasificat corect s fie util:
{ } { }
{ }
Relevant Regasit
precision
Regasit

= (2.4)
Recall reprezint probabilitatea ca un document util s fie clasificat corect
{ } { }
{ }
Relevant Regasit
Relevant
recall

= (2.5)
F-measure care este definit ca medie armonic ntre Precizie i Recall
( ) / 2
recall precision
F measure
recall precision

=
+
(2.6)
Este tiut faptul c media armonic penalizeaz mai bine dect alte msuri (ex. media
aritmetica) un sistem care sacrific (supraliciteaz) o msur n favoarea celeilalte.
2.2.2 Metode de regsire a informaiei
n general, metodele de regsire se mpart n dou categorii: metode care vd regsirea de
informaie ca o problem de selecie a unor documente i metode care ofer o ierarhie de
documente. Aceast ierarhie se bazeaz pe un scor obinut de fiecare document n funcie de ct
de similare sunt acestea fa de interogarea formulat.
n metodele de selecie a documentelor, interogarea stabilete anumite limite pentru
selectarea documentelor relevante. O metod tipic din aceast categorie este modelul Boolean
de regsire a informaiei n care un document este reprezentat ca un set de cuvinte cheie i ofer
unui utilizator o expresie boolean de cuvinte cheie, cum ar fi "bed AND breakfast", "tea OR
coffee", sau "browser web NOT Internet Explorer". Un astfel de sistem de regsire a informaiei
Stadiul actual n procesarea automat a documentelor de tip text
15
va executa o astfel de interogare i va returna doar documentele care satisfac expresia boolean.
Totui, metoda de regsire boolean, n general, funcioneaz bine doar atunci cnd utilizatorul
cunoate setul de date din care vrea s selecteze informaii i poate formula o interogare
boolean corect n acest sens.
Metodele care ofer o ierarhie a documentelor, ordoneaz documentele n funcie de
relevana acestora n raport cu o interogare formulat. Pentru utilizatorii obinuii, aceste metode
sunt mai adecvate dect metodele de selecie a documentelor. Cele mai multe sisteme moderne
de regsire a informaiilor ofer o list de documente ierarhizate, ca rspuns la interogarea bazat
pe cuvinte sau expresii cheie a unui utilizator. Scopul acestei metode este de a aproxima gradul
de relevan a unui document cu interogarea formulat, cu ajutorul unui scor calculat pe baza
informaiilor, cum ar fi frecvena de cuvinte din document i cuvintele din ntregul set. Este
evident faptul c este dificil s gsim o msur precis a gradului de relevan pentru un set de
cuvinte cheie.
Cea mai des utilizat abordare pentru reprezentarea documentului este utilizarea
modelului spaiului vectorial (Vector Space Model - VSM). Ideea de baz a modelului VSM este
urmtoarea: reprezentm un document i o interogare, ca vectori ntr-un spaiu n-dimensional
corespunztor pentru toate cuvintele cheie i vom folosi o msur de similaritate specific pentru
a calcula similaritatea dintre vectorul de interogare i vectorul documentului. Valorile
similaritii pot fi apoi utilizate pentru ierarhizarea documentelor. Pornind de la un set D de
documente i t termeni (cuvinte), putem modela fiecare document ca fiind un vector v ntr-un
spaiu n dimensional ortogonal R
n
. Coordonata j a lui v este un numr (frecven de termeni
care se poate i pondera) care msoar importana termenului j pentru documentul dat: este de
obicei 0 dac documentul nu conine termenul i diferit de zero n rest. Presupunnd acum c la
documente similare se ateapt s aib o frecven similar a termenilor putem msura
similaritatea prin compararea frecvenelor cuvintelor de baz. De exemplu folosind formula
cosinusului dintre doi vectori n-dimensionali:
1 2
1 2
1 2
( , )
v v
sim v v
v v

= (2.7)
unde
1 2
v v reprezint produsul scalar a doi vectori i se calculeaz ca fiind
1 2
1
n
i i
i
v v
=

(cosinusul
ntre versorii ortogonali este evident 0) iar
1
v este norma (modulul, msura) vectorului i se
calculeaz ca fiind
1 1 1
v v v = . Evident ca sim (v1,v2)=1 semnific o similaritate maxim ntre
cei doi vectori.
2.2.3 Asocierea ntre cuvinte cheie i clasificarea documentelor
O astfel de analiz colecteaz seturi de cuvinte cheie sau termeni care apar frecvent
mpreun i apoi stabilete relaii de asociere sau de coresponden ntre ele. Metoda analizei
asocierilor n baze de date text efectueaz cteva operaii de preprocesare a datelor, prin
extragerea rdcinii cuvintelor i prin eliminarea cuvintelor de legtur din text obinnd astfel
un set redus, apoi apeleaz algoritmi specifici mineritului pe baz de asocieri. ntr-o baz de
date cuprinznd documente, fiecare document poate fi privit ca o tranzacie, n timp ce un set de
cuvinte cheie din document poate fi considerat ca un set de elemente din acea tranzacie. Baza de
date este n formatul:
{id_document, lista_cuvinte_cheie} (2.8)
Problema mineritului asocierii cuvintelor cheie din documente este, n consecin,
mineritul asocierii nregistrrilor din bazele de date tranzacionale, unde au fost dezvoltate mai
multe metode [Agra93], [Hols94]. Setul de cuvinte cheie care n mod consecutiv apar frecvent
Stadiul actual n procesarea automat a documentelor de tip text
16
pot forma un termen sau o fraz. Procesul de minerit al asocierilor poate ajuta la detectarea
componentelor asocierii, adic termeni sau fraze dependente de domeniu (ex. Stanford,
University), sau asocierilor necombinate (RON, curs valutar). Mineritul bazat pe aceste asocieri
este numit mineritul asocierilor de termeni care este diferit fa de mineritul cuvintelor simple.
Mineritul asocierilor la nivelului termenului se bucur de dou avantaje n analiza textului: (1)
termenii i frazele sunt automat etichetate eliminndu-se factorul uman i (2) numrul de
rezultate fr sens este substanial redus n timpul execuiei algoritmului de minerit.
2.2.4 Alte tehnici de indexare pentru regsirea textului
Alte tehnici de regsire pe care le-am analizat se refer la index invers i fiiere de
semnturi.
Un index invers este o structur de dou tabele numite document_table i term_table
indexate cu tabele HASH sau cu ajutorul unui arbore B+:
- document_table const dintr-un set de nregistrri, fiecare coninnd dou cmpuri:
doc_id i posting_list, unde posting_list este o list de termeni care apar n document,
sortat n raport cu metrica utilizat;
- term_table const dintr-un set de termeni nregistrai, fiecare coninnd: term_id i
posting_list, unde posting_list specific o list de identificatori de documente n care apar
termenii.
Fiierele de semntur sunt fiiere care memoreaz semnturi ale nregistrrilor pentru
fiecare document din baza de date. Fiecare semntur are o dimensiune fix de b bii care
reprezint termenii. Fiecare bit al documentului de semnturi este setat la 0 la nceput. Un bit
este trecut pe 1 dac termenul reprezentat prin semntur apare n document. O semntur S1 se
potrivete cu o alt semntur S2 dac fiecare bit care este setat n S1 este setat i n S2.
2.3 WWW mining
WWW (World Wide Web)este un sistem hipermedia distribuit, oferind o gam larg de
informaii i servicii. Informaiile coninute n paginile WEB precum i legturile (linkurile) ntre
ele ofer surse importante pentru data mining. n continuare prezint unele probleme cheie care
vizeaz utilizarea WWW ca surs pentru data mining.
Web-ul pare a fi prea vast pentru realizarea unui data warehousing sau data mining
eficient. Dimensiunea actual a WEB-ului este de ordinul sutelor sau miilor de terabytes
i este n continu cretere rapid. La sfritul lunii iunie 2011 compania Netcraft
[NETK] o companie care monitorizeaz severe de web a raportat rspunsuri de la un
numr de 346.004.403 de site-uri.
Complexitatea paginilor WEB este de departe mai mare dect orice alt colecie de
documente text tradiionale. n paginile web lipsete standardizarea. n ultimii 2-3 ani de
cnd ideea de web semantic prinde tot mai mult contur se ncearc introducerea unor
standarde la nivel de limbaj i structur a paginii. n momentul actual, paginile de web
conin structuri i stiluri diferite. Chiar dac WEB-ul este considerat a fi o mare
bibliotec digital, majoritatea documentelor din aceast bibliotec nu sunt ordonate. Nu
exist indexare dup categorii, titlu sau autor. Cutarea i regsirea de informaii ntr-o
asemenea bibliotec este o sarcin important i dificil.
Web-ul este o surs de informaii foarte dinamic. Web-ul crete continuu i informaiile
coninute sunt constant actualizate. tirile, bursa de valori, reclame i reclame pentru
servicii web modific paginile web zilnic.
Stadiul actual n procesarea automat a documentelor de tip text
17
Web-ul deservete o diversitate de utilizatori. Comunitatea utilizatorilor care folosesc
internetul este ntr-o continu cretere. Utilizatorii pot avea cunotine diferite, interese i
scopuri de utilizare diferite. Majoritatea utilizatorilor nu au cunotine legate de structura
reelei Internet, se poate s nu fie contieni de costul ridicat a unei cutri, se pot uor
pierde n ntunecimea reelei sau se pot uor plictisi n ateptarea unui rezultat.
Doar o mic parte din informaiile de pe Web sunt ntr-adevr relevante sau valoroase
pentru un utilizator la un moment dat. Se pare c aproape 99% din informaiile obinute
de un utilizator sunt neinteresante sau neimportante pentru el. Cum pot fi determinate
poriunile din web care sunt ntr-adevr relevante? Cum putem gsi o pagin web de
nalt calitate cu un topic specific? Iat doar cteva ntrebri care mai ateapt un
rspuns.
Exist multe motoare de cutare bazate pe indeci care caut n web, indexeaz pagini i
construiesc i memoreaz indeci imeni bazai pe cuvinte cheie, care ajut la localizarea
seturilor de pagini care conin acele cuvintele cheie. Un utilizator experimentat poate s
localizeze rapid un document prin furnizarea unui set de constrngeri de cuvinte cheie i fraze.
Oricum, cutarea bazat pe cuvintele cheie are dou probleme majore: (1) fiecare topic conine
sute sau mii de documente. Aceasta face ca motorul de cutare s returneze numeroase pagini,
multe dintre ele fiind doar parial relevante pentru interogarea formulat sau conin informaii de
o calitate slab. (2) multe documente care ar fi relevante pentru o interogare pot s nu conin
cuvinte cheie definite n interogare. Aceasta este problema polisemiei. De exemplu cuvntul
leu poate nsemna un animal slbatic care triete n Africa sau o unitate monetar.
Mineritul pe web reprezint o sarcin mult mai provocatoare, nseamn ordonarea
coninutului, identificarea de structuri n Web, identificarea de regulariti i coninuturi
dinamice, mineritul pattern-urilor de acces la Web. n general, sarcina de minerit pe web poate fi
clasificat n 3 categorii: mineritul coninutului web, mineritul structurii web i mineritul
utilizrii web.
2.3.1 Mineritul structurii paginilor web
Comparativ cu textul simplu dintr-un document, o pagin web conine pe lng text i
imagini i o structur. Din acest motiv paginile web sunt considerate a fi date semistructurate.
Structura de baz a unei pagini web este data de DOM (Document Object Model). DOM este o
interfa independent de platform i limbaj, care permite programelor i script-urilor s
acceseze dinamic i s actualizeze coninutul, structura i stilul documentului web [W3C].
Structura DOM a unei pagini web este o structur arborescent, n care fiecare tag
(etichet) HTML n pagina corespunde unui nod n arborele DOM. Pagina web poate fi
delimitat (marcat) de taguri predefinite structural. Tag-uri utile includ <p> (paragraf), <table>
(tabel), <li> (element de lista), <h1>... <h6> (titlu-heading) etc.

Stadiul actual n procesarea automat a documentelor de tip text
18

Fig. 2.1 Structura i taguri coninute ntr-o pagin web

Astfel, structura DOM poate fi folosit pentru a facilita extragerea de informaii. Din
pcate, datorit flexibilitii de sintax HTML, multe pagini web nu respect specificaiile W3C
privind structura HTML. Cel mai nociv standard utilizat n web a fost standardul HTML 3.2
care a permis amestecarea formei cu cea a coninutului fapt ce a dus la ngreunarea indexrii
paginilor web. n prezent, standardul XHTML1 i mai noul HTML5 ncearc o separare clar a
coninutului de forma de afiare prin utilizarea unor stiluri declarate n antetele paginilor sau n
fiiere separate cu ajutorul sintaxei CSS (Cascade Style Sheets). Mai mult dect att, arborele
DOM a fost iniial introdus pentru afiarea documentului n browser i nu ca i o descriere a
structurii semantice a paginii Web. De exemplu, chiar dac dou noduri n arbore DOM au
acelai printe, cele dou noduri ar putea fi semantic mai legate de alte noduri.
2.3.2 Mineritul link-urilor pentru identificarea paginilor web autoritare
Presupunem c un utilizator execut o interogare pentru a obine pagini relative la un
subiect dat, cum ar fi curs valutar. Paginile relevante i de nalt calitate din punct de vedere al
subiectului sunt considerate a fi pagini autoritare. Problema pentru motoarele de cutare este s
gseasc o modalitate pentru a identifica automat paginile web autoritare pentru un subiect dat.
Interesant este faptul c secretul autoritii este ascuns n legtura (link-ul) paginii. Web-ul
conine nu numai pagini dar i hiperlink-uri care pointeaz de la o pagin la alta. Aceste
hiperlink-uri conin o cantitate enorm de notaii umane latente care pot ajuta la regsirea
automat a noiunii de autoritate. Cnd un autor al unei pagini creeaz un hiperlink ctre o alt
pagin, aceasta nseamn c autorul acord ncredere paginii spre care a fcut linkul. Colecia de
linkuri venite pentru o pagin dat de la autori diferii de pe web poate indica importana paginii
i se poate s conduc natural la descoperirea paginilor web autoritare. Aadar,
(meta)informaiile web de legtur furnizeaz informaii bogate despre relevan, calitate i
structura coninutului web-ului i astfel este o surs bogat pentru mineritul web-ului.
Structura legturilor web are nite caracteristici unice. n primul rnd, nu fiecare hiperlink
reprezint o avizare pentru o pagin, unele linkuri sunt create pentru alte scopuri cum ar fi
navigarea sau reclame. Totui dac majoritatea hiperlink-urilor ctre o pagin sunt linkuri de
avizare atunci opinia colectiv va domina. n al doilea rnd, din interese comerciale evidente o
pagin autoritar nu va avea pe pagina proprie un link ctre rivali n acelai domeniu. n al treilea
rnd, paginile autoritare sunt rareori foarte descriptive.
Aceste proprieti ale structurii linkurilor conduce cercetarea la o alt categorie
important a paginilor web numit hub. Un hub este o pagin sau un set de pagini care
Stadiul actual n procesarea automat a documentelor de tip text
19
furnizeaz colecii de link-uri autoritare. Paginile hub pot fi chiar ele neimportante existnd
poate chiar puine link-uri care pointeaz ctre ele. Oricum, ele furnizeaz link-uri ctre site-uri
autoritare, avnd un subiect comun. Astfel de pagini pot fi liste de link-uri recomandate pe pagini
personale, liste de referine ale unui curs sau site-uri comerciale. n general, un hub bun este o
pagin cu link-uri ctre pagini autoritare de calitate.
2.3.3 Mineritul utilizrii web
Pe lng mineritul coninutului i structurii de legturi, un alt task important este
mineritul utilizri web-ului, care prelucreaz fiierele log pentru descoperirea pattern-urilor de
acces ale utilizatorilor la paginile web. Analizarea i exploatarea regularitilor n nregistrrile
de web log pot identifica poteniali clieni pentru comerul electronic, mrirea calitii i livrarea
serviciilor de informaii pe internet la utilizatorul final i mbuntirea performanei sistemelor
de servere de pe web.
Serverele web de obicei nregistreaz (n weblog) fiecare logare pentru fiecare acces la o
pagin web. Aceasta include URL-ul, adresa IP de la care a fost fcut cererea iniial i
tampila de timp a cererii. Bazele de date weblog furnizeaz informaii amnunite despre
dinamica web-ului. Pentru dezvoltarea tehnicilor de minerit pe weblog-uri acest aspect devine
foarte important.
n dezvoltarea tehnicilor pentru utilizarea mineritului pe weblog-uri, putem considera
urmtoarele: n primul rnd, este important ca datele din aceste fiiere de weblog s fie valide i
de ncredere. Adesea, datele din fiiere weblog trebuie s fie curate, condensate i transformate
ntr-o ordine pentru regsirea i analiza informaiilor semnificative i valoroase.
n al doilea rnd, avnd URL-urile disponibile, timpul, adresa IP i informaii despre
coninutul pagini web se poate realiza o selecie multidimensional iar cu ajutorul unei analize de
tip OLAP (OnLine Analytical Processing specifice masivelor de date) multidimensional se
pot determina N useri de top, numrul celor mai accesate pagini web, perioade de timp cu cele
mai multe accese i altele care pot ajuta de exemplu n descoperirea clienilor poteniali,
utilizatorilor, pieelor comerciale.
n al treilea rnd, data mining poate fi efectuat pe nregistrrile weblog pentru gsirea
pattern-urilor de asociere sau secveniale i tendine pentru accesul la web.
Datele weblog furnizeaz informaii despre acele grupuri de utilizatori acceseaz anumite
grupuri de pagini, informaiile weblog pot fi integrate cu coninutul web i structura de legturi
web pentru ajutorul mineritului paginilor, clasificarea documentelor web i construcia pe mai
multe niveluri a informaiilor de baz.
2.3.4 Construirea informaiilor de baz pe mai multe niveluri web
Deoarece o pagin de web conine totui, n afar de textul propriu-zis i metainformaii
despre pagina respectiv, ar fi interesant s se structureze informaiile de baz pe mai multe
niveluri pentru a vedea dac sunt realiste sau folositoare. Cel mai de jos nivel (cu cele mai multe
detalii) poate fi web-ul nsui. El nu poate fi separat n depozite. M voi referi la acest nivel ca
layer-0. Totui este nerealist s creezi depozite web coninnd copii a fiecrei pagini de pe web,
deoarece ar fi un duplicat al WWW.
Al doilea nivel pe care l voi numi n continuare layer-1 este nivelul de descriere al pagini
web, coninnd informaiile care descriu pagina web. Acesta ar trebui s fie mult mai mic dect
layer-0 dar suficient de bogat n prezentarea celor mai interesante informaii generale pentru
furnizarea cuvintelor cheie de baz, cutarea multidimensional sau minerit. Bazndu-ne pe
Stadiul actual n procesarea automat a documentelor de tip text
20
varietatea de pagini web, layer-1 poate fi organizat n diferite clase semistructurate cum ar fi:
documente, persoane, organizaii, vnzri etc.
Al treilea nivel, layer-2, reprezint nivelul de servicii WEB. Acestea pot fi cataloage web
construite deasupra nivelului, servicii specifice de aplicaie care pot utiliza limbajul WSDL (Web
Service Discovery Language) sau care pot utiliza protocoale mai simple cum ar fi SOAP (Simple
Object Access Protocol - este un protocol pentru schimbul de informaie structurat ntre servicii
WEB).
Utiliznd rangurile paginilor web date de motoare de cutare i algoritmi de clasificare a
paginii sau documentului putem obine informaii relevante de nalt calitate i pagini relevante
de pe web din construcia nivelului 1.
Standardizarea cu ajutorul XML-ului (eXtended Markup Language) va facilita schimbul
de informaii i extragerea informaiilor pentru construirea informaiilor de baz pe mai multe
nivele. n afar de asta, cutarea informaiilor de baz pe web i limbajele de descoperire a
cunotinelor pot fi create i implementate pentru astfel de scopuri. Web-ul semantic va avea ca
baz aceast standardizare la care se vor aduga diferite modele i limbaje de descriere a datelor
cum ar fi RDF (Resource Description Framework). RDF este un model standard pentru schimbul
de date pe Web. RDF are caracteristici care s faciliteze fuzionarea informaiilor, chiar dac
schemele care stau la baza acestor informaii sunt diferite i sprijin n mod specific evoluia
schemelor de-a lungul timpului fr a necesita la un moment data ca toate datele consumatorilor
s fie schimbate.
2.3.5 Clasificarea automat a documentelor web
Clasificarea automat a unui document web const n alocarea unei etichete de clas care
exist ntr-un set pre-clasificat De exemplu colecia DMOZ i documentele web asociate
anumitor categorii poate fi utilizat ca seturi de antrenament pentru obinerea schemei de
clasificare. Apoi dup ce s-a obinut schema de clasificare ea poate fi aplicat unor documente
web noi pentru a le clasifica corespunztor.
Metodele de clasificare a documentelor pe baza cuvintelor cheie au fost prezentate n
seciunea 2.2, aceste metode pot fi utilizate pentru clasificarea documentelor web. Astfel, scheme
de clasificare bazate pe termeni au dat rezultate bune pentru clasificarea documentelor web. Cu
toate acestea, deoarece o pagin web poate conine mai multe teme, publicitate i informaii de
navigare, analiza de coninut bazat pe blocuri de pagin poate juca un rol important n
construcia de modele de clasificare de nalt calitate. De vreme ce hiperlink-urile conin
informaii de nalt calitate din punct de vedere semantic n comparaie cu topicul paginii, este
indicat utilizarea i a unor astfel de informaii semantice pentru a obine o acuratee i mai bun
dect simplele clasificri bazate pe cuvinte cheie. Totui, link-urile care nconjoar un
document pot provoca zgomot iar folosirea simpl a termenilor din vecintatea de link-uri a
unui document poate chiar degrada acurateea.
n ultimii ani s-a intensificat activitatea de cercetare privind construcia i utilizarea web-
ului semantic; astfel informaia despre infrastructura web va structura la un nivel superior web-ul
care se va baza i pe sensul coninutului paginilor web. Clasificarea documentelor web prin web
mining va ajuta la extragerea automata a sensului semantic a paginilor web i la construirea
ontologiilor pentru web-ul semantic. Iar dac web-ul semantic se va construi cu succes, acesta va
ajuta foarte mult automatizarea clasificrii documentelor web.
Stadiul actual n procesarea automat a documentelor de tip text
21
2.4 Clustering vs. clasificare
n ultimii ani creterea semnificativ a utilizrii web-ului i mbuntirea calitii i
vitezei internetului au transformat societatea noastr ntr-una care depinde puternic de informaii.
Cantitatea uria de date care este generat de acest proces de comunicare conine informaii
importante care se acumuleaz zilnic n bazele de date i nu sunt uor de regsit. Domeniul
mineritului datelor (data mining) s-a dezvoltat ca un mijloc de extragere de informaii i
cunotine din baze de date pentru a descoperi modele sau concepte care nu sunt evidente.
Dup cum se menioneaz n [Berk06, Han01], nvarea automat ofer tehnici de baz
pentru data mining prin extragerea informaiilor din datele brute coninute n bazele de date.
Procesul de obicei este format din urmtoarele etape:
- transformarea datelor ntr-un format adecvat;
- curarea datelor;
- deducerea sau extragerea concluziilor cu privire la date.
nvarea automat este mprit n dou subdomenii principale: nvarea supervizat i
nvarea nesupervizat. n cadrul categoriei de nvare nesupervizat unul dintre instrumentele
principale este clusteringul datelor. Clasificarea datelor face parte din cel de al doilea
subdomeniu i anume nvarea supervizat.
2.4.1 nvare nesupervizat i supervizat
n scopul de a clarifica diferenele dintre clasificare i clustering voi face o scurt
prezentare a nvrii supervizate i nesupervizate. n nvarea supervizat algoritmul primete
att datele (vectorizate) ct i etichetele care reprezint conceptul de nvat, pentru fiecare caz.
Scopul nvrii supervizate este ca algoritmul s nvee conceptul, n sensul c, atunci cnd se
prezint un exemplu nou, pentru a fi clasificat, algoritmul ar trebui s prezic o etichet pentru
acest caz. Msura calitii clasificrii este dat de acurateea clasificrii.
n conformitate cu aceast paradigm, pe seturi relativ reduse de date exist posibilitatea
de overfitting sau pclire prin memorarea tuturor etichetelor pentru fiecare caz de ctre
algoritm, n detrimentul nvrii de ctre acesta a relaiilor generale predictive dintre valorile
atributelor i etichete.
Rezultatele nvrii supervizate sunt de obicei evaluate pe un set de exemple de test,
disjunct fa de setul de exemple de antrenare. Metodele de clasificare utilizate sunt foarte
variate, aria lor cuprinznd de la abordrile tradiionale statistice, reelele neuronale i pn la
algoritmi bazai pe nuclee precum SVM [Burg98].
n nvarea nesupervizat algoritmul primete doar date neetichetate iar sarcina
algoritmului este de a gsi o reprezentare adecvat a distribuiei datelor (gruparea n clusteri
relevani).
Unii cercettori au combinat nvarea supervizat cu cea nesupervizat i a aprut
conceptul de nvare semi-supervizat [Benn89]. De obicei, n acest tip de abordare nvarea
nesupervizat este aplicat iniial setului de date necunoscut n scopul de a face unele
presupuneri cu privire la distribuia datelor i apoi aceast ipotez este confirmat sau infirmat
printr-o abordare supervizat.
Stadiul actual n procesarea automat a documentelor de tip text
22
2.4.2 Clasificare i analiza clasificrii
Clasificarea automat de documente text este un aspect important n mineritul textului
deoarece, datorit existenei unui numr imens de documente on-line, este esenial gruparea n
mod automat a acestor documente n clase pentru a facilita regsirea de documente i analize
ulterioare.
Pentru a efectua clasificarea automat de documente text se parcurg cteva etape. n
primul rnd, un set de documente preclasificate este considerat ca fiind setul de antrenare. Setul
de antrenament este analizat pentru a obine schema de clasificare. Schema de clasificare apoi
trebuie s fie rafinat printr-un proces de testare. Schema de clasificare obinut astfel poate fi
aplicat la clasificarea celorlalte documente.
Acest proces pare oarecum similar cu clasificarea datelor din bazele de date relaionale.
Oricum exist o diferen fundamental. Datele relaionale sunt structurate: fiecare tuplu este
definit de un set de perechi atribut-valoare. Analiza clasificrii decide care seturi de perechi de
astfel de atribute are puterea de a determina dac sau nu se ntmpl ceva. Pe de alt parte,
seturile de documente nu sunt structurate pe perechi de tipul atribut-valoare. Un set de cuvinte-
cheie asociate cu un set de documente nu este organizat ntr-un set fix de atribute sau dimensiuni.
Dac considerm fiecare cuvnt-cheie distinct sau un atribut n document ca reprezentnd o
dimensiune, pot exista mii de dimensiuni ntr-un set de documente. Prin urmare, metodele de
clasificare frecvent utilizate n bazele de date de date relaionale, cum ar fi arbori de decizie, nu
pot fi eficace pentru clasificarea seturilor de documente text.
Voi aminti cteva metode tipice de clasificare care au fost folosite cu succes n
clasificarea documentelor text. Acestea includ clasificatorul k-NN (k-Nearest-Neighbor), metode
de selecie a trsturilor, clasificarea bayesian, clasificatori SVM (Support Vector Machine) i
clasificatori care utilizeaz clasificarea bazat pe asociere.
Conform modelului vectorial de reprezentare a documentelor VSM, dou documente sunt
similare n cazul n care vectorii care reprezint documentele sunt similari sau conin pri
similare. Clasificatorul k-Nearest-Neighbor face parte din categoria algoritmilor de clasificare
prin analogie i pleac de la premisa c documente similare vor primi aceeai etichet de clas.
Atunci cnd un document de testare este prezentat algoritmul l va trata ca pe o interogare la
sistemul recunoatere a informaiilor i va prelua din setul de antrenare cele k documente
reprezentative pentru cele k categorii existente, k fiind o constant dat. Eticheta de clas a
documentului de test poate fi determinat pe baza similaritii acestuia fat de unul din cele k
documente reprezentative i va fi etichetat cu eticheta documentului reprezentativ cel mai
similar. De aici provine i numele algoritmului k-Nearest-Neighbor. Aceast metod are nevoie
de resurse de memorie importante pentru a salva informaiile legate de antrenare n comparaie
cu alte tipuri de clasificatori.
Clasificarea bayesian este una din cele mai frecvent utilizate tehnici care pot fi utilizate
eficient pentru clasificare documentelor text. Deoarece clasificarea documentelor poate fi privit
ca o calculare a distribuiei statistice a documentelor n anumite clase, un clasificator Bayesian
calculeaz pentru setul de antrenament distribuia ( ) P d C a documentului d pentru fiecare clas
C i apoi n etapa de testare va genera pentru un document de test clasa cea mai probabil pe
baza distribuiei stabilite n etapa de antrenare. Deoarece aceast metod se poate aplica la seturi
de date n-dimensionale, ea poate fi folosit pentru clasificarea documentelor text.
Support Vector Machine (SVM) este un alt exemplu de clasificator care lucreaz eficient
cu seturi de date mari, neseparabile liniar, deci i cu documente text. Astfel, algoritmul
construiete o funcie de mapare direct ntre mulimea termenilor i variabilele de clas n etapa
de antrenare. Prin determinarea unui hiperplan de separaie a acestor puncte utilizate se
realizeaz gsirea claselor pentru documentele din setul de testare. Cnd nu e posibila gsirea
Stadiul actual n procesarea automat a documentelor de tip text
23
unui hiperplan de separare se trece la o dimensiune superioara de reprezentare etc. Ideea
esenial, care difereniaz SVM-ul de celelalte metode bazate pe nuclee, este aceea de a mapa,
atunci cnd este necesar, datele de antrenament, reprezentate ntr-un anumit spaiu, ntr-un alt
spaiu, de ordin superior prin intermediul unei funcii i de a construi un hiperplan optimal de
separare n acest nou spaiu. Aceast operaie conduce evident la o funcie de separare neliniar
n spaiul iniial de date. Deoarece toi vectorii apar n produse scalare utiliznd funcia nucleu
) ( ), ( x | | w , hiperplanul de separare poate fi determinat fr a proiecta explicit datele n noul
spaiu de trsturi. Am notat cu w vectorul pondere iar cu , produsul scalar a doi vectori.
Calculele sunt reduse semnificativ prin introducerea unui nucleu pozitiv definit k, astfel
ca ' , : ) ' , ( x x x x k = . Aceast substituire, care este referit uneori ca trucul nucleu. Deoarece toi
vectorii de trsturi apar doar n produse scalare poate fi aplicat trucul nucleu. Utiliznd funcia
reprezentm vectorii de intrare n noul spaiu. Pentru nuclee sunt folosii n principal nucleul
polinomial i nucleul Gaussian. Conform [Mora08] pentru nucleul polinomial singurul parametru
care trebuie modificat este gradul iar pentru nucleul Gaussian rmne de modificat parametru C
dup urmtoarele formule:
- Polinomial:
( )
d
x x d x x k ' 2 ) ' , ( + = (2.9)
- d fiind sigurul parametrul care trebuie modificat.
- Gaussian (radial basis function RBF):
|
|
.
|

\
|

=
C n
x x
x x k
2
'
exp ) ' , ( (2.10)
- n este numrul de elemente distincte care au ponderea mai mare ca 0 n vectorii
de intrare.
n formulele 2.9 i 2.10 x i x reprezint vectorii de intrare. Clasificatorul de tip SVM
este mai amnunit prezentat n seciunea 5.5.
Metode efective pentru clasificarea documentelor sunt i cele care utilizeaz clasificarea
bazat pe asociere, care clasific documente bazndu-se pe un set de asocieri pe baz de pattern-
uri de text aprute frecvent. Deoarece termenii foarte frecveni nu difereniaz semnificativ
documentele n acest tip de clasificare se vor folosi numai acei termeni care nu sunt foarte
frecveni i care difereniaz puternic documentele.
Metodele de clasificare pe baz de asocieri parcurg urmtorii pai: (1) se extrag cuvintele
cheie i termeni prin sisteme de regsire a informaiei i tehnici de analiz a asocierilor; (2) se
obine o ierarhie de cuvinte-cheie i termeni utiliznd clasele de termeni disponibile (a se vedea
WordNet sau o ontologie de domeniu) sau pe baza unor sisteme de clasificare bazate pe cuvinte
cheie. Documentele din setul de antrenament pot fi astfel clasificate ntr-o ierarhie de clase. Prin
metodele de minerit al asocierii termenilor se descoperir seturile de termeni asociai care pot fi
utilizai pentru diferenierea maxim a unei clase de documente fa de alta. Se obine astfel un
set de reguli de asociere asociate cu fiecare clas de documente. Astfel de reguli de clasificare
pot fi ordonate pe baza puterii de difereniere a frecvenei de apariie i folosite pentru a clasifica
noi documente.
Stadiul actual n procesarea automat a documentelor de tip text
24
2.4.3 Clustering i analiza clusterilor
Analiza clusterilor include dou aspecte majore: clustering i validarea clusterilor gsii
[Cret07].
Clusteringul se refer la gruparea unor obiecte n funcie de anumite criterii. Pentru a
atinge acest scop au fost dezvoltai un numr mare de algoritmi [Jain88, Kauf90, Jain90,
Berk06]. Deoarece nu exist algoritmi generali care se pot aplica la toate tipurile de aplicaii,
devine necesar aplicarea unui mecanism de evaluare astfel nct utilizatorul s poat gsi un
algoritm potrivit pentru aplicaia sa particular.
Analiza clusterilor este un proces iterativ de clustering i validare a clusterilor de ctre
utilizator, facilitat prin algoritmi de clustering i metode de validare a clusterilor. Analiza
clusterilor este un proces de descoperire prin explorare. Poate fi utilizat pentru a descoperi
structuri fr a fi nevoie de interpretri [Jain88].
Validarea clusterilor devine astfel procesul de evaluare a calitii unui cluster.
2.4.3.1 Definiii
Definiia 1. Clusteringul este procesul de grupare a unor obiecte fizice sau abstracte n
clase de obiecte similare [Jain90].
Un cluster este o colecie de obiecte care sunt similare unul fa de cellalt i sunt
nesimilare (diferite) fa de obiectele care nu fac parte din acel cluster.
Clusteringul i analiza clusterilor este o activitate deosebit de important n aplicaiile
pentru recunoaterea de patern-uri, procesarea de imagini, cercetri de pia etc. Clusteringul este
important pentru clasificarea documentelor WEB n vederea extragerii de cunotine. n
mineritul datelor, clusteringul i analiza clusterilor se poate utiliza ca aplicaie de sine stttoare
pentru analizarea distribuiei datelor, pentru a observa anumite caracteristici ale fiecrui cluster.
De asemenea, analiza clusterilor se poate utiliza ca etap de preprocesare n cadrul unor
algoritmi de clasificare.
Din cauza cantitilor impresionante de date acumulate n diferite baze de date,
clusteringul a devenit o ramur de cercetare important n cadrul mineritului datelor. n principal,
direciile de cercetare s-au axat mai mult pe clustering bazat pe distan. Astfel au fost dezvoltai
algoritmii k-Means i k-Medoids.
Cercetri ulterioare au demonstrat utilitatea i altor abordri cum ar fi: utilizarea unor
algoritmi bazai pe arbori de sufixe [Meye05], [Zami98], pe ontologii [Hoth03], [Bate08] i pe
algoritmi bio-inspirati, exploatnd o inteligen colectiv, precum cei bazai pe comportamentul
furnicilor n cutarea hranei [Abra03], [Labr03], [Dori00] sau pe roiuri de particule (particle
swarm optimization) avnd un comportament similar cu al unui stol de pasri n cutarea hranei
[Merw03].
Definiia 2. Clusteringul conceptual - obiectele dintr-un grup vor forma o clas doar dac
aceasta poate fi descris printr-un concept. Aceast abordare difer fa de clusteringul
convenional unde msura disimilaritii se bazeaz pe distana geometric. Clusteringul
conceptual are dou componente:
1. Descoper clasele apropiate;
2. Creeaz descrieri pentru fiecare clas ca i la clasificare.
Ideea de baz n clustering, care este punctul de pornire pentru ambele abordri, este
gsirea acelor clusteri cu similaritate intraclas foarte mare i similaritate interclas foarte mic.
Stadiul actual n procesarea automat a documentelor de tip text
25
2.4.4 Cerine cheie pentru algoritmii de clustering
Cerine tipice pentru algoritmii de clustering n mineritul datelor i a documentelor WEB
dup [Han01] sunt:
1. Scalabilitatea algoritmilor: Muli algoritmi de clustering lucreaz foarte bine cu seturi
relativ mici de date. Totui, bazele de date mari conin milioane de obiecte iar utilizarea
unui eantion din aceste seturi mari ar duce la rezultate neconcludente.
2. Abilitatea de a utiliza tipuri diferite de atribute: Muli algoritmi de clustering
utilizeaz date numerice ca date de intrare. n unele cazuri este necesar s se aplice
algoritmi de clustering pe date binare, pe date ordinale sau pe o combinaie dintre
acestea.
3. Recunoaterea clusterilor de form arbitrar: Muli algoritmi determin clusterii
utiliznd distane geometrice cum ar fi distana euclidian sau distana Manhattan. Aceti
algoritmi tind ns s gseasc clusteri sferici cu dimensiune i densitate asemntoare. n
realitate, clusterii pot avea orice form.
4. Stabilirea parametrilor de intrare bazat pe cunoaterea minim a domeniului:
Muli algoritmi de clustering n analiza clusterilor cer anumii parametri cum ar fi num-
rul clusterilor de determinat (ex. k-Means). Rezultatul clusteringului poate fi sensibil
diferit n funcie de parametrii de intrare stabilii. Parametrii de intrare, n special pentru
seturi de date care conin obiecte cu dimensionalitate mare, sunt greu de determinat.
5. Abilitatea de a utiliza date care conin zgomot: Multe seturi de date reale conin date
incomplete, necunoscute sau outlineri (date care sunt complet diferite fa de marea
majoritate a datelor) Unii algoritmi sunt sensibili la astfel de date i calitatea
clusteringului devine slab.
6. Insensibilitate la ordinea de prelucrare a datelor: Unii algoritmi de clustering pot
produce rezultate diferite la schimbarea ordinii prelucrrii datelor de intrare (ex. Single
Pass, BIRCH). Este important dezvoltarea unor algoritmi care nu sunt sensibili la
ordinea datelor de intrare.
7. Dimensionalitate mare: Datele pot conine o mulime de dimensiuni i de atribute. Muli
algoritmi de clustering reuesc s produc rezultate bune n cazul datelor cu dou sau trei
dimensiuni. Ochiul uman reuete s evalueze calitatea unui cluster cu pn la trei
dimensiuni.
8. Clustering care ine cont de anumite constrngeri: Dac ar trebui identificate zone
urbane, atunci anumite granie naturale cum sunt ruri, osele importante sunt
constrngeri semnificative pentru unele aplicaii i de care algoritmii de clustering trebuie
s in cont.
9. Interpretabilitate i utilitate: Utilizatorii doresc ca rezultatele clusteringului s fie utile,
interpretabile i inteligibile.
2.5 Metrici de similaritate a documentelor text
2.5.1 Structurarea datelor utilizate n clustering
n aceast seciune voi prezenta principalele metrici i tipuri de date utilizate n clustering
i clasificare i cum se preproceseaz pentru algoritmii care le vor utiliza.
Stadiul actual n procesarea automat a documentelor de tip text
26
2.5.1.1 Matricea de date
Aceast matrice va reprezenta, de exemplu n clustering, n obiecte care fiecare are m
atribute. Astfel se va crea o matrice de n x m atribute.
11 1 1
1
1
... ...
... ... ... ... ...
... ...
... ... ... ... ...
... ...
j m
i ij im
n nj nm
x x x
x x x
x x x
| |
|
|
|
|
|
|
\ .
(2.11)
2.5.1.2 Matricea de disimilaritate
Aceast matrice va fi o matrice ptratic n x n i va conine msurile disimilaritilor
dintre toate perechile de obiecte supuse clusteringului. Deoarece d(i,j)=d(j,i) i d(i,i)=0 obinem
matricea de disimilaritate de forma:
0 . . . .
(2,1) 0 . . .
(3,1) (3, 2) 0 . .
... ... ... 0 .
( ,1) ( , 2) ... ( , 1) 0
d
d d
d n d n d n n
| |
|
|
|
|
|
|

\ .
(2.12)
unde d(i,j) reprezint disimilaritatea msurat dintre dou obiecte.
Obiectele sunt grupate n funcie de similaritatea dintre ele sau n funcie de
disimilaritatea dintre ele.
n continuare, voi prezenta unele aspecte legate de modaliti de evaluare a calitii
clusteringului bazate pe coeficieni de corelaie care pot fi convertii la coeficieni de
disimilaritate sau de similaritate. Voi prezenta cum poate fi exprimat disimilaritatea dintre
obiecte care sunt fie descrise cu ajutorul variabilelor scalate ntr-un anumit interval, fie descrise
de variabile binare, fie de variabile nominale sau combinaii ale acestora.
2.5.2 Disimilaritate i similaritate: msuri ale calitii clusteringului
n general, disimilaritatea d(i,j) este un numr pozitiv apropiat de 0 cnd i i j se afl
aproape unul de cellalt i crete proporional cu distana ntre i i j. Disimilaritatea dintre dou
obiecte se poate obine prin evaluri subiective efectuate de ctre experi pe baza observaiei
directe sau poate fi calculat pe baza unor coeficieni de corelare.
2.5.3 Distane uzuale
Pentru a putea calcula disimilaritatea dintre obiecte vom calcula distana ntre fiecare
dou obiecte. Distana se definete n spaiul R
n
astfel [Fre1906]:
Fie mulimea X =C. Se numete distan pe X, o funcie d:XXR, cu proprietile:
1. x,yeX d(x,y) >0 i d(x,y)=0 x=y;
2. x,yeX d(x,y) = d(y,x);
Stadiul actual n procesarea automat a documentelor de tip text
27
3. x,y,zeX d(x,z) s d(x,y) + d(y,z) (regula triunghiului).
Perechea (X,d), cu X =C i d metric pe X se numete spaiu metric.
Pe aceeai mulime X se pot defini diverse metrici, deci mai multe structuri de spaiu
metric.
n R
n
distana dintre dou puncte x=(x
1
,x
2
,,x
n
) i y=(y
1
,y
2
,..,y
n
) se poate defini ca fiind
numrul real d(x,y) i se poate calcula utiliznd diferite formule prezentate mai jos.
Distana euclidian: este distana dintre dou puncte din spaiul n-dimensional.
Distana euclidian ntre dou obiecte de n dimensiuni are valorile n intervalul [0, ) i
se calculeaz dup formula:
2
1
( , ) ( )
n
E i j ik jk
k
d x x x x
=
=

(2.13)
Distana Manhattan: aceast distan difer de distana euclidian clasic prin faptul c
ea se msoar ca i cnd drumul s-ar parcurge pe axe perpendiculare (analogie cu strzile din
Manhattan), are valorile n intervalul [0,).
1
( , )
n
Ma i j ik jk
k
d x x x x
=
=

(2.14)
Distana Minkowski: este o generalizarea a distanei euclidiene i a distanei Manhattan.
n cazul n care p se obine distana Cebev. Are valorile n intervalul [0, ).
1
1
( , ) ( ) , 1
p
n
p
Mi i j ik jk
k
d x x x x p
=
| |
= >
|
\ .

(2.15)
Distana cosinus: este o msur de similaritate i calculeaz unghiul dintre doi vectori
din spaiul n-dimensional. Are valorile n intervalul [0, 1].
2 2
1 1
cos
1
n n
ik jk
k k
n
ik jk
k
x x
d
x x
= =
=

(2.16)
Distana Canberra:
1
( , )
n
ik jk
CAN
k
ik jk
x x
d i j
x x
=

=
+

(2.17)
Distana Canberra se modific semnificativ pentru vectori care conin multe valori 0, cum
este n cazul vectorilor de reprezentare a documentelor i ntoarce valori n intervalul [0, ).
Distana Bray-Curtis:

= =
=
+

=
n
k
jk
n
k
ik
n
k
jk ik
BC
x x
x x
j i d
1 1
1
) , ( (2.18)
Aceast distan este asemntoare distanei Canberra iar cnd toate coordonatele sunt
pozitive distana este n intervalul [0,1]
Stadiul actual n procesarea automat a documentelor de tip text
28
2.5.4 Tipuri de variabile utilizate n clustering/clasificare
2.5.4.1 Variabile scalate ntr-un anumit interval
Variabilele scalate ntr-un anumit interval sunt cele obinute de exemplu n urma operaiei
de normalizare descris n par. (2.1.3.2). Aceste variabile vor fi folosite apoi la descrierea
msurilor distanelor (de ex. distana euclidian, distana Manhattan .a).
2.5.4.2 Variabile standardizate
Pentru standardizarea valorilor o variant este de a converti valorile originale la valori
fr unitate de msur. Astfel, pentru o variabil x care are n valori x
n
se parcurg urmtorii pai:
Pas 1: Calculm abaterea medie absolut
Abaterea medie absolut d reprezint media aritmetic simpl sau ponderat a
abaterilor "absolute" ale valorilor variabilei de la tendina lor central, caracterizat cu ajutorul
mediei sau al medianei.
n cazul n care abaterea valorilor individuale sunt calculate i analizate fa de medie,
atunci abaterea medie absolut x d pentru variabila x se determin astfel:
1
1
n
x
i
i
d x m
n
=
=

(2.19)
unde x
i
este valoarea variabilei, i

=
=
n
i
i
x
n
m
1
1
(2.20)
unde n este numrul de valori.
Exemplu:
Fie pentru o variabil urmtoarele valori: {1, 2, 3, 5, 4, 10, 0}
Atunci 57 , 3
7
10 10 4 5 3 2 1
= =
+ + + + + +
m
iar abaterile medii
x 1 2 3 5 4 10 0
1
1
n
x
i
i
d x m
n
=
=


57 , 3 x 2,571429 1,571429 0,571429 1,428571 0,428571 6,428571 3,571429 2,367347
Tabel 2.1 Exemplu de calcul al abaterilor medii
Pas 2 Calcularea scorului standard (z-score) care reprezint valoarea standardizat a
variabilei.
Calculm scorul dup formula:
n i
d
m x
z
x
i
i
, 1 , =

= (2.21)
Astfel valorile standardizate pentru variabila x dat devin:
x 1 2 3 5 4 10 0
z
i
-1,08621 -0,66379 -0,24138 0,603448 0,181034 2,715517 -1,50862
Tabel 2.2 Exemplu de calcul al z-score
Stadiul actual n procesarea automat a documentelor de tip text
29
Standardizarea datelor poate fi util n anumite aplicaii de clustering sau clasificare, mai
ales cnd se dorete compararea rezultatelor unor algoritmi diferii i care au ieiri n domenii
diferite.
2.5.4.3 Variabile binare (dihotomice)
O variabil binar are doar dou stri: 0 sau 1, zero nsemnnd c variabila nu exista i 1
cnd ea exista. De exemplu, pentru variabila bolnav care descrie o persoan, valoarea 1
nsemn c persoana este bolnav iar valoarea 0 indic faptul c persoana respectiv nu este
bolnav. Tratarea acestor variabile ca i cnd ele ar fi variabile scalate ntr-un anumit interval ar
duce la interpretri greite.
2.5.4.3.1 Matricea de disimilaritate pentru variabile binare
Presupunnd c toate variabilele au aceeai pondere putem construi un tabel de
contingen de 2x2 (Tabel 2.3) unde a reprezint numrul de variabile care au valoarea 1 att n
obiectul i ct i n j, b este numrul de variabile care sunt 1 pentru i dar 0 pentru j, c este numrul
de variabile care sunt 0 pentru i dar 1 pentru j iar d este numrul de variabile a cror valoare este
0 att pentru i ct i pentru j.
Numrul total de variabile este p=a+b+c+d
obiectul i
obiectul j
1 0
1 a b a+b
0 c d c+d
a+c b+d p
Tabel 2.3 Tabel de contingen

Calculul disimilaritii invariante: o variabil este simetric dac ambele stri au aceeai
pondere i nu conteaz care din ele este codat ca fiind 1 i care va fi codat cu valoare 0.
Calculul disimilaritii bazat pe variabile simetrice se numete disimilaritatea invariant.
Pentru calculul disimilaritii se va utiliza coeficientul dat de formula:
d c b a
c b
j i d
+ + +
+
= ) , ( (2.22)
Coeficientul de la formula (2.20) se afl n intervalul [0,1].

Exemplu:
Fie urmtoarele 3 documente:
d
1
: Petele este n tigaia mea.
d
2
: Tigaia mea este roie.
d
3
: Mark este student.
Vocabular={petele, este, n, tigaia, mea, roie, Mark, student}

Vocabular
Document petele este n tigaia mea roie Mark student
d
1
1 1 1 1 1 0 0 0
d
2
0 1 0 1 1 1 0 0
d
3
0 1 0 0 0 0 1 1

Stadiul actual n procesarea automat a documentelor de tip text
30
Calculm disimilaritatea dintre d
1
i d
2
;
d
1

d
2

1 0
1 3 2 a+b
0 1 2 c+d
a+c b+d p
1 2
3
( , ) 0, 375
8
d d d = = (2.23)

d
1

d
3

1 0
1 1 4 a+b
0 2 1 c+d
a+c b+d p
1 3
6
( , ) 0, 75
8
d d d = = (2.24)
Din (2.23) i (2.24) se poate observa faptul c documentele d
1
i d
2
au o valoare a
coeficientului de disimilaritate mai mic.
Observaie: Cnd coeficientul de disimilaritate atinge valoarea 1 atunci obiectele nu sunt
similare iar cnd atinge valoarea 0 atunci sunt computaional identice.
O variabil binar este asimetric dac codarea ieirilor are importan diferit pentru
ieiri cum ar fi, de exemplu, codarea ieirilor pentru un test de boal. Astfel, similaritatea a dou
ieiri codate cu 1 devine mai important dect similaritatea a dou ieiri codate cu 0.
Acest tip de similaritate se numete similaritate noninvariant. Cel mai cunoscut
coeficient pentru acest tip de similaritatea este coeficientul lui Jaccard care se determin dup
formula:
c b a
c b
j i d
+ +
+
= ) , ( (2.25)
Exemplul
Utilizm din nou datele din exemplul precedent i presupunem c prezena comun a
cuvintelor n propoziii este mai important dect lipsa lor. Astfel codate variabilele noastre
devin asimetrice.
Calculm coeficientul de disimilaritate Jaccard pentru documentele noaste:
1 2
2 1 3
( , ) 0, 5
3 2 1 6
b c
d d d
a b c
+ +
= = = =
+ + + +
(2.26)
1 3
4 2 6
( , ) 0,85
1 4 2 7
b c
d d d
a b c
+ +
= = = =
+ + + +
(2.27)
2 3
3 2 5
( , ) 0,83
1 3 2 6
b c
d d d
a b c
+ +
= = = =
+ + + +
(2.28)
Din (2.26), (2.27), (2.28) rezult c documentele d
1
cu d
2
sunt mai similare dect d
1
cu d
3

sau d
2
cu d
3
.
2.5.4.4 Variabile nominale
Variabilele nominale sunt o generalizare a variabilelor binare, doar c variabilele
nominale pot s aib mai mult de dou stri.
Stadiul actual n procesarea automat a documentelor de tip text
31
Fie M numrul de stri pe care le poate lua o variabil nominal. Strile variabilei pot fi
notate prin numere ntregi ca 1,2,3,..M sau litere sau alte simboluri care nu au o ordine specific.
Pentru a calcula disimilaritatea dintre dou obiecte i i j se poate utiliza formula de
potrivire simpl:
p
m p
j i d

= ) , ( (2.29)
m reprezint numrul de potriviri (numrul variabilelor pentru care i i j sunt n aceeai
stare)
p este numrul total de variabile.
2.6 Evaluarea algoritmilor de clasificare/ clustering
Fiecare algoritm de clustering aplicat pe acelai set de date va grupa datele respective din
diferite puncte de vedere, n funcie de metrica de similaritate folosit. Aceasta face analiza
eficienei algoritmilor de clustering foarte dificil.
Pentru a evalua performana sau calitatea algoritmilor de clustering trebuie s fie stabilite
msuri obiective. Exist 3 tipuri de msuri de calitate:
a. externe, atunci cnd exist o cunoatere a priori despre clusteri (avem date pre-
etichetate);
b. interne, care nu au nici o informaie despre clusteri;
c. relative, care evalueaz diferenele dintre soluiile de grup diferite.
Msurile externe sunt aplicate att la algoritmii de clasificare ct i la algoritmii de
clustering, n timp ce msurile interne i relative sunt aplicate numai la clustering.
2.6.1 Msuri externe de validare a clusteringului i a clasificrii
Msurile externe de validare, care permit analiza rezultatelor algoritmilor, necesit
existena unor seturi pre-etichetate de date n faza de testare. Deoarece gruparea datelor se poate
face din multe puncte de vedere iar etichetele pot varia n funcie de aceste puncte de vedere, la
datele pre-etichetate se renun la categorie iar comparaia se face fa de grupul care conine
cele mai multe date dintr-o anumit categorie.
Voi prezenta n continuare cteva din msurile de evaluare extern:
Fie C
i
o categorie de documente i S
j
o clas cunoscut:
Precizia: este probabilitatea ca un document clasificat corect s fie util. Precizia ia valori
in domeniul [0,1], cu 1 cel mai bun rezultat.
i
j i
j i
C
S C
S C precizia

= ) , (
(2.30)
Recall: este probabilitatea ca un document util s fie i clasificat corect. Recall ia valori n
domeniu [0,1], cu 1 cel mai bun rezultat.
( , )
i j
i j
i
C S
recall C S
S

= (2.31)
Stadiul actual n procesarea automat a documentelor de tip text
32
Acurateea: reprezint procentajul de documente care sunt grupate corect n categorii n
funcie de etichetele documentelor.
F-measure: este o msur care combin precizia i recall-ul prin media armonic i se
calculeaz conform formulei:
2 ( , ) ( , )
( , )
( , ) ( , )
i j i j
i j
i j i j
precizia C S recall C S
F measure C S
precizia C S recall C S

=
+
(2.32)
Pentru fiecare clas se va selecta doar clusterul cu cea mai mare F-measure. n final,
msura general F-measure pentru soluia unui clustering este ponderat prin dimensiunea
fiecrui cluster.
)) , ( max( ) (
j
i
i
i
S C F
n
n
S F

= (2.33)
Entropia. Entropia indic omogenitatea unui cluster: o entropie sczut indic o
omogenitate mare (caz dorit) i invers. Un cluster cu un singur element va avea valoarea
entropiei zero. Valoarea entropiei unui cluster devine 1 n cazul n care conine un numr egal de
elemente din fiecare clas din soluia iniial. Formula pentru calculul entropiei pentru un cluster
C
i
este:

=
=
1
0
) log( ) (
k
i
ij ij i
pr pr C E (2.34)
unde pr
ij
reprezint raportul dintre numrul de elemente din clasa j coninute n clusterul i.
Calculul entropiei pentru soluia de clustering a unui set de date cu k clase este dat de formula:
) ( ) (
i
i
i
C E
n
n
S E

= (2.35)
2.6.2 Msuri de validare intern a clusterilor
n [M01] sunt prezentate patru astfel de metrici care sunt specifice algoritmilor de
clustering:
1.Compactness msoar ct de compacte sunt datele n cadrul unui cluster:
2
1
( ) ( )
C
n
i
i
compactness c c x
=
=

(2.36)
unde c este clusterul curent, n
C
numrul de elemente din cadrul clusterului, c este
centroidul clusterului i x
i
un element din cluster. Cu alte cuvinte, aceast metric msoar ct de
apropiate sunt documentele din cadrul unui cluster. Valoarea este n domeniul [0,) cu ct mai
mic, cu att mai bun.
2. Separability msoar disimilaritatea (separabilitatea, disjuncia) ntre clusterii creai:
, 1
( , )
C
i j
i j
separability dist c c
=
=

(2.37)
Astfel, pentru fiecare cluster se determin clusterul cel mai apropiat. Pe baza acestei
metrici cutm clusteri care maximizeaz aceast valoare, deci cutm clusteri care sunt ct mai
distanai.
3. Balance msoar ct de echilibrai sunt clusterii formai:
Stadiul actual n procesarea automat a documentelor de tip text
33
1,
/
max ( )
i
i k
n k
balance
n
=
= (2.38)
unde n este numrul total de documente supuse clusteringului, k este numrul de clusteri
formai (ksn), n
i
numrul de documente din clusterul i iar numitorul reprezint numrul de
documente din clusterul cel mai numeros.
Aceast msur poate lua valori n domeniul [0,1], valoarea maxim 1 se obine atunci
cnd toi clusterii generai au acelai numr de documente. O valoare apropiat de 0 se obine
atunci cnd numrul de documente coninute de clusteri difer foarte mult.
4. Davies-Bouldin-Index [Davi79] combin primele dou metrici:
Fie:
( )
( )
c
compactness c
scatter c
X
= (2.39)
unde
c
X este numrul de elemente din clusterul c.
Indexul Davies-Bouldin pentru clusterul i devine:
,
( ) ( )
max
( , )
i j
i j j i
i j
scatter c scatter c
r
dist c c
=
| | +
=
|
|
\ .
(2.40)
Prin intermediul acestei msuri cutm clusteri care minimizeaz parametrul r, caz n care
distanele ntre clusteri sunt mari i gradul de mprtiere a clusterilor este mic. Astfel, s-a gsit
un echilibru agregat ntre separability (vzut ca distan - s fie mare) i compactness (vzut ca
mprtiere - s fie mic).
2.7 Seturi de date utilizate
2.7.1 Setul de date Reuters
Deoarece continui munca de cercetare a domnului dr. Daniel Morariu prezentat n
[Mora07] pe partea de preprocesare a setului de date Reuters nu apare nici o modificare.
n experimente efectuate am folosit colecia de date Reuters-2000 [Reut00], care conine
984Mb de articole de tip tiri. Colecia Reuters 2000 este folosit n clasificare de muli
cercettori, aceasta coninnd 806.791 tiri publicate de agenia Reuters ntre anii 1996-1997..
Documentele sunt preclasificate n trei categorii mari astfel: n funcie de ramura industrial la
care face referire articolul, n funcie de zona geografic i, dup anumite categorii specifice
propuse de Reuters, n funcie de coninutul tirii astfel existnd 126 de categorii diferite. n
experimente efectuate am considerat clasele propuse de Reuters n funcie de coninut pentru
documente ca fiind perfecte.
n partea de preprocesare am parcurs etapele de extragere a cuvintelor, de eliminare a
cuvintelor de legtur i de extragere a rdcinii cuvintelor. Am folosit lista de cuvinte de
legtur pentru documente n limba englez oferit de Universitatea din Texas [IR]. Pentru
extragerea rdcinii cuvintelor am folosit algoritmul Porter [Rijs80]. Numrul de apariii a
rdcinii cuvntului dintr-un document a fost apoi contorizat obinnd un vector de frecvene
pentru fiecare document.
Aceste cuvinte le vom numi n continuare trsturi caracteristice - features. Acest vector
l vom considera ca fiind reprezentarea vectorial a documentului n spaiul trsturilor
caracteristice. Deoarece nu toate cuvintele apar n fiecare document, a mai fost creat un vector
Stadiul actual n procesarea automat a documentelor de tip text
34
care conine toate cuvintele ce apar n toate documentele din setul de date. Acest vector
caracterizeaz ntreg setul de documente iar dimensiunea lui reprezint dimensiunea spaiului de
reprezentare a tuturor documentelor din setul respectiv.
Exist mai multe posibiliti de reprezentare a trsturilor din vectori pe care le-am
detaliat n seciunea 4.1.1.2.
Fiecare vector iniial creat pentru un document a fost modificat astfel nct s devin de
lungimea vectorului care conine toate cuvintele, specificndu-se valoarea 0 pe poziiile
cuvintelor ce nu apar n documentul respectiv, pe celelalte poziii specificndu-se frecvena
termenilor.
Dup acest pas toi vectorii de reprezentare a documentelor din setul de date au devenit de
aceeai dimensiune i putem considera c fiecare vector reprezint semntura unui document n
spaiul de reprezentare a setului de date.
Deoarece memoria necesar pentru a stoca aceti vectori este destul de mare, n [Mora07]
s-a ales varianta de a memora doar valorile din vector pentru care numrul de apariii al
cuvintelor este diferit de zero. Pentru fiecare vector n parte, la sfrit se pstreaz categoriile
(clasele) propuse de Reuters pentru documentul respectiv.
2.7.1.1 Alegerea documentelor pentru antrenare - testare
Pentru a putea compara rezultatele experimentale obinute cu cele prezentate n [Mora07]
care sunt considerate rezultate de baz, n scopul mbuntirii lor prin cercetrile din aceast
lucrare - am ales documentele n aceeai manier. Din cele peste 800000 de documente, am ales
acelea clasificate de Reuters n categoria System Software. Fcnd aceast selecie au rezultat
7.083 documente, care conin 19.038 trsturi caracteristice fiind clasificate n 68 de clase. Am
eliminat clasele slab reprezentate (sub 1% din documente) sau excesiv reprezentate (n mai mult
de 99% din documente)
n final am obinut doar 24 clase distincte cu un numr de 7.053 documente. Avnd n
vedere faptul c 19038 de trsturi este un numr mare utiliznd metoda ctigului informaional
Information Gain. Astfel, s-a calculat pentru fiecare atribut (trstur) valoarea care reprezint
ctigul obinut n clasificare dac pstrm acel atribut. Valorile din vectorii de reprezentare a
documentelor au fost normalizate folosind reprezentarea binar prezentat n seciunea 2.5.4.
Valoarea maxim obtenabil pentru ctigul informaional este 1. Pentru selectarea doar a
atributelor considerate relevante din punct de vedere al ctigului informaional am impus un
prag de 0.01. Astfel au fost selectate un numr de 1309 trsturi din cele 19038 existente,
selecie realizat pe baza valorii descresctoare a ctigului informaional.
Pentru antrenarea i testarea clasificatorilor implementai am utilizat urmtoarele seturi de
date:
2.7.1.2 Setul A1
Acest set de date conine 4.702 exemple, 1.309 de atribute i 24 de clase (topic-uri) i este
de forma [Mora07]:
#Samples 4702
#Attributes 1309
#Topics 24

@attribute 1.0
@attribute 2.0
@attribute 3.0
@attribute 4.0
@attribute 5.0
Stadiul actual n procesarea automat a documentelor de tip text
35
@attribute 6.0
@attribute 7.0
...
@attribute 1309.0

@topic c18 747
@topic c181 722
@topic c15 3645
@topic c152 2096
@topic c11 626
@topic c14 179
@topic c22 580
@topic gcat 451
@topic c33 529
@topic c31 456
@topic c13 275
@topic c17 448
@topic c171 385
@topic c12 249
@topic gcrim 258
@topic c21 270
@topic c23 152
@topic c41 395
@topic c411 369
@topic ecat 107
@topic m11 131
@topic mcat 137
@topic c151 1630
@topic c1511 410

@data
//urmeaz primul document n care avem perechi atribut:frecven urmate dup # de eticheta clasei
0:1 1:8 6:1 8:5 10:1 11:1 13:1 16:2 30:3 35:19 40:1 42:1 57:5 62:2 63:11 64:1
68:3 71:1 77:3 86:1 95:1 111:2 117:1 118:3 120:1 129:1 136:2 147:1 152:1 159:1 168:1
174:1 177:1 181:1 190:1 191:2 194:1 203:2 220:1 226:1 227:1 232:2 234:1 284:1 288:1
293:1 313:1 317:1 332:1 337:4 340:1 342:1 351:1 352:1 353:1 363:1 375:1 442:1 475:1
476:2 481:1 486:1 488:1 492:2 537:2 541:7 555:1 568:1 570:1 641:2 706:1 725:1 743:1
745:1 872:1 877:1 912:1 949:1 979:3 1029:1 1033:1 1051:1 1150:1 1160:1 # c31
//urmeaz al doilea document
0:1 1:1 8:5 16:1 18:2 23:1 39:1 41:1 43:1 46:9 48:1 62:1 71:1 73:1 79:1 82:1
93:1 95:1 114:2 122:1 136:1 150:1 154:1 160:1 175:1 184:1 201:1 213:1 217:1 232:1
240:1 242:1 251:1 256:2 266:1 284:2 285:1 338:4 351:1 355:4 359:2 372:2 374:5 382:1
386:1 387:2 424:2 450:2 461:1 467:1 469:1 478:1 481:1 511:3 521:3 532:1 552:1 554:1
574:1 579:4 609:4 612:1 619:1 626:1 655:1 663:1 674:1 689:1 701:1 702:2 705:1 718:1
725:1 748:1 776:1 796:1 879:1 896:2 924:1 979:1 1074:1 1131:2 1162:1 1202:1 1227:1
1263:6 # c14 c17 c171
...
2.7.1.3 Setul T1
Setul acesta de date conine 2.351 de exemple cu 1.309 atribute i 24 de clase. Este folosit
pentru evaluarea (testarea) dup antrenare a clasificatorilor [Mora07].
#Samples 2351
#Attributes 1309
#Topics 24

@attribute 1.0
@attribute 2.0
...
@attribute 1309.0
@topic c18 747
@topic c181 722
@topic c15 3645
@topic c152 2096
@topic c11 626
@topic c14 179
@topic c22 580
@topic gcat 451
Stadiul actual n procesarea automat a documentelor de tip text
36
@topic c33 529
@topic c31 456
@topic c13 275
@topic c17 448
@topic c171 385
@topic c12 249
@topic gcrim 258
@topic c21 270
@topic c23 152
@topic c41 395
@topic c411 369
@topic ecat 107
@topic m11 131
@topic mcat 137
@topic c151 1630
@topic c1511 410

@data

0:1 1:15 2:1 3:12 4:3 5:2 6:2 7:3 8:9 9:2 10:2 11:2 12:3 13:1 14:2 15:3 16:2
17:2 18:1 19:4 20:1 21:2 22:1 23:1 24:2 25:1 26:1 27:2 28:1 29:1 30:1 31:4 32:1 33:1
34:2 35:15 36:1 37:1 38:1 39:1 40:1 41:1 42:1 43:1 44:1 45:2 46:1 47:1 48:2 49:1 50:1
51:2 52:1 53:1 54:1 55:1 56:2 57:1 58:2 59:4 60:2 61:2 62:1 63:4 64:1 65:3 66:2 67:3
68:1 69:1 70:1 71:2 72:1 73:1 74:1 75:1 76:4 77:1 78:1 79:1 80:1 81:1 82:1 83:1 84:1
85:1 86:2 87:1 88:1 89:1 90:1 91:1 92:1 93:1 94:1 95:1 96:1 97:1 98:1 99:1 100:1 101:1
102:2 103:1 104:1 105:1 106:1 107:1 108:1 109:1 110:1 111:1 112:1 113:1 114:1 115:1
116:1 117:1 118:1 119:1 120:1 121:1 122:1 123:1 124:1 125:1 126:1 127:1 # c18 c181
0:1 2:1 18:1 31:1 115:1 128:1 129:2 130:1 131:1 132:1 133:1 134:1 135:1 136:1
137:1 138:1 139:1 # c15 c152

...
2.7.1.4 Setul T2
Setul acesta de date conine 136 de exemple cu 1.309 atribute i 24 de clase. Acest set
conine acele documentele din setul T1 care nu au putut fi clasificate corect de nici un
clasificator selectat n metaclasificatorul prezentat n [Mora07].
#Samples 136
#Attributes 1309
#Topics 24

@attribute 1.0
@attribute 2.0
...
@attribute 1309.0
@topic c18 747
@topic c181 722
@topic c15 3645
@topic c152 2096
@topic c11 626
@topic c14 179
@topic c22 580
@topic gcat 451
@topic c33 529
@topic c31 456
@topic c13 275
@topic c17 448
@topic c171 385
@topic c12 249
@topic gcrim 258
@topic c21 270
@topic c23 152
@topic c41 395
@topic c411 369
@topic ecat 107
@topic m11 131
@topic mcat 137
Stadiul actual n procesarea automat a documentelor de tip text
37
@topic c151 1630
@topic c1511 410

@data

0:1 1:15 2:1 3:12 4:3 5:2 6:2 7:3 8:9 9:2 10:2 11:2 12:3 13:1 14:2 15:3 16:2
17:2 18:1 19:4 20:1 21:2 22:1 23:1 24:2 25:1 26:1 27:2 28:1 29:1 30:1 31:4 32:1 33:1
34:2 35:15 36:1 37:1 38:1 39:1 40:1 41:1 42:1 43:1 44:1 45:2 46:1 47:1 48:2 49:1 50:1
51:2 52:1 53:1 54:1 55:1 56:2 57:1 58:2 59:4 60:2 61:2 62:1 63:4 64:1 65:3 66:2 67:3
68:1 69:1 70:1 71:2 72:1 73:1 74:1 75:1 76:4 77:1 78:1 79:1 80:1 81:1 82:1 83:1 84:1
85:1 86:2 87:1 88:1 89:1 90:1 91:1 92:1 93:1 94:1 95:1 96:1 97:1 98:1 99:1 100:1 101:1
102:2 103:1 104:1 105:1 106:1 107:1 108:1 109:1 110:1 111:1 112:1 113:1 114:1 115:1
116:1 117:1 118:1 119:1 120:1 121:1 122:1 123:1 124:1 125:1 126:1 127:1 # c18 c181
2.7.2 Setul de date RSS Web
Acest set de date a fost utilizat n testele efectuate cu algoritmii de clustering. Deoarece
algoritmii de clustering vor funciona pentru gruparea unor tiri provenite din fluxuri de date
RSS am creat mai multe seturi de date care conin astfel de informaii. Am utilizat pentru crearea
seturilor de date tiri din fluxuri RSS obinute de pe site-ul ageniei Reuters i al ageniei BBC.
tirile au fost alese din mai multe fluxuri rss (fiiere xml) preclasificate de ctre agenii din 3 zile
consecutive. Am ales tiri din categoriile: Lybia, Motorsport, Japan, Israel, Syria, Yemen,
FotbalEuropean. Din fiierele xml am extras doar coninutul nodului <title> care conine titlul
tirii i coninutul nodului <description> n care se gsete textul tirii.
Fiecare tire a fost salvat ntr-un fiier text separat, iar tirile dintr-o categorie au fost
toate salvate n acelai subdirector. n prima faz de preprocesare s-au eliminat caracterele
speciale care apar n tire din motive de interpretor web i n final n fiierele text pe prima linie
a rmas titlul tirii iar pe liniile urmtoare coninutul fraze separate prin punct. Am pstrat
categoria stabilit deja de ageniile de tiri din care face parte tirea pe care o vom folosi n final
n etapa de evaluare a rezultatelor clusteringului.
n primele experiene efectuate cu algoritmii HAC i k-Medoids dar i cu alte tipuri de
algoritmi de clustering care nu au fost prezentai special n aceast lucrare (Expectation
Maximisation - EM i COWEB din pachetul WEKA 3.7) am observat c tendina tuturor
algoritmilor a fost de a crea un cluster de dimensiune foarte mare i civa clusteri care conineau
cte un document. Astfel, am analizat fiecare categorie n parte furnizat de fluxurile de tiri
reprezentnd-o ca o dendogram cu ajutorul algoritmului HAC i am constatat c n fiecare
categorie existau documente (puine) care erau unite de algoritm la o distan foarte mare n
raport cu celelalte documente. Acele documente au fost eliminate din setul de date. Analizndu-
le am sesizat c ele erau corect grupate de ctre agenia de tiri dar utilizau multe sinonime ale
cuvintelor folosite de celelalte documente din acea categorie. n viitor ne gndim i la o abordare
care s ia n considerare i sinonime de cuvinte n momentul n care se construiete arborele de
sufixe.
De pe fluxurile de tiri am extras tirile din 3 zile consecutive obinnd 212 de documente
care au fost grupate iniial n 7 categorii. Am creat din documentele astfel extrase mai multe
seturi de date care difer prin numrul de categorii i numrul de documente care vor fi utilizate
pentru evaluarea algoritmilor de clustering. n seturile create am pstrat categoriile furnizate de
ctre ageniile de tiri. Astfel s-au creat 7 seturi de date distincte prezentate n continuare:

Stadiul actual n procesarea automat a documentelor de tip text
38
Tabel 2.4 Seturi de date pentru clustering
Denumirea
setului
Nr. categorii
Nr. total
documente
Structura
Denumire categorie
Nr.
documente
S01 3 151
FotbalEuropean 47
Lybia 62
Motorsport 42
S02 4 172
FotbalEuropean 38
Japan 37
Lybia 57
Motorsport 40
S03 4 156
FotbalEuropean 47
Israel 8
Lybia 59
Motorsport 42
S04 5 177
FotbalEuropean 38
Japan 37
Lybia 56
Motorsport 40
Israel 6
S05 5 193
FotbalEuropean 47
Japan 37
Lybia 59
Motorsport 42
Israel 8
S06 6 55
Japan 9
Lybia 12
Motorsport 20
Israel 9
Syria 3
Yemen 2
S07 6 179
FotbalEuropean 38
Japan 37
Lybia 56
Motorsport 40
Israel 6
Yemen 2
Algoritmi de clustering. Paradigma actual
39
Partea a II-a. Clustering
3 Algoritmi de clustering. Paradigma actual
n continuare voi prezenta o taxonomie a celor mai importani algoritmi utilizai pentru
clustering. Pentru fiecare algoritm am selectat versiunea comun, care s reprezinte ntreaga
familie.
3.1 O posibil taxonomie
Aranjarea datelor n diferite grupuri se poate face utiliznd diverse strategii. O posibil
strategie, conform [Berk06], [Zhao04] mparte algoritmii de clustering n dou categorii mari:
tehnici de clustering bazate pe partiionarea datelor i tehnici de clustering bazate pe metode
ierarhice. Pe lng aceste dou mari categorii clasice algoritmi mai noi se pot grupa i n
algoritmi bazai pe densitate, algoritmi bazai pe reele i algoritmi bazai pe modele [Han01],
[Cret11_b].


Fig. 3.1 Posibil taxonomie a algoritmilor de clustering
3.1.1 Algoritmi partiionali (sau metode partiionale)
Daca se consider n obiecte care trebuie grupate n k grupe atunci o metod de
partiionare construiete k partiii din cele n obiecte fiecare partiie reprezentnd un cluster cu
kn. Clusterii se formeaz innd cont de optimizarea unui criteriu (funcii) obiectiv denumit i
funcie de disimilariate, ca de exemplu distana, astfel nct obiectele dintr-un cluster sunt
similare iar obiectele din clusteri diferii sunt disimilare. Aceast grupare trebuie s satisfac
dou condiii:
- Fiecare cluster trebuie s conin cel puin un obiect.
- Fiecare obiect trebuie s fie inclus ntr-un singur cluster.
... Cum nu vii tu, epe doamne, ca punnd mna pe ei,
S-i mpari n dou cete: ...
Mihai Eminescu, Scrisoarea III
Algoritmi de clustering. Paradigma actual
40
Ideea de baz utilizat de acest tip de metode este urmtoarea: iniial se d numrul k care
reprezint numrul de partiii (clusteri) care se doresc a fi obinute iar apoi se aplic o metod de
partiionare care creeaz k clusteri.
n cadrul acestei metode se mai utilizeaz i tehnica relocrii iterative prin care se
ncearc mbuntirea partiionrii prin mutarea obiectelor dintr-un grup n altul. Criteriul de
mutare este ca n clusterii rezultai obiectele din acelai cluster s fie asemntoare (apropiate).
Exist diferite criterii pentru a evalua calitatea clusterilor. Aceste criterii au fost prezentate n
seciunea 2.6.
n cadrul metodelor de partiionare putem identifica trei tipuri de algoritmi:
- algoritmi de clustering de tip k-means;
o la acest tip de algoritmi fiecare cluster este reprezentat de valoarea medie a
obiectelor (distanei dintre obiectele clusterului) din cadrul clusterului respectiv;
- algoritmi de clustering de tip k-Medoids;
o la acest tip de algoritmi fiecare cluster este reprezentat de obiectul care se afl cel
mai aproape de centrul de greutate al clusterului;
- algoritmi pentru clustering probabilistic;
o metodele probabilistice pleac de la premisa c datele provin dintr-o mixtur de
populaii a cror distribuii i probabiliti trebuiesc determinate.
Aceti algoritmi pot fi utilizai n colecii de date mici pn la mijlocii i gsesc clusteri
de tip sferici.
Voi prezenta n seciunea urmtoare cteva metode de partiionare relevante i/sau
consacrate de clustering.
3.1.1.1 Metoda k-Means
Algoritmul K-Means [MacQ67], [Hart75], [Hart79] este cel mai popular i mai utilizat
algoritm n aplicaii tiinifice i industriale. Numele acestui algoritm provine de la reprezentarea
a k clusteri C
j
a cror valoare medie (mean) este c
j
calculat ca i centrul de greutate al punctelor
din C
j
(al centroidului). Valoarea parametrului k se stabilete la nceputul parcurgerii
algoritmului. Similaritatea elementelor dintr-un cluster C
j
se calculeaz raportat la centrul de
greutate al centroidului. Criteriul utilizat de obicei pentru evaluarea clusteringului este eroarea
medie ptratic definit prin formula:

=
e
=
k
j
C x
j i
j i
c x C E
1
2
) ( (3.1)
unde x este punctul din spaiu care reprezint obiectul dat iar c
j
centrul de greutate al lui C
j
.
Scopul este de a obine o similaritate intra-cluster mare simultan cu o similaritate inter-
cluster foarte mic astfel nct s obinem k clusteri ct mai compaci i, totodat, ct mai
separai posibil.
Este evident c acest tip de algoritm funcioneaz cu variabile numerice. Paii pe care
algoritmul i parcurge ar putea fi:
1. Se genereaz aleator k centre n spaiul n-dimensional, care reprezint iniial centroizii
(numrul de clusteri care se doresc a fi obinui).
2. Pentru fiecare document se calculeaz distana fa de centroizi iar documentul curent se
introduce n clusterul corespunztor centroidului fa de care este obinut distana
minim. n ceea ce privete distana exist mai multe abordri; n funcie de abordarea
utilizat se particularizeaz algoritmul folosit. De exemplu, foarte des folosite sunt:
distana euclidian, distana Manhattan sau distana Minkovski.
Algoritmi de clustering. Paradigma actual
41
3. Dup ce toate documentele au fost asignate corespunztor clusterilor, se recalculeaz
poziia celor k centroizi ca fiind centrul de greutate al tuturor eantioanelor atribuite
fiecrui cluster n parte.
4. Se repet paii 2 i 3 pn cnd poziia centroizilor nu se mai modific semnificativ
(practic pn n momentul n care documentele grupate ntr-o iteraie nu se mai
redistribuie).
5. Documentele asignate centroizilor formeaz documentele celor k clusteri construii.
Exist i variante n care n primul pas se aleg aleator k documente din cele N disponibile
n setul de date unde N>>k.
Algoritmul n pseudocod poate fi reprezentat astfel:

Fig. 3.2 Pseudocod pentru algoritmul K-Means
n figurile urmtoare sunt prezentai paii parcuri de algoritmul k-Means folosind un set
de 50 de puncte generate aleator utiliznd o distribuie gaussian [CLU]. Pentru calcularea
distanei n Fig. 3.3 s-a utilizat distana euclidian, n Fig. 3.4 s-a utilizat distana Manhattan iar
n Fig. 3.5 s-a utilizat distana Minkovski.

Fig. 3.3 K-Means,- distan euclidian
Intrri:
X = {x1, ...,xn} (obiecte de clusterizat)
k (numrul clusterilor de obinut)

Ieiri:
C = {c1, ...,ck} (centroizii clusterilor)
m:XC (apartenena la un cluster)

algoritmul KMeans
Iniializeaz C (aleator)
for each xje X

end
while m se modific
for each
recalculeaz ci ca centroid
end
for each xje X

end
end
return C
Algoritmi de clustering. Paradigma actual
42

Fig. 3.4 K-Means,- distan Manhattan

Fig. 3.5 K-Means, - distan Minkovski
Algoritmul prezentat mai sus este scalabil i destul de eficient deoarece complexitatea
computaional este O(nkt) unde n este numrul total de obiecte, k este numrul clusterilor iar t
este numrul iteraiilor. Avnd n vedere faptul c algoritmul utilizeaz centrul de greutate al
centroidului, evident c acesta poate fi aplicat doar datelor numerice.
Algoritmul K-Means are totui i unele dezavantaje:
- Rezultatul depinde de alegerea iniial a numrului de clusteri (k);
- Optimul local calculat poate diferi fa de optimul global n unele cazuri;
- Nu este evident care ar fi valoarea optim pentru k;
- Algoritmul este sensibil la zgomot;
- Accept doar variabile numerice;
- Clusterii rezultai pot fi dezechilibrai chiar n unele cazuri fr s
conin ceva.
n [Brad98] se propune o variant de a diminua efectele produse de iniializarea
algoritmului prin alegerea numrului k. Astfel, algoritmul k-Means se aplic pe eantioane mici
din mulimea datelor alegnd centroizii n jurul maximelor funciei de densitate a probabilitilor.
Apoi aceast iniializare se aplic n clusteringul tuturor datelor. Zhang [Zhan01] a propus o alt
variant de a optimiza algoritmul prin faptul c punctele sunt asignate soft clusterilor cu
ponderi apropiate.
Algoritmi de clustering. Paradigma actual
43
O soluie simpl ar fi s comparm rezultatele obinute n urma rulrii multiple a
algoritmului cu valori diferite pentru k i alegerea celei mai bune soluii conform cu un criteriu
dat. Totui, cnd cantitatea de date este mare, aceast soluie ar fi mare consumatoare de timp
pentru a rulri multiple cu k diferit.
3.1.1.2 Metoda k-Medoids
Algoritmul k-Medoids reprezint o adaptare a algoritmului k-Means. n loc s se
calculeze centrul de greutate din fiecare grup, se alege un element reprezentativ, sau medoid,
pentru fiecare cluster la fiecare iteraie. Medoidul pentru fiecare grup se calculeaz prin gsirea
unui element i din cluster care minimizeaz costul:
( , )
k
j C
d i j
e

(3.2)
unde C
k
este clusterul care conine obiectul i iar d(i,j) distana dintre obiectul i i obiectul j.
Exist dou avantaje prin utilizarea obiectelor existente ca centre de clusteri. n primul
rnd, un medoid poate s descrie n mod util clusterul. n al doilea rnd, nu este necesar
calcularea repetat a distanelor la fiecare iteraie, deoarece se pot calcula o dat i se salveaz
apoi ntr-o matrice de distane.
Paii din cadrul algoritmului k-Medoids pot fi rezumai dup cum urmeaz:
1. Alege k obiecte la ntmplare s fie medoizii iniiali ai clusterilor.
2. Atribuie fiecare obiect la clusterul asociat medoidului cel mai apropiat i calculeaz
costul conform formulei 3.2 (unde costul reprezint distana fa de acel medoid).
3. Recalculeaz poziiile medoizilor k.
Se repet paii 2 i 3 pn cnd medoizii nu se mai modific semnificativ sau costul nu
mai scade
Algoritmul k-Medoids este eficient pe seturi de date mici (100 documente), n schimb pe
seturi de date mari, datorit costului computaional mare, devine destul de lent. Pentru a putea
aplica algoritmul PAM (Partitioning Around Medoids) la seturi de date mari Kaufman i
Rousseew [Kauf90] au dezvoltat algoritmul CLARA (Clustering Large Applications) care se
bazeaz pe aplicarea algoritmului PAM pe un eantion de date dintr-un set dat. CLARA va
descoperi astfel k medoizi din eantionul dat. Dac eantionul dat i ales aleator va reprezenta
corect ntregul set de date atunci medoizii descoperii vor fi identici cu cei din ntregul set de
date. Complexitatea fiecrei iteraii devine O(kS
2
+k(k-n)) unde S este dimensiunea eantionului
ales, k numrul clusterilor iar n numrul total de puncte. n [Kauf90, Ng94, Wei03] se propune
alegerea valorii S=40+2k.
Pseudocodul pentru algoritmul CLARA este urmtorul:
Algoritm CLARA
Input: S eantion din setul D, { }
m i i
O S
, 1 =
= unde m este dimensiunea lui S
k numr de clusteri
iniializeaz mincost cu MAXINT
Repeat m ori
selecteaz k obiecte arbitrar din S
genereaz setul de medoizi M din S aplicnd algoritmul PAM
if Cost(M, D) <mincost
then
mincost = Cost(M, D);
bestset = C;
End-if;
End-repeat;
Return bestset;
Algoritmi de clustering. Paradigma actual
44
unde,
n
O M ret O d
D M Cost
n
i
i i
=
=
1
)) , ( , (
) , ( (3.3)
cu M setul de medoizi, d(O
i
, O
j
) este distana dintre obiectele O
i
, i O
j
i ) , (
i
O M ret
returneaz un medoid din M care este cel mai apropiat de O
i
Pentru a mbunti calitatea i scalabilitatea algortimului CLARA n [Ng94] se propune
algoritmul CLARANS (Clustering Large Applications based upon RANdomized Search). n
algoritmul CLARANS gsirea a k medoizi este vzut ca i cutarea ntr-un graf. n acest graf,
un nod este reprezentat de un set de k obiecte {O
1
, ..., O
k
}, indicnd faptul c O
1
, ..., O
k
sunt
medoizii alei. Dou noduri sunt vecine (de exemplu, conectate printr-un arc) n cazul n care
seturile lor difer cu un singur obiect. Este evident c fiecare nod n graf are k(n-k) vecini. Din
moment ce un nod reprezint o colecie de k medoizi, fiecare nod corespunde unui posibil
rezultat al clusteringului a crui calitate este msurat prin funcia de cost definit n (3.3)..
n locul folosirii unei strategii de cutare exhaustive, CLARANS adopt o strategie de
cutare euristic pe baze de selecii randomizate. CLARANS pornete de la un nod arbitrar n
graf i selecteaz aleatoriu unul dintre vecinii si. n cazul n care costul obinut prin selectarea
vecinului este mai mic dect cea a nodului curent, CLARANS repornete de la acest vecin i
continu selecia altor vecini. n caz contrar, CLARANS examineaz la ntmplare un alt vecin
pn cnd se gsete un vecin mai bun sau este atins numrul prestabilit de vecini. n acest
ultim caz, nodul curent este declarat a fi un minim local. Pentru a evita s se opreasc la o soluie
neoptim, CLARANS repeta procesul de cutare dintr-un nod iniial diferit pentru un numr
predeterminat de ori. Ulterior, nodul cu costul minim este selectat ca grupare final.
Fie maxneighbor numrul maxim de vecini pentru a examina i numlocal numrul de
minimele locale obinute. Algoritmul CLARANS este reprezentat n figura de mai jos.
Algoritm CLARANS
iniializeaz minCost cu un numr mare (9999);
For i = 1 to numLocal do
selecteaz aleator un nod ca nod curent C n graf;
iniializeaz j = 1;
Repeat
alege aleator un vecin N al lui C;
If Cost(N, D) < Cost(C, D)
Then
N devine nodul curent C;
Reset j to 1;
Else
j=j+1;
End-if;
Until( j > maxNeighbor);

If Cost(C, D) < minCost
Then
minCost = Cost(C, D);
bestNode = C;
End-if;
End-for;
Return bestNode;
n [Ng02] se recomand ca parametrul numLocal s fie iniializat cu 2 i parametrul
maxNeighbor cu valoarea:
100
) ( 25 , 1 k n k

Algoritmi de clustering. Paradigma actual
45
Fa de algoritmul CLARA care la un anumit stadiu al cutrii folosete un eantion fix,
algoritmul CLARANS extrage un eantion cu un grad aleator mai mare. Procesul de clustering
poate fi privit ca i cutarea ntr-un graf unde fiecare nod este o soluie potenial (un set de
medoizi).
3.1.2 Metode ierarhice
Metodele ierarhice realizeaz o structurare ierarhic a setului de obiecte. Exist dou
tipuri de abordri:
- aglomerative: au o abordare bottom-up; la nceput fiecare obiect este asignat unui cluster,
apoi clusterii se unesc pas cu pas pe baza unor msuri de similaritate pn cnd toi sunt unii
ntr-unul singur sau pn la o condiie de oprire dat, crendu-se o structur ierarhic.
- divizive: au o abordare top-down, la nceput toate obiectele sunt considerate a fi coninute
ntr-un singur cluster, apoi prin iteraii succesive se divide fiecare cluster n clusteri mai mici
pn cnd fiecare obiect devine un cluster sau pn la o condiie de oprire dat.
O problem major a algoritmilor de clustering ierarhic const n faptul c o dat ce pasul
de divizare sau de unire s-a efectuat acesta nu mai poate fi anulat. Aceast problem reprezint
totodat un avantaj major al acestui tip de algoritmi datorit reducerii numrului de calcule
evitndu-se calcularea diferitelor combinaii de posibiliti.
Algoritmii BIRCH (Balanced Iterative Reducing and Clustering) propus n [Zhan96] i
CURE (Clustering Using REpresentatives) propus n [Guha98] combin metodele de partiionare
cu cele de tip ierarhic.
3.1.2.1 Algoritmi aglomerativi ierarhici (HAC)
n algoritmul de clustering aglomerativ ierarhic (Hierarchical Clustering Algorithm -
HAC) fiecare document este considerat la nceput, ca formnd un cluster apoi pe urmtorul nivel
(un nivel superior mai general) cte doi clusteri sunt unii pe baza similaritii lor. Algoritmul se
repet pn cnd toi clusterii sunt unii ntr-unul singur. Disimilaritatea clusterilor se exprim
ca i distana ntre doi clusteri. Distana se poate exprima pe baza distanei euclidiene sau pe baza
cosinusului unghiului ntre cei doi vectori care modeleaz clusterii.
3.1.2.1.1 Disimilaritatea dintre doi clusteri n algoritmi ierarhici aglomerativi
Dei n cele mai multe ori este utilizat distana ntre clusteri pentru algoritmii ierarhici
aglomerativi voi prezenta cazul general bazat pe disimilaritate. n funcie de modalitatea de
calcul a disimilaritii se disting mai multe modele ale acestei categorii de algoritmi de clustering
[Mann09], [Mann08]:
3.1.2.1.1.1 Single link
Disimilaritatea ntre doi clusteri este dat
de disimilaritatea celor mai similare dou
documente din cei doi clusteri (distana minim
dintre dou documente coninute n acei
clusteri). Adic, dac pentru doi clusteri A i B
cu documentul aeA i documentul beB atunci:

,
( , ) min ( , )
a A b B
disim A B disim a b
e e
= (3.4)
Algoritmi de clustering. Paradigma actual
46

3.1.2.1.1.2 Complete link
Disimilaritatea a doi clusteri este dat de
disimilaritatea a celor mai disimilare documente
din cei doi clusteri (distana maxim dintre dou
documente coninute n acei clusteri). Adic,
dac pentru doi clusteri A i B cu aeA i beB
atunci:
,
( , ) max ( , )
a A b B
disim A B disim a b
e e
= (3.5)

3.1.2.1.1.3 Average link
Disimilaritatea dintre doi clusteri este
calculat ca media disimilaritii documentelor din
cele doi clusteri (media distanelor dintre fiecare
element dintr-un cluster i toate elementele din
cellalt cluster).


,
1
( , ) ( , )
a A b B
disim A B disim a b
A B
e e
=

(3.6)

3.1.2.1.1.4 Centroid link
Disimilaritatea dintre doi clusteri este
calculat ca disimilariatea ntre centroizii clusterilor
(distana dintre centroizii clusterilor).



( , )
A B
disim A B C C = (3.7)
3.1.2.1.1.5 Metoda lui Ward
Metoda lui Ward [Ward63] determin distana dintre doi clusteri ca fiind valoarea
creterii sumei ptratelor distanelor cnd se unesc cei doi clusteri. Creterea sumei ptratelor
distanelor ( , ) A B A este dat de formula (3.8)
2 2 2 2
( , )
a b
i A B i A i B A B
i A B i A i B
a b
n n
A B x m x m x m m m
n n

e e e

A = =
+

(3.8)
unde m
j
este centroidul clusterului j i n
j
este numrul punctelor din clusterul j.
La nceputul algoritmului, utiliznd aceast metod, ) , ( B A A este zero deoarece fiecare
cluster este format dintr-un singur obiect. Pe msur ce se unesc clusteri, ) , ( B A A crete iar
metoda lui Ward descris prin ecuaia (3.8) ncearc s minimizeze aceast valoare. n metoda
lui Ward n cazul n care dou perechi de clusteri au centrele la distane identice se vor uni
clusterii mai mici.
Algoritmi de clustering. Paradigma actual
47
3.1.2.1.1.6 SAHN (Sequential, Agglomerative, Hierarchical and Nonoverlapping)
n [Jain88] Jain i Dubes prezint o formul de calcul generalizat prezentat de Lance i
Williams n [Lanc67] a distanei unui cluster fa de un cluster nou unit. Astfel, calcularea
distanei
) , ( C B A
d

unui cluster A cu n
k
puncte fa de un cluster nou unit (B,C) se calculeaz dup
formula:
C A B A C B C A C B A B C B A
d d d d d d

+ + + = | o o
) , (
(3.9)
unde coeficienii o, |, sunt dai n tabelul (Tabel 3.1)

Metoda de clustering o
B
o
C
|
Single link
2
1

2
1
0
2
1

Complete link
2
1

2
1
0
2
1

Average link neponderat
(Unweighted pair group
method average )
C B
B
n n
n
+

C B
C
n n
n
+

0 0
Average link ponderat
(Weighted pair group
method average )
2
1

2
1
0 0
Centroid link - neponderat
(Unweighted pair group
method centroid)
C B
B
n n
n
+

C B
C
n n
n
+

2
) (
C B
C B
n n
n n
+


0
Centroid link - ponderat
(Weighted pair group
method centroid)
2
1

2
1

4
1
0
Metoda lui Ward
A C B
A B
n n n
n n
+ +
+

A C B
A A
n n n
n n
+ +
+

A C B
A
n n n
n
+ +


0
Tabel 3.1 - Coeficienii formulei generalizate pentru calculul distanei dintre un cluster i un alt
cluster nou format
O variant ar fi ca s utilizm metoda lui Ward pentru a calcula costul unirii clusterilor.
Micorm k numrul clusterilor (k iniial este egal cu numrul de documente) pn cnd costul
) , ( B A A nregistreaz o cretere mare. Atunci, se presupune c prin unire s-ar pierde prea mult
diferen specific i atunci s-ar putea opri algoritmul la numrul de clusteri obinui nainte de
creterea costului. Aceast metod poate fi combinat cu utilizarea unui algoritm partiional - k-
Means de exemplu - iar iniializarea acestui algoritm fcndu-se cu numrul de clusteri k obinui
prin metoda lui Ward. n cercetrile efectuate am utilizat algoritmul HAC cu metoda single link
deoarece am dorit s obin clusteri ct mai mici i diferii.
3.1.2.2 Algoritmul BIRCH
Algoritmul BIRCH (Balanced Iterative Reducing and Clustering) [Zhan96] este un
algoritm hibrid (incremental i ierarhic) pentru seturi de documente mari i utilizeaz o structur
care se va salva n memoria principal.
Structura are la baz dou concepte: Clustering Feature i CF-Tree.
Algoritmi de clustering. Paradigma actual
48
Clustering Feature (CF) este un triplet care sumarizeaz informaia unui subcluster de
puncte. Astfel, fiind date N puncte ntr-un spaiu n-dimensional, { }
i
X este un subcluster, i
pentru acest subcluster CF se definete ca:
( , , ) CF N LS SS = (3.10)
unde
N este numrul de puncte din subcluster
S L

este suma liniar a N puncte adic

=
N
i
i
X
1


SS este suma ptratelor punctelor adic

=
N
i
i
X
1
2


Clustering Feature Tree este un arbore identic cu un arbore de tip B+. n acest arbore
exist frunze - care conin mai multe intrri i care reprezint un cluster care la rndul su poate
fi constituit din subclustere ale acestor intrri i noduri care reprezint un cluster format din
clusterii din nodurile copil. Introducerea datelor n arbore se efectueaz dinamic n funcie de doi
parametri: factorul de ramificare B i pragul T pentru dimensiunea unei intrri (pragul pentru
diametrul maxim al unei intrri).
Nodurile din arborele CF pot avea maxim B copii i un maxim de intrri L pentru frunze.

Fig. 3.6 - CF-Tree
Introducerea unui nou element n arbore se face ntr-un nod frunz, n cel mai apropiat
subcluster pentru elementul respectiv atta timp ct se respect pragul T (diametrul
subclusterului). n cazul n care se depete acest prag, se creeaz un CF nou i se introduce
punctul nou. Apoi, se actualizeaz toate nodurile CF de la rdcin la frunze care sunt afectate de
schimbarea produs n arbore.
Avnd n vedere faptul c arborele se salveaz direct n memorie, se poate ntmpla ca
pentru un prag T s nu fie suficient memorie i atunci mrind pragul T se obine o micorare a
arborelui.
Algoritmul BIRCH se efectueaz n dou etape:
- Construirea arborelui CF, care poate fi privit ca o compresie a datelor dar care pstreaz
structurarea datelor;
- Aplicarea unui algoritm de clustering (ierarhic) pentru nodurile frunz din arborele CF.

Algoritmi de clustering. Paradigma actual
49
BIRCH este un algoritm de clustering scalabil i obine rezultate bune cnd clusterii sunt
sferici. Dac clusterii au forme arbitrare, atunci datorit faptului c se utilizeaz centroizii n
calcularea CF, rezultatele algoritmului BIRCH sunt mai slabe.
3.1.2.3 Algoritmul CURE
Majoritatea algoritmilor de clustering favorizeaz clusterii de form sferic sau de
dimensiuni asemntoare dar sunt sensibili la prezena zgomotului. Un algoritm interesant
CURE (Clustering Using REpresentatives) prezentat n [Guha98] integreaz metode de
clustering ierarhic cu cele partiionale i elimin problema favorizrii clusterilor de form sferic
sau dimensiune asemntoare.
CURE utilizeaz un numr fix de puncte reprezentative pentru un cluster n locul
centroizilor clasici.
3.1.2.4 Algoritmi divizivi
Se pornete de la un cluster care este format din toate documentele, apoi printr-o metod
de divizare aplicat recursiv se va ajunge pn la clusteri formai dintr-un singur document.
Clustering-ul ierarhic diviziv este din punct de vedere conceptual mai complex. Dac n
prima etap a unei metode aglomerative, considerm toate unirile posibilele a dou obiecte
ajungem la un numr de
2
) 1 ( n n
combinaii iar n cazul utilizrii metodei ierarhic divizive
exist 1 2
1

n
posibiliti de a mpri datele n dou grupuri. Acest numr este considerabil mai
mare dect n cazul unei metode aglomerative.
Kaufmann i Rousseeuw n [Kauf90] au introdus un algoritm de clustering diviziv
DIANA (Divisiv Analysis). Acest algoritm utilizeaz acelai principiu ca i algoritmul AGNES
(AGglomerative NESting - prezentat amnunit n seciunea 3.2) doar c pornete de la un cluster
care conine toate obiectele i mparte clusterul iniial n doi subclusteri i se repet pn cnd
toate obiectele ajung s fie n cte un cluster sau pn la o condiie de terminare dat.
3.1.3 Metode bazate pe ordinea cuvintelor
3.1.3.1 Suffix Tree Clustering (STC)
Acest algoritm, prezentat n [Zami98], nu necesit o reprezentare vectorial a datelor. Se
va utiliza pentru reprezentarea datelor ntr-un arbore de sufixe. Astfel, algoritmul va ine cont de
ordinea atributelor din date i va crea clusteri n funcie de atribute sau grupuri de atribute
consecutive care apar n setul de date. Astfel, acesta poate reprezenta un avantaj major deoarece
ine cont de ordinea atributelor.
Un arbore de sufixe al unui document d este un arbore compact care conine toate sufixele din
acel document. n cazul nostru, un sufix reprezint un ir format din unul sau mai multe atribute.
3.1.3.1.1 Pas1: Construcia arborelui de sufixe
Pentru a construi arborele de sufixe se parcurg urmtoarele etape:
a. Se delimiteaz propoziiile (frazele) din document prin adugarea unui terminator
(de exemplu caracterul $);
b. Se creeaz un nod rdcin notat NULL;
Algoritmi de clustering. Paradigma actual
50
c. Se extrag de la coad la cap cte un sufix (unul sau mai multe cuvinte) din
propoziie (fraz);
d. Se verific dac primul sau primele cuvinte din sufix au deja arc care pornete din
nodul rdcin;
i. Dac DA, atunci se folosete arcul existent i se adaug un nou nod din
nodul curent pentru partea necomun, n cazul n care exist. Dac nu
exist parte necomun, atunci se introduce n frunza n care am ajuns i
identificatorul pentru documentul curent;
ii. Dac NU, se introduce un nou arc etichetat cu sufixul curent;
e. Dac mai sunt sufixe neexplorate se sare la pasul c.
3.1.3.1.2 Pas 2: Selectarea nodurilor de baz
Selectarea nodurilor de baz care vor deveni clusteri de baz:
a. Fiecare nod din arborele de sufixe care are cel puin doi copii devine cluster de baz i
primete un scor S(B) conform ecuaiei (3.11);
b. Se ordoneaz n ordine descresctoare clusterii de baz pe baza scorului obinut i se rein
primii k (de obicei k=500 sau un alt prag). Aceti clusteri de baz vor fi utilizai n
continuare n Pasul 3;
c. Nodurile care obin un scor mai mic dect un prag prestabilit sunt eliminate;
Formule utilizate:
Fie B numrul de documente coninute n nodul B i fie P numrul de cuvinte din
propoziia (fraza) P.
Scorul unui nod se calculeaz conform:
) ( ) ( P f B B S = (3.11)
unde funcia de ponderare pentru lungimea unei propoziii este:
0.5, 1
f ( ) , 2 6
6, 6
P
P P P
P
=

= s s

>

(3.12)
Aceast funcie penalizeaz propoziiile (frazele) formate dintr-un singur cuvnt, este
liniar cresctoare pentru propoziiile formate din dou pn la ase cuvinte i devine constant
pentru propoziii mai lungi de ase cuvinte.
Similaritatea dintre doi clusteri se calculeaz:
1,
( , )
0, altfel
i j i j
i j i j
B B B B
SIM B B B B
o o

| | | |

| | > . >

| | =

\ . \ .

(3.13)
unde reprezint un prag ales.
n [Zami98] pragul pentru este 0.5 iar n [Wen09] acesta este 0.8. n ceea ce privete
formula de calcul a similaritii, fiind vorba de mulimi, am putea alege i o variant bazat pe
coeficientul lui Jaccard care ne d gradul de similaritate ntre dou mulimi. Cu ct valoarea e
mai mare cu att mulimile sunt mai similare (valoarea e n intervalul [0,1] cu 1 indicnd
mulimi identice):
( )
,
i j
i j
i j
B B
J B B
B B

(3.14)
Algoritmi de clustering. Paradigma actual
51
3.1.3.1.3 Pas 3: unirea clusterilor de baz similari
Combinarea clusterilor de baz.
a. Similaritatea dintre doi clusteri de baz se calculeaz conform formulei (3.13).
b. Dac similaritatea dintre doi clusteri de baz depete un anumit prag atunci se
vor uni.
Rezultatul clusteringului cu ajutorul algoritmului STC este un set de clusteri care pot
conine documente comune.
Exemplu:
Fie urmtorul set de documente care conine fiecare cte o propoziie:
D1: document classification is hard.
D2: document clustering is hard too.
D3: document classification and clustering is hard.
Fig. 3.7 Un exemplu de arbore de sufixe

Pas 1: Construim arborele de sufixe;
Pas 2: Alegerea nodurilor de baz i calcularea scorului fiecrui cluster de baz;
Nodurile de baz posibile sunt acele noduri care au cel puin 2 copii. n Fig. 3.8
identificm nodurile care pot deveni clusteri de baz. Acestea devin clusteri de baz.
Algoritmi de clustering. Paradigma actual
52
Fig. 3.8 Identificarea nodurilor de baz din arborele de sufixe

Nodul Propoziia din nod Documente coninute n nod
a
is hard
1, 2, 3
b
document
1, 2, 3
c
document classification
1, 3
d
classification
1, 3
e
hard
1, 2, 3
f
clustering is hard
2, 3
Tabel 3.2 Nodurile din arborele de sufix i documentele coninute n noduri
Se calculeaz pentru fiecare cluster de baz un scor pe baza formulei (3.11).
6 2 3 ) ( _ ) ( = = =
a
P f docu nr a S
5 , 1 5 , 0 3 ) ( = = b S
4 2 2 ) ( = = c S
1 5 , 0 2 ) ( = = d S
5 , 1 5 , 0 3 ) ( = = e S
6 3 2 ) ( = = f S
Clusterii de baz se ordoneaz descresctor n funcie de scor. n practic se pstreaz
doar primii zece clusteri (n literatura de specialitate se specific un k=500). Deoarece algoritmul
va crea foarte muli clusteri asemntori datorit suprapunerilor, n pasul urmtor clusterii rmai
se vor uni dac satisfac condiia de similaritate din (3.13)
Ordinea clusterilor de baz n funcie de scorul obinut este: a, f, c, b, e, d.
Vom aplica formula (3.13) pentru clusterii a i f alegnd o=0.6:
astfel 1
2
2
= =

a
f a
i 66 , 0
3
2
= =

f
f a
, ambele valori fiind mai mari dect o, clusterii
de baz a i f se vor uni. Clusterul rezultat va conine documentele 1, 2 i 3. n cazul nostru, este
chiar unirea tuturor exemplelor, ceea ce este i normal avnd n vedere coninutul textului.
Dac am fi ales un prag mai mare atunci aceste noduri nu s-ar fi unit. Se procedeaz
identic cu toate perechile de clusteri de baz.
Algoritmi de clustering. Paradigma actual
53
3.1.3.1.4 Pas 4. Etichetarea clusterilor
Clusterii obinui prin unire se eticheteaz cu etichetele coninute n noduri sau cu alt
metod semantic.
3.1.4 Metode bazate pe densiti
O mulime deschis n spaiul (topologic) euclidian poate fi descompus n componentele
sale conexe. Plecnd de la aceast idee, un cluster este definit ca fiind o component conex
dens care crete n direcia n care densitatea este mai mare (dup gradientul densitii). Din
aceast cauz, algoritmii care se bazeaz pe densitate sunt capabili s descopere clusteri de forme
arbitrare. Totodat, deplasarea n direcia creterii densitii protejeaz algoritmul de zgomot
(outlineri). Totui, aceste metode au dezavantajul c, dac un cluster se compune din dou zone
adiacente de densitate diferit, dar mai mare ca un prag dat, algoritmii nu reuesc s-l descopere
corect. [Han01].
Dintre cei mai importani algoritmi ai acestei metode amintim: DBSCAN(Density-Based
Spatial Clustering Algortithm with Noise) [Anke99] care genereaz clusteri avnd un prag
pentru densitatea acestora; OPTICS (Ordering Points To Identify the Clustering Structure)
[Anke99] care extinde algoritmul DBSCAN la calcularea unei infiniti de distane
i
mai mici
dect un dat 0
i
. Singura diferen fa de DBSCAN este faptul c algoritmul OPTICS nu
asigneaz apartenena la un cluster ci memoreaz ordinea n care obiectele au fost procesate.
3.1.5 Metode de tip grid-based
O metod bazat pe reele cuantific spaiul de reprezentare a obiectului ntr-un numr finit de
celule care formeaz o structur de tip reea. Dup realizarea acestei reprezentri se aplic
algoritmi de clustering. Marele avantaj este timpul mic de procesare care este independent de
numrul de obiecte fiind dependent doar de numrul de celule din fiecare dimensiune a spaiului
transformat. Algoritmi tipici pentru acest tip de metod sunt: STING (STatistical Information
Grid) [Wang97], DENCLUE (DENsity CLUstering), CLIQUE (CLustering In QUEst) [Ilan10],
MAFIA (Merging of Adaptive Intervals Approach to Spatial Data Mining).
3.1.6 Metode bazate pe modele
Metodele bazate pe modele pleac de la ipoteza c exist un model pentru fiecare cluster
i ncearc s gseasc date care se potrivesc cel mai bine cu modelul respectiv. Un algoritm
bazat pe modele poate descoperi clusteri prin construirea unei funcii de densitate care reflect
distribuia spaial a datelor. Totodat, aceti algoritmi pot conduce la o descoperire automat a
numrului de clusteri cnd se bazeaz pe metode statistice standard innd cont de zgomot.
Algoritmi care fac parte din aceast categorie sunt: AutoClass (Automatic Classification)
[Chee96], COBWEB (COnceptual clustering) [Fish87]. Tot din aceast categorie fac parte i
algoritmii care utilizeaz ca model reelele neuronale cum ar fi SOM (Self Organizing Maps).
De asemenea, pot fi inclui n aceast categorie i algoritmii bio-inspirai care se bazeaz
pe comportamentul colectiv al furnicilor (ant colonies) respectiv al stolurilor de psri, n
cutarea hranei etc. O colonie de furnici are multe caracteristici care sunt considerate utile. O
colonie poate fi privit ca un sistem format din muli ageni care, dei la nivel de individ sunt
simpli, pot efectua sarcini destul de complexe la nivel de grup, dar fr o coordonare central.
Cteva exemple sunt: construirea unui cuib de furnici, cuib pentru puiet i cimitire de furnici
Algoritmi de clustering. Paradigma actual
54
[Cama01]. n general exist dou tipuri algoritmi de clustering bazai pe furnici. Primul tip de
metode imit direct comportamentele de grupare observate n coloniile de furnici reale. Al doilea
tip este mai puin inspirat din natur i sarcina gruprii este reformulat ca o sarcin de
optimizare care utilizeaz tehnici euristice bazate pe comportamentul furnicilor pentru a gsi un
clustering acceptabil sau aproape optim [Hand07].
3.2 Algoritmi ierarhici. HAC implementarea AGNES
Algoritmul AGNES (AGglomerative NESting) pornete cum am prezentat n par. (3.1.2)
de la a poziiona fiecare obiect n propriul su cluster - astfel, la nceput, numrul clusterilor este
egal cu numrul obiectelor) - dup care se unesc clusteri pe rnd pn la o condiie de terminare
sau pn cnd se va obine un singur cluster care conine toate obiectele.
Algoritmul AGNES are o abordare de tip bottom-up n ceea ce privete construcia
clusterilor.
Pseudocodul pentru un astfel de algoritm este:
Algoritmul AGNES
Input: n obiecte
Output: k Clusteri
Pas 1. Numeroteaz documentele de la 1 la n. Fiecare document este un
cluster;
Pas 2. Calculeaz distana d(r,s) ca fiind distana ntre obiectele r i s
cu r, s = 1, 2, ..., n; Fie D = (d(r,s)) matricea de similaritate
Pas 3. Determin perechea de clusteri cei mai similari r, s, astfel nct
d(r,s) este minim n D;
Pas 4. Unete r i s ntr-un cluster nou t
Daca d(r,s)>prag
Exit
Altfel. Calculeaz d(t,k) pentru toi s r k , = . terge
rndurile i coloanele corespunztoare pentru r i s din D i
adaug o coloan i un rnd corespunztor pentru t;
Pas 5. Repet pas 3 de n1 ori pn cnd rmne un singur cluster sau cand
o alt condiie de terminare e ndeplinit.

Structura returnat de algoritm ofer mai multe informaii dect un set de clusteri returnai
de un algoritm plan (algortimi care nu dezvolt o structur ierarhic ci doar realizeaz o simpl
grupare, care la rndul ei poate s fie suprapus sau nu) Rezultatul clusteringului AGNES este o
structur ierarhic n care, cu ct suntem pe un nivel mai nalt, cu att avem clase mai mari i mai
generale vizualizarea este o dendrogram. Algoritmul de clustering AGNES nu necesit
predefinirea unui numr de clusteri. Dezavantajul acestui tip de clustering l reprezint eficiena
mai sczut avnd n vedere complexitatea cel puin ptratic dup numrul de documente fa
de complexitatea liniar a unui algoritm plan.
Exemplu
n exemplul de calcul prezentat pentru AGNES am realizat o aplicaie simpl scris n
cod php i care utilizeaz calculul similaritii bazat pe metoda single link.
Setul de date folosit pentru exemplu este un set de ase puncte reprezentate n plan avnd
dou dimensiuni.
Pas 1
Iniializarea algoritmului: fiecare punct este un cluster.
Algoritmi de clustering. Paradigma actual
55

Fig. 3.9 - Iniializarea algoritmului AGNES
Pas 2
Calculm matricea de distane dintre toate cele 6 puncte utiliznd distana euclidian.
Distana d1 d2 d3 d4 d5 d6
d1 0,0 4,3 7,0 6,1 8,2 2,1
d2 4,3 0,0 3,6 3,2 4,0 4,9
d3 7,0 3,6 0,0 1,1 2,7 6,7
d4 6,1 3,2 1,1 0,0 3,6 5,6
d5 8,2 4,0 2,7 3,6 0,0 8,5
d6 2,1 4,9 6,7 5,6 8,5 0,0
Tabel 3.3 - Matricea de distane
Pas 3
Alegem pentru unire doi clusteri care au distan
minim. n cazul nostru (d3,d4) i recalculm matricea de
distane utiliznd metoda single link:
d1 d2 d3, d4 d5 d6
d1 0,0 4,3 6,1 8,2 2,1
d2 4,3 0,0 3,2 4,0 4,9
d3, d4 6,1 3,2 0,0 2,7 5,6
d5 8,2 4,0 2,7 0,0 8,5
d6 2,1 4,9 6,7 8,5 0,0




Alegem distana cea mai mic. n cazul nostru,
distana cea mai mic este ntre d1 i d6 i atunci, aceti doi
clusteri se unesc i se recalculeaz matricea de distane.
Pasul 3 se repet pn cnd toi clusterii sunt unii ntr-unul
singur.
Distana d1,d6 d2 d3, d4 d5
d1, d6 0,0 4,3 6,1 8,2
d2 4,3 0,0 3,2 4,0
d3, d4 5,6 3,2 0,0 2,7
d5 8,2 4,0 2,7 0,0
Algoritmi de clustering. Paradigma actual
56
Deci vom grupa d5 cu (d3,d4)

Distana d1,d6 d2 d3, d4, d5
d1, d6 0,0 4,3 5,6
d2 4,3 0,0 3,2
d3, d4, d5 5,6 3,2 0,0
Deci vom grupa d2 cu (d3,d4,d5).











La final obinem


Rezumnd iteraiile algoritmului clusterii au fost
unii astfel:
d3 cu d4 la distana 1,1
d1 cu d6 la distana 2,1
(d3,d4) cu d5 la distana 2,7
(d3, d4, d5) cu d2 la distana 3,2
(d3, d4, d5, d2) cu (d1,d6) la distana 4,3


Fig. 3.10 Rezultatul clusteringului cu
algoritmul HAC implementarea
AGNES
n funcie de distana la care au fost unii clusterii, putem realiza ierarhizarea clusterilor i
reprezenta dendograma rezultatului clusteringului (rezultatul AGNES este o dendogram):

Fig. 3.11 - Dendograma pentru algoritmul HAC single link
Distana d1,d6 d3, d4, d5, d2
d1, d6 0,0 4,3
d3, d4, d5, d2 4,3 0,0
Algoritmi de clustering. Paradigma actual
57
Cu ct urcm n ierarhie, cu att clusterii devin mai generali. Principala problem care se
pune este unde ar trebui s oprim algoritmul. O soluie ar fi s oprim algoritmul cnd ajunge la
un numr k de clusteri dat sau cnd distana la care se unesc doi clusteri atinge un anumit prag
dat.
3.3 Algoritmi partiionali. K-Medoids
Kaufman i Rousseeuw prezint n [Kauf87] algoritmul PAM (Partition Around Medoids)
care este o implementare a algoritmului k-Medoids. Acest algoritm determin k clusteri in
mulimea de n obiecte prin gsirea pentru fiecare cluster a unui obiect reprezentativ (a unui
medoid). Iniial, n primul pas, medoizii sunt alei arbitrar apoi sunt nlocuii cte unul prin
alegerea unui alt medoid din mulimea obiectelor care nu sunt medoizi, atta timp ct distana
total se mbuntete (scade).
Exemplu. Am realizat n php o aplicaie simpl care aplic algoritmul PAM unui set de zece
puncte determinate de coordinatele (x,y) din plan astfel:
Obiectul x y
x1 2 4.5
x2 1 0
x3 2 2.5
x4 7 3
x5 10 6.5
x6 2.5 3.5
x7 5 10
x8 8 2.5
x9 4 5
x10 0 1.5
Tabel 3.4 Coordonatele a 10 puncte ntr-un spaiu bidimensional
Pas1: Stabilim k=2 i alegem aleator dou punte din mulimea obiectelor i le declarm medoizi.
Medoizii se aleg dac distana dintre ei este mai mare dect un prag dat: c
1
(1,0)=x2 i c
2
(8,2.5) =x8
Pas2: Calculm distanele de la fiecare punct la cei doi medoizi alei i atribuim punctele celor
doi medoizi alegnd distanele minime (n cazul de fa s-a utilizat distana Manhattan).
Medoidul x z Distana
1 0 2 4.5 5.5

1 0 0
2 2.5 3.5
7 3 9
10 6.5 15.5
2.5 3.5 5
5 10 14
8 2.5 9.5
4 5 8
0 1.5 2.5
Tabel 3.5 - Distanele tuturor punctelor calculate fa de medoidul c
1
(1, 0)
Medoidul x y Distana
8 2.5 2 4.5 8

1 0 9.5
2 2.5 6
7 3 1.5
10 6.5 6
2.5 3.5 6.5
5 10 10.5
8 2.5 0
4 5 6.5
0 1.5 9
Tabel 3.6 - Distanele tuturor punctelor calculate fa de medoidul c
2
(8, 2.5)
Algoritmi de clustering. Paradigma actual
58
n funcie de distanele calculate, punctele se atribuie medoizilor pe baza comparrii
distanelor de la fiecare punct la cei doi medoizi alegndu-se medoidul cu distan minim.
Astfel obinem doi clusteri. Componena clusterilor este prezentat n Fig. 3.12.

Fig. 3.12 Alegerea medoizilor i atribuirea punctelor
Calculm costul total ca i sum a distanelor minime:
CostTotal = d((2, 4),(1, 0)) + d((2, 2.5),(1,0)) + d((2.5, 3.5),(1, 0)) + d((0, 1.5),(1, 0)) +
+ d((7, 3),(8, 2.5)) + d((10, 6.5),(8, 2,5)) + d((5, 10), (8, 2.5)) + d((4, 5), (8, 2.5)) =
=5.5+3.5+5+2.5+1.5+6+10.5+6.5=41
Pas3: nlocuim un medoid cu un alt punct din mulimea nemedoizilor i refacem pasul 2.
Alegem ca medoidul c
1
(1, 0) s fie nlocuit cu medoidul c
1
(2.5, 3.5).
Matricea de distane se recalculeaz astfel:
Medoidul x y Distana Medoidul x y Distana
2.5 3.5 2 4.5 1.5 8 2.5 2 4.5 8

1 0 5

1 0 9.5
2 2.5 1.5 2 2.5 6
7 3 5 7 3 1.5
10 6.5 10.5 10 6.5 6
2.5 3.5 0 2.5 3.5 6.5
5 10 9 5 10 10.5
8 2.5 6.5 8 2.5 0
4 5 3 4 5 6.5
0 1.5 4.5 0 1.5 9
Tabel 3.7. Noile valori calculate pentru distane de la medoizi la puncte
Pe baza distanelor calculate se modific compoziia celor doi clusteri astfel:

Fig.3.13 Alegerea noului medoid i atribuirea punctelor
CostTotal=32
Algoritmi de clustering. Paradigma actual
59
Comparnd cele dou costuri observm c n urma alegerii unui alt medoid s-a dovedit c
aceasta a fost inspirat.
Pasul 3 se va repeta pn cnd CostTotal nu mai scade..
Algoritmul k-Medoids este mai puin influenat de zgomotul din date dect algoritmul k-
Means. Deoarece k-Medoids lucreaz direct cu medoizi nu mai este aa de tare influenat de
outlineri cum este influenat calcularea centrului de greutate la algoritmul k-Means. Totui, din
punct de vedere al costului computaional, algoritmul k-Medoids are un cost mai mare deoarece
pentru o singur iteraie, costul computaional este O(k(n-k)
2
). Ca i n cazul algoritmului k-
Means, la algoritmul k-Medoids trebuie specificat la nceputul rulrii algoritmului numrul
clusterilor k care se doresc a fi obinute.
n [Serr10] este prezentat o alt modalitate de a calcula costul total:
R R k
k
er UnaryClust
k
ter cInterClus
k
ter cIntraClus
Cost ln + + = o (3.15)
unde:
k: numrul clusterilor [2 R/8].
cIntraCluster: suma distanelor intra-cluster.
cInterCluster: suma distanelor inter-cluster.
UnaryCluster: numrul clusterilor care conin un singur element (chiar medoidul)
R: dimensiunea setului dup eliminarea obiectelor nesemnificative
o: coeficient de dispersie (0.1 - 0.9).
n ecuaia (3.15) valoarea UnaryCluster este interesant deoarece ea penalizeaz
semnificativ apariia clusterilor care conin un singur document.

Cercetri privind reprezentarea documentelor n algoritmi de clustering
60

4 Cercetri privind reprezentarea documentelor n
algoritmi de clustering
n acest capitol voi prezenta cercetri privind mbuntirea rezultatelor algoritmilor de
clustering prin reprezentarea documentelor utiliznd modelul Suffix Tree (STDM Suffix Tree
Document Model) comparativ cu modelul VSM (Vector Space Model). n ceea ce privete
reprezentarea documentelor, mi propun o abordare care se distaneaz oarecum de metodele pur
computaionale i care adaug o cantitate mic de informaie semantic, astfel nct, s-ar putea
considera c se ncearc o apropiere de abordarea semantic-ontologic a clusteringului.
Utilizarea modelului STDM este promitoarea deoarece aceast reprezentare ine cont i de
ordinea cuvintelor din propoziie, nu doar de frecvena acestora. Rezultatele obinute vor fi
comparate cu rezultatele obinute de algoritmi de clustering utiliznd modelul de reprezentare
vectorial VSM.
4.1 Modele de reprezentare utilizate
4.1.1 Reprezentarea utiliznd modelul Vector Space Model - VSM
Cea mai des ntlnit metod de reprezentare a documentelor text n algoritmii de nvare
este cea de reprezentare vectorial (Vector Space Model - VSM). Aceast metod poate fi
structurat n dou etape: indexarea documentelor i ponderarea termenilor.
4.1.1.1 Indexarea documentelor
n VSM un document text este reprezentat ca vector de termeni (cuvinte) cu frecvene
asociate [Salt75]. Definirea noiunii de termen nu este impus de model, dar termenii sunt de
obicei cuvinte i expresii. n cazul n care cuvintele sunt alese ca i termeni, fiecare cuvnt din
vocabularul V asociat documentelor devine o dimensiune independent ntr-un spaiu vectorial k-
dimensional ortogonal. Orice document text poate fi apoi reprezentat de un vector n acest spaiu
dimensional mare.
Fie
1 2
( , ,..., )
i i i ik
d w w w = reprezentarea unui document, unde w
ij
reprezint ponderea
termenului j (din vocabularul V) n documentul d
i
iar ( ) k card V = .
4.1.1.2 Tipuri de reprezentare a termenilor
Pentru reprezentarea ponderilor trsturilor am folosit n experimente modelele utilizate
n [Mora07]. Astfel am utilizat 3 tipuri de reprezentri: reprezentarea binar, reprezentarea
If the facts don't fit the theory, change the facts.
Albert Einstein
Orice poate fi demonstrat, chiar i adevrul
Grigore C. Moisil
Cercetri privind reprezentarea documentelor n algoritmi de clustering
61
nominal i cea Cornell-Smart. De asemenea s-au fcut unele experimente utiliznd
reprezentarea Invers Document Frequency i cea TF_IDF.
Reprezentarea binar vectorul va conine valoare 0 dac cuvntul respectiv nu apare
n document, i 1 dac cuvntul respectiv apare n document..
Reprezentare nominal se normalizeaz valorile vectorului n intervalul [0,1] conform
cu formula (4.1)
( , )
( , )
max ( , )
n d t
TF d t
n d
t
t
= (4.1)
n(d,t) este frecvena apariiei al termenului t n documentul d i max ( , ) n d
t
t valoarea
termenului din documentul d cu numr maxim de apariii
Reprezentarea Cornell SMART valoarea ponderilor se calculeaz conform formulei:
0 ( , ) 0
( , )
1 log(1 log( ( , )))
dac n d t
TF d t
n d t altfel
=
=

+ +

(4.2)
n(d,t) este frecvena apariiei al termenului t n documentul d. Domeniul de reprezentare a
valorii ponderilor este n intervalul [0,2]. Dac cuvntul nu apare n document valoarea este 0.
Valoarea maxim este 2 pentru un numr de apariii mai mic dect 10
9
, avnd n vedere faptul c
logaritmul este n baza 10.
Reprezentarea I DF (Invers Document Frequency) n vectorul de intrare sunt ponderate
valorile n funcie de frecvena apariiei termenului n colecia de documente utiliznd formula:
( ) log
t
N
IDF t
N
| |
=
|
\ .
(4.3)
unde t este termenul, N numrul de documente din colecie iar N
t
numrul de documente
care conin termenul t.
Reprezentarea TF_I DF n vectorul de intrare sunt folosite ambele ponderi descrise n
(4.1) i (4.3) astfel:
_ TF IDF TF IDF = (4.4)
Totui, aceast reprezentare vectorial combinat cu operaiile de eliminare a cuvintelor
de legtur (stop-words) i a extragerii rdcinilor cuvintelor (stemming) duce la eliminarea
oricror nelesuri (sensuri) care apar datorit combinailor de cuvinte din propoziie. De
exemplu documentele Daniel este mai bun ca Radu i Radu este mai bun ca Daniel sunt
identice n reprezentarea VSM dar ca i semantic sunt complet diferite. Aceste sensuri pot fi
utile n algoritmii de nvare pentru mbuntirea rezultatelor acestora.
4.1.2 Reprezentarea utiliznd modelul Suffix Tree Document Model -
STDM
Modelul suffix tree (STDM Suffix Tree Document Model) a aprut n literatura de
specialitate legat de algoritmul de clustering Suffix Tree Clustering (STC) [Mann09], [Meye05],
[Janr11] i a fost prezentat n seciunea 3.1.3. n modelul STDM documentele sunt reprezentate
ca i arbori de sufixe n care nodurile reprezint cuvintele comune din documente iar frunzele
sunt toate cuvintele din documente.
Fie d=c
1
c
2
c
3
c
m
reprezentarea unui document ca o secven de cuvinte c
i
, cu i=1,m i un
set S de n documente. Arborele de sufixe pentru un set S care conine n iruri, fiecare de lungime
m
n
, este un arbore care conine un nod rdcin i exact m
n
frunze.
Cercetri privind reprezentarea documentelor n algoritmi de clustering
62
Reguli de construcie a arborelui de sufixe:
1. Fiecare nod intern, altul dect rdcina, trebuie s aib cel puin doi copii i fiecare arc
care pleac dintr-un nod este etichetat cu un subir nevid al lui S.
2. Oricare dou arce care pornesc dintr-un nod nu pot ncepe cu acelai cuvnt.
Deoarece fiecare nod conine cel puin doi copii, el va conine partea comun a cel puin
dou sufixe. Fiecare frunz din arbore poate reprezenta un document sau mai multe iar toate
ramurile dintre nodul rdcin i frunze reprezint cte un document sau un subir dintr-un
document. Cu ct dou documente au mai multe noduri comune, cu att aceste documente tind s
fie similare.
4.2 Metodologia de lucru
mi propun n continuare s analizez dac utilizarea modelului STDM pentru reprezentarea
documentelor n algoritmii de clustering poate duce la mbuntirea rezultatelor clustering-ului
comparativ cu utilizarea reprezentrii vectoriale VSM. Reprezentarea STDM n ceea ce privete
reprezentarea documentelor de tip text include i ordinea cuvintelor din propoziie nu doar
cuvintele din document. Astfel, n mod implicit, acest model conine i cteva elemente de
semantic a documentului. Altfel spus, dei STDM este in fond tot o reprezentare
computaional ea, prin reprezentarea arborescent-ierarhica a documentului, se apropie cumva
implicit de o reprezentare (mai) ontologic, ceea ce poate aduce avantaje. Aceasta a fost ipoteza
tiinific pe baza creia am demarat aceast cercetare. n modelul STDM se vor reprezenta
toate propoziiile (frazele) i toate cuvintele din propoziie coninute n documente (fr
cuvintele de legtur). Nodurile din arbore vor conine cuvintele sau frazele comune din
documente. Cu ct vor fi mai multe noduri comune n arbore cu att similaritatea este mai mare
ntre documente. Voi lua n considerare i numrul de cuvinte din fiecare nod.
De asemenea, voi analiza dac n etapa de preprocesare, extragerea rdcinilor cuvintelor din
documente (pentru reducerea numrului de cuvinte) influeneaz sau nu rezultatul final al
algoritmului de clustering.
Cercetrile efectuate pn n prezent s-au axat n general pe mbuntirea algoritmului STC
(Suffix Tree Clustering) propriu-zis. Problema cea mai important i des cercetat o reprezint
problema de alegere a nodurilor din arborele de sufixe care apoi vor deveni clusteri. Algoritmul
n sine poate produce foarte multe noduri i totodat foarte multe suprapuneri ntre clusterii
rezultai, astfel c unele documente pot s apar n mai muli clusteri diferii.
n lucrarea de fa am decis utilizarea unui algoritm ierarhic (HAC Hierarchical
Agglomerative Clustering) i a unui algoritm de tip k-Medoids (folosind varianta PAM -
Partitioning Around Medoids a acestuia). Astfel, n reprezentarea STDM nu voi calcula arborele
pentru ntreaga colecie de documente, cum se face n abordrile de pn acum, ci voi construi
cte un arbore de sufixe pentru oricare dou documente din setul de date. Avantajul metodei
const n faptul c dimensiunea arborelui rezultat este mult mai mic dect cea a arborelui pentru
setul ntreg de date. Totui, aceast metod are dezavantajul c se construiesc n(n-1)/2 arbori mai
mici, dar timpul de construcie necesar pentru un astfel de arbore este considerabil redus,
deoarece arborii construii au puine ramuri i atunci cutarea este mult mai rapid. n plus, la un
moment dat avem nevoie doar de un singur arbore deci, i memoria necesar este mult mai mic.
De asemenea, toate abordrile care construiesc arborele de sufixe pentru toate documentele (vezi
algoritmul STC seciunea 3.1.3) recurg n final la metode de eliminare a unor noduri astfel nct
arborele s poat fi parcurs n timp util. Eliminarea unor noduri poate duce i la pierderea unor
informaii utile. Deoarece arborii construii sunt relativ mici nu voi recurge la nici o metod de
eliminare a nodurilor.
n Fig.4.1 prezint schema aplicaiei:
Cercetri privind reprezentarea documentelor n algoritmi de clustering
63

Fig. 4.1 Structura procesului de clustering
4.3 Metrici pentru calculul matricii de similaritate i metode de
evaluare utilizate. Metrica original propus
Ca i algoritmi de clustering mi-am propus s utilizez doi algoritmi care au la baz
matrice de distane care se calculeaz iniial, iar pe parcursul rulrii algoritmului aceste matrice
nu se modific substanial. Am ales aceasta deoarece n cazul reprezentrii STDM este dificil de
reprezentat un document medoid pentru a putea reface matricea de distane. n alegerea
algoritmilor de clustering pe care i voi utiliza in cont de urmtoarele aspecte: acetia trebuie s
aib la baz o matrice de distane ntre oricare dou documente i aceast matrice nu trebuie s se
modifice pe tot parcursul rulrii algoritmului.
Cei doi algoritmi alei sunt:
- Algoritmul ierarhic aglomerativ (HAC) de tip single link prezentat n seciunea 3.2.
- Algoritmul partiional k-Medoids (implementarea PAM - Partitioning Around Medoids)
prezentat n seciunea 3.3.

Seturi de date
Extragere cuvinte
Stop-words
Stemming
Preprocesare
Calcularea matricei de distane
Euclidian Jaccard Canberra NEWST OLDST
Algoritmi
HAC cu single link K-Medoids (PAM)
VSM
STDM
Acuratee
Evaluare clusteri
F-measure
Cercetri privind reprezentarea documentelor n algoritmi de clustering
64
Am ales aceti algoritmi deoarece fac parte din clase de algoritmi de clustering diferite,
sunt relevani pentru clasele din care provin i sunt des utilizai n diverse aplicaii de clustering.
n [Meye05] au fost comaparai algoritmii HAC (average link) cu STC utiliznd reprezentarea
VSM i reprezentarea STDM. Totui aceste abordri sunt diferite fa de cercetarea propus
deoarece compar doi algoritmi i nu dou reprezentri de documente. n ambii algoritmi,
matricea de distane necesit calcularea distanei dintre oricare dou documente. Pentru calculul
distanelor dintre oricare dou documente distincte am ales dou tipuri de metrici:
A) metrici care descriu similaritatea a dou documente:
i.) Metrica notat OLDST aceast distan a fost preluat din [Meye05] i
modificat (prin simpla adugare a termenului 1-) la forma:
# _
( , ) 1
# _
OLDST i j
noduri comune
d x x
total noduri
| |
=
|
\ .
(4.5)
ii.) Metrica notat NEWST aceast metric este dezvoltat de mine plecnd de la
observaiile c nu doar numrul nodurilor comune este important pentru a stabili dac dou
documente sunt similare ci i informaia coninut n aceste noduri. Astfel, documente
coninute n noduri care au i propoziii (iruri de cuvinte) comune nu numai cuvinte
comune vor tinde s fie evaluate ca fiind mai similare. n formul am introdus termenul
1+ pentru a evita mprirea la 0.
1 # _ 1
( , ) 1 *
1 # _ 1 #cuvinte _ _ _
NEWST i j
noduri comune
d x x
total noduri din nod comune
| | +
=
|
+ +
\ .
(4.6)
iii.) Metrica Jaccard este derivat din coeficientul Jaccard utilizat la compararea
mulimilor:
# _
( , ) 1
# _
JAC i j
atribute comune
d x x
total atribute
| |
=
|
\ .
(4.7)
unde
#noduri_comune reprezint numrul nodurilor care sunt parcurse de ambele
documente;
#total_noduri reprezint numrul total de noduri din arborele de sufixe.
#cuvinte_din_nod_comune reprezint numrul de cuvinte (comune) derivate inclusiv
din iruri de cuvinte din diferitele noduri- parcurse pentru a
ajunge la acel nod
#atribute_comune reprezint numrul de atribute comune celor dou
documente pe reprezentarea VSM
#total_atribute reprezint numrul total de atribute folosit pentru
reprezentarea documentelor
Pentru metrica NEWST n momentul n care nu avem nici un nod comun rezultatul tinde
la 1, atingnd 1 cnd numrul total de noduri tinde la infinit. Iar rezultatul este 0 n momentul n
care toate nodurile din arbore sunt comune ambelor documente.
Pentru metrica OLDST i distana Jaccard codomeniul este [0,1].
Toate metricile prezentate n seciunea A reprezint similariti i pentru a le putea folosi
n matricea de distane am sczut rezultatul obinut din valoarea 1.
B) metrici care descriu disimilaritatea a dou documente:
i.) Distana euclidian (descris i n ecuaia 2.11):
Cercetri privind reprezentarea documentelor n algoritmi de clustering
65
2
1
( , ) ( )
n
E i j ik jk
k
d x x x x
=
=
(4.8)

ii.) Distana Canberra (descris i n ecuaia 2.15):
1
( , )
n
ik jk
CAN i j
k
ik jk
x x
d x x
x x
=

=
+

(4.9)
unde x
i
este un document din setul de date reprezentat prin p atribute (cuvinte).
Cele dou distane ntorc rezultat n intervalul [0,] iar pentru a putea fi comparate cu
distanele din seciunea A dup ce s-a calculat toat matricea de distane, toate distanele au fost
aduse n intervalul [0,1] prin mprirea acestora la valoarea cea mai mare din matrice.
Pentru calcularea distanelor voi folosi ambele tipuri de reprezentri ale documentelor
att reprezentarea Suffix Tree (STDM) ct i cea vectorial (VSM) urmnd, ca n funcie de
reprezentare s folosim anumite metode de calcul al distanei.
n reprezentarea documentelor cu modelul STDM voi construi cte un arbore de sufixe
pentru oricare dou documente distincte din setul de documente i voi calcula distana dintre ele
utiliznd prima dat distana NEWST (4.6) i apoi distana OLDST (4.5).
Formula de calcul NEWST propus de mine are urmtoarele avantaje:
1. Dac sunt dou documente care nu au nici un nod comun, atunci distana
NEWST dintre ele depinde de numrul de cuvinte din cele dou documente.
Astfel, cu ct documentele sunt mai mari i nu au nici mcar un nod comun,
distana dintre ele va fi mai aproape de 1 dar totui diferit, comparativ cu
celelalte metrici care ntorc ntotdeauna valoarea 1 dac documentele nu au nici
un nod comun. Aceast mic difereniere ne ajut s stabilim ordinea n care vor fi
unite documentele pe baza matricei de distane. Astfel documentele mari vor fi
unite ultimele.
2. n cazul n care documentele au noduri comune am ponderat valoarea ntoars i
cu numrul de cuvinte (iruri) din nodul comun. Astfel se fac diferene ntre
documentele care au pri comune mai mari i cele care au doar cuvinte comune.
n cazul reprezentrii VSM, distana dintre documente se va calcula cu ajutorul distanei
euclidiene, a distanei Jaccard sau a distanei Canberra.
Pentru antrenarea i evaluarea algoritmilor de clustering am folosit seturile de tiri
prezentate n seciunea 2.7.2. n continuare, fiecare tire va fi considerat un document. n etapa
de preprocesare a seturilor de date prezentate n seciunea 2.7.2 s-au generat 2 seturi distincte
astfel:
a. unul n care s-au eliminat doar cuvintele de legtur;
b. unul n care s-au eliminat cuvintele de legtur i s-a extras rdcina cuvntului (pentru
extragerea rdcini cuvntului s-a folosit algoritmul Porter implementat n pachetul IR
[Rijs80])
Algoritmii de clustering vor primi ca parametri de intrare, pe rnd seturile de date precum
i numrul de clusteri care trebuiesc obinui (egal cu numrul de categorii dintr-un anumit set).
Pentru evaluarea clusterilor obinui am folosit ca i clase de baz categoria din care
provine fiecare document. Astfel, putem utiliza pentru evaluarea algoritmilor de clustering
metrici cum ar fi acurateea i scorul F-measure. Cele dou msuri sunt utilizate n general n
evaluarea algoritmilor de clustering i de clasificare n cazul folosirii unor seturi de date pre-
etichetate.
Cercetri privind reprezentarea documentelor n algoritmi de clustering
66
Deoarece n etapa de selecie a tirilor am ales doar tiri pre-etichetate, iar documentele
din seturile de date au fost salvate mpreun cu denumirea categoriei, avem seturi de date pre-
etichetate. Considerm c etichetarea fcut de agenii de la site-urile de tiri este perfect i o
s ne raportm la ea. n continuare, vom nota etichet ca fiind categoria creia i aparine
documentul specificat de agenia de tiri, iar clas va fi categoria n care a fost inclus
documentul de ctre algoritmul de clustering.
Numele unui cluster este dat de eticheta care apare cel mai frecvent n clusterul respectiv.
n cazul n care exist un cluster deja etichetat cu acea valoare se va folosi eticheta imediat
urmtoare (ca i frecven de apariie) valid sau se specific No class dac nu mai sunt
etichete.
De exemplu, pentru 3 clusteri am obinut clasele:

unde 0, 1, 2 reprezint clusterii, iar valoarea din stnga reprezint clasa stabilit pe baza celei
mai frecvente etichete din acel cluster.
Pentru evaluarea clusterilor am utilizat acurateea i scorul F-measure ambele formule fiind
prezentate n seciunile 2.2.1.1 i 2.6.1. Msura general F-measure pentru evaluarea soluiei
unui clustering este ponderat prin dimensiunea relativa a fiecrui cluster.
( ) max( ( , ))
i
i j
i
n
F S F C S
n
=

(4.10)
unde n
i
reprezint numrul de documente din clusterul i i n reprezint numrul total de
documente din set. Valoarea F(S) este n intervalul [0,1]; cu ct valoarea se aproprie de 1 cu att
rezultatul este mai bun.
n timp ce acurateea pentru categoria curent ine cont doar de numrul de documente
grupate corect n acea categorie, F-measure ine cont pe lng aceasta i de numrul de
documente grupate n alt categorie dect categoria curent i care ntr-adevr nu trebuiau
grupate n categoria curent. Astfel F-measure este o msur mai fin a calitii gruprii datelor.
4.4 Rezultate obinute pe seturile RSS
Toate testele ale cror rezultate sunt prezentate mai jos au fost rulate pe un sistem Intel(R)
Core2 Duo cu procesoare T6600 la 2,20GHz, 4GB DRAM i sistem de operare Windows7
Home Premium liceniat.
Algoritmii de clustering au fost implementai n limbajul Java folosind platforma Eclipse.
Pentru faza de preprocesare a documentelor s-au utilizat i anumite clase din pachetul WEKA
3.7 [WEKA]. Documentele procesate au fost iniial transferate ntr-un format utilizat i de alte
aplicaii consacrate pentru algoritmi de nvare cum ar fi formatul arff.
n continuare, voi prezenta detaliat rezultatele obinute pe seturile de date RSS de ctre
cei doi algoritmi de clustering implementai HAC (Hierarchical Agglomerative Clustering) i k-
Medoids (cu implementarea PAM Partitioning Around Medoids). Rezultatele for fi prezentate
separat pe algoritmi ct i pe modul de reprezentare al datelor VSM (Vector Space Model) i
STDM (Suffix Tree Document Model). n final, prezint i cteva rezultate comparative ntre cele
dou reprezentri i cei doi algoritmi de clustering utilizai. De asemenea, pentru fiecare model
de reprezentare i pentru fiecare algoritm de clustering voi prezenta rezultatele obinute pe datele
0 1 2 <-- assigned to cluster
47 0 0 | fotbaleuropean
0 62 0 | lybia
0 0 42 | motorsport

Cercetri privind reprezentarea documentelor n algoritmi de clustering
67
pe care nu s-a aplicat algoritmul de stemming dar i pe datele pe care s-a aplicat algoritmul de
stemming. Pentru evaluarea rezultatelor voi folosi acurateea i scorul F-measure, metode de
evaluare extern prezentate n seciunea 2.6.1. Utilizez ambele msuri pentru a m asigura de
validitatea rezultatelor. Acurateea i scorul F-measure trebuie s reflecte n principiu aceleai
tendine. Rezultatele pentru acuratee vor fi prezentate sub form de procente iar rezultatele
pentru scorul F-measure vor fi numere n intervalul [0, 1] valoarea 1 nsemnnd valoarea cea mai
bun.
4.4.1 Rezultatele obinute de algoritmul HAC cu reprezentare VSM
n tabelul 4.1 i n Figura 4.3 prezint, pentru modelul VSM i pentru fiecare din cele trei
metode de calcul a distanei prezentate n seciunea 4.3, rezultatele pentru seturile de date S01-
S07 la care am eliminat cuvintele de legtur dar nu am extras i rdcinile cuvintelor.
Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 71.52% 53.80% 66.67% 79.10% 31.09% 65.52% 79.33% 63.86%
Euclidian 41.06% 35.09% 39.74% 34.46% 32.64% 36.21% 34.64% 36.26%
Canberra 42.38% 34.50% 39.74% 33.33% 32.12% 25.86% 32.96% 34.42%
Tabel 4.1 Rezultatele acurateei obinute de algoritmul HAC fr stemming cu reprezentarea VSM

n tabel am scos n eviden cele mai bune rezultate obinute pe fiecare set n parte n
funcie de metrica utilizat.
Se observ faptul c algoritmul HAC care utilizeaz distana Jaccard obine cea mai bun
acuratee pe 6 seturi de date. Rezultatul mai puin bun pe setul S05 s-a obinut din cauza faptului
c exist clusteri slab reprezentai comparativi cu alii care sunt mai bine reprezentai. Valoarea
medie a acurateei obinut de algoritm cu distana Jaccard este de 63,86% iar valoarea maxim
atins este de 79,33%.

Fig. 4.3 HAC - Acurateea clustering-ului pentru toate cele 7 seturi fr stemming

n tabelul 4.2 i n Figura 4.4 prezint scorul F-measure pentru seturile de date S01-S07 i
modelul VSM. Se observ comparativ cu graficul prezentat n Fig. 4.3 c n cazul setului de date
S06 acurateea obinut de msura Jaccard este semnificativ mai mare dect scorul F-measure.
Scorul F-measure fiind un indicator care ine cont i de documentele care ntr-adevr nu aparin
unei categorii i nu au fost atribuite acelei categorii a penalizat rezultatul msurii Jaccard care a
ales o alt etichet dect cea real pentru un cluster mai mare.
0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e
t
e

Seturi de date
Acuratee HAC - model VSM
Jaccard
Euclidian
Canberra
Cercetri privind reprezentarea documentelor n algoritmi de clustering
68
Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 0.8078 0.5645 0.7731 0.7600 0.3739 0.3744 0.7627 0.6309
Euclidian 0.4738 0.3393 0.4598 0.3528 0.3812 0.2714 0.3513 0.3757
Canberra 0.4728 0.3491 0.5463 0.3427 0.3816 0.2669 0.3301 0.3842
Tabel 4.2 Rezultatele F-measure obinute de algoritmul HAC fr stemming cu reprezentarea VSM


Fig. 4.4 HAC - F-measure pentru toate cele 7 seturi de date fr stemming
Msura F-measure fiind un scor pentru media ponderat dintre precizie i recall l voi
prezenta peste tot ca valoare obinut (nu procentual).
n Tabelul 4.3 i n Figura 4.5 prezint rezultatele pentru algoritmul HAC pe seturile de
date S01-S07 la care am eliminat cuvintele de legtur i am extras i rdcinile cuvintelor prin
aplicare algoritmului de stemming Porter.
Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 41.72% 33.92% 39.10% 34.46% 33.68% 68.97% 34.64% 40.93%
Euclidian 43.05% 35.09% 39.74% 34.46% 32.64% 39.66% 34.64% 37.04%
Canberra 42.38% 33.92% 39.10% 33.33% 32.12% 25.86% 32.96% 34.24%
Tabel 4.3 Rezultatele acurateei obinute de algoritmul HAC cu stemming cu reprezentarea VSM


Fig. 4.5 HAC - Acurateea clustering-ului pentru toate cele 7 seturi cu stemming
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-measure HAC - model VSM
Jaccard
Euclidian
Canberra
0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e
t
e

Seturi de date
Acurateea HAC cu stemming - VSM
Jaccard
Euclidian
Canberra
Cercetri privind reprezentarea documentelor n algoritmi de clustering
69
Rezultatele scorului F-measure prezentate n Tabelul 4.4 i n Figura 4.6 respect
tendinele acurateei obinute de algoritmul HAC n reprezentarea VSM cu aplicarea algoritmului
Porter de extragere a rdcinilor cuvintelor.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 0.4735 0.3532 0.4515 0.3416 0.3808 0.6827 0.3379 0.4316
Euclidian 0.4720 0.3622 0.4598 0.3528 0.3812 0.2058 0.3513 0.3693
Canberra 0.4728 0.3623 0.4605 0.3427 0.3816 0.2669 0.3301 0.3739
Tabel 4.4 Rezultatele F-measure obinute de algoritmul HAC fr stemming cu reprezentarea VSM


Fig. 4.6 HAC - F-measure pentru toate cele 7 seturi de date cu stemming
Analiznd rezultatele obinute de algoritmul HAC utiliznd modelul VSM de
reprezentare se observ din valorile medii obinute de cele trei metrici utilizate c aplicarea
algoritmului de stemming a influenat negativ metrica Jaccard, scznd acurateea cu 22.93%; n
schimb, pentru metrica euclidian acurateea s-a mbuntit cu 0.78%. Scderea acurateei la
metrica Jaccard se poate explica prin faptul c, fiind o metric de similaritate care se bazeaz pe
numrul cuvintelor comune distincte, n momentul n care se aplic algoritmul de stemming se
reduce semnificativ acest numr iar diferenierea ntre documente devine dificil. Rezultatul
fraciei devine identic pentru mai multe perechi de documente care poate nu sunt cu adevrat
similare. Pentru distana euclidian care se bazeaz pe calculul vectorial, reducerea numrului de
atribute este benefic pentru c reduce calculul.
4.4.2 Rezultatele obinute de algoritmul HAC cu reprezentare STDM
n Tabelul 4.5 i n Figura 4.7 prezint pentru modelul STDM, pentru fiecare din cele dou
metode de calcul a distanei prezentate n par. 4.3, rezultatele pentru seturile de date S01-S07 la
care am eliminat cuvintele de legtur dar nu am extras i rdcinile cuvintelor.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 100.00% 99.42% 95.51% 77.40% 76.17% 84.48% 77.65% 87.23%
OLDST 100.00% 100.00% 65.38% 96.05% 72.02% 70.69% 96.09% 85.75%
Tabel 4.5 Rezultatele pentru acuratee obinute de algoritmul HAC fr stemming cu reprezentarea STDM

0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-measure HAC cu stemming - VSM
Jaccard
Euclidian
Canberra
Cercetri privind reprezentarea documentelor n algoritmi de clustering
70

Fig. 4.7 HAC - Acurateea clustering-ului pentru toate cele 7 seturi de date la care s-au eliminat doar
cuvintele de legtur
Dac analizm rezultatele prezentate n Tabelul 4.5 (rezultate obinute de modelul STDM
fr stemming) i le comparm cu rezultatele prezentate n Tabelul 4.1 (rezultate obinute de
modelul VSM fr stemming) se observ c rezultatul clusteringului s-a mbuntit, fapt
ncurajator pentru metrica NEWST propus de mine. Precizm faptul c iniial am rafinat
procesarea algoritmului HAC pe anumite seturi de date favorabile. Procesul de rafinare a fost i
reciproc. Astfel se explic faptul c rezultatele obinute pe aceste seturi de date, oarecum
artificioase (S01, S02), sunt hiperbolizate. Scopul acestui demers a fost legat de necesitatea
garaniei corectitudinii implementrii mele. Mai precis, procentajele de 100% au fost posibile pe
setul S01 deoarece categoriile alese sunt suficient de diferite iar documentele coninute au fost
selectate astfel nct s conin cuvinte identice i astfel implicit distana la care algoritmul le
unete este mic fcnd posibil o diferenire clar ntre cele trei categorii. Pentru a demonstra
utilitatea metricii NEWST voi prezenta n Fig. 4.8 rezultatele comparative privind acurateea
obinut de metrica NEWST propus de mine i msura OLDST pentru algoritmul HAC fr
stemming. n grafic am reprezentat diferena calculat dintre valoarea pentru acuratee obinut
de metrica NEWST i valoarea pentru acuratee obinut de metrica OLDST. Pe unele seturi,
metrica NEWST a funcionat mai bine dect OLDST i atunci diferena dintre valorile obinute
este pozitiv. n cazul n care metrica OLDST a obinut rezultate mai bune fa de metrica
NEWST, diferena este negativ.

Fig. 4.8 HAC mbuntirea acurateei obinut de NEWST versus OLDST n reprezentarea seturile de
date fr stemming
0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e
t
e

Seturi de date
Acuratee HAC - model STDM
NEWST
OLDST
0.00%
-0.58%
30.13%
-18.64%
4.15%
13.79%
-18.44%
1.49%
-30 %
-20 %
-10 %
0 %
10 %
20 %
30 %
40 %
S01 S02 S03 S04 S05 S06 S07 Media
D
i
f
e
r
e
n
t
a

a
c
u
r
e
t
e
t
e
i

Seturile de date
mbuntirea acurateei NEWST vs. OLDST - HAC fr stemming
(NEWST - OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
71
Se observ din Fig. 4.8 c metrica NEWST propus a mbuntit n medie cu 1.49%
acurateea algoritmului de clustering aplicat n cazul utilizrii modelului de reprezentare a
datelor STDM pe seturile de date, fr aplicarea algoritmului de extragere a rdcinilor
cuvintelor.
n Tabelul 4.6 i Figura 4.9 prezint scorul F-measure pentru seturile de date S01-S07 i
modelul STDM fr aplicarea algoritmului de extragere a rdcinilor cuvintelor.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 1.0000 0.9942 0.9718 0.8357 0.5222 0.8576 0.8375 0.8599
OLDST 1.0000 1.0000 0.6756 0.9738 0.5461 0.6927 0.8129 0.8144
Tabel 4.6 Rezultatele pentru F-measure obinute de algoritmul HAC fr stemming cu reprezentarea
STDM

Fig. 4.9 HAC - F-measure pentru toate cele 7 seturi de date fr stemming
Valorile obinute de scorul F-measure respect tendinele valorilor obinute de acuratee n cazul
utilizrii reprezentrii STDM. n Fig. 4.10 prezint mbuntirea adus de metrica NEWST
comparativ cu metrica OLDST n cazul scorului F-measure. Am reprezentat diferenele ntre
valoarea obinut de metrica NEWST i metrica OLDST. Diferena este pozitiv dac metrica
NEWST a obinut rezultatul mai bun i este negativ n cazul n care metrica OLDST a obinut
rezultatul mai bun.

Fig. 4.10 HAC F-measure NEWST versus OLDST n reprezentarea seturile de date fr stemming
0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-measure HAC - model STDM
NEWST
OLDST
0.0000
-0.0058
0.2962
-0.1381
-0.0239
0.1650
0.0247
0.0454
-0.2
-0.1
0.0
0.1
0.2
0.3
0.4
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e

F
-
m
e
a
s
u
r
e

Seturi de date
mbuntirea F-measure NEWST vs. OLDST - HAC fr stemming
(NEWST -OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
72
n tabelul 4.7 i figura 4.11 voi prezenta rezultatele obinute de algoritmul HAC utiliznd
reprezentarea STDM, dar aplicnd pe seturile de date S1-S7 algoritmul de stemming al lui
Porter.
Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 100.00% 99.42% 95.51% 77.40% 76.17% 84.48% 77.65% 87.23%
OLDST 100.00% 100.00% 65.38% 96.05% 72.02% 70.69% 96.09% 85.75%
Tabel 4.7 Rezultatele pentru acuratee obinute de algoritmul HAC cu stemming cu reprezentarea STDM


Fig. 4.11 HAC - Acurateea clustering-ului pentru seturile de date n reprezentarea STDM cu
stemming
Pentru a compara din nou cele dou metrici n cazul utilizrii algoritmului de stemming
pe seturile de date, am calculat diferenele dintre valorile obinute pentru acuratee de cele dou
msuri NEWST i OLDST. Din nou, o valoare pozitiv reprezint diferena n favoarea metricii
NEWST iar o valoare negativ reprezint diferena n favoarea metricii OLDST. Diferenele
dintre valorile obinute pentru acuratee le prezint n Fig. 4.12.

Fig. 4.12 HAC - Acurateea NEWST vs. OLDST n reprezentarea STDM pe seturile de date cu stemming
i n cazul utilizrii algoritmului de stemming, metrica NEWST a obinut rezultate n
medie cu 1.49% mai bune ca metrica OLDST. Aceast valoare medie este identic cu valoarea
pentru mbuntirea medie obinut de acelai algoritm cu reprezentarea STDM dar fr
extragerea rdcinilor din seturile de date. Analiznd mediile de mbuntire ntre metricile
NEWST i OLDST prezentate n Fig.4.8 i Fig. 4.12 putem afirma c aplicarea algoritmului de
stemming nu a adus mbuntiri n cazul reprezentrii STDM.
0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e

e

Seturi de date
Acurateea HAC cu stemming - STDM
NEWST
OLDST
0.00%
-0.58%
30.13%
-18.64%
4.15%
13.79%
-18.44%
1.49%
-30 %
-20 %
-10 %
0 %
10 %
20 %
30 %
40 %
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e
a

a
c
u
r
a
t
e

e
i

Seturi de date
mbuntirea acurateei NEWST vs. OLDST
(NEWST -OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
73
Valorile obinute de scorul F-measure pentru seturile de date S1-S07 pentru algoritmul
HAC utiliznd reprezentarea STDM cu stemming le prezint n tabelul 4.8 i figura 4.12.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 1.0000 0.8100 0.8084 0.8357 0.8407 0.8576 0.8375 0.8557
OLDST 1.0000 1.0000 0.6756 0.8581 0.7730 0.6927 0.8129 0.8303
Tabel 4.8 Rezultatele pentru F-measure obinute de algoritmul HAC cu stemming cu reprezentarea
STDM

Fig. 4.12 HAC F-measure clustering-ului pentru seturile de date n reprezentarea STDM cu stemming
Din Fig. 4.12 se poate observa faptul c pe setul S02 msura NEWST care a obinut o
acuratee de 99,42% totui obine un scor F-measure mai mic fa de OLDST, aceasta
explicndu-se prin faptul c probabil a inversat dou clase una avnd mai multe documente dect
cealalt i i s-a atribuit numele unei clase clusterului mai mic iar clusterului mai mare a trebuit s
i se atribuie alt nume.
n Fig. 4.13 voi prezenta mbuntirea adus scorului F-measure de metrica NEWST fa
de OLDST n cazul algoritmului HAC pentru reprezentarea STDM aplicnd algoritmul de
stemming.

Fig. 4.13 HAC F-measure NEWST vs. OLDST n reprezentarea STDM pe seturile de date cu
stemming
mbuntirea scorului F-measure este mai mic cu 0.02 fa de cazul cnd nu am extras
rdcinile cuvintelor. Reducerea atributelor prin extragerea rdcinii cuvintelor a dus la
confundarea a doi clusteri pe setul S02 i implicit la scderea scorului F-measure. Oricum,
0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-measure HAC cu stemming - model STDM
NEWST
OLDST
0.0000
-0.1900
0.1328
-0.0224
0.0677
0.1650
0.0247
0.0254
-0.3
-0.2
-0.1
0.0
0.1
0.2
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e
a

F
-
m
e
a
s
u
r
e

Seturi de date
mbuntirea scorului F-measure - ST1 vs. ST2 HAC cu stemming
(NEWST-OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
74
msura NEWST propus a demonstrat c aduce mbuntiri. Ipoteza mea este c pe documente
mai semantice (de exemplu documente care folosesc aceleai grupuri de cuvinte n aceeai
ordine) utilizarea reprezentrii STDM mpreun cu msura NEWST este util.
4.4.3 Rezultatele obinute de algoritmul k-Medoids cu reprezentare VSM
Pentru a valida rezultatele prezentate n seciunile 4.4.1 i 4.4.2 am repetat experimentele
utiliznd algoritmul k-Medoids. Experimentele au fost efectuate pe seturile de date RSS fr i
apoi cu aplicarea algoritmului de extragere a rdcinilor documentelor.
n continuare, voi prezenta n tabelul 4.9 i figura 4.14 rezultatele comparative obinute n
condiiile utilizrii algoritmului k-Medoids pentru seturile de date S01-S07. S-a utilizat modelul
de reprezentare VSM mpreun cu distana euclidian, Canberra i Jaccard.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 89.40% 85.96% 71.79% 73.45% 74.61% 63.79% 62.01% 74.43%
Euclidian 56.29% 34.50% 56.41% 22.03% 42.49% 53.45% 22.91% 41.15%
Canberra 35.76% 32.75% 31.41% 31.07% 33.16% 41.38% 27.37% 33.27%
Tabel 4.9 Rezultatele acurateei obinute de algoritmul k-Medoids fr stemming cu reprezentarea VSM


Fig 4.14 k-Medoids - Acurateea calculat pentru seturile S01-S07 fr stemming
Se observ c n cazul utilizrii algoritmului k-Medoids metrica de similaritate Jaccard
obine n mod clar rezultatele cele mai bune deoarece n cazul seturilor de date utilizate numrul
de cuvinte per document este mic iar metricile care folosesc distane nu pot diferenia puternic
documentele. Metrica Jaccard fiind o metric bazat pe numrul cuvintelor este mai sensibil i
poate diferenia documentele.
n cazul scorului F-measure, rezultatele obinute prezentate n tabelul 4.10 i figura 4.15
arat c msura Jaccard obine rezultatele cele mai bune, excepie fcnd doar rezultatul obinut
pe setul S03 unde distana euclidian obine un scor cu 0.002 mai bun dect distana Jaccard.
Analiznd rezultatul obinut pentru acuratee pe setul S03 se observ o diferen clar n favoarea
distanei Jaccard. Acest lucru se poate explica din nou prin inversarea claselor a doi clusteri de
dimensiune diferit.


0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e

e

Seturi de date
Acuratee k-Medoids fr stemming - VSM
Jaccard
Euclidian
Canberra
Cercetri privind reprezentarea documentelor n algoritmi de clustering
75
Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 0.9070 0.8746 0.6374 0.6438 0.6437 0.5140 0.5055 0.6751
Euclidian 0.6218 0.3758 0.6401 0.2391 0.4816 0.4849 0.2282 0.4388
Canberra 0.3702 0.3551 0.2802 0.2796 0.3254 0.4010 0.2131 0.3178
Tabel 4.10 Rezultatele F-measure obinute de algoritmul k-Medoids fr stemming cu reprezentarea VSM


Fig 4.15 k-Medoids F-measure calculat pentru seturile S01-S07 fr stemming
n continuare, voi prezenta rezultatele experimentelor care au fost obinute pe seturile
S01-S07 la care n prealabil am aplicat extragerea rdcinilor cuvintelor. Rezultatele pentru
acuratee i F-measure sunt prezentate n figura 4.16 i respectiv figura 4.17 iar valorile efective
obinute sunt prezentate n tabelele 4.11 respectiv 4.12.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 92.05% 87.72% 91.03% 76.84% 77.72% 65.52% 59.78% 78.66%
Euclidian 61.59% 45.03% 50.00% 51.41% 39.90% 51.72% 36.31% 47.99%
Canberra 39.07% 32.75% 40.38% 31.07% 39.90% 41.38% 29.05% 36.23%
Tabel 4.11 Rezultatele k-Medoids pentru acuratee cu stemming cu reprezentarea VSM


Fig. 4.16 Algoritmul de clustering k-Medoids. Acurateea pe seturi cu stemming model VSM
0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-measure pentru k-Medoids fr stemming - VSM
Jaccard
Euclidian
Canberra
0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e

e

Seturi de date
Acuratee k-Medoids cu stemming - VSM
Jaccard
Euclidian
Canberra
Cercetri privind reprezentarea documentelor n algoritmi de clustering
76

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
Jaccard 0.9169 0.8826 0.8792 0.6619 0.6611 0.5153 0.5041 0.7173
Euclidian 0.6687 0.4471 0.4814 0.4926 0.3751 0.5185 0.3405 0.4748
Canberra 0.3975 0.3547 0.3753 0.2793 0.3511 0.4012 0.2237 0.3404
Tabel 4.12 Rezultatele k-Medoids pentru F-measure cu stemming cu reprezentarea VSM


Fig. 4.17 Algoritmul de clustering k-Medoids. F-measure pe seturi cu stemming model VSM
n concluzie, putem afirma c pentru reprezentarea VSM metrica Jaccard a obinut
rezultate mai bune utiliznd algoritmul k-Medoids dect n cazul utilizrii algoritmului HAC.
Dac pentru algoritmul HAC, acurateea pe seturile RSS fr utilizarea algoritmului de stemming
n cazul metricii Jaccard a fost n medie de 63.86%, n cazul algoritmului k-Medoids aceasta a
ajuns la 74.43%. n cazul aplicrii algoritmului de extragere a rdcinilor cuvintelor acurateea n
cazul utilizrii algoritmului HAC cu metrica Jaccard a fost de 40.93% i a ajuns pentru
algoritmul k-Medoids, utiliznd aceeai msur Jaccard, la 78.66%. Este evident faptul c, pe
seturi de documente relativ mici reprezentate cu ajutorul modelului VSM, algoritmul k-Medoids
cu distana Jaccard i utilizarea algoritmului de extragere a rdcinii cuvintelor obine rezultatele
cele mai bune.
4.4.4 Rezultatele obinute de algoritmul k-Medoids cu reprezentare
STDM
Pentru a valida utilitatea modelului de reprezentare STDM l-am aplicat cu aceleai
formule de calcul a similaritii (formulele NEWST i OLDST) i la algoritmul de clustering k-
Medoids (varianta PAM), care folosete la fel ca i algoritmul HAC matricea de distane dintre
documente n procesul de creare de clusterilor.
Acurateea obinut de algoritmul k-Medoids pe seturi la care nu am aplicat algoritmul de
stemming sunt prezentate n tabelul 4.13 i figura 4.18.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 89.40% 88.89% 86.54% 77.97% 75.13% 87.93% 64.25% 81.44%
OLDST 92.72% 87.13% 81.41% 46.89% 78.76% 72.41% 63.13% 74.64%
Tabel 4.13 Rezultatele k-Medoids pentru acuratee fr stemming cu reprezentarea STDM
0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-measure k-Medoids cu stemming - VSM
Jaccard
Euclidian
Canberra
Cercetri privind reprezentarea documentelor n algoritmi de clustering
77

Fig. 4.18 Algoritmul de clustering k-Medoids Acurateea pe seturi fr stemming model STDM
Ca i n cazul algoritmului HAC i la algoritmul k-Medoids se observ c metrica
NEWST, propus de mine, obine rezultate mai bune dect metrica OLDST. Astfel, pentru setul
de date pe care nu am aplicat algoritmul de stemming, rezultatele privind mbuntirea
acurateei adus de metrica NEWST fa de metrica OLDST sunt prezentate n Fig. 4.19.
mbuntirea acurateei pentru rezultatul clusteringului am calculat-o ca diferen dintre
acurateea obinut de metrica NEWST i metrica OLDST. n cazul cnd metrica NEWST a
obinut un rezultat mai bun dect metrica OLDST, diferena este pozitiv, altfel ea devine
negativ. Se observ o mbuntire a acurateei n medie de 6.81% adus de utilizarea metricii
NEWST. Reamintim faptul c, metrica NEWST a obinut n cazul algoritmului HAC n aceleai
condiii de reprezentare a documentelor, o mbuntire a acurateei cu 1.49% fa de metrica
OLDST.

Fig. 4.19 k-Medoids mbuntirea acurateei adus de NEWST vs. OLDST n utiliznd reprezentarea
STDM pe seturile de date fr stemming
Rezultatele obinute, utiliznd F-measure ca metric de evaluare, pentru k-Medoids cu
reprezentarea STDM fr stemming sunt prezentate n tabelul 4.14 i figura 4.20.
Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 0.8958 0.8903 0.8390 0.6619 0.6455 0.8883 0.5167 0.7625
OLDST 0.9288 0.8708 0.6783 0.4111 0.6926 0.7311 0.5105 0.6890
Tabel 4.14 Rezultatele k-Medoids pentru F-measure fr stemming cu reprezentarea STDM
0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e

e

Seturi de date
Acuratee k-Medoids fra stemming - STDM
NEWST
OLDST
-3.31%
1.75%
5.13%
31.07%
-3.63%
15.52%
1.12%
6.81%
-10 %
-5 %
0 %
5 %
10 %
15 %
20 %
25 %
30 %
35 %
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e
a

a
c
u
r
a
t
e

e
i

Seturi de date
mbuntirea acurateei adus de NEWST vs OLDST - k-Medoids fr stemming
(NEWST-OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
78

Fig. 4.18 Algoritmul de clustering k-Medoids. F-measure pe seturi fr stemming model STDM
Pentru a valida mbuntirea adus de metrica NEWST fa de metrica OLDST am
calculat i n cazul scorului F-measure diferena dintre metrica NEWST i metrica OLDST. i n
acest caz, se obine o diferen pozitiv n cazul n care metrica NEWST obine un rezultat mai
bun dect metrica OLDST, diferena fiind negativ n caz contrar. n medie, rezultate n cazul F-
measure pentru metrica NEWST fa de metrica OLDST sunt cu 0.735 mai bune ca metrica
OLDST. Valorile pentru mbuntirea scorului F-measure adus de metrica NEWST fa de
metrica OLDST sunt prezentate n Fig. 4.21.

Fig. 4.21 k-Medoids mbuntirea scorului F-measure NEWST vs. OLDST n reprezentarea seturile de
date fr stemming
n continuare, voi prezenta n tabelul 4.15 i figura 4.22 rezultatele obinute de algoritmul
k-Medoids pe seturile de date reprezentate utiliznd modelul STDM i aplicarea algoritmului de
stemming.

Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 88.08% 88.89% 86.54% 77.97% 75.13% 87.93% 73.74% 82.61%
OLDST 91.39% 70.18% 83.33% 46.89% 77.72% 72.41% 63.13% 72.15%
Tabel 4.15 Rezultatele k-Medoids pentru acuratee cu stemming cu reprezentarea STDM

0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
k-Medoids evaluare F-measure -reprezentare STDM fr stemming
NEWST
OLDST
-0.0330
0.0195
0.1607
0.2509
-0.0470
0.1572
0.0062
0.0735
-0.1
0.0
0.1
0.2
0.3
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e

F
-
m
e
a
s
u
r
e

Seturi de date
mbuntirea scorului F-measure NEWST vs. OLDST -
k-Medoids fr stemming
(NEWST-OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
79

Fig. 4.22 Algoritmul de clustering k-Medoids. Acurateea pe seturi cu stemming model STDM
Analiznd rezultatele obinute de metrica NEWST se observ c, din nou, obine rezultate
superioare fa de metrica OLDST.
n continuare, calculez mbuntirea adus de metrica NEWST ca diferen ntre
rezultatele obinute de cele dou metrici n cazul utilizrii algoritmului de stemming iar
rezultatele sunt prezentate n Fig. 4.23.

Fig. 4.23 k-Medoids mbuntirea acurateei NEWST vs. OLDST n reprezentarea seturile de date cu
stemming
Dac comparm mbuntirea adus de msura NEWST fa de msura OLDST n cazul
neutilizrii algoritmului de stemming, superioar cu 6.81%, fa de mbuntirea de 10.46%
adus de msura NEWST utiliznd algoritmul de stemming, putem afirma c aplicarea
algoritmului de stemming pe seturile de date a fost n cazul algoritmului k-Medoids benefic
deoarece algoritmul k-Medoids fiind un algoritm partiional nu accept clusteri suprapui cum
este cazul algoritmului HAC iar utilizarea a mai puine atribute permite o delimitare mai uoar a
clusterilor.
n tabelul 4.16 i figura 4.24 prezint scorul F-measure obinut de algoritmul k-Medoids pe
seturile de date la care am aplicat algoritmul de stemming.
Setul
Metrica
S01 S02 S03 S04 S05 S06 S07 Media
NEWST 0.8882 0.8903 0.8390 0.6619 0.6555 0.8883 0.5513 0.7678
OLDST 0.9183 0.7101 0.6981 0.4111 0.6632 0.5466 0.5105 0.6368
Tabel 4.16 Rezultatele k-Medoids pentru F-measure cu stemming cu reprezentarea STDM
0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e

e

Seturi de date
k-Medoids evaluare acuratee -reprezentare STDM cu stemming
NEWST
OLDST
-3.31%
18.71%
3.21%
31.07%
-2.59%
15.52%
10.61% 10.46%
-10 %
-5 %
0 %
5 %
10 %
15 %
20 %
25 %
30 %
35 %
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e

a
c
u
r
a
t
e

e

Seturi de date
mbuntirea acurateei NEWST vs. OLDST - k-Medoids cu stemming
(NEWST-OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
80


Fig. 4.24 Algoritmul de clustering k-Medoids. F-measure pe seturi fr stemming model STDM
Calculnd diferenele dintre rezultatele obinute de metrica NEWST fa de metrica
OLDST pe baza F-measure n cazul algoritmului k-Medoids am obinut rezultatele prezentate n
Fig. 4.25.

Fig. 4.25 K-Medoids mbuntirea F-measure NEWST vs. OLDST n reprezentarea seturile de date cu stemming
4.4.5 Comparaii ntre algoritmii de clustering i ntre modurile de
reprezentare. Superioritatea metricii propuse
Rezultatele prezentate mai sus demonstreaz faptul c utilizarea modelului STDM pentru
reprezentarea documentelor text este aplicabil i la ali algoritmi de clustering, alii dect STC
dar care folosesc n procesul de antrenare matrice de distane. Modelul STDM devine mai greu
de utilizat n cazul algoritmilor de clustering care utilizeaz centroizi cum ar fi algoritmul k-
Means. n implementarea algoritmului k-Medoids am folosit implementarea PAM a acestuia care
nu necesit simpla calculare a unui centru de greutate i alegerea documentului care este cel mai
apropiat fa de acesta, ci cutarea exhaustiv a medoizilor, fapt ce a dus implicit la creterea
timpului de execuie. Introducerea implicit a unor elemente indirecte de semantic a
documentelor n cazul nostru ordinea cuvintelor a dus la o mbuntire semnificativ a
rezultatelor clusteringului. Prezentm n tabelele 4.17 i 4.18 rezultatele experimentelor pentru
valorile medii, obinute de algoritmul HAC cu reprezentrile STDM i VSM pe toate cele 7
0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
k-Medoids evaluare F-measure -reprezentare STDM cu stemming
NEWST
OLDST
-0.0301
0.1802
0.1408
0.2509
-0.0076
0.3417
0.0408
0.1310
-0.1
0.0
0.1
0.1
0.2
0.2
0.3
0.3
0.4
0.4
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e

F
-
m
e
a
s
u
r
e

Seturi de date
mbuntirea scorului F-measure NEWST vs. OLDST - k-Medoids cu
stemming
(NEWST-OLDST)
Cercetri privind reprezentarea documentelor n algoritmi de clustering
81
seturi de date, att din punct de vedere al acurateei ct i din punct de vedere al msurii F-
measure. De asemenea, valorile sunt prezentate separat pentru date pe care s-a fcut stemming i
pe date pe care nu s-a fcut stemming.
Modelul Metrica Fr stemming Cu stemming
VSM
Jaccard 63.86% 40.93%
Euclidian 36.26% 37.04%
Canberra 34.42% 34.24%
STDM
NEWST 87.23% 87.23%
OLDST 85.75% 85.75%
Tabelul 4.17 Rezultate ale acurateei pe valori medii pentru algoritmul HAC
Modelul Metrica Fr stemming Cu stemming
VSM
Jaccard 0.6309 0.4316
Euclidian 0.3757 0.3693
Canberra 0.3842 0.3739
STDM
NEWST 0.8599 0.8557
OLDST 0.8144 0.8303
Tabelul 4.18 Rezultate ale F-measure pe valori medii pentru algoritmul HAC
n Fig.4.26 i Fig. 4.27 prezint grafic rezultatele obinute de algoritmul HAC pentru
acuratee respectiv F-measure.

Fig. 4.26 HAC - Acurateea medie pentru toate cele 7 seturi de date


Fig. 4.27 HAC F-measure mediu pentru toate cele 7 seturi de date
8
7
.
2
3
%

8
5
.
7
5
%

6
3
.
8
6
%

3
6
.
2
6
%

3
4
.
4
2
%

8
7
.
2
3
%

8
5
.
7
5
%

4
0
.
9
3
%

3
7
.
0
4
%

3
4
.
2
4
%

0 %
10 %
20 %
30 %
40 %
50 %
60 %
70 %
80 %
90 %
100 %
STDM -
NEWST
STDM -
OLDST
VSM -
Jaccard
VSM -
Euclidian
VSM -
Canberra
A
c
u
r
a
t
e

e

Modele de reprezentare i metrici
HAC - Acurateea medie
Fr stemming
Cu stemming
0
.
8
5
5
7

0
.
8
3
0
3

0
.
4
3
1
6

0
.
3
6
9
3

0
.
3
7
3
9

0
.
8
5
9
9

0
.
8
1
4
4

0
.
6
3
0
9

0
.
3
7
5
7

0
.
3
8
4
2

0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
STDM -
NEWST
STDM -
OLDST
VSM -
Jaccard
VSM -
Euclidian
VSM -
Canberra
F
-
m
e
a
s
u
r
e


Modele de reprezentare i metrici
HAC - scorul F-measure mediu
Cu stemming
Fr stemming
Cercetri privind reprezentarea documentelor n algoritmi de clustering
82
Din rezultatele prezentate n Fig.4.26 se observ c, n cazul utilizrii modelului STDM
acurateea algoritmului de clustering nu este afectat de preprocesarea datelor, respectiv
extragerea sau nu a rdcinilor cuvintelor. Acest fapt este explicabil deoarece prin extragerea
rdcinilor nu se pierde ordinea cuvintelor deci, se pstreaz oarecum semantica
documentului. Pentru modelul VSM extragerea rdcinilor cuvintelor este benefic doar pentru
distana euclidian i se constat o mbuntire nesemnificativa, cu doar 0,78% a acurateei. n
cazul celorlalte distane utilizate n modelul vectorial, se constat o nrutire: n cazul distanei
Canberra de 0,18% iar n cazul distanei Jaccard nrutirea este de 22,93%. Acest fapt este
explicabil deoarece distana Jaccard se bazeaz pe numrul de elemente comune ntre dou
mulimi iar extrgnd rdcinile s-au obinut mai multe cuvinte identice pierzndu-se astfel
diferena ntre documente iar acurateea a avut de suferit.
n tabelele 4.19 i 4.20 voi prezenta rezultatele obinute pentru valorile medii ale
acurateei i ale scorului F-measure obinute de algoritmul k-Medoids, calculate similar ca n
cazul algoritmului HAC, utiliznd modelele de reprezentare STDM i VSM.
Model Metrica Fr stemming Cu stemming
VSM
Jaccard 74.43% 78.66%
Euclidiana 41.15% 47.99%
Canberra 33.27% 36.23%
STDM
NEWST 81.44% 82.61%
OLDST 74.64% 72.15%
Tabelul 4.19 Rezultate ale acurateei pe valori medii pentru algoritmul k-Medoids

Model Metrica Fara stemming Cu stemming
VSM
Jaccard 0.7034 0.7173
Euclidian 0.4739 0.4748
Canberra 0.3352 0.3404
STDM
NEWST 0.8035 0.7678
OLDST 0.7188 0.6368
Tabelul 4.20 Rezultate ale F-measure pe valori medii pentru algoritmul k-Medoids

n Fig.4.28 i Fig. 4.29 prezint grafic rezultatele obinute de algoritmul k-Medoids pentru
acuratee respectiv F-measure.

Fig. 4.28 k-Medoids - Acurateea medie pentru toate cele 7 seturi de date

8
1
.
4
4
%

7
4
.
6
4
%

7
4
.
4
3
%

4
1
.
1
5
%

3
3
.
2
7
%

8
2
.
6
1
%

7
2
.
1
5
%

7
8
.
6
6
%

4
7
.
9
9
%

3
6
.
2
3
%

0 %
10 %
20 %
30 %
40 %
50 %
60 %
70 %
80 %
90 %
STDM -
NEWST
STDM -
OLDST
VSM -
Jaccard
VSM -
Euclidiana
VSM -
Canberra
A
c
u
r
a
t
e

e

Modele de reprezentare i metrici
k-Medoids valori medii ale acuratreei
Fara stemming
Cu stemming
Cercetri privind reprezentarea documentelor n algoritmi de clustering
83

Fig. 4.29 k-Medoids F-measure mediu pentru toate cele 7 seturi de date
Se observ, la fel ca i n cazul algoritmului HAC, c extragerea rdcinilor cuvintelor nu
influeneaz semnificativ acurateea n modelul STDM. Se observ chiar o uoar scdere a
acurateei pentru seturile de date n care a fost aplicat algoritmul de stemming (0,22% pentru
NEWST i 2,90% pentru OLDST). Situaia este complet schimbat n cazul modelului VSM de
reprezentare. n cazul algoritmului k-Medoids - care este un algoritm partiional i nu accept
suprapuneri n ceea ce privete clusterii rezultai - s-au obinut rezultate mai bune n cazul
utilizrii modulului de extragere a rdcinilor cuvintelor.
Multe studii care au utilizat reprezentarea VSM au artat c utilizarea unui numr mai
mic de cuvinte prin extragerea rdcinii acestora duce la mbuntiri ale calitii gruprii datelor
[Mora06_c]. O alt problem care apare este calitatea procesului de stemming. Pentru extragerea
rdcinii cuvintelor am folosit implementarea Porter din pachetul Information Retrieval de la
Universitatea din Texas [IR] preluat n anul 2007. Chiar daca s-a observat de ctre comunitatea
tiinific faptul c aceast implementare nu extrage ntotdeauna corect rdcina cuvintelor ea
este referina n domeniu i am folosit-o ca atare.
O alt explicaie a faptului c acurateea medie scade pe seturile fr stemming la
algoritmul k-Medoids comparativ cu algoritmul HAC este aceea c algoritmul k-Medoids nu
accept suprapuneri pentru grupele create iar utilizarea unui numr mai mic de cuvinte ajut
algoritmul s gseasc mai uor liniile de separare ntre grupele create.
Astfel, se obine o mbuntire a acurateei cu 5,75% n cazul distanei euclidiene, cu
5,31% n cazul distanei Jaccard i cu 3,17% n cazul distanei Canberra.
Din rezultatele prezentate se observ c utilizarea msurilor de similaritate (categoria A)
obine rezultate mai bune dect cele de disimilaritate (categoria B), aceasta explicndu-se prin
faptul c distanele din categoria A calculate n matricea de distane sunt uniform distribuite n
domeniul [0, 1]. Metricile de distan din categoria B pot returna valori foarte apropiate de 0
pentru majoritatea cazurilor n momentul n care exist n set dou documente pentru care
distana ntre ele este foarte mare comparativ cu celelalte distane i astfel se poate intra n
problema care apare n momentul reprezentrii numerelor foarte mici. O alt diferen ntre
metricile NEWST, OLDST i celelalte metrici folosite este aceea c NEWST i OLDST folosesc
reprezentarea STDM a documentelor avnd i informaii de semantic (doar ordinea cuvintelor
din document) comparativ cu celelalte metrici care folosesc reprezentarea VSM. Distana
Jaccard obine rezultate mai bune dect celelalte metrici care utilizeaz modelul VSM de
reprezentare dar obine rezultate mai slabe dect metricile care utilizeaz i reprezentarea STDM
a documentelor.
0
.
8
0
3
5

0
.
7
1
8
8

0
.
7
0
3
4

0
.
4
7
3
9

0
.
3
3
5
2

0
.
7
6
7
8

0
.
6
3
6
8

0
.
7
1
7
3

0
.
4
7
4
8

0
.
3
4
0
4

0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
STDM -
NEWST
STDM -
OLDST
VSM -
Jaccard
VSM -
Euclidiana
VSM -
Canberra
F
-
m
e
a
s
u
r
e

Modele de reprezentare i metrici
k-Medoids valori medii ale F-measure
Fara stemming
Cu stemming
Cercetri privind reprezentarea documentelor n algoritmi de clustering
84

Fig. 4.30 HAC - acurateei pentru NEWST utiliznd modelul STDM i Jaccard utiliznd modelul VSM
n Fig. 4.30 prezint comparativ acurateea obinut de cele mai bune metrici pentru
modelul STDM respectiv, pentru modelul VSM. Pentru modelul STDM s-a ales metrica care a
obinut cele mai bune rezultate i aceasta este metrica introdus de noi NEWST iar pentru
reprezentarea VSM am ales metrica Jaccard. Valorile prezentate reprezint media obinut de
cele dou metrici NEWST i Jaccard pe seturile S01-S07 cu stemming i fr stemming.
n Fig. 4.31 prezint comparativ rezultatele scorului F-measure obinute de cele dou
metrici comparate n Fig. 4.30 pentru modelele de reprezentare STDM respectiv VSM. Valorile
reprezentate sunt calculate ca medii ale valorilor obinute pentru scorul F-measure pe seturile de
date cu stemming i fr stemming de ctre metrica NEWST i Jaccard.


Fig. 4.31 HAC - Media scorului F-measure pentru NEWST utiliznd modelul STDM i
Jaccard utiliznd modelul VSM
Se constat o mbuntire important a rezultatului clusteringului folosind modelul STDM.
n figura 4.32 prezint diferena dintre rezultatele obinute utiliznd modelul STDM i modelul
VSM.
1
0
0
.
0
0
%

9
9
.
4
2
%

9
5
.
5
1
%

7
7
.
4
0
%

7
6
.
1
7
%

8
4
.
4
8
%

7
7
.
6
5
%

8
7
.
2
3
%

5
6
.
6
2
%

4
3
.
8
6
%

5
2
.
8
8
%

5
6
.
7
8
%

3
2
.
3
8
%

6
7
.
2
4
%

5
6
.
9
8
%

5
2
.
3
9
%

0 %
10 %
20 %
30 %
40 %
50 %
60 %
70 %
80 %
90 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e

e

Seturi de date
Acurateea medie NEWST i Jaccard cu HAC
Acuratee NEWST Acuratee Jaccard
1
.
0
0
0

0
.
9
0
2

0
.
8
9
0

0
.
8
3
6

0
.
6
8
1
0
.
8
5
8

0
.
8
3
8

0
.
8
5
8

0
.
6
4
1

0
.
4
5
9

0
.
6
1
2

0
.
5
5
1

0
.
3
7
7

0
.
5
2
9

0
.
5
5
0

0
.
5
3
1

0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-Measure medie NEWST i Jaccard cu HAC
NEWST Jaccard
Cercetri privind reprezentarea documentelor n algoritmi de clustering
85

Fig. 4.32 HAC - mbuntirea acurateei medie pentru NEWST vs. Jaccard
Ca i n cazul utilizrii algoritmului HAC mpreun cu modelul STDM i n cazul
algoritmului k-Medoids, utilizarea modelului STDM a mbuntit rezultatele clusteringului.
n Fig.4.33 respectiv Fig. 4.34 prezentm valorile obinute pentru acuratee respectiv
scorul F-measure pentru seturile de date S01-S07 obinute de metrica NEWST i modelul STDM
i metrica Jaccard i modelul VSM.

Fig. 4.33 k-Medoids Acurateea obinut pentru cele dou tipuri de reprezentri STDM (cu NEWST) i
VSM (cu Jaccard)

Fig. 4.34 K-Medoids F-measure obinut pentru cele dou tipuri de reprezentri STDM (cu NEWST) i VSM
(cu Jaccard)
43.38%
55.56%
42.63%
20.62%
43.78%
17.24%
20.67%
34.84%
0 %
10 %
20 %
30 %
40 %
50 %
60 %
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e
a

a
c
u
r
a
t
e

e
i

Seturi de date
mbuntirea acurateei pentru NEWST vs. Jaccard - HAC
Diferena
8
8
.
7
4
%

8
8
.
8
9
%

8
6
.
5
4
%

7
7
.
9
7
%

7
5
.
1
3
%

8
7
.
9
3
%

6
8
.
9
9
%

8
4
.
2
0
%

8
9
.
2
0
%

8
6
.
8
4
%

8
1
.
4
1
%

7
5
.
1
4
%

7
5
.
7
7
%

6
4
.
6
6
%

6
0
.
8
9
%

7
9
.
1
6
%

0 %
20 %
40 %
60 %
80 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e

e

Seturi de date
Acurateea pentru NEWST i Jaccard cu k-Medoids
NEWST Jaccard
0
.
8
9
2

0
.
8
9
0

0
.
8
3
9

0
.
6
6
2

0
.
6
5
1

0
.
8
8
8

0
.
5
3
4

0
.
8
0
3

0
.
9
0
7

0
.
8
7
9

0
.
7
5
8

0
.
6
5
3

0
.
6
5
2

0
.
5
1
5

0
.
5
0
5

0
.
7
2
9

0.0
0.2
0.4
0.6
0.8
1.0
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
F-measure NEWST vs. Jaccard cu k-Medoids
NEWST Jaccard
Cercetri privind reprezentarea documentelor n algoritmi de clustering
86
n Fig.4.35 se prezint diferena acurateei dintre modelul STDM i VSM precum i
mbuntirea medie pe toate seturile adus de utilizarea modelului STDM pentru algoritmul k-
Medoids

Fig. 4.35. mbuntirea acurateei prin utilizarea modelului STDM cu k-Medoids.
n cazul utilizrii algoritmului k-Medoids, modelul de reprezentare STDM mpreun cu
metrica NEWST a obinut rezultate superioare modelului VSM cu metrica Jaccard.
mbuntirea de 5.04% (Fig. 4.35) adus de metrica NEWST pentru algoritmul k-Medoids este
mai modest dect mbuntirea de 34.84% (Fig. 4.32) adus de metrica NEWST pentru
algoritmul HAC.
n continuare prezint comparativ rezultatele obinute de metrica NEWST i OLDST
pentru algoritmul HAC (NEWST avnd cele mai bune rezultate pe acest algoritm) i pentru
algoritmul k-Medoids (NEWST avnd i n acest caz cele mai bune rezultate pe acest algoritm).

Fig. 4.36 Compararea acurateei obinute de msurile NEWST i OLDST pentru algoritmul HAC i k-
Medoids.
Din figura 4.36 se poate observa c algoritmul HAC mpreun cu metrica NEWST i
reprezentarea STDM obine cea mai bun acuratee a clasificrii. Doar n cazul setului S06 care
este un set care conine ase clase dar cu puine documentele algoritmul k-Medoids obine
-0.46%
2.05%
5.13%
2.82%
-0.64%
23.28%
8.10%
5.04%
-5 %
0 %
5 %
10 %
15 %
20 %
25 %
S01 S02 S03 S04 S05 S06 S07 Media

m
b
u
n

i
r
e

a
c
u
r
a
t
e

e

Seturi de date
mbuntire a acurateei NEWST vs. Jaccard cu K-Medoids
1
0
0
.
0
0
%

9
9
.
4
0
%

6
5
.
3
8
%

9
6
.
0
5
%

7
2
.
0
2
%

7
0
.
6
9
%

7
6
.
0
0
%

8
5
.
8
4
%

1
0
0
.
0
0
%

9
9
.
4
2
%

9
5
.
5
1
%

7
7
.
4
0
%

7
6
.
1
7
%

8
4
.
4
8
%

7
7
.
6
5
%

8
7
.
2
3
%

9
2
.
0
5
%

7
8
.
6
5
%

8
2
.
3
7
%

4
6
.
8
9
%

7
8
.
2
4
%

7
2
.
4
1
%

6
3
.
1
3
%

7
3
.
3
9
%

8
8
.
7
4
%

8
8
.
8
9
%

8
6
.
5
4
%

7
7
.
9
7
%

7
5
.
1
3
%

8
7
.
9
3
%

6
8
.
9
9
%

8
2
.
0
3
%

0 %
10 %
20 %
30 %
40 %
50 %
60 %
70 %
80 %
90 %
100 %
S01 S02 S03 S04 S05 S06 S07 Media
A
c
u
r
a
t
e
t
e

Seturi de date
Mediile pe seturi pentru acuratee OLDST-NEWST
HAC-OLDST HAC-NEWST kMedoids-OLDST kMedoids-NEWST
Cercetri privind reprezentarea documentelor n algoritmi de clustering
87
rezultate mai bune deoarece documentele nu sunt semantic suprapuse. n figura 4.37 prezint
scorul F-measure obinut de NEWST n cazul algoritmilor HAC i k-Medoids.

Fig. 4.37 Compararea scorului F-measure obinut de msurile NEWST i OLDST pentru algoritmul HAC i
k-Medoids.
i n cazul scorului F-measure putem concluziona c metrica NEWST n reprezentarea STDM cu
algoritmul HAC pentru documente care sun semantic mai asemntoare obine rezultate bune.
n tabelele 4.21 i 4.22 voi prezenta timpii de execuie necesari pentru algoritmul HAC
single link pentru seturile de date S01-S07 pe un sistem Intel(R) Core2 Duo cu procesoare T6600
la 2,20GHz, 4GB DRAM i sistem de operare Windows7 Home Premium liceniat. Timpii din
tabel sunt msurai n secunde.

Model Metrica S01 S02 S03 S04 S05 S06 S07
STDM NEWST 66.7 92.6 68.6 97.5 116.9 6.5 146.3
OLDST 66.7 92.1 68.7 95.8 116.5 6.5 122.3
VSM Jaccard 1.0 1.0 0.9 1.1 1.2 0.3 1.0
Euclidian 4.3 5.7 4.4 5.8 7.2 0.5 6.1
Canberra 1.0 1.2 1.0 1.3 1.5 0.3 1.3
Tabelul 4.21 Rezultate obinute pentru timpii de execuie pe algoritmul HAC pe seturi cu stemming

Model Metrica S01 S02 S03 S04 S05 S06 S07
STDM NEWST 67.9 85.6 67.3 93.5 117.0 6.5 96.1
OLDST 66.3 87.7 68.3 93.8 116.0 6.6 96.2
VSM Jaccard 0.9 1.2 0.9 1.2 1.3 0.5 1.3
Euclidian 4.6 6.2 4.8 6.8 8.5 0.5 6.9
Canberra 1.1 1.4 1.1 1.4 1.8 0.3 1.4
Tabelul 4.22 Rezultate obinute pentru timpii de execuie pe algoritmul HAC pe seturi fr stemming
1
.
0
0

1
.
0
0

0
.
6
8

0
.
9
2

0
.
6
6

0
.
6
9

0
.
8
1

0
.
8
2

1
.
0
0

0
.
9
0

0
.
8
9

0
.
8
4

0
.
6
8

0
.
8
6

0
.
8
4

0
.
8
6

0
.
9
2

0
.
7
9

0
.
6
9

0
.
4
1

0
.
6
8

0
.
6
4

0
.
5
1

0
.
6
6

0
.
8
9

0
.
8
9

0
.
8
4

0
.
6
6

0
.
6
5

0
.
8
9

0
.
5
3

0
.
7
7

0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
S01 S02 S03 S04 S05 S06 S07 Media
F
-
m
e
a
s
u
r
e

Seturi de date
Mediile pe seturi pentru acuratee OLDST-NEWST
HAC-OLDST HAC-NEWST kMedoids-OLDST kMedoids-NEWST
Cercetri privind reprezentarea documentelor n algoritmi de clustering
88

Fig.4.38. Timpii de execuie pentru algoritmul HAC pe seturile de date S01-S07 cu stemming.

n figura 4.38 sunt prezentai timpii de execuie ai algoritmului HAC pentru seturile de
date S01-S07 la care am aplicat stemming. Se poate observa c timpii obinui de algoritm
utiliznd msurile Jaccard, Canberra i euclidian cu reprezentarea VSM se ncadreaz n
intervalul 0.3 secunde pn la 7.2 secunde. n cazul utilizrii distanei euclidiene, algoritmul este
puin mai lent.
n cazul utilizrii distanelor NEWST i OLDST mpreun cu reprezentarea STDM,
timpii cresc semnificativ ajungnd s depeasc dou minute. Acest lucru era de ateptat avnd
n vedere c se construiesc n(n-1)/2 arbori. Se poate observa c timpul de execuie pentru aceste
dou distane este influenat de numrul de documente i mai puin de numrul de clusteri
rezultai. Se poate observa c n cazul setului S06, care este un set mic, algoritmul obine timpi
foarte buni chiar dac sunt ase clusteri de calculat. n momentul de fa, chiar dac algoritmul
HAC cu reprezentarea STDM i distana NEWST obine rezultatele cele mai bune din punct de
vedere al acurateei, din pcate necesit un timp de execuie mai mare. O implementare
optimizat ar reduce substanial timpii de calcul i l-ar face utilizabil i n clusteringul online.
Dezvoltri ulterioare ar trebui s acorde atenie i acestui aspect.

Fig. 4.39 - Timpii de execuie pentru algoritmul HAC pe seturile de date S01-S07 fr stemming.
n Fig. 4.39 sunt prezentai timpii de execuie pentru algoritmul HAC pe seturile de date
S01-S07 la care nu s-a mai aplicat algoritmul de stemming. Se observ c timpii de execuie
cresc, dar nu semnificativ. Celelalte tendine, observate pe seturile de date unde am aplicat
0
20
40
60
80
100
120
140
160
S01 S02 S03 S04 S05 S06 S07
S
e
c
u
n
d
e

Seturi de date
Timpi de execuie n secunde pentru Algoritmul HAC cu stemming
NEWST
OLDST
Jaccard
Euclidian
Canberra
0.0
20.0
40.0
60.0
80.0
100.0
120.0
S01 S02 S03 S04 S05 S06 S07
S
e
c
u
n
d
e

Timpi de execuie n secunde pentru algoritmul HAC fr stemming
NEWST
OLDST
Jaccard
Euclidian
Canberra
Cercetri privind reprezentarea documentelor n algoritmi de clustering
89
algoritmul de stemming, se pot observa i n cazul de fa. Algoritmul cu reprezentarea STDM
este i n acest caz mai lent.
Pentru algoritmul k-Medoids, timpii de execuie cresc semnificativ, ajungnd n cazul
setului de date S07 (att cu stemming ct i fr stemming) pentru reprezentarea STDM i
metricile NEWST i OLDST la dou ore. Pentru reprezentarea VSM am obinut timpi mai mici
dar i acetia se situeaz n jurul valorii de o or. Acest fapt se poate explica prin implementarea
PAM utilizat pentru algoritmul k-Medoids. Reamintim faptul c, n implementarea PAM se
calculeaz toate distanele fa de fiecare medoid n parte. n implementarea k-Medoid clasic se
calculeaz n primul pas apartenena documentelor la medoizii alei iar n al doilea pas alegerea
medoizilor se face alegnd cel mai apropiat document de centrul de greutate al clusterului format
anterior, astfel ajungndu-se mult mai repede la situaia cnd medoizii nu se mai modific. n
implementarea PAM se ia iterativ fiecare submulime de documente care poate forma un set
complet de medoizi i se evalueaz pentru a vedea dac d rezultatele cele mai bune. La sfrit
se pstreaz setul de documente care ofer cea mai bun evaluare.
Unele dintre rezultatele obinute au fost prezentate i n [Mora11].
Algoritmi de clasificare. Paradigma actual
90
Partea a III-a. Clasificare
5 Algoritmi de clasificare. Paradigma actual
5.1 Generaliti
Clasificarea datelor reprezint procesul prin care unui tuplu i se atribuie una sau mai
multe etichete dintr-o mulime de etichete dat. Clasificarea este un proces n dou etape. n
prima etap se va construi un clasificator care va descrie un set predefinit de date sau concepte.
Aceast etap se numete i etap de nvare sau etap de antrenare, n care un algoritm de
clasificare construiete clasificatorul nvnd pe baza unor tupluri de date (set de antrenament)
i etichetele asociate claselor acestora. Un tuplu X este reprezentat de un vector de atribute n-
dimensional
1 2
( , ,..., )
n
X x x x = care reprezint msurtori efectuate n cadrul tuplului asupra a n
atribute A
1
, A
2
, ..., A
n
. Se presupune c fiecare tuplu aparine unei clase, care la rndul ei, are o
etichet de clas. Eticheta clasei este o valoare discret i nu este ordonat. n contextul
clasificrii, tuplurile se numesc exemple, instane sau obiecte. Deoarece eticheta clasei este dat
pentru fiecare tuplu n etapa de antrenare, acest pas este un caz de nvarea supervizat.
Astfel, prima etap a procesului de clasificare poate fi vzut ca i nvarea unei funcii
de mapare y=f(X) care poate prezice pentru un tuplu X dat eticheta y a unei clase. Aceast
mapare este reprezentat sub forma unor reguli de clasificare, arbori de decizie sau formule
matematice.
A doua etap n procesul de clasificare o reprezint utilizarea modelului elaborat n prima
etap, n clasificarea unui set de test. Pentru a msura eficiena clasificatorului trebuie efectuat o
aproximare a acurateei de clasificare a acestuia. Dac am msura acurateea de clasificare pe
baza setului de antrenament valorile obinute ar fi foarte optimiste iar efectul de over-fit poate
aprea (supranvare algoritmul nva unele anomalii existente n setul de antrenament care
nu pot fi aplicate cazului general). Din acest motiv se creeaz un set de test care const din
tupluri i clasele asociate acestora, altele dect cele prezente n setul de antrenament. Astfel,
acurateea clasificatorului este calculat ca procentaj al numrului de tupluri corect clasificate de
ctre clasificator. Metrici pentru evaluarea acurateei clasificatorilor au fost prezentate n
seciunea 2.6.
n seciunile urmtoare voi prezenta o taxonomie posibil pentru algoritmii de clasificare,
prezentnd pentru fiecare categorie clasificatorii reprezentativi pentru acea categorie.
5.2 Algoritmi stohastici
Cel mai reprezentativ clasificator stohastic este clasificatorul bayesian. El prezice cu o
anumit probabilitate apartenena la o clas dat, cum ar fi de exemplu, probabilitatea ca un
document s fac parte dintr-o anumit clas dat. Clasificarea bayesian se bazeaz pe teorema
Prediction is very difficult, especially if it's about the future.
Niels Bohr
Algoritmi de clasificare. Paradigma actual
91
lui Bayes, i este descris n seciunea 5.2.1. Studiile care au comparat algoritmi de clasificare au
identificat clasificatorul bayesian simplu cunoscut sub numele de clasificator bayesian naiv
(Nave Bayes Classifier) ca avnd, n practic, performane bune atunci cnd este aplicat la seturi
de date mari, cum este cazul de fa, unde exist multe documente, fiecare reprezentat prin multe
atribute.
Clasificatorul bayesian simplu pleac de la premisa naiv c atributele pentru o anumit
clas sunt independente unele de altele. Aceast prezumie se numete independen condiional
de clas. n cadrul acestui clasificator se pornete de la aceast prezumie, pentru a simplifica
calculele.
5.2.1 Clasificarea bayesian
Fie Y o variabil pentru o clas (categorie) care poate lua valorile {y1, y2, ..., y
m
}.
Fie X o instan a unui vector cu n atribute <x
1
, x
2
, ..., x
n
> i x
k
o valoare posibil pentru
X i x
ij
o valoare posibil pentru x
i
. Pentru clasificarea de tip Bayes calculm probabilitile
( )
i k
P Y y X x = = pentru 1, i m = . Asta ar nsemna calcularea tuturor probabilitilor pentru
fiecare categorie, pentru fiecare instan posibil din spaiul de instane ceea ce este foarte greu
de calculat pentru un set rezonabil de date.
Practic, pentru a determina categoria lui x
k
, trebuie s determinm pentru fiecare y
i

probabilitatea:
( ) ( | )
( | )
( )
i k i
i k
k
P Y y P X x Y y
P Y y X x
P X x
= = =
= = =
=
(5.1)
Probabilitatea ( )
k
P X x = poate fi determinat, deoarece mulimea categoriilor este
complet i disjunct. Rezult imediat relaia de echilibru de mai jos:
1 1
( ) ( | )
( | ) 1
( )
m m
i k i
i k
i i
k
P Y y P X x Y y
P Y y X x
P X x
= =
= = =
= = = =
=

(5.2)
aadar:
1
( ) ( ) ( | )
m
k i k i
i
P X x P Y y P X x Y y
=
= = = = =

(5.3)
Probabilitatea ( )
i
P Y y = poate fi uor aproximat avnd n vedere faptul c dac n
i

exemple din D se regsesc n y
i
atunci ( )
i
i
n
P Y y
D
= = , unde D reprezint mulimea
documentelor din setul de antrenament.
Probabilitatea ( | )
k i
P X x Y y = = trebuie estimat (deoarece exist 2
n
posibile instane
pentru a calcula probabilitatea). De aceea, dac presupunem c atributele unei instane sunt
independente (condiional independente), atunci:
1 2
1
( | ) ( , , | ) ( | )
n
n i
i
P X Y P X X X Y P X Y
=
= =
[
(5.4)
Astfel, trebuie s calculm doar ( | )
i
P X Y pentru fiecare pereche posibil "valoare
atribut"-"categorie".
Dac Y i toate X
i
sunt binare, atunci trebuie s calculm doar 2n valori:
( )
i
P X true Y true = = i ( )
i
P X true Y false = =

pentru fiecare
i
X
( ) ) 1 ( )
i i
P X false Y P X true Y = = =
fa de 2
n
valori, dac nu am presupune independena atributelor.
Algoritmi de clasificare. Paradigma actual
92
Practic, dac setul de date D conine n
k
exemple din categoria y
k
i
k
ij
n din aceste n
k

exemple au a j-a valoare pentru atributul X
i
pe x
ij
atunci estimm c:
( | )
k
ij
i ij k
k
n
P X x Y y
n
= = = (5.5)
Aceast estimare poate genera erori la seturi foarte mici de date, deoarece un atribut rar
ntr-un set de antrenament face ca X
i
s fie fals n setul de antrenament
( ) 0
k i k
y P X true Y y = = = .
Dac X
i
=true ntr-un exemplu de test, atunci ( ) 0
k k
y P X Y y = = i
( ) 0
k k
y P Y y X = =
Pentru a evita acest lucru, se utilizeaz uniformizarea (normalizarea) lui Laplace. Aceast
normalizare pleac de la premisa c fiecare atribut are o probabilitate p observat ntr-un
exemplu virtual de dimensiune m.
Astfel,
( | )
ijk
i ij k
k
n mp
P X x Y y
n m
+
= = =
+
(5.6)
unde p este o constant, de exemplu, pentru atribute binare p=0,5
Pentru clasificarea de tip text, clasificatorul Bayes genereaz pentru un document dintr-o
anumit categorie c
i
, reprezentat printr-un "bagaj de cuvinte", dintr-un vocabular V = {w
1
,
w
2
,w
m
}, probabilitatea P(w
j
|c
i
). Pentru normalizarea Laplace, se presupune existena unei
distribuii uniforme a tuturor cuvintelor (adic, ar fi echivalentul unui exemplu virtual n care
fiecare cuvnt apare doar o singur dat). Aadar se poate scrie:
1
p
V
= i m = |V|
5.2.2 Antrenarea clasificatorului Bayes
Probabilitatea ca un document Y s aparin clasei X
i
se calculeaz dup cum urmeaz:
1
( ) ( ) ( )
n
i i j i
j
P X Y P X P y X
=
[
(5.7)
unde ( )
j i
P y X este probabilitatea condiional ca termenul y
j
s apar ntr-un document al
clasei X
i
. Interpretm ( )
j i
P y X ca fiind o msur a contribuiei lui y
j
, n stabilirea faptului c X
i

este clasa corect.
( )
i
P X este probabilitatea apariiei unui document n clasa X
i
.
1 2
, ,...,
j
y y y sunt termeni din documentul Y i reprezint o submulime a vocabularului
utilizat pentru clasificare, iar n reprezint numrul termenilor.
n clasificarea documentelor text, scopul nostru este de a gsi cea mai bun clas pentru
respectivul document. n clasificarea Naive Bayes, cea mai bun clas se stabilete dup metoda
maximului aposteriori (MAP) i o notm cu
map
c :
1 1
1
argmax ( ) argmax ( ) ( )
n
map i m i i m i j i
j
c P X Y P X P y X
< < < <
=
= =
[
(5.8)
Am utilizat notaia P pentru P, deoarece nu cunoatem exact valorile parametrilor ( )
i
P X
i ( )
j i
P y X ; acetia pot fi ns estimai pe baza setului de antrenament.
n cazul de fa, estimarea parametrilor ( )
i
P X i ( )
j i
P y X se face dup cum este descris
n continuare. Pentru antrenarea clasificatorului, fie V vocabularul de cuvinte al documentelor
coninute n D i pentru orice categorie X
i
e X fie D
i
un subset de documente din D din categoria
X
i
, atunci:
Algoritmi de clasificare. Paradigma actual
93
( )
i
i
D
P X
D
= (5.9)
Fie Y
i
concatenarea tuturor documentelor din D
i
i n
i
numrul apariiilor tuturor cuvintelor
din Y
i
. Pentru fiecare cuvnt y
j
e V fie n
ij
numrul apariiilor cuvntului y
j
n Y
i
. Se poate scrie:
( 1)
( )
( )
ij
j i
i
n
P y X
n V
+
=
+
(5.10)
Parametrii luaii n considerare pentru cazul nostru sunt:
Numrul total de atribute n = 1309, numrul total de documente din setul de antrenare
D= 4702, numrul total de clase m = 16 i de asemenea, numrul total de documente existente n
fiecare clas D
1
, ... D
16
.
De exemplu, din setul de date de antrenament lum clasa C18 (X
1
=C18) care conine 328
de documente. Algoritmul utilizeaz uniformizarea Laplace i probabilitatea clasei C18 se
calculeaz astfel:
1
. 1 328 1
( ) 0, 069732938
. . 4702 16
Nr documente
P X
Nr totaldocumente Nr clase
+ +
= = =
+ +
(5.11)
Pentru fiecare din cele 1309 atribute calculm probabilitile n raport cu fiecare clas n
parte.
Atribute X
1
(C18) X
2
(C15) ... X
16
(m11)
Nr.
apariii
1
( )
j
P y X
Nr.
apariii
2
( )
j
P y X
Nr.
apariii
16
( )
j
P y X
y
1
50 12 1
y
2
12
...
y
1309
0
Tabel 5.1 Calcularea probabilitilor pentru fiecare trstur (1309)
Probabilitatea condiional ca un atribut s fie ntr-o anumit clas se calculeaz astfel:
1
1 1
1
. 1 50 1
( ) 0, 013147718
. . . . 2570 1309
Nr apariii y
P y X
Nr total cuv dinX Nr cuv dinY
+ +
= = =
+ +

.a.m.d.
5.2.3 Testarea clasificatorului Bayes
Fie D
1
un document de test care conine
1
D
n termeni. n cazul nostru, pentru un document
care trebuie clasificat, extragem toate atributele i extragem din tabelul prezentat mai sus
probabilitile condiionale.
n ecuaia (5.8) din 5.2.2 trebuie calculate multe probabiliti condiionale i datorit
faptului c unele pot fi foarte mici, prin nmulire se poate ajunge la floating point underflow.
Pentru a evita acest fapt, ne folosim de binecunoscuta proprietate a logaritmului conform creia:
log( ) log log xy x y = + (5.12)
Deoarece funcia logaritmic este monoton, logaritmarea ecuaiei (5.8) nu va modifica
rezultatul alegerii clasei.
Astfel,
1
1
argmax log ( ) log ( )
n
map i m i j i
j
c P X P y X
< <
=
(
= +
(

(5.13)
Algoritmi de clasificare. Paradigma actual
94
Ecuaia (5.13) are o interpretare simpl: fiecare parametru condiional log ( )
j i
P y X este o
pondere care arat ct de bun este un "indicator" y
j
pentru X
i
. Similar probabilitatea log ( )
i
P X
este o pondere care indic frecvena relativ a clasei c. Suma acestora este o msur a evidenei
ca un document s aparin unei clase. Ecuaia (5.13) alege cea mai semnificativ clas.
Astfel, vom obine pentru fiecare clas o valoare (care va fi negativ, deoarece
logaritmm o valoare subunitar) i alegem clasa cu valoarea cea mai mare, adic cea mai
aproape de valoarea 0. De exemplu, pentru fiierul nostru de test obinem urmtoarele valori
pentru fiecare clas n parte:
Document: TestFile1578
Results: c18(-366.59583445019484)
c15(-277.3757195772894)
c11(-393.7555314343488)
c14(-376.69712554934097)
c22(-405.2708070760941)
gcat(-390.2472558128614)
c33(-393.06805295995537)
c31(-379.5501501924242)
c13(-397.21992866728175)
c17(-371.92813590774523)
c12(-398.6571293708641)
c21(-387.3768662210122)
c23(-403.69793168505237)
c41(-409.92000232701463)
ecat(-390.18163176978925)
m11(-395.70584000569795)
Correct class: 1 (c15), Predicted class: 1 (c15)
5.2.4 Rezultate obinute cu clasificatorului Bayes
Am testat clasificatorul naiv Bayes (NB) pe un sistem cu procesor AMD X2 Turion la
1,7GHz i 3 GB DRAM. Pentru validarea datelor de test, am utilizat metoda "n-Fold
Crossvalidation". Am ales n=10, ceea ce nseamn c setul de date existent se va mpri n 10
submulimi disjuncte, fiind utilizate 9 submulimi pentru antrenament i a 10-a submulime
neutilizat la antrenare s fie folosit la testare (evaluare). Aceast operaie se execut de 10 ori,
astfel nct toate submulimile alese vor fi utilizate o singur dat n testarea clasificrii. De
asemenea, pentru a urmri i acurateea nvrii, am ales procente diferite din datele de intrare
care vor fi folosite pentru antrenarea clasificatorului astfel: 0%, 1%, 5%, 10%, 20%, 30%, 40%,
50%, 60%, 70%, 80%, 90% i 100%. n figura Fig.5.1 prezint rezultatele obinute.

Fig. 5.1 Acurateea clasificrii i curba de nvare a clasificatorului Bayes
6
.
6
4
%

5
7
.
1
6
%

6
4
.
5
2
%

6
7
.
5
1
%

7
1
.
1
0
%

7
3
.
5
0
%

7
4
.
3
2
%

7
5
.
2
8
%

7
5
.
8
9
%

7
6
.
3
2
%

7
6
.
8
2
%

7
7
.
0
8
%

7
7
.
2
3
%

0 %
10 %
20 %
30 %
40 %
50 %
60 %
70 %
80 %
90 %
100 %
0% 1% 5% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
A
c
u
r
a
t
e
t
e

d
e

c
l
a
s
i
f
i
c
a
r
e

% documente selectate pentru antrenare
Media acurateei de clasificare
pe seturile de antrenare
Media acurateei de clasificare
pe seturile de testare
Algoritmi de clasificare. Paradigma actual
95
n graficul prezentat n Fig. 5.1 pe axa x sunt reprezentate numrul de documente utilizate
succesiv pentru antrenare. Valorile corespund procentajelor: 0%, 1%, 5%, 10%, 20%, 30%, 40%,
50%, 60%, 70%, 80%, 90% i 100%. Pe axa y sunt reprezentate valorile acurateei la testare i
respectiv la antrenare.
n acest experiment s-au utilizat setul de antrenament A1 i setul de testare T1 (7053 de
documente din baza de date Reuters) mpreun, urmnd ca pentru mprire n date de antrenare
i testare s se utilizeze metoda n-Fold Crossvalidation. Ne propunem s utilizm acest
clasificator n clasificarea documentelor din setul de testare T2, adic testm dac poate s
clasifice corect documente care nu au putut fi clasificate corect de clasificatorii de tip SVM
(Support Vector Machine) ntr-o tez de doctorat anterioar [Mor08]. Seturile A1, T1, T2 au fost
prezentate n seciunea 2.7.1.
Astfel, se va utiliza setul de antrenare A1 i pentru testare se va utiliza setul T2 care este
format doar din 136 documente pe care clasificatorul Bayes din [IR] le mparte n 10 subseturi.
n medie, rezultatele clasificrii sunt mai bune dect rezultatele obinute cu SVM (care a obinut
maxim 18% pe cnd Bayes a obinut un maxim de 33.56%). Deoarece am folosit implementarea
propus n pachetul [IR] pentru algoritmul Bayes, (acesta l voi numi n continuare BNN Bayes
Naive Nemodificat) fr a face alte modificri, i deoarece acesta alege aleator subseturile pentru
antrenare i testare, nu putem specifica n cazul clasificatorului Bayes numrul de atribute alese
din cele 1306 prezentate la intrare, i nici metoda de selecie folosit.


Fig. 5.2 Utilizarea clasificatorului Bayes n clasificarea unor documente care nu au fost clasificate corect de
clasificatorul SVM (T2)
n Fig. 5.2 sunt prezentate rezultatele de clasificare ca i medie pentru cele zece situaii
descrise. Testarea acestui clasificator s-a fcut pentru a vedea dac poate furniza rezultate bune
pe seturile de date prezentate A1 i T1 respectiv A2 i T2 i pentru a fi ulterior inclus ntr-un
metaclasificator care este prezentat n capitolul 6. Analiznd rezultatele, am considerat c acest
clasificator poate fi inclus n cercetrile ulterioare, mai ales c, dac l comparm cu rezultatele
obinute de clasificatorul SVM care sunt prezentate n seciunea 6.1; acest clasificator obine
rezultate mai bune dect clasificatorul SVM pe setul T2.
3
.
1
7
%

2
4
.
1
4
%

1
8
.
4
4
%

1
0
.
6
9
%

1
0
.
2
8
%

2
0
.
3
1
%

2
9
.
0
8
%

2
9
.
7
7
%

3
3
.
5
6
%

3
1
.
6
4
%

3
0
.
7
3
%

3
1
.
8
9
%

0 %
10 %
20 %
30 %
40 %
50 %
60 %
70 %
80 %
90 %
100 %
0
(0%)
2
(5%)
16
(10%)
31
(20%)
46
(30%)
62
(40%)
72
(50%)
83
(60%)
98
(70%)
113
(80%)
126
(90%)
136
(100%)
A
c
u
r
a
t
e

e

d
e

c
l
a
s
i
f
i
c
a
r
e

nr. documente selectate pentru antrenare
Media acurateei pe
seturiele de antrenare
Media acuratetei pe
seturile de testare
Algoritmi de clasificare. Paradigma actual
96
5.3 Algoritmi de nvare bazai pe Backpropagation
Cercettorii din multe domenii tiinifice proiecteaz reele neuronale artificiale pentru a
rezolva o varietate de probleme cum ar fi: recunoaterea de pattern-uri, predicie, optimizare i
control etc. Abordri convenionale au fost propuse pentru rezolvarea acestor probleme. De
asemenea, pot fi aplicate cu succes n foarte multe domenii care nu sunt suficient de flexibile
pentru utilizarea altor metode. n acestea, reelele artificiale neuronale furnizeaz o alternativ
viabil [Hayk94].
n lungul curs al evoluiei, creierul uman a dobndit multe trsturi care nu se regsesc n
modelul von Neumann sau se regsesc mult prea timid n calculatoarele paralele moderne
[Vint00]. Unele dintre aceste trsturi ar fi (conform [Jain96]).
- paralelism masiv
- reprezentare i procesare distribuit
- abiliti de nvare
- abiliti de generalizare
- adaptabilitate
- procesarea informaiei pe baz de context
- toleran la erori
- consum redus de energie
Calculatoarele numerice actuale domin net omul n ceea ce privete prelucrrile
numerice. Totui, omul poate fr efort s rezolve unele probleme complexe de percepie i
recunoatere a formelor cu o vitez incomparabil superioar celor mai performante calculatoare.
Aceasta diferen provine din arhitectura complet diferit fa de cea a mainii von Neuman.
Inspirate din reelele neuronale biologice, Reelele Neuronale Artificiale (RNA) sunt
sisteme de calcul cu paralelism masiv constituite dintr-un numr mare de elemente de procesare
simple - numite neuroni - cu multe interconexiuni ntre ele. Modelele propuse pentru RNA
respect anumite principii de organizare presupuse ca fiind folosite n creierul uman.
n evoluia RNA exist trei perioade distincte. Prima are loc n anii '40 prin munca de
pionierat a lui McCulloch i Pitts. A doua perioad n anii '60 are la baz teorema lui Rosenblatt
de convergen a perceptronului i demonstrarea de ctre Minsk i Papert a limitrilor
perceptronului simplu (ex. imposibilitatea nvrii unor seturi de date neseparabile liniar).
ncepnd doar cu anii '80, domeniul RNA i-a redobndit interesul. Acesta are la baz
introducerea noiunii de energie n reeaua Hopfield n 1982 i, main ales, gsirea algoritmului de
nvare cu retropropagarea erorii (Backpropagation) pentru reele cu propagare nainte
(feedforward) multistrat, propus iniial de Paul Werbos n 1974 (U. Berkeley) i redescoperit i
popularizat de Rumelhart et al n 1986 [Maca03].
5.3.1 Modelul neuronului artificial
Modelul neuronului artificial [Wass89], [Kung93] are la baz modelul propus de
McCulloch i Pitts i generalizat apoi n multe feluri. Prezentm n continuare cea mai ntlnit
variant.
Algoritmi de clasificare. Paradigma actual
97

E
x
n


x
2

w
2


u
w
n


w
1


x
1


S
y

Fig. 5.3 Modelul neuronului artificial
Acest neuron artificial calculeaz suma ponderat a n semnale de intrare, adaug o
valoare numit prag i apoi, aplic acestei valori o funcie de activare genernd ca ieire o
valoare cuprins n intervalul (0,1)
S x w
i i
i
n
= +
=

u
1
y f S = ( ) (5.14)
n aceste relaii, x
i
reprezint semnalul intrrii i i w
i
sinapsa (ponderea, tria sinaptic)
asociat acestei intrri. Termenul u reprezint o valoare de prag (de offset, bias), care deplaseaz
(transpune) ieirea S a neuronului. Ieirii S i se aplic o funcie de activare f, care va transpune
(normaliza) ieirea neuronului n domeniul de valori dorit.
Pentru funcia de activare cele mai ntlnite funcii sunt cele prezentate n Fig. 5.4:
a - funcia de activare treapt,
1, 0
( )
0, 0
if x
step x
if x
>
=

<


b - funcia de activare semn,

<
> +
=
0 , 1
0 , 1
) (
x if
x if
x sign
c - funcia de activare sigmoidal,
x
e
x sigmoid

+
=
1
1
) (
d - funcia de activare gaussian,
2
2
( )

2
( )
m x
Gauss x e
o

=

d c b a
1 1
-1

Fig. 5.4 Funciile de activare cele mai frecvent ntlnite
Modelul neuronului prezentat anterior, avnd funcia de activare treapt, este modelul
iniial propus de McCulloch i Pitts n 1943. Cel mai popular model al neuronului a devenit ns
cel cu funcia de activare sigmoidal care este strict monoton cresctoare, mrginit i derivabil:
f x
e
x
( ) =
+

1
1
o
(5.15)
unde o este un factor de scar lund valori strict pozitive. Pentru o tinznd la infinit
funcia sigmoid devine funcia treapt.
Algoritmi de clasificare. Paradigma actual
98
5.3.2 Arhitectura reelelor neuronale
Exist o varietate de tipuri de structuri de reele, fiecare dintre acestea rezultnd din
diferite posibiliti de calcul i n funcie de problema care trebuie rezolvat. O reea neuronal
poate fi privit ca un graf orientat ponderat, n care neuronii sunt nodurile iar arcele orientate (cu
ponderile asociate) sunt legturile ntre neuroni Din punct de vedere al construciei, reelele
neuronale se mpart n dou categorii principale: reelele feed-forward i reelele recurente.
- n reelele feed-forward (cu propagare nainte), legturile dintre neuroni sunt
unidirecionale i nu exist bucle de reacie (legturi de la un neuron de pe un strat
superior la un neuron de pe un strat inferior). n reelele feed-forward, legturile pot pleca
de la topologii arbitrare, neexistnd nici o legtur spre stratul anterior sau legturi care
sar peste un anumit strat. n aceste tipuri de reele, toi neuronii de pe un anumit strat sunt
actualizai sincron, la o anumit perioad de timp. Aceste reele sunt reele statice, ele
neavnd un comportament dinamic propriu-zis, ieirea reelei depinznd doar de valoarea
curent a intrrii nu i de valorile anterioare ale intrrii.
- Reelele recurente sunt reele n care pot exista legturi napoi, un neuron de pe un strat
superior avnd legturi cu neuroni de pe nivelurile inferioare. De asemenea, n reelele
recurente pot exista legturi care sar peste anumite straturi. n acest caz, reeaua
reprezint un graf orientat complet i are un comportament dinamic propriu-zis. n
aceast categorie se ncadreaz reelele competitive, hrile topografice ale lui Kohonen,
reeaua Hopfield, reeaua recurent Elman, maina Boltzmann i modelele ART.
5.3.3 nvarea reelelor neuronale
Capacitatea de nvare este o trstur fundamental a inteligenei. O definiie a nvrii
este dificil de dat; dar vom afirma c, n contextul RNA, nvarea const n modificarea reelei
pentru a-i adapta comportamentul la necesitile rezolvrii unei probleme. n general, sunt
modificai coeficienii de conectivitate sinaptic, uneori modificndu-se i numrul de uniti i /
sau configuraia reelei. nvarea este important prin posibilitatea de adaptare la un mediu n
schimbare (sistemele de IA clasice sunt rigide) fiind util i n cazul n care mediul nu evolueaz
dar pentru care nu dispunem de un model.
Principalul avantaj al RNA n raport cu sistemele expert clasice este acela c, n loc de a
folosi un set de reguli date de un expert uman, are loc o nvare prin exemple.
Din punct de vedere al organizrii datelor de intrare, exist dou categorii de nvare
[Bish95]:
- nvarea nesupervizat n care se prezint reelei doar datele de intrare fr a se
specifica i ieirea dorit pentru acestea, astfel c reeaua nu are nici o informaie despre
prezena sau valoarea erorii. n acest caz, reeaua este lsat s evolueze liber, urmnd ca
la sfrit s constatm rezultatul nvrii. Reeaua analizeaz corelaiile ntre datele de
intrare i organizeaz datele n categorii pe baza acestor corelaii.
- nvarea supervizat n care mulimea de exemple de antrenament este organizat sub
forma de perechi intrare-ieire, specificnd reelei la fiecare pas, care trebuie s fie
ieirea corect, urmnd ca reeaua s generalizeze datele de intrare. Ponderile sunt
modificate astfel nct reeaua s produc ieiri ct mai apropiate de rspunsul corect.
nvarea prin ntrire ("reinforcement learning") este o variant a nvrii supervizate n
care se furnizeaz reelei doar o informaie despre prezena erorii nu i a valorii propriu
zise a ei.
Algoritmi de clasificare. Paradigma actual
99
Fiecare tip de reea i modific ponderile n funcie de anumite reguli de nvare, care
depind att de tipul datelor de intrare ct i de modul de construcie al reelei. Din punctul acesta
de vedere exist patru tipuri consacrate de reguli de nvare:
- nvare prin corecia erorii;
- regula lui Boltzmann;
- regula lui Hebb;
- nvarea competitiv.
5.3.4 Reguli de nvare prin corecie a erorii (error-correction rules)
n nvarea supervizat, reeaua dispune de ieirea dorit pentru fiecare vector de intrare.
n timpul nvrii, ieirea reelei nu este de obicei egal cu aceast valoare dorit. Principiul
coreciei erorii folosete semnalul de eroare pentru modificarea ponderilor n scopul minimizrii
erorii. Relaia cea mai general de modificare a unui coeficient sinaptic w conform acestei reguli
este (evoluie n sensul invers gradientului erorii; conduce deci spre descreterea erorii):
E
w
w
c
q
c
A =
(5.16)
unde E este eroarea global (dependent de w) i q este viteza de nvare. Aceast relaie
st la baza nvrii n reelele feed-forward multistrat.
Ideea de baz este de a utiliza panta gradientului pentru a cuta n spaiul ipotezelor de
posibili vectori de ponderi pentru a gsi acele ponderi care aproximeaz cel mai bine exemplele
de antrenament. Aceast regul este important, deoarece furnizeaz bazele algoritmului
Backpropagation, care este utilizat n cazul reelelor cu mai multe uniti interconectate.
Panta gradientului caut s determine vectorul pondere care minimizeaz eroarea pornind
de la un vector pondere iniial arbitrar, care este apoi modificat repetat n pai mici. La fiecare
pas, vectorul pondere este modificat n direcia n care produce o pant descendent de-a lungul
suprafeei erorii. Acest proces continu pn cnd eroarea minim global este atins.
Regula de nvare a perceptronului simplu propus de Rosenblatt n 1962 folosete o
variant simplificat a regulii de minimizare a erorii. n acest caz avem:
( ) w d y x q A = (5.17)
n care w i x sunt vectorul ponderilor i vectorul de intrare, d este ieirea dorit i y
ieirea real.
Regula de nvare pentru reeaua Adaline (strat de perceptroni cu ieirea liniar)
cunoscut i ca Regula Widrow-Hoff are i ea la baz minimizarea erorii
) (
i i j ij
y T x w = A q
(5.18)
unde w
ij
este ponderea legturii ieirii i cu intrarea j, x vectorul de intrare, T vectorul dorit
la ieire i y vectorul ieirii reale. Se poate demonstra, c regula anterioar este o particularizare
a regulii gradientului n cazul definirii erorii conform
E T y
i i
i
N
=
=

1
2
2
1
( ) (5.19)
5.3.4.1 Perceptronul [Vint07]
Una din cele mai simple reele neurale este perceptronul (o singur celul). este
prezentat n Fig. 5.5.
Algoritmi de clasificare. Paradigma actual
100

Fig. 5.5 Calcularea ieirii perceptronului
{ }
n
x x x X ,..., ,
1 0
= , reprezint vectorul cu valorile de intrare,
{ }
n
w w w W ,..., ,
1 0
= , reprezint vectorul cu valorile ponderilor

=
+ = =
n
k
k k
x w w X W X O
1
0
) ( , reprezint ieirea
1 ( ) 0
1 ( ) 0
dac O X
Y
dac O X
+ >
=

s

, reprezint semnul la ieire.


Perceptronul poate fi considerat a fi reprezentarea unei suprafee de decizie ntr-un
hiperplan n spaiul n-dimensional al intrrilor. Ecuaia acestui hiperplan de decizie este
0 = X W
Astfel, perceptronul poate fi utilizat ca fi un clasificator binar sau un predictor (Taken =
+1 sau Not_Taken = -1). Bineneles, acest perceptron poate clasifica corect doar un set de
exemple ( X ) care sunt linear separabile. De exemplu, funcia logic XOR nu poate fi
reprezentat de un singur perceptron.
Problema principal este cum s formulm o regul de nvare pentru un perceptron
simplu, pentru a nva corect un set de vectori de antrenament pe care l vom nota cu D. Dac
considerm pentru fiecare exemplu (vector de antrenament) o regul de nvare supervizat
D d e este necesar s cunoatem ieirea corespunztoare denumit t
d
.
Dac

=
+ =
n
k
dk k d
x w w O
1
0
este ieirea real o msur comun a erorii E este:
2
1
( ) ( )
2
d d
d D
E w t O
e
=

(5.20)
Dat fiind formula pentru ) (w E suprafaa trebuie s fie ntotdeauna un paraboloid cu un
singur minim global. Bineneles, n particular w care d minimul clasific n cea mai bun
msur exemplul
dk
X , k=0,1,..,n. Gradientul ) (w E se noteaz
0
0 1
( ) , ,...,
n
k
k
n k
E E E E
E w i
w w w w
=
( c c c c
V = =
(
c c c c


(5.21)
unde
k
i sunt vectorii unitate ortogonali in spaiul n dimensional. Se tie c gradientul
specific direcia n care se produce cea mai rapid micorare a lui E. n acest caz, regula de
nvare ar fi:
W W W A + , unde ) (W E W V = A o , = rata de nvare (a un numr real mic
pozitiv). Aceasta este echivalent cu :
n k
w
E
w w
k
k k
,..., 1 , 0 ) ( , =
c
c
o
E
X
0
=1
X
1

X
2
X
n

w
0
w
1
w
2
w
n

Y
Algoritmi de clasificare. Paradigma actual
101
Dar:

e e e
=
c
c
= |
.
|

\
|

c
c
=
c
c
D d
d d dk
D d k
d
d d
D d
d d
k k
O t x
w
X W t
O t O t
w w
E
) (
) (
) ( ) (
2
1 2

n final, regula de nvare supervizat este:
n k x O t w w
D d
dk d d k k
,..., 1 , 0 ) ( , ) ( = +

e
o
(5.22)
Aceast regul se numete regula de gradient descendent sau regula delta. Implementarea
algoritmului este descris mai jos.
Initialize each W
k
to random values
(

e
n n
2
,
2

Until ), ( ) ( threshold T w E <

DO:
Initialize each 0 = A
k
W
For each pair (x
d
, t
d
), from training examples, DO:
Compute O
d

For each W
k
, DO:
dk d d k k
x O t w w ) ( + A A o
For each w
k
, DO:
k k k
w w w A + =
O idee alternativ este gsirea aproximrii gradientului descendent prin actualizarea
ponderilor incremental, urmat de calcularea erorii pentru fiecare exemplu de antrenament. O
modalitate de a implementa stohastic acest gradient descendent este s considerm eroarea
distinct:
( )
2 1
( )
2
d d d
E w t O = (5.23)
Utiliznd aleator exemplele X
d
obinem o aproximare rezonabil a

micorrii gradientului
n comparaie cu eroarea global ( ) E w
Regula stohastic pentru gradientul descendent este:
Initialize each w
k
randomly to
(

+
n n
2
,
2

Until the termination condition is met ( ( ) , .)
d d
E w T or O T etc < > , DO:
For each (x
d
, t
d
), DO:
Compute O
d

For each w
k
, do:
dk d d k k
x O t w w ) ( + o
Regula standard a gradientului descendent este consumatoare de timp datorit nsumrii
multiplelor exemple, dar se utilizeaz adesea cu o rat de nvare per exemplu mai mare dect
rata de nvare per exemplu de la regula stohastic cu gradientul incremental descendent. Dac
) (W E are multiple minime locale, gradientul stohastic poate evita n unele cazuri oprirea n
aceste minime locale deoarece utilizeaz diverse ) (W
d
E V n gsirea minimului.
Dac considerm ieirea perceptronului ) sgn( ) ( X W X O = n locul X W X O = ) ( ,
atunci aceast regul se denumete regula de antrenare a perceptronului:
( ) n k x o t w w ,..., 1 , 0 ) ( , = +
k k k
o
(5.24)
Dac exemplul de antrenament este corect clasificat, (t-o=0), nu se actualizeaz nici o
pondere. Presupunem acum o=-1 i t = +1. n acest caz, toate ponderile w
k
cu valorile pozitive

x
k

vor fi incrementate, iar celelalte ponderi w
k
vor fi decrementate. Similar pentru o = +1 and t = -1
Algoritmi de clasificare. Paradigma actual
102
toate ponderile w
k
cu valori x
k
negative vor fi incrementate iar restul ponderilor w
k
vor fi
decrementate. Ca i o regul intuitiv, dac
k
x t sgn sgn = , atunci w
k
va fi incrementat iar altfel
w
k
va fi decrementat.
5.3.5 Regula de nvare Boltzmann
Mainile Boltzmann sunt reele recurente simetrice (w
ij
= w
ji
), constnd din uniti binare.
Un subset al neuronilor reelei sunt vizibili i interacioneaz cu mediul (cei de intrare i de la
ieire) iar ceilali sunt ascuni. Starea unei ieiri este 0 sau 1 cu o anumit probabilitate:
p
e
w x
i x
T
ij j i
i
=
+

1
1
~
~
unde x =
i
j i
u (5.25)
x fiind strile celorlalte uniti, w
ij
coeficienii sinaptici, u valori de prag iar T
"temperatura". Alegerea noii stri se face n concordan cu probabilitatea p
i
.
Ponderile coeficienilor sinaptici se modific apoi conform regulii de nvare Boltzmann
Aw ij ij
ij
= < > < >
+
q ( ) (5.26)
unde q este rata de nvare, estimndu-se: <ij>
+
probabilitatea ca unitile i i j s fie
active simultan cnd unitile vizibile sunt forate la valorile dorite i <ij>
-
probabilitatea ca
unitile i i j s fie active simultan cnd unitile de ieire sunt libere.
Regula de nvare Boltzmann poate fi privit ca un caz special de nvare prin reducerea
erorii, n care eroarea nu este msurat direct, ci ca i diferen a corelaiei ntre ieiri n cele
dou moduri. Se ncearc astfel, ca reeaua s evolueze la fel att n mod forat ct i liber.
5.3.6 Regula de nvare Hebb
Una dintre cele mai vechi reguli de nvare este postulatul lui Hebb aprut n 1949 n
Organization of behavior [Hebb49]. Aceasta are la baza observaia neurobiologic:
Dac ambii neuroni legai printr-o sinaps sunt activi simultan, coeficientul
sinaptic al acestei legturi crete.
Matematic, regula lui Hebb poate fi descris astfel:
Aw y x
ij i i
=q (5.27)
unde x
i
i y
j
sunt activitile celor doi neuroni i i j conectai prin sinapsa w
ij
i q este rata
de nvare.
Regula lui Hebb este plauzibil biologic i prezint avantajul c nvarea se face n mod
local, modificarea ponderii unei sinapse depinznd doar de neuronii alturai, ceea ce faciliteaz
implementarea n circuite VLSI, att sub form digital ct i analogic.
5.3.7 Regula de nvare competitiv
Spre deosebire de nvarea bazat pe regula lui Hebb (n care mai muli neuroni pot fi
activi simultan), n cazul nvrii competitive, ntre unitile de ieire are loc o competiie pentru
activare. n final, o singur unitate va fi activ la un moment dat. Acest fenomen este cunoscut ca
nvingtorul ia totul (winner takes all).
Algoritmi de clasificare. Paradigma actual
103
Cea mai simpl reea competitiva const dintr-un singur strat de neuroni, fiecare conectat
la vectorul de intrare. Fiecare neuron i stabilete activarea, dup care, n urma unui proces de
competiie se determin un singur neuron i
*
ctigtor.
Regula de modificare a ponderilor sinaptice este:
Aw
x w i i
i i
ij
j
i j
=
=
=

q( )
*
*
*
0
(5.28)
Se observ c se modific numai vectorul ponderilor legturilor sinaptice al neuronului
ctigtor. Efectul aplicrii acestei reguli de nvare este acela c vectorul w (memorat) se
apropie de vectorul de intrare. Conform regulii de nvare competitive, reeaua va termina
nvarea (actualizarea ponderilor) doar n momentul n care rata de nvare q este 0. Un pattern
de intrare particular poate activa diferite uniti de ieire la iteraii diferite pe durata nvrii.
Aceasta duce la un comportament stabil al sistemului de nvare. Un sistem este stabil dac nici
un pattern din datele de antrenament nu-i schimb categoria dup un numr finit de iteraii de
nvare. O metod de a obine un sistem stabil este de a fora rata de nvare s descreasc
gradual pe parcursul procesului de nvare pn cnd devine 0. Aceast ngheare artificial a
nvrii cauzeaz pierderea caracteristicii numit adaptabilitate, care reprezint abilitatea unei
reele de a se adapta la noi date. Aceasta este cunoscut ca dilema stabilitate-adaptabilitate a
lui Grossberg.
5.3.7.1 Metoda Backpropagation
5.3.7.2 Perceptroni multistrat cu funcie de activare neliniar
Perceptronii cu un singur strat de parametri modificabili nu pot clasifica dect mulimi
liniar separabile de vectori de intrare. Acest lucru a fost demonstrat nc din 1969 de ctre
Minsky i Papert i a ndeprtat interesul cercettorilor de reelele neuronale. Se tia de atunci c
pentru perceptronii multistrat aceste probleme nu apar dar nu era clar cum s se modifice
ponderile straturilor ascunse. Problema contribuiei unitilor interne a fost rezolvat i
diseminat pe scar larg abia n 1986 ducnd la renaterea interesului pentru reelele neuronale.
5.3.7.3 Perceptronul multistrat
Cea mai popular categorie de reele feed-forward multistrat este perceptronul multistrat
n care fiecare unitate de calcul utilizeaz funcia de prag sau funcia sigmoid.
Fie
( )
1
( 1) ( ) ( )
k
N
i ij j
j
x k f w k x k
=
+ =

(5.29)

activarea unitii i din stratul k+1, N
k
numrul de uniti din stratul k i f este funcia de
activare.
Notm ( 1)
i
u k + argumentul funciei f deci:

1
( 1) ( ) ( )
k
N
i ij j
j
u k w k x k
=
+ =

(5.30)

Pentru fiecare vector de ieire eroarea global este dat de relaia:

Algoritmi de clasificare. Paradigma actual
104
( )
2
1
1
2
N
i i
i
E T x
=
=

(5.31)
x
i
fiind activitile stratului de ieire i T
i
valorile dorite la ieire.
Numim eroare a unei uniti:
- pentru ultimul strat

( ) ( )
i i i i
err T x f u ' = (5.32)

- pentru un strat ascuns k
| |
1
1
( ) ( ) ( 1) ( )
k
N
i i j ij
j
err k f u k err k w k
+
=
' ( = +

(5.33)
Cu aceste notaii se poate demonstra c modificarea parametrilor n direcia gradientului

( )
( )
ij
ij
E
w k
w k
q
c
A =
c
(5.34)
devine, pentru toate straturile,

( ) ( ) ( 1)
ij j i
w k x k err k q A = + (5.35)

ntotdeauna trebuie nvate asocieri ntre mai muli vectori de intrare i de ieire. n acest
caz, funcia de eroare total este suma funciilor de eroare corespunztoare perechilor individuale
intrare/ieire. Aceasta eroare poate fi minimizat n dou moduri:
1 off-line - se determin, pentru fiecare pereche intrare/ieire, modificarea ce trebuie
adus coeficienilor sinaptici. Aceste modificri se sumeaz i se aplic numai dup ce au fost
prezentate toate perechile intrare/ieire. Algoritmul realizeaz o optimizare determinist dup
gradient a erorii totale.
2 on-line - modificarea coeficienilor calculat pentru o pereche intrare/ieire este aplicat
imediat dup prezentarea acestei perechi. Algoritmul realizeaz o optimizare dup gradient
pentru eroarea total. Prezint, n raport cu precedentul, avantajul c este n general mai rapid i
poate prsi unele minime locale ale funciei de eroare total.
n ceea ce privete parametrul q - mrimea pasului n direcia gradientului - acesta
determin viteza de convergen spre un minim al erorii E. n practic se ncepe cu un q relativ
mare iar apoi, pe msur ce reeaua nva, aceast valoare se reduce treptat (analogie cu
algoritmul Simulated Annealing).
5.3.8 Algoritmul de nvare Backpropagation
Algoritmul Backpropagation nva ponderile pentru o reea pe mai multe niveluri, dndu-
se o reea cu o mulime fix de uniti i de interconexiuni. Utilizeaz panta gradientului pentru a
ncerca s minimizeze eroarea dintre valoarea ieirii reelei i valoarea int pentru acele ieiri.
Problema nvrii n Backpropagation este de a cuta n spaiul mare al ipotezelor, definit
de toate valorile posibile ale ponderilor pentru toate unitile din reea. Algoritmul
Backpropagation este prezentat n continuare. Algoritmul descris aici se aplic reelelor feed-
forward care conin dou nivele de uniti, cu funcia de activare sigmoid, fiecare unitate de pe
un nivel fiind conectat cu toate unitile de pe nivelul anterior. Aceasta este o versiune a
algoritmului backpropagation care calculeaz, incremental sau stohastic, panta gradientului.

Algoritmi de clasificare. Paradigma actual
105
Backpropagation (exemple_antrenament, , n
in
, n
out
, n
hidden
)
Fiecare exemplu de antrenament este o pereche de forma t x

, , unde x

reprezint valorile vectorului de intrare i t

reprezint valorile
int ale vectorului de ieire.
reprezint rata de nvare care este o valoare (0,1]
n
in
numrul de neuroni de pe stratul de intrare
n
hidden
numrul de neuroni de pe stratul ascuns
n
out
numrul de neuroni de pe stratul de ieire
intrarea pentru unitatea i de la unitatea j este notat cu x
ji
i
ponderea de la unitatea i la unitatea j este notat w
ji
- Se creeaz o reea feed-forward cu n
in
intrri, n
hidden
uniti ascunse i n
out
uniti de ieire
- Se iniializeaz toate ponderile din reea cu valori aleatoare mici (de
exemplu e
(

in in
n n
2
,
2
)[Vint07]
- Pn cnd condiia de terminare nu este ndeplinit execut (exemplu,
eroarea....)
o Pentru fiecare t x

, din exemple_antrenament execut


Propag semnalul forward prin reea:
1. se introduce instana x

n reea i se calculeaz ieirea y


pentru fiecare neuron din reea
Propag eroarea napoi prin reea - backward
2. pentru fiecare neuron de ieire din reea se calculeaz
eroarea conform formulei (5.32)
3. pentru fiecare neuron de pe stratul ascuns se calculeaz
eroarea conform formulei (5.33)
4. calculeaz
ji i ji
x err w = A q pentru nivelele anterioare prin
propagarea backward a erorii
5. se actualizeaz ponderile reelei
ji ji ji
w w w A +
Algoritmul este descris aici pentru o reea feed-forward coninnd dou straturi de uniti
cu funcia sigmoid de activare n cazul general (Fig. 5.6). Fiecare unitate de pe fiecare strat este
conectat cu toate unitile de pe stratul precedent. Unitile de pe stratul de intrare sunt
considerate uniti repetoare care prezint la ieire valoarea primit la intrare. De asemenea, sunt
prezentate formulele de calcul pentru aceast reea, att pentru pasul forward ct i pentru pasul
backward. Pentru pasul backward s-a luat n considerare formula de calculul a erorii prezentat
n ecuaia (5.39).

n
hidden
neuroni
n
out
neuroni
n
in
neuroni
Strat
intermediar
Strat de
iesire
Strat de
intrare

Fig. 5.6 - Arhitectura reelei
Algoritmi de clasificare. Paradigma actual
106
Pentru acest caz formulele generale date de regula backpropagation devin, cu notaiile
urmtoare [Brea06]:
w
12
[h][i] ponderea legturii neuronului h (hidden) din stratul intermediar (2) cu
neuronul i din stratul de intrare ("input") (1)
2[h] valoarea de prag a neuronului h din stratul intermediar (2)
w23[o][h] ponderea legturii neuronului o (output) din stratul de ieire (3) cu
neuronul h din stratul intermediar (2)
3[o] valoarea de prag a neuronului o din stratul de ieire (3)
Out1[i] valoarea ieirii neuronului i din stratul de intrare
Out2[h] valoarea ieirii neuronului h din stratul de intermediar
Out3[o] valoarea ieirii neuronului o din stratul de ieire
Scop[i] valoarea dorit la ieire
F(.) funcia de activare a tuturor neuronilor
n
in
, n
hidden
, n
out
numrul de neuroni din stratul 1, 2 respectiv 3
5.3.8.1 Pasul forward
2
n
in
2 12 1
i=1
Out [h] F( w [h][i] Out [i] [h] ) u = +

(5.37)
3
hidden
n
3 23 2
h=1
Out [o] F( w [o][h] Out [h] [o] ) u = +

(5.38)
| | | | ( )
out
n
2
3
o=1
E Out o Scop o =

(5.39)
5.3.8.2 Pasul backward
E
w
w
c
q
c
A = , unde w poate fi 3[o], w23[o][h], 2[h], w12[h][i] (5.40)
3 3
3
2 ( [ ] [ ]) '( [ ])
[ ]
E
Out o Scop o F Out o
o
c
cu
= (5.41)
3 3 2
23
2 ( [ ] [ ]) '( [ ]) [ ]
[ ][ ]
E
Out o Scop o F Out o Out h
w o h
c
c
=
(5.42)
3 3 23 2
1
2
2 ( [ ] [ ]) '( [ ]) [ ][ ] '( [ ])
[ ]
out
n
o
E
Out o Scop o F Out o w o h F Out h
h
c
cu
=
=

(5.43)
3 3 23 2 1
1 12
2 ( [ ] [ ]) '( [ ]) [ ][ ] '( [ ]) [ ]
[ ][ ]
out
n
o
E
Out o Scop o F Out o w o h F Out h Out i
w h i
c
c
=
=

(5.44)

Considernd pentru funcia F funcia sigmoid clasic derivata se determin uor din
valoarea funciei conform relaiei:
( ) ( ) ( ) 1 ( ) F x F x F x ' = (5.45)
Algoritmi de clasificare. Paradigma actual
107
5.3.9 Cercetri privind evitarea saturrii ieirii neuronilor
Aceast problem se pune n cazul n care neuronii din stratul de ieire au funcia de
activare sigmoidal. Pentru a adapta spaiul problemei la spaiul reelei neuronale cea mai simpl
soluie este translatarea domeniului valorilor componentelor vectorilor aplicai ieirii reelei
[V
MIN
V
MAX
] printr-o funcie liniar n domeniul [L H] cu L = 0.0 i H = 1.0 (avnd n
vedere domeniul de ieire al neuronilor cu funcii de activare sigmoidale clasice).
Am comparat aceast prim variant cu o a doua variant n care am realizat translatarea
n domeniul [L H] cu L = 0.1 i H = 0.9. Pentru comparaie, am ales o reea feed-forward cu
doi neuroni de intrare, doi n stratul ascuns i un singur neuron de ieire, cu funcii de activare
sigmoidale pentru toi neuronii, care s rezolve binecunoscuta problema XOR. Am folosit la
antrenare metoda backpropagation clasic, nvare off-line i rata de nvare constant q = 1.
Evoluia comparativ a erorii reelei n primii 5000 de pai este prezentat n Fig. 5.7.


Fig. 5.7 Evoluia erorii n cazul problemei XOR
n primele etape de antrenament, prima variant duce la o nvare mai rapid deoarece
eroarea determinat de reea este mai mare. n urmtoarele ns, pe msura apropierii valorii
ieirii de valorile de saturaie ale funciei sigmoide, nvarea devine foarte lent. n varianta a
doua, valorile dorite la ieire se ating repede datorit evitrii zonei de saturaie a funciei
sigmoide.
Rezult deci, c scalarea domeniului semnalului de intrare la domeniul 0.1 0.9 este
benefic i a fost aplicat n toate experimentele descrise n lucrare n care neuronii au funcia de
activare sigmoidal.
5.4 Algoritmi evoluioniti. Algoritmi genetici
Algoritmii genetici fac parte din categoria algoritmilor de calcul evoluionist i sunt
inspirai de teoria lui Darwin asupra evoluiei. Ideea calculului evoluionist a fost introdus n
1960 de I. Rechenberg n lucrarea intitulat Evolution strategies.
Algoritmii genetici au fost aplicai cu succes ntr-o varietate de aplicaii care necesit
optimizarea global a soluiei. Algoritmii genetici se refer la un model introdus i analizat de J.
Holland n 1975, i sunt proceduri adaptive care gsesc soluia problemei pe baza unui mecanism
de selecie natural i evoluie genetic. Algoritmul este des folosit pentru probleme n care
gsirea soluiei optime nu este uoar sau cel puin ineficient (NP-hard), datorit
0.00E+00
1.00E-01
2.00E-01
3.00E-01
4.00E-01
5.00E-01
6.00E-01
7.00E-01
1 500 1000 1500 2000 2500 3000 3500 4000 4500 5000
E
r
o
a
r
e

Pai
Evolutia erorii pentru problema XOR
cu prag 0.1 si 0.9
cu prag 1.0 si 0.0
Algoritmi de clasificare. Paradigma actual
108
caracteristicilor cutrii probabilistice. Algoritmii genetici codific o soluie posibil la o
problem specific ntr-o singur structur de date numit cromozom i aplic operatori
genetici la asemenea structuri astfel nct s menin informaiile critice.
Algoritmii genetici pornesc de la o mulime iniial de soluii (de obicei aleas aleator)
numit n literatur populaie. n aceast populaie, fiecare individ este numit cromozom i
reprezint o soluie posibil a problemei. n aproape toate cazurile, cromozomul este un ir de
simboluri numite gene (de obicei reprezentat ca un ir de bii). Aceti cromozomi evolueaz pe
durata iteraiilor succesive numite generaii. n fiecare generaie, cromozomii sunt evaluai
utiliznd unele msuri de evaluare (fitness). Pentru crearea urmtoarei populaii, cei mai buni
cromozomi din generaia (populaia) curent sunt selectai, i noii cromozomi sunt formai
folosind unul dintre cei trei operatori genetici eseniali: selecia, crossover i mutaia [Ghos05].
Selecia asigur c anumii cromozomi din generaia curent sunt copiai n acord cu
valoarea funciei lor de evaluare n noua generaie, ceea ce nseamn c cromozomii cu o
performan mare au o probabilitate mare s contribuie la formarea noii generaii. Crossover este
un alt operator genetic care reprezint procesul prin care, pe baza a doi cromozomi din populaia
curent sunt formai doi cromozomi pentru populaia urmtoare. Mutaia este procesul prin care
un cromozom din populaia curent este modificat (o gen de obicei) i salvat n noua populaie.
5.4.1 Codificarea cromozomilor i problema de optimizare
Algoritmii genetici au dou componente principale care depind de problema abordat:
codificarea problemei i funcia de evaluare. Cromozomii care reprezint codificarea soluiilor
pariale ale problemei trebuie ntr-o oarecare msur s conin informaiile despre soluia
problemei i, evident, depind foarte mult de natura acesteia. Exist mai multe codificri, care au
fost utilizate cu succes cum ar fi: codificarea binar (cromozomul este format din iruri de 0 sau
1 care reprezint binar soluia problemei) sau codificarea prin valoare (cromozomul este format
dintr-un ir / vector de valori ntregi sau reale care, pe ansamblu, reprezint soluia problemei).
Funcia de evaluare numit i funcia de fitness este funcia care ne permite s dm o
ncredere la fiecare cromozom din populaie. Aceast funcie este, de obicei, funcia care
reprezint descrierea problemei.
Cnd trebuie s rezolvm o problem, de obicei ne uitm dup anumite soluii care sunt
mai bune dect alte soluii obinute anterior. Spaiul tuturor soluiilor fezabile este numit spaiul
de cutare sau spaiul strilor. Problemele abordate folosind algoritmi genetici sunt de obicei
probleme pentru care cutarea n spaiul soluiilor este o problem complicat sau chiar NP-
complet. De obicei nu tim unde s cutm o soluie i de unde s ncepem. Soluiile obinute
folosind algoritmi genetici sunt de obicei considerate ca soluii bune, deoarece nu este
ntotdeauna posibil s cunoatem care este optimul real.
5.4.2 Metode de alegere a cromozomilor
Un alt pas important n algoritmul genetic este cum alegem prinii din populaia curent
care vor alctui noua populaie. Aceasta poate fi fcut n mai multe feluri, dar ideea de baz este
de a selecta cei mai buni prini (n sperana c acetia vor produce cei mai buni copii). n acest
pas poate aprea o problem: genernd noua populaie doar pe baza noilor copii obinui poate
duce la pierderea celui mai bun cromozom obinut pn la acel pas. De obicei, aceast problem
este rezolvat prin utilizarea aa numitei metode de elitism. Adic, cel puin un cromozom care
produce cea mai bun soluie conform cu funcia de fitness este copiat fr nici o modificare n
noua populaie, astfel nct cea mai bun soluie obinut pn la acel moment s nu se piard.
Algoritmi de clasificare. Paradigma actual
109
Ca si metode de alegere a cromozomilor propunem dou metode, fiecare dintre ele cu
avantajele i dezavantajele ei:
5.4.2.1 Metoda Roulette Wheel (ruleta)
n aceast metod, fiecare individ din populaia curent este reprezentat printr-un spaiu
proporional cu valoarea funciei lui de evaluare. Prin eantionri aleatoare, succesive, din acest
spaiu de reprezentare a cromozomilor se asigur c cei mai buni cromozomi au anse mai mari
s fie selectai la un anumit pas dect cei cu mai slabi. Aceast metod de selecie va avea
probleme n momentul n care valoarea funciei de evaluare difer foarte mult de la un
cromozom la altul. De exemplu, dac cel mai bun cromozom are valoare funciei de evaluare
mare (care va ocupa 90% din spaiul de reprezentare) iar restul cromozomilor au valori ale
funciilor de evaluare foarte mici, aceast metod va selecta de foarte multe ori cromozomul cel
mai bun ducnd n final la degenerarea populaiei printr-un fel de endogamie.
5.4.2.2 Alegerea utiliznd metoda lui Gauss
Paii propui pentru aceast metod sunt:
1. Se alege un cromozom din populaie curent.
2. Utiliznd formula lui Gauss calculm probabilitatea ca acel cromozom s fie un
cromozom bun (acela care obine valoarea funciei de evaluare care depete un prag).
2
2
( ( ))
2
( )
i
M fitness c
i
P c e
o

=
(5.46)
unde P(c
i
,) reprezint probabilitatea calculat pentru cromozomul c
i
, M reprezint
valoarea maxim care poate fi obinut de ctre funcia de evaluare i care reprezint
dispersia sau panta cu care scade probabilitatea (viteza cu care scade probabilitatea), iar
fitness(c
i
) reprezint valoarea funciei de evaluare pentru acel cromozom. De exemplu, dac
valoarea maxim a funciei de evaluare este 1, M va fi 1 iar pentru dispersie propunem o
valoare ntre 0.3-0.5.
3. n al treilea pas, aceast probabilitate calculat este comparat cu o probabilitate aleas
aleator n domeniul [0,1] (Probabilitatea lui Gauss ntoarce valori n acest domeniu).
4. Se verific dac probabilitatea lui Gauss calculat pentru cromozomul ales este mai mare
dect probabilitatea aleas aleator:
a. dac da, cromozomul ales aleator se ia n considerare pentru a forma noua
populaie;
b. dac nu, se trece din nou la pasul 1.
Aceast metod asigur posibilitatea lurii n considerare i a cromozomilor care nu au
obinut valori mari pentru funcia de evaluare asigurnd astfel diversitatea procesului (ofer
anse mai mari de evoluie i cromozomilor mai slabi).
Algoritmi de clasificare. Paradigma actual
110
5.4.3 Operatorii genetici utilizai
5.4.3.1 Selecia
Pentru acest operator genetic, de obicei, se selecteaz doar un singur cromozom din
populaia curent. Acest cromozom este copiat n noua populaie fr nici o modificare. Aceast
metod se mai folosete i pentru a nu pierde cromozomii care a obinut cea mai bun valoare la
funcia de evaluare (elitism) din populaia curent. De asemenea, acest operator se aplic i
pentru ali cromozomi selectai pe baza metodelor de selecie propuse dar acest operator, n cazul
meu, apare de un numr mic de ori la generarea noii populaii.
5.4.3.2 Mutaia
Mutaia este un alt operator genetic important i reprezint un proces prin care
cromozomul curent i modific ocazional una sau mai multe valori (gene) ntr-un singur pas.
Mutaia depinde de asemenea de codificarea cromozomului. Mutaia alege doar un singur
candidat i, aleator, modific unele valori ale acestuia (modificnd doar semnul acelei valori sau
uneori se modific i valoarea in cazul reprezentrii prin valoare sau se schimb doar valoarea
n cazul reprezentrii binare). Mutaia funcioneaz prin alegerea aleatoare a numrului de valori
care vor fi schimbate i a modului de modificare a acestora.
5.4.3.3 Crossover
Crossover poate fi vzut ca ncruciarea a 2 prini pentru a obine copii, selectabili n
generaia urmtoare. Acest operator depinde foarte mult de tipul de codificare al cromozomilor.
Metoda de crossover este aplicat la o pereche de prini alei folosind una din metodele
prezentate. Cu o probabilitate p
c
prinii sunt recombinai pentru a forma doi noi copii care vor fi
introdui n noua populaie. De exemplu lum doi prini din populaia curent, i mprim i
ncrucim componentele astfel nct s producem doi noi candidai. Aceti candidai, n urma
ncrucirii, trebuie s reprezinte o soluie posibil pentru parametrii problemei noastre de
optimizare; de aceea, de obicei, se inter-schimb valori de pe aceleai poziii. Utiliznd un punct
de recombinare, putem crea noii candidai prin combinarea primei pri din primul printe cu a
doua parte din al doilea printe.
5.5 Algoritmi bazai pe nuclee. Support Vector Machine (SVM)
Clasificarea Support Vector Machine (SVM) este o tehnic care se bazeaz pe teoria
nvrii statistice prezentat n [Scho02],[Cris00]. Aceast tehnic a aplicat cu deosebit succes
descoperiri matematice vechi de cteva secole, n probleme de optimizare peste mulimi de date
de dimensiuni mari, att n ceea ce privete numrul de articole de clasificat ct i n ceea ce
privete numrul de caracteristici prin care se reprezint acestea.
Algoritmul SVM trebuie s gseasc un hiperplan (un plan de dimensiune n-1 ntr-un
spaiu n dimensional) care s separe datele de intrare n dou clase. De fapt, algoritmul const n
determinarea parametrilor ecuaiei generale a planului (indicaii practice de implementare se
gsesc n [Hsu03]). Algoritmul original funcioneaz doar n cazul a dou clase, existnd
adaptri pentru mai multe clase. Privind astfel problema n plan, se dorete de fapt gsirea unei
linii care s mpart ct mai bine punctele aflate n clasa pozitiv (cele care se gsesc ntr-o
Algoritmi de clasificare. Paradigma actual
111
clas) de cele din clasa negativ (restul punctelor). Pentru o mai bun ilustrare vom discuta n
continuare pe un exemplu prezentat grafic n Figura 5.8.


Fig. 5.8 Determinarea hiperplanului optim de separare
n Fig. 5.8 considerm c datele sunt mprite n dou clase: clasa punct i clasa
ptrat. n acest caz, problema ce se dorete a fi rezolvat este trasarea unei linii optime de
separare a celor dou clase. Problema pare iniial foarte simpl, trebuie ns s inem cont c o
linie optim de clasificare ar trebui s clasifice corect toate elementele ce pot fi generate cu
aceeai distribuie dat. Exist o multitudine de hiperplane care ndeplinesc condiiile de
clasificare, dar algoritmul ncearc s determine hiperplanul optim. Adic orice puncte generate
cu aceeai funcie ca cele din grafic trebuie s fie clasificate corect. Hiperplanul ce va realiza
aceast separare este determinat de o funcie:
( ) ( )
( )
sgn , f x w x b = u + (5.47)
numit funcie de decizie, unde w este vectorul pondere ortogonal pe hiperplan, b este un
scalar ce reprezint marginea hiperplanului, x este eantionul curent i u(x) este funcia care
trece pe x ntr-un spaiu al caracteristicilor de dimensiune mai mare. n aceast funcie am notat
prin <,>produsul scalar a doi vectori ce va fi explicat ulterior, iar prin sgn am notat funcia
signum care returneaz +1 dac variabila de intrare este pozitiv, zero dac este egal cu zero i -
1 altfel. n partea de antrenament a algoritmului trebuie s se determine vectorul normal w, astfel
nct marginea b s fie maxim.
Fie ,
n
x ye cu x=(x
1
, x
2
, ... , x
n
) i y=(y
1
, y
2
, ... , y
n
) atunci spunem c produsul scalar a
doi vectori este valoarea real ce msoar suprafaa determinat de cei doi vectori; ea se noteaz
> < y x, i se calculeaz:
1 1 2 2
,
n n
x y x y x y x y < >= + + + (5.48)
i spunem c x este ortogonal pe y dac produsul lor scalar este egal cu zero, adic:
0 , >= < y x
(5.49)
De asemenea, dac w are lungimea unu, atunci <w, u(x)>este egal cu lungimea proieciei
lui x pe direcia lui w. n genere w va fi scalat prin || || w pentru a obine un vector de lungime
Algoritmi de clasificare. Paradigma actual
112
unitar. Prin || || w se nelege norma lui w, adic || w || =<w , w>, numit i norm euclidian. n
continuare se vor folosi vectori normai.
Determinarea hiperplanului de separare se bazeaz pe dou trsturi fundamentale. Prima
dintre ele precizeaz existena unui unic hiperplan optim de separarea a datelor. Hiperplanul
optimal este acela care are cea mai mare valoare a lui b (margine maxim), adic distana de la
cel mai apropiat punct de hiperplan la hiperplan este maxim pentru puncte aparinnd ambelor
clase. A doua trstur precizeaz c, o dat cu creterea marginii, scade puterea de separare a
hiperplanului. Acestea sunt dou trsturi antagonice care fac determinarea optimului un
exerciiu de compromis optimal (n condiii restrictive).
Hiperplanul optim este soluie a ecuaiei:
{ }
,
min , , 0, 1,...,
w H b
maximize b i m
e e9
e + = =
i
x x x w x H (5.50)
Acest algoritm se poate aplica numai ntr-un spaiu vectorial. Pentru date separabile n
spaiul vectorial de intrare, hiperplanul se poate calcula direct din datele empirice. Pentru date ce
nu sunt separabile n spaiul de intrare, hiperplanul se va calcula ntr-un spaiu de dimensiune
mai mare, prin trecerea datelor ntr-un spaiu al caracteristicilor de dimensiune mai mare
utiliznd funcia u i prin construirea unui hiperplan de separare n noul spaiu.
Reprezentarea matematic a celor dou trsturi, n scopul obinerii hiperplanului optim,
se face prin intermediul unei probleme de optimizare cu restricii de forma:
2 1
( )
2
w Hround,b
minimize t
e e9
= w w (5.51)
cu restricia y
i
(w,x
i
+ b) >1 pentru toi i=1,...,m, unde t este numit funcia obiectiv
(prima trstur caracteristic), iar restricia este numit inegalitatea de constrngeri (a doua
trstur caracteristic). Pentru determinarea hiperplanului optim trebuie respectate amndou
condiiile. Aceasta se numete problema de optimizare primar.
Observm c restricia asigur corectitudinea clasificrii. Adic f(x
i
) va fi +1 pentru y
i

egal cu +1 i -1 pentru y
i
egal cu -1. S vedem intuitiv de ce trebuie s fie minimizat lungimea
lui w. Dac ||w|| ar fi unu, atunci partea stng din restricie ar fi egal cu distana de la x
i
la
hiperplan. n general, trebuie s mprim y
i
(w,x
i
+ b) prin ||w||, pentru a transforma aceasta n
distan. De acum ncolo, dac putem satisface restricia pentru toi i=1,..,m cu un w de lungime
minim, atunci marginea total va fi maximizat.
Problema de optimizare primar este n genere dificil de rezolvat, datorit costurilor mari
de calcul, fiind o problem deschis n teoria optimizrii. Pentru rezolvarea acestei probleme
exist posibilitatea folosirii problemei duale, care, conform demonstraiilor matematice, ofer
aceeai soluie. Pentru obinerea problemei duale introducem Langrangian-ul i multiplicatorii
Lagrange:
2
1
1
( , , ) ( ( , ) 1)
2
m
i i
i
L b y w b o o
=
= +
i
w w x
(5.52)
cu multiplicatorii Lagrange
i
o
care trebuie s fie mai mari sau egali cu zero. Lagrangian
L trebuie s fie minimizat n raport cu variabilele primare w i b i maximizat n raport cu
variabilele duale
i
(cu alte cuvinte, s gseasc un punct de sprijin). Observm c restriciile
sunt incorporate n al doilea termen al Lagrangian-ului, fr a mai fi nevoie s le aplicm
explicit.
Vom prezenta n continuare rezolvarea intuitiv a problemelor de optimizare cu restricii.
Dac restricia este violat, atunci y
i
(w,x
i
+ b) -1 < 0, caz n care L poate fi incrementat prin
incrementarea lui
i
corespunztor. n acelai timp, w i b vor trebui modificate dac L descrete.
Pentru ca
i
(y
i
(w,x
i
+ b) -1) s nu devin un numr arbitrar negativ foarte mare, modificrile
Algoritmi de clasificare. Paradigma actual
113
din w i b vor asigura c, problema fiind separabil, restriciile vor fi eventual satisfcute.
Similar, putem nelege c pentru toate constrngerile care nu se potrivesc exact cu egalitatea
(adic, pentru care y
i
(w,x
i
+ b) -1 > 0),
i
corespunztor trebuie s fie zero: aceasta este
valoarea lui
i
care l maximizeaz pe L. A doua este condiia complementar a teoriei
optimizrii propus de Karush-Kuhn-Tucker (condiiile KKT). La punctul de sprijin derivatele
Langrangian-ului L, n raport cu variabilele primare, trebuie s se anuleze:
( , , ) 0 ( , , ) 0 L w b i L w b
b w
o o
c c
= =
c c
(5.53)
conducnd la:
1 1
0
m m
i i i i i
i i
y i w y x o o
= =
= =

(5.54)
Vectorul soluie este o expansiune n raport cu submulimea de pattern-uri de
antrenament, adic acele pattern-uri cu
i
diferit de zero, numite Support Vectors (SVs). Alturi
de condiiile KKT:
( )
, 1 0 1,
i i i
y x w b pentru toi i m o
(
+ = =

(5.55)
vectorii suport vor sta pe margine. Toate exemplele de antrenament rmase (x
i
,y
i
) sunt
irelevante: restriciile lor y
i
( x
i
,w + b ) 11 pot fi foarte bine eliminate i nu vor aprea n
formula final. Aceasta ne arat intuitiv c, deoarece hiperplanul este complet determinat de
ctre pattern-urile cele mai apropiate de el, soluia ar trebui s nu depind de celelalte exemple.
Prin nlocuirea formulelor din (5.54) n Lagrangian, se elimin variabilele primare w i b,
obinnd astfel aa-numita problem de optimizare dual, care se rezolv de obicei n practic:
1 , 1
1
( ) ,
2
m
m m
i i j i j
i i j
maximize W y y x x
o
o o oo
e
= =
=
i j
(5.56)
cu condiia m 1, i pentru 0 = >
i
o i

1
0
m
i i
i
y o
=
=

(5.57)
Astfel, funcia de decizie pentru hiperplan poate fi scris ca:
1
( ) sgn ,
m
i i i
i
f x y x x b o
=
| |
= +
|
\ .

(5.58)
unde b este calculat folosind condiiile KKT.
n rezolvarea problemei duale, este de asemenea frecvent cazul n care doar un subset de
restricii devine activ. Pentru exemplificare, dac pstrm o bil ntr-o cutie, atunci, de obicei, se
va rostogoli ntr-unul din coluri. Restriciile corespunztoare zidurilor care nu sunt atinse de
ctre bil sunt irelevante i aceste ziduri ar putea fi eliminate.
n practic, hiperplanul de separare poate s nu existe, de exemplu dac clasele sunt
suprapuse. Pentru a ine seama de exemplele posibile de violare a restriciilor, se pot introduce
variabile discrete notate cu 0
i
pentru toti i 1,...,m > = .
Folosind variabilele discrete, constrngerile devin: y
i
( w,x
i
+ b ) 1 pentru toi
i=1,...,m. Hiperplanul optim gsit acum este determinat att de controlul capacitii de clasificare
(via ||w||), ct i de suma de variabile discrete
i

i.
. Se observ c cea de-a doua parte furnizeaz
o limit superioar a numrului de erori de antrenament. Aceasta se numete clasificarea cu
margine soft. Funcia obiectiv devine:
Algoritmi de clasificare. Paradigma actual
114
2
1
1
( , )
2
m
i
i
w w C t
=
= +

(5.59)
cu aceleai restricii, unde constanta C > 0 determin schimbul dintre maximizarea
marginii i minimizarea erorii de antrenare. Dac rescriem n termeni de multiplicator Lagrange,
aceasta conduce la aceeai problem de maximizare, n plus, aprnd urmtoarea restricie:
0
i
C pentru toi i=1,...,m i
1
0
m
i i
i
y o
=
=

(5.60)
n cazul n care gsirea unui hiperplan optim n spaiul datelor de intrare implic un cost
mare, ideea SVM este de a mapa datele de intrare ntr-un nou spaiu de dimensiune mai mare
prin intermediul unei funcii u i ncercarea de a gsi un hiperplan optim cu cost ct mai mic n
acest nou spaiu. Aceasta conduce n mod evident la obinerea unei granie de decizie neliniare n
spaiul datelor de intrare. Deoarece transferarea tuturor datelor dintr-un spaiu ntr-un spaiu de
dimensiune mai mare ar impune un efort de calcul mare, se folosete un mecanism numit n
literatura de specialitate trucul nucleu. Acesta poate fi aplicat aici deoarece toate trsturile
caracteristice ale vectorilor apar numai n produse scalare. Pentru calculul produsului scalar a doi
vectori x i x trucul nucleu substituie produsul scalar cu un nucleu, urmnd ca doar acesta s
se calculeze n noul spaiu. In orice spaiu, produsul scalar este un scalar iar trucul nucleu se
poate aplica doar n cazul nucleelor pozitiv definite. Trucul nucleu este:
( ) , , k x x x x ' ' =< > (5.61)
Funcia de decizie n noua form devine:
1 1
( ) sgn ( ), ( ) sgn ( , )
m m
i i i i i i
i i
f x y x x b y k x x b o o
= =
| | | |
= u u + = +
| |
\ . \ .

(5.62)
Avantajul acestui algoritm este c nu implic transformarea tuturor datelor ntr-un spaiu
de dimensiune mai mare, deci nu necesit calcule costisitoare cum ar fi la reelele neuronale. De
asemenea se obine o dimensiune redus a setului de date de antrenament, avnd n vedere c n
faza de testare se vor lua n calcul doar vectorii suport care, de obicei, sunt puini. Alt avantaj al
acestui algoritm este c accept o dimensiune a datelor de intrare orict de mare, fr a crete
exponenial timpul de calcul. Acest fapt nu este valabil n cazul reelelor neuronal; de exemplu,
algoritmul backpropagation (prezentat n [Mitc97]) funcioneaz foarte greu sau chiar deloc
pentru vectori de dimensiune mai mare de 35. Singura problem a algoritmului bazat pe vectori
suport este numrul de vectori suport rezultai. Cu ct acesta este mai mare, cu att crete timpul
de rspuns.
Tot algoritmul anterior s-a bazat pe faptul c datele de intrare se gsesc doar n dou
clase, acesta fiind de fapt un algoritm de clasificare binar n care etichetele pot lua doar dou
valori. Majoritatea problemelor din lumea real necesit mai mult de dou clase la o problem de
clasificare. Exist cteva metode pentru a putea lucra cu mai multe clase, folosind clasificarea
binar. O metod ar fi clasificarea unu versus restul, n care se aleg elementele care aparin
unei clase pentru a se diferenia de restul elementelor. n acest caz, se calculeaz pentru fiecare
clas n parte un hiperplan optim care separ clasa respectiv de restul claselor. Pentru ieirea
algoritmului se alege valoarea maxim a tuturor hiperplanelor de separare:
1,...,
1
( ), ( ) ( , )
m
j j j j
i i i
j M
i
argmax g x unde g x y k x x b o
=
=
= +

(5.63)
Pentru M clase se calculeaz M hiperplane, aceast metod avnd o complexitate liniar.
O alt abordare a clasificrii la mai multe clase este clasificarea perechilor, n care sunt alese
perechi de cte dou clase i se calculeaz cte un hiperplan de separare pentru fiecare pereche.
Algoritmi de clasificare. Paradigma actual
115
Pentru M clase se calculeaz
2
M
C =(M-1)*M/2 hiperplane, aceast metod avnd o complexitate
polinomial. Avantajul acesteia este c, de obicei, hiperplanul optim este de dimensiune mai
mic (are mai puini vectori suport).
5.6 Clasificatori hibrizi. Metaclasificatori
Metaclasificarea sau clasificarea hibrid se bazeaz pe alegerea clasificatorului
(algoritmului) corect pentru o problem specific, pe baza caracteristicilor vectorului de intrare i
a clasificrilor anterioare. O problem principal, care apare cnd se utilizeaz mai muli
clasificatori clasificatori, este de a determina dac clasificatorul ales este util i pentru noi
instane. Utilizarea unor metaclasificatori sau ansambluri de clasificatori este o soluie simpl de
rezolvare a acestei probleme. Avnd mai muli clasificatori de baz, ideea este de a nva un
metaclasificator care prezice gradul de corectitudine pentru fiecare dintre clasificatorii de baz.
Selectarea unui clasificator pentru a eticheta o instan se face n funcie de ncrederea
acordat acelui clasificator, ncredere dobndit n urma clasificrilor corecte realizate de acesta
pentru instane de tipul respectiv.
Metaclasificatorului cere fiecrui clasificator de baz inclus s atribuie o clas la instana
curent cu o anumit probabilitate i apoi metaclasificatorul s decid care clasificare este cea
mai demn de ncredere. Pe lng creterea acurateei de clasificare prin exploatarea
sinergismului mai multor clasificatoare, un alt avantaj al metaclasificrii const n posibilitatea
de exploatare a paralelismelor funcionale (utiliznd sisteme multiprocesor, inclusiv n
implementri comerciale de tipul High Performance Computing).
Studii experimentale efectuate n domeniul nvrii automate au demonstrat c dac se
combin ieirile mai multor clasificatori se poate reduce eroarea general [Domi96], [Quin96]
[Opit99], [Jaeg08].
Metaclasificatorii pot face uz de diversitatea clasificatorilor utilizai pentru a reduce
eroarea de varian [Turn99] fr a mri eroarea de prag (bias error). n anumite situaii un
metaclasificator poate reduce eroarea de prag, cum se arat n teoria pentru clasificatori cu
margini largi (large margin classifiers) [Bart98]. Utilizarea ansamblurilor de clasificatori este
util n diverse domenii: clasificare de text, finane [Leig02], bioinformatic [Tan03], medicin
[Mang04], industrie [Maim04], geografie [Bruz04].
Avnd n vedere utilitatea metaclasificatorilor, prezint n continuare metodele
semnificative din acest domeniu. Exist civa factori care difereniaz tipurile de ansambluri.
Aceti factori sunt dup [Roka05]:
1. interacionarea clasificatorilor n cadrul metaclasificatorului: din acest punct de
vedere exist dou mari categorii: metaclasificatori secveniali sau concureni;
2. combinarea clasificatorilor: strategia combinrii este generat de ctre un algoritm
inductiv. Cel mai simplu mod de a combina clasificatorii este de a determina o
ieire doar pe baza ieirilor din clasificatorii individuali. n [Ali96] i [Mora06_b]
sunt prezentate cteva metode de combinare: votul majoritar, combinare
Bayesiana, nsumarea distribuiilor sau combinarea probabilitilor. n [Turn99] se
face o analiz teoretic pentru a estima mbuntirea clasificrii ntr-un ansamblu
de clasificatori;
3. generarea diversitii: pentru a face ca un ansamblu de clasificatori s lucreze
eficient trebuie ca ntre clasificatori s existe o anumit diversitate. Aceast
diversitate poate fi obinut prin diferite forme de prezentare a datelor de intrare.


Cercetri privind proiectarea sistemelor complexe de clasificare
116

6 Cercetri privind proiectarea sistemelor complexe de
clasificare
n acest capitol voi prezenta cercetrile mele privind proiectarea, realizarea i testarea
unor metaclasificatori compleci. Am pornit de la premisa c exist n principiu dou categorii
importante de metaclasificatori, i anume o categorie care nu are o etap de nvare i o alt
categorie care poate s nvee pe baza exemplelor anterioare. Din cei care nva, exist
metaclasificatori care, dup nvare, nu mai i modific ponderile (nu se mai adapteaz
conform noilor instane pe care le-a clasificat) i metaclasificatori care se adapteaz continuu.
Astfel, am proiectat i realizat metaclasificatori din cele dou categorii, numii n continuare
metaclasificatori neadaptivi (cei fr nvare i cei cu nvare dar care nu se mai adapteaz n
timpul clasificrii) i respectiv metaclasificatori adaptivi (care se adapteaz n timpul
clasificrii). Scopul construirii unor metaclasificatori se bazeaz pe ipoteza tiinific c mai
muli clasificatori simpli pot obine mpreun, exploatnd sinergismul lor, rezultate mai bune
dect un singur clasificator complex.
Metaclasificatorii propui n continuare au avut dou direcii majore de dezvoltare. Prima
direcie a fost de a modifica modul cum se alege clasa nvingtoare. ntr-o prim etap, n
metaclasificatorii realizai am combinat mai muli clasificatori de tip SVM i un clasificator de
tip Bayes, pentru a crea un metaclasificatori care s mbunteasc acurateea clasificrii. Am
calculat limita teoretic maxim a acurateei de clasificare, la care se poate ajunge folosind
aceast combinaie de clasificatori, i ea este de 98.63% (adic procentajul de documente care
pot fi clasificate corect de cel puin un clasificator). n acest context mi-am propus mbuntirea
schemei de clasificare prezentat n [Mora08]. Rezultatele au fost obinute pe seturile A1 i T1.
n aceast seciune, calitatea clasificrii realizat de algoritm este prezentat ca i acuratee de
clasificare, calculat ca raport de documente corect clasificate din numrul total de documente
care trebuiau clasificate n faza de testare.
Au fost implementai 3 tipuri de metaclasificatori: unul neadaptiv bazat pe votul majoritar
i doi adaptivi, bazai pe cozi de erori, unul folosind distana euclidian i unul bazat pe distana
cosinus. Dintre toi acetia, metaclasificatorul bazat pe distana cosinus a mbuntit acurateea
de clasificare, ajungnd la valoarea de 93.10% [Cret08].
A doua direcie de dezvoltare a fost combinarea tuturor ieirilor clasificatorilor inclui n
metaclasificator i ponderarea poziiilor claselor din ieirile clasificatorilor. Aceste ponderi pot fi
date sau calculate pe baza unui algoritm genetic n cazul metaclasificatorilor neadaptivi.
De asemenea voi prezenta realizarea unui nou metaclasificator hibrid. Acesta este realizat
dintr-un metaclasificator neadaptiv care va folosi o sum ponderat pentru stabilirea clasei finale,
urmat de un metaclasificator neuronal adaptiv. Acest metaclasificator neuronal utilizeaz un
metaclasificator neadaptiv cu rol de preclasificare, i o reea neural cu rol de postclasificare.
Great things are done by a series of small things brought together.
Vincent Van Gogh
Cercetri privind proiectarea sistemelor complexe de clasificare
117
6.1 Evaluarea clasificatorilor de tip SVM
n [Mora07] este prezentat un metaclasificator bazat pe 8 clasificatoare de tip SVM care
era folosit pentru mbuntirea acurateei de clasificare a documentelor de tip text. Maximul
acurateei de clasificare obinut de ctre un singur clasificatorul de tip SVM a fost de 87.11% i a
fost obinut de clasificatorul SVM de tip polinomial de grad 2 cu reprezentare Cornell Smart. n
[Mora07] sunt prezentai i testai mai muli clasificatori de tip SVM, bazai att pe nucleul
polinomial ct i pe cel Gaussian, cu diferite forme de reprezentare. Formulele pentru modurile
de reprezentare utilizate au fost prezentate n seciunea 4.1.1.2. Dintre toi clasificatorii testai i
prezentai, s-au inclus n metaclasificator 8 clasificatori SVM distinci. Alegerea celor 8
clasificatori s-a fcut pe baza acurateei de clasificare obinut de acetia pe diferite seturi de
documente. Pentru metaclasificatorul din [Mora07] s-au ales clasificatorii de tip SVM cu cea mai
bun acuratee de clasificare astfel:

NR. CRT. TIPUL NUCLEULUI GRAD REPREZENTAREA DATELOR
1 Polinomial 1 Nominal
2 Polinomial 2 Binar
3 Polinomial 2 Cornell Smart
4 Polinomial 3 Cornell Smart
5 Gaussian 1.8 Cornell Smart
6 Gaussian 2.1 Cornell Smart
7 Gaussian 2.8 Cornell Smart
8 Gaussian 3.0 Cornell Smart
Tabel 6.1 - Clasificatorii de tip SVM alei n metaclasificatorul din [Mora07]

Utiliznd aceti clasificatori, s-a ajuns la o acuratee maxim de clasificare de 92.04% n
cazul metaclasificatorului bazat pe distana euclidian i dup un numr de 14 pai de nvare.
Tot n [Mora07] s-a prezentat i o analiz n care se calcula i limita maxim la care ar putea s
ajung metaclasificatorul astfel creat (cu cei 8 clasificatori selectai). Limita calculat era de
94.21%. Aceast limit a clasificrii s-a obinut deoarece, din 2351 de documente de test, 136 de
documente nu au putut fi clasificate corect de nici un clasificator selectat n cadrul
metaclasificatorului.
n prima faz am ncercat gsirea unui nou clasificator care s reueasc s clasifice
corect documentele ce s-au dovedit imposibil de clasificat de ctre toi clasificatorii selectai n
metaclasificator din [Mora07]. n Fig. 6.1 am reprezentat schematic cercetrile efectuate.
Cercetri privind proiectarea sistemelor complexe de clasificare
118

Fig. 6.1 Procesul de realizare a metaclasificatorilor
6.1.1 Problema limitrii metaclasificatorului cu clasificatori de tip SVM
Dup cum am mai artat, o parte din documentele de testare nu pot fi clasificate corect de
nici un clasificator selectat n cadrul metaclasificatorului, fapt ce duce la o acuratee a clasificrii
- maximum obtenabil - de 94,21%.
Pentru a verifica clasificatorii n condiiile prezentate n [Mora07], am antrenat
clasificatorii SVM pe setul de date A1 (4.702 exemple i 1.309 atribute) i am utilizat ca date de
testare setul de date T2 (136 de exemple - cele cu probleme - i 1.309 atribute). Avnd n vedere
faptul c documentele din setul T2 nu au putut fi clasificate corect, n urma efecturii testelor,
dup cum ne ateptam, rezultatul clasificrii corecte este aproape de 0%. Totui exist
clasificatori SVM care nu au fost selectai n cadrul metaclasificatorului, dar care reuesc s
clasifice corect o parte din cele 136 documente. Aceti clasificatori nu au fost selectai, deoarece
au avut o acuratee de clasificare pe setul T1 mai slab, dar se pare c pe setul T2 dau rezultate
mai bune. n Fig. 6.2 i Fig. 6.3 prezint rezultatele pentru acurateea clasificrii obinute de
clasificatorii de tip SVM, utiliznd nucleul gaussian (notat n figurile urmtoare cu RBF)
respectiv nucleul polinomial (notat n figurile urmtoare POL). n ceea ce privete nucleul
polinomial, pentru gradul nucleului s-au luat valori numere ntregi ntre 1 i 5 iar n ceea ce
Cercetri privind proiectarea sistemelor complexe de clasificare
119
privete nucleul gaussian, pentru parametrul C s-au luat valori reale cuprinse ntre 1.0 i 2.8.
Ambele nuclee au fost testate pentru toate 3 tipurile de reprezentri (binar, nominal i Cornell
Smart) prezentate n seciunea 4.1.1.2.


Fig. 6.2 Rezultate obinute de clasificatorii SVM pe setul de date de antrenament A1 i testat pe T2 - nucleu
gaussian


Fig. 6.3 Rezultate obinute de clasificatorii SVM pe setul de date de antrenament A1 i testat pe T2 - nucleu
polinomial
Doar clasificatorul cu nucleu polinomial de grad 1 i reprezentare Cornell Smart a reuit
clasificarea corect a 24 de documente din cele 136. Avem dou explicaii:
a. documentele care nu pot fi clasificate, apar n prea puine clase sau sunt cazuri
particulare ale unei clase;
b. au fost greit clasificate n baza de date Reuters.
2
.
7
2
%

0
.
6
8
%

2
.
7
2
%

0
.
6
8
%

2
.
7
2
%

0
.
0
0
%

2
.
7
2
%

0
.
0
0
%

3
.
4
0
%

0
.
0
0
%

1
.
5
6
%

0.00%
0.50%
1.00%
1.50%
2.00%
2.50%
3.00%
3.50%
4.00%
A
c
u
r
a
t
e

e
a

c
l
a
s
i
f
i
c
a
r
i
i

SVM cu nucleu Gaussian
SVM antrenat pe A1 si testat pe T2
1
6
.
3
3
%

0
.
0
0
%

1
7
.
6
9
%

0
.
0
0
%

1
.
3
6
%

0
.
0
0
%

1
4
.
2
9
%

0
.
6
8
%

0
.
0
0
%

8
.
1
6
%

1
.
3
6
%

6
.
8
0
%

1
5
.
6
5
%

0
.
6
8
%

1
1
.
5
6
%

6
.
3
0
%

0.00%
2.00%
4.00%
6.00%
8.00%
10.00%
12.00%
14.00%
16.00%
18.00%
20.00%
A
c
u
r
a
t
e
t
e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

SVM cu nucleu polinomial
SVM antrenat pe A1 si testat pe T2
Cercetri privind proiectarea sistemelor complexe de clasificare
120
6.1.2 O prim tatonare a problemei
ntr-o prima etap, pentru a testa dac documentele ar putea fi clasificate corect, am ales
ca set de antrenament pentru clasificatorii de tip SVM (selectai n metaclasificatorul prezentat)
setul de date T1, care au fost utilizate n [Mora07] ca i set de test. n cadrul acestui set de date se
regsesc i cele 136 de exemple care nu au putut fi clasificate corect de ctre metaclasificator. Cu
alte cuvinte, clasificatorii de tip SVM au fost antrenai pe acel set de date, care conine i
documentele considerate cu probleme. Precizez aici c, antrennd SVM-urile doar pe
documentele cu probleme cele 136 documente (setul T2), majoritatea, dup antrenare, au reuit
s clasifice corect toate documentele cu probleme, ceea ce era de ateptat de altfel. n Fig. 6.4 i
Fig. 6.5 sunt prezentate rezultatele clasificrii obinute pe un setul de testare T2 (doar 136
documente), dar antrenate pe setul T1.

Fig. 6.4 Rezultate obinute de clasificatorii SVM, utiliznd diferite tipuri de reprezentare a datelor (binar i Cornell-
Smart), cu nucleu de tip Gaussian


Fig. 6.5 Rezultate obinute aplicnd clasificatori SVM, utiliznd diferite tipuri de reprezentare a datelor (binar, nominal
i Cornell-Smart), cu nucleu de tip polinomial
Observm c rezultatele obinute cu clasificatori SVM, care utilizeaz nucleul polinomial,
au o acuratee a clasificrii mai mare (media este de 98,05%) dect cei care utilizeaz nucleul
Gaussian (media este de 82,52%). Remarcm faptul c din 15 clasificatori cu nucleu polinomial,
8
7
.
0
7
%

8
9
.
8
0
%

8
5
.
7
1
%

8
6
.
3
9
%

8
2
.
3
1
%

8
3
.
6
7
%

7
9
.
5
9
%

7
8
.
9
1
%

7
5
.
5
1
%

7
6
.
1
9
%

8
2
.
5
2
%

0 %
10 %
20 %
30 %
40 %
50 %
60 %
70 %
80 %
90 %
100 %
A
c
u
r
a
t
e

e
a

c
l
a
s
i
f
i
c

r
i
i

SVM cu nucleu Gaussian
SVM antrenat pe T1 si testat pe T2
1
0
0
.
0
0
%

7
2
.
7
9
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

9
7
.
9
6
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

1
0
0
.
0
0
%

9
8
.
0
5
%

0.00
0.20
0.40
0.60
0.80
1.00
A
c
u
r
a
t
e
t
e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

SVM cu nucleu polinomial
SVM antrenat pe T1 si testat pe T2
Cercetri privind proiectarea sistemelor complexe de clasificare
121
doar doi clasificatori - polinomial de grad 1 i 2 cu reprezentarea datelor de tip nominal - nu au
reuit o acuratee a clasificrii de 100% a documentelor.
Rezultatele de mai sus pot fi explicate prin faptul c utilizarea la clasificatorii de tip SVM
a unui nucleu polinomial (liniar) duce la rezultate mai bune, deoarece s-a constatat c
documentele text n reprezentarea ca i vectori de termeni sunt liniar separabile. Transformarea
acestor vectori ntr-un nou spaiu, folosind funcii neliniare (nucleu Gaussian), ngreuneaz
gsirea unui hiperplan optim de separare, fapt confirmat i n [Gabr04].

6.2 Soluii explorate pentru mbuntirea metaclasificatorului bazat
pe clasificatoare de tip SVM
6.2.1 Soluia introducerii unor noi clasificatori SVM
O soluie a fost introducerea dinamic de noi clasificatori n metaclasificator, n cazul n
care n faza de antrenare/testare ar aprea un anumit numr (de ex. minim 50) de documente care
nu pot fi clasificate corect de niciunul dintre clasificatorii deja existeni. Astfel, s-a introdus un
nou clasificator SVM de tip polinomial, antrenat special pe acele (50) documente. Aceast
soluie a fost ulterior abandonat, deoarece nu a produs rezultate mai bune.
6.2.2 Soluia alegerii altei clase
O alt soluie ar consta n alegerea unei alte categorii pentru un document dificil
clasificabil, pentru care, de asemenea, clasificatorul ntoarce un rspuns pozitiv mare. Dac nici
un clasificator nu va fi selectat pentru clasificarea unui document, conform regulilor prezentate
n [Mora07], atunci se va alege clasificatorul cu cea mai mare probabilitate de reuit (distana
ntre documentul curent i toate documentele din coada clasificatorului este maxim, chiar dac
este mai mic dect pragul stabilit). De la clasificatorul astfel selectat nu se va mai alege prima
clas propus, ci urmtoarea, dac ea este suficient de aproape fa de prima clas. Aceast
abordare se va prezenta mai bine pe un exemplu.
Pentru exemplificare presupunem c n metaclasificator avem 4 clasificatoare diferite,
fiecare avnd n coada de erori un numr de documente. Cnd avem un nou document d
n
care
trebuie clasificat, se ia pe rnd fiecare clasificator i se calculeaz distanta ntre d
n
i fiecare
document din coada de erori a clasificatorului respectiv. Dac cel puin o distan calculat este
mai mic dect pragul stabilit, metaclasificatorul nu va folosi acel clasificator pentru a clasifica
documentul d
n
. n cazul n care se rejecteaz astfel toi clasificatorii, metaclasificatorul totui va
alege pe cel care are distana cea mai mare obinut (chiar dac este mai mic dect pragul
stabilit). Actualmente, metaclasificatorul va prezice clasa specificat de acest clasificator, chiar
dac se tie cu o probabilitate mare c acesta va clasifica prost documentul d
n
. Modificarea ar fi
ca, n acest caz, clasificatorul ales s nu mai selecteze clasa pentru care se obine valoarea cea
mai mare (pentru c oricum va da gre, deoarece clasific prost tipul respectiv de documente), ci
s aleag clasa imediat urmtoare din lista de clase pe care le prezice. Se va alege urmtoarea
clas prezis doar dac valoarea pentru aceasta este suficient de apropiat de valoarea maxim
obinut de clasificator (n limita unui prag c). n acest caz, clasificatorul ar specifica o alt clas
pentru documentul curent d
n
.
Rezultatele obinute utiliznd aceast ipotez le vom prezenta n seciunea 6.3
Cercetri privind proiectarea sistemelor complexe de clasificare
122
6.2.3 Soluia adugrii unui clasificator de alt tip
O alt soluie pentru mbuntirea metaclasificatorului ar fi includerea unui alt
clasificator, nu neaprat de tip SVM, care s reueasc s clasifice documentele cu problem
(cele 136), evident fr s fie antrenat pe acele documente. Pentru aceasta am fcut cteva
experimente cu un clasificator de tip Naive Bayes. n acest caz, am folosit clasificatorul Bayes
din pachetul IR, pus la dispoziie de Universitatea din Texas [WEB09]. ntr-o prim etap, l-am
folosit aa cum este implementat n [WEB09], apoi i-am adus anumite modificri pentru a putea
fi integrat ulterior n metaclasificator proiectat n [Mora07]. Modificrile aduse se refer la
modul de funcionare n cazul clasificrii n mai multe clase, la comportamentul acestuia cnd
exist documente clasificate iniial n mai multe clase i la modul de selecie a datelor de
antrenare i testare.
Clasificatorul Naive Bayes nemodificat (BNN) testat primete, n cazul de fa, ca date de
intrare, toate fiierele care urmeaz a fi clasificate, urmnd ca alegerea datelor de antrenament i
a datelor de test s se fac dup metoda "n-fold crossvalidation" prezentat n seciunea 5.2.
Reamintim ideea acestei metode este de a mpri un set de date n n subseturi, urmnd ca n-1
subseturi s se foloseasc la antrenare iar testarea s se fac pe subsetul nefolosit la antrenament,
adic antrenarea i testarea s se execute pe seturi de date disjuncte. Algoritmul se va executa de
n ori, astfel nct fiecare subset de date va fi o singur dat un subset de test pentru verificarea
antrenrii. Din pcate, n acest caz nu mai pot fi selectate exact seturile prezentate la nceput, fapt
ce a dus la modificarea modului de lucru al clasificatorului iniial din clasa IR i transformarea
acestuia n alt algoritm pe care l notm BNA (Bayes Naive adaptat).
6.2.3.1 Adaptarea clasificatorului Bayes pentru utilizarea n metaclasificator
Pentru a putea integra i clasificatorul Bayes n metaclasificatorul prezentat n [Mora07],
au trebuit fcute cteva modificri. Clasificatorului Bayes primete la intrare un set de date din
care el alege aleator subseturi de antrenament i de test, dup metoda propus n [WEB09]. n
prima faz, am modificat modul de alegere a setului de antrenament i a celui de testare astfel
nct acestea s fie identice cu seturile de antrenare i testare folosite pentru celelalte
clasificatoare din metaclasificator (SVM polinomial, SVM gaussian).
n cazul clasificatorului Bayes, acesta se va antrena ntotdeauna pe acelai set de
antrenament (A1) i se va testa pe alt set de date (T1). Astfel, datele de antrenare i de testare
devin identice pentru toate clasificatoarele din metaclasificator.
n prima faz am ncercat o clasificare la mai multe clase, de genul one class versus the
rest. n cazul n care un document aparinea mai multor clase (ceea ce este obinuit la baza de
date Reuters), acel document a fost trecut n setul de antrenare de mai multe ori, n funcie de
numrul de clase specificate de Reuters pentru acel document. Aceasta face ca multe clase s fie
suprapuse (exist multe clase care sunt subcategorii ale unei clase de baz atunci toate
documentele dintr-o subclas pot s fie i ntr-o alt clas de baz).
Am luat n considerare prima dat aceast opiune, deoarece n clasificatorii de tip SVM
aceast metod (one class versus the rest) este folosit pentru antrenarea la mai mult de dou
clase.
Am modificat antrenarea BNA pe cele dou seturi fixe (A1 i T1), eliminnd clasele n
cazul n care un document aparinea mai multor clase. De exemplu, dac fiierul file134.xml era
clasificat n Reuters ca aparinnd clasei C15 i clasei C151, am eliminat clasa C151. Astfel, un
document se consider c aparine doar primei categorii specificate de Reuters, celelalte categorii
fiind ignorate. Rezult astfel doar 16 categorii distincte care vor fi folosite pentru clasificatorul
Bayes (cel modificat).
Cercetri privind proiectarea sistemelor complexe de clasificare
123
O alt modificare adus clasificatorului BNA, pentru a funciona pe aceleai set de date i
a furniza rezultatul n acelai mod ca i clasificatorii SVM, a fost schimbarea modului n care se
valideaz rezultatul clasificrii. Deoarece n baza de date Reuters documentele erau clasificate n
dou sau mai multe categorii, unele din acestea fiind ns subcategorii ale unei categorii de baz,
am validat rezultatul ca fiind corect dac clasificatorul Bayes specific corect una din clasele
precizate de Reuters. De exemplu, dac clasificatorul stabilete pentru un document clasa C151,
iar n Reuters el apare n C15 i apoi n C151, am considerat rezultatul clasificrii ca fiind corect.
Clasificarea cu BNA s-a mbuntit considerabil, ajungnd la o acuratee de 72,14%
aproape identic cu cea atins de clasificatorul BNN din [WEB09]. Diferena apare deoarece n
primul caz clasificatorul primete un set de date pe care l mparte el automat n subseturi de
antrenare i testare, prezentnd la sfrit o medie a rezultatelor obinute pe aceste subseturi, iar n
al doilea caz clasificatorul primete un set fix de antrenare i un set fix de testare, iar rezultatul
de 72,14% este cel obinut pe aceste seturi fixe.
Dei prezentarea mediei acurateei de clasificare este o msur mai bun a performanelor
clasificatorului, deoarece acesta este testat i antrenat pe mai multe submulimi disjuncte, n
cazul metaclasificatorului acest lucru nu se preteaz, deoarece seturile de date ar trebui
schimbate la nivel de metaclasificator, nu la nivel de clasificator. Acesta este motivul pentru care
clasificatorii se antreneaz i se testeaz pe seturi prestabilite.
n acest moment, putem afirma c cele 3 categorii de clasificatoare - SVM cu nucleu
polinomial, SVM cu nucleu gaussian i Bayes (adaptat - BNA) ruleaz n acelai context.
Singura diferen ntre clasificatorii de tip SVM i cel de tip Bayes este c pentru SVM se vor
folosi 24 de clase, iar pentru Bayes doar 16 clase.
6.2.3.2 Compararea clasificatorului Bayes adaptat (BNA) cu clasificatorii de tip SVM
n aceast seciune voi prezenta rezultate comparative ntre clasificatorii de tip SVM i
clasificatorul Bayes adaptat. Ideea este de a determina dac sunt anse de mbuntire a
acurateei de clasificare a metaclasificatorului prezentat n [Mora07] n cazul introducerii n
metaclasificator i a unui clasificator de tip Bayes adaptat.
6.2.3.3 Antrenarea clasificatorilor pe setul A1 i testarea pe setul T1

Fig. 6.6 Rezultatele clasificrii cu SVM nucleu polinomial (preluat din [Mora07])
86.64
86.52 85.62
85.79 85.50
86.01
74.00
76.00
78.00
80.00
82.00
84.00
86.00
88.00
D1.0 D2.0 D3.0 D4.0 D5.0 Media
A
c
u
r
a
t
e

e
a
(
%
)

Gradul nucleului
Clasificare cu SVM nucleu polinomial
Reprez.
binar
Preprez.
nominal
Reprez.
Cornell-
Smart
Cercetri privind proiectarea sistemelor complexe de clasificare
124
Rezultatele prezentate n Fig. 6.6 s-au obinut de ctre clasificatorii SVM cu nucleu
polinomial, pentru diferite grade ale nucleului i pentru diferite reprezentri ale vectorilor de
documente, antrenai pe setul A1 i testai pe setul T1. Graficul din Fig. 6.6 indic faptul c
rezultatele cele mai bune (86,64%), s-au obinut utiliznd clasificatorul SVM cu nucleu
polinomial de grad 1 i reprezentare nominal. Ca i medie a acurateei de clasificare, acest tip
de clasificator a obinut cel mai bun rezultat pentru reprezentarea nominal (86,01%).
Singurul parametru care ne permite reglarea acurateei de clasificare la clasificatorul
Bayes este procentajul de documente de antrenament (dup cum s-a artat n Fig 5.1). n cazul
acesta, setul de antrenare respectiv de testare sunt prestabilite. Din acest motiv, avem doar un
singur rezultat pentru Bayes, rezultat pe care l comparm att cu cel mai bun rezultat obinut de
SVM polinomial, ct i cu media obinut de acesta. Dup cum se poate observa n Fig. 6.7 cu
clasificatorul Bayes antrenat pe setul A1 i testat pe setul T1, fiecare avnd 1.309 atribute, s-a
obinut o acuratee a clasificrii de 81,32%. Trebuie specificat c clasificatorul Bayes folosete
doar metoda nominal de reprezentare a vectorului de documente.

Fig. 6.7 Compararea rezultatelor obinute cu clasificatori SVM i Bayes
n Fig.6.8 se prezint timpii de antrenare obinui de fiecare clasificator n parte. Timpii
de antrenare sunt obinui pe un calculator P IV la f=3.2GHz cu 1GB memorie DRAM.

Fig. 6.8 Compararea timpilor de antrenare obinui cu clasificatori SVM i Bayes
Ca i timpi de antrenare, clasificatorul Bayes ofer timpi mai mici de antrenare, deoarece
calculeaz doar rapoarte ntre atribute i clase.
86.64%
86.01%
81.32%
78.00%
80.00%
82.00%
84.00%
86.00%
88.00%
SVM Pol D1.0 SVM Media Bayes
A
c
u
r
a
t
e
t
e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

Clasificatori
Clasificatori antrenai pe A1 si testai pe T1
1.92
1.8
1.7
1.5
1.6
1.7
1.8
1.9
2.0
SVM Pol D1.0 SVM Media Bayes
T
i
m
p

i
n

s
e
c
u
n
d
e

Clasificatori
Timpi de antrenare
Cercetri privind proiectarea sistemelor complexe de clasificare
125
6.2.3.4 Antrenarea pe setul A1 i testarea pe setul T2
Reamintesc faptul c n setul de test T2 avem doar acele documente care nu au putut fi
clasificate corect de ctre nici un clasificator SVM din cadrul metaclasificatorului prezentat n
[Mora07]. Antrenarea pentru fiecare clasificator s-a fcut pe setul A1.
Dup cum s-a observat din Figurile 6.3 (SVM polinomial) i 6.2 (SVM Gaussian)
clasificatorii de tip SVM obin rezultate diferite de 0 pe acest set (T2), dar cu ali parametri de
intrare dect cei folosii n metaclasificator. n Fig. 6.9 prezint cele mai bune rezultate obinute
de clasificatorul SVM polinomial i SVM Gaussian pe acest set, precum i mediile obinute
pentru toate testele (cele din Figurile 6.2 i 6.3). Pe ultima bar se prezint rezultatul obinut de
clasificatorul Bayes pe acest set de test. n [Mora07], regula de selecie a clasificatorilor care
au fost introdui n metaclasificator a fost s obin cele mai bune rezultate pe setul T1 (cu 2.351
vectori de documente). Dup cum s-a observat i din Figurile 6.2 i 6.3, exist clasificatori SVM
pentru care documentele din setul T2 (cel cu 136 vectori de documente) se clasific mai bine
(oricum, nemulumitor), dar acetia au obinut rezultate nesatisfctoare pe setul mare (T1)(de
exemplu: SVM polinomial, grad 1, reprezentarea Cornell SMART -80.99%, SVM polinomial,
grad 1, reprezentarea Binar -81.45%, SVM polinomial, grad 3, reprezentarea BIN -85.79% -
din Tabel 6.1 [Mora07]) i de aceea nu au fost selectai n metaclasificator. Introducerea n
metaclasificator a unui alt clasificator SVM care clasific ceva mai bine setul T2 (de exemplu cel
polinomial de grad 1 cu reprezentare Cornell Smart), alturi de cele selectate n [Mora07], care
obin 0% pe acest set, ar modifica limita maxim la care poate ajunge metaclasificatorul (n sus
sau n jos).

Fig. 6.9 Rezultate obinute de clasificatorii SVM i Bayes n clasificarea setului T2 i antrenat pe A1
n urma testelor efectuate am observat c, dei clasificatorului Bayes (BNA) genereaz
rezultate mai slabe din punct de vedere al acurateei totale dect SVM; el totui clasific n mod
corect 104 documente din cele 136 documente cu probleme din setul T2; chiar dac este antrenat
pe setul A1, iar acest fapt ar crete limita maxim obtenabil la valoarea 98.63%.
6.2.3.5 Antrenarea i testarea pe setul T2
n Fig. 6.4 i 6.5 am prezentat rezultatele obinute de clasificatorii de tip SVM cu nucleu
gaussian i SVM cu nucleu polinomial n cazul n care s-au antrenat pe setul T2 (cu doar 136
documente) i s-au testat pe acelai set. n acest caz artificios clasificatorii SVM de tip
polinomial au reuit o acuratee a clasificrii chiar de 100%, n medie ei obinnd o valoare de
17.69%
6.30%
3.40%
1.56%
14.20%
0 %
2 %
4 %
6 %
8 %
10 %
12 %
14 %
16 %
18 %
20 %
SVM Pol D1.0
CS
SVM Pol
Media
SVM RBF C2.8
BIN
SVM RBF
Media
Bayes
A
c
u
r
a
t
e
t
e

d
e

c
l
a
s
i
f
i
c
a
r
e

Clasificatori
Rezultatele pentru clasificatorii cei mai buni antrenai pe
A1 i testati pe T2
Cercetri privind proiectarea sistemelor complexe de clasificare
126
98.05%. Clasificatorul Bayes a obinut o acuratee a clasificrii de 97.95%, puin mai mic fa
de SVM. Ceea ce ne intereseaz este dac acest clasificator va reui n metaclasificator s
clasifice corect documentele din setul T2.
n urma rezultatelor favorabile din punct de vedere al setului T2 (a se vedea seciunea
5.2.4), am decis includerea clasificatorului de tip Bayes n metaclasificatorul prezentat n
[Mora07]. Astfel pe lng cei 8 clasificatori selectai, am mai introdus unul (Bayes),
metaclasificatorul avnd acum nou clasificatori.
Acum metaclasificatorul conine 8 clasificatori SVM i un clasificator Bayes, astfel:
NR.
CRT.
TIP
CLASIFICATOR
PARAMETRUL
NUCLEULUI
REPREZENTAREA
DATELOR DE
INTRARE
ACURATEEA
OBINUT
(%)
1 SVM-Polinomial 1 Nominal 86.69
2 SVM-Polinomial 2 Binary 86.64
3 SVM-Polinomial 2 Cornell Smart 87.11
4 SVM-Polinomial 3 Cornell Smart 86.51
5 SVM-Gaussian 1.8 Cornell Smart 84.30
6 SVM-Gaussian 2.1 Cornell Smart 83.83
7 SVM-Gaussian 2.8 Cornell Smart 83.66
8 SVM-Gaussian 3.0 Cornell Smart 83.41
9 Bayes - Nominal 81.32
Tabel 6.2 Clasificatorii inclui n metaclasificator
De asemenea, am calculat limita maxim la care ar putea ajunge noul metaclasificator.
Astfel, n urma introducerii clasificatorului Bayes, limita maxim a metaclasificatorului crete la
98.63% (fa de 94.21% ct era fr Bayes), ceea ce ofer o posibilitatea obinerii unei acuratei
reale a clasificrii mult mai bune dect cea obinut n [Mora07].
6.3 Metode de selecie a clasificatorilor
6.3.1 Selecia bazat pe vot majoritar (MV). Rezultate
Ideea acestei metode este de a utiliza toi clasificatorii din metaclasificator pentru a
clasifica documentul curent. Fiecare clasificator va specifica pentru documentul curent o anumit
clas creia i acord ncrederea maxim. Sarcina metaclasificatorului va fi s aleag clasa
nvingtoare pe baza categoriilor propuse de fiecare clasificator. Practic metaclasificatorul va
contoriza pentru fiecare clas voturile clasificatorilor. Clasa care obine cele mai multe voturi
este declarat clas nvingtoare. pentru o anumit categorie pentru documentul curent.
Metaclasificatorul va pstra pentru Dac dou clase obin acelai punctaj atunci
metaclasificatorul va alege ambele clase ca i clase nvingtoare. Problema major a acestui
metaclasificator este faptul c este un model neadaptiv, neavnd i un pas n care rezultatul final
s influeneze apoi funcionarea metaclasificatorului n continuare
Utiliznd votul majoritar acurateea clasificrii obinute este de 86.09%. n cazul
introducerii unui nou clasificator n metaclasificator, acurateea clasificrii a sczut fa de
valoarea obinut cu 8 clasificatori (86.38%), avnd deci o scdere de 0.29%. Aceasta poate
aprea deoarece pe tot setul de test clasificatorul Bayes obine o acuratee de doar 81.32%,
clasificnd destul de multe documente (439) incorect, ceea ce se pare c ajut, n
metaclasificator, la selectarea n 7 cazuri a unor categorii greite, deoarece Bayes a ntrit votul
greit.
Cercetri privind proiectarea sistemelor complexe de clasificare
127
6.3.2 Selecia bazat pe distana euclidian (SBED). Rezultate
n [Mora07] a fost dezvoltat un metaclasificator adaptiv care i modific modul de
funcionare ncercnd s se adapteze la datele de intrare. Sarcina acestui tip de metaclasificator
este de a alege un clasificator cruia metaclasificatorul i acord ncrederea de a clasifica
documentul curent. Rezultatul ntors de clasificatorul ales va fi rezultatul ntors de
metaclasificator. Practic metaclasificatorul are o metod euristic de a nva n funcie de datele
de intrare i se bazeaz de fapt pe exemplele greit clasificate. Astfel fiecare din cei 9
clasificatori din metaclasificator va avea o coad proprie n care se salveaz documentele greit
clasificate de acel clasificator.
Modul de funcionare al metaclasificatorului este urmtorul: cnd un document nou este
prezentat metaclasificatorului acesta va alege aleator un clasificator care l va clasifica.
Rezultatul returnat de ctre clasificator care este i totodat rezultatul furnizat de metaclasificator
va fi comparat cu clasa propus de clasificarea Reuters. n cazul n care clasele coincid se trece
la urmtorul document. Dac clasele nu coincid documentul va fi salvat n coada clasificatorului
care l-a clasificat greit. Pentru a evita utilizarea aceluiai clasificator pentru un document
asemntor se va calcula distana euclidian (prezentat iniial n ecuaia 2.11, i adaptat n
ecuaia 6.1) dintre documentul curent i toate documentele din coada clasificatorului selectat. n
cazul n care se obine o distan mai mic dect un prag prestabilit nseamn c acel clasificator
clasificnd greit un exemplu asemntor, va fi rejectat. Altfel va fi folosit n clasificare
documentului curent. Se ntmpl ca toi clasificatorii s fie rejectai i atunci totui
metaclasificatorul va alege un clasificator pentru care distana este maxim chiar dac aceasta
este mai mic dect pragul stabilit. n acest caz probabilitatea ca metaclasificatorul s clasifice
greit este mare.
2
1
( , ') ( )
n
i i
i
Eucl x x x x
=
' =

(6.1)
unde x
i
este valoarea de la poziia i a vectorului x, iar x i x sunt vectorii de intrare, unul
fiind documentul curent iar cellalt fiind vectorul din coada clasificatorului.
Funcionarea metaclasificatorului se face n dou etape. n prima etap se realizeaz de
fapt etapa de nvare n care metaclasificatorul primete informaii asupra calitii clasificrii
punnd exemplele greit clasificate n coada clasificatorilor respectivi. Aceast etap se
realizeaz cu ajutorul setului de antrenament. n etapa de testare se verific acurateea de
clasificare iar caracteristicile metaclasificatorului nu se mai schimb. Avnd n vedere faptul c
dup fiecare pas de antrenare metaclasificatorul i modific caracteristicile, n experimente cei
doi pai au fost repetai.
Prezint n tabelul 6.3 rezultatele obinute de noul metaclasificator cu 9 clasificatori
comparativ cu metaclasificatorul din [Mora07]. n tabelul 6.3 se prezint doar primii 14 pai
deoarece, dup acest numr de pai, am observat c acurateea clasificrii nu se mai modific
substanial. La fel ca n [Mora07], pragul pentru primii 7 pai s-a ales egal cu 2,5 i pragul pentru
ultimii 7 pai s-a ales egal cu 1,5.
Pas
Distan euclidian
SBED -8 clasificatori
Distan euclidian
SBED -9 clasificatori
1 84.77 83.79
2 85.71 85.07
3 86.35 83.28
4 86.60 83.54
5 86.81 85.67
6 87.32 84.43
7 88.43 82.01
8 89.83 87.75
Cercetri privind proiectarea sistemelor complexe de clasificare
128
9 90.05 88.60
10 90.56 88.73
11 91.24 88.35
12 91.58 88.60
13 92.05 89.88
14 92.05 90.39
Tabelul 6.3 Rezultate obinute de metaclasificator utiliznd distana euclidian
n Fig. 6.10, prezint grafic aceste rezultate i rezultatele obinute cu metoda vot majoritar
att pentru metaclasificatorul cu 8 clasificatoare ct i pentru cel nou.

Fig. 6.10 Acurateea clasificrii - vot majoritar i distan euclidian (metaclasificator cu 8 i 9 clasificatori)
n cazul metaclasificatorului cu 9 clasificatoare, rezultatele (90.38%) obinute sunt mai
slabe dect cele realizate de metaclasificatorul cu 8 clasificatoare (92.05%). Se pare c acurateea
de clasificare proast a clasificatorul Bayes (81.32%) comparativ cu cel SVM, reduce, n acest
caz, acurateea global de clasificare a metaclasificatorului.
Observm c acurateea clasificrii n cazul metaclasificatorul cu 9 clasificatoare are i
tendine descresctoare. Aceasta se poate datora faptului c un clasificator poate clasifica corect
un document d
1
i clasifica incorect un alt document d
2
, apropiat ca distan de documentul d
1
.
Din acest motiv, la o nou parcurgere a setului de test, clasificatorul respectiv nu a mai fost
selectat pentru clasificarea lui d
1
(deoarece a dat rezultate proaste pentru d
2
), atunci cutndu-se
un alt clasificator (care poate, la rndul su, s clasifice greit).
6.3.3 Selecia bazat pe distana cosinus (SBCOS). Rezultate
Metaclasificatorul care este prezentat n aceast seciune este asemntor n funcionare
celui prezentat n seciunea 6.3.2 singura modificare fiind modul de calculare a similaritii
dintre documentul curent i cele din coada clasificatorului ales. Astfel acest metaclasificator
folosete metrica cosinus. Reamintim formula (prezentat n ecuaia 2.14) utilizat n calculul
cosinusului unghiului dintre doi vectori x i x este:
1
2 2
1 1
'
, '
cos
'
'
n
i i
i
n n
i i
i i
x x
x x
x x
x x
u
=
= =
= =


(6.2)
76
78
80
82
84
86
88
90
92
94
1 2 3 4 5 6 7 8 9 10 11 12 13 14
A
c
u
r
a
t
e

e
a

c
l
a
s
i
f
i
c

r
i
i

(
%
)

Pai
Vot majoritar_8 clasificatori
Vot majoritar_9 clasificatori
SBED _8 clasificatori
SBED _9 clasificatori
Cercetri privind proiectarea sistemelor complexe de clasificare
129
unde x
i
este valoarea de la poziia i a vectorului x iar x i x sunt vectori de intrare
(documentele).
Acest metaclasificator va accepta clasificatorul ales dac toate valorile obinute pentru
cosinus calculate ntre documentul curent i documentele din coada clasificatorului respectiv
sunt mai mici dect un prag prestabilit.
Prezint n tabelul 6.4 rezultatele obinute de noul metaclasificator cu 9 clasificatori,
comparativ cu metaclasificatorul cu 8 clasificatori. Se prezint doar primii 14 pai, deoarece
dup acest numr de pai, acurateea clasificrii nu se mai modific substanial. La fel ca n
[Mora07], pragul pentru primii 7 pai s-a ales egal cu 0.8 iar pragul pentru ultimii 7 pai s-a ales
egal cu 0.9.
Pas
Distan cosinus
SBCOS_ 8 clasificatori
Distan cosinus
SBCOS_ 9 clasificatori
1 85.33 90.98
2 85.33 91.03
3 86.60 91.20
4 86.09 92.00
5 86.47 92.64
6 87.32 92.43
7 87.66 92.47
8 88.09 92.64
9 88.30 92.90
10 89.66 92.47
11 88.90 92.34
12 89.58 92.68
13 89.24 93.11
14 89.75 93.11
Tabelul 6.4 Rezultate obinute de metaclasificator utiliznd distana cosinus
De asemenea prezint grafic, n Fig. 6.11, rezultatele la care am adugat i limita maxim
obtenabil a noului metaclasificator.

Fig. 6.11 Rezultatele obinute cu metaclasificatorul cu 8 i cu 9 clasificatori utiliznd cosinusul
n cazul acestui metaclasificator, rezultatele obinute arat c acurateea de clasificare s-a
mbuntit de la 89.74% la 93.11%, n momentul adugrii clasificatorului Bayes (BNA).
75.00
80.00
85.00
90.00
95.00
100.00
1 2 3 4 5 6 7 8 9 10 11 12 13 14
A
c
u
r
a
t
e

e
a

c
l
a
s
i
f
i
c

r
i
i

(
%
)

Pai
SBCOS_ 8 clasificatori
SBCOS_ 9 clasificatori
Limita superioara
Cercetri privind proiectarea sistemelor complexe de clasificare
130
6.4 Arhitecturi neadaptive propuse i dezvoltate
6.4.1 Metaclasificator cu ponderi predefinite. Evaluare de tip Eurovision.
Rezultate obinute.
Metaclasificatorul propus n continuare conine cei 9 clasificatori utilizai n seciunea
anterioar i pleac de la premisa c ar conta i numrul i locul pe care apare fiecare clas n
parte. De exemplu, n cazul a doi clasificatori i 3 clase, dac o clas apare o dat pe locul 1 i o
dat pe locul 4 i o alt clas apare de 2 ori pe locul 2, este posibil ca cea de-a doua clas s fie
mai valoroas, chiar dac nu a obinut niciodat locul 1.
6.4.1.1 Metaclasificator neadaptiv bazat pe sum
n metaclasificator sunt inclui 8 clasificatori de tip SVM i unul de tip Bayes. Fiecare
dintre acetia produce un vector care conine 16 scalari, vezi Fig. 6.12. Fiecare scalar reprezint
valoarea funciei de decizie a clasificatorului pentru clasa respectiv. Pn acum, n [Mora08] se
alegea ntotdeauna valoarea cea mai mare i clasa corespunztoare a acestei valori era
considerat clasa pe care o prezice clasificatorul respectiv. Pentru fiecare document n parte vom
obine acum 9 astfel de vectori fiecare cu 16 valori.

Fig. 6.12 Metaclasificator neadaptiv bazat pe sum
Valorile funciilor de decizie pentru clasificatorii de tip SVM se afl n intervalul (-,)
dar n apropierea valorii 0, iar pentru clasificatorul de tip Bayes valorile se afl n intervalul (-,
0). Avnd n vedere aceste diferene i pentru a putea realiza nsumarea valorilor vectorilor, am
transpus valorile vectorilor n intervalul [1, ).
min( ) 1
i i
V V V = + + (6.3)
Astfel, pentru fiecare vector, diferenele ntre valorile vectorilor de ieire ai
clasificatorilor de tip SVM se pstreaz. La fel i pentru clasificatorul de tip Bayes. Pentru a
putea realiza nsumarea acestor vectori, n urmtorul pas am normalizat vectorii, aducnd
valorile acestora n intervalul (0,1].
max( )
i
i
V
V
V
= (6.4)
n cazul metaclasificatorului care realizeaz doar sumele (numit in continuare M-SUM),
am nsumat cele 16 valori ale acestor 9 vectori, vezi Fig. 6.13, clasa ctigtoare fiind clasa cu
valoarea cea mai mare obinut.
| |
9
, 1,16
1
max
i
i
c i
k
Class V k
=
=
=

(6.5)
Cercetri privind proiectarea sistemelor complexe de clasificare
131
Acest metaclasificator, fiind unul neadaptiv, va obine ntotdeauna acelai rezultat pentru
o anumit instan de intrare. n cazul rulrii pe cele 2351 documente de test (setul T1), am
obinut un numr de 313 documente clasificate eronat, care reprezint o acuratee a clasificrii de
86.68%, cu 0.59% mai mare dect valoarea obinut, folosind votul majoritar i toi cei 9
clasificatori. Astfel putem concluziona c metoda bazat pe luarea n considerare doar a clasei
nvingtoare (majority vote), are dezavantaje fa de metoda prezentat mai sus. n acest caz
exist ansa ca o clas care poate niciodat nu a obinut locul 1, dar a obinut valori apropiate de
maxim, s fie n final clasa corect.


Fig. 6.13 Metaclasificator neadaptiv bazat pe sum (M-SUM)
6.4.1.2 Metaclasificator neadaptiv bazat pe sum normalizat
Aceast metod are la baz metoda prezentat n seciunea 6.4.1.1, doar c, nainte de
nsumarea celor 16 valori din cei 9 vectori, se realizeaz o modificare a acestor valori. Astfel, n
cazul acestei ponderri vom asigna n fiecare vector pentru clasa de pe locul 1, valoarea 12,
pentru clasa de pe locul 2, valoarea 10, iar n continuare, pentru fiecare clas de pe urmtoarele
locuri, valori descresctoare pn la valoarea 1 (abordarea implementeaz soluia consacrat n
concursul european de muzic uoar EUROVISION). Astfel, n fiecare vector clasele de pe
primele 11 locuri vor avea valori diferite iar celelalte clase, pn la 16, vor avea valoarea 1.
Domeniul de reprezentare a valorilor vectorilor este {1, 2, 3, ...,10,12}, vezi Fig. 6.14. Dup
aceast etap se va realiza nsumarea vectorilor i selectarea clasei care obine valoarea cea mai
mare, analog cu metoda anterior prezentat n seciunea 6.4.1.1.


Fig. 6.14 Metaclasificator neadaptiv bazat pe sum ponderat
Cercetri privind proiectarea sistemelor complexe de clasificare
132
n urma acestei ponderri am obinut un numr de 316 erori de clasificare, ceea ce
reprezint o acuratee a clasificrii pe setul T1 de 86,55% pentru aceast metod. Rezultatele
obinute sunt cu 0,12% mai slabe dect cele obinute direct pe sum.
6.4.1.3 Metaclasificator neadaptiv bazat pe sum ponderat
n aceast seciune introducem un nou metaclasificator neadaptiv bazat pe sum
ponderata (notat n continuare M-SPON). Pentru acest metaclasificator, n pasul n care se
realizeaz ponderarea, am decis ca n fiecare vector reprezentat ca n seciunea 6.4.1, pentru
clasa de pe primul loc, noua valoare s fie vechea valoare nmulit cu 12. Pentru clasa de pe
locul 2 va fi vechea valoare nmulit cu 10, pentru locul 3 valoarea veche nmulit cu 9 .a.m.d.
pentru toate celelalte clase; valoarea minim cu care nmulim va fi 1. n cazul acesta, domeniul
de reprezentare al valorilor vectorilor este (0,12], vezi Fig. 6.15. Ca i mai sus, n continuare se
vor nsuma valorile celor 9 vectori i se va alege ca i clas nvingtoare clasa care obine
valoare maxim.

Fig. 6.15 - Metaclasificator neadaptiv bazat pe sum ponderat
n acest caz am obinut un numr de 305 documente clasificate eronat pe setul T1,
acurateea clasificrii pentru acest metaclasificator fiind de 87.02%. Aceast acuratee de
clasificare obinut este cea mai mare obinut prin utilizarea unui metaclasificator neadaptiv, dar
evident mai mic dect limita maxim de 98.63%, la care poate ajunge teoretic
metaclasificatorul.
6.4.1.4 Cercetri privind alte variante de ponderare a elementelor vectorilor
n aceast seciune prezint cteva experimente efectuate asupra valorilor de ponderare
pentru elementele celor 9 vectori rezultai n urma folosirii celor 9 clasificatori. Aceste valori
reprezint ponderea care este nmulit cu valoarea obinut de o clas n cadrul clasificatorului,
nainte de a realiza nsumarea celor 9 rezultate.
6.4.1.4.1 njumtirea ponderii
n primul experiment am ales ca valoarea de ponderare s se njumteasc pentru fiecare
clas, clasele fiind n prealabil ordonate descresctor. Astfel, valoarea clasei de pe prima poziie
se nmulete cu constanta 16, valoarea clasei de pe a doua poziie se nmulete cu constanta
8, cea de pe a treia poziie cu constanta 4 i aa mai departe, valorile claselor de pe ultimele
12 poziii se nmulesc cu constanta 1. n acest caz doar clasele de pe primele 4 poziii vor avea
ponderi distincte, celelalte rmnnd cu valoarea iniial. Ideea este de a favoriza foarte mult
primele locuri. Rezultatul obinut de metaclasificator este de 324 documente incorect clasificate,
Cercetri privind proiectarea sistemelor complexe de clasificare
133
ceea ce reprezint o acuratee a clasificrii de 86.22%. Conform rezultatelor obinute, se observ
c clasa corect nu este ntotdeauna prima clas returnat de fiecare clasificator n parte. Aceast
concluzie am formulat-o i n cazul votului majoritar care a obinut o acuratee de clasificare de
86.09%, adic 327 documente clasificate incorect.
6.4.1.4.2 Ponderi mici descresctoare linear
Pas 0.1
n acest experiment, pentru ponderi am ales valori mici iar diferena dintre ele s fie de
0.1. Astfel, ponderea valorii clasei celei cu probabilitatea cea mai mare va fi 2.5 iar a celei cu
probabilitate mai mic va fi 1. Ideea este de a nu face o diferen foarte mare ntre clasele de pe
diferite poziii, dar totui s favorizm puin clasa situat pe o poziie superioar. n acest caz
metaclasificatorul a avut un numr de 304 documente clasificate incorect ajungndu-se astfel la o
acuratee de clasificare de 87.07%. Alegerea ponderrii distincte pentru fiecare loc cu valori
apropiate este benefic n acest context.
Pas 1.0
De aceea, n urmtorul experiment am ponderat clasele cu valori descresctoare distincte
cu pasul 1. Astfel, pentru prima poziie valoarea ponderii este16, pentru a doua poziie valoarea
ponderii este 15 .a.m.d. pn la ultima poziie, la care valoarea ponderii este 1. n acest caz,
numrul de documente incorect clasificate de ctre metaclasificator a sczut la 303, ceea ce
reprezint o acuratee a clasificrii de 87.11%.
Pas 0.5
Totui, cele mai bune rezultate le-am obinut n cazul n care valorile ponderilor scad
liniar cu un pas egal cu valoarea 0,5. Valoarea de prima poziie va fi ponderat cu valoarea 8.5
.a.m.d., descresctor pn la ultima poziie, unde valoare ponderii este 1.0. Astfel, numrul de
documente incorect clasificate de ctre metaclasificator a sczut la 301, rezultnd o acuratee a
clasificrii de 87.20%.
n Fig. 6.16 prezint comparativ rezultatele obinute n seciunea 6.3.1.3.

Fig. 6.16 - Comparaie rezultate metaclasificatori neadaptivi
Rezultatele prezentate n aceast seciune au fost de asemenea publicate n [Cret09_a].
86.09
86.68
86.56
87.03
86.22
87.07
87.2 87.11
85.4
85.6
85.8
86.0
86.2
86.4
86.6
86.8
87.0
87.2
87.4
A
c
u
r
a
t
e

e
a

c
l
a
s
i
f
i
c
a
r
i
i

(
%
)

Metaclasificatori neadaptivi
Influena modului de ponderare
Cercetri privind proiectarea sistemelor complexe de clasificare
134
6.4.2 Metaclasificator cu ponderi calculate. Design Space Exploration
cu algoritmi genetici. Rezultate obinute.
n aceast seciune voi introduce un nou metaclasificator neadaptiv (dar cu pas de
nvare), bazat pe suma ponderat (l voi numi n continuare M-WSUM). Acest metaclasificator
se bazeaz tot pe 8 clasificatori de tip SVM i pe unul de tip Bayes. n acest metaclasificator,
valorile rezultate corespunztoare pentru clasele calculate vor fi nmulite cu o valoare numit
pondere. n seciunea 6.3.1 am prezentat civa metaclasificatori asemntori, folosind diverse
valori pentru ponderarea poziiilor pentru clase. ntruct alegerea valorilor optime pentru
ponderarea fiecrei poziii de clas este o sarcin dificil, n aceast seciune prezint o metod
bazat pe un algoritm genetic de calcul a ponderilor. Pornind de la setul de date de test, am creat
un fiier de testare adecvat, care este folosit pentru algoritmul genetic. Astfel, pentru fiecare
document din setul de testare am salvat toate ieirile din toi clasificatorii separat. Astfel, pentru
un document, am obinut 9 vectori de ieire (pentru c avem 9 clasificatori), fiecare vector cu un
numr de 16 scalari (pentru ca avem 16 clase). Elementele fiecruia dintre cei 9 vectori sunt n
prealabil ordonate descresctor. n algoritmul genetic folosit n experimente, un cromozom
reprezint valoarea ponderilor pentru fiecare clas separat, n funcie de poziia clasei. Prima
valoare din vector reprezint ponderea clasei de pe prima poziie din clasificator, a doua valoare
din vector reprezint ponderea clasei de pe poziia urmtoare, i aa mai departe. Astfel
cromozomul va avea forma:
( )
1 2
, ,...,
j
c w w w = , cu 1,16 j = (6.7)
unde w
j
reprezint ponderea pentru fiecare poziie a clasei, returnat de fiecare clasificator
utilizat n metaclasificator. Setul de antrenament este de forma
{ }
, , 1, 1,
ij
x y i mand j n = = ,
unde y reprezint clasa corect pentru documentul
ij
x , n reprezint numrul claselor iar m
reprezint numrul clasificatoarelor utilizate n metaclasificator. Pentru algoritmul genetic, setul
de antrenament este alctuit din ieirile tuturor clasificatorilor utilizai n metaclasificator. Pentru
a simplifica calcularea valorii funciei de fitness, voi folosi o reprezentare a cromozomului care
utilizeaz toate ieirile clasificatorilor utilizai n metaclasificator. Prin aceast abordare se va
ine cont i de poziia fiecrei clase n ieirea fiecrui clasificator. n cromozom sunt salvate,
pentru fiecare poziie a clasei, ponderile care se vor utiliza n calcularea acurateei
metaclasificatorului. Astfel, decizia metaclasificatorului include i ponderile pentru fiecare clas.
n fiecare experiment s-a pornit cu o generaie de 100 de cromozomi, fiecare dintre ei
avnd iniial valori aleatoare cuprinse n intervalul [-1, 1]. Pentru a genera o populaie nou, am
folosit operatorii genetici ca selecia, crossover i mutaia, descrii n seciunea 5.4.3.
Procesul se oprete dup un numr predefinit de 1000 de generaii, sau dac nu apar
modificri ale celui mai bun cromozom n ultimele 20 de generaii.
Pentru fiecare cromozom, funcia de fitness se va calcula ca fiind acurateea clasificrii
obinut de metaclasificator pe setul de test.
Deoarece ordinea claselor este important, n cromozom am respectat condiia w
1
>w
2
>w
16
pentru formula (6.7). Pentru calcularea funciei de fitness, am efectuat urmtorii pai:
1. pentru fiecare document din setul de test, algoritmul obine un vector de ieire
corespunztor pentru fiecare clasificator inclus n metaclasificator;
2. fiecare vector de ieire este ponderat cu valorile corespunztoare din cromozom;
3. clasa nvingtoare se stabilete nsumnd rezultatele pentru fiecare clas n parte i
alegnd-o pe cea cu valoare maxim conform formulei (6.8).
9
1,16
1
, 1,16 argmax( )
j j ij j
j
i
Class w c for j si WinClass Class
=
=
= = =

(6.8)
Cercetri privind proiectarea sistemelor complexe de clasificare
135
unde w
j
reprezint valoarea cromozomului pentru ponderea clasei situat pe poziia j, c
ij

reprezint valoarea clasei calculat de clasificatorul i de pe poziia j, Class
j
reprezint valoarea
calculat pentru clasa de pe poziia j.
4. clasa declarat nvingtoare (WinClass) de ctre metaclasificator va fi
comparat cu clasa real propus de Reuters iar dac clasele pentru acelai
document sunt identice, atunci am considerat c documentul a fost clasificat
corect;
5. dup procesarea tuturor documentelor, valoarea funciei de fitness se
calculeaz ca fiind acurateea obinut pe setul de testare.
Am considerat ca fiind cel mai bun cromozom acela cu care s-a obinut cea mai mare
valoare a funciei de fitness. Ca i metode de selecie a cromozomilor din cadrul unei populaii,
am folosit dou metode: metoda Roulette Wheel prezentat n seciunea 5.4.2.1 i metoda lui
Gauss prezentat n seciunea 5.4.2.2. Pentru crearea unei populaii am folosit toi cei 3 operatori
genetici prezentai n seciunea 5.4.3 astfel: n 30% din cazuri am folosit operatorul de selecie
(selectnd ntotdeauna cel mai bun cromozom), n 40% din cazuri am folosit operatorul de
mutaie iar operatorul de crossover l-am folosit n 30% din cazuri. Totodat am respectat condiia
iniial pentru valoarea ponderilor

ca w
1
>w
2
>w
16
. Pentru operatorul de crossover am cutat
punctul de secionare (s), astfel nct condiia
1
primul_printe al_doilea_printe
s s
w w
+
> este satisfcut. Pentru
operatorul de mutaie, dup alegerea aleatoare a punctului de mutaie (m), noua valoare este
aleas aleator din intervalul ( )
1 1
,
m m
w w w
+
e . Aceste condiii au fost impuse n algoritmul
genetic, deoarece considerm c un cromozom care nu le respect nu reprezint un cromozom
valid i astfel el nu ar trebui s fie generat.
Testele au fost efectuate pe seturile de date utilizate i de ctre metaclasificatorii propui
n seciunea 6.4.1. Pentru fiecare metod de selecie a cromozomilor, am efectuat cte 4 teste,
avnd n vedere faptul c rezultatul metaclasificatorului depinde de valorile cu care se
iniializeaz ponderile pentru cele 16 clase.
Rezultatele obinute pentru metoda Roulette Wheel de alegere a cromozomilor le
prezint n tabelul 6.5. n acest tabel prezint selectiv, din 50 n 50 de generaii, valorile acurateei
obinute de metaclasificator.
Generaii Roulette 1 Roulette 2 Roulette 3 Roulette 4 Media
1 0.76733305 0.777541472 0.778392174 0.794980859 0.779561889
50 0.868566567 0.873245427 0.870267971 0.859208847 0.867822203
100 0.871969375 0.873670778 0.871544024 0.876648235 0.873458103
150 0.873670778 0.874096129 0.874096129 0.877498937 0.874840493
200 0.873670778 0.87920034 0.876222884 0.877498937 0.876648235
250 0.875372182 0.879625691 0.878774989 0.87920034 0.878243301
300 0.875372182 0.880051042 0.878774989 0.880051042 0.878562314
350 0.875797533 0.880901744 0.878774989 0.880051042 0.878881327
400 0.877498937 0.880901744 0.87920034 0.880051042 0.879413016
450 0.87920034 0.880901744 0.882177797 0.880051042 0.880582731
500 0.87920034 0.881327095 0.882177797 0.880476393 0.880795406
550 0.880901744 0.881327095 0.882603148 0.880476393 0.881327095
600 0.880901744 0.881752446 0.8838792 0.880476393 0.881752446
650 0.880901744 0.882177797 0.8838792 0.881752446 0.882177797
700 0.882177797 0.882177797 0.8838792 0.881752446 0.88249681
750 0.882177797 0.882177797 0.8838792 0.882177797 0.882603148
800 0.882177797 0.882177797 0.8838792 0.883453849 0.882922161
850 0.883028499 0.882177797 0.8838792 0.883453849 0.883134836
900 0.884304551 0.882177797 0.8838792 0.883453849 0.883453849
950 0.884304551 0.882603148 0.8838792 0.883453849 0.883560187
1000 0.884304551 0.883028499 0.8838792 0.883453849 0.883666525
Tabelul 6.5 Acurateea obinut de metaclasificator utiliznd metoda de selecie Roulette Whele a
cromozomilor.
Cercetri privind proiectarea sistemelor complexe de clasificare
136
n Fig.6.17 am reprezentat grafic rezultatele prezentate n tabelul 6.5.

Fig. 6.17 Acurateea obinut de metaclasificator utiliznd metoda ruletei de selectare a cromozomilor
Rezultatele obinute pentru metoda Gauss de alegere a cromozomilor sunt prezentate n
tabelul 6.6. n acest tabel am prezentat selectiv, din 50 n 50 de generaii, valorile acurateei
obinute de metaclasificator.
Generaia Gauss 1 Gauss 2 Gauss 3 Gauss 4 Media
1 0.806465 0.818801 0.78775 0.801786 0.803701
50 0.871969 0.849851 0.861761 0.854955 0.859634
100 0.876223 0.872395 0.869843 0.870693 0.872288
150 0.877924 0.874947 0.870693 0.873245 0.874202
200 0.87835 0.880476 0.870693 0.873245 0.875691
250 0.878775 0.880476 0.870693 0.874096 0.87601
300 0.878775 0.880902 0.870693 0.876223 0.876648
350 0.880902 0.880902 0.870693 0.878775 0.877818
400 0.882603 0.880902 0.874947 0.881327 0.879945
450 0.882603 0.881327 0.874947 0.881327 0.880051
500 0.882603 0.881752 0.877074 0.881327 0.880689
550 0.882603 0.882603 0.877074 0.881327 0.880902
600 0.882603 0.883028 0.8792 0.881752 0.881646
650 0.882603 0.884305 0.880051 0.882178 0.882284
700 0.882603 0.884305 0.880051 0.882178 0.882284
750 0.882603 0.884305 0.880051 0.883028 0.882497
800 0.882603 0.885155 0.880476 0.883028 0.882816
850 0.882603 0.885155 0.880476 0.883028 0.882816
900 0.882603 0.885581 0.882178 0.883028 0.883348
950 0.882603 0.885581 0.883028 0.883454 0.883667
1000 0.882603 0.885581 0.883454 0.883454 0.883773
Tabelul 6.6 Acurateea obinut de metaclasificator utiliznd metoda de selecie Gauss a
cromozomilor.
n Fig.6.18 am reprezentat grafic rezultatele din tabelul 6.6.
0.76
0.78
0.8
0.82
0.84
0.86
0.88
A
c
u
r
a
t
e

e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

Generaii
Acurateea cu metoda "Roulette Whele" de selectare a cromozomilor
Roulette 1
Roulette 2
Roulette 3
Roulette 4
Media
Cercetri privind proiectarea sistemelor complexe de clasificare
137

Fig. 6.18 Acurateea obinut de metaclasificator utiliznd metoda lui Gauss de selectare a cromozomilor
Pentru cel mai bun rezultat (Gauss 2) pentru acuratee obinut de metaclasificator n cazul
utilizrii metodei Gauss de selectare a cromozomilor, ponderile w calculate pentru poziiile
claselor sunt urmtoarele:
Weights for Testing best cromosome
0.82337, 0.820739, 0.797028, 0.796625, 0.782079, 0.776642, 0.771496, 0.738956, 0.737421, 0.733313, 0.731112,
0.715836, 0.683754, 0.438121, 0.214071, 0.110157
Rezultatele obinute de metaclasificatorul cu ponderi calculate s-au mbuntit n medie
fa de rezultatele metaclasificatorului neadaptiv prezentat n seciunea 6.3.1 cu 1.16%; n cazul
utilizrii metodei Roulette Wheele de selecie a cromozomilor, acurateea de clasificare ajunge
la 88.36% iar n cazul utilizrii metodei de selecie Gauss, acurateea de clasificare crete cu
1.17% i ajungnd la 88.37%. Cel mai bun rezultat al acestui metaclasificator a fost obinut n
cazul metodei Gauss de selecie a cromozomilor, acurateea de clasificare ajungnd la 88.55% n
acest caz.
Aceste rezultate au fost prezentate i n [Cret11_a].
6.5 Arhitecturi adaptive propuse i dezvoltate
6.5.1 Metaclasificatoare bazate pe similaritate
n seciunea 6.2 am propus posibile soluii pentru mbuntirea acurateei de clasificare a
metaclasificatorului. n seciunea 6.2.2 am afirmat c, n cazul unui nou document d
n
care trebuie
clasificat, se ia pe rnd fiecare clasificator i se calculeaz distanta ntre d
n
i fiecare document
din coada de erori a clasificatorului respectiv. Dac cel puin o distan calculat este mai mic
dect pragul stabilit, metaclasificatorul nu va folosi acel clasificator pentru a clasifica
documentul d
n
. n cazul n care se rejecteaz astfel toi clasificatorii, metaclasificatorul va alege
totui pe cel care are distana cea mai mare obinut (chiar dac este mai mic dect pragul
stabilit). Actualmente, metaclasificatorul va prezice clasa specificat de acest clasificator.
Modificarea adus n acest caz metaclasificatorului ar fi c, n acest caz, clasificatorul ales s nu
mai selecteze clasa cu valoarea cea mai mare (pentru c oricum va da gre, deoarece este
predispus s clasifice eronat tipul respectiv de documente), ci s selecteze clasa imediat
urmtoare din lista de clase pe care le prezice. Se va alege urmtoarea clas prezis doar dac
valoarea pentru aceasta este suficient de apropiat de valoarea maxim obinut de clasificator (cu
0.78
0.8
0.82
0.84
0.86
0.88
0.9
A
c
u
r
a
t
e

e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

Generaii
Acurateea cu metoda Gauss de selectare a cromozomilor
Gauss 1
Gauss 2
Gauss 3
Gauss 4
Avearge
Cercetri privind proiectarea sistemelor complexe de clasificare
138
un c=0.5 ales n experimentele efectuate). n acest caz clasificatorul ar specifica o alt clas
pentru documentul curent d
n
. Efectund aceste modificri rezultatele metaclasificatorului cu 9
clasificatori s-au mbuntit. n continuare vom numi acest metaclasificator metaclasificator cu
9 clasificatori modificat.
Prezentm comparativ rezultatele obinute de metaclasificatorul cu 9 clasificatori
modificat n cazul seleciei bazate pe distana euclidian i seleciei bazate pe distana cosinus.
Pentru selecia bazat pe votul majoritar, nefiind vorba de nvare, modificrile aduse
metaclasificatorul nu au nici o influen asupra rezultatului final. De asemenea, am prezentat n
fiecare grafic i limita maxim obtenabil a metaclasificatorului cu 9 clasificatoare.
6.5.1.1 Rezultate obinute n cazul seleciei bazate pe distana euclidian
Metaclasificatorul cu 9 clasificatori modificat care se bazeaz pe distana euclidian i-a
mbuntit clasificarea, obinnd o acuratee a clasificrii de 93.32% fa de cel cu 9
clasificatori nemodificat care a obinut doar 90.38%. Reamintim faptul c, n aceleai condiii,
metaclasificatorul cu 8 clasificatori de tip SVM din [Mora07] a obinut o acuratee de clasificare
de 92.04%, maximul obinut pe 8 clasificatoare. n primii 7 pai, acurateea clasificrii pentru
metaclasificatorul cu 9 clasificatoare modificat este aproape identic cu cea a
metaclasificatorului cu 9 clasificatoare nemodificat, deoarece n primii pai nu apare niciodat
cazul n care trebuie aleas ce-a de-a doua clas. n primii pai, rezultatele ntre cele dou
metaclasificatoare cu 9 clasificatori, cel modificat i nemodificat sunt puin diferite, deoarece
ntotdeauna se alege aleator un clasificator din cei 9 existeni.
Rezultatele obinute le prezint comparativ n tabelul 6.7.
Pai
Distan euclidian
SBED cu 8
clasificatori
Distan euclidian
SBED cu 9
clasificatori
Distan euclidian
SBED cu 9 clasificatori i
selecie modificat
1 84.77244 83.79413 84.77244
2 85.70821 85.07018 83.07103
3 86.34624 83.28371 83.49638
4 86.60145 83.53892 84.64483
5 86.81412 85.66567 85.32539
6 87.32454 84.43216 86.51638
7 88.43046 82.00766 85.70821
8 89.83411 87.74989 88.55806
9 90.04679 88.60060 92.72650
10 90.55721 88.72820 93.06678
11 91.23777 88.34538 93.32199
12 91.57805 88.60060 93.32199
13 92.04594 89.87665 93.32199
14 92.04594 90.38707 93.32199
Tabelul 6.7 Acurateea obinut de metaclasificator utiliznd distana euclidian i selecia clasei
modificat.
n Fig. 6.18 prezint grafic rezultatele, la care am adugat i limita teoretic maxim
98.36% la care poate ajunge metaclasificatorul format din 9 clasificatoare.
Cercetri privind proiectarea sistemelor complexe de clasificare
139

Fig. 6.18 Acurateea de clasificare obinut de metaclasificatorul cu 9 clasificatori modificat bazat pe distana
euclidian
6.5.1.2 Rezultatele obinute n cazul seleciei bazate pe distana cosinus.
n acest caz, acurateea de clasificare a metaclasificatorului s-a mbuntit de la 93.10%
la 93.87%. Reamintim c metaclasificatorul cu 8 clasificatori de tip SVM n aceleai condiii a
obinut o acuratee de clasificare de 89.74%. Rezultatele obinute le prezint comparativ n tabelul
6.8, adugnd i valorile obinute de acelai metaclasificator.
Pai
Distan cosinus
SBCOS 8 clasificatori
Distan cosinus
SBCOS 9 clasificatori
Distan cosinus
SBCOS 9 clasificatori i
selecie modificat
1 85.32539345 90.98256061 91.32284134
2 85.32539345 91.02509570 92.25861336
3 86.60144619 91.19523607 92.89663973
4 86.09102510 92.00340281 93.44959592
5 86.47384092 92.64142918 93.15185028
6 87.32454275 92.42875372 92.74819226
7 87.66482348 92.47128881 93.36452573
8 88.09017439 92.64142918 93.74734156
9 88.30284985 92.89663973 93.02424500
10 89.66397278 92.47128881 93.36452573
11 88.89834113 92.34368354 92.93917482
12 89.57890259 92.68396427 93.32199064
13 89.23862186 93.10931519 93.66227137
14 89.74904296 93.10931519 93.87494683
Tabelul 6.8 Acurateea obinut de metaclasificator, utiliznd distana cosinus i selecia clasei modificat
n Fig. 6.19 prezint grafic rezultatele, la care am adugat i limita superioar la care poate
ajunge teoretic metaclasificatorul propus.
80
82
84
86
88
90
92
94
96
98
100
1 2 3 4 5 6 7 8 9 10 11 12 13 14
A
c
u
r
a
t
e

e
a

c
l
a
s
i
f
i
c

r
i
i

(
%
)

Pai
Limita superioara
SBED _8 clasificatori
SBED _9 clasificatori
SBED _9 clasificatori
selectie modificata
Cercetri privind proiectarea sistemelor complexe de clasificare
140

Fig. 6.19 Acurateea de clasificare a metaclasificatorului cu 9 clasificatori modificat, bazat pe cosinus
Acurateea de clasificare de 93.87% reprezint cel mai bun rezultat obinut de ctre
metaclasificator, din toate experimentele prezentate pn n acest moment.
Rezultatele din aceast seciune au fost prezentate i n [Mora10].
6.5.2 Metaclasificator bazat pe algoritmul Backpropagation
Metaclasificatorul dezvoltat n continuare se bazeaz pe o preclasificare de documente
prezentat n seciunea 6.4.1.2 i o reea neuronal de tip feed-forward cu nvare online. Am
dorit s includem n metaclasificatorul numit n continuare MC-BP (Metaclasificator cu reea
Backpropagation) o reea neuronal, deoarece am considerat c un metaclasificator adaptiv
poate va reui s se adapteze i la datele cu probleme, care exist n setul de antrenare/testare.
Reelele neuronale sunt sisteme care se adapteaz la schimbrile survenite n seturile de date,
astfel c metaclasificatorul MC-BP devine unul mult mai adaptiv dect metodele SBDE i
SBCOS dezvoltate i prezentate n [Mora06_a].
Cel mai bun rezultat de pn acum, prezentat n lucrare, s-a obinut cu ajutorul
metaclasificatorului bazat pe cosinus, unde acurateea de clasificare a atins valoarea de 93,87%
pe setul de test T1 cu 2351 documente.
Pentru antrenarea i testarea reelei neuronale cu nvare Backpropagation, am plecat de
la setul de vectori obinut de metaclasificatorul neadaptiv prezentat n seciunea 6.4.1.2. Am
antrenat acel metaclasificator cu setul de antrenament A1 (4702 documente) i l-am testat
folosind setul de test T1 (2351 documente) [Cret08]. Ca i intrare n acest metaclasificator, avem
setul de date iar la ieire obinem un set de vectori, cte un vector pentru fiecare document de
intrare, de 16 elemente fiecare. Setul de vectori obinut, pornind de la setul de documente de
antrenare A1, pe care l vom numi n continuare setul AV1 este un vector agregat coninnd 16
elemente (scalari). Acesta va fi folosit n etapa de antrenare a reelei. Setul de vectori obinut
pornind de la setul de documente de testare T1, numit n continuare TV1, va fi folosit att in
etapa de testare ct i n etapa de determinare a configuraiei reelei.
n ceea ce privete arhitectura reelei backpropagation, am ales una care conine dou
straturi de uniti cu funcia sigmoidal de activare, iar fiecare unitate de pe fiecare strat este
84
86
88
90
92
94
96
98
100
1 2 3 4 5 6 7 8 9 10 11 12 13 14
A
c
u
r
a
t
e

e
a

c
l
a
s
i
f
i
c

r
i
i

(
%
)

Pai
SBCOS_ 8 clasificatori
SBCOS_ 9 clasificatori
SBCOS_ 9 clasificatori_cu
alegere modificata
Limita superioara
Cercetri privind proiectarea sistemelor complexe de clasificare
141
conectat cu toate unitile de pe stratul precedent. Deoarece la intrare avem la dispoziie vectori
agregai de 16 elemente, reeaua va avea pe stratul de intrare 16 neuroni. La ieire,
metaclasificatorul trebuie s prezic clasa n care se gsete documentul curent. Atunci reeaua
Backpropagation va avea la ieire tot un numr de 16 neuroni, deoarece avem 16 clase distincte,
iar la un moment dat va fi activ doar un neuron. n stratul ascuns avem un numr variabil de
neuroni, alegerea acestui numr va fi fcut n funcie de rezultatele simulrilor care vor fi
prezentate n seciunea urmtoare (6.4.2.1).
n faza de antrenare, deoarece reeaua este una cu nvare supervizat, pentru setul de
antrenare am creat un set cu rspunsurile corecte pentru fiecare document n parte. Un astfel de
rspuns conine valoarea 1 pe poziia clasei corecte i valoarea 0 n rest. Structura
metaclasificatorului adaptiv M-BP este prezentat n Fig. 6.20.


Fig. 6.20 Metaclasificator adaptiv M-BP
6.5.2.1 Influena numrului de neuroni de pe stratul ascuns
Deoarece nu exist o formul matematic pentru calcularea numrului optim de neuroni
necesari pe stratul ascuns, n aceast seciune prezentm experimentele realizate n vederea
determinrii numrului optim de neuroni pentru reeaua prezentat n Fig. 6.20. Experimentele
prezentate n aceast seciune sunt efectuate pe setul TV1, att antrenarea ct i testarea
[Cret09_b].
Ca i metod de evaluare, am oprit antrenarea reelei dup ce aceasta a ajuns din punct de
vedere al erorii de antrenare la anumit valoare, am evaluat reeaua pe ntreg setul, din punct de
vedere al numrului de documente incorect clasificate, dup care am continuat antrenarea.
Valorile erorii la care am oprit antrenarea reelei sunt calculate ca fiind sum a tuturor erorilor
obinute pentru fiecare exemplu n parte din setul TV1. Pentru calculul erorii, am folosit formula
(5.39). Evaluarea reelei n acel punct se face prin numrul de documente incorect clasificate de
ctre reea. Avnd n vedere c setul TV1 conine 2351 vectori i c eroarea pe fiecare vector
reprezint o sum de 16 elemente, eroarea total va avea valori supraunitare. Vom ncepe
testarea pornind de la o valoare a erorii totale egal cu 500, ceea ce nseamn o eroare medie pe
fiecare vector de 0.21. Ideea este de ajunge cu eroarea de antrenare la o valoare ct mai mic,
ntr-un timp ct mai scurt.
Cercetri privind proiectarea sistemelor complexe de clasificare
142
n Fig. 6. 21 prezint evoluia acurateei de clasificare a MC-BP, n funcie de numrul de
neuroni de pe stratul ascuns. Iniial am pornit de la un numr de 17 neuroni pe stratul ascuns.
Toate experimentele prezentate n aceast seciune au coeficientul de nvare fix q=1. n
momentul n care timpul necesar reelei pentru a reduce eroarea de antrenare devine mare, am
oprit antrenarea reelei pentru acea configuraie. Din acest motiv, n figurile prezentate n
continuare, unele grafice nu coboar cu eroarea de antrenare pn la valoarea minim obinut de
cea mai bun configuraie testat.

Fig. 6.21 Influena numrului de neuroni de pe stratul ascuns asupra acurateei de clasificare.
Coeficient de nvare q=1
n acest grafic am nceput cu un numr mic de neuroni pe stratul ascuns, pentru a avea un
timp de nvare relativ mic (din punct de vedere al calculelor efectuate), dar n momentul n care
am ajuns la valori totale ale erorii de antrenare n jur de 200, timpul de antrenare crete, iar
datorit coeficientului de nvare mare, reeaua ncepe s fluctueze n jurul unei valori a erorii
totale. Din acest motiv am oprit evaluarea reelei la un numr de 52 de neuroni pe stratul ascuns,
chiar dac acurateea de clasificare cretea n continuare.
6.5.2.2 Influena coeficientului de nvare
n aceast seciune prezint experimente n care modific i pasul de nvare. n cazurile n
care reeaua este mai simpl (are un numr mai mic de neuroni pe stratul ascuns), de la un
moment dat eroarea total a nceput s scad foarte ncet, moment n care am oprit antrenarea
reelei. De aceea, din acel punct nu vor mai fi valori n graficele pe care le prezint. Am modificat
numrul de neuroni utiliznd multipli ai lui 16 (Fig. 6.22 i 6.23). Pe msur ce am crescut
numrul neuronilor de pe stratul ascuns pstrnd pas de nvare q=1, eroarea a sczut de la 0.2
la 0.04 per exemplu. Cea mai bun valoare a acurateei de clasificare obinut pn n acest
moment este de 94.26%, fiind deja superioar celei mai bune valori obinute cu
metaclasificatorul de tip SBCOS cu 9 clasificatoare (93.32%).
Totui, odat cu creterea numrului de neuroni de pe stratul ascuns, am observat c
timpul de antrenare pentru reea scade, chiar dac numrul de calcule care trebuie efectuate
75
77
79
81
83
85
87
89
91
93
95
A
c
u
r
a
t
e
t
e
a

c
l
a
s
i
f
i
c
a
r
i
i

Eroarea de antrenare a reelei
Coeficientul de invatare etha constant 1
17
19
20
32
36
38
48
49
52
Cercetri privind proiectarea sistemelor complexe de clasificare
143
crete. n cazul n care avem mai muli neuroni pe stratul ascuns, reeaua ajunge mai repede la o
eroare mai mic, iar fluctuaiile apar la valori mici ale erorii. Numrul mai mare de neuroni pe
stratul ascuns duce la o micorare mai rapid a erorii datorit unei distribuii mai adecvate.
Aceast convergen superioar compenseaz timpul necesar efecturii unui numr mult mai
mare de calcule. De asemenea i acurateea clasificrii crete semnificativ.
n continuare voi prezenta experimente efectuate pe acelai numr de neuroni pe stratul
ascuns, dar cu un coeficient de nvare care scade n timp. Practic, oprim antrenarea reelei la
anumite valori ale erorii totale de antrenare, efectum testarea, i continum antrenarea reelei cu
un coeficient de nvare micorat. De exemplu, pn la o valoare a erorii totale egal cu 350,
coeficientul de nvare este 1, ntre 340 i 320 este 0.9, ntre 320 i 300 este 0.8 i scade
pn la valoarea de 0.1 la o valoare a erorii de 150.

Fig. 6.22 Influena numrului de neuroni de pe stratul ascuns asupra acurateei de clasificare. Coeficient de
nvare q diferit
n Fig. 6.22 am prezentat doar evoluia reelei pentru un numr de neuroni pe stratul
ascuns egal cu 38, 52 i 64, deoarece acestea au obinut rezultatele cele mai bune n cazul
coeficientului de nvare constant. n acest grafic am cobort cu eroarea de nvare pn la
valoarea de 130 (coeficientul de nvare a ajuns la 0.01), deoarece reeaua nu a mai fluctuat mult
n jurul erorii i astfel timpul de antrenare a fost redus. n acest caz, cu un numr de 52 de
neuroni pe stratul ascuns, numrul de vectori incorect clasificai pentru o eroare total de
antrenare egal cu 170 este de 136. n acest grafic am prezentat i rezultate obinute pe o reea cu
64 de neuroni pe stratul ascuns, caz n care eroarea total de antrenare a sczut la valoarea de
130 iar numrul de documente incorect clasificate s-a redus la 95, ceea ce reprezint o
acuratee de clasificare de 95.96%.
Am observat c, odat cu creterea numrului de neuroni de pe stratul ascuns, se
mbuntete acurateea clasificrii, deoarece putem ajunge la o eroare de antrenare mult mai
mic. Am efectuat i unele experimente n care numrul de neuroni de pe stratul ascuns este mai
mare, regula de alegere a numrului de neuroni de pe stratul ascuns fiind multipli ai lui 16
prezentate n Fig. 6.23.
75.00
80.00
85.00
90.00
95.00
100.00
500 400 340 320 300 280 260 240 220 200 180 160 140
A
c
u
r
e
t
e

e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

Eroarea de antrenare a reelei
Evoluia BP-MC. Coeficient de nvare diferit
38 neuroni strat ascuns
52 neuroni strat ascuns
64 neuroni strat ascuns
Cercetri privind proiectarea sistemelor complexe de clasificare
144

Fig. 6.23 Influena numrului de neuroni de pe stratul ascuns asupra acurateei de clasificare.
Coeficient de nvare q diferit
n acest caz, arhitectura cu 160 de neuroni pe stratul ascuns a obinut cele mai multe
rezultate bune, dar, n momentul n care eroarea total de antrenare a sczut pn la valoarea 70,
timpul de antrenare pentru ca eroarea s scad la valoarea 60 a depit 24 ore! De aceea am
realizat o arhitectur a reelei i cu 192 de neuroni pe stratul ascuns, care a reuit s coboare la o
eroare de antrenare egal cu 40, caz n care numrul de documente incorect clasificate este de
doar 11. Acest numr reprezint o acuratee a clasificrii pentru metaclasificatorul M-BP de
99.53%. O eroare total de antrenare egal cu 40 nseamn o eroare medie per exemplu egal cu
0.017.
Experimentele prezentate au fost rulate pe un calculator P-IV Dual core la f=1.9GHz cu
2GB DRAM i sistem de operare Windows Vista. Prezentm n Fig. 6.24 rezultatele comparative
ntre arhitectura reelei cu 52 neuroni pe stratul ascuns i coeficient de nvare 1 i respectiv
aceeai arhitectur dar coeficient de nvare descresctor n timp. Pentru a ajunge la prima
oprire (eroare 500), reeaua are nevoie de mai mult timp, deoarece pornete de la o eroare mare
dar care scade foarte repede. Timpii pentru urmtoarele opriri ale reelei sunt timpii necesari
reelei pentru a ajunge de la valoarea erorii de la pasul curent la valoarea erorii de la urmtoarea
oprire.
75.00
80.00
85.00
90.00
95.00
100.00
500 400 340 320 300 280 260 240 220 200 180 160 140 120 100 80 60 40
A
c
u
r
e
t
e

e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

Eroarea de antrenare a reelei
Evoluia BP-MC. Coeficient de nvare diferit
64 neuroni strat ascuns
128 neuroni strat ascuns
160 neuroni strat ascuns
176 neuroni strat ascuns
192 neuroni strat ascuns
Cercetri privind proiectarea sistemelor complexe de clasificare
145

Fig. 6.24 Timpul de antrenare - comparaie ntre 2 arhitecturi cu 52 neuroni pe stratul ascuns.
Rezultatele prezentate anterior au fost obinute antrennd i testnd reeaua
Backpropagation pe setul TV1, care conine 2351 vectori (deci pe acelai set ceea ce reduce
valoarea practic). n cele ce urmeaz prezentm rezultatele obinute n cazul antrenrii pe setul
AV1 (4702 vectori) i a testrii pe setul TV1.
Rezultate obinute n cazul antrenrii pe setul AV1 i a testrii pe TV1 sunt prezentate n
Fig. 6.25. Prezint rezultate doar pentru arhitecturi ale reelei cu un numr de neuroni mai mare de
96 pe stratul ascuns i un coeficient de nvare descresctor n timp. i n acest caz, pentru
testare, oprim reeaua n momentul n care atinge un anumit prag al erorii de antrenare, o testm
pentru a obine numrul de documente incorect clasificate, dup care continum cu antrenarea. n
acest caz, eroarea total de antrenare este obinut ca o sum a tuturor celor 4702 erori, ceea ce
reprezint o medie a erorii per exemplu de 0.11 n cazul erorii totale egale cu 500. n acest
experiment am ajuns la o eroare total egal cu 80, ceea ce nseamn o eroare medie de 0.017 per
exemplu.
1
10
100
1000
10000
100000
s
e
c
u
n
d
e

Eroare de antrenare pe setul TV1
Timp antrenare
52-etha=1
52-etha diferit
Cercetri privind proiectarea sistemelor complexe de clasificare
146

Fig. 6.25 Acurateea de clasificare n cazul antrenrii pe setul AV1 i a testrii pe setul TV1
Arhitectura cu 176 de neuroni pe stratul ascuns a obinut cele mai multe valori minime
pentru numrul de documente incorect clasificate, dar n momentul n care eroarea total de
antrenare a sczut sub valoarea 100, rezultatele cele mai bune au fost obinute de arhitectura cu
192 de neuroni pe stratul ascuns. n acest caz am obinut un numr de 14 documente incorect
clasificate, ceea ce reprezint o acuratee de clasificare a metaclasificatorului de 99.40%.
Diferena fa de cea mai bun valoare fa de cea cu 176 de neuroni pe stratul ascuns este de
doar 3 documente incorect clasificate.
Coeficientul de nvare Eroarea total de antrenare
Numr de neuroni pe stratul ascuns
96 128 160 176 192
1 500 381 369 368 376 374
1 450 345 325 334 324 321
1 400 278 282 268 282 288
1 350 221 226 223 232 224
0,9 340 214 220 213 222 217
0,9 330 199 212 200 206 217
0,8 320 196 209 194 199 205
0,8 310 186 199 185 194 195
0,7 300 173 190 170 184 184
0,7 290 161 177 170 170 167
0,6 280 155 168 161 164 160
0,6 270 149 158 154 154 152
0,6 260 139 147 146 142 145
0,6 250 123 141 134 130 132
0,5 240 116 132 127 124 128
0,5 230 112 124 120 111 115
0,5 220 108 114 106 103 99
0,4 210 102 109 98 91 96
90
91
92
93
94
95
96
97
98
99
100
350 320 290 260 230 200 170 140 110 80
A
c
u
r
a
t
e
t
e
a

d
e

c
l
a
s
i
f
i
c
a
r
e

Eroarea de antrenare pe setul AV1
Evoluia BP-MC
96 neuroni strat ascuns
128 neuroni strat ascuns
160 neuroni strat ascuns
176 neuroni strat ascuns
192 neuroni strat ascuns
Cercetri privind proiectarea sistemelor complexe de clasificare
147
0,4 200 100 104 87 82 85
0,3 190 91 97 81 73 76
0,3 180 88 83 71 64 64
0,2 170 77 80 68 58 57
0,2 160 76 70 62 56 53
0,1 150 67 61 56 43 49
0,1 140 56 57 46 35 41
0,1 130 53 42 33 35
0,1 120 49 36 27 30
0,1 110 32 25 28
0,1 100 22 23
0,01 90 21 19
0,01 80 17 14

Tabel 6.3 Numr de documente incorect clasificate
n Tabelul 6.3 am prezentat numrul de documente incorect clasificate obinut de
arhitecturile testate. Pentru fiecare arhitectur am prezentat valoarea obinut pentru toate testele
efectuate n timpul antrenrii reelei. Astfel, n coloana a doua se prezint valorile erorii totale de
antrenament la care reeaua a fost oprit i testat. n prima coloan se prezint valorile
coeficientului de nvare care a fost folosit pentru reea, astfel nct eroarea de antrenare a
reelei s coboare la valoarea precizat.
Acest nou metaclasificator cu o reea neuronal cu numr suficient de mare de neuroni pe
stratul ascuns a reuit s depeasc i limita maxim de 98.63% la care ar fi putut ajunge
teoretic clasificatorii inclui n cadrul metaclasificatorului.
Foarte interesant, acest metaclasificator neuronal cu nvare supervizat a demonstrat
faptul c acurateea de 98.63% nu este de fapt limita maxim a metaclasificrii, aa cum eu
considerasem. Datorit procesului de nvare supervizat, aceast limit poate fi depit. Spre
exemplu, n cazul unui vector de intrare n reea al crui element maxim nu se afl situat pe
poziia clasei corecte, acesta poate activa la ieire celula corect tocmai datorit unui proces de
nvare adecvat (n care reelei i s-au mai livrat exemple asemntoare). Aceast limit maxim
a acurateei clasificrii este corect doar pentru metode de agregare neadaptive (postclasificare
triviala) ale clasei optimale. Cu acest adaus, limita teoretic rmne corect i devine acum clar
de ce algoritmul neuronal (adaptiv) o poate depi i o chiar depete!
Rezultatul obinut de acest metaclasificator pentru acurateea clasificrii de 99.40% este
cel mai bun rezultat obinut n toate experimentele efectuate n prezenta lucrare (pentru cazul
antrenrii i testrii pe seturi diferite).
Rezultatele prezentate n seciunea 6.4.2 au fost prezentate i n [Cret10_b].
Concluzii
148
Partea IV-a. Concluzii
7 Concluzii
7.1 Contribuii originale ale autorului
Lucrarea prezint munca autorului n domeniul clusteringului i clasificrii de documente,
n special n clasificarea / clusteringul documentelor text i a celor web. Din contribuiile
autorului n acest domeniu se pot remarca urmtoarele:
n Capitolul 1 autorul realizeaz o trecere n revist a acestei teze. Autorul evideniaz
procesul de clasificare automat a documentelor cu toate prile componente i evideniaz
prile n care autorul i-a adus contribuii.
n Capitolul 2 autorul realizeaz o sintez a metodelor consacrate n domeniul extragerii
de cunotine din baze de date. Se pune accentul pe metodele aplicate documentelor text i
documentelor web. Autorul prezint critic, comparativ aspecte generale referitoare la nvarea
supervizat i cea nesupervizat i implicaiile pentru analiza clasificrii i cea a clusteringului.
Se prezint metricile utilizate de ctre algoritmi pentru calcularea similaritii sau disimilaritii
dintre documente. Pentru evaluarea rezultatului algoritmilor de clasificare/clustering sunt
prezentate i msurile de evaluare intern i extern; de asemenea se prezint seturile de date
utilizate pentru algoritmii de clasificare n etapele de antrenare i respectiv testare precum i
seturile de date RSS utilizate n algoritmii de clustering.
Capitolul 3 conine o prezentare original a unei posibile taxonomii a algoritmilor de
clustering. Sunt prezentate diferite tipuri de algoritmi de clustering pentru fiecare categorie n
parte, fiind prezentai detaliat algoritmii cei mai reprezentativi; algoritmii HAC (Hierarchical
Agglomerative Clustering) i K-Medoids au fost prezentai n detaliu, cei doi fiind alei pentru
efectuarea experimentelor n clusteringul documentelor text; este exemplificat ntr-un spaiu
bidimensional modul de rulare al acestor algoritmi.
n Capitolul 4 sunt prezentate cercetrile autorului i contribuiile originale n domeniul
clusteringului. n acest capitol autorul a realizat o cercetare care a avut ca obiectiv compararea
celor dou modele de reprezentare a datelor text: modelul VSM (Vector Space Model) i
respectiv modelul STDM (Suffix Tree Document Model), mai puin utilizat n reprezentarea
documentelor text. Ipoteza tiinific pornete de la ideea c reprezentarea STDM n ceea ce
privete reprezentarea documentelor de tip text include i ordinea cuvintelor din fraze nu doar
cuvintele din document. Astfel, n mod implicit, acest model conine i cteva elemente de
semantic a documentului. iar prin reprezentarea arborescent-ierarhica a documentului, se
apropie cumva implicit de o reprezentare (mai) semantic, ceea a adus mbuntiri algoritmilor
de clustering. Autorul a decis din raiuni de complexitate a calculului reprezentarea tot a cte
dou documente, calcularea distanei dintre cele dou documente pe baza unei metrici i apoi
obinerea unei matrice de distane. Aceast matrice de distane a fost apoi utilizat n cadrul celor
doi algoritmi de clustering alei HAC i k-Medoids.
An expert is a man who has made all the mistakes which can be
made, in a narrow field.
N. Bohr

Concluzii
149
De asemenea autorul a propus pentru modelul STDM o metric original NEWST care s-
a dovedit a fi superioar celor existente n literatura de specialitate. Media acurateei obinut pe
toate seturile de date S01-S07 obinut de ctre metrica NEWST a fost de 87.23%.
n Capitolul 5 se face o prezentare a unei taxonomii pentru algoritmii de clasificare. Sunt
prezentai algoritmi de clasificare caracteristici pentru fiecare categorie i unele rezultate din faza
de testare a acestora. Clasificatorul de tip Bayes este ales de autor pentru a fi folosit pe seturile
de date Reuters i de aceea se prezint partea matematic aferent acestui clasificator. Se
prezint rezultatele experimentelor realizate cu acest clasificator pe baza de date Reuters 2000,
pentru a arta c adaptarea acestui tip de clasificator n sensul de a utiliza uniformizarea
(normalizarea) lui Laplace, l face fezabil s fie utilizat la clasificarea de vectori de dimensiune
foarte mare. Din pcate nu s-a reuit modificarea acestuia, astfel nct s lucreze cu documente
clasificate n mai multe categorii, cum sunt cele din baza de date Reuters. Astfel se consider c
un document poate s aparin la mai multe clase, iar clasele astfel create nu trebuie s fie strict
disjuncte, ele putnd s fie suprapuse. Dac s-a eliminat posibilitatea existenei claselor
suprapuse acurateea de clasificare este de 75.89%. De asemenea, la finalul capitolului cinci sunt
prezentate noiuni generale legate de metaclasificatori i utilizarea acestora n mbuntirea
rezultatelor finale ale clasificrii.
n Capitolul 6 se prezint rezultatele cercetrii privind proiectarea metaclasificatorilor i
posibiliti de mbuntire a acurateei de clasificare realizat de metaclasificatorul prezentat
iniial n [Mora07]. Sunt propuse unele soluii de mbuntire a rezultatelor i se prezint 3
metaclasificatori adaptivi i neadaptivi originali care se dovedesc superiori.
Astfel metaclasificatorii neadaptivi creai pornesc de la ideea c n loc s contorizeze
clasa prezis de fiecare clasificator n parte, cum ar fi n cazul vot majoritar (MV), nsumeaz
simplu toate valorile generate de ctre clasificatoare pentru fiecare clas n parte. n diferite
experimente acele valori au fost apoi ponderate cu valori alese experimental. Cel mai bun
rezultat a fost obinut cnd s-a utilizat ponderarea liniar cu pasul de 0,5 acurateea de
clasificare fiind de 87.20%. Fiind o problem de Design Space Exploration pentru gsirea
ponderilor optime s-a utilizat ntr-o nou abordare un algoritm genetic. Astfel acurateea de
clasificare a metaclasificatorului s-a mbuntit ajungnd n medie la 88.37%. Cel mai bun
rezultat al acestui metaclasificator a fost obinut ntr-un experiment folosind metoda Gauss de
selecie a cromozomilor, acurateea de clasificare ajungnd la 88.55%.
Pentru metaclasificatorii adaptivi introducerea n cadrul metaclasificatorului prezentat n
[Mora07] a clasificatorului Bayes a dus la creterea limitei maxime a acurateei aceasta ajungnd
la 98.63%. Contribuia autorului a fost modificarea adus alegerii clasificatorului care va fi
utilizat de metaclasificator pentru a clasifica un anumit document i a clasei pe care o prezice
acesta. Astfel n cazul SBED s-a obinut o acuratee a clasificrii de 93.32%, iar n cazul SBCOS
s-a obinut o mbuntire de la 93.10% la 93.87%.
n cazul metaclasificatorului hibrid contribuiile autorului s-au concretizat prin realizarea
unei componente, considerat ca fiind etapa de preclasificare, realizat din metaclasificatorul
(selector) neadaptiv i o component nou, considerat ca fiind etapa de postclasificare, adaptiv,
realizat dintr-o reea neuronal de tip backpropagation. Cele mai bune rezultate s-au obinut
folosind o reea neuronal cu 192 de neuroni pe stratul ascuns, acuratee de clasificare ajungnd
la 99.40% pe setul de antrenare.
Prezenta tez se ncheie cu Capitolul 7 care este dedicat prezentrii ideilor care se
desprind din aspectele teoretice i practice ale cercetrilor efectuate i care sintetizeaz
contribuiile personale aduse n aceast lucrare, precum i perspectivele de cercetare.
Concluzii
150
7.1.1 Contribuii originale n problema metaclasificatorilor
Contribuii n realizarea metaclasificatorilor neadaptivi
Autorul a creat o serie de metaclasificatori neadaptivi care folosesc diferite procedee
pentru ponderarea valorilor generate de ctre fiecare clasificator n parte, cu scopul de a
mbunti acurateea final a clasificrii. Astfel s-a creat un metaclasificator care, n loc s
contorizeze clasa prezis de fiecare clasificator n parte, cum ar fi n cazul vot majoritar (MV),
va nsuma simplu toate valorile generate de ctre clasificatoare pentru fiecare clas n parte.
Autorul a recurs la aceast abordare deoarece a observat c clasa care apare uneori pe poziia a
doua la majoritatea clasificatoarelor, dar foarte aproape ca si valoare de clasa de prima poziie,
este, n realitate, clasa corect (soluie de tip Eurovision). Rezultatele obinute de acest
metaclasificator sunt mai bune dect votul majoritar, dar nu semnificativ. Autorul a prezentat o
serie de experimente care ncearc diferite valori pentru a pondera valorile fiecrei clase din
vectorii generai de ctre clasificatori. Aceste valori pondereaz vectorii, n funcie de ordinea
obinut de fiecare clas n cadrul vectorului. Cel mai bun rezultat obinut a fost de 301
documente incorect clasificate, ceea ce reprezint o acuratee a clasificrii de 87,20%. Acest
rezultat s-a obinut cnd s-a utilizat ponderarea liniar cu pasul de 0,5.
O alt contribuie original adus de autor a fost utilizarea de algoritmi genetici pentru
rezolvarea problemei Design Space Exploration: gsirea acelor ponderi care, utilizate n
metaclasificatorul neadaptiv prezentat mai sus, s duc la o mbuntire substanial a acurateei
de clasificare. Astfel, autorul a creat un metaclasificator original cu ponderi calculate, folosind
algoritmi genetici. Rezultatele obinute de metaclasificatorul cu ponderi calculate s-au
mbuntit n medie, cu 1.16% n cazul utilizrii metodei Roulette Wheel de selecie a
cromozomilor, acurateea de clasificare ajungnd n medie, la 88,36%. n cazul utilizrii metodei
de selecie Gauss pentru selecia cromozomilor dintr-o populaie, mbuntirea a fost de 1.17%,
ajungnd n medie la 88.37%. Cel mai bun rezultat al acestui metaclasificator a fost obinut ntr-
un experiment folosind metoda Gauss de selecie a cromozomilor, acurateea de clasificare
ajungnd la 88.55%. Pentru metaclasificatorii neadaptivi propui, acesta reprezint cel mai bun
rezultat.
Contribuii pentru metaclasificatorii adaptivi
Sunt prezentate experimentele efectuate pentru a analiza dac este sau nu fezabil
introducerea unui clasificator de alt tip n cadrul metaclasificatorului. Pe baza datelor de test
obinute de clasificatorii de tip SVM prezentai n [Mora07], s-a testat dac un clasificator de tip
Bayes ar putea aduce mbuntiri asupra metaclasificatorului, n cazul clasificrii de documente
text. Problemele care apar la clasificarea documentelor text sunt n primul rnd dimensiunea
foarte mare a vectorilor de reprezentare a documentelor i n al doilea rnd problema existenei
claselor suprapuse. Dimensiunea foarte mare a vectorilor de reprezentare face ca nu foarte muli
algoritmi de nvare automat s se preteze la asemenea probleme, datorit complexitii
calculelor care apar i a timpilor de nvare foarte mari. n cazul bazei de date Reuters 2000 pe
care s-au fcut experimente, documentele sunt clasificate n mai multe clase, ceea ce face
posibil existena de clase suprapuse chiar i n totalitate, fcnd imposibil nvarea pentru
majoritatea algoritmilor de clasificare automat. Autorul acestei teze a prezentat problemele care
au aprut n cazul metaclasificatorului prezentat n [Mora07], precum i faptul c selectarea
clasificatorilor pe baza celui mai bun rezultat ntors poate introduce anumite limitri. Aa cum s-
a prezentat nc din acea lucrare, metaclasificatorul avea o limit maxim la care putea ajunge de
94.02%, avnd un numr de 136 documente care nu puteau fi clasificate corect de niciunul din
clasificatoarele selectate. n scopul de a depi limitrile prezentate n [Mora07] n aceast tez
s-au analizat cele 136 documente i s-a constatat c exist clasificatori SVM prezentai n
lucrarea amintit care ar fi reuit s clasifice corect acele documente, dar nu au fost inclui n
metaclasificator. De asemenea, autorul acestei teze prezint cteva experimente comparative
Concluzii
151
ntre clasificatorii de tip SVM i cel de tip Bayes, realizate pe toate seturile de date prezentate.
Ca i timp de antrenare i testare, clasificatorul Bayes obine cel mai bun timp de 1.7s
comparativ cu SVM care, n medie, obine un timp de 1.8s. n cazul testrii clasificatorul Bayes
pe setul T2 (cel care conine doar 136 documente), s-au obinut rezultate ncurajatoare. n urma
testelor efectuate s-a observat c, dei acurateea total a clasificatorului Bayes este mai slab
dect cea obinut de SVM, acesta totui a reuit s clasifice corect 104 documente din cele 136,
chiar dac a fost antrenat pe setul A1.
Pe baza rezultatelor prezentate mai sus, s-a decis dezvoltarea unui metaclasificator nou
prin introducerea clasificatorului de tip Bayes n metaclasificatorul din [Mora07], obinnd
astfel o mbuntire semnificativ a limitei superioare la care poate ajunge metaclasificatorul.
Astfel, aceasta a crescut de la 94.21% n cazul folosirii a 8 clasificatoare SVM la 98.63% n
cazul folosirii celor 8 clasificatoare SVM plus clasificatorul Bayes. Rezultatele obinute pentru
toate cele trei modele de metaclasificatori, vot majoritar (MV), selecie pe baza distanei
euclidiene (SBED) i selecie pe baz de cosinus (SBCOS) sunt rezumate n continuare. n cazul
MV s-a obinut o acuratee a clasificrii de doar 86.09%, cu 0.29% mai mic dect n cazul
folosirii doar a 8 clasificatori SVM. n cazul SBED, prin modificrile aduse, noul
metaclasificator a obinut rezultate chiar mai slabe, scznd n medie de la 92.04%
(metaclasificatorul cu 8 clasificatori SVM) la 90.38%. n cazul SBCOS, acurateea de clasificare
a metaclasificatorului cu 9 clase a crescut la 93.10%, de la 89.74% ct era la cel cu 8
clasificatori SVM.
O alt contribuie a autorului a fost modificarea adus alegerii clasificatorului care va fi
utilizat de metaclasificator pentru a clasifica un anumit document. Astfel, n cazul n care exist
suspiciunea c clasa pe care o va prezice clasificatorul selectat nu va fi cea corect,
metaclasificatorul s prezic urmtoarea clas din lista de clase, dac aceasta este suficient de
apropiat, ca i valoare a clasificrii obinute, de prima clas prezis. Aceste modificri au dus la
o mbuntire substanial a rezultatelor metaclasificatorului cu 9 clasificatori. Am fcut
experimente doar cu acesta, deoarece doar n acest caz se putea ajunge la o acuratee maxim de
98.63%. n cazul SBED s-a obinut o acuratee a clasificrii de 93.32%, iar n cazul SBCOS s-a
obinut o mbuntire de la 93.10% la 93.87%.
Contribuii n realizarea unui metaclasificator hibrid
Ideea de la care a pornit autorul a fost de a construi acest metaclasificator format din dou
componente. O component, considerat ca fiind etapa de preclasificare, realizat din
metaclasificatorul (selector) neadaptiv i o component nou, considerat ca fiind etapa de
postclasificare, adaptiv, realizat dintr-o reea neuronal de tip backpropagation. Autorul a
prezentat elementele necesare pentru dezvoltarea unei reele neuronale de tip backpropagation,
adaptat pentru funcionarea n acest context. Parametrii reelei, care au fost modificai n cadrul
experimentelor, sunt numrul de neuroni de pe stratul ascuns i coeficientul de nvare al reelei.
Algoritmul prezentat se aplic reelelor feed-forward care conin 2 niveluri de uniti cu neuroni
cu funcia de activare sigmoidal, fiecare unitate de pe un nivel fiind conectat la toate unitile
de pe nivelul anterior. Deoarece reeaua neuronal prezentat este o reea cu nvare supervizat,
a avut nevoie de o etap de antrenare a acesteia. Autorul a prezentat experimente realizate,
utiliznd seturi diferite pentru antrenare i testare. n acest caz s-au folosit valori descresctoare
ale coeficientului de nvare, oprindu-se nvarea la anumite etape, scznd coeficientul de
nvare i apoi continund nvarea. Doar n momentul n care s-a redus i coeficientul de
nvare, s-a reuit antrenarea reelei pn la o valoare mic a erorii totale de antrenare (medie
0.017 per exemplu de antrenament). Cele mai bune rezultate (99.40% acuratee de clasificare) s-
au obinut folosind o reea neuronal cu 192 de neuroni pe stratul ascuns. Totui, din punct de
vedere al numrului de rezultate bune obinute pe parcursul antrenrii, optimul a fost atins pentru
cazul utilizrii unei reele cu 176 de neuroni pe stratul ascuns (chiar dac n final doar s-a
apropiat de eroarea de antrenare minim). n urma experimentelor efectuate s-a putut observa c
introducerea unei reele neuronale n cadrul metaclasificatorului face ca acesta s se adapteze
Concluzii
152
mult mai bine la documentele care trebuie clasificate, reuind astfel s clasifice i documentele
cu problem pe care metaclasificatorii adaptivi i neadaptivi prezentai anterior nu au reuit s le
nvee. Acest nou metaclasificator a reuit s depeasc i limita maxim de 98.63% la care
ar fi putut ajunge teoretic (din cauza algoritmului neadaptiv de agregare final a clasei optime)
clasificatorii inclui n cadrul metaclasificatorului.
7.1.2 Contribuii originale n problema clusteringului
n cercetrile efectuate s-a analizat mbuntirea adus algoritmilor de clustering n cazul
utilizrii reprezentrii STDM a documentelor text. n abordarea autorului se va folosi aceast
reprezentare pentru a calcula similaritatea/disimilaritatea ntre oricare dou documente pentru a
reduce dimensiunea arborelui de sufixe care reprezint documentele din setul de documente.
n cadrul acestui capitol, o alt contribuie original a autorului a constat n elaborarea
unei noi metrici (NEWST), utilizat n calculul similaritii ntre dou documente reprezentate
prin modelul STDM. Din experimentele efectuate se poate constata clar c aceast msur a
obinut rezultate convingtoare. Astfel, aceast metric aplicat modelului STDM de
reprezentare n cazul algoritmului de clustering HAC, a obinut pe seturile de date S01-S07 o
mbuntire a acurateei clusteringului de 34.84% fa de metrica Jaccard utilizat cu
reprezentarea VSM. Acurateea medie calculat pe seturile S01-S07 pentru metrica NEWST cu
modelul STDM a fost de 87.23%, fa de media de 52.39% obinut de metrica Jaccard aplicat
reprezentrii VSM. Seturile cu care s-a lucrat n acest capitol au fost create att folosind un
algoritm de stemming pentru extragerea rdcinii cuvintelor din document ct i fr utilizarea
unui algoritm de stemming. n cadrul acestor experimente s-a observat c, n cazul algoritmului
HAC, aplicarea algoritmului de extragere a rdcinilor cuvintelor nu a mbuntit rezultatele
clusteringului.
Pentru verificarea metricii NEWST propuse, autorul a repetat testele cu un algoritm
partiional K-Medoids. i n cazul acestui algoritm de clustering, metrica NEWST a obinut o
mbuntire cu 5.04% fa de metrica Jaccard aplicat modelului VSM. Acurateea medie a
clusteringului pentru NEWST cu algoritmul k-Medoids pe seturile S01-S07 a fost de 84.20% iar
pentru metrica Jaccard aplicat modelului VSM a fost de 79.16%. n cazul algoritmului k-
Medoids, extragerea rdcinii cuvintelor a dus la o mbuntire a rezultatelor pentru toate
metricile utilizate.
7.1 Concluzii sintetice i dezvoltri ulterioare
Prezenta lucrare cu contribuiile originale care au fost prezentate, poate fi util n cazul n
dezvoltrii unui sistem pentru clasificarea automat a documentelor web sau a fluxurilor de tiri
RSS, n special gruparea automat a paginilor de web sau a snipett-urilor returnate de motoarele
de cutare clasice. Rearanjarea i gruparea poate fi fcut pe baza coninutului acestor paginilor
i nu doar pe un rezumat al acestor pe care l ofer creatorul acestora i care nu n toate cazurile
reflect n totalitate ce se gsete n acele pagini.
De asemenea, aceast tez prezint soluii pentru utilizarea celor dou modele de
reprezentare a datelor STDM i VSM. Prin reprezentarea STDM i metrica NEWST n cazul
algoritmilor ierarhici rezultatele clusteringului pe documente de tip text se mbuntesc simitor.
Totui nu exist o soluie general n cazul clusteringului. Fiecare algoritm trebuie adaptat
problemei care trebuie rezolvat. Utilizarea modelului STDM cu algoritmi partiionali duce la
timpi de execuie foarte mari, dup cum s-a artat n lucrare.
Concluzii
153
Ar fi util combinarea clasificatorilor utiliznd metode neadaptive, adaptive i combinaii
ntre ele, pentru mbuntirea rezultatelor fr ca timpul de lucru s creasc semnificativ.
n cercetri viitoare voi testa s combinarea metodelor de clustering cu metodele de
clasificare, folosind documente etichetate i neetichetate ntr-un algoritm de clasificare hibrid.
Acest algoritm ar utiliza un set mic de date n prealabil etichetate, care s ghideze algoritmul de
clustering care se antreneaz, folosind un set mare de date neetichetate.
O alt idee este de a schimba reprezentarea STDM pentru algoritmii de clustering, astfel
nct s se regseasc i informaia semantic coninut n text, care n momentul de fa, este
prezent doar prin pstrarea ordinii cuvintelor din propoziie.
O problem major a tuturor algoritmilor de clustering i clasificare este utilizarea lor n
situaii reale este greoaie acetia trebuind s fie adaptai specific. De exemplu, algoritmii de
clustering tind s formeze clusteri foarte mari n detrimentul altora, care pot s conin
documente foarte puine. Aceasta problem apare deoarece documentele din aceeai categorie au
puine cuvinte comune i atunci multe documente sunt grupate mpreun, pentru c fiecare
conine cteva cuvinte comune cu alt document din acea categorie. Chiar dac documentele care
vorbesc despre aceeai problem ar trebui s foloseasc aceleai cuvinte, n realitate sunt folosite
foarte multe sinonime, i abordarea clasic nu consider sinonimele ca fiind cuvinte comune.
Abordrile pur computaionale ale acestei probleme nu vor duce la mbuntiri spectaculoase.
Ca dezvoltare ulterioar, doresc s testez oportunitatea introducerii sensurilor cuvintelor n
reprezentarea documentelor i care implic folosirea de algoritmi de dezambiguizare (Word
Sense Disambiguation), eventual cu ajutorul WordNet unor algoritmi de dezambiguizare a
sensurilor cuvintelor, i introducerea unor msuri semantice n modelul STDM.
Avnd n vedere faptul c exploatarea sinergismului mai multor algoritmi simpli de
clasificare poate duce la rezultate foarte bune n clasificarea automat a documentelor text, mi
propun ca pe viitor s realizez paralelizarea calculului pentru metaclasificatorul hibrid, astfel
nct timpii necesari clasificrii s se reduc semnificativ (n cadrul laboratorului de cercetare
ACAPS din cadrul ULB Sibiu exist faciliti High Performance Computing care permit
implementarea cu succes a acestor idei v. http://acaps.ulbsibiu.ro/index.php/en/). Pentru
aceasta ns este necesar rescrierea aplicaiilor software implementate n vederea exploatrii
caracteristicilor unui model de programare concurent.

Glosar de termeni
154

8 Glosar de termeni
Termenii din acest glosar sunt definii n ideea de a exprima ct se poate de bine contextul
n care apar n prezenta tez. Nu am avut pretenia unei definiri exhaustive a acestor termeni, aa
cum apar ei n tiina i ingineria calculatoarelor.
Atribut reprezint rdcina cuvntului extras din document
card(X)

cardinalul mulimii X i reprezint numrul de elemente al
mulimii
Clas reprezint categoria propus de algoritm pentru un exemplu
dat
Clasificare gruparea documentelor cu ajutorul unui algoritm care
parcurge iniial etapa de antrenare i apoi testeaz
nvarea grupnd date de testare n categorii predefinite
Clustering gruparea documentelor fr a avea la dispoziie un set de
antrenare
Cuvinte de stop
un set de cuvinte care apar foarte des n documente i sunt
irelevante pentru clustering sau clasificare a documentelor.
Data mining procesul de extragere a cunotinelor din date organizate n
baze de date
Data warehouse o baz de date care este proiectat pentru interogri, analiz
i vizualizri ale tendinelor, predicii ale evoluiei
indicatorilor pe baza unui motor de procesare analitic online
(OnLine Analitical Processing OLAP).
Etichet reprezint categoria preluat din setul de date pentru un
exemplu dat.
Flux rss documente scurte n format xml care descriu succint un
anumit eveniment
Information Retrieval (IR) procesul de extragere de informaii din documente de tip text
nvare nesupervizat algoritmii nu au la dispoziie n etapa de antrenare etichete
pentru documente
nvare supervizat algoritmii au la dispoziie n etapa de antrenare etichete
pentru documente
Metaclasificare
o tehnic de combinare a mai multor clasificatori care
lucreaza prin intermediul unui selector, pentru a mbunti
"Equations are more important to me, because politics is for the
present, but an equation is something for eternity."
A. Einstein
Glosar de termeni
155
acurateea de calsificare
Normalizare o tehnic de a reprezenta valorile n acelai domeniu
Outliner document care reprezint zgomot pentru setul de date
Pattern ablon, poriuni de text care se repet
Precizie este procentajul din documentele regsite care sunt ntr-
adevr relevante
Recall este procentajul de documente care sunt relevante pentru
interogare i care de fapt au fost regsite
Seturi de date setul de documente utilizate pentru antrenarea i testarea
algoritmilor
Stemming.
procesul de extragere a rdcinii cuvintelor; n prezenta tez
am utilizat algoritmul de stemming Porter.
Suffix Tree arbore de sufixe n care nodurile conin documente care au
comune propoziia de la rdcina arborelui pn la nodul
respectiv
Text mining procesul de extragere a cunotinelor din date organizate n
fiiere de tip text
Zgomot un document care reprezint o valoare aberant pentru un
algoritm de clasificare sau clustering (e greu de definit
riguros!)

Referine bibliografice
156

9 Referine bibliografice
9.1 Bibliografie
[Abra03] Abraham, A., Ramos, V., Web Usage Mining Using Artificial Ant Colony
Clustering and Genetic Programming. Proc. of the Congress on Evolutionary
Computation (CEC 2003), Canberra, pp. 1384-1391, IEEE Press. 2003
[Agra93] Agrawal, R.; Imielinski, T.; Swami, A., Database mining: a performance
perspective in Knowledge and Data Engineering, IEEE Transactions Volume: 5
Issue:6, 1993
[Anke99] Ankerst, M., Breuning, M., Kriegel, H.-P., Sander, J., Oprics: Ordering points to
identify the clustering structure. In. Proc. 1999 ACM-SIGMOD, Int. Conf.
Management of Data, Philadelphia, 1999
[Bart98] Bartlett, P., Shawe-Taylor, J. Generalization Performance of Support Vector
MAchines and Other Pattern Classifiers, in "Advances in Kernel Methods,
Support Vector Learning", MIT Press, Cambridge, 1998
[Bate08] Batet, M., Valls, A., Gibert, K. Improving classical clustering with ontologies, In
Proc. IASC 2008, Yokohama, 2008
[Benn89] Bennett, K. P., Demiriz A., Semi-supervised support vector machines.In M. S.
Kearns, S. A. Solla, and D. A. Cohn, editors, Advances in Neural Information
Processing Systems, pages 368-374, Cambridge, MA, 1998. MIT Press.
[Berk06] Berkhin, P: A Survey of Clustering Data Mining Techniques, Kogan,
Jacob;Nicholas, Charles; Teboulle, Marc (Eds.) Grouping Multidimensional Data,
Springer Press, pp. 25-72 (2006)
[Bish95] Bishop, C., Neural Networks for Pattern Recognition. Oxford: Clarendon Press,
1995.
[Brad98] Bradley, P., Fayyad, U., Refining initial points for k-means clustering, In
Proceedings of the Fifteenth International Conference on Machine Learning
(ICML) San Francisco, AAAI Press, 1998
[Brea06] Breazu, M., Tehnici fractale i neuronale n compresia de imagini, Editura
Universitii Lucian Blaga din Sibiu, ISBN 978-973-739-251-0, 2006
[Bruz04] Bruzzone L., Cossu R., Vernazza G., Detection of land-cover transitions by
combining multidate classifiers, Pattern Recognition Letters, 25(13) p. 1491-
1500, 2004.
Books serve to show a man that those
original thoughts of his aren't very new at all.
Abraham Lincoln

Referine bibliografice
157
[Burg98] Burges, C. J. C., A tutorial on support vector machines for pattern recognition.
Data Mining and Knowledge Discovery, 2(2):121-167, 1998.
[Cama01] Camazine, S., Deneubourg, J.,-L., Franks, N., R., Sneydd, J., Theraulaz, G.
Bonabeau, E., Self-Organization in Biological Systems. Princeton University
Press, 2001.
[Chee96] Cheeseman, P., Stutz, J., Bayesian classification (AutoClass): theory and results.
In Advances in knowledge discovery and data mining, Usama M. Fayyad,
Gregory Piatetsky-Shapiro, Padhraic Smyth, and Ramasamy Uthurusamy (Eds.).
American Association for Artificial Intelligence, Menlo Park, CA, USA 153-180.,
1996
[Cret11_a] Creulescu, R., Morariu, D., Breazu, M., Vintan L. Using Genetic Algorithms
for Weights Space Exploration in an Eurovision-like weighted Metaclassifier, The
second international conference in Romania of Information Science and
Information Literacy, ISSN 2067-9882, April 2011.
[Cret11_b] Creulescu, R., Morariu, D., Vintan L. Clustering Text Documents: An
Overview, (Accepted) Acta Universitatis Cibiniensis, Technical Series, Lucian
Blaga University of Sibiu, 2011
[Cret10_b] Creulescu, R., Morariu, D, Vinan, L, Coman, I. An Adaptive Metaclassifier
for Text document, 16
th
International Conference on Information Systems
Analysis, pp. 372-377, ISBN-13: 978-1-934272-86-2(Collection), ISBN-13: 978-
1-934272-88-6(Volume II) ,Florida, USA, 2010 indexat (ISI) Thomson
Reuters
[Cret09_a] Creulescu R., Morariu, D., Vintan, L., Eurovision-like weighted Non-Adaptive
Metaclassifier for Text Documents, The 8
th
RoEduNet International Conference,
Galai, Romania, 2009, indexat (ISI) Thomson Reuters
[Cret09_b] Creulescu, R, Referat de doctorat nr. 3, Metaclasificator bazat pe reea
neuronal, 1.11.2009, ULB Sibiu (conductor tiinific: Prof. univ. dr. ing.
Lucian N. Vinan)
[Cret08] Creulescu, R, Referat de doctorat nr. 2, Support Vector Machine versus Bayes
Naive, 1.11.2008, ULB Sibiu (conductor tiinific: Prof. univ. dr. ing. Lucian N.
Vinan)
[Cret07] Creulescu, R, Referat de doctorat nr. 1, Clusteringul documentelor text,
1.11.2007, ULB Sibiu (conductor tiinific: Prof. univ. dr. ing. Lucian N. Vinan)
[Cris00] Cristianini, N. Swawe-Taylor, J. An introduction to Support Vector Machines,
Cambridge University Press, 2000
[Davi79] Davies, D.,L., Bouldin, D. W., A cluster separation measure. IEEE Transactions
on Pattern Analysis and Machine Intelligence, 1:224227, 1979.
[Domi96] Domingos, P, Using Partitioning to Speed Up Scientific-to-General Rule
Induction. in Proceedings of the AAAI-96 Workshop on Integrating Multiple
Learned Model, pp29-34, AAAAI Press, 1996
[Dori00] Dorigo, M., Bonabeau, E., Theraulaz, G., Ant Algorithms and stigmergy, Future
Generation Computer Systems Vol.16, 2000.
Referine bibliografice
158
[Fish87] Fisher, D., H., Knowledge Acquisition Via Incremental Conceptual Clustering,
Machine Learning Journal, Vol 2, Springer, Netherlands, 1987
[Fre1906] Frchet, M., Sur quelques points du calcul fonctionnel, PhD Thesis, in Rendiconti
del Circolo Mathematico di Palermo", volume 22, pag. 1-74, 1906.
[Gabr04] Gabrilovich, E., Markovitch S., Text Categorization with Many Redundant
Features Using Aggressive Feature Selection to Make SVM Competitive with
C4.5, Proceedings of the 21
st
International Conference on Machine Learning,
Banff, Canada,2004.
[Ghos05] Ghosh, A., Jain, L.C. Evolutionary Computation in Data Mining, Springer Verlag
Berlin, Heidelberg, 2005
[Guha98] Guha, S. Rastogi, R., Shim, K., CURE: an efficient clustering algorithm for large
databases. In Proceedings of the 1998 ACM SIGMOD international conference
on Management of data (SIGMOD '98), Ashutosh Tiwary and Michael Franklin
(Eds.). ACM, New York, NY, USA1998
[Han01] Han, J., Kamber, M., Data Mining: Concepts and Techniques, Morgan Kaufmann
Publishers, 2001
[Hand07] Handl, J., Meyer, B., Ant-based and swarm-based clustering, Swarm Intelligence
Journal, Springer, New York, 2007
[Hart75] Hartigan, J. A., Clustering Algorithms, New York: John Wiley & Sons, Inc, 1975
[Hart79] Hartigan, J. A., Wong, M., Algorithm as 136: A k-means clustering algorithm,
Journal of the Royal Statistical Society. Series C (Applied Statistics), London,
1979
[Hayk94] Haykin, S., Neural Networks: A comprehensive Foundation, MacMillan College,
New York, 1994
[Hebb49] Hebb, D.O., The Organization of Behavior, John Wiley & Sons, New York, 1949
[Hols94] Holsheimer, M., Siebes, A., Data mining: The search for knowledge in databases.
Technical Report CS-R9406, CWI , Netherlands, 1994
[Hoth03] Hotho, A., Staab, S. Stumme,G., Ontologies Improve Text Document Clustering,
IEEE International Conference on, p. 541, Third IEEE International Conference
on Data Mining (ICDM'03), 2003
[Hsu03] Hsu, C., Chang C., Lin, C., A Practical Guide to Support Vector Classification,
Department of Computer Science and Information Engineering National Taiwan
University, 2003 (http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf -
accesat iunie 2011)
[Ian00] Ian H., Witten,E. F., Data Mining, Practical Machine Learning Tools and
Techniques with Java Implementation, Morgan Kaufmann Press, 2000
[Ilan10] Ilango M.,R., Mohan, V., A Survey of Grid Based Clustering Algorithms,
International Journal of Engineering Science and Technology, Vol. 2(8), 2010
[Jaeg08] Jaeger, S., Huanfeng, M., Drmann, D., Combinig Calssifiers with Informational
Confidence, Studies in Computational Intelligence (SCI) 90, pag. 163-191, 2008
Referine bibliografice
159
[Jain88] Jain, A., K., Dubes, R.,C. Algorithms for Clustering Data, Prentice Hall,
Englewood Cliffs, NJ. 1988
[Jain90] Jain, A. Murty, M. N., Flynn, P. J., Data Clustering: A Review, ACM Computing
Surveys, Vol. 31(3), pp. 264-323 (1999)
[Jain96] Jain, A., Mao, J., Mohiuddin, K.M., Artificial Neural Networks: A Tutorial,
Journal of IEEE Computational Science and Engineering, pp. 31-44, 1996
[Janr11] Janruang, J. Guha, S., Semantic Suffix Tree Clustering, In Proceedings of 2011
International Conference on Data Engineering and Internet Technology (DEIT
2011), Bali, Indonesia, 2011.
[Kauf87] Kaufman, L., Rousseeuw, P. J., Clustering by means of medoids, in Statistical
Data Analysis based on the L, Norm, edited by Y. Dodge, Elsevier/North-,
Holland, Amsterdam, 1987
[Kauf90] Kaufman, L. and Rousseeuw, P.J. Finding Groups in Data: An Introduction to
Cluster Analysis, Wiley-Interscience, New York (Series in Applied Probability
and Statistics), 1990
[Kung93] Kung S.Y., Digital Neural Networks, Prentice Hall, New Jersey, 1993
[Labr03] Labroche, N., Monmarch, N., Venturini G., AntClust: Ant Clustering and Web
Usage Mining, In Genetic and Evolutionary Computation GECCO 2003
Lecture Notes in Computer Science, Volume 2723/2003, 201, 2003.
[Lanc67] Lance, G. N., Williams, W. T., A general theory of classification sorting
strategies, Computer Journal, 9 p 373-386, 1967
[Leig02] Leigh W., Purvis R., Ragusa J. M., Forecasting the NYSE composite index with
technical analysis, pattern recognizer, neural networks, and genetic algorithm: a
case study in romantic decision support, Decision Support Systems 32(4), p. 361-
377, 2002.
[MacQ67] MacQueen, J. B., Some Methods for classification and Analysis of Multivariate
Observations, Proceedings of 5-th Berkeley Symposium on Mathematical
Statistics and Probability, Berkeley, University of California Press, 1:281-297,
1967
[Maim04] Maimon 0. Rokach L., Ensemble of Decision Trees for Mining Manufacturing
Data Sets, Machine Engineering, vol. 4 Nol-2, 2004.
[Mann08] Manning, C., Raghavan, P., Schtze, H. Introduction to Information Retrieval,
Cambridge University Press, ISBN 978-0-521-86571, 2008
[Mann09] Manning, C., An Introduction to Information Retrieval, Cambridge University
Press, 2009
[Mang04] Mangiarneli P., West D., Rampal R., Model selection for medical diagnosis
decision support systems, Decision Support Systems, 36(3) p. 247-259, 2004.
[Merw03] van der Merwe, D. W., Engelbrecht, A.P., Data clustering using particle swarm
optimization, In: The 2003 Congress on Evolutionary Computation, CEC '03,
Canberra, 2003
Referine bibliografice
160
[Meye05] Meyer,S., Stein, B., Potthast, M., The Suffix Tree Document Model Revisited,
Proceedings of the I-KNOW 05, 5th International Conference on Knowlegdge
Management, Journal of Universal Computer Science, pp.596-603, Graz, 2005
[Mitc97] Mitchell, T. Machine Learning, McGraw Hill Publishers, 1997
[Mora06_a] Morariu, D., Vintan, L., Tresp, V., Feature Selection Method for an Improved
SVM Classifier, Proceedings of the 3rd International Conference of Intelligent
Systems (ICIS06), ISSN 1503-5313, vol. 14, pp. 83-89, Prague, August, 2006.
[Mora06_b] Morariu, D., Vintan, L., Tresp, V., Metaclassification using SVM classifier for
Text Document, Proceedings of the 3rd International Conference on Machine
Learning and Pattern Recognition (MLPR06), ISSN 1503-5313, vol. 15, pp. 222-
227, Barcelona, Spain, October, 2006.
[Mora06_c] Morariu, D.,Vintan, L., Tresp, V., Feature Selection Methods for an Improved
SVM Classifier, Proceedings of 14th International Conference on of Intelligent
Systems (ICIS06), Prague, 2006
[Mora07] Morariu, Daniel - Contributions to Automatic Knowledge Extraction from
Unstructured Data, PhD Thesis, Sibiu, 2007 (scientific supervisor: Prof. Lucian
N. Vinan, PhD).
[Mora08] Morariu, D., Text Mining Methods based on Support Vector Machine, Ed.
MatrixRom, Bucureti, 2008.
[Mora10] Morariu, D., Cretulescu, R., Vinan, L. Improving a SVM Metaclassifier for
Text Documents by using Naive Bayes, International Journal of Computers,
Communications & Control, Vol. V, No. 3, pp. 351-361, ISSN 1841-9836, E-
ISSN 1841-9844, September 2010, cotat (ISI) Thomson Reuters
[Mora11] Morariu, D, Creulescu, R., Vinan, L, Using Suffix Tree Document
Representation in Hierarchical Agglomerative Clustering, accepted at
International Conference on Intelligent Systems, Paris, November 2011.
[Ng02] Ng, R. T., Han, J., Clarans: A method for clustering objects for spatial data
mining. IEEE Transactions on Knowledge and Data Engineering (TKDE), 14(5),
2002
[Ng94] Ng, R., Han, J., Efficient and Effective Clustering Methods for Spatial Data
Mining, Proceedings of International Conference on Very Large Data
Bases,Santiago, Chile, Sept. 1994
[Opit99] Opitz, D., Maclin, R., Popular Ensemble Methods: An Empirical Study, Journal
of Artificial Research, 11, p. 169-198, 1999
[Quin96] Quinlan, J.R., Bagging, Boosting and C4.5, In Proceedings of the Thirteenth
National Conference on Artificial Intelligence, p. 725-730, 1996
[Rijs80] Rijsbergen C.J. van, Robertson S.E., Porter M. F., New models in probabilistic
information retrieval. London: British Library. (British Library Research and
Development Report, no. 5587). 1980
[Roka05] Rokach, L. Ensemble Methods for Classifiers, in Data Mining and Knowledge
Discovery Handbook, Maimon, Oded; Rokach, Lior (Eds.), p. 957-980, Springer-
Link, 2005
Referine bibliografice
161
[Salt75] Salton, G., Wong, A., Yang, C. S., A vector space model for information
retrieval. Communications of the ACM, 18(11), 1975.
[Scho02] Schoslkopf, B., Smola, A., Learning with Kernels, Support Vector Machines,
MIT Press, London, 2002
[Serr10] Serrano1, S. L., Villena-Romn, J., Cristbal, J. C. G., DAEDALUS at WebPS-3
2010: k-Medoids Clustering using a Cost Function Minimization, In Proc.
Conference on Multilingual and Multimodal Information Access Evaluation,
Padua, 2010
[Tan03] Tan A. C., Gilbert D., Deville Y., Multi-class Protein Fold Classification using a
New Ensemble Machine Learning Approach, Genome Informatics, 14, p. 206-
217, 2003.
[Turn99] Turner, K., Gosh, J., Linear and Order Statistics Combiners for Pattern
Classification, in Combining Artificial Neural Nets, A. Sharkey (Ed), p. 127-162,
Springer-Verlag, 1999
[Vint00] Vinan N. L., Arhitecturi de procesoare cu paralelism la nivelul instructiunilor,
Editura Academiei Romne, Bucureti, ISBN 973-27-0734-8, 2000
[Vint07] Vinan N. L., Prediction Techniques in Advanced Computing Architectures (in
limba engleza), Editura Matrix Rom, Bucureti, ISBN 978-973-755-137-5, 2007
[Wang97] Wang, W., Yang, J., Muntz, R., STING: A statistical information grid approach
to spatial data mining. In Proc. 1997 Int. Conf. Very Large Data Bases, Athens,
1997
[Ward63] Ward, J. H., Hierachical grouping to optimize an objective function. J. Am.
Statist. Assoc. 58, 236-244, 1963
[Wass89] Wassermann, P.D., Neural Computing. Theory and Practice, Van Nostrand
Reinhold, 1989
[Wei03] Wei, C. P., Lee, Y. H., Hsu, C. M., Empirical Comparison of Fast Clustering In
Algorithms for Large Data Sets, In Experts Systems with Applications vol. 24,
pp. 351 363 - 2003
[Wen09] Wen, H., Web SnippetsClustering Based on an Improved Suffix Tree Algorithm,
Proceedings of FSKD 2009, Sixth International Conference on Fuzzy Systems
and Knowledge Discovery, Tianjin, China, 14-16 August 2009
[Zami98] Zamir, O, Etzoni, O., Web Document Clustering: A Feasibility Demonstration,
Proceedings of the 21
st
International ACM SIGIR Conference on Research and
Development in Information Retrieval, Melbourne, Australia, 1998
[Zhan01] Zhang, B., Generalized k-harmonicmeans dynamic weighting of data in
unsupervised learning, In Proceedings of the 1
st
SIAM ICDM, Chicago, 2001
[Zhan96] Zhang, T. Ramakrishnan, R. Livny, M., BRICH: an efficent data clustering
method for very large databases. In Proceedings 1996 ACM-SIGMOD Int. Conf.
Management of Data, Montreal, 1996
Referine bibliografice
162
[Zhao04] Zhao, Y. Karypis, G., Empirical and Theoretical Comparisons of Selected
Criterion Functions for Document Clustering, Machine Learning, Vol. 55. No. 3,
2004

9.2 Webliografie
[M01] Metrics for Evaluating clustering algorithms-
http://www.scribd.com/Clustering/d/28924807 - accesat 25.08.2010
[Reut00] Misha Wolf and Charles Wicksteed - Reuters Corpus:
http://www.reuters.com/researchandstandards/corpus/ lansat n noiembrie 2000,
accesat n septembrie 2009
[WEB09] http://www.cs.utexas.edu/~mooney/ir-course/, accesat n ianuarie 2009
[WEKA] http://www.cs.waikato.ac.nz/ml/weka/index.html (ultima accesare n noiembrie
2010)
[IR] http://www.cs.utexas.edu/~mooney/ir-course/doc/index.html (ultima accesare n
ianuarie 2007)
[NETK] http://news.netcraft.com/archives/2011/ (ultima accesare n iunie 2011)
[W3C] http://www.w3.org/DOM (ultima accesare n iunie 2011)
[CLU] http://home.dei.polimi.it/matteucc/Clustering/tutorial_html/AppletKM.html
(ultima accesare n iunie 2011)


Sinteza lucrrilor publicate/elaborate de ctre autor pe problematica tezei de doctorat
163

10 Sinteza lucrrilor publicate/elaborate de ctre autor pe
problematica tezei de doctorat

A. Articole n jurnale:
Morariu, D., Cretulescu, R., Vinan, L. Improving a SVM Metaclassifier for Text Documents
by using Naive Bayes, International Journal of Computers, Communications &
Control, Vol. V, No. 3, pp. 351-361, ISSN 1841-9836, E-ISSN 1841-9844,
septembrie 2010, cotat (ISI) Thomson Reuters, factor de impact 0,392
Morariu, D., Cretulescu, R., Vinan, L. Vector versus Tree Model Representation in Document
Clustering, trimis la jurnalul Data & Knowledge Engineering, Olanda, cotat
(ISI) Thomson Reuters, scor relativ de influen: 0,80282
Creulescu, R., Morariu, D., Vintan L. Clustering Text Documents: An Overview, Acta
Universitatis Cibiniensis, Technical Series, ISSN 1583-7149, Lucian Blaga
University of Sibiu, mai 2011


B. Articole n conferine
Morariu, D, Creulescu, R., Vinan, L, Using Suffix Tree Document Representation in
Hierarchical Agglomerative Clustering, accepted at International Conference on
Intelligent Systems, Paris (Frana), noiembrie 2011.
Creulescu, R., Morariu, D., Breazu, M., Vintan L. Using Genetic Algorithms for Weights
Space Exploration in an Eurovision-like weighted Metaclassifier, The second
international conference in Romania of Information Science and Information
Literacy, ISSN 2067-9882, aprilie 2011.
Creulescu, R., Morariu, D, Vinan, L, Coman, I. An Adaptive Metaclassifier for Text
document, 16
th
International Conference on Information Systems Analysis, pp.
372-377, ISBN-13: 978-1-934272-86-2(Collection), ISBN-13: 978-1-934272-88-
6(Volume II) ,Florida (USA), 2010 indexat (ISI) Thomson Reuters
Creulescu R., Morariu, D., Vintan, L., Eurovision-like weighted Non-Adaptive Metaclassifier
for Text Documents, Proceedings of the 8
th
RoEduNet IEEE International
Conference Networking in Education and Research, pp. 145-150, ISBN 978-606-
8085-15-9, Galai, decembrie 2009 indexat (ISI) Thomson Reuters


Sinteza lucrrilor publicate/elaborate de ctre autor pe problematica tezei de doctorat
164
C. Lucrri elaborate:
Cretulescu, R., Morariu, D., Vinan, L., Ongoing Research in Document Classification at the
Lucian Blaga University of Sibiu, Conferina IDC2011, Delft (Olanda), 5-7
octombrie 2011, am susinut lucrarea efectiv la Workshop: News from Projects.
Creulescu, R, Referat de doctorat nr. 3, Metaclasificator bazat pe reea neuronal, 2009, ULB
Sibiu (conductor tiinific: Prof. univ. dr. ing. Lucian N. Vinan)
Creulescu, R, Referat de doctorat nr. 2, Support Vector Machine versus Bayes Naive, 2008,
ULB Sibiu (conductor tiinific: Prof. univ. dr. ing. Lucian N. Vinan)
Creulescu, R, Referat de doctorat nr. 1, Clusteringul documentelor text, 2007, ULB Sibiu
(conductor tiinific: Prof. univ. dr. ing. Lucian N. Vinan)

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