Sunteți pe pagina 1din 20

MINISTERUL EDUCAIEI AL REPUBLICII MOLDOVA

UNIVERSITATEA TEHNIC A MOLDOVEI


FACULTATEA INFORMATIC, CALCULATOARE I
MICROELECTRONIC
CATEDRA INFORMATIC APLICAT

RAPORT
Lucrare de Laborator Nr.1

Disciplina: Clasificarea i Clasterizarea Informaiei


Tema: Crearea claselor de texte pentru clasificare. Naive Bayes.

A efectuat:

St.Gr.MAI151-M Ciala Iurie

A verificat:

Lector Superior

Chiinu 2016

Lazu Victoria

Sarcina lucrrii de laborator:


1.

De selectat 5 texte a cte 200 de cuvinte referitoare la 2 domenii diferite.


Text 1 - Hobitul de Tolkein
Hobbitul urmrete ncercarea casnicului hobbit Bilbo Baggins de a cpta o parte din

comoara pzit de dragonul Smaug. Cltoria lui Bilbo l poart din mprejurimile rurale
luminoase adnc n teritoriile ntunecate. Povestea este relatat sub forma unei cutri mprite
pe episoade, majoritatea capitolelor introducnd o nou creatur sau un tip specific de creatur.
Povestea ncepe din ziua n care Bilbo Baggins are parte de o vizit neateptat din partea
vrjitoului Gandalf i unui grup de treisprezece pitici condui de Thorin (Scut-de-Stejar),
compus din Balin, Glin, Bifur, Bofur, Bombur, Dwalin, Ori, Dori, Nori, in, Kli i Fli. Piticii
au nevoie de un membru suplimentar n grupul lor, un ho expert, pentru a-i ndeplini planul: s
cucereasc Muntele Singuratic, s-l nfrng pe balaurul Smaug, s pun mna pe comorile sale
i s recupereze regatul piticilor. Gandalf l-a recomandat pe Bilbo pentru aceast misiune, iar el
accept s-i nsoeasc n aventur.
Pierdut n tunelele gnomilor din Munii Ceoi, el d peste un inel misterios (Unicul Inel
pe care l-a gsit Dagol, hobbitul ucis de Smagol, adic Gollum) i l ntlnete pe Gollum, care
l provoac la un joc de ghicitori cu miz mortal. Cu ajutorul inelului, care l face invizibil,
Bilbo scap i se altur piticilor, crescnd n ochii lor. Acest pasaj face parte din contextul
Stpnului inelelor.
Dup alte ntmplri, Bilbo i piticii reuesc s ia comoara din Muntee Singuratic. Bilbo
accept doar o mic parte din ceea ce i revenea din comoar, considernd c nu are nevoie de
mai mult, dar tot se ntoarce acas foarte bogat.
Cuvinte: 256

Text 2 - Fria Inelului de Tolkein


Cartea I din Fria inelului ncepe n Comitat, avndu-l ca personaj principal pe Bilbo, care
i serbeaz cea de-a 111-a aniversare, aproximativ cu aizeci de ani dup terminarea Hobbitului.
Acesta dispare folosind inelul su magic. ncepnd o nou aventur, Bilbo i ncredineaz
multe dintre bunurile sale, incluznd inelul, vrului i motenitorului su adoptiv Frodo Baggins.
Dup 17 ani de investigaii, bunul su prieten Gandalf cel Sur confirm c acest inel este de fapt
Inelul, instrumentul puterii lui Sauron, pe care Lordul ntunecat l-a cutat de-a lungul celui deal Treilea Ev, i care a corupt multe persoane n dorina sa de a ajunge la stpnul su. Ceea ce
nu tie Gandalf este c Gollum a cltorit n Mordor, unde a fost capturat i pu inele informa ii
pe care le avea despre Inel le-a divulgat prin tortur.
Sauron i trimite cei mai de temut supui ai si, Nazglii deghizai n clrei negri,
pentru a cuta Inelul n Comitat. Frodo, purttorul inelului, scap cu ajutorul grdinarului su
loial Samwise Gamgee i a trei prieteni apropiai Meriadoc Merry Brandybuck, Peregrin
Pippin Took i Fredegar Fatty Bolger. n timp ce Fatty acioneaz drept momeal pentru
Clreii Negri, Frodo i ceilali decid s duc Inelul la elfii din Vlceaua Despicat. Ei sunt
ajutai de ctre Tom Bombadil i un brbat numit Pas Mare, care mai trziu se dovede te a fi
Aragorn, motenitorul tronului din Gondor i Arnor, dou regate create de ctre nmenoreenii
exilai. Aragorn i conduce pe hobbii la Vlceaua Despicat, la cererea lui Gandalf. ntre timp,
Frodo este grav rnit de ctre Clreii Negri, cnd se aflau pe dealul supranumit ancul Vremii.
Cu ajutorul lordului elf Glorfindel, Frodo reuete s ajung la Vlceaua Despicat, trecnd rul
Bruinen.
Cuvinte: 282

Text 3 Cele 2 turnuri de Tolkein


n nceputul crii, Fria este atacat de ctre orcii lui Saruman, n lupt fiind ucis
Boromir, iar Merry i Pippin sunt rpii de ctre orci (Saruman a hotrt s caute inelul pentru el
i i-a trimis pe acetia pentru a-i aduce hobbiii n via). Aragorn, Legolas i Gimli pornesc n
cutarea hobbiilor. Cei trei l ntlnesc pe Gandalf, care s-a rentors sub numele de Gandalf cel
Alb. El a nvins Balrogul cu preul vieii sale, dar s-a ntors pe Pmntul de Mijloc din cauz c
misiunea sa nu a fost ndeplinit nc. Cei patru ajut regatul Rohan sa nving trupele lui
Saruman, n lupta de la Cetatea Cornului. n acest timp, Merry i Pippin, elibera i din captivitate,
i ajut pe eni, fpturi asemntoare copacilor dar care posed abiliti motorii, s distrug
fortreaa lui Saruman, Isengard. Cele dou grupuri se ntlnesc dup ce ambele lupte se ncheie.
Saruman refuz s renune la ideile sale nebuneti i este izgonit de ctre Gandalf din Ordinul
Vrjitorilor, lundu-i o mare parte din puterea magic.
Mai departe se descrie cltoria lui Frodo i Sam spre Muntele Osndei. Ace tia reu esc
s l captureze pe Gollum i s l conving s i conduc pe drumul spre Poarta Neagr, realiznd
dup aceea c este impenetrabil. Gollum le sugereaz apoi un drum secret ctre Mordor, prin
nfricotoarea vale Minas Morgul. n timp ce cltoresc prin aceast zon, ei sunt capturai de
ctre o mic armat a Gondorului, condus de ctre fratele lui Boromir, Faramir, dar ei l
conving pe acesta c inelul trebuie s fie distrus cu orice pre. La finalul volumului, Gollum l
trdeaz pe Frodo i l conduce la Shelob, un pianjen uria, spernd c odat ce acesta se va
ospta din hobbit el va putea lua inelul. Shelob l neap pe Frodo i l paralizeaz, dar Sam se
lupt cu pianjenul i l nvinge.
Cuvinte: 308

Text 4 - Inteligena Artificial part 1Wikipedia


Inteligena artificial este un termen tehnic provenit din limba englez: Artificial
Intelligence, prescurtat AI, care desemneaz un domeniu de cercetare n cadrul informaticii. n
vorbirea curent este un produs rezultat n urma desfurrii acestei activiti.
Definiia cea mai acceptat a inteligenei artificiale a fost dat de John McCarthy n 1955:
o main care se comport ntr-un mod care ar putea fi considerat inteligent, dac ar fi vorba
de un om. Mai amplu, inteligena artificial vizeaz studiul i designul agenilor inteligeni,
sisteme care percep mediul nconjurtor i maximizeaz ansele propiului succes prin
comportament.
O trstur des ntlnit a inteligenei artificiale este c sistemul respectiv este capabil s
nvee, cu sau chiar fr ajutoare externe, cu scopul de a se mbunti permanent.
Problemele centrale ale cercetrii n AI sunt raiunea, cunoaterea, planificarea, procesul
de nvare, prelucrarea limbajului natural (comunicare), percepia, precum i manipularea
obiectelor fizice.
n informatic, n general, inteligena artificial e mprit n dou categorii:
Inteligen artificial puternic (strong AI): prin aceasta se nelege o inteligen artificial,
de obicei bazat pe un computer, care chiar poate "gndi" i este "contient de sine".
inteligen artificial slab (weak AI): o inteligen artificial care nu pretinde c poate
gndi, putnd ns rezolva o anumit clas de probleme ntr-un mod mai mult sau mai puin
"inteligent", de exemplu cu ajutorul unui set de reguli.
Progresul n crearea unei inteligene artificiale puternice este mic. Aproape toate simulrile
inteligenei se bazeaz pe reguli i algoritmi obinuii, existnd un progres doar n domeniul
celei slabe (de exemplu la recunoaterea verbal i a scrisului, la traducerea automat dintr-o
limb n alta sau i la jocul de ah).
Cuvinte: 268

Text 5 - Inteligena Artificial part 2 Wikipedia


La nceput, crearea i cercetarea inteligenei artificiale s-a desfurat pe domeniul
psihologiei, punndu-se accent pe inteligena lingvistic, ca de exemplu la testul Turing. Acest
test const ntr-o conversaie n limbaj uman natural cu o main (computer) care a fost
programat special pentru acest test. Exist un juriu uman care converseaz cu acest computer,
dar i cu un om, prin cte un canal pur text (fr ca ei s se vad sau s se aud). n cazul n care
juriul nu poate s-i dea seama care este computerul i care omul, atunci inteligena artificial
(programul calculatorului) a trecut testul.
Turing a prezis n 1950 c pn n anul 2000 vor exista maini (calculatoare) cu 109
bytes (1 GB) de memorie care vor putea "pcli" 30% din juriile umane ntr-un test de 5 minute.
ns, n timp ce pe de-o parte tehnologia chiar a depit previziunile lui Turing, inteligena
artificial este nc departe de a fi realizat.
Noile previziuni ale experilor se bazeaz pe aa-numita legea lui Moore ("numrul de
tranzistori pe un circuit integrat se va dubla la fiecare 18 luni, prin urmare i puterea de calcul"),
"lege" care s-a ndeplinit pentru ultimii 30 de ani destul de bine, i poate c va mai fi valabil
nc 5-10 ani. Pentru viitor se sper c noile tehnologii (cuantice, optice, holografice,
nanotehnologiile .a.) vor permite meninerea creterii exponeniale, astfel c n maximum 20 de
ani computerele s depeasc puterea de procesare a creierului uman (vezi: Singularitate
tehnologic). Unul dintre principalii susintori ai acestei ipoteze, pe lng Vernor Vinge, este
cunoscutul expert Ray Kurzweil cu a sa celebr lege a ntoarcerilor accelerate. ns aceste
consideraii sunt n general de natur cantitativ, neglijnd din pcate nenumratele faete
calitative ale inteligenei umane naturale.
Cuvinte: 287

2.

De calculat frecvena cuvintelor n texte, de selectat cuvintele cheie i de calculat


greutatea/ponderea lor.
Frecvena cuvintelor:
Text 1

1 cuvant
din
de
bilbo
n
pe
i
un
parte
s
care
l
o
are
creatur
smaug
hobbitul
baggins
gandalf
povestea
piticii
nevoie
lor
pentru
comoara
singuratic
piticilor
l-a
el
accept
inel
cu
face
se
2 cuvinte
parte din
bilbo baggins
nevoie de
care l

aparitii

frecventa

10
10
7
6
6
6
5
4
4
4
4
4
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2

3.91%
3.91%
2.73%
2.34%
2.34%
2.34%
1.95%
1.56%
1.56%
1.56%
1.56%
1.56%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%
0.78%

3
2
2
2

1.17%
0.78%
0.78%
0.78%

Text 2
1 cuvant
i
de
a
n
la
pe
care
inelul
su
frodo
gandalf
despicat
ctre
vlceaua
negri
este
cu
din
de-a
multe
c
inel
i
lui
dup
ani
ce
mai
inelului
pentru
ajutorul
timp
clreii
s
i
bilbo
comitat
se
aragorn
2 cuvinte
de ctre
pe care

aparitii

frecventa

8
8
7
6
5
5
5
5
5
5
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2

2.84%
2.84%
2.48%
2.13%
1.77%
1.77%
1.77%
1.77%
1.77%
1.77%
1.06%
1.06%
1.06%
1.06%
1.06%
1.06%
1.06%
1.06%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%
0.71%

3
2

1.06%
0.71%

cu ajutorul
clreii negri,
la vlceaua
vlceaua despicat,
3 cuvinte
la vlceaua despicat,

aparitii
2
2
2
2

frecventa
0.71%
0.71%
0.71%
0.71%

0.71%

Text 3

1 cuvant
i
l
pe
de
s
n
ctre
lui
din
se
a
saruman
dar
c
la
gollum
inelul
gandalf
este
el
ce
frodo
cu
care
boromir
merry
sale
pentru
va
pippin
sa
ajut
acetia
timp
i
cei

aparitii

frecventa

10
9
9
8
7
7
6
5
5
5
4
4
4
4
4
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2

3.25%
2.92%
2.92%
2.6%
2.27%
2.27%
1.95%
1.62%
1.62%
1.62%
1.3%
1.3%
1.3%
1.3%
1.3%
0.97%
0.97%
0.97%
0.97%
0.97%
0.97%
0.97%
0.97%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%

dup
sunt
o
ntlnesc
sam
spre
lupt
un
prin
ei
acesta
shelob
s-a
2 cuvinte
de ctre
lui saruman,
frodo i
i l
saruman n
merry i
s l
pe frodo
3 cuvinte
lui saruman, n
pe frodo i
frodo i l
4 cuvinte
pe frodo i l

aparitii
2
2
2
2
2
2
2
2
2
2
2
2
2

frecventa
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%
0.65%

5
3
3
3
2
2
2
2

1.62%
0.97%
0.97%
0.97%
0.65%
0.65%
0.65%
0.65%

2
2
2

0.65%
0.65%
0.65%

0.65%

Text 4
aparitii

frecventa

11

4.1%

de

11

4.1%

artificial

2.61%

2.61%

care

2.24%

este

2.24%

un

2.24%

1.87%

inteligen

1.49%

1 cuvant

10

aparitii

frecventa

mai

1.49%

se

1.49%

1.49%

inteligena

1.12%

sau

1.12%

cu

1.12%

inteligenei

1.12%

artificiale

1.12%

la

1.12%

ai

0.75%

prin

0.75%

0.75%

mod

0.75%

ntr-un

0.75%

chiar

0.75%

fi

0.75%

ai

0.75%

pe

0.75%

poate

0.75%

exemplu

0.75%

reguli

0.75%

ar

0.75%

inteligena artificial

1.12%

inteligen artificial

1.12%

este un

0.75%

a inteligenei

0.75%

inteligenei artificiale

0.75%

ntr-un mod

0.75%

o inteligen

0.75%

0.75%

2 cuvinte

3 cuvinte
a inteligenei artificiale

Text 5
aparitii

frecventa

11

3.83%

1 cuvant
de

11

aparitii

frecventa

2.79%

2.79%

care

2.44%

pe

2.09%

1.74%

cu

1.74%

se

1.74%

1.39%

un

1.39%

la

1.05%

test

1.05%

inteligena

1.05%

uman

1.05%

este

1.05%

ani

1.05%

vor

1.05%

pentru

1.05%

turing

1.05%

acest

1.05%

1.05%

ns

0.7%

testul

0.7%

ca

0.7%

artificial

0.7%

s-a

0.7%

inteligenei

0.7%

din

0.7%

umane

0.7%

poate

0.7%

lui

0.7%

nc

0.7%

fi

0.7%

noile

0.7%

ale

0.7%

va

0.7%

puterea

0.7%

prin

0.7%

2 cuvinte

12

aparitii

frecventa

s se

0.7%

inteligena artificial

0.7%

puterea de

0.7%

de ani

0.7%

13

Cuvinte cheie:
Text 1
comoar
dragon
povestea
creatur
vrjitor
pitic
balaur
Aventur
gnom

Text 4
4
1
2
2
1
3
1
1
1

tehnic
informatic
main
inteligent
agent
sistem
raiune
cunoatere
prelucrare
limbaj
natural
comunicare
percepie
computer
gndi
regul
algoritm
recunoater
verbal
automat

0,015625
0,00390625
0,0078125
0,0078125
0,00390625
0,01171875
0,00390625
0,00390625
0,00390625

Text 2
magic
aventur
putere
lord
corupt
elf
tron
regat
hobbit

1
1
1
2
1
2
1
1
1

0,003546
0,003546
0,003546
0,00709
0,003546
0,00709
0,003546
0,003546

1
1
1
2
1
2
1
1
1
1
1
1
1
1
2
2
1
1
1
1

0,003546

0,003731
0,003731
0,003731
0,007462
0,003731
0,007462
0,003731
0,003731
0,003731
0,003731
0,003731
0,003731
0,003731
0,003731
0,007462
0,007462
0,003731
0,003731
0,003731
0,003731

Text 5
domeniu
lingvistic
limbaj
natural
main
computer
converseaz
program
calculator
tehnologie
expert
lege
inteligen

Text 3
orc
hobbit
regat
ent
putere
magic
armat
pianjen

2
3
1
1
1
1
1
2

0,00649
0,00974
0,003246
0,003246
0,003246
0,003246
0,003246
0,00649

14

1
1
1
2
1
4
1
1
1
2
1
1
1

0,003484
0,003484
0,003484
0,006968
0,003484
0,013937
0,003484
0,003484
0,003484
0,006968
0,003484
0,003484
0,003484

3.

De creat clasele de texte.

Text: Fantastic.
1) Poveste, poveste, dragon, creatur, creatur, balaur, pitic, comoar, comoar, comoar,
comoar ;
2) Magic, aventur, putere, lord, lord, corrupt, elf, elf, tron, regat;
3) Orc, orc, regat, ent, putere, magic, pianjen, pianjen;
Text: inteligen artificial .
4) Main, inteligent, inteligent, regul, regul, agent, sistem, sistem, limbaj, natural,
calculator
5) Limbaj, natural, natural, computer, computer, computer, computer, calculator, main
4.

De elaborat un program care determin din ce domeniu fac parte cuvintele introduse
de la tastatur i calculeaz numrul de apariie a acestor cuvinte n fiecare text.

Textul utilizat pentru testare:


Mutarea aceasta a Google nu i-a surprins atat de tare pe apropiatii fondatorilor companiei,
Laryy Page si Sergey Brin, care sunt de multa vreme fani ai lui Kurzweil. Specialistul a venit cu
teoria "singularitatii tehnologice" si pronosticheaza ca, in 2029, calculatoarele vor fi la fel de
inteligente ca oamenii.
Futurologul american sustine ca, daca tehnologia se va dezvolta in acelasi ritm de acum,
in 2029 masinile vor fi la fel de inteligente ca oamenii. El isi bazeaza aceasta predictie pe
studiile pe care le-a facut in ultimii 30 de ani.
Pana atunci, insa, vom folosi tehnologia in moduri cat mai diferite si vom ajunge sa ne
implantam circuite pentru a fi mai inteligenti sau pentru a putea retine o cantitate imensa de
informatii. Teoretic, am fi capabili sa raspundem instant la orice intrebare, de exemplu, din
istoria sau geografia lumii, iar invatatul de lucruri noi s-ar face exact ca descarcarea unui fisier
de pe Internet.
Putem spune c la nceputul anilor 2000 Inteligena Artificial prea o poveste ns acum
ea prinde aripi din ce n ce mai tare.
Clasa obinut dup parcurgerea textului:
calculator, inteligent, tehnologie, maina, poveste

15

Depistarea tematicii utilizind metoda Nave Bayes:


P(fantastica) = 3/5
P(inteligenta art.) = 2/5
P( calculator | fantastic ) = (0+1) / (29+19) = 1/48
P( inteligent | fantastic ) = (0+1) / (29+19) = 1/48
P( tehnologie | fantastic ) = (0+1) / (29+19) = 1/48
P( main | fantastic ) = (0+1) / (29+19) = 1/48
P( poveste | fantastic ) = (1+1) / (29+19) = 2/48=1/24

P( calculator | inteligenta art.) = (2+1) / (20+9) = 3/29


P( inteligent | inteligenta art. ) = (2+1) / (20+9) = 3/29
P( tehnologie | inteligenta art. ) = (0+1) / (20+9) = 1/29
P( main | inteligenta art. ) = (2+1) / (20+9) = 3/29
P( poveste | inteligenta art. ) = (1+1) / (20+9) = 2/29
P( fantastic | clasa )

= 3/5 * 1/48 * 1/48 * 1/48 *1/48* 1/24 =

= (3*1*1*1*1*1) / (5*48*48*48*48*24) =
= 0.00000000409
P( inteligena art. | clasa ) = 2/5 * 3/29 * 3/29 * 1/29 * 3/29*2/29 =
= (2*3*3*1*3*2) / (5*29*29*29*29*29) =
= 0.0000001053
Textul este de tip: inteligen artificial.

16

Text: Fantastic.
1) Poveste, poveste, dragon, creatur, creatur, balaur, pitic, comoar, comoar, comoar,
comoar ;
2) Magic, aventur, putere, lord, lord, corrupt, elf, elf, tron, regat;
3) Orc, orc, regat, ent, putere, magic, pianjen, pianjen;
Text: inteligen artificial .
4) Main, inteligent, inteligent, regul, regul, agent, sistem, sistem, limbaj, natural,
calculator
5) Limbaj, natural, natural, computer, computer, computer, computer, calculator, main
Rezultate:
package de.daslaboratorium.machinelearning.bayes.example;
import java.util.Arrays;
import
de.daslaboratorium.machinelearning.bayes.BayesClassifier;
import de.daslaboratorium.machinelearning.bayes.Classifier;
DataTable table = new DataTable();
Classifier classifier = new Classifier();
classifier.TrainClassifier(table);
//output would be transgender.
Console.WriteLine(classifier.Classify(new double[] { 4,
150, 12 }));
Console.Read();
public void TrainClassifier(DataTable table)
{
dataSet.Tables.Add(table);
//table
DataTable GaussianDistribution =
dataSet.Tables.Add("Gaussian");
GaussianDistribution.Columns.Add(table.Columns[0].ColumnNam
e);
//columns
for (int i = 1; i < table.Columns.Count; i++)
{
GaussianDistribution.Columns.Add(table.Columns[i].ColumnNam
e + "Mean");
17

GaussianDistribution.Columns.Add(table.Columns[i].ColumnNam
e + "Variance");
}
//calc data
var results = (from myRow in table.AsEnumerable()
group myRow by
myRow.Field<string>(table.Columns[0].ColumnName) into g
select new { Name = g.Key, Count =
g.Count() }).ToList();
for (int j = 0; j < results.Count; j++)
{
DataRow row = GaussianDistribution.Rows.Add();
row[0] = results[j].Name;
int a = 1;
for (int i = 1; i < table.Columns.Count; i++)
{
row[a] = Helper.Mean(SelectRows(table, i,
string.Format("{0} = '{1}'",
table.Columns[0].ColumnName, results[j].Name)));
row[++a] = Helper.Variance(SelectRows(table, i,
string.Format("{0} = '{1}'",
table.Columns[0].ColumnName,
results[j].Name)));
a++;
}
}
}
public string Classify(double[] obj)
{
Dictionary<string,> score = new Dictionary<string,>();
var results = (from myRow in
dataSet.Tables[0].AsEnumerable()
group myRow by myRow.Field<string>(
dataSet.Tables[0].Columns[0].ColumnName) into g
select new { Name = g.Key, Count =
g.Count() }).ToList();
for (int i = 0; i < results.Count; i++)
{
List<double> subScoreList = new List<double>();
int a = 1, b = 1;
for (int k = 1; k <
dataSet.Tables["Gaussian"].Columns.Count; k = k + 2)
{
18

double mean =
Convert.ToDouble(dataSet.Tables["Gaussian"].Rows[i][a]);
double variance =
Convert.ToDouble(dataSet.Tables["Gaussian"].Rows[i][++a]);
double result = Helper.NormalDist(obj[b - 1],
mean, Helper.SquareRoot(variance));
subScoreList.Add(result);
a++; b++;
}
double finalScore = 0;
for (int z = 0; z < subScoreList.Count; z++)
{
if (finalScore == 0)
{
finalScore = subScoreList[z];
continue;
}
finalScore = finalScore * subScoreList[z];
}
score.Add(results[i].Name, finalScore * 0.5);
}
double maxOne = score.Max(c => c.Value);
var name = (from c in score
where c.Value == maxOne
select c.Key).First();
return name;
}

testclass.txt conine [calculator, inteligent, tehnologie, ma ina, poveste]


In file textsclasses.txt
Clasa [fantasy] conine cuvintele [poveste poveste dragon creatur creatur balaur pitic comoar comoar
comoar comoar]
Clasa [fantasy] conine cuvintele [magic aventur putere lord lord corrupt elf elf tron regat]
Clasa [fantasy] conine cuvintele [orc orc regat ent putere magic pianjen pianjen]
Clasa [AI] conine cuvintele [main inteligent inteligent regul regul agent sistem sistem limbaj natural
calculator]
Clasa [AI] conine cuvintele [limbaj natural natural computer computer computer computer calculator
main]
Am obinut 5 clase din 5 texte:

19

3 texte de fantastic P(fantasy)= 3 / 5 = 0.6


2 texte de Inteligen Artificial P(AI)= 2 / 5 = 0.4
S-au gsit valorile claselor:
P(fatasy) = 0.4, P(AI) = 0.6
Probabilitile condiionate de clase:
P( calculator | fantasy ) = (0+1) / (29+19) = 0,02083
P( inteligent | fantasy ) = (0+1) / (29+19) = 0,02083
P( tehnologie | fantasy ) = (0+1) / (29+19) = 0,02083
P( main | fantasy ) = (0+1) / (29+19) = 0,02083
P( poveste | fantasy ) = (1+1) / (29+19) = 0,0416
P( calculator | AI ) = (2+1) / (20+9) = 0,10344
P( inteligent | AI ) = (2+1) / (20+9) = 0,10344
P( tehnologie | AI ) = (0+1) / (20+9) = 0,03448
P( main | AI ) = (2+1) / (20+9) = 0,10344
P( poveste | AI ) = (1+1) / (20+9) = 0,06896
Se alege clasa!
P( fantastic | clasa )

= 0,6 * 0,02083 * 0,02083 * 0,02083 * 0,02083 * 0,0416 = 0.00000000409

P( inteligena art. | clasa ) = 0,4 * 0,10344 * 0,10344 * 0,03448 * 0,10344 * 0,06896 = 0.0000001053
0.00000000409 < 0.0000001053
The chosen class is: fantasy!

CONCLUZII
n procesul realizrii lucrrii de laborator nr.1 cu tema Crearea claselor de texte pentru
clasificare. Naive Bayes am realizat mai muli pai. n primul rnd am selectat 5 texte care fac
parte din 2 domenii diferite, domeniul fantasticii i domeniul inteligenii artificial. Apoi,
utiliznd aplicaia Masterca, am depistat care este frecvena fecrui cuvnd n fiecare text. Am
selectat cuvintele cheie care ajut la depistarea domeniului i am calculat ponderea lor.

20

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