Inteligenta computationala-programare in R
January 13, 2018 | Author: Andreea Corina | Category: N/A
Short Description
Analiza judetelor din Romania...
Description
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
PROIECT INTELIGENȚĂ COMPUTAȚIONALĂ
1
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
În cadrul proiectului au fost supuse analizei 41 de județe cu atributele: -cantitativeSuprArabila = suprafață arabilă (mii de ha) SuprAgricola = suprafață agricolă (mii de ha) Vii = suprafață cu vii și pepiniere viticole (mii de ha) Livezi = suprafață cu livezi și pepiniere pomicole (mii de ha) Paduri = suprafață cu păduri și altă vegetație forestieră (mii de ha) Ape = suprafață cu ape și bălți (mii de ha) Constructii = suprafață ocupată cu construcții (mii de ha) CaiDeComunicatii = suprafață ocupată cu căi de comunicații și căi de transport (mii de ha) -calitativăMarimi = mărime calitativă ce exprimă tipul de județ în funcție de suprafață.
Elemente de statistică descriptivă Am instalat bibliotecile e1071 și scales. Am citit fișierul de tip csv în care au fost enumerate cele 9 atribute, cu valorile aferente pentru fiecare județ. > library(e1071) >library(scales) > exem exem > dim(exem) [1] 41 9 Am afișat numărul de județe supuse observației. > names(exem) [1] "Judete.din.Romania" "SuprArabila" "SuprAgricola" [4] "Vii" "Livezi" "Paduri" [7] "Ape" "Constructii" "CaiDeComunicatii" Am afișat numele atributelor studiate (coloanelor). > str(exem)
2
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Am afișat forma tabelului. În partea stângă sunt variabilele analizate, iar în partea deaptă informații despre tipul lor (cantitative sau calitative), precum și exemple de valori. > exem[1:9,]
Am afișat datele numerice. > var(exem$SuprArabila) [1] 16287.96
3
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Pentru variabila calitativă, funcția nu este disponibilă. > cov(exem[,2:9])
Rezultă de aici matricea de covarianță a celor 8 atribute.
> cor(exem[,2:9])
4
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Matricea de corelație a datelor:
Putem observa că există în matricea de corelație un număr mare de valori negative, ceea ce indică faptul că între variabile există și corelații negative. Există corelații puternic pozitive între variabilele SuprAgricola și SuprAgricolă (0,8299), între CaiDeComunicatii și SuprAgricola (08738). Variabilele SuprAgricola și Livezi sunt slab corelate. Am realizat histograme pentru toate atributele analizate. > hist(exem$SuprArabila) > hist(exem$SuprAgricola) > hist(exem$Vii) > hist(exem$Livezi) > hist(exem$Paduri) > hist(exem$Ape) > hist(exem$Constructii) > hist(exem$CaiDeComunicatii)
Se înregistrează o distribuție relativ simetrică pentru atributele SuprAgricola și Constructii. Se observă o distribuție asimetrică spre stânga pentru SuprArabila, Vii, Livezi, Paduri, Ape și CaiDeComunicatii. Majoritatea județelor au sub 20 de km pătrați de suprafețe plantate cu vii și sub 50 de km pătrați de ape. Cea mai mare frecvență a județelor se înregistrează pentru acele intervale. 5
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> plot(density(exem$SuprArabila)) 6
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Județele se clasifică în funcție de variabila calitativă (Marimi). > pie(table(exem1$Marimi))
7
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Se realizează o structură radială (Pie), pentru a evidenția cele 3 tipuri de județe: mici, mijlocii și mari. > exem1 exem1 summary(exem1)
Funcția summary() afișează minimul, maximul, media, mediana și cuartilele pentru fiecare variabilă analizată.
8
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Analiza componentelor principale
> exemm exemm > exemmm exemmm > names(exemmm) exemmm va fi contruit pe baza coloanele 2-9 din fișierul csv.
Se afișează numele capului de tabel și un sumar al datelor. Pentru fiecare variabilă, programul a determinat valoarea minimă, maximă, media, mediana și cuartilele.
9
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Se afișează matricea de covarianță a datelor din exemmm.
Mai sus, a fost afișată matricea vectorilor proprii.
10
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> pca pca
S-a calculat abaterea standard pentru fiecare componentă. Au fost supuse analizei 41 de observații (județele) și 8 variabile.
K-means > set.seed(5) > km km
11
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Am împărțit datele din coloanele 2-5 în 4 clase. Numărul de clase a fost inficat în funcția kmeans() de mai sus. Primul cluster cuprinde 14 observații, al doilea 11, al treilea 4, iar ultimul 12. >plot(exem[,2],exem[,3], col=km$cluster)
S-a realizat plot-ul și s-au colorat în culori diferite observațiile în funcție de clusterul din care fac parte. > set.seed(5) > km table(km$cluster, exem$Marimi)
12
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Se afișează matricea de confuzie:
> km$cluster
>odata.frame(exem$Judete[o], km$cluster[o]) Afișează județele grupate alfabetic în cele 4 clustere. 1 Bistrita-Nasaud 2 Maramures 3 Salaj 4 Brasov 5 Covasna 6 Sibiu 7 Neamt 8 Vrancea 9 Dambovita 10 Prahova 11 Ilfov 12 Gorj 13 Valcea 14 Hunedoara 15 Cluj 16 Satu Mare 17 Alba 18 Harghita 19 Mures 20 Bacau 21 Suceava 22 Arges 23 Giurgiu 24 Mehedinti 25 Caras-Severin
1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 13
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
Constanta Teleorman Dolj Timis Bihor Botosani Iasi Vaslui Braila Buzau Galati Tulcea Calarasi Ialomita Olt Arad
3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4
Conform clusterizării k-means: clusterul 1 cuprinde: Bistrita-Nasaud, Maramures, Salaj, Brasov, Covasna, Sibiu, Neamt, Vrancea, Dambovita, Prahova, Ilfov, Gorj, Valcea, Hunedoara; clusterul 2 cuprinde: Cluj, Satu Mare, Alba, Harghita, Mures, Bacau, Suceava, Arges, Giurgiu, Mehedinti, Caras-Severin (care ar avea urmatorul grad de risc); clusterul 3 cuprinde: Constanta, Teleorman, Dolj, Timis; clusterul 4 cuprinde: Bihor, Botosani, Iasi, Vaslui, Braila, Buzau, Galati, Tulcea, Calarasi, Ialomita, Olt, Arad. Județele din grupa de risc 4 au gradul de risc cel mai mare.
> plot(exem, col = km$cluster)
14
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Sunt reprezentate observațiile grupate în cele 4 clustere în raport cu cele 8 atribute numerice. >plot(exem$SuprArabila, exem$SuprAgricola, xlab="Arabil", ylab="Agricol", col=km$cluster)
15
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> text(x=exem$SuprArabila, y=exem$SuprAgricola, labels=exem$Judete, col=km$cluster)
16
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Observațiile din grafic sunt etichetate cu numele județelor.
Clusterizare ierarhică >d d Sau >dd
17
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
În clusterizarea ierarhică pot fi folosite mai multe tipuri de distanțe (euclidiană, manhattans au ward). fit plot(fit) Afișează dendograma:
>groups groups Afișează cele 4 clustere.
>rect.hclust(fit, k=5, border="red") Sunt delimitate cele 4 clustere printr-o linie roșie.
>hcd = as.dendrogram(fit) >hcd 19
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Este caracterizată dendograma: 'dendrogram' with 2 branches and 41 members total, at height 6330.795 > plot(hcd) Un alt mod de a vizualiza dendograma.
>plot(hcd, type="triangle") Dendograma în formă triunghiulară:
20
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Dacă vrem să inspectăm partea superioara a dendogramei folosim: op library(fpc) > scurt scurt >scurt pamk.resultpamk.result
Dacă nu s-a precizat numărul de clustere, s-au împărțit datele în două clustere. > pamk.result$nc Afișează numărul de clustere create. [1] 2 >table(pamk.result$pamobject$clustering, scurt$Marimi) 23
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Afișează matricea de contingență.
>tab classAgreement(tab)
Algoritmul fuzzy –cmeans Dorim să realizăm o clusterizare c-means cu 3 clustere. >result result Fuzzy c-means clustering with 3 clusters Cluster centers: SuprArabila SuprAgricola Vii Livezi Paduri Ape Constructii 1 394.9058 458.9915 7.161782 3.157376 63.87031 25.80194 21.38148 2 231.5580 356.8322 10.561112 5.559952 136.68397 17.99923 17.91335 3 131.8033 294.2953 10.548868 5.225590 238.57254 10.42011 16.26850 CaiDeComunicatii 1 11.553599 2 9.348964 3 8.100786 Memberships: 1 2
3 24
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
1 0.38381358 0.3804656 0.23572087 2 0.10315100 0.2372531 0.65959590 3 0.20369930 0.5053671 0.29093357 4 0.11759157 0.2212255 0.66118293 5 0.19963361 0.5750675 0.22529886 6 0.17840409 0.3824758 0.43912014 7 0.07140329 0.1717995 0.75679724 8 0.08301164 0.1941456 0.72284280 9 0.16919794 0.3157653 0.51503679 10 0.16265337 0.3175125 0.51983415 11 0.19732178 0.4965290 0.30614923 12 0.15913908 0.3289031 0.51195784 13 0.13236753 0.2816805 0.58595196 14 0.39631146 0.4269650 0.17672349 15 0.20581563 0.6318892 0.16229517 16 0.09171832 0.2019394 0.70634223 17 0.22910450 0.3235232 0.44737228 18 0.36111277 0.4634380 0.17544925 19 0.54505044 0.2999206 0.15502892 20 0.20100561 0.6006633 0.19833106 21 0.59233622 0.2399787 0.16768512 22 0.34934065 0.4547083 0.19595110 23 0.34364335 0.3582809 0.29807576 24 0.11475696 0.2751343 0.61010877 25 0.13906298 0.2892220 0.57171501 26 0.71553022 0.1785289 0.10594084 27 0.17177385 0.4298814 0.39834478 28 0.26860551 0.4720412 0.25935329 29 0.51292262 0.3203280 0.16674934 30 0.14093311 0.3659808 0.49308608 31 0.68223635 0.1919988 0.12576488 32 0.24336722 0.3661031 0.39052964 33 0.56039872 0.2560990 0.18350224 34 0.11602467 0.2191613 0.66481403 35 0.13922027 0.4929398 0.36783992 36 0.83154030 0.1078664 0.06059333 37 0.12820941 0.2333836 0.63840703 38 0.41911991 0.3471792 0.23370094 39 0.21320934 0.3183846 0.46840611 40 0.16514370 0.2728298 0.56202651 41 0.48058684 0.2920117 0.22740149 25
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Closest hard clustering: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 1 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 1 2 1 2 2 3 3 1 2 2 29 30 31 32 33 34 35 36 37 38 39 40 41 1 3 1 3 1 3 2 1 3 1 3 3 1 Available components: [1] "centers" "size" "cluster" "membership" "iter" [6] "withinerror" "call" Mai sus este afișat gradul de apartenență al fiecărui județ la cele 3 clustere. > plot(scurt[,2], scurt[,3], col=result$cluster)
26
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> points(result$centers[,c(2,3)], col=1:3, pch=8, cex=2) Apar centroizii celor 3 clustere corespunzătoare celui mai apropiat model hard clustering.
>tabtab Se afișează matricea de confuzie: Valori previzionate
Valori reale
27
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Intepretare: Din primul cluster fac parte 5 județe cu clasa de risc mare, un județ cu clasa de risc mică și 4 județe cu clasa de risc mijlocie. Din al doilea cluster fac parte 3 județe cu clasa de risc mare, 4 județe cu clasa de risc mică și 5 județe cu clasa de risc mijlocie. Din al treilea cluster fac parte 6 județe cu clasa de risc mare, 3 județe cu clasa de risc mică și 10 județe cu clasa de risc mijlocie. > classAgreement(tab)
Interpretare: Rata de acuratețe a modelului este de 46,34%. Coeficientul lui Cohen este 0.1678, ceea ce conduce la concluzia că datele sunt de încredere.
SOM(Self-Organizing Maps) > library(kohonen) >set.seed(101) >exemplu train.obstrain.obs [1] 16 2 28 25 10 11 21 12 35 18 39 22
28
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
SOM > train.set train.set Funcția scale() operează numai cu vectori numerici. Construiesc setul de antrenament. Functia scale() standardizează datele. >test.settest.set Construim harta Kohonen: > somexemplu somexemplu > plot(somexemplu)
29
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
S-au obținut 6 clustere, 3 pe linie și 2 pe coloană. Se observă că fiecare cluster este caracterizat de una sau mai multe variabile predominante, corespunzătoare triunghiului colorat mai mare. Primul cluster este caracterizat de valori mari pentru suprafața arabilă, suprafața agricolă, căi de comunicații, construcții și ape . Ultimul cluster este caracterizat de o valoare mare a variabilei vii. Predicție cu SOM: >somprediction somprediction >tabtab Se afișează matricea de confuzie: Date previzionate
Date reale > classAgreement(tab)
Interpretare: Prin metoda SOM, rata de acuratețe a modelului este de 51.72%. Coeficientul lui Cohen este 0.24 , ceea ce conduce la concluzia că datele sunt de încredere. Alte tipuri de dendograme: >set.seed(101) > samplexemplu samplexemplu
31
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
>distance cluster plot(cluster, hang=-1, label=samplexemplu$Marimi)
32
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
>plot(as.dendrogram(cluster), edgePar=list(col="darkgreen", lwd=2), horiz=T)
33
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Comanda edgePar = o listă care specifică parametrii muchiilor dendogramei lwd = line width = grosimea muchiilor dendogramei, ia numai valori pozitive lwd = 1 (by default) horiz = T (muchiile dendogramei sunt orizontale) > str(as.dendrogram(cluster)) Afișează dendograma sub formă de text: --[dendrogram w/ 2 branches and 15 members at h = 503] |--[dendrogram w/ 2 branches and 2 members at h = 133] | |--leaf "41" | `--leaf "33" `--[dendrogram w/ 2 branches and 13 members at h = 381] 34
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
|--leaf "39" `--[dendrogram w/ 2 branches and 12 members at h = 293] |--[dendrogram w/ 2 branches and 6 members at h = 168] | |--leaf "26" | `--[dendrogram w/ 2 branches and 5 members at h = 111] | |--[dendrogram w/ 2 branches and 3 members at h = 74.9] | | |--leaf "29" | | `--[dendrogram w/ 2 branches and 2 members at h = 46] | | |--leaf "14" | | `--leaf "22" | `--[dendrogram w/ 2 branches and 2 members at h = 83.4] | |--leaf "5" | `--leaf "15" `--[dendrogram w/ 2 branches and 6 members at h = 230] |--[dendrogram w/ 2 branches and 2 members at h = 151] | |--leaf "3" | `--leaf "10" `--[dendrogram w/ 2 branches and 4 members at h = 172] |--leaf "34" `--[dendrogram w/ 2 branches and 3 members at h = 141] |--leaf "35" `--[dendrogram w/ 2 branches and 2 members at h = 99.5] |--leaf "9" `--leaf "6" >group.3 table(group.3, samplexemplu$Marimi) Compară cele 3 clustere cu clasele de risc cunoscute.
Interpretare:
Din clusterul 1 fac parte doua județe cu clasa de risc mare, 5 județe cu clasa de risc mică și 5 județe cu clasa de risc mijlocie. Din clusterul 2 face parte un județ cu clasa de risc mare. 35
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Din clusterul 3 fac parte două județe cu clasa de risc mare.
>plot(cluster); rect.hclust(cluster, k=5, border="red")
>par(mfrow=c(1,1)) > z attr(z[[2]][[2]],"edgePar") attr(z[[2]][[1]],"edgePar") plot(z, horiz=T) ty =tipul liniei
36
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> z[[2]] 'dendrogram' with 2 branches and 13 members total, at height 380.9401
37
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Arbori de decizie > library(party) > set.seed(111) > indice indice [1] 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 1 1 1 2 1 1 1 1 1 1 2 1 2 [39] 1 2 1 > setantrenare settestare settestare
> setantrenare Judete.din.Romania SuprArabila SuprAgricola Vii Livezi Paduri Ape 1 Bihor 308.82 487.07 2.22 3.82 198.37 13.64 2 Bistrita-Nasaud 98.59 297.60 0.41 8.39 194.70 7.10 4 Maramures 81.07 305.53 0.24 6.31 290.04 5.39 5 Satu Mare 229.78 317.52 3.82 8.27 73.44 6.52 38
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
6 Salaj 120.56 238.95 2.53 4.86 106.34 5.80 8 Brasov 120.53 281.25 0.06 1.28 206.47 5.87 11 Mures 220.80 411.13 2.84 5.15 209.45 6.39 12 Sibiu 118.50 303.62 115.04 5.05 200.18 5.88 13 Bacau 186.33 320.76 1.68 2.67 280.92 14.96 15 Iasi 256.10 381.26 0.55 6.78 97.89 13.11 16 Neamt 168.91 281.65 11.40 1.77 260.95 10.62 17 Suceava 179.95 347.63 83.80 2.99 453.66 12.23 18 Vaslui 291.76 400.72 4.57 2.36 80.15 8.25 20 Buzau 257.72 402.35 19.40 10.34 163.43 10.71 21 Constanta 484.10 558.15 7.73 3.79 38.26 43.20 22 Galati 292.93 358.31 26.18 1.72 43.81 13.23 23 Tulcea 294.57 363.94 29.00 0.77 98.07 346.31 25 Arges 173.91 342.35 0.33 20.57 284.50 9.41 26 Calarasi 410.51 425.80 3.66 0.21 22.16 27.27 27 Dambovita 175.34 247.92 3.93 9.75 121.08 10.98 28 Giurgiu 258.97 275.61 8.24 0.58 37.94 14.10 29 Ialomita 352.15 374.50 6.64 0.28 26.15 13.09 31 Teleorman 454.84 497.92 0.81 0.21 29.69 15.01 32 Ilfov 98.08 101.45 46.66 0.63 25.22 5.11 33 Dolj 488.56 585.14 5.85 7.37 85.31 20.89 34 Gorj 98.24 238.80 7.47 7.47 274.06 4.49 35 Mehedinti 187.91 293.33 3.62 6.81 149.88 18.50 36 Olt 390.34 436.52 8.66 5.12 57.40 17.97 38 Arad 350.63 494.65 0.00 5.17 219.15 13.98 40 Hunedoara 78.96 281.24 0.00 1.06 365.59 5.80 Constructii CaiDeComunicatii Marimi 1 32.21 14.28 mari 2 8.87 8.14 mijlocii 4 12.83 6.39 mijlocii 5 23.03 8.77 mici 6 9.29 7.02 mici 8 30.52 5.27 mijlocii 11 19.92 10.81 mari 12 15.28 7.98 mijlocii 13 21.72 10.24 mari 15 19.02 10.29 mijlocii 16 15.22 7.91 mijlocii 17 19.41 8.29 mari 18 15.44 10.68 mijlocii 20 16.35 8.78 mijlocii 39
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
21 22 23 25 26 27 28 29 31 32 33 34 35 36 38 40
31.33 17.40 10.56 24.84 18.57 16.52 16.22 17.20 22.85 20.90 30.51 14.50 11.28 20.03 22.49 16.55
13.05 mari 10.33 mici 7.15 mari 10.54 mari 12.57 mijlocii 6.97 mici 7.41 mici 8.72 mici 10.65 mijlocii 4.49 mici 13.54 mari 8.90 mijlocii 6.61 mijlocii 11.21 mijlocii 14.97 mari 9.46 mari
> dependenta dependenta Marimi ~ SuprArabila + SuprAgricola + Vii + Livezi + Paduri + Ape + Constructii + CaiDeComunicatii > print(arbore)
Conditional inference tree with 1 terminal nodes Response: Marimi Inputs: SuprArabila, SuprAgricola, Vii, Livezi, Paduri, Ape, Constructii, CaiDeComunicatii Number of observations: 30 1)* weights = 30
> plot(arbore)
40
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> plot(arbore,type="simple")
> matriceconfuzie matriceconfuzie 41
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> classAgreement(matriceconfuzie) $diag [1] 0.4333333 $kappa [1] 0 $rand [1] 0.3310345 $crand [1] 0
Rata de precizie este de 43.33%.
42
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> names(exem) [1] "Judete.din.Romania" "SuprArabila" "SuprAgricola" [4] "Vii" "Livezi" "Paduri" [7] "Ape" "Constructii" "CaiDeComunicatii" [10] "Marimi"
Se instalează pachetul rpart. >library(rpart) > fit fit Apare descris arborele și regulile sale. n= 41 node), split, n, loss, yval, (yprob) * denotes terminal node 1) root 41 22 mijlocii (0.34146341 0.19512195 0.46341463) 2) CaiDeComunicatii>=9.23 18 7 mari (0.61111111 0.05555556 0.33333333) * 3) CaiDeComunicatii< 9.23 23 10 mijlocii (0.13043478 0.30434783 0.56521739) 6) Paduri< 135.48 9 3 mici (0.11111111 0.66666667 0.22222222) * 7) Paduri>=135.48 14 3 mijlocii (0.14285714 0.07142857 0.78571429) * Nodurile marcate cu * sunt noduri terminale. > plot(fit, uniform=TRUE, main="Arbore decizional") Se trasează muchiile arborelui. >text(fit, use.n=TRUE, all=TRUE, cex=.8) Se etichetează nodurile arborelui.
43
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Din arborele de mai sus rezultă: Dacă CaiDeComunicatii>=9.23, se obțin 19 observații cu media clasei de risc mijlocii. Dacț CaiDeComunicatii< 9.23 o Dacă Paduri=135.5, se obține o observație cu media clasei de risc mică și două observații cu media clasei de risc mijlocie.
44
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Clasificatorul naiv Bayesian(=CNB) >library(e1071) >library(class) > model model Sunt afișate probabilitățile apriori și cele condiționate. Naive Bayes Classifier for Discrete Predictors Call: naiveBayes.default(x = exem[, 1:9], y = factor(exem[, 10])) A-priori probabilities: factor(exem[, 10]) mari mici mijlocii 0.3414634 0.1951220 0.4634146 Conditional probabilities: Judete.din.Romania factor(exem[, 10]) Alba Arad Arges Bacau Bihor mari 0.00000000 0.07142857 0.07142857 0.07142857 0.07142857 mici 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 mijlocii 0.05263158 0.00000000 0.00000000 0.00000000 0.00000000 Judete.din.Romania factor(exem[, 10]) Bistrita-Nasaud Botosani Braila Brasov Buzau mari 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 mici 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 mijlocii 0.05263158 0.05263158 0.05263158 0.05263158 0.05263158 Judete.din.Romania factor(exem[, 10]) Calarasi Caras-Severin Cluj Constanta Covasna mari 0.00000000 0.07142857 0.07142857 0.07142857 0.00000000 mici 0.00000000 0.00000000 0.00000000 0.00000000 0.12500000 mijlocii 0.05263158 0.00000000 0.00000000 0.00000000 0.00000000 Judete.din.Romania factor(exem[, 10]) Dambovita Dolj Galati Giurgiu Gorj mari 0.00000000 0.07142857 0.00000000 0.00000000 0.00000000 45
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
mici 0.12500000 0.00000000 0.12500000 0.12500000 0.00000000 mijlocii 0.00000000 0.00000000 0.00000000 0.00000000 0.05263158 Judete.din.Romania factor(exem[, 10]) Harghita Hunedoara Ialomita Iasi Ilfov mari 0.07142857 0.07142857 0.00000000 0.00000000 0.00000000 mici 0.00000000 0.00000000 0.12500000 0.00000000 0.12500000 mijlocii 0.00000000 0.00000000 0.00000000 0.05263158 0.00000000 Judete.din.Romania factor(exem[, 10]) Maramures Mehedinti Mures Neamt Olt mari 0.00000000 0.00000000 0.07142857 0.00000000 0.00000000 mici 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 mijlocii 0.05263158 0.05263158 0.00000000 0.05263158 0.05263158 Judete.din.Romania factor(exem[, 10]) Prahova Salaj Satu Mare Sibiu Suceava mari 0.00000000 0.00000000 0.00000000 0.00000000 0.07142857 mici 0.00000000 0.12500000 0.12500000 0.00000000 0.00000000 mijlocii 0.05263158 0.00000000 0.00000000 0.05263158 0.00000000 Judete.din.Romania factor(exem[, 10]) Teleorman Timis Tulcea Valcea Vaslui mari 0.00000000 0.07142857 0.07142857 0.00000000 0.00000000 mici 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 mijlocii 0.05263158 0.00000000 0.00000000 0.05263158 0.05263158 Judete.din.Romania factor(exem[, 10]) Vrancea mari 0.00000000 mici 0.00000000 mijlocii 0.05263158 SuprArabila factor(exem[, 10]) [,1] [,2] mari 263.4821 151.22321 mici 201.3700 97.90326 mijlocii 215.4242 120.38785 SuprAgricola factor(exem[, 10]) [,1] [,2] mari 436.3221 114.75594 mici 262.5250 90.62351 mijlocii 337.8084 75.08084 Vii 46
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
factor(exem[, 10]) [,1] [,2] mari 9.962857 22.53803 mici 12.255000 16.07791 mijlocii 12.449474 25.90069 Livezi factor(exem[, 10]) [,1] [,2] mari 5.560714 5.205814 mici 3.335000 3.821283 mijlocii 4.857368 3.788510 Paduri factor(exem[, 10]) [,1] [,2] mari 225.3271 124.77751 mici 74.8925 51.33553 mijlocii 156.8258 92.19667 Ape factor(exem[, 10]) [,1] [,2] mari 37.47357 89.401075 mici 8.97500 4.349545 mijlocii 12.32684 7.043026 Constructii factor(exem[, 10]) [,1] [,2] mari 21.74286 7.244804 mici 16.47000 4.526850 mijlocii 16.12263 5.562203 CaiDeComunicatii factor(exem[, 10]) [,1] [,2] mari 11.536429 3.257558 mici 7.313750 1.989335 mijlocii 8.763158 1.808738
47
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Predicție cu CNB Vrem să stabilim clasa de risc a primelor 9 județe din setul de date, pe baza CNB: > predict(model, exem[1:9,-10]) [1] mari mijlocii mari mijlocii mici mici mijlocii mijlocii [9] mici Levels: mari mici mijlocii Deci primele 9 județe din setul de date au clasele de risc: mari mijlocii mari mijlocii mici mici mijlocii mijlocii mici. > table(predict(model, exem[,-10]), exem[,10], dnn=list('predicted','actual')) actual predicted mari mici mijlocii mari 12 0 0 mici 0 8 0 mijlocii 2 0 19 > tabclassAgreement(tab)
48
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
Rețele neuronale > library(neuralnet) > set.seed(123) >head(exem)
> size.sample trainset trainset
49
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> nnet_train nnet_train nnet_train names(nnet_train)[11] names(nnet_train)[12] names(nnet_train)
> nn nn Call: neuralnet(formula = Clasa3 + Clasa5 ~ SuprArabila + SuprAgricola + Vii + Livezi + Paduri + Ape + Constructii + CaiDeComunicatii, data = nnet_train, hidden = c(3, 3)) 50
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
1 repetition was calculated. Error Reached Threshold Steps 1 0.000002268413238 0.005938717953
23
>plot(nn)
>exem1 exem1
51
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> predictie maxid idxidx [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > prediction prediction [1] "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" [18] "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" [35] "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3" "Clasa3"
52
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
> table(prediction, exem$Marimi) Se afișează matricea de confuzie: prediction 4.49 4.8 5.27 6.39 6.61 6.86 6.97 7.02 7.15 7.41 7.91 7.98 8.14 8.29 8.4 8.53 8.56 8.66 8.72 8.77 8.78 8.9 9.06 9.4 9.46 9.61 10.24 10.29 10.33 10.54 Clasa3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 prediction 10.65 10.68 10.81 11.21 11.84 12.57 13.05 13.54 14.28 14.97 19.38 Clasa3 1 1 1 1 1 1 1 1 1 1 1 >tab library(e1071) > classAgreement(tab) $diag [1] 0.0243902439 $kappa [1] 0 $rand [1] 0 $crand [1] 0
53
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
SVM (Mașini cu suport vectorial)
> exem exem SuprArabila Ape Marimi 1 308.82 13.64 mari 2 98.59 7.10 mijlocii 3 182.57 8.63 mari 4 81.07 5.39 mijlocii 5 229.78 6.52 mici 6 120.56 5.80 mici 7 129.50 6.28 mijlocii 8 120.53 5.87 mijlocii 9 83.15 2.97 mici 10 78.45 5.07 mari 11 220.80 6.39 mari 12 118.50 5.88 mijlocii 13 186.33 14.96 mari 14 298.74 13.80 mijlocii 15 256.10 13.11 mijlocii 16 168.91 10.62 mijlocii 17 179.95 12.23 mari 18 291.76 8.25 mijlocii 19 350.96 29.39 mijlocii 20 257.72 10.71 mijlocii 21 484.10 43.20 mari 22 292.93 13.23 mici 23 294.57 346.31 mari 24 148.73 13.89 mijlocii 25 173.91 9.41 mari 26 410.51 27.27 mijlocii 27 175.34 10.98 mici 28 258.97 14.10 mici 29 352.15 13.09 mici 30 143.25 8.18 mijlocii 31 454.84 15.01 mijlocii 32 98.08 5.11 mici 33 488.56 20.89 mari 54
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
34 35 36 37 38 39 40 41
98.24 4.49 mijlocii 187.91 18.50 mijlocii 390.34 17.97 mijlocii 86.86 12.50 mijlocii 350.63 13.98 mari 129.63 8.84 mari 78.96 5.80 mari 531.47 15.28 mari
> names(exem) [1] "SuprArabila" "Ape"
"Marimi"
55
ACADEMIA DE STUDII ECONOMICE; FACULTATEA DE CIBERNETICĂ, STATISTICĂ ȘI INFORMATICĂ ECONOMICĂ, SPECIALIZAREA CIBERNETICĂ ECONOMICĂ
X – Vectorii suport O – restul > index index [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 [26] 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 [51] 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 [76] 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 > testindex testindex [1] 12 37 8 33 60 64 66 49 43 70 52 47 59 31 77 78 74 62 83 10 67 13 57 1 73 [26] 18 38 75 82 71 > testset testset > trainset model1 plot(model1, exem)
57
View more...
Comments