HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Nguyễn tuấn trinh
TÌM HIU PHƯƠNG PHÁP V HC NA GIÁM SÁT VÀ VIC PHÂN
LOI VĂN BN ÁP DNG VÀO BÀI TOÁN
LUẬN VĂN THẠC SỸ KỸ THUẬT
HÀNỘI–NĂM2015
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
HÀNỘI-NĂM2015
LỜI CAM ĐOAN
Tôicamđoanđâylàcôngtrìnhnghiêncứucủariêngtôi.
Cácsốliệu,kếtquảnêutrongluậnvănlàtrungthựcvàchưatừngđượcai
côngbốtrongbấtkỳcôngtrìnhnàokhác.
Tác giả luận văn
Nguyễn tuấn trinh
LỜI CẢM ƠN
Lờiđầutiênemxingửilờicảmơnđếntoànthểcácthầy,côgiáoHọcviện
CôngnghệBưuchínhViễnthôngđãtậntìnhchỉbảoemtrongsuốtthờigianhọc
tậptạinhàtrường.
EmxingửilờicảmơnsâusắcđếnPGS.TS.ĐoànVănBan,ngườiđãtrực
tiếphướngdẫn,tạomọiđiềukiệnthuậnlợivàtậntìnhchỉbảochoemtrongsuốt
thờigianlàmluậnvăntốtnghiệp.
HỌCVIÊN
Nguyễn tuấn trinh
i
MỤC LỤC
LỜI CAM ĐOAN i
1.3.2.Cáchgiảimộtbàitoánhọccógiámsát 7
1.4. Học không có giám sát 8
1.4.1.Kháiniệm 8
1.4.2.Môhìnhtoánhọc 9
1.5. Học nửa giám sát 9
1.5.1.Kháiniệm 9
ii
1.5.2.Môhìnhtoánhọc 10
1.6. Tổng kết chương 10
CHƯƠNG 2 - MỘT SỐ THUẬT TOÁN HỌC NỬA GIÁM SÁT 11
2.1. Mô hình sinh và thuật toán kỳ vọng cực đại 11
2.1.1.Giớithiệuvềmôhìnhsinh 11
2.1.2.Môhìnhsinhtronghọcnửagiámsát 11
2.1.3.Thuậttoánkỳvọngcựcđại 12
2.1.3.1.Giớithiệuthuậttoán 12
2.5.2.Ápdụngvàobàitoánphânloại 27
iii
2.5.3.ỨngdụngNaiveBayestrongphânlớpvănbản 30
2.6. Thuật toán cây quyết định 32
2.6.1.Giớithiệuthuậttoán 32
2.6.2.ThuậttoánID3 36
2.6.2.1.Entropy 36
2.6.2.2.InformationGain 36
2.6.2.3.PhátbiểuthuậttoánID3 37
2.6.3.Đánhgiáthuậttoáncâyquyếtđịnh 37
2.7. Tổng kết chương 38
CHƯƠNG 3 - PHÂN LOẠI VĂN BẢN DỰA VÀO PHƯƠNG PHÁP
HỌC NỬA GIÁM SÁT 39
3.1. Phát biểu bài toán phân loại văn bản 39
3.1.1.Môhìnhtổngquát 41
3.3.3.Phươngphápđánhgiá 52
3.3.4.Côngcụphânlớp 53
3.3.5.Kếtquảthửnghiệmvàđánhgiá 54
3.4. Tổng kết chương 57
KẾT LUẬN 58
TÀI LIỆU THAM KHẢO 59
Decisiontree Decisiontree Câyquyếtđịnh
Supportvectormachine
SVM Máyvéctơhỗtrợ
Semi-supervised
supportvectormachine
S3VM
Máyvéctơhỗtrợnửa
giámsát
vi
DANH MỤC CÁC HÌNH
Hình1.1:Môhìnhhọccógiámsát 6
Hình1.2:Môhìnhhọcnửagiámsát 9
Hình2.1:Dữliệucónhãn 11
Hình2.2:Dữliệucónhãnvàchưacónhãn 12
Hình2.3PhânlớpSVM 17
Hình2.4:Câyquyếtđịnh 34
Hình3.1:Môhìnhgiaiđoạnhuấnluyện 41
Bảng2.3:Bộtừvựng 31
Bảng2.4:Dữliệuhuấnluyệncâyquyếtđịnh 33
Bảng2.5:Dữliệukiểmtra 35
Bảng2.6:Kếtquảphânlớp 36
Bảng3.1:Bộdữliệuthửnghiệmbanđầu 50
Bảng3.2:Danhsách20từđặctrưng 50
Bảng3.3:Bộdữliệusaukhi“stemming” 51
Bảng3.4:Danhsách20“stem”đặctrưng 51
Bảng3.5:Kếtquảkiểmnghiệmbộdữliệubanđầu 55
Bảng3.6:Kếtquảkiểmnghiệmbộdữliệusaukhi“stemming” 55
1
MỞ ĐẦU
1. Lý do chọn đề tài
NgàynaysựpháttriểnmạnhmẽcủaInternetđãdẫnđếnsựbùngnổthông
tinvềnhiềumặtkểcảvềnộidunglẫnsốlượng,hệthốngdữliệusốhóatrởnên
khổnglồđểphụcvụchoviệclưutrữtraođổithôngtin.Dữliệusốhóanàyrấtđa
dạng,nócóthểlàcácdữliệudướidạngtậptinvănbảntext,tậptinvănbảnMS
word,tậptinvănbảnPDF,mail,HTML, Cáctậptinvănbảncũngđượclưutrữ
trênmáytínhcụcbộhoặcđượctruyềntảitrênInternet,cùngvớithờigianvàvới
lượngngườidùngtăngnhanhthìcáctậptinnàyngàycàngnhiềuvàđếnmộtthời
-Nghiêncứucáctàiliệudothầygiáohướngdẫncungcấp
-Tìm hiểu, nghiêncứu cáctài liệu liênquantrong sách,tạpchí,cácbàibáo
nướcngoài.
-Tìmkiếmcáctàiliệutrênmạnginternet,….
Thực nghiệm: Càiđặtthửnghiệmvàđánhgiámộtsốthuậttoánhọcnửagiámsát,
thuậttoánhọccógiámsát.
5. Nội dung luận văn
Luậnvăngồm3chương:
Chương 1:Tổngquanvềphươngpháphọcmáy
Chương 2:Mộtsốthuậttoánhọcnửagiámsát
Chương 3:Phânloạivănbảndựavàophươngpháphọcnửagiámsát
Trongđóđềtàitậptrungvàochương3nhằmnghiêncứuvàápdụngcáckỹ
thuậtphânloạiemailcủabộdữliệudbworld[18].
3
CHƯƠNG 1 - TỔNG QUAN VỀ PHƯƠNG PHÁP HỌC MÁY
1.1. Khái niệm học máy
Hoạtđộnghọclàhoạtđộngtiếpthunhữngtrithứclýluận,khoahọc.Nghĩa
làviệchọckhôngchỉdừnglạiởviệcnắmbắtnhữngkháiniệmđờithườngmàhọc
phảitiếnđếnnhữngtrithứckhoahọc,nhữngtrithứccótínhchọnlựacao,đãđược
kháiquáthoá,hệthốnghoá.
Hoạtđộnghọctậpkhôngchỉhướngvàoviệctiếpthunhữngtrithức,kĩnăng,
kĩxảomàcònhướngvàoviệctiếpthucảnhữngtrithứccủachínhbảnthânhoạt
động học. Hoạt động học muốn đạt kết quả cao, người học phải biết cách học,
phươngpháphọc,nghĩalàphảicónhữngtrithứcvềchínhbảnthânhoạtđộnghọc.
Vậy,việclàmthếnàođểmáytínhcókhảnănghọctập,tưduyvàcókhả
, | , ( )D x y x T y f x
+Tínhtoánmộthàm
'f
:
X
→{đúng,sai}saocho
'( ) ( )f x f x
,
x X
.
1.2. Một số khái niệm cơ bản trong học máy
1.2.1. Không gian biểu diễn của dữ liệu
Khônggianbiểudiễnlàmộttậphợp:
Kýhiệulà
X
,mỗiphầntửthuộc
X
cóthểđượcgọilàcácdữliệu,cácthể
hiện,cácđốitượnghaycácvídụ.
Mỗiphầntử
S X
đượcbiểudiễnbởimộttậpgồmnthuộctính
1 2
( , , , )
n
S s s s
.
MộtđốitượngScũngcóthểđượcbiểudiễnkếthợpvớilớpliênthuộccủa
Cóbakiểutậpmẫu:
+Tậpmẫuhọchaytậphọc.
+Tậpmẫuhợpthứchoáhaytậphợpthức.
+Tậpmẫuthửhaytậpthử.
1.2.6. Quá trình tìm kiếm trong không gian giả thuyết
TrongmộtkhônggiancácgiảthiếtX,họctrởthànhbàitoántìmkiếmgiả
thiếttốtnhấttrongX.
Nếutađánhgiámỗigiảthiếtbởimộthàm"mụctiêu"thìtaxéthọcnhưmột
bàitoántốiưuhoá.Nghĩalàbàitoántìmphầntửcủa
X
làmtốiưuhàmmụctiêu.
Tronghọcmáyngườitathườngdùngtốiưukhôngràngbuộchoặctốiưucó
ràngbuộc.CácphươngpháptốiưuhoáthườngdùngtronghọcmáynhưGradient,
nhântửLagrange
1.3. Học có giám sát
1.3.1. Khái niệm
Họccógiámsát(supervisedlearning)[5],[16]làmộtkỹthuậtcủangànhhọc
máynhằmmụcđíchxâydựngmộthàm
f
từdữtậpdữliệuhuấnluyện(Training
data).Dữ liệu huấn luyệnbao gồm các cặp đối tượng đầu vào và đầu ra mong
6
muốn.Đầuracủahàm
f
cóthểlàmộtgiátrịliêntụchoặccóthểlàdựđoánmột
nhãnphânlớpchomộtđốitượngđầuvào.
Hình 1.1: Mô hình học có giám sát
biểudiễnvéctơ
cộtcủacácnhãn.Nhưđãnêu,mộtyêucầuchuẩnlàcáccặp
( , )
i i
x y
tuântheogiả
thiếti.i.dtrảikhắptrên
.X Y
Nhiệmvụđượcđịnhrõlà,tacóthểtínhtoánđược
mộtphépánhxạthôngquathihànhdựđoáncủanótrêntậpkiểmthử.Nếucácnhãn
lớplàliêntục,nhiệmvụphânlớpđượcgọilàhồiquy(regression).Cóhaihọthuật
toán có giám sát: mô hình sinh mẫu (generative model) và mô hình phân biệt
(discriminativemodel)
7
Môhìnhsinhmẫu
Phươngpháp nàysẽtạoramộtmôhình mậtđộphụthuộcvàolớp(class-
conditionaldensity)p(x|y)bằngmộtvàithủtụchọckhôngcógiámsát.Mộtmậtđộ
sinhcóthểđượcsuyluậnbằngcáchsửdụnglýthuyếtBayes.
( | ) ( )
( | )
( | ) ( )
y
p x y p y
p x y
p x y p y dy
Bước5:Hoànthiệnthiếtkế.
Tiếnhànhchạygiảithuậthọcvớitậpdữliệuhuấnluyệnthuthậpđược.Ta
cóthểđiềuchỉnhcácthamsốcủagiảithuậthọcbằngcáchtốiưuhóahiệunăngtrên
mộttậpconcủatậphuấnluyện,(gọilàtậpkiểmchứng-validationset)củatậphuấn
luyệnhaythôngquakiểmchứngchéo(cross-validation).Sauđótatiếnhànhđođạc
hiệunăngcủagiảithuậttrênmộttậpdữliệukiểmtrađộclậpvớitậphuấnluyện.
1.4. Học không có giám sát
1.4.1. Khái niệm
Họckhôngcógiámsát(unsupervisedlearning)[5],[16]làmộtphươngpháp
họcmáymàdữliệuhuấnluyệnlàdữliệuhoàntoànchưađượcgánnhãn,nhằmtìm
ramộtmôhìnhphùhợpvớicácquansát.Họckhôngcógiámsátkhácvớihọccó
giámsátởchỗ,làđầurađúngtươngứngchomỗiđầuvàolàchưabiếttrước.Trong
họckhôngcógiám sát,mộttậpdữliệuđầu vàothườngđược thuthập một cách
ngẫunhiên,vàsauđómộtmôhìnhmậtđộkếthợpsẽđượcxâydựngchotậpdữ
liệuđó.
TacóthểkếthợphọckhôngcógiámsátvớisuydiễnBayesđểtạoraxác
suấtcóđiềukiệnchobấtkỳbiếnngẫunhiênnàokhibiếttrướccácbiếnkhác.Hay
nóicáchkháckhiđótađãchuyểntừviệchọckhôngcógiámsátsanghọccógiám
sát.Mọigiảithuậtnéndữliệu,vềcơbảnhoặclàdựavàomộtphânbốxácsuấttrên
mộttậpđầuvào mộtcáchtường minhhay khôngtường minh.Dođótrongcông
nghệnéndữliệuhọckhôngcógiámsátđượcứngdụngmộtcáchrấthữudụng.
9
1.4.2. Mô hình toán học
Chẳnghạnchotrướcmộtmẫuchỉgồmcácđốitượng(objects),cầntìmkiếm
cấutrúcđángquantâm(interestingstructures)củadữliệu,vànhómcácđốitượng
giốngnhau.Biểudiễntoánhọccủaphươngphápnàynhưsau:
Đặt
1 2
nhiêndữliệuchưađượcgánnhãn,cóthểdễdàngthuthậpđượcrấtnhiều.Haynói
cáchkháclàdữliệuchưagánnhãncóchiphírấtrẻ.
Họcnửagiámsátđãkhắcphụcđượccácnhượcđiểm,vàpháthuyđượcưu
điểmcủahọccógiámsátvàhọckhôngcógiámsát.Bằngcáchkếthợpgiữahọccó
giámsátvàhọckhôngcógiámsát,vớimộtlượnglớndữliệuchưagánnhãnvàmột
lượngnhỏnhữngdữliệuđãđượcgánnhãn,bằngcácgiảithuậthọcnửagiámsátsẽ
thuđượckếtquảvừacóđộchínhxáccaovừamấtítthờigiancôngsức.Dođó,học
nửagiámsátlàmộtphươngpháphọcđạtđượchiệuquảrấttốttronglĩnhvựchọc
máy.
Tómlạihọcnửagiámsátlàmộtphươngphápcủangànhhọcmáynhằmxây
dựngmộthàmmụctiêutừcácdữliệuhuấnluyện.Sauđótổngquáthóathànhmô
hìnhchungchotấtcảcácdữliệugánnhãnvàchưađượcgánnhãn.Nhằmmụcđính
tìmramộtkếtquảmongđợi.
1.5.2. Mô hình toán học
Cho
1 2
( , , , )
n
X x x x
làtậphợpgồmnmẫu.
Tagiảthiếtrằngđasốmẫuđượctạoramộtcáchđộclậpvàgiốngnhautừ
mộtphânphốichungtrênXvàmộtsốlượngnhỏmẫuđãđượcgánnhãn.Mụctiêu
làtìmramộtcấutrúcthôngminhtrêntậpdữliệuX.
1.6. Tổng kết chương
Trênđâylàmộtsốkiếnthứccơbảnvềhọcmáy,thôngquađótacóthểnắm
bắtđượccáckiếnthứcnềntảngvềhọcmáynhư:Kháiniệmthếnàolàhọcmáy,
họccógiámsát,họckhônggiámsátvàhọcnửagiámsát;Cácmôhìnhtoáncủa
họcmáy,họccógiámsát,họckhônggiámsát,họcnửagiámsát;Nắmđượccác
bướcgiảimộtbàitoántronghọcmáy.Đâychínhlànhữngkiếnthứccơsởđểtacó
thể tiếp tục tìm hiểu, nghiên cứu các thuật toán về học nửa giám sát trong các
lànhãntươngứng.Chúngđượcphânlớpnhưhìnhsau:
Hình 2.1: Dữ liệu có nhãn
12
Khidữliệuchưađượcgánnhãnđượcthêmvào.Thìtasẽcómộtmôhình
phùhợpnhấtvớitậpdữliệunày,đểcóthểphânlớptấtcảcácdữliệumớiđượcđưa
vào.
Hình 2.2: Dữ liệu có nhãn và chưa có nhãn
2.1.3. Thuật toán kỳ vọng cực đại
2.1.3.1.Giớithiệuthuậttoán
Thuậttoánkỳvọngcựcđại(ExpectationMaximization-EM)làmộtthuật
toántổngquátđánhgiásựcựcđạikhảnăng(ML–MaximumLikelihood)màdữ
liệulàkhônghoànchỉnh(incompletedata)hoặchàmlikelihoodliênquanđếncác
biến ẩn (latent variables) [5]. Ở đây, hai khái niệm “incomplete data” và “latent
variables” có liênquan đếnnhau: Khi tồn tạibiến ẩn, thì dữ liệu làkhông hoàn
chỉnhvìtakhôngthểquansátđượcgiátrịcủabiếnẩn;tươngtựnhưvậykhidữliệu
làkhônghoànchỉnh,tacũngcóthểliêntưởngđếnmộtvàibiếnẩnvớidữliệuthiếu
2.1.3.2.Nộidungthuậttoán
Đầu vào:
D:Tậpdữliệucónhẵnvàchưacónhãn.
L:TậpdữliệuđãgánnhãntrongD.
U:TậpdữliệuchưacónhãntrongD.
13
Đầu ra:
Dd
Dd
Dd
t
dcP
D
cP
dndcPW
tdndcP
Với
khihàmmụctiêuhộitụ,vídụnhưhàmmụctiêuđạttớicựcđạiđịaphương.
Thuậttoánkỳvọngcựcđạisửdụnghướngtiếpcậnlàxuấtpháttừmộtgiátrị
khởingẫunhiênnàođó.Dovậychỉđảmbảođạtđượcgiácựcđạiđịaphươngmang
tínhphương.Nênviệcđạttớicựcđạitoàncụchaykhônglàphụthuộcvàođiểmbắt
đầuxuấtphát.Nếutaxuấtpháttừmộtđiểmđúngthìtacóthểtìmđượccựcđạitoàn
cục.Tuynhiênvấnđềtìmđiểmxuấtphátđúngthườngrấtkhó.Tacóthểsửdụng
haiphươngphápđểgiảiquyếtvấnđềnàynhưsau:
Một là:Tiếnhànhthửnhiềugiátrịkhởiđầukhácnhau,quađótiếnhànhlựa
chọnphươngánmàgiátrịhàmmụctiêuhộitụlớnnhất.
Hai là:Tasẽsửdụngmộtmôhìnhđơngiảnhơnđểtiếnhànhxácđịnhgiá
trịkhởiđầu.Quađósẽtìmđượcvùngtồntạicựcđạitoàncục,sauđótasẽchọn
mộtgiátrịkhởiđầutrongvùngđóđểtiếnhànhbắtđầuvớimôhìnhphứctạp.
2.1.3.3.Đánhgiáthuậttoán
Thuậttoánkỳvọngcựcđạicóưuđiểmlàcómôhìnhtoánrõràng,họctheo
khungmôhìnhxácsuấtkhátốtvàcóhiệuquảrấttốtnếumôhìnhđólàmôhình
dạngđóng.Tuynhiên,thuậttoáncònnhữngmặthạnchếlàtacầnphảixácđịnh
đượctínhchínhxáccủamôhình,xácminhđượctínhđồngnhấtcủamôhình,ngoài
raxácđịnhtốiưubằnggiảithuậtkỳvọngcựcđạisẽlàmảnhhưởngđếnnhữngdữ
liệukhôngđượcgánnhãnnếumôhìnhbịsai.