Sunteți pe pagina 1din 201

LAB 2.

APLICATII CLASIFICARE
BAYESIANA
 Aplicați metoda de clasificare
bayesiană unei baze de date asociate
datelor meteorologice ale unor zile.
Atributul tinta este “Play” și
corespunde deciziei dacă într-o zi dată
sunt condiții favorabile unui joc de
baseball. Clasificati ziua curenta.
 Rezolvati aplicatia in doua moduri:
 Calculati
probab
 Automat folosind Tanagra
Outlook Temp Humidity Windy Play
sunny hot high F N
sunny hot high T N
overcast hot high F Y
rain mild high F Y
rain cool normal F Y
rain cool normal T N
overcast cool normal T Y
sunny mild high F N
sunny cool normal F Y
rain mild normal F Y
sunny mild normal T Y
overcast mild high T Y
overcast hot normal F Y
rain mild high T N
 Modificam baza de date de mai sus astfel:
 Adaugam un nou atribut Type cu valori posibile:
{training, new}
 Adaugam o noua inreg pentru ziua curenta
 Cu exceptia inreg noi, toate celelalte au ca
valoare pentru atributul Type: training
 Importam baza de date de mai sus in Tanagra
 Alegem numai exemple din mt de training:
din tab-ul Instance Selection alegem Discrete
Select Examples si aici alegem atributul Type
cu val training.
 Construim clasificatorul Bayesian pe aceasta mt
de training.
 Pt aplicarea clasificatorului pe intreaga baza de
date deci si pt exemplele neclasificate inca se
foloseste :
din tab-ul Instance Selection -> Recover
examples si marcam la Parameters: unselected
 Alegem View dataset si vedem exemplele cele
noi acum clasificate
 Baza de date poate fi acum exportata: de la
Data visualization alegem -> Export Dataset
alegem
 fie selected adica doar cele noi
 fie all adica toate inreg
 Aplicați metoda de clasificare
bayesiană bazei de date de la
exercitiul anterior. Alegeti multimea
de training ca fiind un esantion de
66% din exemplele clasificate iar
multimea de testare, restul
exemplelor.
 Calculati rata erorii clasificatorului
pe multimea de training si apoi pe
multimea de testare.
 Se importa baza de date vreme.xls
 Din tab-ul Instance selection se alege operatorul
Sampling unde alegem proportia esantionului
66%.
 Se applica NB pe mt de training.
 Eroarea=0,1111
 Pentru a calcula eroarea pe mt de testare:
 Define status:
 input: noul atribut dat de clasificator,
 target=play
 De la Spv learning assessment se alege Test cu
parameters: unselected.
 Eroarea= 0,4
 Construiti un arbore de decizie
folosind algoritmul C-RT pe baza de
date de la exercitiul anterior.
Alegeti aceeasi multime de training.
 Calculati rata erorii clasificatorului
pe multimea de training si apoi pe
multimea de testare.
 Ca si la ex 2, dar se alege din SPV learning
operatorul C-RT.
 Se alege min size of node to split=2
 Pruning size =15%
 Se obtine eroare = 0 pe mt de training
 Ca mai sus se poate det eroare pe mt de
testare = 0,6
 Arbore de decizie este o structura care poate fi folosita pentru a
imparti o colectie mare si eterogena de exemple intr-un sir de
colectii din ce in ce mai mici si mai omogene in raport cu un
atribut tinta.
 Divizarea colectiei se face prin aplicarea unui sir de reguli de
decizie simple.
 Ca orice arbore in teoria grafurilor, arborele de decizie are drept
componente
◦ noduri,
◦ ramuri,
◦ frunze
si se reprezinta cu ramurile in jos, plecand de la radacina.
◦ Nodurile interne= teste facute colectiei de date in functie de valorile unui
atribut
◦ Ramurile = valori posibile ale testelor
◦ Frunzele = modurile de clasificare (clasa careia ii apartine colectia de
inregistrari din nodul respectiv)
 Pentru baza de date
din tabelul 1, un
arbore de decizie
asociat este:
 Un arbore de
decizie pentru baza
de date
corespunzatoare
meciului de
baseball in care
atributul tinta este
“Play”, este:
 In procesul decizional, o inregistrare intra
in arbore la radacina si iese printr-un nod
terminal clasificata.
 Un drum de la radacina la o frunza este o
expresie care exprima regula folosita pt
clasificarea inregistrarii.
 De exemplu, inregistrarea: {sunny, cool,
high, T} parcurge in ordine nodurile 1, 2, 5
si iese cu clasificarea Play=N, regula
folosita fiind: {Outlook= sunny si
Humidity=high}.
 Frunze diferite pot fi clasificate la fel, chiar
daca din motive diferite. De exemplu,
nodurile 3 si 6 sunt clasificate la fel.
 Daca atributul tinta este o var discreta
atunci arb de decizie se numeste arbore de
clasificare.
 Arborele este construit de sus in jos recursiv, in
maniera Divide et Impera. Atributele de intrare sunt
discretizate in prealabil.
 La inceput, in radacina arborelui se afla toate inreg
multimii de training.
 Se selecteaza atributul care da cea mai buna
impartire a nodului radacina.
 Se partitioneaza multimea datelor conform valorilor
testului efectuat asupra atributului selectat.
 Pt. fiecare partitie se repeta pasii de mai sus.
 Conditii de oprire a divizarii unui nod:
◦ Toate inreg nodului apartin aceleasi clase
◦ Nu mai sunt atribute pt a putea face divizarea ( se aege
clasa cu cele mai multe inregistrari)
◦ Nu mai exista inregistrari.
 Cel mai bun atribut= atributul care da cea
mai buna divizare a unui nod
 Criterii – arbore de clasificare
◦ Indicele Gini
◦ Entropia (sau informatia dobandita)
◦ Testul Chi-patrat
 Daca T este o multime de date ce contine
inreg din n clase (deci atributul tinta are n
valori discrete posibile), indicele Gini se
defineste:
n 2
gini (T ) = 1 −  p j
j =1
unde pj = frecventa relative a clasei j
in T

nr aparitii ale clasei j


pj =
nr inreg ale colectiei T
 Daca T se imparte in submultimile astfel
incat T are N elemente, T1 are N1 elemente,
…, Tk are Nk elemente, atunci
indicele Gini al diviziunii

N 1 gini( ) + N 2 gini( ) + ... N k gini( )


gini diviziune (T ) = T1 T2 Tk
N N N
 Indicele Gini ne da probabilitatea ca doua
elemente alese la intamplare din colectia data
sa nu fie in aceeasi clasa.
 Observati ca daca T contine numai inreg
dintr-o clasa atunci
 0  2  0  N 
2 2
gini (T ) = 1 −   + ... +   +    = 0
 N   N   N  

Daca n =2 si T contine acelasi numar de


inreg din clasa 1 ca si din clasa 2 atunci
 N / 2  2  N / 2  2 
gini (T ) = 1 −   +   = 1−1 / 2 = 1 / 2
 N   N  
 Cel mai bun atribut = cel pentru care indice
ginidiviziune(T) este cel mai mic.
 Construirea arborelui de decizie
corespunzator bazei de date asociate
datelor meteorologice ale unor zile.
Atributul tinta este “Play” cu valorile Y/N și
corespunde deciziei dacă într-o zi dată sunt
condiții favorabile unui joc de baseball.
Outlook Temp Humidity Windy Play
sunny hot high F N
sunny hot high T N
overcast hot high F Y
rain mild high F Y
rain cool normal F Y
rain cool normal T N
overcast cool normal T Y
sunny mild high F N
sunny cool normal F Y
rain mild normal F Y
sunny mild normal T Y
overcast mild high T Y
overcast hot normal F Y
rain mild high T N
 Entropia este o masura a modului de
dezorganizare a unui sistem.
 Daca T este o multime de date ce contine
inreg din n clase (deci atributul tinta are n
valori discrete posibile),entropia se
defineste:

entropie(T ) = − p1log 2 p1 − p2 log 2 p2  − pn log 2 pn


unde pj = frecventa relative a clasei j in T,
nr aparitii ale clasei j
pj =
nr inreg ale colectiei T
 Daca T se imparte in submultimile astfel
incat T are N elemente, T1 are N1 elemente,
…, Tk are Nk elemente, atunci

N N N
entropiediviziune(T ) = 1 entropie(T 1) + 2 entropie(T 2) + ... k entropie(T k )
N N N

 Definim informatia dobandita a diviziunii:


k Nj
INFO divizare = entropie(T ) − entropiedivizare (T ) = entropie(T ) −  entropie(T j )
j =1 N
 Observati ca daca T contine numai inreg
dintr-o clasa atunci

entropie(T ) = −1log(1) = 0

Daca n =2 si T contine acelasi numar de


inreg din clasa 1 ca si din clasa 2 atunci

entropie(T ) = −1/ 2 log(1/ 2) −1/ 2 log(1/ 2) = − log(1/ 2) =1


 Cel mai bun atribut = cel pentru care
INFOdiviziune(T) este cel mai mare.
 Se foloseste pentru a determina care sunt
atributele cu maxima importanta pentru o
clasificare.
 In general, se foloseste la testarea
independentei a doua variabile discrete,
masurand corelatia dintre cele doua variabile.
 Cel mai bun atribut va fi cel care este cel mai
important fata de atributul tinta, deci cel mai
fata de care atributul tinta este cel mai
dependent.
 Daca X, Y sunt doua variabile:

X = {x1 , x2 ,..., xn } Y = { y1 , y 2 ,..., y m }


si cu tabela de corelatie asociata lor:

F = ( f ij )1in
1 j  m
definim

 2 = 
(f ij observat − f ij estimat )
2

i j f ij estimat
 unde fij observat= frecventa de aparitie a
evenimentului
{ X = xi ,Y = y j }

m n

total (linia i )  total (coloana j )


 f  f
j =1
ij
i =1
ij

f ij estimat = = n m

 f
nr. total observatii
ij
i =1 j =1
 Pentru a testa ipoteza: X si Y sunt
independente, adica

P( X = xi ,Y = y j ) = P( X = xi ) P(Y = y j )

se calculeaza χ2.
 Daca ipoteza este adevarata, χ2 va avea o
distributie Chi-patrat cu (n-1)(m-1) grade de
libertate.
 Pentru testarea ipotezei se va calcula p-valoarea
distributiei.
 Data valoarea lui χ2 pentru un set de experimente cu
gradul de libertate d, p valoarea este probabilitatea ca
ipoteza sa fie adevarata numai datorita sansei.
 Cu cat p este mai mic cu atat sansele ca ipoteza sa fie
adevarata sunt mai mici si deci cu cat p este mai mic cu
atat X si Y sunt mai strans legate.

 P-valoarea se calculeaza prin cautare in tabele statistice


sau se poate folosi calculatorul de Chi-patrat ce se gaseste
in pagina de web:
www.fourmilab.ch/rpkp/experiments/analysis/chiCalc.htm
l

parent(louis,albert).
parent(albert,robert).
parent(robert,janique).
parent(robert,daniel).
parent(janique,sebastien).

ancestor(X,Y):- parent(X,Y). %functioneaza ca o coditie de iesire din bucla (for-each, while, etc.)
ancestor(X,Y):- parent(X,Z), ancestor(Z,Y). %functioneaza ca un apel recursiv

?- ancestor(louis,sebastien).

I etapa

ancestor(louis,sebastien):- parent(louis,sebastien). FALSE


ancestor(louis,sebastien):- parent(louis,Z), ancestor(Z,sebastien). MAYBE TRUE

a II-a etapa

ancestor(louis,janique):- parent(louis,janique). FALSE


ancestor(louis,janique):- parent(louis,Z), ancestor(Z,janique). MAYBE TRUE

a III-a etapa

ancestor(louis,robert):- parent(louis,robert). FALSE


ancestor(louis,robert):- parent(louis,Z), ancestor(Z,robert). MAYBE TRUE

a IV-a etapa

ancestor(louis,albert):- parent(louis,albert). TRUE


ancestor(louis,albert):- parent(louis,Z), ancestor(Z,albert). FALSE

?- ancestor(louis,sebastien). TRUE %deci sebastien este ruda cu louis


 Colectie de obiecte ID
1
Venit lunar
4800
Credit
Excelent
Clasa
h1

pentru care se cunosc 2


3
2800
1200
Bun
Excelent
h1
h1

un set de caracteristici 4
5
2400
4400
Bun
Bun
h1
h1

Se poate reprezenta ca
6 1600 Excelent h1
 7 3200 Nesatisfacator h2

un tabel in care pe linii


8 1600 Nesatisfacator h3
9 2400 Nesatisfacator h2

avem obiectele, iar pe


10 200 Nesatisfacator h3

coloane caracteristicile
obiectelor Outlook
sunny
Temp
hot
Humidity
high
Windy
F
Play
N
 Caracteristicile le sunny
overcast
hot
hot
high
high
T
F
N
Y
numim atribute rain mild high F Y
rain cool normal F Y
 Obiectele le numim rain cool normal T N
inregistrari sau exemple overcast
sunny
cool
mild
normal
high
T
F
Y
N
sau entitati sunny cool normal F Y
rain mild normal F Y
sunny mild normal T Y
overcast mild high T Y
overcast hot normal F Y
rain mild high T N
 CONTINUI – pot lua valori numerice intr-un
interval dat
Ex:
 cantitatea vanduta,
 temperatura (in grade),
 greutatea (in kg)
 DISCRETE – iau un numar finit de valori
Ex:
 culoarea(albastru, rosu, galben, alb, etc),
 Temperatura (ridicata, normala, scazuta)
 Tip ciuperca(otravitoare, comestibila) –atribut binar
 Atributele bazei de date se impart in:
 Atribut tinta
 Atribute de intrare
Scopul este de a estima valorile atributului
tinta.
 Tipuri de operatii directionate:
 Clasificarea
 Regresia (estimarea)
 A clasifica = a examina
trasaturile si
caracteristicile unui
obiect si a-l repartiza unui Outlook
sunny
Temp
hot
Humidity
high
Windy
F
Play
N
set de clase predefinite. sunny hot high T N

 Data o baza de date, overcast


rain
hot
mild
high
high
F
F
Y
Y
clasificarea inseamna a rain cool normal F Y
adauga o noua coloana rain
overcast
cool
cool
normal
normal
T
T
N
Y
bazei de date (un nou sunny mild high F N
atribut, numit de multe sunny cool normal F Y

ori Clasa) si a determina rain


sunny
mild
mild
normal
normal
F
T
Y
Y
pentru fiecare inregistrare overcast mild high T Y
care este clasa careia ii overcast hot normal F Y

apartine. rain mild high T N

 Atributul tinta Clasa este


discret.
 Clasificarea consta in construirea unui model
care sa poata fi aplicat unor date
neclasificate inca tocmai pentru a putea fi
clasificate.
 Procesul construirii unui clasificator (model
de clasificare) are doua etape:
 Construirea modelului plecand de la o multime
de training = multime de exemple preclasificate
 Aplicarea modelului unor date neclasificate
Anumite persoane pot fi clasificate
 dupa modul in care se estimeaza ca vor
raspunde unei anumite promotii trimise prin
email
 dupa modul in care se estimeaza ca isi vor
schimba compania de telefonie
 Dupa cum ar fi buni candidati pentru o
interventie chirurgicala
Datele pot fi obtinute pentru ca
 Se cunosc anumite informatii anterioare despre
obiecte de acelasi fel
Ex:
 Pacienti care au urmat un anume tratament
 Clienti care au renuntat la serviciile companiei
 Se fac experimente asupra unui esantion din
baza de date in urma carora se obtin informatii
Ex:
 se trimit anumite oferte promotionale doar unui
esantion din totalul clientilor unei companii si in urma
raspunsului acestora la oferta se construieste mt de
training
 Un expert realizeaza o preclasificare a unui
esantion din baza de date
 Datao baza de date D={e1, e2, …, en} si o
multime de clase C={c1, c2, …, cm}, a clasifica
inseamna a gasi o functie f:D->C astfel incat
fiecarui exemplu din baza de date sa ii
corespunda o clasa: f(ei)=cj.
 Se presupune ca toate atributele sunt independente unele de altele si la fel
de importante pentru realizarea clasificarii.
 Se bazeaza pe regula lui Bayes:

 Date o multime de evenimente observabile : X  x1 , x 2 ,..., x n


si o multime de ipoteze H  h1 , h 2 ,..., h m
presupunand ca o singura ipoteza poate sa apara in acelasi timp atunci
probab ca o ipoteza h sa fie adevarata dat fiind un eveniment observabil
x este:

P ( x / h) P ( h)
P (h / x) 
P ( x)
unde
P(x) = probab de aparitie a evenimentului x,
P(x/h) = probab ca data ipoteza h, evenimentul x sa apara.
P(h/x) se numeste probab aposteriori,
P(h) se numeste probab apriori.
 Problema: Pentru acordarea unui credit pentru
cumpararea unui produs se cere clientilor sa
furnizeze informatiile legate de venitul lunar si
indicele de creditare urmand ca institutia care
acorda creditul sa decida daca un client dat
poate beneficia de acest credit.
 Baza de date:
atribute:
ID (numarul de identificare a clientului,
Venit lunar, Credit(Indice de creditare),
Clasa - cu valori posibile
h1= se acorda creditul,
h2 = se acorda creditul dar cu anumite restrictii,
h3=nu se acorda creditul.
ID Venit lunar Credit Clasa
1 4800 Excelent h1
2 2800 Bun h1
3 1200 Excelent h1
4 2400 Bun h1
5 4400 Bun h1
6 1600 Excelent h1
7 3200 Nesatisfacator h2
8 1600 Nesatisfacator h3
9 2400 Nesatisfacator h2
10 200 Nesatisfacator h3
Interval_venit:
 1 corespunde intervalului [0, 400)
 2 corespunde intervalului [400, 2000)
 3 corespunde intervalului [2000, 4000]
 4 corespunde intervalului [4000, infinit).
ID Venit lunar Credit Clasa Interval_venit
1 4800 Excelent h1 4
2 2800 Bun h1 3
3 1200 Excelent h1 2
4 2400 Bun h1 3
5 4400 Bun h1 4
6 1600 Excelent h1 2
7 3200 Nesatisfacator h2 3
8 1600 Nesatisfacator h3 2
9 2400 Nesatisfacator h2 3
10 200 Nesatisfacator h3 1
 Atribute de intrare:
 Interval_venit
 Credit
 Atribut tinta:
Clasa
Data de intrare noua:

{Venit  5200, Credit  Excelent}


Se calculeaza:
P(hi /{Interval _ venit  4, Credit  Excelent})
Si se alege valoarea cu probab cea mai mare.
 Se calculeaza:
maxP({Interval _ venit  4} / hi )  P({Credit  Excelent} / hi )  P (hi ) / 1  i  3

 Calculam probabilitatile:

H P(H)
h1 6/10=0.6
h2 2/10=0.2
h3 2/10=0.2
 Pentru fiecare
atribut:
H
h1 h2 h3
Interval_venit

1 0/6=0 0/2=0 1/2

2 2/6 0/2=0 1/2


3 2/6 2/2=1 0/2=0
H h1 h2 h3
Credit
4 2/6 0/2=0 0/2=0 Excelent 3/6=1/2 0/2=0 0/2=0
Bun 3/6=1/2 0/2=0 0/2=0
Nesatisfacat 0/6=0 2/2=1 2/2=1
or
 P({int_venit=4,
Credit=Exc}/h1}=(2/6)*(3/6)*(6/10)
 P({int_venit=4, Credit=Exc}/h2}=0
 P({int_venit=4, Credit=Exc}/h3}=0
 Rezulta ca clasa care se atribuie datei noi este
h1 .
O problema care poate sa apara atunci cand
se foloseste clasificarea bayesiana este
aceea ca daca multimea de training nu
contine exemple cu destul de multe valori
posibile pentru atributul tinta atunci
probabilitatea ca acele valori sa apara este
zero. Acest lucru implica existenta valorii 0
in matricea probabilitatilor conditionate.
 De exemplu, pentru atributul interval_venit,
pentru ca nu exista nici un exemplu care sa
aiba interval_venit =1 si clasa h1 atunci in
matrice avem intrarea 0. La fel si pentru
clasa h2.
 Acest lucru inseamna ca din start eliminam
posibilitatea ca un client sa poata avea
interval_venit = 1 si sa fie in clasele h1 si h2.
 Uneori aceste zerouri sunt justificate dar
multimea de training nu ar trebui sa impuna
astfel de reguli.
 Pentru a elimina aceasta problema (existenta
de 0 in matricea probabilitatilor
conditionate) se foloseste estimatorul
Laplace.
 Pentrufiecare atribut, fiecare coloana a
matricii probabilitatilor conditionate care
contine valoarea 0 se modifica astfel:
 se adauga 1 la numarator si
 se adauga k la numitor unde k =numarul de
valori posibile ale atributului.

 Obs. Acest estimator nu este obligatoriu sa fie 1


ci poate fi orice λ >0 si atunci se adauga λ la
numarator si se adauga kλ la numitor. De obicei
se foloseste λ=1.
 Pentruatributul Credit, coloana
corespunzatoare lui h1, se modifica din:
3/6 4/9
3/6
in
4/9
0/6 1/9
 Pentruatributul Interval_venit, coloana
corespunzatoare lui h1, se modifica din:
0/6 1/10
2/6 in 3/10
2/6
3/10
2/6
3/10
 Cat de bine estimeaza un clasificator
atributul tinta?
 Acuratetea nr.exemple clasificate corect
unui clasificator= nr.total exemple

nr.exemple clasificate incorect


 rata erorii=
nr.total exemple

 Acuratetea = 1-rata erorii


Rezultate
cunoscute
Date Multime training

Construirea
clasificatorului
Multime
testare

Evaluare
Estimari

Date neclasificate Model final

Clasificare datelor
neclasificate conform
modelului
 Multimea de training este independenta de
multimea de testare.
 De obicei, alegerea multimii de training se
face prin alegerea unui esantion din
multimea datelor cunoscute
 Acuratetea si rata erorii se determina pe
multimea de testare.
 Daca atributul tinta poate
lua valorile
{c1, c2, …, cm}, matricea de
confuzie este o matrice
mxm cu:
C[i][j]=nr exemple care au
sunt clasificate ca avand
valoarea ci iar clasificatorul
le-a estimat ca avand fiind
in clasa cj .
Suma pe diagonala
principala = nr de exemple
clasificate corect
Suport de curs ID

Lect. Dr. Radu Bucea-Manea-Tonis

1
Cuprins:

Unitatea de învățare 1 ................................................................................................................................................................ 4


Date, informații, cunoștințe........................................................................................................................................................ 4
Direcții de abordare............................................................................................................................................................... 4
Clasificarea datelor: .............................................................................................................................................................. 5
Piramidă informațională ........................................................................................................................................................ 5
Fluxurile informaționale ....................................................................................................................................................... 5
Un sistem .............................................................................................................................................................................. 6
Întrebări pentru autoevaluare ................................................................................................................................................ 7
Unitatea de învățare 2 ................................................................................................................................................................ 8
Sistemul Informațional, Sistem informatic ................................................................................................................................ 8
Un sistem informațional ........................................................................................................................................................ 8
Sistemul informatic ............................................................................................................................................................... 8
Întrebări pentru autoevaluare .............................................................................................................................................. 10
Unitatea de învățare 3 .............................................................................................................................................................. 11
Sistemul informatic pentru asistarea deciziei ........................................................................................................................... 11
Procesul decizional ............................................................................................................................................................. 11
Componentele SIAD ........................................................................................................................................................... 11
Pregătirea datelor ................................................................................................................................................................ 11
Magaziile de date operaționale............................................................................................................................................ 12
Depozitele de date ............................................................................................................................................................... 12
Piețele de date ..................................................................................................................................................................... 12
Caracteristicile depozitelor ................................................................................................................................................. 12
Proiectarea logica a depozitelor de date .............................................................................................................................. 12
Proiectarea fizica a depozitelor de date ............................................................................................................................... 12
Arhitectura depozitelor de date ........................................................................................................................................... 13
Schemele dimensionale ....................................................................................................................................................... 14
Întrebări pentru autoevaluare .............................................................................................................................................. 15
Unitatea de învățare 4 .............................................................................................................................................................. 16
Data Mining ............................................................................................................................................................................. 16
Data mining ........................................................................................................................................................................ 16
Tehnicile data mining ......................................................................................................................................................... 16
Domeniile de activitate ....................................................................................................................................................... 16
Operațiile de data mining .................................................................................................................................................... 16
Clasificarea ......................................................................................................................................................................... 16
Estimarea ............................................................................................................................................................................ 17
Prognoza ............................................................................................................................................................................. 17

2
Clustering............................................................................................................................................................................ 17
Descrierea ........................................................................................................................................................................... 17
Arborii de decizie................................................................................................................................................................ 18
Metoda K-Nearest Neighbor ............................................................................................................................................... 19
Lanțuri Markov ................................................................................................................................................................... 20
Clasificarea Bayesiana ........................................................................................................................................................ 21
Întrebări pentru autoevaluare .............................................................................................................................................. 24
Unitatea de învățare 5 .............................................................................................................................................................. 25
Prelucrarea analitica online ...................................................................................................................................................... 25
Prelucrarea analitica online ................................................................................................................................................. 25
Caracteristicile unui sistem multidimensional .................................................................................................................... 25
Clasificarea și compararea instrumentelor OLAP ............................................................................................................... 25
Operații realizate asupra modelului multidimensional ........................................................................................................ 26
Studiu de caz ....................................................................................................................................................................... 26
Întrebări pentru autoevaluare .............................................................................................................................................. 29
Unitatea de învățare 6 .............................................................................................................................................................. 30
Analiza și proiectarea Sistemelor informatice pentru asistarea deciziei ................................................................................... 30
Modelarea datelor ............................................................................................................................................................... 30
Procesul de normalizare ................................................................................................................................................. 30
Modelarea semantica ...................................................................................................................................................... 30
Modelarea orientata-obiect............................................................................................................................................. 32
Concepte de bază ale modelarii prelucrărilor ...................................................................................................................... 33
Procesul .......................................................................................................................................................................... 33
Operația .......................................................................................................................................................................... 33
Tipul de operație ............................................................................................................................................................ 33
Regula de emisie ............................................................................................................................................................ 34
Evenimentul ................................................................................................................................................................... 34
Sincronizarea.................................................................................................................................................................. 34
Dinamica modelului conceptual al prelucrărilor ............................................................................................................ 34
Întrebări pentru autoevaluare .............................................................................................................................................. 35
Unitatea de învățare 7 .............................................................................................................................................................. 36
Dezvoltarea și testarea Sistemelor Informatice pentru Asistarea Deciziei ............................................................................... 36
Universal Modeling Language ............................................................................................................................................ 36
Diagrama cazurilor de utilizare ...................................................................................................................................... 36
Metode de Testare ............................................................................................................................................................... 39
Întrebări de autoevaluare..................................................................................................................................................... 40
Teste de evaluare ..................................................................................................................................................................... 40
Bibliografie .............................................................................................................................................................................. 40

3
Unitatea de învățare 1
Date, informații, cunoștințe

Concepte specifice unității de învățare

- Abordarea sistemica a firmei;


- Piramida informațională;
- Relația întreprinderii cu mediul exterior;
- Etapele procesului prelucrării automate a datelor;
- Fluxurile de resurse și fluxurile de documente generate de sistemul economic.

Datele sunt fapte brute, neprelucrate despre evenimente care nu au semnificație în sistem și nu sunt
organizate. Datele pot fi totuși organizate într-o manieră în care pot fi utile sau pot primi semnificație
pentru sistem. Când datele se organizează astfel încât să aibă semnificație pentru sistem ele devin
informație. Rafinarea datelor și informațiilor de-a lungul timpului formează un ansamblu numit
cunoștințe.

Direcții de abordare
• în general: semne care circulă pe diferite canale între elementele lumii reale, cu forme specifice de
receptare la nivelul materiei vii;
• în particular: când receptorul este omul, în cadrul procesului de cunoaștere

Caracteristici definitorii
• semn cu semnificație, prin existenta unui limbaj cunoscut de către receptor;
• noutate, prin completarea tezaurului de cunoștințe al receptorului;
• utilitate, prin receptarea în timp util, în contextul dorit.

Cunoștința: informația caracterizată de utilitate și importantă pentru receptorul uman

Tezaur de cunoștințe Proces de informare Redundanță

Cantitate de informație → formula lui Shannon

- C este capacitatea canalului în biți pe secundă, o limită superioară teoretică a ratei de transfer
net (rata de informare, uneori indicată I), excluzând codurile de corectare a erorilor;
- B este lățimea de bandă a canalului în hertzi (lățimea benzii în cazul unui semnal de bandă);
- S este puterea semnalului mediu recepționat pe lățimea de bandă măsurată în wați (sau volți
pătrat);
- N este puterea medie a zgomotului și a interferenței pe lățimea de bandă, măsurată în wați
(sau volți pătrat);

4
- S / N este raportul semnal-zgomot (SNR) sau raportul purtător-zgomot (CNR) al semnalului
de comunicație la zgomotul și interferența la receptor exprimat ca un raport de putere liniar.

Data: mod concret de reprezentare a informației pentru un anumit procesor (om, calculator, algoritm,
program etc.)

Parametrii de definire a unei date:


• identificator
• valoare
• atribute

Clasificarea datelor:
• După natură:
- numerice: naturale, întregi, reale, complexe;
- alfabetice
- alfanumerice
- logice

• După numărul de valori în timpul execuției programului:


- variabile
- constante propriu-zise (literali)
- constante simbolice

• După numărul de valori memorate concomitent:


- elementare (scalare)
- structurate (structuri de date)

Piramidă informațională reflectă modul în care datele, informațiile și cunoștințele colaborează într-
un proces permanent, în care datele pot fi folosite pentru a obține informații și cunoștințe, iar
cunoștințele, la rândul lor, pot fi folosite pentru a obține informații și date.

Fig.1.1. Piramidă informațională

Fluxurile informaționale reprezintă totalitatea informațiilor care se vehiculează între emițătorul de


informație și receptor.

5
Conceptul de tehnologie a informației (TI) se referă la totalitatea componentelor software și hardware
folosite în sistemele informaționale computerizate.

Un sistem este o entitate compusă din pârți organizate și care interacționează pentru o funcționare cât
mai eficientă. Subsistemele sunt pârți componente ale sistemului. De exemplu, Facultatea de Științe
Economice este un subsistem al sistemului Universitatea Hyperion.

Lucrările în domeniul sistemicii au condus la definirea unui model care promovează viziunea
sistemică asupra întreprinderii pe care o consideră formată din următoarele trei subsisteme:

Fig.1.2. Rolul SIAD în viziunea sistemica a întreprinderii

• Subsistemul decizional valorifică informațiile oferite de subsistemul informațional în fundamentarea


deciziilor.
• Subsistemul informațional joacă un dublu rol: pe de o parte asigură toate informațiile necesare
luării deciziilor pe toate nivelurile de responsabilitate, conducere și control iar pe de altă parte asigură
căile de comunicare între celelalte subsisteme, deoarece deciziile formulate de subsistemul de
conducere sunt transmise factorilor de execuție prin subsistemul informațional (flux descendent).
• Subsistemul operativ (în cadrul căruia se desfășoară procesele economice specifice domeniului de
activitate a agentului economic) are loc culegerea datelor care apoi sunt transmise subsistemului
informațional (flux ascendent) în vederea stocării și prelucrării datelor necesare obținerii informațiilor
utilizate în fundamentarea deciziilor la nivelul subsistemului decizional (de conducere).

6
Fig. 1.3. Informația și nivelele de management

În figura 1.4 intrările se constituie din date sau informații (care se preiau din documentele
justificative), care sunt procesate obținând-se informații pentru planificare, luarea deciziilor și control.
Documentele contabile se clasifică în funcție de rolul lor și de modul de întocmire în: documente
justificative (de evidentă primară), registrele contabile (evidentă contabilă) și situațiile financiare
(documente de sinteză și raportare).

Fig. 1.4. Fazele distincte ale funcționării unui sistem

Informațiile contabile trebuie să îndeplinească următoarele caracteristici:


• inteligibilitatea (informațiile pot fi ușor de înțeles și de interpretat);
• relevanța (sublinierea aspectelor care pot influenta luarea deciziilor);
• credibilitatea (informațiile nu conțin erori semnificative, nu sunt tendențioase, nici părtinitoare);
• comparabilitatea (informațiile să poată fi comparate prin elemente comune și de aceeași
semnificație).

Întrebări pentru autoevaluare


1. Definiți conceptele de informație, cunoștință și dată.
2. Cum se efectuează schimbul de resurse între un organism economic și exteriorul său sau între
componentele aceluiași organism economic?
3. Dați exemple de fluxuri informaționale.

7
Unitatea de învățare 2
Sistemul Informațional, Sistem informatic

Concepte specifice unității de învățare:

- Etapele funcționarii unui sistem


- Arhitectura sistemului informatic
- Sistemul informațional al întreprinderii: definiții, structură și domenii de activitate
- Sistemul informatic al întreprinderii: definiții, structură și domeniile de activitate

Un sistem informațional se compune dintr-o mulțime de subsisteme intercorelate care lucrează


împreună pentru colectarea, prelucrarea, stocarea, transformarea și distribuirea informației pentru
planificare, luarea deciziilor și control.

Sistemul informațional comunică cu mediul său extern prin fluxuri informaționale (de exemplu
rapoartele pentru acționari), iar în interiorul său, subsistemele comunică între ele prin alte fluxuri
informaționale.

Sistemele informaționale prelucrează datele și/sau informațiile (sortare, organizare, calcule specifice)
obținând informații care sunt structurate în funcție de cerințele utilizatorilor informației.

Sistemul informatic reprezintă o parte a sistemului informațional care permite realizarea operațiilor
de culegere, transmitere, stocare, prelucrare a datelor și difuzare a informațiilor astfel obținute prin
utilizarea mijloacelor tehnologiei informației (TI) și a personalului specializat în prelucrarea automată
a datelor.

Sistemul informatic cuprinde:


• ansamblul informațiilor interne și externe, formale sau informale utilizate în cadrul firmei precum și
datele care au stat la baza obținerii lor;
• software-ul necesar procesării datelor și difuzării informațiilor în cadrul organizației;
• procedurile și tehnicile de obținere (pe baza datelor primare) și de difuzare a informațiilor;
• platforma hardware necesară prelucrării datelor și disipării informațiilor;

8
Fig. 2.1 Subsisteme informaționale organizate în funcție de activitățile din cadrul unei unități
economice

După aria de cuprindere, subsistemele informatice acoperă arii distincte, definite pe criterii
funcționale în cadrul organizației:
o Subsistemul contabilității
o Subsistemul producției
o Subsistemul cercetării
o Subsistemul comercial
o Subsistemul resurselor umane

Fig.2.2. Tipuri de sisteme informatice și utilizatorii acestora, după [Stanciu,2005]

După nivelele de decizie , [Ivancenco,] împarte tehnologiile suport astfel:

9
Întrebări pentru autoevaluare
1. Definiți sistemul informațional și arătați care este relația lui cu celelalte componente ale sistemului
economic.
2. Definiți sistemul informatic și precizați locul lui în cadrul sistemului economic.
3. Ce este structura sistemului informatic?
4. Descrieți componentele structurale ale sistemului informatic și arătați care este relația dintre ele.

10
Unitatea de învățare 3
Sistemul informatic pentru asistarea deciziei

Concepte specifice unității de învățare:

- Procesul decizional;
- Componentele SIAD;
- Depozitele de date;
- Caracteristicile depozitelor de date.

Procesul decizional, după H.Simon, presupune parcurgerea mai multor etape distincte:

- formularea sau identificarea problemei care trebuie rezolvata de procesul decizional;

- realizarea unui model de adoptare a deciziei, testare si validarea sa;

- decizia permite decidentului sa aleagă o acțiune din mai multe posibile in funcție de modelul
decizional ales si de criteriul de selecție stabilit;

- implementarea presupune declanșarea propriu-zisa a acțiunii alese.

Conform [Stanciu, 2002], sistemele informatice pot fi grupate în funcție de natura activităților
susținute astfel:

• Sisteme destinate conducerii (MSS - Management Support Systems) care cuprind:


• Sisteme destinate conducerii curente (MIS – Management Information Systems)
• Sisteme suport de decizie (DSS – Decision Support Systems)
• Sisteme informatice ale executivului (EIS – Executive Information Systems)

[Ivancenco,] definește SIAD ca fiind „destinat asistării decidenților în rezolvarea unor probleme, prin
îmbinarea judecații umane cu procesarea automata a informațiilor, în scopul ameliorării calității
procesului decizional.” În opinia aceluiași autor, aceste sa diferențiază de alte sisteme informatice
după modul de utilizare, soluțiile oferite, performante, utilizatori și modelele folosite.
Componentele SIAD sunt următoarele:

1. Depozitul de date;
2. Baza de modele statistice și matematice;
3. Instrumente de raportare și data-mining;

Pregătirea datelor cuprinde următoarele etape:

1. Extragerea este procesul de captare a datelor din bazele de date operaționale și din alte surse;
poate interfera cu operațiile critice ale sistemului prin folosirea intensiva a metodelor de intrare/ieșire;
2. Curățarea vizează completarea valorilor lipsa, corectarea erorilor la introducerea datelor,
schimbarea formatului în care sunt salvate datele;
3. Transformarea și unificarea presupun divizarea și/sau combinarea înregistrărilor sursa,
„sincronizarea timpului”, samd.;

11
4. Încărcarea presupune realizarea mai multor etape:
a. Mutarea datelor;
b. Verificarea integrității;
c. Construirea indexurilor;

5. Reîmprospătarea presupune de regula o încărcare parțiala realizata periodic în scopul


menținerii „la zi” a datelor; se realizează în doua moduri:

o Sincrona → declanșatoare(triggers)
o Asincrona → administrarea copiilor

Magaziile de date operaționale reprezintă colecții de date orientate către subiect, integrate,
actualizabile, curente sau aproape curente.

Depozitele de date reprezintă un sistem de baze de date specializat, orientat spre subiect, integrat,
nevolatil, dependent de timp pentru susținerea deciziilor manageriale.

Piețele de date reprezintă depozite de date specializate, orientate pe subiect, integrate, volatile și
dependente de timp.

Caracteristicile depozitelor de date vizează următoarele aspecte:

▪ Coloanele tind sa fie utilizate în combinații;


▪ Datele nu sunt actualizate ulterior;
▪ Cheile cuprind o componenta temporala;
▪ Baza de date tinde sa fie foarte mare – redundanta controlata – și puternic indexata;
▪ Prelucrarea prin extragere – copierea datelor din mediul operațional în alt mediu în vederea
prelucrării;
▪ Proiectarea pentru performanta.

Proiectarea logica a depozitelor de date pune accent pe corectitudinea relaționala astfel încât:

- Coloane compuse → mai puține dependente


- Integritatea datelor este verificata numai la încărcare → constrângeri de integritate mai puține
- Se aplica mărci de timp tuturor datelor → chei temporale

Proiectarea fizica a depozitelor de date vizează mai ales eficienta stocării și performanta:

▪ Partiționarea – pe orizontala/verticala - pe domenii


▪ Indexarea – tipuri de indecși:
▪ De tip arbore B → sortare binara
▪ Bitmap → acces direct la valorile unei col.
▪ De dispersare → anumite rânduri
▪ De uniune → Cluster
▪ Boolene/Funcționale

12
▪ Redundanta controlata: vederi materializate și/sau coloane calculate

Arhitectura depozitelor de date


Structura modelului conține în principal obiectele referitoare la tabele de fapte cu atributele de tip
masuri sau metrici, tabelele de tip dimensiune în care regăsim nivele ierarhice, atribute de descriere,
etc. Aceste obiecte vor fi prezentate în continuare.

• Dimensiunile – reprezintă structuri compuse atribute structurate pe diverse niveluri ierarhice


în funcție de care sunt grupate datele. Aceste atribute sunt de obicei descriptive și sunt
folosite ca sursa pentru restricții și pentru rândurile din rapoarte. Sunt considerate tabele
secundare datorita dimensiunilor reduse. În cadrul dimensiunilor se regăsesc și conceptele de
ierarhie, nivel, atribut, concepte care vor fi prezentate în continuare:
o Ierarhiile – sunt structuri logice utilizate pentru ordonarea nivelelor de reprezentare a
datelor. Sunt utilizate și pentru definirea cailor de navigare în interiorul datelor.
Nivelele ierarhice sunt utilizate de instrumentele de analiza OLAP permițând
detalierea graduala a datelor.
o Nivelele – reprezintă poziții în cadrul ierarhiilor. Nivelele se structurează în funcție de
ierarhie de la general la specific, rădăcina fiind reprezentata de nivelul superior, cel
mai înalt al ierarhiei. Relațiile intre diferite nivele sunt relații de tipul părinte-copil.
o Atribute – dimensiunile conțin atribute care reprezintă calificative specifice. Orice
atribut se asociază unei singure dimensiuni, iar o dimensiune se poate exprima prin
mai multe atribute.
• Tabelele de fapte – sunt tabelele centrale. Acestea conțin atribute de tip masuri (metrici) și
chei externe către tabelele dimensiuni. Faptele sunt de obicei date numerice care pot fi
însumate și analizate pe diferite nivele.
o Metricile (masurile) corespund atributelor (faptelor) din tabelele de fapte și sunt de
regula de natura numerica (de exemplu: volumul vânzărilor, costurile, stocurile
disponibile). Aceste variabile au sens numai în contextul unor anumite dimensiuni.
Masurile reprezintă valorile centrale care sunt analizate prin cubul de date. Valoarea
măsurii este calculata pentru un punct dat prin agregarea datelor corespondente
perechii respective valoare-dimensiune, diferite pentru punctul dat. Masurile pot fi
organizate în trei categorii bazate pe tipurile de funcții agregate utilizate: distributive,
algebrice, holistice.
▪ Masurile distributive – sunt calculate cu ajutorul unor funcții de agregare
distributive. Presupunem ca datele sunt împărțite în n seturi. Calcularea
funcției pe fiecare partiție determina o valoare agregata.
▪ Masuri algebrice - sunt calculate cu ajutorul unor funcții algebrice cu M
argumente (unde M este un întreg pozitiv), fiecare din ele obținuta prin
aplicarea unei funcții agregate distributive.
▪ Masuri holistice - sunt calculate cu ajutorul unor funcții holistice. O funcție
agregata este holistica, daca aceasta nu este limitata constant pe spațiul de
stocare cerut de deschiderea subagregării. În acest caz nu exista o funcție

13
algebrica având M argumente (unde M este o constanta) care caracterizează
calculul.

Schemele dimensionale se împart în doua mari categorii:

• Stea, de exemplu:

Fig.3.1 Schema dimensionala de tip stea, după http://datawarehouse4u.info/Data-warehouse-schema-


architecture-star-schema.html

• Fulg-de-nea, de exemplu:

14
Fig.3.2 Schema dimensionala fulg-de-nea, după http://datawarehouse4u.info/Data-warehouse-schema-
architecture-snowflake-schema.html

Întrebări pentru autoevaluare


1. Definiți arhitectura depozitelor de date
2. Cate tipuri de scheme dimensionale cunoașteți?
3. Care sunt componentele unui SIAD?
4. Ce înseamnă ETL?.

15
Unitatea de învățare 4
Data Mining

Concepte specifice unității de învățare:

- Operațiile de data mining


- Arbori de decizie
- Cluster-izare

Data mining este analiza automata a datelor, în general a bazelor de date de dimensiuni mari, cu
scopul de a descoperi tendințe, șabloane, tipare netriviale, necunoscute anterior, uneori neașteptate, în
date și care ar putea oferi informații utile.

Tehnicile data mining fac preziceri despre viitoarele comportamente și trend-uri, permițând
afacerilor sa ia decizii bazate pe cunoștințe. Ele pot răspunde unor întrebări ca de exemplu: "Care sunt
clienții firmei care vor răspunde, aproape cu siguranța, noii promoții și de ce?" sau "Unde ar trebui
localizata noua sucursala a băncii?“

Domeniile de activitate în care se pot aplica tehnicile data mining sunt următoarele:
- în știința: astronomie, medicina, biologie;
- în domeniul afacerilor (comercial): managementul relației cu clienții (CRM –customer relationship
management), comerțul on-line, telefonie, sport și entertainment,
marketing, investiții;
- internet: motoare de căutare, text și agenți web.

Operațiile de data mining sunt:

1. Clasificare
2. Estimare
3. Prognoza
4. Clustering
5. Descrierea

Clasificarea consta în construirea unui model care sa poată fi aplicat unor date neclasificate.
Obiectele caracterizate sunt reprezentate de înregistrările unei baze de date sau fișier, iar clasificarea
înseamnă a adaugă o noua coloana (un nou atribut) și a determina pentru fiecare înregistrare care este
clasa căreia ii aparține.

16
Fig.4.1. Procesul clasificarii

Tehnicile data mining folosite pentru clasificare sunt arborii de decizie și tehnicile de tipul cel mai
apropriat vecin.
Estimarea lucrează cu rezultate cu valori continue, tehnicile data mining folosite pentru estimare sunt
regresia și rețele neurale.
Prognoza analizează înregistrările în raport cu o comportare viitoare ori sunt estimate în raport cu o
valoare viitoare, de exemplu prezicerea venitului unei persoane bazând-se pe istoricul activității
personale.
Clustering este operația de segmentare a unei mulțimi eterogene intr-un număr de subgrupuri mai
omogene numite clustere, înregistrările fiind grupate după similarități.
Descrierea tendințelor din baza de date pentru o mai buna înțelegere a proceselor care au dus la
producerea datelor din baza de date utilizează arborii de decizie.

17
Fig.4.2 Arbore de decizie, după https://businessjargons.com/decision-tree-analysis.html

Arborii de decizie implementați folosind algoritmul ID3 de la http://www.cs.waikato.ac.nz./ml/weka


sunt generați în urma parcurgerii următorilor pași:

1. instanțială clasele de atribute (de exemplu cifra de afaceri, salariu, profit net, etc), apelând
constructorul Attribute pentru fiecare din ele;
2. se populează intern setul de date cu înregistrările aferente;
3. este creată o instanță la arborele de decizie ID3; în cadrul constructorului se inițializează cu
zero variabila mEntropySet;
4. sunt apelate alternativ metodele allSamplesPositives/allSamplesNegatives care returnează true
dacă toate rezultatele sunt pozitive/negative;
5. dacă nu sunt toate cazurile pozitive/negative se apelează metoda getMostCommonValue care
returnează valoarea cea mai des întâlnită;
6. sunt numărate cazurile pozitive cu metoda countTotalPositives;
7. se calculează entropia după formula -p+log2p+ - p-log2p-;
8. se apelează metoda getBestAttribute pentru a se determina nodul rădăcină după criteriul
maxGain de câștig de informație;
9. se încarcă arborele de decizie cu valorile obținute;

În cadrul metodei principale (Main) sunt definite clasele de atribute și categoriile definite în interiorul
acestora. Implementarea criteriilor de selecție care permit clasificarea IMM-urilor în
microîntreprinderi, întreprinderi mici sau mijlocii, în cod C#, este prezentată mai jos:

Attribute ca = new Attribute("ca", new string[] {"<200RON","200-1000RON","1000-


5000RON"});
Attribute pn = new Attribute("pn", new string[] { "are_profit", "fără_profit" });
Attribute sal = new Attribute("sal", new string[] { "1-9", "10-49"/*, "50-249"*/ });

18
După stabilirea tipului de IMM pe baza acestor informații, urmează corelarea cu alte date economice
ale companiilor (precum rentabilitatea economică și financiară), testându-se în ce măsură o firmă este
viabilă din punct de vedere economic. Astfel prin acest arbore de decizie se poate stabili care sunt
firmele viabile din punct de vedere economic și care nu sunt viabile.

Metoda K-Nearest Neighbor presupune calcularea distanțelor unei instanțe noi fată de instanțele din
setul de antrenare. Se vor preciza distantele fată de fiecare instanță din set, ponderile influențelor
acestor instanțe (invers proporționale cu pătratul distanțelor) și importanta instanțelor în cazul în care
atributele au ponderi diferite.

Fig.4.3 Aplicarea teoremei lui Pitagora în determinarea distanței dintre puncte

Având în vedere că fiecare instanță aparține unei clase, se prezintă suma valorilor ponderate ca
măsură a apartenenței instanței noi la una din cele două clase [Leon, 2009].
Implementarea metodei k_NearestNeighbor() presupune următoarele etape, după generarea listelor de
coordonate:

1. calcularea distanțelor dintre puncte, folosind teorema lui Pitagora și algoritmul – primul cu
toate celelalte, următorul cu restul punctelor, ş.a.m.d.:

def euclideanDistance(instance1, instance2, length):


distance = 0
for x in range(length):
distance += pow((instance1[x] - instance2[x]), 2)
return math.sqrt(distance)

2. sortarea ascendentă a listei cu distanțele din care s-au eliminat cele calculate redundant după
modelul – de la A la B și de la B la A:

def getNeighbors(trainingSet, testInstance, k):


distances = []

19
length = len(testInstance)-1
for x in range(len(trainingSet)):
dist = euclideanDistance(testInstance, trainingSet[x], length)
distances.append((trainingSet[x], dist))
distances.sort(key=operator.itemgetter(1))
neighbors = []
for x in range(k):
neighbors.append(distances[x][0])
return neighbors

3. afișarea instanțelor în ordine descrescătoare:

def getResponse(neighbors):
classVotes = {}
for x in range(len(neighbors)):
response = neighbors[x][-1]
if response in classVotes:
classVotes[response] += 1
else:
classVotes[response] = 1
sortedVotes = sorted(classVotes.items(), key=operator.itemgetter(1), reverse=True)
return sortedVotes[0][0]

Lanțuri Markov
Se spune că variabilele aleatoare (𝑋𝑛 )𝑛∈𝑁 formează un lanț Markov dacă pentru orice 𝑛 ∈ 𝑁,
probabilitatea de a ajunge din starea 𝑥𝑛−1 într-una din stările dintr-o mulțime 𝐴𝑛 ∈ 𝑆 nu depinde de
traiectoria evoluției până la 𝑥𝑛−1 , adică:

𝑃(𝑋𝑛 = 𝑥𝑛 |𝑋𝑛−1 = 𝑥𝑛−1 , … , 𝑋1 = 𝑥1 ) = 𝑃(𝑋𝑛 = 𝑥𝑛 |𝑋𝑛−1 = 𝑥𝑛−1 ) = 𝑝(𝑥𝑛 |𝑥𝑛−1 )

unde 𝑝(𝑥𝑛 |𝑥𝑛−1 ) se numește probabilitate de tranziție la pasul n, iar 𝑝0 (𝑥) = 𝑃(𝑋0 = 𝑥) se
numește repartiție inițială.

Fie 𝑃 = (𝑝𝑖𝑗 )𝑖,𝑗∈𝐼 matricea probabilităților de tranziție, iar 𝑝 = (𝑝𝑖 )𝑖∈𝐼 vectorul probabilităților
inițiale ale stărilor, numim 𝜋 vectorul probabilităților limită ale stărilor, iar relația adevărată:

lim 𝑝(𝑛) = 𝜋
𝑛→∞

Studiu de caz

Se afirma ca in tara vrăjitorului din Oz vremea in fiecare zi poate fi descrisa de 3 stări: ploaie,
0.5 0.25 0.25
soare si ninsoare, matricea P a probabilităților de tranziție fiind 𝑃 = ( 0.5 0 0.5 ) si repartitia
0.25 0.25 0.5
initiala p a stărilor fiind 𝑝 = (1/3 1/3 1/3), dupa o zi frumoasa urmează sigur una urata.

La pasul 12, se observa ca p si liniile matricelor probabilităților de trecere si a mediilor


proporțiilor intrărilor tind către vectorul (0.4 0.2 0.4), dar aceasta tranziție se întrezărește de la
pasul 2, vezi figura 1. Rezulta ca lanțul este regulat după vectorul π.

20
Fig.4.4. Lanț Markov implementat in Excel

Clasificarea Bayesiana
Conform [Joita, 2014], fie o baza de date D={e1, e2, …, en} si o mulțime de clase C={c1, c2, …, cm}, a
clasifica înseamnă a găsi o funcție f:D->C astfel încât fiecărui exemplu din baza de date sa ii
corespunda o clasa: f(ei)=cj.

▪ Se presupune ca toate atributele sunt independente unele de altele si la fel de importante


pentru realizarea clasificării.

▪ Se bazează pe regula lui Bayes:

▪ Date o mulțime de evenimente observabile :

X  x1 , x 2 ,..., x n

si o mulțime de ipoteze

H  h1 , h2 ,..., hm

presupunând ca o singura ipoteza poate sa apară in același timp atunci probabilitatea ca o ipoteza h
sa fie adevărata dat fiind un eveniment observabil x este:

P ( x / h) P ( h)
P(h / x) 
P( x)

unde:

P(x) → probabilitatea de apariție a evenimentului x,

P(x/h) → probabilitatea ca data ipoteza h, evenimentul x sa apară.

21
P(h/x) → probabilitate aposteriori,

P(h) → probabilitate apriori.

Studiu de caz

Pentru acordarea unui credit pentru cumpărarea unui produs se cere clienților sa furnizeze informațiile
legate de venitul lunar si indicele de creditare urmând ca instituția care acorda creditul sa decidă daca
un client dat poate beneficia de acest credit.

Tabel 4.1. Baza de date pentru clasificare

Clasa - cu valori posibile

h1= se acorda creditul,

h2 = se acorda creditul dar cu anumite restricții,

h3=nu se acorda creditul.

Interval_venit discretizat

- 1 corespunde intervalului [0, 400)


- 2 corespunde intervalului [400, 2000)
- 3 corespunde intervalului [2000, 4000]
- 4 corespunde intervalului [4000, infinit).

Data de intrare noua:

{Venit  5200, Credit  Excelent}

Se calculează:

P(hi /{Interval _ venit  4, Credit  Excelent})

si se alege valoarea cu probabilitatea cea mai mare.

Se calculează:

maxP({Interval _ venit  4} / hi )  P({Credit  Excelent} / hi )  P(hi ) / 1  i  3

22
Calculam probabilitățile:

Pentru fiecare atribut:

H h1 h2 h3
Interval_venit

1 0/6=0 0/2=0 1/2

2 2/6 0/2=0 1/2

3 2/6 2/2=1 0/2=0

4 2/6 0/2=0 0/2=0

H h1 h2 h3

Credit

Excelent 3/6=1/2 0/2=0 0/2=0

Bun 3/6=1/2 0/2=0 0/2=0

Nesatisfăcător 0/6=0 2/2=1 2/2=1

P({int_venit=4, Credit=Exc}/h1}=(2/6)*(3/6)*(6/10)

P({int_venit=4, Credit=Exc}/h2}=0

P({int_venit=4, Credit=Exc}/h3}=0

Rezulta ca clasa care se atribuie datei noi este h1.

23
Întrebări pentru autoevaluare
1. Precizați operațiile de data mining.
2. Cum se măsoară entropia în cazul algoritmului ID3
3. Ce înseamnă și cum se măsoară distanta euclidiana?

24
Unitatea de învățare 5
Prelucrarea analitica online

Competențele specifice unității de învățare – în cadrul acestei unități se vor studia:


- trăsăturile specifice suportului deciziei;
-modele de date multidimensionale;
- scheme dimensionale.

Prelucrarea analitica online


Reprezintă procesul interactiv de creare, administrare, analiza datelor și creare de rapoarte. Agregarea
datelor se face după forma unui tablou multidimensional:

Fig.5.1 Secțiuni(dices) intr-un model multidimensional

Caracteristicile unui sistem multidimensional - sunt clasificate în doua categorii: logice, fizice:
Caracteristicile logice sunt independente de platforma hardware utilizata, de sistemul de operare, de
numărul de utilizatori și de metodele de stocare fizica. Dimensiunile, ierarhiile, formulele, legăturile
sunt exemple de atribute logice.
Caracteristicile logice se clasifica în doua subcategorii:
- de baza (fundamentale): structura datelor, operațiile, reprezentările.
- specifice (de aplicație): orientate pe cunoștințe, orientate pe proces.
Caracteristicile fizice sunt independente de modelul multidimensional definit sau analizat și includ
modul cum se stochează și încarcă datele și ce platforme software și hardware se folosesc. Ele se
clasifica în doua categorii:
- interne: modul de stocare/acces, modul de calcul.
- externe: tipul de arhitectura, platforma utilizata.

Clasificarea și compararea instrumentelor OLAP


În funcție de modul de stocare a datelor multidimensionale și de modul de procesare
multidimensionala utilizat.

25
Tabel 5.1. Analiza comparativa a instrumentelor OLAP

Instrumentele din grupele 1, 2 și 3 sunt instrumente ROLAP (relațional OLAP), cele din grupele 4 și 5
instrumente MOLAP (multidimensional OLAP), cele din grupa 6 instrumente desktop OLAP
(DOLAP) iar cele din grupele 2 și 4 instrumente OLAP hibride (HOLAP)

Operații realizate asupra modelului multidimensional


• Navigarea pe nivelele ierarhice (Drill Down și Roll Up) – reprezintă operații de navigare în
cadrul ierarhiilor dimensiunilor, prin agregare pe nivelele superioare sau detaliere pe nivelele
inferioare.
• Rotații – fiecare rotație pune în evidenta o noua perspectiva, aducând în prim plan o structura
bidimensionala, o fațeta (slice). Din acest motiv rotația se mai numește și “data slicing”.
• Secțiuni - reprezintă viziuni sau imagini (views) specifice diverselor categorii de utilizatori,
prin operații de secționare prin care se obțin 'felii' bidimensionale (slices).

Studiu de caz
Se dau entitățile:

Fig.5.2 Schema relaționala BD Furnizori de Componente

Cerințe:

1. Sa se realizeze proiecția după atributele numec, numef și cant.

Rezolvare:
SELECT componente.numec, furnizori.numef, fapte.cant
FROM public.furnizori, public.fapte, public.componente
WHERE furnizori.fid = fapte.fid AND fapte.cid = componente.cid;

26
Fig.5.3. Rezultat proiecție pe coloanele numec, numef și cant

2. Sa se obțină cantitatea totala livrata pe furnizori și componente

Rezolvare:
SELECT `F#`,`C#`,SUM(cant) FROM Fapte GROUP BY `F#`,`C#`

Fig.5.4 Grupare pe doua dimensiuni: F#, C#

3. Sa se obțină cantitatea totala livrata prin ‚rostogolirea’ dimensiunilor Furnizori și


Componente
Rezolvare 1:
SELECT `F#`,`C#`,SUM(cant) FROM Fapte GROUP BY `F#`,`C#` WITH ROLLUP

27
Fig.5.5. Rostogolire pe dimensiunile Furnizori și Componente
Rezolvare 2:
SELECT SUM(fapte.cant), fapte.cid, fapte.fid FROM public.fapte GROUP BY
GROUPING SETS ((fid),(cid),())

Fig.5.6. Rostogolire pe dimensiunile Furnizori și Componente(2)

4. Sa se obțină hypercubul asociat dimensiunilor Furnizori și Componente:

Rezolvare 1:
SELECT SUM(fapte.cant), fapte.cid, fapte.fid FROM public.fapte GROUP BY CUBE
(fid,cid)
Rezolvare 2:
SELECT SUM(fapte.cant), fapte.cid, fapte.fid FROM public.fapte GROUP BY
GROUPING SETS ((fid,cid),(fid),(cid),())

28
Fig. 5.7. Hypercub asociat dimensiunilor Furnizori și Componente

Întrebări pentru autoevaluare


1. Cate tipuri de masuri cunoașteți?
2. Enumerați operațiile care se pot realiza asupra modelului multidimensional;
3. Care sunt caracteristicile logice ale unui sistem multidimensional?

29
Unitatea de învățare 6
Analiza și proiectarea Sistemelor informatice pentru asistarea deciziei

Concepte specifice unității de învățare:

- Modelarea datelor;
- Modelarea prelucrărilor.

Modelarea datelor
Metodele de proiectare au ca scop obținerea unor colecții de date ce respecta atât cerințele
informaționale ale utilizatorului cat și restricțiile impuse de modelul relațional.

Procesul de normalizare se bazează pe primele trei forme normale și presupune parcurgerea


următoarelor etape:
1. Inventarierea atributelor;
2. Specificarea regulilor de gestiune;
3. Întocmirea dicționarului de date:
- Un atribut poate fi înscris o singura data în dicționar;
- Sunt eliminate atributele sinonime;
- Dicționarul nu permite atribute derivate/calculate;
4. Stabilirea dependentelor dintre atribute;
5. Pentru atributele izolate se vor caută grupuri de câmpuri care se pot constitui în determinanți ai
acestora;
6. Toate atributele determinante devin chei candidat;
7. Se stabilesc cheile primare dintre atributele candidate;
8. Cu fiecare cheie primara și atributele determinate direct de aceasta se formează un tabel.
9.Se stabilesc cheile externe

Modelarea semantica
De ce? A crescut nivelul de înțelegere a importantei regulilor de business în activitatea comerciala. Ea
reprezintă activitatea generala care consta în încercarea de a reprezenta semnificația.

Tabel 6.1. Concepte în modelarea semantica

30
Modelul Entitate-Asociere permite modelarea realității prin intermediul unor concepte abstracte:
entități, asocieri, atribute și reprezintă o tehnica de realizare a diagramelor:

Fig.6.1. Formalism în ERD

- Entitățile - “ceva care poate fi identificat ca distinct”


Sunt obișnuite și slabe atunci când existenta unei entități depinde de alta.
- Atributele descriu entitățile
- Simple sau Compuse
- Cheie
- Unice sau Multivalorice
- Lipsa
- De baza sau Derivate
- Corelațiile sunt relații care se stabilesc intre entități
O corelație poate fi totala sau parțiala, iar după gradul de participare la o corelație se împart
în:
• Unu-la-unu;
• Unu-la-mai-mulți;
• Mulți-la-mulți.

Fig.6.2. Formalism în simbolizarea tipurilor de corelații

- Subtipurile se constituie sub forma ierarhiilor de entități, implementate sub forma compunerii sau
specializării(moștenire)

31
Fig.6.3. Exemplu de ierarhie de tipuri

Etapele implementării modelului EA sunt:


- Identificarea conceptelor semantice utile
- Conceperea obiectelor formale
- Conceperea regulilor de integritate
- Conceperea operatorilor formali

Limitele modelului relațional


- Descrierea structurilor de date complexe
- Definirea tipurilor de data utilizator
- Partajarea/reutilizarea structurilor de date
- Datele sunt descrise separat de prelucrări

Modelarea orientata-obiect
Concepte:
Obiect – entitate cu identitate proprie caracterizata prin stare și comportament. Obiectele
comunica intre ele prin intermediul mesajelor
Abstractizare – obiecte cu aceeași stare și comportament sunt grupate în clase
Încapsulare – capacitatea obiectelor de a conține atât date cat și operații, numai în parte
vizibile
Moștenire – toate atributele și metodele vizibile unei clase sunt preluate automate de o clasa
derivate
Polimorfism – posibilitatea unui obiect de a răspunde diferit la primirea aceluiași mesaj.

Caracteristici ale modelul obiect-relațional

- Partajarea datelor
- Utilizarea structurilor de date complexe

Tabel 6.2. Paralele model obiectual-relațional


Model Obiectual Model Relațional

Clasa Tabel(Relație)

Obiect Tuplu(Înregistrare)

32
Atribut Câmp

Operație(Metoda) Nu este cazul

Etapele proiectării
1. Identificarea obiectelor și claselor;
2. Identificarea asocierilor;
3. Identificarea atributelor, restricțiilor din interiorul unei clase și a metodelor specifice fiecărei clase;
4. Validarea modelului obiect.

Reguli de conversie
- O clasa este reprezentata printr-o tabela;
- O asociere se reprezintă prin includerea cheii primare din clasa corespondenta în clasa de referința;
- O clasa asociere conține atributele cheie din clasele asociate;
- Specializări ale unei clase de referința vor conține cheia primara a clasei de baza.

Concepte de bază ale modelarii prelucrărilor


Procesul constituie un subansamblu al unei activități în care punctele de intrare și de ieșire sunt
stabile și independente de particularitățile organizatorice.
Operația este o secvență continuă de acțiuni elementare producătoare de evenimente care se execută
neîntrerupt din momentul declanșării ei de către unul sau mai multe evenimente. Operația determină
întotdeauna producerea unui eveniment / unor evenimente.
Tipul de operație reprezintă o categorie de operații prezentând aceleași caracteristici. Se
caracterizează prin:
• conținutul acțiunilor elementare ce formează operația;
• durată;
• evenimentele produse și condițiile de emisie a acestora.

Grafic, un tip de operație se reprezintă astfel:

Fig.6.4. Tip de operație

33
Regula de emisie
• reprezintă o propoziție logică care dacă se dovedește adevărată va determina producerea unui anumit
eveniment;
• este expresia condițiilor referitoare la contextul în care se va derula operația.

Evenimentul reprezintă o circumstanță (un semnal) adusă la cunoștința sistemului la care acesta
trebuie să răspundă. Grafic tipul de eveniment se reprezintă printr-o elipsă.

Condiții pentru ca un semnal să poată fi considerat eveniment:


• trebuie să se producă CEVA în interiorul sau exteriorul sistemului studiat;
• acest “CEVA” produs trebuie să fie perceput de către sistem;
• acest fapt produs interesează sistemul în măsura în care el poate fi declanșatorul posibil al unei
operații.

Sincronizarea reprezintă un ansamblu de condiții, exprimate prin evenimente contributive și care


determină declanșarea unei operații. Ea este expresia condițiilor ce trebuie să se realizeze pentru ca o
operație să se poată declanșa. Sincronizarea se exprimă printr-o propoziție logică ce trebuie să
respecte două cerințe:
• condițiile exprimate trebuie să privească evenimentele declanșatoare ale operației;
• trebuie să existe situații care să permită declanșarea acestor evenimente.

Dinamica modelului conceptual al prelucrărilor:


• descrie înlănțuirea activităților sistemului analizat;
• reprezintă înlănțuirea activităților printr-un graf;
• nodurile grafului sunt evenimente sau operații reprezentând sincronizări;
• arcele grafului reprezintă legături cronologice între evenimente sau operații;

34
Fig.6.6. Modelul conceptual al prelucrărilor

Întrebări pentru autoevaluare


1. Ce este un proces?
2. Care sunt metodele de proiectare a datelor consacrate?

35
Unitatea de învățare 7
Dezvoltarea și testarea Sistemelor Informatice pentru Asistarea Deciziei

Concepte specifice unității de învățare:

- Diagrame UML;
- Metode de testare.

Universal Modeling Language urmărește o definire uniforma, unanim acceptata a conceptelor


specifice modelarii orientate obiect.

Diagrama cazurilor de utilizare


- Descrie interacțiunile utilizatorilor cu sistemul
- Exista mai multe relații intre cazurile de utilizare:
- Relații de extensie – când un caz de utilizare poate fi extins ca un comportament adițional definit
printr-un alt caz de utilizare
- Relații de incluziune – arata ca o instanța a unui caz de utilizare include și componente specifice
altui caz de utilizare
- Relații de generalizare – când un caz de utilizare B este o specializare a unui caz de utilizare A

Fig. 7.1. Diagrama cazurilor de utilizare

Alte diagrame:
• diagramele de stare completează descrierea obiectelor prin:
• descrierea tuturor stărilor posibile pe care le pot avea obiectele unei clase;
• evidențierea evenimentelor care determină schimbarea stărilor.
Nota: Diagramele de stare se întocmesc pentru clasele care au un număr definit de stări.

36
Fig.7.2. Diagrama de stare

• diagramele de activitate modelează aspectele dinamice ale sistemului informatic și descriu


activitățile care se realizează prin operații pentru care se pot prevedea condiții și decizii reflectând
astfel și rezultatele aplicării acestora (vezi figura 7.3).

Fig.7.3. Diagrama de activitate

37
• diagramele de secvență;

Fig.7.4. Diagrama de secvența

• diagramele de colaborare

Fig. 7.5.Diagrama de colaborare, după https://www.lucidchart.com/pages/uml-communication-


diagram

38
Evaluarea sistemului informatic pentru asistarea deciziei presupune următoarele:
1. performanțele și limitările sistemului:
a. îndeplinirea obiectivelor, funcțiilor, sarcinilor de bază și de exercitare a conducerii;
b. oportunitatea, completitudinea și suficientă informațiilor destinate conducerii;
c. timpul de răspuns al sistemului – intervalul de timp din momentul transmiterii unei cereri
din partea conducerii până la momentul primirii răspunsului trebuie să fie scurt;
d. calitatea și precizia informațiilor obținute;
e. calitatea și siguranța fluxurilor informaționale;
f. posibilitățile de control;
g. timpii optimi privind reacția la apariția unor erori și corecția acestora;
h. gradul de integrare a sistemului informațional în corelație directă cu gradul de automatizare
a prelucrărilor;
2. gradul de pregătire a unității economice pentru implementarea sistemului informatic nou:
a. existenta cunoștințelor și disciplinei tehnologice;
b. posibilitățile de instruire și autoinstruire în ceea ce privește utilizarea computerelor și a
produselor informatice etc.

Desfășurarea unei activități riguroase și performante de proiectare și realizare de sisteme


informatice impune respectarea următoarelor principii:
1. Abordarea globală a problemei de rezolvat;
2. Utilizarea unei metodologii unitare în proiectarea și realizarea sistemului informatic;
3. Aplicarea celor mai moderne soluții și metode de proiectare și realizare a sistemului informatic;
4. Structurarea sistemului informatic ținând seama de structura organizatorică din cadrul firmei.
5. Participarea nemijlocită a viitorului beneficiar la activitățile de analiză, proiectare și implementare a
sistemului informatic. O astfel de participare asigură formularea clară a specificațiilor necesare
proiectării și validarea eșalonată a soluțiilor propuse de proiectant toate acestea asigurând în final un
produs care să corespundă deplin cerințelor utilizatorului;
6. Respectarea cadrului legislativ. Fiind vorba de sisteme informatice de gestiune devine obligatorie
realizarea evidențelor, calcularea indicatorilor și întocmirea lucrărilor de sinteză în conformitate cu
reglementările aflate în vigoare.
7. Realizarea unor sisteme informatice corespunzătoare resurselor disponibile la utilizator;
8. Întrucât prin natura sa software-ul este supus schimbării, această schimbare trebuie anticipată și
controlată;
9. Compromisurile sunt inerente în dezvoltarea de software și ele trebuie explicitate și documentate.

Metode de Testare
Functional testing - Testare de tip black box canalizata pe verificarea cerințelor funcționale ale
aplicației; acest tip de testare trebuie făcut de testeri.
Black box testing - Nu se bazează pe cunoașterea interna a design-ului sau a codului . Testele sunt
bazate pe cerințe și funcționalitate
White box testing - Se bazează pe cunoașterea logicii interne a codului aplicației. Testele sunt bazate
pe acoperirea sintaxei de cod, ramuri, cai, condiții.

39
Întrebări de autoevaluare
1. Enumerați principalele diagrame UML;
2. Care sunt principalele metode de testare?

Teste de evaluare
1. Ce desemnează acronimul UML?
2. Enumerați principalele metodologii de dezvoltare;
3. Ce caracteristici trebuie sa îndeplinească depozitele de date?
4. Care sunt operațiile de tip OLAP?
5. Care sunt diagramele UML utilizate în modelarea prelucrărilor?
6. Descrieți un algoritm de data mining la alegere;
7. Enumerați fazele funcționarii unui sistem;
8. Care sunt componentele unui sistem informatic pentru asistarea deciziilor?
9. Care sunt factorii alegerii unui nou sistem informatic pentru asistarea deciziilor?
10. Sunt considerate bune practici în dezvoltarea sistemelor informatice următoarele.

Bibliografie
1. I.Lungu, Gh.Sabau, M.Velicanu, M.Muntean – Sisteme informatice – Analiza, proiectare și
implementare, Ed. Economica, București, 2003
2. V. Stanciu – Proiectarea sistemelor informatice, Ed. Dual Tech, Bucureștii, 2002
3. R. Vasilescu – Sisteme informatice de contabilitate, Ed. Eurostampa, Timișoara, 2008
4. D. Joita – Tehnici de Data mining, Curs pentru învățământul la distanta, Ed. Univ.Titu
Maiorescu, București, 2014
5. C.V. Ivancenco – Note de curs,
http://www.cig.ase.ro/prof/ivancenco/resurse/cig_siad%20cursul%203.pdf

40
SIAD Suport de curs II
SIAD bazat pe doc

Monitoriz echipamentelor

Dictionare de date

Inventarul componentelor

Raion
SIAD orientate pe date


Gestiunea portofoliului

Analiza cadastrala

Analiza bugetului

Analiza datelor economice

Analiza seriilor de timp

Modelare
SIAD bazate pe analiza datelor


SI pentru vanzari – extrag datele relevante din sisteme de
prelucrare automata a datelor in vederea obtinerii de
analize ad-hoc.

Etape:

- identificarea problemei;

- configurarea sistemului in vederea gasirii unei solutii;

- identificarea solutiei pe baza analizei.
SIAD orientate pe gestiune

Logistica si managementul timpului;

Estimarea bugetelor;

Management de proiect;

Politica salariala si acordarea de bonusuri;

Extinderea planului general de dezvoltare;

Consolidarea strategica;

Planificarea investitiilor;

Estimarea pe termen scurt a bugetelor.

Scop: Stabilirea echilibrului dintre tintele economice si alocarea de resurse


SIAD bazate pe simulari

Modelarea planului de afaceri;

Analiza Top-Down a bugetelor de cheltuieli;

Modelarea SI al firmei;

Modelarea potentialului firmei pe termen lung;

Cererea agregata a pietei pe nisa de activitate;

Politica de pret;

Necesarul de echipamente;

Managementul riscului.


Scop: consolidarea, consistenta, evaluarea si intelegerea proceselor interne
SIAD axate pe optimizari


Eficientizarea activitatii de formare profesionala;

Planificarea strategica;

Optimizarea rezultatelor financiare pe termen scurt;

Reducerea consumului de materii prime;

Eficientizarea fluxului intern de documente;

Optimizarea sistemului de comenzi


Scop: alocarea optima a factorilor si mijloacelor de productie
SIAD-uri consultative

Alocarea bugetelor de cheltuieli in functie de vanzari;

Calculul tintelor de vanzari pe categorii de produse;

Previziunea nivelului viitor al productiei;

Determinarea fluxului activitatii comerciale pe niveluri organizatorice;

Gestiunea datoriei pe termen scurt;

Gestiunea portofoliului de actiuni si dividende;

Aocarea optimala a capitalului propriu;


Scop: oferirea unei solutii economice in vederea atingerii unei tinte
Caracteristici ale diferitelor tipuri de
sisteme
Caracteristici ale diferitelor tipuri de
sisteme (II)
Multumesc!
Data mining si securitatea
informatiei – introducere
 Orice calculator sau retea de calculatoare este vulnerabila
la atacuri.

 Anual mii de noi vulnerabilitati sunt raportate catre CERT


(Computer Emergency Response Team).
 CERT –RO CENTRUL NAȚIONAL DE RĂSPUNS LA
INCIDENTE DE SECURITATE CIBERNETICĂ

 Se pot reduce vulnerabilitatile prin folosirea de “bune


practici” la dezvoltarea aplicatiilor software, dar nu ne
putem astepta la asigurarea unei securitati complete a
unui sistem.
 Odata cu dezvoltarea tehnologiei calculatoarelor acestea
au devenit unelte foarte importante in mana celor care se
ocupa cu frauda.
 Odata cu folosirea pe scara larga a internetului atacurile
catre sistemele informationale au devenit din ce in ce mai
complexe si mai numeroase.
 Conform www. scmagazine.com,
 in 2013
 nr de host-uri - 1 miliard
 nr de utilizatori - 2,8 miliarde.
 Exista multe retele si organizatii criminale care comit
fraude utilizand calculatoarele, prin atacul asupra altor
calculatoare si sisteme informatice, din domeniu privat
sau public,
 de la furtul identitatii persoanelor si folosirea informatiilor
financiare,
 la atacul asupra unor sisteme strategice de aparare si securitate
nationale
 Daca la inceputuri,
 strategia urmarita in securitatea informatiei era cea de
protectie a sistemelor de calcul,

 astazi se bazeaza pe folosirea si dezvoltarea de IDS-


uri (intrusion detection system) – sisteme de detectare a
intruziunilor.
 Data mining = extragere de informatii din baze de date f.
mari
 Tehnicile de data mining au fost aplicate cu succes in
multe domenii inclusiv securitate IT.

 Data mining in securitatea informatiei se concentreaza pe


detectarea intruziunilor.

Tehnici data mining
 Tehnicile data mining implicate in procesul de detectare
a intruziunilor se impart in doua categorii:
 cele folosite in detectarea utilizării inadecvate
(“misuse detection”) și
 cele folosite pentru detectarea anomaliilor (“anomaly
detection”).
detectarea utilizării inadecvate
 Fiecare exemplu din colectia de date este etichetat ca
„normal” sau „intruziune”, dupa care, folosind o multime
de training, se construieste un model de clasificator care
este apoi folosit pentru identificarea ca „normal” sau
„intruziune” a altor exemple, care nu fac parte din
multimea de training.
 Un astfel de model este foarte bun pentru detectarea
atacurilor cunoscute dar nu poate detecta atacuri de tip
nou, pentru ca nu este antrenat sa o faca.
 Din acest motiv rata alarmelor false (adica a detectarii
unei actiuni semnalizata ca si atac dar care este, de fapt, o
utilizare legitima a retelei) este mica, in schimb nu pot
detecta atacuri complet noi.
detectarea anomaliilor
 Pe de alta parte, detectarea anomaliilor presupune
construirea unor modele de comportare normala astfel
incat orice abatere de la normal sa fie vazuta ca
intruziune.
 Desi aceste tehnici pot detecta atacuri complet noi,
experienta arata ca rata alarmelor false este destul de
mare.
 Principalul motiv pentru care tehnicile de data mining
sunt folosite pentru detectarea intruziunilor este acela ca
acestea ajuta la prelucrarea automata a bazelor de date
foarte mari.
 Tehnicile data mining sunt folosite pentru:
 detectarea de noi vulnerabilitati si intruziuni
 descoperirea de modele noi de atacuri
 luarea unor decizii in managementul intruziunilor.
 Pentru aplicarea tehnicilor data mining in detectarea
intruziunilor, datele trebuie preprocesate intai si
transformate intr-un format convenabil acestor tehnici.
Etapele procesului de aplicare a tehnicilor
de data mining in detectarea intruziunilor
 Etapa de preprocesare a datelor.
Datele care trebuie monitorizate sunt prelucrate si convertite
la un format care sa poata permite aplicarea tehnicilor de data
mining.
 Etapa de modelare data mining.
Pe baza datelor preprocesate se construieste un model
folosindu-se tehnicile de data mining.
 Etapa de aplicare a modelului.
Modelul se aplica datelor si IDS-ul (Intrusion Detection
System) furnizeaza rezultatele: detectarea intruziunilor,
descoperirea de noi atacuri.
Tehnicile data mining cele mai folosite

 Clusterizarea
 Clasificarea
 Detectarea valorilor exceptionale (outlier detection)
 Reguli de asociere
Suport de curs
Introducere
Data mining este analiza automata a datelor, in
general a bazelor de date de dimensiuni mari, cu
scopul de a descoperi tendinte, sabloane, tipare
netriviale, necunoscute anterior, uneori neasteptate,
in date si care ar putea oferi informatii utile.
Tehnicile data mining
Pot face preziceri despre viitoarele comportamente si
trend-uri, permitand
afacerilor sa ia decizii bazate pe cunostinte. Ele pot
raspunde unor intrebari ca de exemplu: "Care sunt
clientii firmei care vor raspunde, aproape cu siguranta,
noii promotii si de ce?" sau "Unde ar trebui localizata
noua sucursala a bancii?“
Metodologia data mining
Sunt numeroase domeniile de activitate in care se pot
aplica tehnicile data mining:

- in stiinta: astronomie, medicina


- in domeniul afacerilor (comercial): managementul
relatiei cu clientii (CRM –customer relationship
management), comertul on-line, telefonie, sport si
entertainment,
marketing, investitii
- Web: motoare de cautare, text si web mining
Operatii specifice data mining
Principalele operatii (numite de cele mai multe ori
task-uri) care pot fi efectuate cu data
mining sunt:

a. Clasificare
b. Estimare
c. Prezicere (prognoza)
d. Asociere
e. Clustering
f. Descriere si profil
Clasificarea
Obiectele care sunt caracterizate in general sunt
reprezentate de inregistrarile unei baze de date sau
fisier, iar clasificarea inseamna a adauga o noua
coloana (un nou atribut) cu un cod al unei clase de un
anumit tip si a determina pentru fiecare inregistrare
care este clasa careia ii apartine.
Clasificarea consta in construirea unui model care sa
poata fi aplicat unor date neclasificate inca tocmai
pentru a putea fi clasificate.
Tehnicile data mining folosite pentru clasificare sunt
arborii de decizie si tehnicile de tipul cel mai
apropriat vecin.
Estimarea
In timp ce clasificarea lucreaza cu rezultate de tip
discret, estimarea lucreaza cu rezultate cu valori
continue.
Estimarea se foloseste foarte des pentru a clasifica
inregistrarile.
Tehnicile data mining folosite pentru estimare
sunt: regresie si retele neurale.
Prezicere sau prognoza
Prezicerea este la fel ca si clasificarea si estimarea, doar
ca inregistrarile sunt clasificate in raport cu o
comportare viitoare sau estimate in raport cu o valoare
viitoare.
De exemplu, prezicerea acelor clienti care sunt pasibili
sa raspunda unui produs nou, prezicerea venitului
unei persoane bazandu-ne pe detalii personale.
Asociere
Asocierea este operatia de a determina ce lucruri pot fi
grupate impreuna.
Asocierea este o modalitate de a genera anumite reguli
de forma "daca se intampla acest lucru atunci se va
intampla si acest lucru (cu probabiliatea x).
Clustering
Clustering este operatia de segmentare a unei multimi
heterogene intr-un numar de subgrupuri mai
omogene numite clustere.
Clustering se deosebeste de clasificare prin aceea ca nu
se bazeaza pe clase predefinite. In cazul operatiei de
clustering nu exista multime de training sau exemple
predefinite. Inregistrarile sunt grupate dupa
similaritati.
Descriere si profil
Uneori scopul metodologiei data mining este de a
descrie ce se intampla, care sunt tendintele in baza de
date, pentru o mai buna intelegere a persoanelor,
produselor si proceselor care au dus la producerea
datelor din baza de date.
Printre tehnicile folosite se numara arborii de
decizie, regulile de asociere si clustering.
Metoda K-Nearest Neighbor
Aceasta presupune calcularea distanţelor unei instanţe noi
faţă de instanţele din setul de antrenare. În acest sens se
utilizează distanţa euclidiană şi ponderarea atributelor.
Se vor preciza distantele faţă de fiecare instanţă din set,
ponderile influenţelor acestor instanţe (invers
proportionale cu pătratul distanţelor) şi importanţa
instanţelor în cazul în care atributele au ponderi diferite.
Avand în vedere că fiecare instanţă aparţine unei clase, se
prezintă suma valorilor ponderate ca masură a apartenenţei
instanţei noi la una din cele două clase.
Implementarea metodei K-Nearest Neighbor
presupune următoarele etape, după generarea listelor
de coordonate:
1. calcularea distanţelor dintre puncte, folosind teorema
lui Pitagora şi algoritmul – primul cu toate celelalte,
următorul cu restul punctelor, ş.a.m.d. – şi adăugarea lor
în lista dist;
2. sortarea ascendentă a listei cu distanţele din care s-au
eliminat cele calculate redundant după modelul – de la
A la B şi de la B la A;
3. afişarea distanţelor în ordine descrescătoare.
Aplicarea teoremei lui Pitagora în determinarea distanţei dintre puncte
Modul de logare
Studiu de caz
:- dynamic fapt/2.

%metoda principala
login(Info):-
verifica(Info),!,
write('Multumesc!').

%daca atributul cu cheia respectiva (de ex. credentiale) NU este in baza de fapte se deduce din
reguli (de ex. Utilizator):
verifica(Cheie):-
fapt(Cheie,_),!.
verifica(Cheie):-
infer(Cheie),
cere(Cheie).

%selectam regula dupa care iesim din mecanismul de backtracking


infer(Variable) :-
select_rule(Variable),
fail.
infer(_).

%se adauga variabila dedusa din reguli in baza de fapte


select_rule(Variable) :-
utilizator(Variable,Value),
asserta(fapt(Variable,Value)).

%modelul datelor
utilizator(credentiale, acces):-
atribut(user, radu),
atribut(pwd,1234).

%pentru fiecare atribut se repeta metoda de verificare


atribut(Cheie, Valoare):-
verifica(Cheie),!,%daca atributul nu este in baza de fapte
fapt(Cheie,Valoare).
%este cerut input-ul doar pentru atribute din baza de date:
cere(Cheie):-
fapt(Cheie,_),!.
cere(Cheie):-
prompt(Cheie),
read(Valori),
adaug(Cheie,Valori).

%interfata
prompt(user):-write('Care este utilizatorul tau?'), nl.
prompt(pwd):-write('Ce parola ai?'), nl.

%se creeaza baza de fapte


adaug(_,[]):-!.
adaug(Cheie,[H|T]):-
asserta(fapt(Cheie,H)), adaug(Cheie,T).

Etape:
Pasul 1. Se deduc utilizatorii din modelul de date si se adauga in baza de fapte – sageata albastra;
Pasul 2. Pentru fiecare atribut se invoca metoda verificare – sageata rosie - care solicita input-ul
utilizatorului – sageata verde – doar pentru valori care se gasesc in baza de fapte;
Pasul 3. Daca totul decurge bine, se intoarce un mesaj de intampinare (Multumesc!).
OLAP
6.53

Radu Manea
DEFINITIE

O componentă de bază a implementărilor


depozitelor de date, OLAP permite o analiză
multidimensională rapidă și flexibilă a datelor
pentru business intelligence (BI) și sisteme de
asistare a deciziei.

11.04.2022 Radu Manea 2


TIPURI
MOLAP ROLAP
OLAP care funcționează direct cu un cub OLAP ROLAP, sau OLAP relațional, este o analiză
multidimensional este cunoscut ca OLAP multidimensională a datelor care operează direct
multidimensional sau MOLAP. Pentru majoritatea pe datele din tabele relaționale, fără a reorganiza
utilizărilor, MOLAP este cel mai rapid și mai practic mai întâi datele într-un cub.
tip de analiză a datelor multidimensionale.

HOLAP OLTP
HOLAP, sau hibrid OLAP, încearcă să creeze Procesarea tranzacțiilor online, sau OLTP, se
inbinarea optimă între bazele de date relaționale și referă la metodele de prelucrare a datelor și
multidimensionale în cadrul unei singure arhitecturi software-ul axat pe date și aplicații orientate
OLAP. Tabelele relaționale conțin cantități mai mari către tranzacții.
de date, iar cuburile OLAP sunt folosite pentru
agregare și procesare speculativă. HOLAP necesită
un server OLAP care acceptă atât MOLAP, cât și
ROLAP.

7/1/20XX Pitch deck title 3


OPERATII
DRILL DOWN

ROLL UP

SLICE & DICE

PIVOT

11/4/2022 Radu Manea 4


DRILL DOWN
Operația convertește datele mai puțin detaliate în date mai detaliate
printr-una dintre cele două metode:

• deplasarea în jos în ierarhia dimensiunii;

• adăugarea unei noi dimensiuni la cub.

De exemplu, dacă vizualizați datele de vânzări pentru calendarul sau


trimestrul fiscal al unei organizații, puteți detalia pentru a vedea
vânzările pentru fiecare lună, deplasându-vă în jos în ierarhia
dimensiunii „timp”.

11/4/2022 Radu Manea 5


ROLL-UP
Roll up este opusul funcției de drill-down in sensul ca

agregă datele dintr-un cub OLAP prin deplasarea în sus

în ierarhia dimensiunii sau prin reducerea numărului de

dimensiuni.
De exemplu, puteți trece în sus în ierarhia conceptuală

a dimensiunii „locație” vizualizând datele fiecărei

țări, mai degrabă decât fiecare oraș.

11/4/2022 Radu Manea 6


SLICE & DICE
Operația de feliere a unui subcub prin selectarea unei singure dimensiuni din cubul
OLAP principal. De exemplu, puteți detasa o porțiune evidențiind toate datele pentru
primul trimestru fiscal sau calendaristic al organizației (dimensiunea timp).

Operația de tip dice izolează un sub-cub selectând mai multe dimensiuni din cubul
OLAP principal. De exemplu, puteți evidenția toate datele după calendarul sau
trimestrul fiscal al unei organizații (dimensiunea timp) și în S.U.A. și Canada
(dimensiunea locație).
PIVOT
Funcția pivot rotește vizualizarea curentă a cubului
pentru a afișa o nouă reprezentare a datelor,
permițând vederi dinamice multidimensionale ale
acestora.

Funcția pivot OLAP este comparabilă cu caracteristica


tabelului pivot din procesorul de calcul tabelar
Microsoft Excel, insa agregarile de tip OLAP sunt
relativ mai ușor de utilizat (este necesară mai puțină
expertiză) și au un timp de răspuns mai rapid, sporind
performanța interogărilor.

11/4/2022 Radu Manea 8


TERMINOLOGIE
CUB MASURA

O structură de date care agregă măsurile după nivelurile și ierarhiile Un set de valori dintr-un cub care se bazează pe o coloană din tabelul
fiecăreia dintre dimensiunile pe care doriți să le analizați. Cuburile de fapte al cubului și care sunt de obicei valori numerice. Măsurile sunt
combină mai multe dimensiuni, cum ar fi timpul, locatia și liniile de valorile centrale din cub care sunt preprocesate, agregate și analizate.
produse, cu date rezumate, cum ar fi cifrele de vânzări sau de stoc. Exemplele comune includ vânzările, profiturile, veniturile și costurile.

DIMENSIUNE IERARHIE
Un set de una sau mai multe ierarhii organizate pe niveluri dintr-un O structură arborescentă logică care organizează membrii unei
cub pe care un utilizator le înțelege și le folosește ca bază pentru dimensiuni astfel încât fiecare membru să aibă un membru părinte
analiza datelor. De exemplu, o dimensiune geografică poate și zero sau mai mulți membri copii. Un copil este un membru
include niveluri pentru Țară/Regiune, Stat/Provinție și Oraș. inferior următorului nivel într-o ierarhie care este direct legată de
membrul curent. De exemplu, într-o ierarhie de timp care conține
nivelurile Trimestru, Lună și Zi, ianuarie este un copil al lui Qtr1.

11/4/2022 Radu Manea 9


MULTUMESC!

10
Sisteme Info. pt. Asist. Deciziei
Caracteristici


Destinate managementului superior (middle-
upper)

Combina metode analitice cu functii de acces la
date

Interfete prietenoase, destinate utilizatorilor simpli

Adaptabile schimbarilor
Clasificare


Colaborative, ex Google Docs

Orientate pe date, ex Serii de timp

Orientate pe documente

Bazate pe cunoastere, ex Arbori de decizie

Bazate pe modele, ex Petri Net
Componente


Baza de date

Baza de modele statistico-matematice

Interfata: generatorul de rapoarte, BI tools, etc.
Tipologie

Dupa domeniu: mk, prod, fin

Dupa nivel org: operational, control, strategic

Dupa tipul problemei: structurat/nestructurat

Dupa tipul tehnologiei: interactiv/batch

Dupa abordare: simulare/optimizare
Operatii generice


Aducerea unui singur tip de info

Mecanisme ad-hoc de analiza a datelor

Agregari de date sub forma rapoartelor

Evaluarea deciziilor

Propunerea unei decizii

Aplicarea deciziei
Multumesc!
Radu Manea
 O mulţime fuzzy A, definită pe o mulţime X, este formată
din perechi ordonate (x ; μA(x)), unde x este un element
din mulţimea X, iar μA(x) este un element care poate lua
valori în intervalul [0,1] şi descrie măsura în care
elementul x aparţine sau nu mulţimii A.
 μA(x) este funcţia caracteristică sau funcţia de apartenenţă
asociată mulţimii fuzzy A, iar valoarea acestei funcţii se
numeşte grad de apartenenţă. O singură pereche de forma
(x ; μA(x)) se numeşte singleton fuzzy.
 În general, un număr fuzzy este un număr real definit pe
un interval de încredere [a,b] şi descris de o funcţie de
apartenenţă care ia valori în intervalul [0,1].
 R1 : Dacă x este X1 şi y este Y1 atunci z este Z1
 R2 : Dacă x este X2 şi y este Y2 atunci z este Z2 . . .
 Rn : Dacă x este Xn şi y este Yn atunci z este Zn
 Fuzzificare
 Inferenta – Reguli Fuzzy
 Defuzzificare
Are ca scop obtinerea unei multimi Fuzzy pornind de la
input (singleton):
Ar trebui analizate toate combinatiile si construite
reguli pentru toate combinatiile posibile!

Reguli de inferenta:
 Negarea. Pentru o mulţime fuzzy A caracterizată de funcţia de
apartenenţă μA(x), mulţimea fuzzy complementară, notată Ā, va
avea funcţia de apartenenţă: μĀ(x) = 1- μĀ(x);
 Reuniunea a două mulţimi fuzzy A şi B, caracterizate de funcţiile de
apartenenţă μA(x) şi μB (x) produce o nouă mulţime fuzzy C=A B,
a cărei funcţie de apartenenţă se determină pe baza operatorului max,
conform relaţiei: μ A B(x) = max(μA(x), μB(x));
 Intersectia a două mulţimi fuzzy A şi B produce o nouă mulţime
fuzzy C= A∩B, a cărei funcţie de apartenenţă se determină pe baza
operatorului min, conform relaţiei: μA∩B(x) = min(μA(x), μB(x)).
➢ Metoda centroidului determină valoarea crisp (exacta)
asociată ieşirii unui sistem fuzzy prin valoarea abscisei
centrului de greutate al figurii geometrice care descrie
mulţimea fuzzy asociată ieşirii sistemului
➢ Daca aria este perceputa ca și o placa de densitate egala,
centrul de greutate este ordonata punctului fata de care
placa sta in echilibru.
Determinarea vitezei optime de deplasare in functie de:
❖ vizibilitate
❖ calitatea drumului

Baza de reguli:

88,8 Km/h
SISTEME INFORMATICE BAZATE PE CUNOASTERE
RADU MANEA
Un sistem de management al
cunoștințelor cuprinde o serie de practici
DEFINITIE utilizate într-o organizație pentru a
identifica, crea, reprezenta, distribui și
adopta experiența (know-how).
ARHITECTURA
 Baza de cunostinte sau
depozitul de date;
 Instrumente de data mining
si reasoning;
 Interfata cu utilizatorii din
groupware, intranet, samd.
MAPAREA CONTINUTULUI

Cunostintele Domeniile la
Detinatorii de
cheie sau utile care fac referire
cunostinte
organizatiei cunostintele
IDENTIFICAREA
CUNOSTINTELOR

 Fisiere

 Documente de uz intern

 Inregistrari

 Colectii de bune practici

 Resurse web

 Baze de date
Tacite <- interviuri
fata in fata
CLASIFICAREA
CUNOSTINTELOR
Explicite <- aplicarea
de chestionare
ACHIZIITIA
CUNOSTINTELOR

 Aplicarea statistica/probabilistica
a sabloanelor
 Mineritul datelor

 Invatarea automata

 Explorarea Big data


INSTRUMENTE
FOLOSITE IN
RATIONAMENTUL
AUTOMAT
 Prolog

 Lisp

 AIML

 Matlab

 JavaNNS

 CLIPS
ETAPE IN ELABORAREA SIST. BAZATE PE CUNOASTERE
1. Se incepe cu problema de afaceri și valoarea de afaceri
care urmează să fie livrate mai întâi.

2. Este identificata strategia de urmărit pentru a oferi


această valoare și de a aborda problema dpdv. al KM.

3. Este gasita infrastructura tehnică necesara pentru a


sprijini oamenii și procesele de afaceri.

4. Sistemul și procedurile automate sunt elaborate in


conformitate cu un management adecvat al schimbării și
o dezvoltare iterativă.

NB. Sistemul este necesar numai din punct de vedere al


oamenilor și al modelului de afaceri!
AVANTAJE

 Semantica extinsa

 Interogare bazata pe
backtracking
 Eficienta sporita

 Costuri reduse
MULTUMESC!
Sisteme expert
bazate pe AI
Radu Manea
Arhitectura generala
Etape
Caracteristici SE bazate pe IA
• Nu imita rationamentul uman;
• Orientate pe backward chaining;
• Invatarea automata bazata pe inductie este adesea folosita la
stabilirea regulilor prin formarea unui arbore de decizie plecand de la
un set de training.
Structura
neuronului
Formula de
calcul al
output-ului
∑wixi + bias = w1x1 + w2x2 + w3x3 +
bias
Arhitectura
retelei
Exemplu
Rețeaua neurală este formată
din celule care corespund
simptomelor din stratul de
intrare, bolile sunt prezentate în
stratul intermediar sau ascuns și
celule neurale (noduri) pentru
tratamentele definite în stratul
de ieșire.
Implementare (pseudocod)
if
duration (x, chronic) and
disorder (x, hepatocellular) and
age (x, <25) and
lab-results (x, Kayser–Fleischer rings)
then
diagnostic (x, Wilson’s disease)
Exemple de SE

DENDRAL, CRYSALIS, TQMSTUNE, CLONER, MOLGEN, SECS,


SPEX și SYNCHEM2 în chimie.

ACE, EURISKO, SOPHIE, PALLADIO, REDESIGN, TALIB și


CADHELP în electronică,

PUFF, SPE, VM, CADUCEOUS, BLUE BOX, ONCOCIN, GUIDON,


MYCIN, sunt exemple de sisteme expert medicale.
Multumesc!
LAB 1. TANAGRA - PREZENTARE
GENERALA
 TANAGRA este un open source software
pentru data mining ce poate fi folosit gratuit
pentru invatare si cercetare.
 A fost creat de Ricco Rakotomalala, profesor
la Universitatea din Lyon, Franta.
 Pentru instalarea acestui software se
selecteaza din pagina de web a soft-ului :
 http://eric.univ-
lyon2.fr/~ricco/tanagra/en/tanagra.html
 download si apoi Setup si run aplicatia
setup_tanagra.exe.
 cuprinde 3 parti:
 Diagrama (cu o structura de
arbore) care reprezinta pasii
analizei asupra bazei de
date.
 Operatorii sau componentele
(identificate in diagrama prin
noduri), ce reprezinta o
operatiile efectuate in baza
de date. Multimea
operatorilor posibili se
gaseste in fereastra de jos a
interfetei si este impartita in
categorii numite tab-uri:
Data visualization, Statistics,
Clustering, etc.
 Fisierul raport impartit in 2:
descrierea parametrilor si
rezultatele.
 TANAGRA poate lucra cu o singura baza de
date odata.
 Baza de date trebuie sa fie in formatul unui
fisier text care contine pe prima linie numele
atributelor bazei de date, separate de tab,
iar pe urmatoarele linii valorile atributelor
respective, câte o linie pentru fiecare
înregistrare.
 Fisierul text poate fi creat cu orice editor de
texte cu singura restrictie ca valorile
atributelor aceleasi inregistrari sa fie
separate de tab.
 Deschideti Excel
 Introduceti datele ca in exemplul de mai jos:
 Din meniul File selectati comanda “Save as…”.
Se va deschide o fereastră si la “Type of file”
alegeti « Text (Tab delimited) ». Introduceti
numele fisierului: weather.txt
 Click pe butonul Save. O fereastră dialog se va
deschide şi vă va avertiza că, în formatul text,
doar un singur sheet poate fi salvat în acelaşi
timp. Click OK.
 Datele sunt pregătite să fie importate în
TANAGRA. Inchideti programul Excel.
 Fisierul text poate fi creat cu orice editor de
texte cu singura restrictie ca valorile atributelor
 aceleasi inregistrari sa fie separate de tab.
 Alegeţi ”File/New...” din meniul principal.
 Introduceti un titlu pentru diagrama.
 Introduceti un nume pentru fisierul in care
veti lucra.
 Pentru Dataset alegeti fisierul pe cafre l-ati
creat “weather.txt”.
 Click OK.
O diagrama noua
s-a creat si puteti
vedea continutul
ei in fereatra din
dreapta:
 bdm este extensia pentru un fisier TANAGRA ce
contine, pe langa descrierea diagramei , si baza de
date importata (aici fisierul weather.txt). Astfel, se
va pierde legatura cu fisierul text original, care poate
fi modificat sau sters fara a avea vreo influenta
asupra fisierului TANAGRA.
 tdm este extensia pentru un fisier TANAGRA ce
contine, pe langa descrierea diagramei si o referinta
la baza de date importata (aici fisierul weather.txt).
Astfel daca se face o modificare in baza de date,
data urmatoare cand se va executa fisierul tdm, se
vor obtine rezultate diferite decat cele obtinute
initial. De asemenea, daca din greseala, ati sters
fisierul text, nu veti mai putea deschide diagrama
creata si stocata in fisierul tdm.
 Click pe tab-ul Data
visualization.
Selectati componenta
View Dataset si
adaugati-o sub nodul
“Dataset”
 Dublu –Click pe nodul
“View dataset” (sau
click dreapta si se
allege View) si baza
de date este afisata
in fereastra din
dreapta.
 In TANAGRA aproape toate operatiile cer
definirea atributelor care urmeaza sa fie
folosite si cum vor fi folosite. Acest lucru se
face folosind operatia Define status.
 Pentru aceasta, se alege tab-ul si de aici
operatorul Define status. Se selecteaza si se
pune sub nodul Dataset. Daca a fost pus
gresit, puteti sa il stergeti alegand din
meniul Diagram ->Delete component.
 Apoi click dreapta pe nodul “Define status”
si din meniul care apare se alege comanda
Parameters.
 In fereastra de dialog care apare puteti alege
ca variabile ce atribute sa fie de intrare,
care sa fie atributul tinta si care sa fie
ilustrative. Observati ca atributele continue
sunt marcate de un C albastru iar cele
discrete de un D verde. Click OK.
 Dublu-click pe Define status pentru a
executa si vizualiza operatia. In dreapta va
apare descrierea operatiei efectuate.
 Creati o baza de date in Excel
 Importati fisierul in Tanagra
 Creati o diagrama
 Vizualizati continutul bazei de date

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