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
2.2.2 Mail Blacklists /Whitelists: ........................................................................... 16
2.2.3 Mail volume :............................................................................................... 18
2.2.4 Signature/ Checksum schemes: ..................................................................... 19
2.2.5 Genetic Algorithms:......................................................................................20
2.2.6 Rule-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
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 din 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
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
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
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!” …
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
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
• Ý 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.
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
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
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