1
I HC QUC GIA TP. H CHÍ MINH
TRNG I HC KHOA HC T NHIÊN
KHOA CÔNG NGH THÔNG TIN
MÔN H THNG THÔNG TIN
LÊ NGUYN BÁ DUY –TRN MINH TRÍ
TÌM HIU CÁC HNG TIP CN PHÂN LOI
EMAIL VÀ XÂY DNG PHN MM MAIL CLIENT
TR TING VIT
KHOÁ LUN C NHÂN TIN HC
TP. HCM, NM 2005
2
I HC QUC GIA TP. H CHÍ MINH
TRNG I HC KHOA HC T NHIÊN
KHOA CÔNG NGH THÔNG TIN
MÔN H THNG THÔNG TIN
LÊ NGUYN BÁ DUY -0112050
TRN MINH TRÍ -0112330
TÌM HIU CÁC HNG TIP CN PHÂN LOI
EMAIL VÀ XÂY DNG PHN MM MAIL CLIENT
TR TING VIT
KHOÁ LUN C NHÂN TIN HC
GIÁO VIÊN HNG DN
THY LÊ C DUY NHÂN
NIÊN KHÓA 2001-2005
3
I CM N
Trc tiên, chúng tôi xin chân thành cm n thy Lê c Duy Nhân, ngi
ã hng dn chúng tôi thc hin tài này. Nh có s hng dn, ch bo tn tình
ca thy, chúng tôi ã hoàn thành khoá lun này.
Chúng con xin kính gi lòng bit n, kính trng ca chúng con n ông bà,
cha m và các ngi thân trong gia ình ã ht lòng nuôi chúng con n hc, luôn
luôn bên chúng con,ng viên giúp chúng con vt qua khó khn
Chúng em xin cm n tt c các thy cô trng i hc Khoa Hc T Nhiên,
c bit là các thy cô trong khoa Công Ngh Thông Tin ã ht lòng ging dy,
truyn t nhiu kin thc và kinh nghim quý báu cho chúng em. Chúng em cng
xin chân thành cm n khoa Công Ngh Thông Tin, b môn H Thng Thông Tin
ã to mi u kin thun li trong quá trình thc hin khoá lun ca chúng em.
Chúng tôi xin chân thành cm n bn bè trong lp cng nh các anh chi
trc ã giúp , óng góp ý kin cho chúng tôi.
Vi thi gian nghiên cu ngn, trong vòng 6 tháng và nng lc ca nhng
ngi làm tài, chc chn tài còn có nhiu thiu sót. Chúng tôi rt mong nhn
c nhng góp ý, nhn xét tài c hoàn thin hn.
Thành ph H Chí Minh
Tháng 7 nm 2005
Nhng ngi thc hin:
Lê Nguyn Bá Duy – Trn Minh Trí.
4
v Mc lc:
Chng 1 : MU 9
1.1 Gii thiu: 10
1. 2 Yêu c u bài t oán: 12
1.3 B cc khoá lun : 12
Chng 2 : TNG QUAN 14
2.1 Các cách thc con ngi x lý vi spam : 15
2.2 Các phng pháp tip cn: 16
2.2.1 Complaining to Spammers' ISPs : 16
2. 2.2 Ma il Bl ackl i sts /Whit el is ts: 16
2.2.3 Mail volume : 18
2. 2.4 Sign ature/ Checksum schemes: 19
2.2.5 Genetic Algorithms: 20
2.2.6 Ru le-Based (hay là Heuristic): 21
2.2.7 Challenge-Response: 22
2.2.8 Machine Learning ( Máy hc ): 23
2.3 Phng pháp la chn : 24
2.4 Các ch sánh giá hiu qu phân loi email : 24
2.4.1 Spam Recall và Spam Precision: 24
2.4.2 T l li Err (Error) và t l chính xác Acc(Accuracy) : 25
2.4.3 T l li gia trng WErr (Weighted Error ) và t l chính xác gia trng (Weighted
Accuracy): 25
2.4.4 T s chi phí tng hp TCR (Total Cost Ratio ): 26
Chng 3 : GII THIU CÁC KHO NG LIU DÙNG KIM TH
PHÂN LOI EMAIL 28
3.1 Kho ng liu PU (corpus PU ): 29
3.1.1 Vài nét v kho ng liu PU: 29
3.1.2 Mô t cu trúc kho ng liu PU: 30
3.2 Kho ng liu email ch: 31
Chng 4 : PHNG PHÁP PHÂN LOI NAÏVE BAYESIAN VÀ NG
DNG PHÂN LOI EMAIL 33
4.1 Mt vài khái nim xác sut có liên quan 34
4.1.1 nh ngha bin c, xác sut : 34
4.1.2 Xác sut có u kin, công thc xác sut y – công thc xác sut Bayes35
4.2 Phng pháp phân loi Naïve Bayesian : 36
4.3 Phân loi email bng phng pháp Naïve Bayesian : 37
4.3.1 Phân loi email da trên thut toán Naïve Bayesian 38
4.3.2 Chn ngng phân loi email : 39
Chng 5 : THC HIN VÀ KIM TH PHÂN LOI EMAIL DA
TRÊN PHNG PHÁP PHÂN LOI NAÏVE BAYESIAN 41
5.1 Cài t chng trình phân loi email da trên phng pháp phân loi Naïve
Bayesian: 42
5.1.1 Khái nim “Token” : 42
5.1.2 Vector thuc tính : 42
5.1.3 Chn ngng phân loi : 43
5.1.4 Cách thc hin :. 43
5
5.2 Th nghim hiu qu phân loi 51
5.2.1 Th nghim vi kho ng liu pu: 51
5.2.2 Th nghim vi kho ng liu email ch : 60
5.3 u – nhc m ca phng pháp phân loi Naïve Bayesian: 61
5.3.1 u m : 61
5.3.2 Khuyt m : 62
Chng 6 : PHNG PHÁP ADABOOST VÀ NG DNG PHÂN LOI
EMAIL 63
6.1 Thut toán AdaBoost : 64
6.2 AdaBoost trong phân loi vn bn nhiu lp : 65
Thut toán AdaBoost MH phân loi vn bn nhiu lp : 66
6.3 ng dng AdaBoost trong phân loi email: 66
6.3.1 Thut toán AdaBoost.MH trong trung hp phân loi nh phân 67
Gii hn li hun luyn sai : 68
6.3.2 Phng pháp la chn lut yu : 70
Chng 7 : THC HIN VÀ KIM TH PHÂN LOI EMAIL DA
TRÊN PHNG PHÁP ADABOOST 73
7.1 Cài t b phân loi email da trên phng pháp AdaBoost: 74
7.1.1 Tp hun luyn mu và tp nhãn : 74
7.1.2 Xây dng tp lut yu ban u : 75
7.1.3 Th tc WeakLearner chn lut yu: 76
7.1.4 Phân loi email : 76
7.2 Th nghim hiu qu phân loi : 76
7.2.1 Th nghim vi kho ng liu pu: 76
7.2.2 Th nghim vi kho ng liu email ch: 79
7.3 u – nhc m ca phng pháp phân loi AdaBoost: 80
7.3.1 u m : 80
7.3.2 Khuyt m : 80
Chng 8 : XÂY DNG CHNG TRÌNH MAIL CLIENT TING VIT
H TR PHÂN LOI EMAIL 82
8.1 Chc nng: 83
8.2 Xây dng b lc email spam : 83
8.3 T chc d liu cho chng trình : 84
8.4 Giao d in ngi dùng : 85
8.4.1 S màn hình : 85
8.4.2 Mt s màn hình chính : 85
Chng 9 : TNG KT VÀ HNG PHÁT TRIN 94
9.1 Các vic ã thc hin c : 95
9.2 Hng ci tin, m rng : 95
9.2.1 V phân loi và lc email spam: 95
9.2.2 V chng trình Mail Client: 96
TÀI LIU THAM KHO 97
Ting Vit : 97
Ting Anh : 97
Ph lc 99
6
Ph lc 1 : Kt qu th nghim phân loi email bng phng pháp Bayesian
vi kho ng liu hc và kim th pu 99
Ph lc 2 : Kt qu th nghim phân loi email bng phng pháp
AdaBoost vi kho ng liu hc và kim th pu 103
1. Kt qu thc hin vi thut toán AdaBoost with real value predictions
103
2. Kt qu thc hin vi thut toán AdaBoost with discrete predictions 105
7
Danh mc các hình v:
Hình 3-1Email sau khi tách token và mã hoá (trong kho ng liu pu) 29
Hình 5-1Mô t cu trúc bng bm 48
Hình 5-2 Lc so sánh các ch s spam recall (SR) và spam precision (SP) theo
s token th nghim trên kho ng liu PU1 vi công thc 5-7 (
9
λ=
) 53
Hình 5-3 Lc ch s TCR theo s token th nghim trên kho ng liu PU1 vi
công thc 5-7 (
9
λ=
) 53
Hình 5-4 Lc so sánh các ch s spam recall (SR) và spam precision (SP) theo
s token th nghim trên kho ng liu PU2 vi công thc 5-5 (
9
λ=
) 55
Hình 5-5 Lc ch s TCR theo s token th nghim trên kho ng liu PU2
vi công thc 5-5 (
9
λ=
) 55
Hình 5-6 Lc so sánh các ch s spam recall (SR) và spam precision (SP) theo
s token th nghim trên kho ng liu PU3 vi công thc 5-6 (
9
λ=
) 57
Hình 5-7 Lc ch s TCR theo s token th nghim trên kho ng liu PU3 vi
công thc 5-6 (
9
λ=
) 57
Hình 5-8 Lc so sánh các ch s spam recall (SR) và spam precision (SP) theo
s token th nghim trên kho ng liu PUA vi công thc 5-5 (
9
λ=
) 59
Hình 5-9 Lc ch s TCR theo s token th nghim trên kho ng liu PUA
vi công thc 5-5 (
9
λ=
) 59
8
Danh mc các bng:
Bng 3-1Mô t cu trúc kho ng liu PU 31
Bng 5-1 Kt qu kim th phân lai email bng phng pháp phân lai Naïve
Bayesian trên kho ng liu PU1 52
Bng 5-2 Kt qu kim th phân lai email bng phng pháp phân lai Naïve
Bayesian trên kho ng liu PU2 54
Bng 5-3 Kt qu kim th phân lai email bng phng pháp phân lai Naïve
Bayesian trên kho ng liu PU3 56
Bng 5-4 Kt qu kim th phân lai email bng phng pháp phân lai Naïve
Bayesian trên kho ng liu PUA 58
Bng 5-5 Kt qu kim th phân lai email bng phng pháp phân lai Bayesian
trên kho ng liu email ch 61
Bng 7-1 Kt qu th nghim phân loi email vi ng liu s PU bng thut toán
AdaBoost with real -value predictions 77
Bng 7-2 Kt qu th nghim phân loi email vi ng liu s PU bng thut toán
AdaBoost with discrete predictions 77
Bng 7-3 kt qu th nghim phân loi email vi ng liu email ch bng thut
toán AdaBoost with real-value predictions 79
Bng 7-4 Kt qu th nghim phân loi email vi ng liu email ch bng thut
toán AdaBoost with discrete predictions 80
9
Chng 1 : MU
10
1.1 Gii thiu:
Thi i ngày nay là thi i bùng n thông tin, Internet ã tr nên quen
thuc và không th thiu i vi mi quc gia và xã hi. Liên lc qua Internet ã tr
nên ph bin, và email là mt phng tin liên lc có chi phí thp, nhanh chóng và
hiu qu nht trên Internet. Hng ngày mi ngi s dng email u nhn c mt
ng ln email, tuy nhiên không phi tt c các email mà ta nhn c u cha
thông tin mà ta quan tâm. Nhng email mà ta không mun nhn y là email Spam.
Ngc li, nhng email không phi là spam gi là non-spam – email hp lc
ngidùng chp nhn.
Spam chính là nhng email c phát tán mt cách rng rãi không theo bt
c mt yêu cu nào ca ngi nhn vi s lng ln (unsolicited bulk email
(UBE)), hay nhng email qung cáo c gi mà không có yêu cu ca ngi nhn
(unsolicited commercial email (UCE)) [1].
Nhiu ngi trong chúng ta ngh rng spam là mt vn mi, nhng thc
ra nó ã xut hin khá lâu – ít nht là t nm 1975. Vào lúc khi thy, ngi dùng
hu ht là các chuyên gia v máy tính, h có th gi hàng tá thm chí hàng trm
email n các nhóm tin (newsgroup) và spam hu nh ch liên quan n các email
gi n các nhóm tin Usenet, gây ra tình trng không th kim soát c các email
nhn. Sau ó các bin pháp trng tr v mt xã hi và hành chính ã có tác dng,
th phm ã b trng pht , công khai hay bí mt, nhng ngi này nhanh chóng
c a vào mt danh sách, và mt k thut lc spam sm nht xut hin ó là
”bad sender” – lc email ca nhng ngi gi c xem là xu.
WWW(World-Wide Web) ã mang th gii Internet n nhiu ngi, và h
qu ca nó là nhiu ngi không phi là chuyên gia trong th gii máy tính cng
c tip xúc nhiu vi Internet, nó cho phép truy cp n nhng thông tin và dch
v mà trc ây là không c phép. Ch trong vòng 2-3 nm chúng ta ã chng
kin s bùng n s ngi s dng Internet và tt nhiên là nhng c hi qung cáo
trên y. Và spam ã phát trin mt cách nhanh chóng tây, nhng k thut ngn
11
chn spam trc ây ã không còn thích hp. Spam thng theo sau nhng qung
cáo thng mi chèo kéo khách hàng ( nhng email qung cáo thng mi c gi
mà không có yêu cu ) [2]. Spam ã và ang gây tác hi n ngi s dng Internet
và tc ng truyn Internet. Vi ngi s dng email, spam gây cho h cm
giác bc bi và phi mt thi gian và tin bc xóa chúng,ôi khi h có th b
mt nhng email quan trng ch vì xóa nhm, tc trên mng xng sng ca
Internet (Internet Backbone) cng b spam là cho chm li vì s lng spam c
chuyn i trên mng là cc ln [3]. Theo thng kê ca ZDNet thi m nm
2004, mi ngày có khong 4 t email spam c phát tán qua Internet, trên 40%
ng email trên mng là spam
1
, gn ây ã t con s 50%
2
. Cho dù c nhn
din là “k thù ca cng ng“(“public enemy”) Internet, nhng spam ã và ang
mang li li nhun. Trong s 100.000 email spam phát tán, ch cn mt email có
phn hi là ã có th bù p chi phí u t [4].
ngn chn spam, nhiu nhà khoa hc, các t chc, các cá nhân ã nghiên
cu và phát trin nhng k thut phân loi và lc email, tuy nhiên các spammer -
nhng ngi to nên spam và phát tán chúng cng tìm mi cách vt qua các b lc
này. Cuc chin gia các spammer và nhng ngi chng spam vn còn ang tip
din và dng nh không có hi kt. Thc t cho thy, nhu cu có mt phng
pháp và công c chng spam hu hiu là rt cn thit.
Xut phát t thc trng ó, nhóm chúng tôi chn hng nghiên cu ”Tìm
hiu các hng tip cn cho bài toán phân loi email và xây dng phn mm
Mail Client h tr ting Vit “ vi mc ích tìm hiu, th nghim các phng
pháp tip cn cho bài toán phân loi email , t ó thc hin phân loi email giúp
ngn chn email spam hiu qu.
1
/>2
/>
12
1.2 Yêu cu bài toán:
Yêu cu i vi mt h thng phân loi email và ngn chn email spam
ng nhiên là phân loi c email là spam hay non-spam, tó s có bin pháp
ngn chn email spam, hiu qu phân loi email phi kh quan, tuy nhiên không th
ánh i hiu qu phân loi email spam cao mà b qua li sai cho rng email non-
spam là spam, bi vì cùng vi vic tng kh nng phân loi email spam thì kh nng
xy ra li nhn nhm email non-spam thành email spam cng tng theo. Do ó yêu
cu i vi mt h thng phân loi email spam là phi nhn ra c email spam
càng nhiu càng tt và gim thiu li nhn sai email non-spam là email spam.
1.3 B cc khoá lun :
Chúng tôi chia khoá lun làm 9 chng
§ Chng 1 Gii thiu v tài, bài toán phân loi email.
§ Chng 2 Tng quan : trình bày mt s hng tip cn phân loi email
và chng email spam,ng thi có s nhn xét ánh giá các phng
pháp, tó có c s chn la hng tip cn gii quyt vn .
§ Chng 3 : Gii thiu và mô t v c s d liu dùng hc và kim th
Hai chng tip theo, chúng tôi trình bày c s lý thuyt và thc hin
phân loi email theo phng pháp Bayesian.
§ Chng 4: Trình bày c s lý thuyt cho hng tip cn da trên phng
pháp Bayesian.
§ Chng 5: Thc hin phân loi email d trên phng pháp Bayesian và
kim th.
Hai chng tip theo, chúng tôi trình bày c s lý thuyt và thc hin
phân loi email theo phng pháp AdaBoost
§ Chng 6: Trình bày c s lý thuyt cho hng tip cn da trên thut
toán AdaBoost.
§ Chng 7: Thc hin phân loi d trên phng pháp AdaBoost và kim
th.
13
§ Chng 8: Xây dng phn mm email Client ting Vit h tr phân loi
email
§ Chng 9: Tng kt, trình bày v nhng vn ã thc hin, nhng kt
qut c, xut hng m rng, phát trin trong tng lai.
14
Chng 2 : TNG QUAN
15
2.1 Các cách thc con ngi x lý vi spam :
Trên th gii ã có nhiu t chc, công ty phát trin nhiu cách thc khác
nhau gii quyt vn spam. Có nhiu h thng c xây dng sn mt “danh
sách en” (Blacklist ) cha các tên min mà tó spam c to ra và phát tán, và
d nhiên là các email n t các tên min này hoàn toàn b khóa (block out). Mt s
h thng cn c vào header ca email (nhng trng nh ni gi (from ), tiêu
(subject) ) và loi b nhng email có a ch xut phát t nhng spammer (ngi
phát tán spam). Vài h thng khác li tìm kim trong ni dung ca email, nhng du
vt cho thy có s tn ti ca spam chng hn email có quá nhiu du than, s ch
cái c vit hoa nhiu mt cách bt bình thng …
Tuy nhiên các spammer ngày càng tinh vi, vì th các k thut dùng chng
spam cng phi c ci tin, và chính nhng ci tin này càng thôi thúc các
spammer tr nên ranh ma và tinh vi hn… Kt qu là nh hin nay, các email spam
gn nh ging vi mt email thông thng. Tuy nhiên email spam có mt u
không bao gi thay i ó là bn cht ca nó. Bn cht ó chính là mc tiêu qung
cáo sn phm hay dch v. Nó là c s cho phng pháp lc email da trên ni dung
(content based filtering).Theo ó, chúng ta c gng phát hin ra các ngôn ng qung
cáo (sales-pitch language) thay vì chú ý n các ch s thng kê ca email chng
hn nh có bao nhiêu ln xut hin ch “h0t chixxx!” …
Mt u quan trng cn phi cân nhc n khi lc spam là cái giá phi tr khi
lc sai. Nu mt b lc t chi nhn hu ht các email gi n hoc ánh du mt
email tht s quan trng nào ó là spam thì iu ó còn t hn c vic nhn tt c
email spam c gi n. Ngc li, nu có quá nhiu email spam vt c b lc
thì rõ ràng b lc hot ng không hiu qu, không áp ng c yêu cu ca ngi
s dng.
16
2.2 Các phng pháp tip cn:
2.2.1 Complaining to Spammers' ISPs :
• Ý tng :
Tìm cách làm tng chi phí gi spam ca các spammer bng
nhng li than phin, phn ánh n các ni cung cp dch v mng
(Internet Service Provider - ISP). Khi chúng ta bit chính xác nhng
email spam thc sc gi n t dch v ISP nào, ta s phn ánh
li vi dch vó và dch v này s t chi cung cp dch v cho các
spammer dùng gi spam.
• c m :
ây cng là gii pháp chng spam u tiên. Nhng li than
phin cng có tác dng ca nó. Nhng ni gi spam s b vô hiu hóa,
khi ó các spammer phi ng ký mt tài khon mi vi nhà cung cp
dch v ISP có th tip tc phát tán các email spam ca mình. Dn
dn vic chuyn ni cung cp dch v s làm các spammer tn nhiu
chi phí và khi chúng ta phát hin càng sm thì chi phí trên ca các
spammer càng tng nhiu.
Cách này cng gp phi nhng khó khn ó là không th bit
chính xác nhng email spam này thc sn tâu do các spammer
ã khéo léo che giu i phn header ca email n i ngun gc. Do
ó cn phi hiu bit v header ca email hiu rõ email spam này
tht s n t âu.
2.2.2 Mail Blacklists /Whitelists:
• Ý tng:
Mt danh sách en (Blacklist) các a ch email hay các máy
ch email (mail server) chuyên dùng ca các spammer sc thit
17
lp và da vào ó ta có th ngn chn nhn email spam c phát tán
t nhng ni này.
Vic thit lp danh sách các a ch email en hay máy ch gi
email này s do mt nhóm tình nguyn xác nhn. Mt s nhà cung cp
dch v mng ISP s dùng danh sách en kiu này và tng t chi
nhn email t nhng máy ch hay email trong dánh sách ó. Nh
vy, nhng email spam sc phân loi và chn ngay ti máy ch
nhn email.
• c m:
Phng pháp này bc u loi c khong 50% [5] email
spam.
Khuyt m ca phng pháp này là chúng không thng
u vi hn mt na s server mà spam ang s dng hin nay. Và
nu xác nhn sai danh sách en này thì vic dùng nó ng ngha vi
vic b qua mt lng ln email hp l.
Phng pháp này có th b qua mt nu nh các spammer gi
li email thông qua mt máy ch SMTP (Simple email Transfer
Protocol) có ngun gc hp pháp không k tên trong danh sách
“Blacklist”.
Ngoài ra, danh sách này không ch t chi nhn email t các
a ch IP (Internet Protocol) t nhng ni chuyên dùng gi spam mà
nó còn t chi luôn c nhng email mà có tên min nm trong danh
sách “Blacklist” này.
Cách này c áp dng ti mc nhà cung cp dch v mng
(ISP), và tht s hu dng vi ngi dùng nu h s dng mt ISP
áng tin cy.
18
Ngc li vi vic thit lp mt danh sách en “Blacklist” ta
còn có th thit lp mt danh sách “Whitelist”. Vi nhng a ch gi
email (hoc tên min domains) nm trong danh sách này sc các
ISP tng chp nhn email gi t nó. Mc nh tt c nhng email
khác s b t chi
Nu các spammer gi email spam vi phn “sender” ca email
có cùng tên min c chp nhn trong “Whitelist” thì email spam
vn có thn c tay ngi nhn.
2.2.3 Mail volume :
• Ý tng:
B lc s s dng thut toán kim tra s lng email nhn
c t mt máy ch (host) c th trong các ln kt ni sau cùng
(cách này ã c b lc Spamshield
3
ca Kai s dng. Nu s
ng email nhn c ln hn mt ngng nào ó thì các email ó
sc phân loi là spam.
• c m:
B lc t ra hiu qu trong vic phân loi úng tt c các email
hp l trong iu kin vi mt ngng phân loi cao.Nu b lc
c s dng cho cá nhân, thì nó hot ng rt hiu qu. Có th xem
ây là mt u im ca b lc bi vì vi email cá nhân thì nhng k
gi email qung cáo phi thit lp nhiu kt ni hn gi mt s
ng email ging nhau. u này làm cho các email qung cáo ó d
dàng b phát hin da trên vic phân tích s lng email.
Mt hn ch ca b lc này là t l chp nhn phân loi sai
FAR (false acceptance rate) ca nó còn khá cao. Vi:
3
19
SN
S
n
FAR
n
→
=
SN
n
→
: email spam mà b lc nhn là non-spam.
S
n
: email spam thc sn b lc
2.2.4 Signature/ Checksum schemes:
• Ý tng:
ây là mt trong nhng phng pháp phân loi email da trên
ni dung. Khi mt email ti thì giá tr “Signature/ Checksum” sc
tính toán cho mi email này và so sánh nó vi giá tr tính c t
nhng email spam c trng trong t nhng email spam có sn trên
Internet. Nu giá tr “signature/ checksum” ca nhng email ti ging
vi bt k giá tr nào trong c s d liu thì email ó c ánh giá là
spam.
Mt cách n gin tính giá tr này là gán mt giá tr cho mi
kí t, sau ó cng tt c chúng li. S là không bình thng nu 2
email khác nhau li có chung mt giá tr “signature/ checksum”.
• c m:
Cách tn công mt b lc kiu này là thêm vào ngu nhiên mt
vài ký t hay mt câu vô ngha trong mi email spam to ra s
khác bit ca giá tr “signature”. Khi bn thy nhng th hn tp chèn
ngu nhiên trong phn tiêu (subject) ca email, ó chính là cách
tn công b lc da vào “signature/ checksum”.
Các spammer d dàng i phó i vi các b lc da trên
“signature/ checksum” bng phng pháp trên. Khi mà nhng ngi
vit các chng trình lc email tìm c cách chng li cách chèn
20
ngu nhiên này thì các spammer li chuyn sang cách khác. Vì th,
cách chng spam dùng các b lc “signature/checksum” cha bao gi
là mt cách tt.
B lc này c ng dng ti mc server,c các nhà cung
cp dch v mng (ISP) s dng.
Theo P.Graham [5], b lc kiu này ch lc khong 50-70%
spam
u im ca b lc này là ít khi phân loi sai email non-spam.
Brightmail
4
là phn mm chng spam da trên hng tip cn
này. Cách hot ng ca nó là to ra mt mng li các a ch email
gi. Bt kì email nào c gi n nhng a ch này thì u là spam
vì vi nhng email hp l thì him khi li c gi n nhng a ch
gi này. Vì vy, khi b lc nhn thy nhng email ging nhau gi n
mt a ch giã c to ra này thì nó s lc ra B lc phân bit
nhng email ging nhau da vào “signatures” ca chúng.
2.2.5 Genetic Algorithms:
• Ý tng:
B lc da trên thut toán di truyn (Genetic Algorithms) s
dng các b nhn dng c trng (“fearture detectors”) ghi m
(score) cho mi email. Thc t, nhng “fearture detectors” này là mt
tp các lut c xây dng da trên các kinh nghim ã có (empirical
rules) và áp dng vào mi email thu v mt giá tr s.
Thut toán di truyn này c biu din là nhng cây (trees)
và c kt hp vi mt tp hun luyn cùng vi mt hàm thích hp
“fitness function”.
4
21
ch tin hóa (Evolutionary mechanism) ca thut toán
:thut tóan thc hin hai thao tác c bn là phép lai “crossover” và t
bin “mutation”. Mc ích tin trình này là tìm ra c mt giá tr
“score” nh nht da vào hàm “fitness function”. Giá tr “score” sau
ó sc s dng phân loi email là spam hay non-spam.[6]
• c m:
ây là hng tip cn phân loi email da trên ni dung.
ng tip cn hiu qu nht cho b lc ti mc ISP c
ánh giá là da trên thut toán di truyn “Genetic Algorithms” [6]
im không thun li ca thut toán di truyn là òi hi kh
ng x lý phi ln.
ng tip cn này c ng dng trong trình lc spam
Spamassassin
5
. Nó hot ng rt hiu qu ti mc ISP và c nhiu
ngi ánh giá là mt trong nhng b lc hot ng hiu qu nht ti
mc ISP.
im yu ca trình lc “Spamassassin” là hot ng vi hiu
qu cha cao ti mc ngi dùng cá nhân.
2.2.6 Rule-Based (hay là Heuristic):
• Ý tng:
Da vào lut tìm kim các mu có du hiu là spam nh các t
và ng xác nh, hàng lot các ch hoa và du chm than, phn header
ca email sai nh dng, ngày trong email là tng lai hoc quá
kh.ó là cách hu ht phn ln các trình lc spam hot ng t nm
2002.
• c m:
5
22
Hiu sut ca trình lc da trên lut (rule-based filters) khác
nhau rt nhiu. Cách n gin nht là loi b các email mà có cha
nhng t xu nào ó (ví d nhng t mà thng xut hin nhiu hay
ch xut hin trong spam). Nhng ây cng là im yu các
spammer có th li dng qua mt các b lc kiu này bng cách c
gng tránh s dng nhng t xu và thay bng nhng t “tt” -c
s dng nhiu trong email non-spam. Trong khi ó các email non-
spam thì b loi b nu vô tình cha mt vài t “xu” dng này. iu
này, dn n kh nng lc sai còn cao.
Mt u bt li khác là các lut dng này u là tnh. Khi các
spammer tìm ra c mt phng pháp mi t qua thì nhng
ngi vit trình lc li phi vit nhng lut mi lc các spam.
Nhng spammer chuyên nghip thì có th kim tra c nhng email
trên các h thng lc da trên lut trc khi gi chúng i.
Nu b lc c xây dng da trên lut phc tp thì vn phát
huy tác dng lc spam hiu qu. Ví d nh trình lc Spamassassin
lc lên n 90-95% spam.
Mt u thun li là b lc da trên lut tnh thì d cài t.
2.2.7 Challenge-Response:
• Ý tng:
Khi bn nhn c email t ai ó mà cha h gi cho bn trc
ó thì h thng lc challenge-response
6
gi ngc li 1 email yêu cu h
phi n 1 trang web và in y thông tin vào form trc khi email
chuyn cho ngi dùng.
• c m:
6
/>
23
Li th ca h thng này là lt li rt ít spam. u bt li ca
nó can thip thô bo n ngi gi. Bng cách s dng h thng này, ta
cn xác nh rõ ai là ngi gi email.
Mt m bt li khác ca h thng này là có nhiu email non-
spam b loi b và thi gian trì hoãn quá lâu. Ví d nh mt ngi mun
mi bn i d tic nhng ngi bn y s ch thy email tr li ca bn
vào ngày hôm sau và n lúc ó thì ã quá tr.
Nhiu trng hp ngi gi s không tr li cho các thông p
kiu này và email h gi s b tht lc.
S dng phng pháp dng này chng khác nào ta ang t cô lp
chính mình vi mi ngi xung quanh. H thng này s ging nh bc
ng bao quanh th gii luôn mun gi thông p cho ta.
2.2.8 Machine Learning ( Máy hc ):
• Ý tng:
Áp dng các png pháp máy hc trong các bài toán phân loi,
c bit là phân loi vn bn vào bài toán phân loi email, các thut toán
máy hc nh Naïve Bayesian [9],[17],[18] AdaBoost [13], Suppor
Vector Machine[18], , ã c s dng trong lnh vc phân loi vn bn,
nhn dng, …vi hiu qu cao. Ý tng là tìm cách xây dng mt b
phân loi nhm phân lai cho mt mu mi bng cách hun luyn nhng
mu ã có sn.
• c m
Phng pháp này có th áp dng mc Server hay Client.
Hn ch là cn phi có mt kho ng liu (corpus) hun luyn ban
u cho máy hc, vic hun luyn mt nhiu thi gian. Mt hn ch
na là hiu qu phân loi ph thuc vào kho ng liu dùng hun
luyn.
24
2.3 Phng pháp la chn :
Trong nhng hng tip cn ã tìm hiu, chúng tôi chn hng tip cn
phân loi email bng phng pháp máy hc, phng pháp này có hiu qu cao,
ng thi cng rt khó b các spammer vt qua. Ngoài ra, hng tip cn này
có th áp dng c mc Client
C th hng tip cn mà nhóm chúng tôi tìm hiu và th nghim là
phân loi email da trên thut toán hun luyn Naïve Bayes và Adaboost, hai
phng pháp này có mt s u im sau:
§ Hiu qu phân loi trong các lnh phân loi vn bn, nhn dng
ã c kim chng và khá cao
§ Thích hp cho tng ngi dùng c th và mc Client
§ Có kh nng t hc phân loi úng.
§ ng tip cn còn khá mi.
2.4 Các ch sánh giá hiu qu phân loi email :
2.4.1 Spam Recall và Spam Precision:
tin li cho vic so sánh, ngi ta a ra hai ch sánh giá là spam
recall và spam precision.
Spam recall là t l phn trm gia s email –c b lc coi là spam - b
chn li và tng s email spam (thc s ) n b lc
Spam Precision là t l phn trm gia s email b chn thc s là spam
vi s email b chn -c b lc coi là spam, spam precision ánh giá mc
an toàn ca b lc.
Công thc tính Spam Recall (SR) và Spam Precision(SP) nh sau:
SS
SS SN
n
SR
nn
−>
−> −>
=
+
Công thc 2-1 :Công thc tính Spam Recall
25
SS
SS NS
n
SP
nn
−>
−> −>
=
+
Công thc 2-2 : Công thc tính Spam Precesion
Vi :
ü n
SS >−
là s email là spam mà b lc nhn ra là spam
ü n
NS >−
là s email là spam mà b lc nhn ra là email non-spam
ü n
SN >−
là s email non-spam mà b lc nhn ra là spam
2.4.2 T l li Err (Error) và t l chính xác Acc(Accuracy) :
Trong vic phân loi email, hiu qu phân loi da vào t l chính xác (Acc)
hoc t l li (Err). Công thc tính t l chính xác và t l li nh sau :
NN SS
NS
nn
Acc
NN
−> −>
+
=
+
Công thc 2-3 :công thc tính t l chính xác
NS SN
NS
nn
Err
NN
−> −>
+
=
+
Công thc 2-4 : công thc tính t l li
Vi
•
N
N và
S
N là s email non-spam và s email spam cn phân loi
•
NN
n
>−
là s email là non-spam và c b lc nhn ra là non- spam
•
SN
n
>−
là s email là non-spam mà b lc nhn ra là spam
•
SS
n
>−
là s email là spam mà c b lc nhn ra là spam
•
NS
n
>−
là s email là spam mà c b lc nhn ra là non-spam
2.4.3 T l li gia trng WErr (Weighted Error ) và t l chính xác
gia trng (Weighted Accuracy):
Trong phân loi email có hai loi li : li nhn spam ra non-spam (false
negative) và li nhn non-spam ra spam(false positive) [3]. Li th hai là li