25
Pentru realizarea proiectului am folosit ca date populatia, densitatea, suprafata, numarul locuitorilor din mediul urban si numarul locuitorilor din mediul rural al primelor 20 de judete din Romania (ordinea a fost facuta in mod alfabetic) Sursa: http://www.util21.ro/util21/judete-Romania-informatii.htm 1. Calculati statisticile descriptive ale setului de date: medie, dispersie, variante, matrice de covarianta si de corelatie, histograme. Media:

Inteligenta Computationala Proiect-Vlad Antoaneta Andreea Gr1045

Embed Size (px)

DESCRIPTION

proiect

Citation preview

Pentru realizarea proiectului am folosit ca date populatia, densitatea, suprafata, numarul locuitorilor din mediul urban si numarul locuitorilor din mediul rural al primelor 20 de judete din Romania (ordinea a fost facuta in mod alfabetic)Sursa: http://www.util21.ro/util21/judete-Romania-informatii.htm

1. Calculati statisticile descriptive ale setului de date: medie, dispersie, variante, matrice de covarianta si de corelatie, histograme.

Media:

Dispersia populatiei:

Dispersia suprafetei:

Dispersia numarului de locuitori in mediul urban:

Dispersia numarului de locuitori in mediul rural:

Dispersia densitatii numarului de locuitori pe km2:

Matricea de covarianta:

Matricea de corelatie:

Histograme:

Populatie Suprafata

Numaru locuitori mediul urban

Numar locuitori mediul rural

Densitatea locuitorilor pe km2:

4. SVM:

Se previzioneaza ultima coloana a setului de date:

Se creeaza matricea de confuzie:

- se obtine un vector de lungime 20=numarul de observatii=nr. de linii ale setului de date

- vector cu componente aleatoare de lungime egala lungimea vectorului index impartita la 3 si trunchiata

Se creeaza setul de testare, ale carui observatii sunt valorile vectorului testindex

Se creeaza setul de antrenare, ca fiind observatiile ramase dupa eliminarea setului de testare, iar functia svm din pachetul e1071 creeaza vectorii suport

Au fost obtinuti 14 vectori suport. Functia nucleu implicita este de tip radial, cu parametrii impliciti Cost C=1si un parametru gamma de care depinde functia nucleu radiala. Functia nucleu radial este de forma:

the gaussian radial basis function (RBF):

SVM linear

SVM nucleu polinomial

SVM nucleu sigmoid

Variabila labs memoreaza gradul de dezvoltare

Valorile si vectorii proprii

Afisarea atributelor:

Afisarea scorurilor:

Factorul de incarcare/satiere; afisarea vectorilor proprii pe coloane s.a

SCREE-PLOT

BIPLOT:

Clusteri: kmeans:

plot(r, col=km$cluster)

Afisam populatia si partenenta lor la cele 3 clustere:

plot(r[,2],r[,3], col=km$cluster) - Sunt vizualizate observatiile grupate in clustere in functie de atributele numerice suprafata (coloana 2) si populatia in mediul urban (coloana 3).

fuzzy C-means:

plot(r[,1], r[,2], col=result$cluster+1)

points(result$centers[,c(1,2)],col=2:4,pch=8,cex=2)

Apar marcate cu * (pch=8) centroizii celor 3 clustere.

result$membership[1:3,] Afiseaza gradele de apartenenta la cele 3 clustere ale primelor 3 observatii:

result$membership Afiseaza gradele de apartenenta la cele 3 clustere ale tuturor observatiilor.

6. Arbori de decizie:

Matricea de confuzie:

Arborele de decizie:

Nodul 2 contine 20 de observatii, nodul 4 contine 19 observatii, nodul 21 contine 21 de observatii.

In continuare previzionam clasa datelor de testare. Arborele construit trebuie testat cu datele de testare si calculam matricea de confuzie:

Clasificatorul Naiv BayesianConstruiesc funcia clasificator:

Outputul prezint probabilitile apriorice, dar i probabilitile condiionate. Probabilitile apriorice sunt urmtoarele: probabilitatea de a fi o ar n dezvoltare 45.83% , probabilitatea de a fi o ar cu probleme 12.5% i respectiv,probabilitatea de a fi o ar prosper 41.66%.Clasificarea cu ajutorul CNB (pe setul de date iniial):

Se observ c 23 din cele 24 de instane au fost clasificate corect (11 ri n dezvoltare, 2 ri cu probleme i 10 ri prospere) i doar o instan a fost clasificat incorect: o ar cu probleme a fost clasificat ca fiind prosper.Clasificarea cu ajutorul CNB pe setul de date de testare:

Se observ c 8 din cele 9 instane au fost clasificate corect (4 ri n dezvoltare i 4 ri prospere) i doar o instan a fost clasificat incorect: o ar cu probleme a fost clasificat ca fiind prosper.

(Rosu = In dezvoltare, Verde = Cu probleme, Albastru = Prospera)Pentru a realiza o predicie cu ajutorul clasificatorului Bayesian, construiesc setul de testare alctuit din dou instane (folosit i anterior) urmtor:

Conform clasificatorului Bayesian, prima instan din acest set de testare este o ar prosper, iar a doua este o ar n dezvoltare.Interpretare:

Gradul de acuratee al clasificrii este de 88.88%, iar coeficientul lui Cohen este kappa=0.8, ceea ce nseamn c gradul n care instanele clasificate se potrivesc cu datele reale este unul substanial (nivelul de acord este puternic), deoarece k este situat n intervalul [0.61, 0.8], sau chiar excelent, dup alt abordare, deoarece k este peste nivelul de 0.75.

Reele neuronale: predicie, rata de exactitate a modelului pentru fiecare situaie, coeficientul Cohen.

Construiesc un set de date de testare format din 10 observaii:

Alipesc acestui set de date coloanele (clasele) Prospera, In_dezv, Probleme (privitoare la gradul de dezvoltare al rilor), astfel c setul de date va avea o nou structur:

Pentru uurin, numesc aceste 3 clase Clasa_A (rile prospere), Clasa_B (rile n dezvoltare) i respectiv Clasa_C (rile cu probleme):

Construiesc reeaua neuronal cu 3 noduri ascunse, innd cont de cele 4 variabile numerice din analiz i de setul de date de testare (pe care lucrez):

Dup 52 de iteraii, se ajunge la un prag de 0.0056 i o eroare de 2.55. Reprezentarea grafic a reelei este urmtoarea (cu albastru fiind reprezentat biasul):

Testez reeaua pe datele de testare (am construit un alt set de date de testare), pentru a putea compara rezultatele reale cu cele previzionate:

Predicia cu ajutorul reelei neuronale:

Determinarea matricei de confuzie i a nivelului de acuratee al modelului (reelei):