Tải bản đầy đủ (.docx) (35 trang)

Khóa luận tốt nghiệp toán Phân lớp Naive Bayes và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (366.76 KB, 35 trang )

TRƯỜNG ĐẠI HỌC sư PHẠM HÀ NỘI 2
‘KHÒATOÁN’
TRẦN THỊ HÀ
PHÂN LỚP NAI VE BAYES VÀ
ỨNG DỤNG
KHÓA LUẬN TỐT NGHIỆP ĐẠI
HỌC • • • •
Chuyên ngành: ứng dụng
Người hướng dẫn khoa học
TRẦN TUẤN VINH
HÀ NỘI – 2014
Phân lớp naive Bayes và ứng dụng
________•__________
LỜI CẢM ƠN
Trước tiên, tôi xin gửi lời cảm ơn chân thành và sự biết ơn sâu sắc
tới thày Trần Tuấn Vinh đã tận tình hướng dẫn tôi ừong suốt quá trình
thực hiện khóa luận này.
Tôi xin bày tỏ lời cảm ơn sâu sắc đến các thầy cô giáo đã giảng
dạy tôi trong suốt 4 năm học qua, đã cho tôi những kiến thức quý báu
để tôi có thể vững bước trên con đường đi của mình.
Trong quá trình góp nhặt kiến thức các thày cô bạn bè là những
người đã cùng tôi sát cánh trong suốt thời gian tôi học tập và nghiên
cứu dưới mái trường Đại học Sư phạm Hà Nội 2.
Trong những nỗ lực đó, không thể không kể đến công lao to lớn
không gì có thể đền đáp được của cha mẹ những người đã sinh thành,
dưỡng dục tôi nên người, luôn nhắc nhở động viên tôi hoàn thành tốt
nhiệm vụ.
Hà Nội, tháng 5 năm 2014 Sinh viên
Trần Thị Hà
Phân lớp naive Bayes và ứng dụng
LỜI CAM ĐOAN


Tôi xin cam đoan đề tài “ P H Â N L Ớ P N A I V E B A Y E S V À
Ứ N G D Ụ N G ” là kết quả mà tôi đã trực tiếp nghiên cứu, tìm hiểu
được. Trong quá trình nghiên cứu, tôi có sử dụng tài liệu của một số tác
giả khác. Tuy nhiên, đó chỉ là cơ sở để tôi rút ra được vấn đề càn tìm
hiểu ở đề tài của mình. Đây là kết quả của riêng cá nhân tôi, hoàn toàn
không trùng khớp với kết quả của tác giả nào khác.
Nếu sai tôi xin chịu hoàn toàn trách nhiệm.
Hà Nội, tháng 5 năm 2014 Sinh viên
Trần Thi Hà
Phân lớp naive Bayes và ứng dụng
MỤC LỤC ■ •
Phân lớp naive Bayes và ứng dụng
MễDU
Xac suõt thụng kờ l bụ mon rõt quan trong v cụ nhiốu urng dung trong
thuc tờ, giỹp con ngui rut ra thụng tin tir dỷ lieu quan sõt, nhọm giõi quyờt cõc
bi toõn trong cuục sụng.
Trong khụa luõn ny trinh by mot tiờp cõn thụng kờ trong viờc du doõn
su: kiờn dua vo li thuyờt Bayes. L thuyờt nụi vờ viờc tinh xac suõt cua su
kiờn dua vo cõc kờt quõ thụng kờ cõc su kiờn trong quọ khu. Sau viờc tinh
toõn mụi su kiờn duoc gõn xac suõt (tựy thuục vo mụi phuong phõp dõnh giõ)
ựng voi kh nang cụ thờ xõy ra vai su kiờn dụ. V cuụi cựng dua vo nguong
dộ phõn loai cho cõc su kiờn.
Sau phõn li thuyờt chung chung ta sở tim hiờu vờ cõc bi
toõn trong thuc tộ duoc ựng dung tự l thuyờt Bayes:
Thuõt toõn phõn loai van ban v loc thu rõc trong cõc thu
diờn tu. Naive Bayes cỹng duỗrc sỹ dung trong Matlab-mụt
ngụn ngu lõp trinh thuc hnh bõc cao duoc sỹ dung dộ giõi
quyờt cõc bi toõn vờ kù thuõt.
Phõn lụp naive Bayes v img dung
5

Chương I LÝ THUYẾT CHUNG
[1]
1.1. Biến cố ngẫu nhiên
1.1.1. Hiện tượng ngẫu nhiên
Người ta chia các hiện tượng xảy ra trong cuộc sống hàng ngày làm hai loại:
Tất nhiên và ngẫu nhiên.
- Những hiện tượng mà khi thực hiện ừong một điều kiện sẽ cho ra kết quả
như nhau được gọi là H I Ệ N T Ư Ợ N G T Ấ T N H I Ê N .
- Những hiện tượng mà cho dù khi được thực hiện ở ừong cùng một điều kiện
vẫn có thể cho ra các kết quả khác nhau được gọi là những H I Ệ N T Ư Ợ N G
N G Ẫ U N H I Ê N .
- Hiện tượng ngẫu nhiên chính là đối tượng khảo sát của lí thuyết xác suất.
1.1.2. Phép thử và biến cố
- Để quan sát các hiện tượng ngẫu nhiên, người ta cho các hiện tượng này
xuất hiện nhiều lần. Việc thực hiện một quan sát về một hiện tượng ngẫu
nhiên nào đó, để xem hiện tượng này có xảy ra hay không được gọi là một
phép thử.
- Khi thực hiện một phép thử, ta không thể dự đoán được kết quả xảy ra. Tuy
nhiên ta có thể liệt kê được tất cả các kết quả có thể xảy ra.
- Tập họp tất cả các kết quả có thể xảy ra của một phép thử được gọi là không
gian mẫu của phép thử kí hiệu Q. Biến cố không thể xảy ra được gọi
là biến cố rỗng kí hiệu Ộ .
- Biến cố ngẫu nhiên là biến cố có thể xảy ra hoặc không xảy ra khi thực hiện
phép thử.
- Biến cố sơ cấp là biến cố không thể phân tích được nữa.
Phân lớp naive Bayes và ứng dụng
6
1.1.3. Quan hêgiüa câc bien cô
- Quan hê kéo theo: Bien cô A dugc goi là kéo theo bien cô B khi và chî khi A
xày ra thi B xây ra. Ki hiêu: A Œ B

- Quan hê tuong duong: Hai bien cô A và B dugc goi là tuong duong voi nhau
khi và chî khi A C Z B và ßcA.Ki hiêu: A = B
- Tông cüa hai bién cô: Bién cô C dugc goi là tông cüa hai bién cô A và B, ki
hiêu: C = Aufi hay C = A + B , C xây ra khi và chi khi it nhât mot trong
hai bien cô A và B xây ra.
- Hiêu cüa hai bien cô A và B, ki hiêu C = A IB , C xây ra khi và chi khi A
xây ra nhung B không xày ra.
- Tich cüa hai bién cô A và B, ki hiêu C = A . B , C xây ra khi và chi khi câ
A lân B dêu xây ra.
- Bién cô dôi lâp: A = QIA
- Hai bién cô xung khâc A và B duoc goi là xung khâc voi nhau néu
A B = ( F >
1.2. Xac suât cua biên cô
1.2.1. Dinh nghîa xac suât dang co dien
Xét mot phép thü voi không gian mâu Q={ A >
L
, C O
2
, . . . , C O
N
} và biên

A cz Q cô k phân tü. Nêu n biên cô sa câp cô cùng khâ näng xây ra thi xac suât cüa
biên cô A dugc dinh nghîa là
k: Sô phân tü cüa A n: Sô phân tü cüa Q
1.2.2. TTNH CHÂT CÜA XAC SUÂT
1. Nêu A là biên cô tùy y thi 0 < P(A) < 1
Phân lớp naive Bayes và ứng dụng
7
Phân lớp naive Bayes và ứng dụng

8
2. P(^) = 0
3. P { Q) = l
4. Nêu A Œ B thï P(A)<P ( B )
1.3. Công thirc tinh xac suât
1.3.1. Công thü'c công xac suât
Xét phép mot thü, ta cô càc công thüc công xac suât sau:
- Nêu A và B là hai bién cô tùy ÿ: P ( A ufi) = P ( A ) + P ( B ) - P ( A B )
- Nêu A và B là hai bien cô xung khac thi P ( A ^ J B ) = P ( A ) +
P ( B ) Nêu ho {Ai} (i=l,2, ,,n) xung khac tùng dôi thi
P(A
l
vA
2
u uA
n
) = P(A
l
) + P(A
2
) + + P(A
n
)
Chu ÿ: P(A) = 1-P(À),P(A) = P(AB) + P(ÀB)
1.3.2. Xac suât cô dieu kiên
1.3. 2 . 1 . D I N H N G H I A : Cho bien cô B vôi P { B ) > 0.
Xac suât cüa A khi biêt B xây ra là:
P(AI*) = ^
P(B)
Khi biêt B xây ra, xac suât cüa A IB ti le vai A . B , vây:

p{A
'
B)=P
m
Voi k là hê sô ti le dê tinh k, ta chon A = B .
Vây:
1 = P(B\B) = k.P(BB) = k.P(B)
Do dô: K —
Phân lớp naive Bayes và ứng dụng
9
võy:
Nhõn xột: Khi tinh P(AIB) vai dieu kiờn B dõ xõy ra, nghùa l ta da han chờ
khụng gian mõu Q xuụng con B v han chờ A xuụng con AflB.
Tinh chõt
1) 0 < P ( A Iặ) < 1, VA c Q
2) NờuAcC thù P ( A \ B ) < P ( C \ B )
3) P(A\B) = l-P(A\B)
1.3.2.2. Su kiờn dục lõp
Cho khụng gian xc suõt (Q , C,P), A, B e C. A v B dugc goi l dục lõp vai
nhau P { A B ) = P { A ) P { B )
1.3.3. Cụng thỹc xc suõt ton phõn
Cho khụng gian xc suõt (Q ,C,P). Giõ su AI,A
2
, .,A
n
l nhụm dõy du su kiờn
v B l su kiờn bõt ki trong C.
Khidụ: P(B) = '^P(A
l
).P(BlA

i
)
ẻ =1
1.4. Cụng thỹc
Bayes Dinh ly
Bayes
Binh li Bayes cho phộp tinh xc suõt xõy ra cỹa mot su kiờn ngõu nhiờn A khi
biờt su kiờn lien quan B dõ xõy ra. Xc suõt ny dugc ki hiờu l P { A I B ) v doc
l xc suõt cỹa A nờu cụ B. Bai luỗmg ny duỗrc goi l xc suõt cụ dieu kiờn hay
xc suõt hõu nghiờm vi nụ duỗrc rut ra tự giõ tri dugc cho cỹa B hoac phu thuục
vo giõ tri dụ.
Theo dinh li Bayes, xõc suõt xõy ra A khi biờt B sở phu thuục vo 3
r r
/V J /\
yeu to:
Xõc suõt xõy ra A cỹa riờng nụ, khụng quan tõm dộn B, ki
hiờu l P(A) v doc l xõc suõt cỹa A, dõy dugc goi l xõc
suõt tien nghiờm, nụ l tien nghiờm theo nghùa rang nụ khụng
quan tõm dờn bõt ki thụng tin no vờ B.
Phõn lp naive Bayes v ng dng
1
0
- Xâc suât xây ra B cüa riêng nô, không quan tâm dén A, ki hiêu là P { B ) và
doc là “xâc suât cüa B”. Dai luçmg này côn duoc goi là hang sô chuân hôa,
vi nô luôn giông nhau, không phu thuôc vào su kiên A dang muôn biêt.
- Xâc suât xày ra B khi biêt A xày ra, ki hiêu là P ( B I À ) và doc là “xâc
suât cüa B vôi dieu kiên A”. Nô là mot xâc suât hâu nghiêm và P { B ) là
mot xâc suât tien nghiêm cüa B. Dai luçmg này duoc goi là khâ nang xày ra
B khi biêt A da xày ra. Chu y không nhâm lân giüa khâ nang xày ra A khi
biêt B và xâc suât xày ra B khi biêt A.

Khi biêt 3 dai luçmg này xâc suât cuà A khi biêt B cho bôi công thüc:
PÇBIAmA)
P(B)
Tù do ta co: P ( A I B ) P ( B ) = P ( A nfi) = P ( B I A ) P { A )
Tông quàt: Cho không gian xâc suât (Q,C,P), giâ su Ai,A
2
, ,A„ là nhôm dây
dü su kiên và B là su kiên bât ki trong C, biêt xâc suât P { A
I
) và
P ( B I A
l
,), i=l, ,n. Giâ thiêt phép thü duoc thuc hiên và su kiên B xày ra.
mm-
P
<4W*I4)
Khi dô:
Y
J
P(A
i
)AB\A
k
)
k=1
Xâc suât P ( A
T
IB ) duoc goi là xâc suât hâu nghiêm, côn P ( A
I
) goi là

xâc suât tien nghiêm.
Vi du suy luân Bayes âom giân
Bânh quy tù hôp nào?
Dê minh hoa, giâ su cô hai hôp dung dây bânh quy. Hôp thü nhât cô 10 chiêc
bânh quy sôcôla và 30 chiêc bânh quy bo. Hôp thü hai dung môi loai bânh 20
chiêc. Bé Khoai chon ngâu nhiên mot hôp, rôi nhat dai mot chiêc bânh. Ta cô thé
giâ thiét rang bé Khoai côn rât nhô nên không phân biêt hôp này hôp kia và bé
thich tât câ câc loai bânh keo nên bânh loai nào vai bé cüng vây. Và chiéc bânh mà
Phân lớp naive Bayes và ứng dụng
1
1
bé Khoai chon là mot chiéc bânh quy ba. Vây khâ nâng Khoai nhat chiêc bânh dô
tir trong hôp thù nhât là bao nhiêu?
Mot câch truc quan, cô vé rô rang là câu trâ loi phâi Ion hon 1/2, do trong hôp
1 cô nhiêu bânh quy ba han. Câu trâ loi chinh xâc duac tinh theo dinh lÿ Bayes. Giâ
sü H \ tuang ùng vai hôp 1 và H
2
tuang üng vai hôp 2. Ta biêt rang dôi vai bé
Khoai, hai hôp là nhu nhau, do dô, P { H
X
) = P ( H
2
) , và tông cüa chüng phâi
bang 1, do dô câ hai dèu bang 0.5. Dû lieu D là quan sât vê chiêc bânh quy ba. Tù
nôi dung cüa hai hôp bânh, ta biêt rang P I D L H , ) = 30/40 = 0.75 và P ( D \ H
2
)
= 20/40 = 0.5. Khi dô, công thüc Bayes cho ra kêt quâ:
«S. 10) =__________J-TO-ftP
1

«.)___________
=
0-5*0.75

l
).P(D \H
l
) + PiH
1
).P(D IH,J 0.5*0.75 + 0.5*0.5
Trtrac khi quan sât thây chiêc bânh mà bé Khoai nhat, xâc suât cho viêc Khoai
chon hôp 1 là xâc suât tièn nghiêm,P ( H
}
) , CÔ giâ tri 0.5. Sau khi da nhin thây
chiêc bânh, ta chinh lai xâc suât dô thành P { H
1
1 D ) , CÔ giâ tri 0.6.
Nên luu y là viêc ta tin rang viêc quan sât thây chiêc bânh quy ba nên cô ânh
huang theo câch nào dô tai xâc suât tien nghiêm P ( H
I
) da tao nên xâc suât hâu
nghiêm P ( H I d), vai giâ tri tang tù 0.5 lên 0.6. Dieu này phân ânh truc giâc cüa ta
rang chiêc bânh cô khâ nang duac lây tù hôp 1 han, do hôp này cô ti le bânh quy ba
so vai bânh quy sôcôla cao han hôp kia. Quyêt dinh duac cho duai dang mot xâc
suât, dieu này khâc vai thông kê cô diên.
Chương II
GIỚI THIỆU VỀ PHÂN LỚP NAÏVE BAYES VÀ PHÂN TÍCH ■
TRONG KHAI PHÁ DỮ LIỆU
2.1. Kỹ thuật phân lớp dữ liệu trong khai phá dữ liệu
Phân lớp naive Bayes và ứng dụng

1
2
Kĩ thuật phân lớp dữ liệu trong khai phá dữ liệu là một trong những vấn đề
nghiên cứu mở rộng hiện nay; tập trung chủ yếu vào thống kê, học máy và mạng
nơron. Kĩ thuật phân lớp được đánh giá là một kĩ thuật khai phá dữ liệu được sử
dụng rộng rãi nhất với nhiều mở rộng. Sự kết hợp của kỹ thuật phân lớp và cơ sở
dữ liệu là một lĩnh vực hứa hẹn bởi vì đáp ứng được một vấn đề hết sức quan trọng
của ứng dụng cơ sở dữ liệu đó là tính uyển chuyển cao.
2.2. Giới thiệu phân lớp naive Bayes
2.2.1. Định nghĩa
Phân lớp naive Bayes là một phương pháp phân lớp đơn giản dựa trên các ứng
dụng định lí Bayes với giả định độc lập bền vững. Một thuật ngữ mô tả chi tiết cho
những mô hình xác suất sẽ là “mô hình đặc trưng không phụ thuộc”.
Theo thuật ngữ đơn giản, một phân lớp naive Bayes giả định rằng sự có mặt
(hay không có mặt) của một đặc trưng của một lớp là không liên quan đến sự hiện
diện (hay thiếu vắng) của bất kì các đặc trưng.
Ví dụ: Một trái cây có thể được coi là một quả táo nếu có màu đỏ chung
quanh và đường kính khoảng 10 cm. Mặc dù các đặc trưng này phụ thuộc vào sự
tồn tại của các đặc trưng khác, phân lớp naive Bayes xem xét tất cả các đặc tính
độc lập góp phần vào khái niệm trái cây này là quả táo.
Tùy thuộc vào tính chính xác bản chất của mô hình xác suất,
phân lớp naive Bayes có thể được tạo ra rất hiệu quả trong
học máy. Trong nhiều ứng dụng thực tế, tham số ước lượng cho
các mô hình naive Bayes sử dụng các phương pháp maximum
likelihood (ước lượng hợp lí cực đại), nói cách khác,
với phương pháp này một ứng dụng dựa ừên mô hình naive Bayes thì sẽ
không phải sử dụng xác suất Bayes cũng như phương pháp Bayes.
Mặc dù với giả định đơn giản hơn nhưng dễ nhận thấy rằng phân lớp naive
Bayes thường hoạt động khá tốt trong nhiều tình huống phức tạp. Vào năm 2004
phân tích các vấn đề của phân lớp Bayes đã cho thấy rằng có một số giả thuyết giải

thích cho tính hiệu quả của phân lớp naive Bayes.
[2]
So sánh toàn diện với các
Phân lớp naive Bayes và ứng dụng
1
3
phương pháp phân lớp ừong năm 2006 cho thấy phân lớp Bayes làm tốt hơn bởi
nhiều tiếp cận như là boosted trees hoặc random forests.
[3]
Một lợi thế của phân lớp naive Bayes là nó đòi hỏi một số lượng nhỏ dữ liệu
huấn luyện để ước lượng các tham số (giá ừị trung bình và phương sai của các
tham số) cần thiết cho việc phân loại. Bởi vì các biến được giả định là độc lập, chỉ
những phương sai của các tham số cho mỗi lớp càn được xác định rõ và không phải
toàn bộ ma trận hiệp phương sai.
2.2.2. Các mô hình xác suất naive Bayes
Mô hình xác suất cho một phân lớp là một mô hình có điều kiện phụ thuộc
biến c với một số lượng nhỏ của các kết quả hay các lớp, phụ thuộc một vài biến
đặc trưng F ! cho tới F
n
p{ C\ F
l
,. ,F
n
)
Vấn đề là nếu lượng đặc trưng n là lớn hay khi một đặc trưng có thể chiếm
một số lượng lớn các giá trị, thì dựa vào một mô hình trên bảng xác suất thì không
thể làm được. Bởi vậy chúng ta nâng cấp các mô hình để dễ xử lý.
Bằng cách sử dụng định lý Bayes có được:
P(Fi,-,F
n

)
Trong thực hành, chỉ cần quan tâm tới tử số của phân số, khi mà mẫu số không
phu thuôc vào C và càc già tri cüa càc däc tnmg cüa F i dà cho nên mâu sô là häng.
Tü sô tuong duang voi mô hinh xàc suât:
p(Ç\F
l
, ,F
n
)
Tü sô cô thê duoc viêt lai nhu sau, su dung dinh nghïa cüa xâc suât cô dièu
kiên:
P
(C I F
l
, ,F
n
)
= P(C)-P(F
i
, ,F
n
)
= piQ.piF, I C).p(F
2
, ,F
n
I C,Fj)
= piQ.piF, I C).p(F
2
I C,F

1
)p(F
3
, ,F
n
I C,F„F
2
)
Phân lớp naive Bayes và ứng dụng
1
4
= piQ.piF, I C).p(F
2
I C,F
1
).p(F
3
I C,F
1
,F
2
)p{F
4
, ,F
n
I C,F„F
2
,F, )
= p(c\p(F
x

I C}P(F
2
1 C,F
1
}p{F31 C,F
lt
F
2
y.p(F
M
I C
t
F
lt
F
2t
F
3t

t
F^)
Bây gio giâ dinh “naive” cô dieu kiên dôc lâp: Giâ dinh rang môi dac trung Fj
cô dièu kiên dôc lâp vai tât câ câc dac trung Fj vai j # i. Dièu này cô nghïa là:
p(F
l
\C,F
J
) = p(F
l
\C)

Do dô cô thê duoc thuc hiên nhu sau:
p(c,f
1
F,)= /-(c)p(î; I C}p{F
2
I
C\p{F, I c) = p(c)np{F, I c)
i=1
Dieu này cô nghïa là duoi nhüng giâ dinh dôc lâp a trên, câc dieu kiên phân
phôi trên câc lop bién C cô thê duoc thé hiên:
p(C\F
l
, ,F") = -^-P(c>np(F, I C)
^ /=1
Ô dây Z là mot nhân tô xâc dinh tÿ le phu thuôc vào Fi, .,F
n
, chang han mot
häng sô nêu câc giâ tri cüa càc bien dac trung dêu duoc biêt.
Nêu cô k lop và nêu mot mô hinh cho P { F
I
IC = c) cô thê duoc
thê hiên
Phân lớp naive Bayes và ứng dụng
1
5
ừong các thuật ngữ của r tham số, sau đó các mô hình naive Bayes tương ứng
có (k-1) + nrk tham số. Trong thực tế, thường k=2 (phân loại nhị phân) và r = 1
(phân phối Bernoulli) là phổ biến và như vậy tổng số lượng các tham số của mô
hình naive Bayes là 2n+l, ở đây n là số các đặc trưng nhị phân sử dụng cho các dự
đoán.

2.2.3. ước lượng tham số
Tất cả các mô hình tham số (lớp tiền nghiệm và hàm phân phối xác suất đặc
trưng) có thể được xấp xỉ với những tàn số tương đối trong tập huấn luyện.
Maximum likelihood là ước lượng của xác suất. Một lớp tiền nghiệm có thể được
tính bằng cách giả sử các lớp có xác suất ngang nhau. Prior = 1/số lớp hoặc tính
bằng cách ước lượng cho lớp xác suất từ tập huấn luyện (tiền nghiệm cho một lớp
đã đưa ra = số mẫu trong lớp/tổng số mẫu). Để ước lượng các tham số cho hàm
phân phối đặc trưng hoặc mô hình sinh ra không phải tham số cho những đặc trưng
từ tập huấn luyện.
[4]
Nếu tham số đang giải quyết những dữ liệu liên tục, một giả
thuyết đặc trưng đó là tiếp tục kết họp những giá ừị với mỗi lớp được phân phối
theo phân phối Gaussian.
Ví dụ: Giả sử tập huấn luyện chứa liên tiếp một thuộc tính X. Đầu tiên chúng ta
phân đoạn dữ liệu bởi các lớp sau đó tính toán số trung bình và phương sai của X
trong mỗi lớp. Đe J U
C
là giá trị trung bình của X kết họp với
lớp c và ĐỂ <7
C
2
là phương sai của giá trị X KẾT họp với lớp c thì
xác suất của một vài giá trị ĐÃ cho trong một lớp, P ( X = V I C )
có thể tính bằng cách đặt V vào phương trình cho bởi hàm phân
phối được tham số hóa bởi M C và cr
c
2
.
Phân lớp naive Bayes và ứng dụng
Phương pháp chung khác để xử lí tiếp các giá trị là sử dụng các giá trị rời rạc.

Nói chung, phương pháp phân phối là lựa chọn tốt hơn nếu sử dụng một lượng nhỏ
dữ liệu huấn luyện vì nó sẽ học để phù hợp với sự phân phối của dữ liệu. Trước đây
naive Bayes được sử dụng khi một số lượng lớn dữ liệu có thể sử dụng (giống như
nhiều mô hình tính toán phức tạp có thể thực hiện chính xác hơn), phương pháp rời
rạc thường được ưu tiên hơn phương pháp phân phối.
2.2.4. Chỉnh sửa mẫu
Nếu một lớp và giá trị đặc trưng không bao giờ xảy ra cùng với nhau trong tập
huấn luyện thì ước tính xác suất dựa vào tần số sẽ được 0. Điều này khó giải quyết
vì nó sẽ xóa tất cả các thông tin trong các xác suất khi chúng được nhân rộng. Vì
vậy, mong muốn kết họp một mẫu nhỏ chỉnh sửa trong tất cả xác suất, ước tính
rằng xác suất như vậy không bao giờ được thiết lập chính xác 0.
2.2.5. Xác định một phân lớp từ mô hình xác suất
Các thảo luận cho đến nay đã bắt nguồn tò những mô hình đặc trưng độc lập,
đó là, mô hình xác suất naive Bayes. Phân lớp naive Bayes kết hợp mô hình này
với một luật quyết định. Đó là một luật chung để chọn ra các giả thuyết có khả
năng xảy ra nhất, điều này được biết đến như là M A X I M U M A P O S T E R I O R I
hay luật quyết định MAP. Phân lớp tương ứng được xác định như sau:
Classify f
n
) = argmax
c
p(C = c)Ỹ\p(Fị = f ị \ C = c )
I =1
Sự thật có thể áp dụng rộng rãi các giả định độc lập nhưng chúng thường
không chính xác, phân lớp naive Bayes có vài thuộc tính làm cho nó hữu ích trong
thực hành. Đặc biệt, sự tách riêng của lớp có điều kiện phân phối đặc trưng có
nghĩa là mỗi phân phối có thể được ước tính độc lập như là một phân phối một
chiều. Điều này giúp giảm bớt những vấn đề bắt nguồn từ những ừở ngại của kích
thước như yêu cầu của bộ dữ liệu đó là quy mô theo cấp số nhân. Toàn bộ phân lớp
Phân lớp naive Bayes và ứng dụng

1
7
là mạnh đủ để bỏ qua các thiếu sót nghiêm trọng của nó ừong những mô hình xác
suất naive.
2.2.6. Phương pháp phân lớp Bay es
Lý thuyết Bayes cung cấp một tiếp cận theo xác suất để suy diễn. Nó dựa trên
giả thuyết rằng số lượng của khuynh hướng bị chi phối bởi phân bố xác suất và
quyết định tối ưu có thể được tạo bởi sự suy luận về những xác suất đi liền với dữ
liệu được quan sát. Đây là vấn đề quan ừọng của học máy bởi vì nó cung cấp một
tiếp cận định lượng cho việc xem xét cẩn thận bằng chứng hỗ trợ những giả thuyết
thay đổi.
Học theo xác suất: Tính các xác suất rõ ràng cho các giả thuyết, một ừong
những hướng thiết thực cho một số vấn đề thuộc loại học.
Tính tăng dàn: Mỗi ví dụ huấn luyện có thể tăng hoặc giảm dần khả năng
đúng của một giả thuyết. Kiến thức trước có thể kết họp với dữ liệu được quan sát.
Tiên đoán xác suất: Tiên đoán nhiều không gian giả thuyết, được đo bởi xác
suất của nó.
Tiêu chuẩn: Thậm chí khi phương thức Bayes khó tính toán, chúng cũng cung
cấp một tiêu chuẩn tốt nhất cho việc tạo quyết định tối ưu so với những phương
pháp khác.
2.2.7. Giới thiệu thuật toán naive Bayes
Naive Bayes (NB) là phương pháp phân loại dựa vào xác suất được sử dụng
rộng rãi ừong lĩnh vực học máy [Mitchell, 1996] [Joachims, 1997] [Jason, 2001],
được sử dụng làn đàu tiên ừong lĩnh vực phân loại bởi Maron vào năm 1961
[Maron, 1961] sau đó ừở nên phổ biến dùng trong nhiều lĩnh vực như trong các
công cụ tìm kiếm [Rijsbergen et al, 1970], các bộ lọc email [Sahamietal, 1998]
2.2.8. Phân lớp naỉve Bayes
Bộ phân lớp naive Bayes hay bộ phân lớp Bayes đơn giản (simple Bayes
classifier) hoạt động như sau:
Phân lớp naive Bayes và ứng dụng

1
8
1. Gọi D là tập dữ liệu huấn luyện, ừong đó mỗi phần tử dữ liệu X được biểu
diễn bằng một vectơ chứa n giá trị thuộc tính A
l5
A
2
, ,A
n
, X =
{ X
L
, X
2
, . . . . , X
N
} .
2. Giả sử có m lớp Ci,C
2
, .,c
m
; Cho một phần tử dữ liệu X, bộ phân lớp sẽ
gán nhãn cho X là lớp có xác suất hậu nghiệm lớn nhất. Cụ thể, bộ phân lớp
Bayes sẽ dự đoán X thuộc vào lớp Ci nếu và chỉ nếu:
p(c, I x) > p(Cj I x) (l < ỉ < m,ỉ * j) (1)
Giá trị này sẽ được tính dựa vào định lí Bayes:
Wi
,Z) = ™
(2)
3. Để tìm giá trị xác suất lớn nhất, ta nhận thấy trong công thức (1) thì giá trị

P ( X ) là giống nhau với mọi lớp nên ta không cần tính. Do đó ta chỉ càn
tìm giá tn lớn nhất của P ( X 1C,)* P ( C Ị ).
\
D
i \
Chú ý răng P ( C Ị ) được ước lượng băng công thức P { C Ị ) = -j^j-, trong đó
Dị là tập các phàn tử dữ liệu thuộc vào lớp Cị. Nếu xác suất tiền nghiệm P{Cị )
cũng không xác định được thì ta coi chúng bằng nhau P{C
l
) = p(c
2
) = = p(c
m
),
khi đó ta chỉ cần tìm giá ừị P ( X I C Ị ) lớn nhất.
4. Khi số lượng các thuộc tính mô tả dữ liệu là lớn thì chi phí tính toán P { X I
C Ị ) là rất lớn, do đó để làm giảm độ phức tạp, giải thuật naive Bayes giả
thiết các thuộc tính là độc lập nhau hay không có sự phụ thuộc nào giữa các
thuộc tính. Khi đó ta có thể tính:
P ( X IC,)=P(^ IC
(
) (3)
%1
Chúng ta có thể ước lượng P(jCj ICJ),P(JC
2
IC
2
),P(xilCi), , P(jc
n
IC


) từ
Phân lớp naive Bayes và ứng dụng
1
9
tập dữ liệu huấn luyện với X
K
là giá trị của thuộc tính A
K
của phần tử dữ liệu X.
Để tính toán xác suất P ( X I C Ị ) ứiì tùy vào giá trị của các thuộc tính mà ta sẽ sử
dụng các phương pháp tính toán khác nhau:
a) Nếu các A
K
được biểu diễn bằng các giá trị rời rạc thì
\D Ỉ \
P (
X
I C I C Ị : ) - 7ZTT, trong đó Dị là tập các phần tử trong D Ị có giá trị của
I Ỉ I
thuộc tính A
K
bằng X
K
.
b) Nếu các A
K
được biểu diễn bằng các giá ừị liên tục, khi đó ta giả thiết nó
tuân theo phân bố chuẩn Gauss với giá trị trung bình m và độ lệch chuẩn Ơ
và hàm mật độ g được định nghĩa như sau :

ị {x-mf
g(x,m,ơ)= r—e

2 ơ ỉ

(4)
ơyLĨĨ
Và xác suất P { X
K
I c, ) được tính bằng công thức :
P{x
k
\c
i
) = g{x
k
,ụ
k
ci

k
c
) (5)
Trong đó
M
C ’
Ơ
C là giá tậ ừung bình (mean) và độ lệch chuẩn (standard
deviation) của thuộc tính Ả
K

với điều kiện là thuộc lớp C Ị , gọi D Ị là tập hợp các
phàn tử dữ liệu thuộc vào lớp C Ị ( D Ị Œ D ) , khi đó giá trị trung bình và độ
lệch chuẩn của các thuộc tính A
K
của lớp C Ị được tính như sau:
Ví dụ 1 : Bảng dữ liệu khách hàng
Phân lớp naive Bayes và ứng dụng
2
0
ID
9
m A ■
Tuoi
Thu nhập Sinh
viên
Đánh giá tín
dụng
Mua máy
tính
1 Youth High No Fair No
2 Youth High No Exellent No
3 Middle-aged High No Fair Yes
4 Senior Medium No Fair Yes
5 Senior Low Yes Fair Yes
6 Senior Low Yes Exellent No
7 Middle-aged Low Yes Exellent Yes
8 Youth Medium No Fair No
9 Youth Low Yes Fair Yes
10 Senior Medium Yes Fair Yes
11 Youth Medium Yes Exellent Yes

12 Middle-aged Medium No Exellent Yes
13 Middle-aged High Yes Fair Yes
14 Senior Medium No Exellent No
Giả sử khách hàng X có các giá trị thuộc tính là:
X=(age=youth,mcome=medium,student=yes,creditjating=fair)
Bây giờ ta cần xác định xem khách hàng X có thuộc lớp Cyes (mua máy
tính) hay không, ta tính toán như sau:
P(Cyes)=9/l4=0.643 ; P(C
no
)=5/14=0.357;
Trước khi tính xác suất P(XIQ), ta tính các xác suất thành phần:
P(age=youthlC
yes
)=2/9=0.222
P(age=youthlC
no
)=3/5=0.6
Phân lớp naive Bayes và ứng dụng
2
1
P(income=mediumlC
yes
)=4/9=0.444
P(income=mediumlC
no
)=2/5=0.4
P(student=yeslC
yes
)=6/9=0.667
P(student=yeslC

no
)=l/5=0.200
Cuối cùng ta có xác suất P(XICj):
P(XICyes)=P(age=youthlCy
es
) * P(income=mediumlC
yes
) *
P(student=yeslC
yes
) * P(credit_rating=fairlC
yes
)
=0.222 * 0.444 * 0.667 * 0.667=0.044 PÍXICno) = 0.600 * 0.400 * 0.200 *
0.400 = 0.019 P(XIC
yes
) * P(Cy
es
) = 0.044 * 0.643 = 0.028 P(XIC„
0
) * PCQJ
= 0.019 * 0.357 = 0.007 Từ kết quả này ta thấy P(XIC
yes
)*P(Cyes) có giá trị
lớn nhất, do đó thuật toán Bayes sẽ kết luận là khách hàng X sẽ mua máy
tính.
Ví dụ 2: Giả sử chúng ta có tập dữ liệu sau (dự đoán một người có chơi
tennis không).
Ngày Ngoài
ười

Nhiệt độ Độ ẩm Gió Chơi
tennis
1 Nắng Nóng Cao Yếu Không
2 Nắng Nóng Cao Mạnh Không
3 Âmu Nóng Cao Yếu Có
4 Mưa Bình thường Cao Yếu Có
5 Mưa Mát mẻ Bình thường Yếu Có
6 Mưa Mát mẻ Bình thường Mạnh Không
7 Âmu Mát mẻ Bình thường Mạnh Có
Phân lớp naive Bayes và ứng dụng
2
2
8 Nắng Bình thường Cao Yếu Không
9 Nắng Mát mẻ Bình thường Yếu Có
10 Mưa Bình thường Bình thường Yếu Có
11 Nắng Bình thường Bình thường Mạnh Có
12 Âmu Bình thường Cao Mạnh Có
Tập dữ liệu x= {ngoài trời là nắng, gió là mạnh}
Cyes là biến cố anh ta chơi tennis (bất kể nắng gió ra sao)
C
no
là biến cố anh ta không chơi tennis (bất kể nắng gió ra sao)
P(X) là xác suất ngoài ừời là nắng và gió là mạnh.
P(XICyes): Xác suất ngoài ừời là nắng và gió là mạnh nếu biết rằng anh
ta có chơi tennis.
P(C
yes
IX): Xác suất rằng anh ta chơi tennis nếu biết rằng ngoài trời là
nắng và gió là mạnh.
Bây giờ cần xác định xem anh ta có chơi tennis không nếu biết rằng ngoài

trời là nắng và gió là mạnh.
Ta có:
+) P(Cyes)=8/12, P(C„o)=4/12
+) P(ngoài ừời là nắnglC
yes
)=2/8, P(gió là mạnhlCyes)=3/8
+) P(ngoài trời là nắnglC
no
)=3/4, P(gió là mạnhlC
no
)=2/4
P(XIC
yes
)= P(ngoài trời là nắnglCyes)* P(gió là mạnhlCyes)
=2/8*3/8=0.09375 P(XIC
no
)= P(ngoài trời là nắnglCno)* P(gió là mạnhlCno)
=3/4*2/4=0.375 P(XIC
yes
)*P(C
yes
)=0.09375*8/12=0.0625 P(XICno)
Phân lớp naive Bayes và ứng dụng
2
3
*P(C
no
)=0.375*4/12=0.125 Từ kết quả này ta thấy P(XIC
no
)*P(Cno) có gía tri lớn

nhất, do đó thuật toán Bayes sẽ kết luận là anh ta không chơi tennis.
Trong quá trình tính toán công thức (3), ta có thể gặp trường họp
P ( X
K
I C
(
) = 0. Ví dụ trường hợp thuộc tính A
K
là giá trị rời rạc thì giá trị
£)*
P { X
K
I C Ị ) được tính theo công thức P { X
K
I C Ị ) = Ị^-Ị-
5
khi D Ị =0 ứiì
P ( X
K
I C Ị ) = 0. Điều này có nghĩa là P { X
K
I C Ị ) ứieo công ứiức (3) sẽ có giá
trị là 0. Để tránh trường họp này xảy ra, ta có thể sử dụng công thức ước lượng
Laplace , công thức Laplace có rất nhiều dạng tùy thuộc vào các bài toán khác
nhau, trong trường hợp cụ thể này ta có thể sử dụng công thức:
/ Ï
L + D
I X
P ( X
K

\ C Ị ) = — trong đó m là số lương lớp, ta có thế nhân thấy ở tử số
Dị +m
đã được cộng thêm giá ừị 1 nên nó sẽ tránh được trường hợp P { X
K
I C Ị ) = 0.
Một ví dụ cụ thể, giả sử lớp Cyes có 1000 phần tử dữ liệu, trong đó không có phần
tử nào có gá trị thuộc tính thu nhập income=low, có 990 phần tử dữ liệu có income
= medium và 10 phàn tử dữ liệu có income=high. Nếu không sử dụng ước lượng
Laplace thì xác suất của P { X
K
I C
Y E S
) tương ứng sẽ là : 0/1000
=0; 990/1000=0.990 và 10/1000=0.010. Khi sử dụng ước lượng Laplace thì các xác
suất sẽ tương ứng là 1/1003=0.001; 991/1003=0.998 và
11/1003=0.011, như vậy ta đã giải quyết được vấn đề của công
thức (3).
Phân lớp naive Bayes và ứng dụng
2
4
Chương III ỨNG DỤNG CỦA BAYES
3.1. Thuật toán phân loại văn bản naive Bayes
Kĩ thuật phân hoạch của naive Bayes dựa trên cơ sở định lý Bayes và đặc
biệt phù hợp cho các trường họp phân loại có kích thước đầu vào là lớn. Mặc
dù naive Bayes khá đơn giản nhưng nó có khả năng phân loại tốt hơn rất nhiều
phương pháp phân hoạch phức tạp khác. Với mỗi loại văn bản, thuật toán
naive Bayes tính cho mỗi lớp văn bản một xác suất mà tài liệu cần phân hoạch
có thuộc loại đó. Tài liệu đó sẽ được gán cho lớp văn bản nào có xác suất cao
nhất.
Xác suất P ( F K I ^ Ì ) gọi là xác suất mà tài liệu di có khả năng thuộc

vào lớp văn bản c
k
được tính toán như sau:
Tài liệu di sẽ được gán cho loại văn bản nào có xác suất hậu nghiệm cao
nhất nên được biểu diễn bằng công thức:
Class of dị = argmax{p(c
fc
14.)} = arg max
ừong đó N là tổng số tài liệu.
Tóm lại phân loại văn bản sử dụng thuật toán naive Bayes có thể diễn đạt
một cách ngắn gọn như sau:
Với mỗi văn bản D (document) người ta sẽ tính cho mỗi loại một xác suất
mà tài liệu D có thể thuộc vào lớp tài liệu đó bằng việc sử dụng luật Bayes:
P{ c

k

)* P( d

i

I c

k

)
(
1
)

×