implementacija i evaluacija algoritama ma sinskog u cenja...
Post on 27-Sep-2020
2 Views
Preview:
TRANSCRIPT
Implementacija i evaluacija algoritama masinskog ucenjaza filtriranje nezeljene elektronske poste
Aleksandar Nedeljkovic
Matematicki fakultet
mi09036@alas.matf.bg.ac.rs
Odbrana master rada, 4.3.2016.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 1 / 51
Pregled
1 UvodElektronska postaSpam
2 KlasifikacijaMere kvaliteta i tehnike evaluacije klasifikatora
3 Algoritmi klasifikacijeBajesov klasifikatorkNNSVMPerceptron
4 Podaci
5 Rezultati
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 2 / 51
Elektronska posta
Elektronska posta
Elektronska posta je mrezni servis koji omogucava slanje i primanje porukaraznovrsnog sadrzaja.
Oktobar 1971.
Rej Tomlinson
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 3 / 51
Elektronska posta
Elektronska posta
Elektronska posta je mrezni servis koji omogucava slanje i primanje porukaraznovrsnog sadrzaja.
Oktobar 1971.
Rej Tomlinson
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 3 / 51
Elektronska posta
Elektronska posta
Elektronska posta je mrezni servis koji omogucava slanje i primanje porukaraznovrsnog sadrzaja.
Oktobar 1971.
Rej Tomlinson
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 3 / 51
Zaglavlje elektronske poste
Zaglavlje nosi sledece podatke:
adresu i ime posaljioca
adresu primaoca
adresu servera preko kojeg je poruka poslata kao i servera koji suprosledivali poruku na njenom putu do odredista
datum slanja
ime programa koji je koriscen za slanje poruke
prioritet
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 4 / 51
Zaglavlje elektronske poste
Zaglavlje nosi sledece podatke:
adresu i ime posaljioca
adresu primaoca
adresu servera preko kojeg je poruka poslata kao i servera koji suprosledivali poruku na njenom putu do odredista
datum slanja
ime programa koji je koriscen za slanje poruke
prioritet
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 4 / 51
Zaglavlje elektronske poste
Zaglavlje nosi sledece podatke:
adresu i ime posaljioca
adresu primaoca
adresu servera preko kojeg je poruka poslata kao i servera koji suprosledivali poruku na njenom putu do odredista
datum slanja
ime programa koji je koriscen za slanje poruke
prioritet
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 4 / 51
Zaglavlje elektronske poste
Zaglavlje nosi sledece podatke:
adresu i ime posaljioca
adresu primaoca
adresu servera preko kojeg je poruka poslata kao i servera koji suprosledivali poruku na njenom putu do odredista
datum slanja
ime programa koji je koriscen za slanje poruke
prioritet
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 4 / 51
Zaglavlje elektronske poste
Zaglavlje nosi sledece podatke:
adresu i ime posaljioca
adresu primaoca
adresu servera preko kojeg je poruka poslata kao i servera koji suprosledivali poruku na njenom putu do odredista
datum slanja
ime programa koji je koriscen za slanje poruke
prioritet
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 4 / 51
Zaglavlje elektronske poste
Zaglavlje nosi sledece podatke:
adresu i ime posaljioca
adresu primaoca
adresu servera preko kojeg je poruka poslata kao i servera koji suprosledivali poruku na njenom putu do odredista
datum slanja
ime programa koji je koriscen za slanje poruke
prioritet
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 4 / 51
Zaglavlje elektronske poste
Zaglavlje nosi sledece podatke:
adresu i ime posaljioca
adresu primaoca
adresu servera preko kojeg je poruka poslata kao i servera koji suprosledivali poruku na njenom putu do odredista
datum slanja
ime programa koji je koriscen za slanje poruke
prioritet
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 4 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Spam
Definicija spama
Spam predstavlja zloupotrebu elektronskih sistema u svrhu slanjanezeljenih masovnih poruka bez ikakvog kriterijuma.
Vrste spama:
cet spam
veb spam
SMS spam
forum spam
televizijski spam
e-mail spam
...
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 5 / 51
Figure: Primer koji ilustruje cet spam
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 6 / 51
Figure: Primeri koji ilustruju SMS spam
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 7 / 51
Figure: Primer koji ilustruje e-mail spam
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 8 / 51
Zanimljivost
Danijel Balsam iz Amerike je gospodin koji je toliko bio iznerviran zbogstalnih spam mejlova da je dao otkaz, upisao pravo, dobio diplomu i dodanasnjeg dana je zaradio preko milion dolara tuzeci ljude i kompanije kojisu odgovorni za te reklame.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 9 / 51
2011. 2012. 2013. 2014. 2015.
Prosecan broj primljenih i poslatih e-mailovajednog korisnika po danu
105 110 115 120 125
Prosecan broj primljenih e-mailova 72 75 78 81 84
Prosecan broj legitimnih e-mailova 58 62 65 68 71
Prosecan broj nezeljene poste 14 13 13 13 13
Prosecan broj poslatih e-mailova 33 35 37 39 41
Table: Korporativna primljena i poslata e-posta jednog korisnika po danu uperiodu od 2011. do 2015.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 10 / 51
Proizvodi 25%
Finansijski 20%
Za odrasle 19%
Prevara 9%
Zdravlje 7%
Internet 7%
Opustanje 6%
Duhovni 4%
Ostali 3%
Table: Raspodela spam poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 11 / 51
Saveti za zastitu od nezeljenih poruka
1 Ne otvarajte nezeljene poruke, izbrisite ih bez prethodnog otvaranja.Otvaranjem poruke obavestavate posiljaoca da vasa e-mail adresapostoji.
2 Nikada ne odgovarajte na spam poruke bez obzira sta se od vas trazijer u suprotnom na ovaj nacin obavestavate posiljaoca o validnostivase e-mail adrese.
3 Ne kupujte proizvode koji se reklamiraju putem spam poruka bezobzira koliko povoljni bili. Ukoliko kupite proizvod ocekujte jos visereklamnih poruka u vasem postanskom sanducetu.
4 Ne prosledujte spam poruke, dovoljno je sto ste dobili spam, nemorate i sami da postanete spamer. Ukoliko nastavite saprosledivanjem vasa adresa ce stici i kod ostalih spamera, zakljucitesami, dobijacete jos vise nezeljenih poruka. Nemojte prosledivati spamporuke, jer postoji opasnost da je poruka sadrzala virus, samim tim ivi postajete posiljalac virusa.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 12 / 51
Saveti za zastitu od nezeljenih poruka
1 Ne otvarajte nezeljene poruke, izbrisite ih bez prethodnog otvaranja.Otvaranjem poruke obavestavate posiljaoca da vasa e-mail adresapostoji.
2 Nikada ne odgovarajte na spam poruke bez obzira sta se od vas trazijer u suprotnom na ovaj nacin obavestavate posiljaoca o validnostivase e-mail adrese.
3 Ne kupujte proizvode koji se reklamiraju putem spam poruka bezobzira koliko povoljni bili. Ukoliko kupite proizvod ocekujte jos visereklamnih poruka u vasem postanskom sanducetu.
4 Ne prosledujte spam poruke, dovoljno je sto ste dobili spam, nemorate i sami da postanete spamer. Ukoliko nastavite saprosledivanjem vasa adresa ce stici i kod ostalih spamera, zakljucitesami, dobijacete jos vise nezeljenih poruka. Nemojte prosledivati spamporuke, jer postoji opasnost da je poruka sadrzala virus, samim tim ivi postajete posiljalac virusa.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 12 / 51
Saveti za zastitu od nezeljenih poruka
1 Ne otvarajte nezeljene poruke, izbrisite ih bez prethodnog otvaranja.Otvaranjem poruke obavestavate posiljaoca da vasa e-mail adresapostoji.
2 Nikada ne odgovarajte na spam poruke bez obzira sta se od vas trazijer u suprotnom na ovaj nacin obavestavate posiljaoca o validnostivase e-mail adrese.
3 Ne kupujte proizvode koji se reklamiraju putem spam poruka bezobzira koliko povoljni bili. Ukoliko kupite proizvod ocekujte jos visereklamnih poruka u vasem postanskom sanducetu.
4 Ne prosledujte spam poruke, dovoljno je sto ste dobili spam, nemorate i sami da postanete spamer. Ukoliko nastavite saprosledivanjem vasa adresa ce stici i kod ostalih spamera, zakljucitesami, dobijacete jos vise nezeljenih poruka. Nemojte prosledivati spamporuke, jer postoji opasnost da je poruka sadrzala virus, samim tim ivi postajete posiljalac virusa.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 12 / 51
Saveti za zastitu od nezeljenih poruka
1 Ne otvarajte nezeljene poruke, izbrisite ih bez prethodnog otvaranja.Otvaranjem poruke obavestavate posiljaoca da vasa e-mail adresapostoji.
2 Nikada ne odgovarajte na spam poruke bez obzira sta se od vas trazijer u suprotnom na ovaj nacin obavestavate posiljaoca o validnostivase e-mail adrese.
3 Ne kupujte proizvode koji se reklamiraju putem spam poruka bezobzira koliko povoljni bili. Ukoliko kupite proizvod ocekujte jos visereklamnih poruka u vasem postanskom sanducetu.
4 Ne prosledujte spam poruke, dovoljno je sto ste dobili spam, nemorate i sami da postanete spamer. Ukoliko nastavite saprosledivanjem vasa adresa ce stici i kod ostalih spamera, zakljucitesami, dobijacete jos vise nezeljenih poruka. Nemojte prosledivati spamporuke, jer postoji opasnost da je poruka sadrzala virus, samim tim ivi postajete posiljalac virusa.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 12 / 51
Saveti za zastitu od nezeljenih poruka
1 Ne otvarajte nezeljene poruke, izbrisite ih bez prethodnog otvaranja.Otvaranjem poruke obavestavate posiljaoca da vasa e-mail adresapostoji.
2 Nikada ne odgovarajte na spam poruke bez obzira sta se od vas trazijer u suprotnom na ovaj nacin obavestavate posiljaoca o validnostivase e-mail adrese.
3 Ne kupujte proizvode koji se reklamiraju putem spam poruka bezobzira koliko povoljni bili. Ukoliko kupite proizvod ocekujte jos visereklamnih poruka u vasem postanskom sanducetu.
4 Ne prosledujte spam poruke, dovoljno je sto ste dobili spam, nemorate i sami da postanete spamer. Ukoliko nastavite saprosledivanjem vasa adresa ce stici i kod ostalih spamera, zakljucitesami, dobijacete jos vise nezeljenih poruka. Nemojte prosledivati spamporuke, jer postoji opasnost da je poruka sadrzala virus, samim tim ivi postajete posiljalac virusa.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 12 / 51
Klasifikacija
Definicija klasifikacije
Klasifikacija je proces ucenja ciljne funkcije f koja predefinisane klase ypridruzuje vektoru vrednosti atributa x .
Ulazni podatak u proces klasifikacije je skup slogova koji se nazivajuinstance.Slogovi su oblika (x , y) gde je x vektor vrednosti nekih atributa a, yatribut koji odreduje oznaku klase.Ulazni podaci se dele na podatke za ucenje i testiranje.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 13 / 51
Masinsko ucenje
Na osnovu trening podataka izvode se klasifikaciona pravila za klasifikator.Na primer:
Trening primeri
,,Kupovina odmah” −→ SPAM,,Kupovina proizvoda” −→ SPAM,,Dobra kupovina” −→ SPAM,,Dobra plata” −→ LEGITIMNA,,Dobra vecera” −→ LEGITIMNA
Izvedeno klasifikaciono pravilo
,,Kupovina” −→ SPAM
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 14 / 51
Mere kvaliteta i tehnike evaluacije klasifikatora
Predvidena klasaKlasa = 1 Klasa = 0 Ukupno
Stvarna klasaKlasa = 1 f11 f10 f11 + f10
Klasa = 0 f01 f00 f01 + f00
Ukupno f11 + f01 f10 + f00 N
Vrednosti matrice konfuzije obrazlozene na primeru klasifikacije elektronske poste:
1 f11 − vrednost ,,stvarno pozitivni” (eng. true positive) predstavlja brojdokumenata koji su zaista spamovi a koje je klasifikator prepoznao kao spamove
2 f01 − vrednost ,,lazno pozitivni” (eng. false positive) predstavlja broj dokumenatakoji nisu spamovi a koje je klasifikator klasifikovao u grupu spamova
3 f00 − vrednost ,,stvarno negativni” (eng. true negative) predstavlja brojdokumenata koji nisu spamovi a klasifikator ih je klasifikovao kao legitimne poruke
4 f10 − vrednost ,,lazno negativni” (eng. false negative) predstavlja broj dokumenatakoji su spamovi a koji su svrstani u grupu legitimnih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 15 / 51
Mere kvaliteta i tehnike evaluacije klasifikatora
Predvidena klasaKlasa = 1 Klasa = 0 Ukupno
Stvarna klasaKlasa = 1 f11 f10 f11 + f10
Klasa = 0 f01 f00 f01 + f00
Ukupno f11 + f01 f10 + f00 N
Vrednosti matrice konfuzije obrazlozene na primeru klasifikacije elektronske poste:
1 f11 − vrednost ,,stvarno pozitivni” (eng. true positive) predstavlja brojdokumenata koji su zaista spamovi a koje je klasifikator prepoznao kao spamove
2 f01 − vrednost ,,lazno pozitivni” (eng. false positive) predstavlja broj dokumenatakoji nisu spamovi a koje je klasifikator klasifikovao u grupu spamova
3 f00 − vrednost ,,stvarno negativni” (eng. true negative) predstavlja brojdokumenata koji nisu spamovi a klasifikator ih je klasifikovao kao legitimne poruke
4 f10 − vrednost ,,lazno negativni” (eng. false negative) predstavlja broj dokumenatakoji su spamovi a koji su svrstani u grupu legitimnih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 15 / 51
Mere kvaliteta i tehnike evaluacije klasifikatora
Predvidena klasaKlasa = 1 Klasa = 0 Ukupno
Stvarna klasaKlasa = 1 f11 f10 f11 + f10
Klasa = 0 f01 f00 f01 + f00
Ukupno f11 + f01 f10 + f00 N
Vrednosti matrice konfuzije obrazlozene na primeru klasifikacije elektronske poste:
1 f11 − vrednost ,,stvarno pozitivni” (eng. true positive) predstavlja brojdokumenata koji su zaista spamovi a koje je klasifikator prepoznao kao spamove
2 f01 − vrednost ,,lazno pozitivni” (eng. false positive) predstavlja broj dokumenatakoji nisu spamovi a koje je klasifikator klasifikovao u grupu spamova
3 f00 − vrednost ,,stvarno negativni” (eng. true negative) predstavlja brojdokumenata koji nisu spamovi a klasifikator ih je klasifikovao kao legitimne poruke
4 f10 − vrednost ,,lazno negativni” (eng. false negative) predstavlja broj dokumenatakoji su spamovi a koji su svrstani u grupu legitimnih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 15 / 51
Mere kvaliteta i tehnike evaluacije klasifikatora
Predvidena klasaKlasa = 1 Klasa = 0 Ukupno
Stvarna klasaKlasa = 1 f11 f10 f11 + f10
Klasa = 0 f01 f00 f01 + f00
Ukupno f11 + f01 f10 + f00 N
Vrednosti matrice konfuzije obrazlozene na primeru klasifikacije elektronske poste:
1 f11 − vrednost ,,stvarno pozitivni” (eng. true positive) predstavlja brojdokumenata koji su zaista spamovi a koje je klasifikator prepoznao kao spamove
2 f01 − vrednost ,,lazno pozitivni” (eng. false positive) predstavlja broj dokumenatakoji nisu spamovi a koje je klasifikator klasifikovao u grupu spamova
3 f00 − vrednost ,,stvarno negativni” (eng. true negative) predstavlja brojdokumenata koji nisu spamovi a klasifikator ih je klasifikovao kao legitimne poruke
4 f10 − vrednost ,,lazno negativni” (eng. false negative) predstavlja broj dokumenatakoji su spamovi a koji su svrstani u grupu legitimnih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 15 / 51
Mere kvaliteta i tehnike evaluacije klasifikatora
Predvidena klasaKlasa = 1 Klasa = 0 Ukupno
Stvarna klasaKlasa = 1 f11 f10 f11 + f10
Klasa = 0 f01 f00 f01 + f00
Ukupno f11 + f01 f10 + f00 N
Vrednosti matrice konfuzije obrazlozene na primeru klasifikacije elektronske poste:
1 f11 − vrednost ,,stvarno pozitivni” (eng. true positive) predstavlja brojdokumenata koji su zaista spamovi a koje je klasifikator prepoznao kao spamove
2 f01 − vrednost ,,lazno pozitivni” (eng. false positive) predstavlja broj dokumenatakoji nisu spamovi a koje je klasifikator klasifikovao u grupu spamova
3 f00 − vrednost ,,stvarno negativni” (eng. true negative) predstavlja brojdokumenata koji nisu spamovi a klasifikator ih je klasifikovao kao legitimne poruke
4 f10 − vrednost ,,lazno negativni” (eng. false negative) predstavlja broj dokumenatakoji su spamovi a koji su svrstani u grupu legitimnih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 15 / 51
Mere kvaliteta i tehnike evaluacije klasifikatora
Tacnost (eng. accuracy) klasifikatora je mera koja nam daje procenatuspesno klasifikovanih dokumenata. Tacnost definisemo na sledeci nacin:
Tacnost =Broj ispravnih predvidanja
Ukupan broj predvidanja=
f11 + f00
f11 + f10 + f01 + f00
Ekvivalentno performanse modela se mogu izraziti u obliku stope greske,koja je data na sledeci nacin:
Stopa greske =Broj pogresnih predvidanja
Ukupan broj predvidanja=
f10 + f01
f11 + f10 + f01 + f00
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 16 / 51
Mere kvaliteta i tehnike evaluacije klasifikatora
Preciznost (eng. precission) je mera koja nam daje informaciju o udelustvarno pozitivnih instanci. Od svih poruka koje su oznacene kao spam,koji procenat cine poruke koje su stvarno spam?
Preciznost =f11
f11 + f01=
TP
TP + FP
Odziv (eng. recall) je mera suprotna preciznosti. Od svih poruka koje sustvarno spam, koji procenat poruka je klasifikovan kao spam?
Odziv =f11
f11 + f10=
TP
TP + FN
Kombinovanjem preciznosti i odziva dobijena je f1 mera koja se definise nasledeci nacin:
f1 =2 · Preciznost · OdzivPreciznost + Odziv
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 17 / 51
Bajesov klasifikator
Pretpostavimo da poruka sadrzi rec kupovina.Bajesovo pravilo:
P(c |x) =P(x |c) · P(c)
P(x)=
P(W |c) · P(c)
P(W |S) · P(S) + P(W |L) · P(L)
P(c |x) verovatnoca da poruka x pripada klasi c .P(S) ukupna verovatnoca da je bilo koja data poruka nezeljena.P(W |S) verovatnoca da se rec kupovina nalazi u nezeljenoj poruci.P(L) ukupna verovatnoca da je bilo koja data poruka legitimna.P(W |L) verovatnoca da se rec kupovina nalazi u legitimnoj poruci.
Klasifikaciono pravilo:
P(S |x) > P(L|x) =⇒ SPAM
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 18 / 51
Bajesov klasifikator
1 Kako izracunati P(x |c)?
2 Najbolje je pojednostaviti vektor obelezja da se sastoji od jednogbinarnog atributa xw . Neka je xw = 1 ako se odredena rec w nalazi uporuci i xw = 0 u suprotnom.
3 Tada mozemo reci da je:
P(xω = 1|S) ≈ Broj nezeljenih poruka u kojima je w obelezeno
Broj svih nezeljenih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 19 / 51
Bajesov klasifikator
1 Kako izracunati P(x |c)?
2 Najbolje je pojednostaviti vektor obelezja da se sastoji od jednogbinarnog atributa xw . Neka je xw = 1 ako se odredena rec w nalazi uporuci i xw = 0 u suprotnom.
3 Tada mozemo reci da je:
P(xω = 1|S) ≈ Broj nezeljenih poruka u kojima je w obelezeno
Broj svih nezeljenih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 19 / 51
Bajesov klasifikator
1 Kako izracunati P(x |c)?
2 Najbolje je pojednostaviti vektor obelezja da se sastoji od jednogbinarnog atributa xw . Neka je xw = 1 ako se odredena rec w nalazi uporuci i xw = 0 u suprotnom.
3 Tada mozemo reci da je:
P(xω = 1|S) ≈ Broj nezeljenih poruka u kojima je w obelezeno
Broj svih nezeljenih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 19 / 51
Bajesov klasifikator
1 Kako izracunati P(x |c)?
2 Najbolje je pojednostaviti vektor obelezja da se sastoji od jednogbinarnog atributa xw . Neka je xw = 1 ako se odredena rec w nalazi uporuci i xw = 0 u suprotnom.
3 Tada mozemo reci da je:
P(xω = 1|S) ≈ Broj nezeljenih poruka u kojima je w obelezeno
Broj svih nezeljenih poruka
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 19 / 51
Naivni Bajesov klasifikator
U sustini mi predstavljamo prisutnost reci ωi u poruci m vrednoscu 1 ukarakteristicnom vektoru −→x = (x1, x2, ..., xn). Medutim algoritam mora daracuna 2n vrednosti x sto je neprakticno. Kako bismo to izbegli uvodimopretpostavku da su dve prisutne reci uslovno nezavisne jedna od druge stoznaci da je:
P(−→x /c) =n∏
i=1
P(−→x i/c) Λ =n∏
i=1
Λi (−→x i )
Λ(−→x ) predstavlja kolicnik P(−→x /S)P(−→x /L)
, dok je λ parametar koji ukazuje na rizik
kada klasifikujemo legitimnu poruku kao nezeljenu.
λ =L(L,S)
L(S , L)
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 20 / 51
Naivni Bajesov klasifikator
Funkcija L(c1, c2) odreduje cenu lose klasifikacije pojavom klase c1 umestoklase c2. Logicno je reci da je L(L, L) = L(S ,S) = 0.Poruka se klasifikuje kao nezeljena ukoliko je sledeci kriterijum ispunjen:
P(−→x |c = S)
P(−→x |c = L)> λ
Ukoliko vazi pretpostavka nezavisnosti procenjene verovatnoce su preciznei klasifikator na osnovu ovih kriterijuma postize optimalne rezultate[DudaHart1973].
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 21 / 51
kNN
1 Ucenje zasnovano na instancama2 Neophodno je definisati metriku rastojanja poruka d
1 Pozitivna odredenostd(x , y) ≥ 0 za svako x i yd(x , y) = 0 samo ako je x = y
2 Simetrijad(x , y) = d(y , x) za svako x i y
3 Nejednakost trouglad(x , z) ≤ d(x , y) + d(y , z) za svako x , y i z
3 Konkretna poruka x sadrzi k najblizih suseda medu porukama utrening skupu. Ukoliko ima vise spam poruka medu ovim susedima,poruka ce biti klasifikovana kao spam, u suptrotnom klasifikator ce jeklasifikovati kao legitimnu poruku.
4 Uvodenjem modifikacije klasifikacionog pravila l/k smanjujemo brojlazno pozitivnih instanci
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 22 / 51
kNN
1 Ucenje zasnovano na instancama2 Neophodno je definisati metriku rastojanja poruka d
1 Pozitivna odredenostd(x , y) ≥ 0 za svako x i yd(x , y) = 0 samo ako je x = y
2 Simetrijad(x , y) = d(y , x) za svako x i y
3 Nejednakost trouglad(x , z) ≤ d(x , y) + d(y , z) za svako x , y i z
3 Konkretna poruka x sadrzi k najblizih suseda medu porukama utrening skupu. Ukoliko ima vise spam poruka medu ovim susedima,poruka ce biti klasifikovana kao spam, u suptrotnom klasifikator ce jeklasifikovati kao legitimnu poruku.
4 Uvodenjem modifikacije klasifikacionog pravila l/k smanjujemo brojlazno pozitivnih instanci
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 22 / 51
kNN
1 Ucenje zasnovano na instancama2 Neophodno je definisati metriku rastojanja poruka d
1 Pozitivna odredenostd(x , y) ≥ 0 za svako x i yd(x , y) = 0 samo ako je x = y
2 Simetrijad(x , y) = d(y , x) za svako x i y
3 Nejednakost trouglad(x , z) ≤ d(x , y) + d(y , z) za svako x , y i z
3 Konkretna poruka x sadrzi k najblizih suseda medu porukama utrening skupu. Ukoliko ima vise spam poruka medu ovim susedima,poruka ce biti klasifikovana kao spam, u suptrotnom klasifikator ce jeklasifikovati kao legitimnu poruku.
4 Uvodenjem modifikacije klasifikacionog pravila l/k smanjujemo brojlazno pozitivnih instanci
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 22 / 51
kNN
1 Ucenje zasnovano na instancama2 Neophodno je definisati metriku rastojanja poruka d
1 Pozitivna odredenostd(x , y) ≥ 0 za svako x i yd(x , y) = 0 samo ako je x = y
2 Simetrijad(x , y) = d(y , x) za svako x i y
3 Nejednakost trouglad(x , z) ≤ d(x , y) + d(y , z) za svako x , y i z
3 Konkretna poruka x sadrzi k najblizih suseda medu porukama utrening skupu. Ukoliko ima vise spam poruka medu ovim susedima,poruka ce biti klasifikovana kao spam, u suptrotnom klasifikator ce jeklasifikovati kao legitimnu poruku.
4 Uvodenjem modifikacije klasifikacionog pravila l/k smanjujemo brojlazno pozitivnih instanci
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 22 / 51
kNN
1 Ucenje zasnovano na instancama2 Neophodno je definisati metriku rastojanja poruka d
1 Pozitivna odredenostd(x , y) ≥ 0 za svako x i yd(x , y) = 0 samo ako je x = y
2 Simetrijad(x , y) = d(y , x) za svako x i y
3 Nejednakost trouglad(x , z) ≤ d(x , y) + d(y , z) za svako x , y i z
3 Konkretna poruka x sadrzi k najblizih suseda medu porukama utrening skupu. Ukoliko ima vise spam poruka medu ovim susedima,poruka ce biti klasifikovana kao spam, u suptrotnom klasifikator ce jeklasifikovati kao legitimnu poruku.
4 Uvodenjem modifikacije klasifikacionog pravila l/k smanjujemo brojlazno pozitivnih instanci
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 22 / 51
kNN
1 Ucenje zasnovano na instancama2 Neophodno je definisati metriku rastojanja poruka d
1 Pozitivna odredenostd(x , y) ≥ 0 za svako x i yd(x , y) = 0 samo ako je x = y
2 Simetrijad(x , y) = d(y , x) za svako x i y
3 Nejednakost trouglad(x , z) ≤ d(x , y) + d(y , z) za svako x , y i z
3 Konkretna poruka x sadrzi k najblizih suseda medu porukama utrening skupu. Ukoliko ima vise spam poruka medu ovim susedima,poruka ce biti klasifikovana kao spam, u suptrotnom klasifikator ce jeklasifikovati kao legitimnu poruku.
4 Uvodenjem modifikacije klasifikacionog pravila l/k smanjujemo brojlazno pozitivnih instanci
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 22 / 51
kNN
1 Ucenje zasnovano na instancama2 Neophodno je definisati metriku rastojanja poruka d
1 Pozitivna odredenostd(x , y) ≥ 0 za svako x i yd(x , y) = 0 samo ako je x = y
2 Simetrijad(x , y) = d(y , x) za svako x i y
3 Nejednakost trouglad(x , z) ≤ d(x , y) + d(y , z) za svako x , y i z
3 Konkretna poruka x sadrzi k najblizih suseda medu porukama utrening skupu. Ukoliko ima vise spam poruka medu ovim susedima,poruka ce biti klasifikovana kao spam, u suptrotnom klasifikator ce jeklasifikovati kao legitimnu poruku.
4 Uvodenjem modifikacije klasifikacionog pravila l/k smanjujemo brojlazno pozitivnih instanci
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 22 / 51
kNN
y
x
Figure: Primer koji ilustruje algoritam k najblizih suseda za k = 1, k = 2, k = 3
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 23 / 51
kNN
5 Teorema (Stone 1977): Ako velicina trening skupa n tezibeskonacnosti, i ukoliko k →∞, k
n → 0, tada greska pogresneklasifikacije tezi teoretskom minimumu.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 24 / 51
SVM
1 SVM = Support Vector Machine, metod podrzavajucih (potpornih)vektora
2 Metoda je zasnovana na ideji vektorskih prostora
3 Model je formula (a ne skup pravila)
4 Osnovni algoritam je za binarnu klasifikaciju
5 Narocito je upotrebljiv za numericke podatke
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 25 / 51
SVM
1 SVM = Support Vector Machine, metod podrzavajucih (potpornih)vektora
2 Metoda je zasnovana na ideji vektorskih prostora
3 Model je formula (a ne skup pravila)
4 Osnovni algoritam je za binarnu klasifikaciju
5 Narocito je upotrebljiv za numericke podatke
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 25 / 51
SVM
1 SVM = Support Vector Machine, metod podrzavajucih (potpornih)vektora
2 Metoda je zasnovana na ideji vektorskih prostora
3 Model je formula (a ne skup pravila)
4 Osnovni algoritam je za binarnu klasifikaciju
5 Narocito je upotrebljiv za numericke podatke
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 25 / 51
SVM
1 SVM = Support Vector Machine, metod podrzavajucih (potpornih)vektora
2 Metoda je zasnovana na ideji vektorskih prostora
3 Model je formula (a ne skup pravila)
4 Osnovni algoritam je za binarnu klasifikaciju
5 Narocito je upotrebljiv za numericke podatke
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 25 / 51
SVM
1 SVM = Support Vector Machine, metod podrzavajucih (potpornih)vektora
2 Metoda je zasnovana na ideji vektorskih prostora
3 Model je formula (a ne skup pravila)
4 Osnovni algoritam je za binarnu klasifikaciju
5 Narocito je upotrebljiv za numericke podatke
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 25 / 51
SVM
y
x
w· x
+b
=0
w· x
+b
=1
w· x
+b
=−1
2‖w‖
b‖w‖
w
Figure: Primer koji ilustruje optimalnu hiper-ravan sa maksimalnom marginomkoja razdvaja podatke za trening u 2 klase
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 26 / 51
SVM
xi ·w + b ≥ +1 za yi = +1
xi ·w + b ≤ −1 za yi = −1
Kombinovanjem dva prethodna izraza dobijamo:
yi (xi ·w + b)− 1 ≥ 0,∀iDa bi izabrali hiper-ravan maksimalno udaljenu od potpornih vektora,potrebno je maksimizovati marginu, sto je ekvivalentno pronalazenju:
min ||w|| takav da yi (xi ·w + b)− 1 ≥ 0, ∀imin ||w|| je ekvivalentno min 1
2 ||w||2 i upotreba ovog izraza omogucava
kasnije izvrsavanje optimizacije kvadratnog programiranja. Zbog togamoramo da pronademo:
min1
2||w||2 takav da yi (xi ·w + b)− 1 ≥ 0, ∀i
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 27 / 51
SVM (linearno nerazdvojive klase)
Figure: Preslikavanje u visedimenzionalni prostor u kome je skup podatakalinearno razdvojiv
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 28 / 51
SVM (linearno nerazdvojive klase)
Kernel je funkcija koja odgovara skalarnom proizvodu u nekom prosirenomprostoru (prostoru vece dimenzije). Racunanje skalarnog proizvoda izmeduvektora:
K (xi , xj) = xTi · xjPreslikavanjem svake tacke u prostor vece dimezije koristeci transformacijuΦ : x → φ(x) skalarni proizvod postaje
K (xi , xj) = φ(xi )T · φ(xj)
pomocu koje se izracunavanje vrsi na mnogo jednostavniji nacin.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 29 / 51
SVM (linearno nerazdvojive klase)
Dakle kerneli omogucavaju pretvaranje nerazdvojivih problema u razdvojivei vrse bolje preslikavanje u prostore visih dimenzija. Matematicka teorijadefinise uslove koje data funkcija treba da zadovolji da bi predstavljalaskalarni proizvod u nekom vektorskom prostoru: simetricnost, pozitivnadefinisanost, zatvorenost za linearne kombinacije, mnozenje skalarom, itd.Funkcija koja zadovolji te uslove moze da se koristi kao kernel.
Primeri uobicajenih kernela:
1 Linearni − K (xi , xj) = xTi · xj2 Polinomijalni − K (xi , xj) = (1 + xTi xj)
d
3 RBF − K (xi , xj) = e−|xi−xj |
2σ2
4 Sigmoid − K (xi , xj) = tanh(γxTi xj + r)
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 30 / 51
SVM - meka margina
y
x−b‖w‖
w
−ξ|w|
Figure: Primer koji ilustruje dve linearno nerazdvojive klase
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 31 / 51
SVM - meka margina
Uvodenjem nenegativne vrednosti ξi ublazavamo uslove linearnog SVM-a idobijamo sledece izraze:
xi ·w + b ≥ +1− ξi za yi = +1
xi ·w + b ≤ −1 + ξi za yi = −1
Kombinovanjem dva prethodna izraza dobijamo:
yi (xi ·w + b)− 1 + ξi ≥ 0, ξi ≥ 0,∀i
Izbor razdvajajuce hiper-ravni svodi se na pronalazenje:
min1
2||w||2 + C
L∑i=1
ξi takav da yi (xi ·w + b)− 1 + ξi ≥ 0, ξi ≥ 0,∀i
gde vrednost C predstavlja faktor greske, kojim dozvoljavamo odredenegreske pri treniranju, bez cega pronalazak hiper-ravni ne bi bio moguc.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 32 / 51
Perceptron
1 Ideja perceptrona je pronaci linearnu funkciju vektora obelezja
f (x) = wTx + b
tako da je f (x) > 0 za vektore jedne klase i f (x) < 0 za vektoredruge klase.
2 w = (w1,w2, ...,wm) je vektor koeficijenata (tezina) funkcije i btakozvani slobodni koeficijent (bias) 1.
3 Ako oznacimo klase brojevima +1 i −1 mozemo reci da trazimofunkciju odluke
d(x) = sign(wTx + b)
1Slobodni koeficijent ili bias (sklonost) je vrednost koja nam omogucuje transliranjefunkcije odluke levo ili desno, sto moze biti kriticno za uspesno ucenje.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 33 / 51
Perceptron
1 Ucenje perceptrona je uradeno iterativnim algoritmom. On pocinjeproizvoljno izabranim parametrima (w0, b0) za funkciju odluke iazurira ih iterativno.
2 Na n-toj iteraciji algoritma, trening primer (x, c) je odabran tako daga trenutna funkcija odluke ne klasifikuje tacno (vazisign(wTx + b) 6= c). Parametri (wn, bn) se azuriraju koriscenjempravila:
wn+1 = wn + cx bn+1 = bn + c
3 Algoritam se zaustavlja u konacnom broju koraka ukoliko su treningprimeri linearno razdvojivi.
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 34 / 51
Podaci
Korpusi koji su korisceni za testiranje algoritama koji su implementirani.
Korpus Poruke Spam Legitimne
PU1 1099 481 618
PU2 721 142 579
PU3 4139 1826 2313
PUA 1142 571 571
Enron-Spam 33716 17171 16545
Ling-Spam 2893 481 2412
Table: Raspodela poruka u korpusima
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 35 / 51
Rezultati - PU1 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
20
40
60
80
100 96 96
106102
106 106 105
0 3 2 0 2 0 0
13 101
71 3 4
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 36 / 51
Rezultati - PU2 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
20
40
6060 59
6763
6963 63
0 0 2 0 0 0 0
11 12
28
28 8
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 37 / 51
Rezultati - PU3 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
100
200
300
400 384348
396 400 402 403 402
0 4 7 0 7 0 029
61
10 13 4 10 11
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 38 / 51
Rezultati - PUA korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
20
40
60
80
100
120106
77
109103
108 108 108
1 0 4 05 1 1
7
37
111
1 5 5
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 39 / 51
Rezultati - Ling spam korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
50
100
150
200
250
300265
281 282 280 286 281 285
2 0 4 0 1 4 022
8 3 9 2 4 4
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 40 / 51
Rezultati - enron1 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
100
200
300
400
500444
379
0
467
0
473
04 0 0 4 0 7 0
52
121
029
020
0
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 41 / 51
Rezultati - enron2 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
100
200
300
400
500
600
494 482
565 574 571 550 570
260
231
23 34 13
80118
12 25 6 16 17
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 42 / 51
Rezultati - enron3 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
100
200
300
400
500
600
437405
514 510539
484523
350 17 0 4
441
78
145
1940
7 22 26
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 43 / 51
Rezultati - enron4 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
100
200
300
400
500
600
513462
568 568 576540
577
3180
29 31 2260
2256 58
3 1 2 0 1
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 44 / 51
Rezultati - enron5 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
100
200
300
400
500 466
372
478 475 487 485 486
3 1 10 3 6 9 431
127
12 22 7 6 10
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 45 / 51
Rezultati - enron6 korpus
NB kNN SVM SVMmm Perceptron SVM/NB SVM/NB/Per
0
100
200
300
400
500
600520
482
563 578 578 579 585
8 17 15 14 11 19 9
72101
22 8 11 2 6
klas
ifiko
van
ep
oru
ke
tacno klasifikovano lazno pozitivno lazno negativno
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 46 / 51
Rezultati
algoritam/korpus
PU
1
PU
2
PU
3
PU
A
Lin
gsp
am
Naivni Bajesov klasifikator 88.07% 84.5% 92.97% 92.98% 91.69%
kNN 88.07% 83.09% 84.26% 67.54% 97.23%
Metod podrzavajucih vektorabez meke margine 97% 94.36% 95.88% 95.61% 97.57%
Metod podrzavajucih vektora samekom marginom 94% 88.73% 95.85% 90.35% 96.88%
Perceptron 97.25% 97.18% 97.34% 94.73% 98.96%
SVM/Naivni Bajesov klasifika-tor 97% 89% 97.58% 94.74% 97.23%
SVM/Naivni Bajesov klasifika-tor/Perceptron 96% 89% 97.34% s 94.74% 98.6%
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 47 / 51
Rezultati
algoritam/korpus
enro
n1
enro
n2
enro
n3
enro
n4
enro
n5
enro
n6
Naivni Bajesov klasifikator 88.8% 82.3% 79.4% 86% 91.4% 86.7%
kNN 75.8% 80.3% 73.6% 29.5% 77.4% 41%
Metod podrzavajucih vektorabez meke margine - 94.9% 93.4% 94.7% 95.6%
93.8%
Metod podrzavajucih vektora samekom marginom 93.4% 95.7% 92.7% 94.7% 95%
96.3%
Perceptron - 95.2% 98% 96% 97.4% 96.3%
SVM/Naivni Bajesov klasifika-tor 94.6% 91.7% 88% 90% 97%
96.5%
SVM/Naivni Bajesov klasifika-tor/Perceptron - 95% 95.1% 96.2% 97.2%
97.5%
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 48 / 51
Zakljucak
1 Najmanje vremena za treniranje trosi algoritam k najblizih suseda,dok najmanje vremena za validaciju trosi klasifikator zasnovan naperceptronu.
2 Najvise vremena za treniranje trosi Naivni Bajesov klasifikator, doknajvise vremena za validaciju trosi algoritam k najblizih suseda.
3 Algoritam k najblizih suseda ne treba koristiti kod problema filtriranjanezeljene elektronske poste.
4 Kod Naivnog Bajesovog klasifikatora neophodno da parametar λ budesto veci.
5 Najvecu tacnost klasifikacije sa najnizim brojem lazno pozitivnihinstanci pokazali su metod podrzavajucih vektora i klasifikatorzasnovan na perceptronu
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 49 / 51
Bibliografija
Duda Hart 1973
Bayes Decision Theory - Chapter 2,
Duda, R.O. , P.E. Hart.,
Pattern Classification and Scene Analysis, John Wiley.,
10–43,
1973
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 50 / 51
Pitanja?
Aleksandar Nedeljkovic (MATF) Filtriranje spama 4.3.2016. 51 / 51
top related