Clascarea Algortm de clascare sut utlzaț la împărțrea ue populaț î p clase de dvz. Fecare dvd este caracterzat prtr-u asamblu de m varable cattatve ş/sau caltatve ş o varablă caltatvă detcâd clasa d care ace parte acest dvd. Mulțmea de dvz petru care sut cuoscute varablele cattatve se împarte î două submulțm: eșatoul de bază, petru care se cuoaște valoare varable caltatve, dec îcadrarea pe clase a dvzlor. Se ma umește ş setul de atreamet sau de îvățare. eșatoul evestgat, petru care u se cuoaște îcadrarea dvzlor î clase, dec c valoarea varable caltatve. Algortm de clascare urmăresc să detce regulle pe baza cărora toț dvz d mulțmea evestgată să poată îcadraț î cele p clase. Exemple de aplcare a algortmlor de clascare î Data Mg: dagoză medcală (exp. prescrpța letlelor), metode de scorg la acordarea credtelor, detecța raudelor (detcarea trazacțlor suspecte), detcarea grupurlor de cleț țtă a uu produs bacar etc. Selectarea atrbutelor Prmul pas î crearea uu proces de mg avâd ca subect clascarea, este selecța caracterstclor (varablelor). ODM prelucrează date stocate î tabele sau î vzu ale uor baze de date Oracle. Î procesele de mg caracterstcle sut prvte atât ca atrbute zce cât ş ca atrbute logce. Ca atrbute zce e reerm la modul î care sut memorate atrbutele î baza de date. Este vzat aspectul de metadată al atrbutulu. Atrbute zce sut cosderate umele coloae d tabelă sau vzue care dă caracterstca ş tpul coloae (umerc, alaumerc, dată caledarstcă, dată bară etc.- VARCHAR2, CHAR, DECIMAL, NUMERIC etc.). Maparea dtre tpul Oracle ş tpul de dată utlzat î calcule este depedetă de tpul de drver JDBC utlzat. Atrbutele logce se reeră la coțutul eectv al caracterstc, rolul e î procesul de mg. Atrbutele logce se leagă ma mult de oțuea de varablă asocată caracterstc. Atrbutele logce sut: - tpul varable (umercă, categorală sau ordală); - rolul varable î procesul de mg (actvă sau actvă); - modul de proveeță (eprelucrată sau supusă uor prelucrăr prelmare precum curățarea, agregarea sau trasormarea). Algortm de mg Oracle Data Mg are mplemetaţ următor algortm de clascare: Clascarea Bayesaă (Nave Bayes); Arbor de decze (Decso Tree); Algortm de tp Suport Vector Mache (SVM).. Clascarea Bayesaa Clascarea Bayesaă este o metodă de clascare bazată pe ormula lu Bayes de calcul a probabltăț codțoate. Clascatorul bayesa este de atură stohastcă (probablstcă) ș permte o clascare cu bue rezultate la u cost scăzut.
Notaț: w,w 2,, w - etchetele stațelor c,c 2,, c q - etchetele claselor. Regula lu Bayes petru asgarea ue stațe w la o clasă c ma degrabă decât la orce altă clasă c l este următoarea: P(c /w ) > P(c l /w ), l=, l () ude P(c /w ) repreztă probabltatea ca stața w să aparță clase c, ar P(c l /w ) repreztă probabltatea ca aceeaș stață să aparță clase c l. Acestea sut probabltățle aposterorce, cele care trebue determate. Vom um probabltăț aprorce, probabltățle de aparteeță la o aumtă clasă î cazul î care c o ormațe despre dvz claselor u este dspoblă. De obce probabltățle aprorce e sut determate pe baza poder claselor, e sut egale cu /q, e au valor alese î mod subectv.,q Vom cosdera probabltatea aprorcă petru o clasă oarecare c l, P(c l ) = Relața lu Bayes leagă probabltățle aprorce de cele aposterorce î elul următor: P( w / c ) P( c ) P( c / w ) q. (2) P( w / c ) P( c ) l l l Î relața (2) P(w /c l ) repreztă probabltatea ca î dstrbuța grupe c l să avem o observațe egală cu X (la corespuzătoare dvdulu w d matrcea de observaț X). Aceste probabltăț, probabltățle codțoate d relața lu Bayes, se determă pr metode parametrce sau eparametrce. Estmarea eparametrcă a probabltățlor codțoate. Metoda hstogramelor Petru cazul udmesoal, estmarea petru o valoarea oarecare x este: pˆ ( x) q, dx ude q este umărul de tervale al dstrbuțe, dx este mărmea tervalulu, este umărul tervalulu (hstograma) î care se ală x, ar este umărul de valor d dstrbuțe alate î tervalul. Petru cazul bdmesoal: px ˆ( ) dx dx, ude dx este mărmea tervalulu petru prma 2 dmesue, dx 2 petru a doua dmesue (Fgura ) ar este umărul total de stațe. Produsul dx dx 2 este ara hstogramelor. l.
X 2 dx 2 dx X Fgura. Estmare destate de probabltate Petru cazul m-dmesoal: px ˆ( ), H m ude H = dx este volumul hstograme. Alte metode eparametrce de estmare a probabltățlor codțoate: Ferestre Parze, Metode Kerel. Metode parametrce de calcul al probabltățlor codțoate Presupu asumarea uu model parametrc petru ucța de destate ș aplcarea ca atare a relațe lu Bayes. Dacă olosm dstrbuța ormală Gausaă petru estmarea probabltățlor codțoate, vom avea: m 2 2 t ( X g ) V 2 ( X g ) P( w / c ) (2 ) V e, ude V este matrcea de covarață a clase c, ar g este cetrul clase c. Țâd cot de relața lu Bayes regula () deve: vom asga dvdul w clase c dacă P(w /c )P(c ) > P(w /c )P(c ), l=, l. (3) Îlocud probabltățle codțoate î regula lu Bayes (3), logartmâd ş smplcâd terme comu, obțem: este asgat w clase c dacă: t t l V ( ) ( ) l ( ) l ( ) X g V X g P c Vl X gl Vl ( X gl ) l P( cl ) petru 2 2 2 2 l=, q, l. Această exprese este smplcată pr derea uu scor dscrmat astel det: δ(w ) = t l V ( ) X g V ( X g ) 2 2 Rezultă: este asgat w clase c dacă,q δ(w ) - l P(c ) < δl(w ) - l P(c l ), petru l=, q, l. (4) Petru o stață oarecare, eclascată (u ace parte d eșatoul de bază), w, regula lu Bayes este:
este asgat w clase c dacă δ(w) - l P(c ) < δl(w) - l P(c l ), petru l=, q, l ude δ(w) = t l V ( ) x g V ( x g ), x d vectorul cu valorle luate de w petru cele m 2 2 varable predctor, x = x x m 2. Arbor de decze. Arbor de decze creează regul pr care stațele sut îcadrate îtr-o grupă sau alta. Algortmul este relatv ușor de îțeles ș de mplemetat. Ca ş tehca Bayes arbor de decze au atât potețal descrptv cât ş predctv. Deumrea prove de la outputul maor al tehc: arborele de decze. Ideea de bază este aceea de a împărț setul de date î grupe cât ma omogee d puct de vedere al valorlor varable țtă (modaltățle varable de clascare). Petru îțelegerea ma ușoară a tehc vom prelua clascul exemplu d lucrarea lu Qula (993) al estmăr posbltăț de a se uca o partdă de tes î ucțe de aumț parametr meteorologc. Datele de trare sut: Aspect vreme Temperatura Umdtate Vat Decza de oc Isort 75 70 da da Isort 80 90 da u Isort 85 85 u u Isort 72 95 u u Isort 69 70 u da Acopert 72 90 da da Acopert 83 78 u da Acopert 64 65 da da Acopert 8 75 u da Ploos 7 80 da u Ploos 65 70 da u Ploos 75 80 u da Ploos 68 80 u da Ploos 70 96 u da Varabla depedetă este Decza de oc. Fecare dreptugh d gura următoare repreztă u od al arborelu de decze. U arbore de decze este costrut îcepâd cu rădăca pr separarea setulu de date la velul ecăru od.
Da (9), 64% Nu (5), 36% Aspect vreme Isort Acopert Ploos Da (2), 40% Nu (3), 60% Umddate Da (4), 00% Nu (0), 0% Da (3), 60% Nu (2), 40% Vat <77.5 >=77.5 Da Nu Da (2), 00% Da (0), 0% Da (0), 0% Da (3), 00% Nu (0), 0% Nu (3), 00% Nu (2), 00% Nu (0), 0% Fgura 2. Arborele de decze U od se poate separa î uul sau ma multe odur. Nodurle termale, umte ş odur ruză, deț rolul prcpal î realzarea predcțlor pr arbor de decze. Fecare od d gura coțe următoarele ormaț: - umărul total de stațe aerete odulu; - umărul de stațe pe ecare valoare a varable țtă; - procetele pe ecare valoare a varable țtă ată de umărul de stațe aeret odulu; - procetul reprezetâd umărul de stațe aeret odulu ață de umărul total de stațe. U od ale căru stațe preztă o valoare ucă petru varabla țtă se umește od pur. U arbore care are uma odur pure drept ruze, se umește arbore pur. Caracterstca esețală a arborlor pur este aceea că precza clascăr este îtotdeaua de 00% petru eșatoul de bază. Această acuratețe u se mețe îsă ș petru alte setur de date pe care se va rula modelul. Obțerea uor odur ruză cu reprezetare egală pe valorle varable țtă coduce la mposbltatea decder clase domate descrse de acele odur. Iterpretarea uu astel de rezultat depde de mplemetarea utlzată petru algortmul de ducțe. Algortm de ducțe sut algortm care stau la baza separăr odurlor. Prtre ce ma popular algortm sut: ID3 (Ross Qula). Are următoarele caracterstc: Stratege top-dow de costrure a arborelu Clască stațele testâd valorle caracterstclor lor Fecare od este dvzat după valorle ue caracterstc alese după prcpul maxmzăr câștgulu de ormațe Dvzarea uu od se oprește câd toate stațele aparț ue aceleaș clase C4.5. Este o îmbuătățre a algortmulu ID3 de către Qula Pot utlzaț predctor cu valor cotue
Pot utlzaț predctor cu valor lpsă Este trodusă smplcarea arborelu CART (Ch-squared Automatc Iteracto Detecto). Determă varablele utlzate la dvzarea odurlor pr măsur χ2 CHAID (Classcato ad Regreso Trees) C.5.0 Toț algortm se bazează pe acelaș prcpu: creșterea arborelu pr separăr succesve ale setulu de date î grupur de stațe, cu scopul dmuăr dstațe dtre grupur la ecare separare. Î cazul seturlor mar de date, arbor pot căpăta o complextate mult prea mare petru a putea îțeleș ş terpretaț, pr urmare multe aplcaț de data mg trec la o a doua etapă, aceea de curățre (prug) automată a arborelu pr elmarea uor ramur. Algortm de ducțe se derețază ître e pr următoarele elemete: - Natura varable țtă. Exstă algortm care mpu ca varabla țtă să e de tp categoral. - Gradul de scdare. U algortm permt doar separarea lmtele uu vel de suport petru ecare od (raportul dtre umărul de stațe d od ș umărul total de stațe), astel este dmuat rscul obțer uor arbor de complextate prea mare - Prcpul de scdare. Pot utlzate o multtude de regul petru separarea datelor la vel de od: dexul GINI, crterul etrope (câștgul ormațoal), H-pătrat etc. ODM mplemetează dexul GINI ș crterul etrope. U alt aspect mportat legat de algortm de ormare a arborlor îl costtue regula de oprre. Etapa de curățre poate lps, ără să aecteze corecttudea output-ulu, dacă algortmul utlzează o regulă de oprre pr care se evtă creșterea exagerată a arborelu. Cea ma smplă regulă de de oprre este lmtarea adâcm arborelu. O alta ar stablrea ue lmte eroare petru umărul de stațe cuprse îtr-u od. Crterul de scdare costă î alegerea varable predctor după care se va ace scdarea. Selecța ue aumte varable este determată de cattatea de ormațe pe care varabla respectvă o coțe cu prvre la varabla țtă. O modaltate de cuatcare este cea care utlzează ormula lu Shao (crterul etrope - câștgul ormațoal). Fe X varabla țtă ş Y o varablă depedetă categorală, potețal caddat petru separare. Matrcea recvețelor relatve îcrucșate petru cele două varable este: F= p 2 2 22 p2 q 2q pq, ude este umărul de stațe care au modaltatea petru varabla țtă X ș modaltatea petru varabla caddat Y raportat la umărul total de stațe, p este umărul de modaltăț al varable X ar q este umărul de modaltăț al varable Y. Vom ota cu. umărul de stațe care au modaltatea petru varabla X raportat la umărul total de stațe ar cu. umărul de stațe care au modaltatea petru varabla Y raportat la umărul total de stațe. Coorm ormule lu Shao, ormața adusă de atrbutul X î model este H= p. log.. Corespuzător, atrbutul Y aduce o cattate de ormațe h=. log.. q
Cattatea comuă de ormațe adusă de cele două atrbute este r= p q log. Plusul de ormațe adus de varabla Y sau câștgul ormațoal (Iormato Ga) este IG = h - r. Pr urmare, decza cu prvre la selectarea atrbutulu cel ma potrvt petru separare este: separarea se execută î ucțe de atrbutul petru care câștgul ormațoal este maxm. 3. Support Vector Maches Sub umele de Support Vector Maches (SVM) sut deumț o sere de algortm adaptaț petru a rezolva dverse probleme cum ar cele de clascare sau regresa multplă. Algortm SVM ș-au demostrat ecactatea î problemele de clascare supervzată complexe, urzâd rezultate de o buă acuratețe. Algortm SVM sut eceț pe setur de date cu u umăr u oarte mare de stațe (sub 00000) dar cu u umăr cât ma mare de varable. Î geeral sut cosderaț alteratva cea ma buă la rețele euroale î problemele de clascare. Avataele oerte de algortm SVM sut următoarele: - buă udametare teoretcă; - bue rezultate practce pe setur mar de date; - bu raport rezultate - complextate (tmp de execuțe). Algortm SVM creează hperplae care separă grupele cât ma clar (dstațele dtre roterele grupelor sut cât ma mar). U hperpla este u pla care dvzează spațul î două subspaț. De exemplu, spațul bdmesoal, separarea se poate ace prtr-o dreaptă de ecuațe a x+b y+c=0. Î apt hperplaele sut ucț de m varable ude m este umărul de varable depedete după care se ace clascarea. Petru u spațu de dmesue m ecuața hperplaulu este: wx + w2x2 + +wmxm + b = 0. Matrceal, relața de ma sus se scre: w t x+b=0, ude w t este traspusa vectorulu (w,w2,, wm) ar x este vectorul (x, x2,, xm).
Fgura 3. Hperplaul, mara ș vector suport Algortmul costă î a detca hperplae care să despartă cât ma be puctele îtr-u spațu de dmesue m. Dstața dtre hperpla ș cele ma apropate pucte se umește mară, ar aceste pucte sut vector suport (Fgura 3). U hperpla desparte cu atât ma be puctele cu cât mara este ma mare. Algortm SVM pot trata două stuaț: cazul lar, î care este posblă detcarea uu hperpla care desparte puctele ș cazul elar, câd acest lucru u este posbl (Fgura 4). Fgura 4. Lar - elar Cazul lar Presupuem că datele sut grupate îtr-o matrce cu l ș m coloae coțâd valorle luate de m varable petru dvz (stațe):
x x2 X x x2 x22 x2 xm x 2m xm. Fecăre stațe se atașează câte o valoare y = - sau y = dupa cum dvdul este îtr-o grupa sau alta. Modelul poate ușor exts petru ma multe grupe. Se deesc astel cuplurle (X ; y), =,, î care X repreztă setul de îregstrăr petru dvdul (la d matrcea X): X = x + x2 + + xm. Dstața uu puct oarecare, X, ață de pla este: d(x) = w t X + b / w, ude w m w 2. Hperplaul este cu atât ma be ales cu cât dstațele d(x) sut ma mar, ar dstațele sut cu atât ma mar cu cât cattatea este ma mcă. w Pr urmare detcarea hperplaulu optmal se ace rezolvâd o problemă de optm: 2 Mm w 2 t y ( w x b),, t Restrcțle y ( w x b),, repreztă codțle de clascare corectă petru cele stațe. Rezolvarea probleme se ace pr metoda multplcatorlor Lagrage. Modelul dual care porește de la multplcator Lagrage este: Maxm y y x x 2, 0,,, y 0 ude α, =, sut multplcator Lagrage. Cazul elar I stuața î care u poate detcat u hperpla care să separe stațele, algortm realzează o trecere la u spațu de dmesue ma mare (Fgura 5) î care să poată detcat u hperpla despărțtor. Trecerea se ace cu autorul uor ucț umte ucț-ucleu (erel ucto). Speccața Java Data Mg oeră suport petru mplemetare care clude ucț lare (Lear), gausee (Gaussa), polomale, hpertaget. Oracle Data Mer are mplemetate ucțle Lear ș Gaussa.
Fgura 5. Trecerea de la u spațu de dmesue 2 la uul de dmesue 3 Forma duală a modelulu lar se va modca petru u model elar astel:, 0,, 0 ) ( ) ( 2 y C x x y y Maxm, ude (x) este ucța erel utlzată ar α, =, sut multplcator Lagrage.
Evaluarea rezultatelor proceselor de clascare Java Data Mg care stă la baza mplemetăr ODM clude compoete de evaluare a caltăț predcțlor care apar sub deumrea de Test Metrcs. JDM suportă patru tpur de teste de evaluare a caltăț predcțlor petru modelele de clascare: - acuratețea predcțlor (predcto accuracy): - matrcea de couze (couso matrx); - grace ROC (Recever Operatg Characterstcs); - grace lt ş ga. Acuratețea predcțlor se determă procetual raportâd umărul de cazur îcadrate corect la umărul total de cazur (). Matrcele de couze sut matrce m m îm care sut prezetate comparatv valorle actuale cu cele estmate. Valoarea m repreztă umărul de modaltăț al varable de clascare (target varable), sau umărul de grupe. U elemet oarecare, c, d matrcea de couze repreztă umărul de stațe d grupa care este clascat î grupa. Elemetele de pe dagoala prcpală corespud stațelor be clascate. Oracle Data Mer calculează do dcator de acuratețe: m c ; m m c - Acuratețea mede: m c - Acuratețea globală:. Gracele ROC sut grace utlzate petru smulăr ale repartzăr stațelor prtr-u algortm de clascare î două grupe, ucțe de valoarea ue probabltăț-prag. Să presupuem că avem u studu de caz î care este aalzat rscul bacar petru u set de 2000 de persoae cleţ a ue băc. Varabla de clascare are două modaltăț: Rsc scazut, Rsc alt. Dacă pr modelul de clascare aplcat obțem valorle: 500: umărul cazurlor care sut îregstrate cu Rsc scazut petru care predcţa a ost tot de Rsc scazut, 300: umărul cazurlor care sut îregstrate cu Rsc alt petru care predcţa a ost tot de Rsc alt, 50: umărul cazurlor care sut îregstrate cu Rsc scazut dar petru care predcţa a ost de Rsc alt, 50: umărul cazurlor care sut îregstrate cu Rsc alt dar petru care predcţa a ost de Rsc scazut, matrcea de couze va următoarea: Rsc Scazut Rsc Ialt Total Rsc Scazut 500 50 550 Rsc Ialt 50 300 450 Total 650 350 2000 Tabelul. Matrcea de couze Dacă ua d modaltățle varable de clascare este cosderată valoarea țtă poztvă (poztve target value) ar cealaltă valoare țtă egatvă (egatve target value), atuc clascărle eroate pe valoarea țtă poztvă sut umte alse-postve (FP) ar pe valoarea țtă egatvă, alse-egatve (FN) î tmp ce clascărle corecte pe cele două valor țtă sut umte truepostve (TP) ş true-egatve (TN).
Valor țtă P N P TP FN N FP TN FP FN Rata de eroare se calculează pr relața:, ar acuratețea estmăr pr TP FP TN FN TP TN relața:. Petru datele d tabelul cele două valor sut 0. ş 0.9. Petru TP FP TN FN costrurea gracelor sut determate ratele alse-postve ş true-postve petru derte valor ale probabltăț prag (probablty threshold). Probabltatea prag este velul de la care o probabltate asocată ue predcț pe valoarea țtă poztvă este cosderată true-postve. Rata alse-postve se determă ca raport dtre umărul de stațe (cazur) alse-postve ș umărul total de cazur cu valoare țtă egatvă. Rata true-poztve se determă ca raport dtre umărul de stațe true-postve ş umărul total de cazur cu valoare țtă poztvă. RFP = FP/(FP+TN), RTP = TP / (TP+FN) Axa Ox a graculu ROC este asocată cu rata alse-postve ar axa Oy cu rata true-postve. Curba ROC este determată calculâd RFP ș RTP petru dverse valor ale probabltăț prag, adcă probabltatea de la care o stață este clascată pe valoarea țtă poztvă. Cu cât probabltatea prag este ma mare, cu atât umărul de stațe clascate pe valoarea țtă poztvă este ma mc (acuratețea scade) ș vers. Obțerea uor valor costat mc (sau progresv mc) petru RFP e dcă u model bu de clascare. I această stuațe curba ROC creste brusc (RTP crește ma repede decât RFP). U dcator bu de aprecere a modelulu este supraața alată sub curba ROC. Cu cât aceasta este ma mare cu atât creșterea RTP ață de RFP este ma mare, dec modelul este ma bu. Î gura 6 prmul grac dcă u model ma bu (u model cu acuratețe ). Supraața de sub curba ROC (curba albastră) are valoarea maxmă:. Fgura 6 Gracele lt ş ga sut utlzate î cazul clascăr î două grupe. Atuc câd varabla de grupare are ma multe modaltăț, ua dtre ele se cosderă valoare țtă poztvă ş toate celelalte, valoare țtă egatvă. Fd alese valorle țtă poztvă ş egatvă, vor sortate îregstrărle î orde descrescătoare a probabltățlor de aparteeță la respectvele valor țtă (probabltățle estmate pr model). Pe baza aceste ordoăr stațele sut împărțte î subclase egale. De obce se ace împărțrea î 0 clase sau cuatle. Se determă umărul medu de cazur care au petru varabla de clascare valoarea țtă poztvă, q. Î exemplul precedet, dacă se cosderă modaltatea Rsc Scazut valoare țtă poztvă, acest umăr este petru exemplul de ma sus q =550/0=55. Petru ecare clasă,, se determă apo:
- Numărul de cazur care au petru varabla de clascare modaltatea corespuzătoare valor țtă poztve, q ; - Numărul cumulat de cazur care au petru varabla de clascare modaltatea corespuzătoare valor țtă poztve, Q = q ; Q - Raportul dtre umărul cumulat de cazur, Q ş umărul medu, q, lt ; q Q - Raportul dtre umărul cumulat de cazur, ş umărul total de cazur, ga. TP FP U model este cu atât ma bu cu cât stațele ca valoare țtă poztvă sut grupate î proporțe ma mare î prmele quatle. Acest lucru este evdețat de ga care trebue să e cât ma mar cu putță. Fgura 7 Î gura 7 prmul grac dcă u model ma bu. Prmele două cuatle coț toate stațele cu valoare țtă poztvă.