ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Tran Phuong Nhung
AP DUNG PHUONG PHAP TRICH CHON THUQC
TINH DAC TRUNG DE NANG CAO HIEU QUA PHAN LOP KHI KHAI PHA DU LIEU LON
KHOA LUAN TOT NGHIEP DAI HOC HE CHINH QUY Ngành: Công nghé thong tin
Trang 2DAI HQC QUOC GIA HA NOI TRUONG DAI HOC CONG NGHE
Tran Phương Nhung
AP DUNG PHUONG PHAP TRICH CHON THUQC TINH DAC TRUNG DE NANG CAO HIEU QUA
PHAN LOP KHI KHAI PHA DU LIEU LON
KHOA LUAN TOT NGHIEP DAI HOC HE CHINH QUY Ngành: Công nghệ thông tin
Cán bộ hướng dẫn: TS Nguyễn Hà Nam
Trang 3Lời cảm ơn
“Đề hoàn thành khóa luận này, tôi xin gửi lời cảm ơn chân thành tới quý thầy cô trong trường Đại học Công Nghệ - ĐHQGHN đã tận tình chỉ bảo tôi trong suốt bốn năm học đại học Tôi cũng xin cảm ơn sự hướng dân nhiệt tình của thầy Nguyễn Hà Nam, cùng sự giúp đỡ của anh Đặng Tát Đạt — sinh viên cao học khoa Toán Tìn trường Đại
hoc Tu Nhién, DHOGHN
Trang 4Tóm tắt khóa luận
Trong khóa luận này tơi áp dụng thuật tốn di truyền (Genetic Algorithm) dé budc
đầu cải tiến hiệu quả phân lớp của phương pháp minimax probability machine (MPM) Phần đầu tôi xin giới thiệu tổng quan về khái niệm khai phá dữ liệu Tiếp đó, tôi sẽ trình
bày về cơ sở lý thuyết của thuật toán di truyền và phương pháp phân lớp minimax probability machine Cuối cùng, tôi sẽ mô tả chi tiết về quá trình xây dựng hệ thống có ứng dụng thuật toán di truyền trong phân lớp minimax probability machine để chuẩn đoán bệnh ung thư Mô hình phân lớp mới này sẽ được chạy thử trên một số cơ sở dữ liệu lớn
và đưa ra những số liệu thống kê để có thể thấy được hiệu quả của hệ thống so với
Trang 5Clới {ÏHiỆU G99 99.99.909.090 000 000 0000 000 0000000000 0000000000000000000090 8
Chương 1: Giới thiệu về khai phá dữ liệu -5 <5 <<s< + =ssssesessesesesseses2 10
I.I Khai phá đữ liệu là gì? - << + + + xe 10 1.2 Tại sao phải tién hanh khai pha dif LGU? wo eee cee ceeeeeeeeseeeececseseseseseees 10 1.3 Quá trình khai phá dữ HOU eee cece ee ceeceeeeeeeeeteeeeaaaaaeaaeaaecaeeeeceeeceeeeeeeeeeees II
1.4 Kiến trúc điển hình của một hệ khai phá dữ liệu - . -+c++c++c++c++: 12
1.5 _ Các bài toán khai phá dữ liệu điển hình . + 5 52 2 2 £+E2EzEzEzEzEzEzxrereei 13
1.6 Các lĩnh vực liên quan đến khai i88) 02+ 15
1.7 Các ứng dụng điển hình của khai phá dữ liệu . - 2 5 +2 c+c+s+s+e+ecs2 15 1.8 Các thách thức với khai phá đữ lIỆU - -Ă 5S nh re 16 1.9 K6t ha 16 Chương 2: Trích chọn thuộc tính phù hợpp << 5< 5555 S6 6 96 96 93 99996966666 56S6 17 2.1 — GiớI thiỆU LG Q.90 17 2.2 Mô hình trong bài toán trích chọn - - 3131111313131 1111188 1111111111 x2 18 2.2.1 — Các mô hình trong †rÍCh ChỌP co vn vn nh 18 2.2.2 Danh gia hai mo hinh Filler và T@DĐ€F c3 19 2.2.2.1 Mô hình FEIÏ(eT - - << xxx re 19 2.2.2.2 MO hinh Wrapper .ccceccccceceeeseeecccccceceeseeececcecsseaaeeeeecceeeaaeeeeeeeees 19
2.3 Mt sO k¥ thudt xr loo ccececescecsccesescscscsesssscevscscessnscsesssstsvavscsseasenes 20
2.3.1 — Bộ sinh tập con (Feature SHbsSef (€H€TQÍOT) ĂĂĂS SG xa 20
2.3.2 Bộ đánh giá tập con đặc trưng (Feature Subset EVaÌÏHqfOF) - 21 2.3.3 Thuật toán học điều khiển (Central machine learning algorithm) 22
Trang 6Churong 3: Genetic algorithms .ccccccssssssscssccccsssssssscccccccsssssscsccccccsssesssscsccessssesesess 23 Sân 0 0 .ốỐốỐ.ỐốỐ 23
3.2 DONG LUC — a— ố 23
3.3 Thuật giải di truyÊn ¿5+ xe S131 118 5111111111111 11111 1111111111011 kg 24
3.3 l Nội dung thUỘ ÍỐI HT KT ng n0 rà 24
3.3.2 Thể hiện các giả tHHUVẾL sát k1kS E111 E111 111115111111 11111 1111 5 11g reg 26 N0 7081810 N ỐỐốố 27 3.3.4 Hàm thích nghĩ và sự ChỌN ÏỌC cv vn hà 29 Chương 4: Minimax probability machỉne 5œ œ sœ œ << 2S 2S S66 56 99 685666669696 31 "“""“ son n4 3l “2W 60 2i i0 Ố 31
4.3 Ưu điểm và nhược điểm của minimax probability machine - 5-5-5: 32 4.4 Các phiên bản cải tiễn của minimax probability machine - 5-5-5: 32 4.4.1 Minunum error minimax probability machine (MEMPM) ĂĂ- «<< <sss+ 32 4.4.2 Biased minữnax probabthfy machine (BMPPM) cv xxx và 34
Chương 5: Phương pháp đề nghị . <- << 5 << s< + <5 S5 Es eEesEsSeSesEzSesesezsesese 35
5.1 _ Tống quan về phương pháp . 2-2 s +x+k+kE*E#Ek+EEEEEEeEEEEEEEEEESkrkrkrrsrred 35 5.1.1 Mô tạ phương DhÁp TH KT ng TT nhà 35 5.1.2 — Mơ hình bài (ỐH cà 36 53.2 _ Mô tả dữ liệu sử dụng - - << + + xxx 36 5.3 Các module trong hệ thống và giao diện của chương trình ¿5s s2 37 5.3.1 Chỉ tiết các module của Œenetic Algoritlim -c-c «sec setsesesereea 37 5.3.2 Chỉ tiết các module của minimax probability machine - sscs5¿ 4] 5.4 _ Thực nghiệm và phân tích kẾt quả - +2 + + E+E+E+EE£E+E£E+EEEESEzEekrererrsed 43
N2 068666 66h <aH 1-11 43
Trang 75.4.2.1 Kết quả thực hiện phân lớp trên bộ dữ liệu ban đầu . - 2 - 44 5.4.2.2 Kết quả thực hiện phân lớp trên bộ dữ liệu giảm chiều (outData.mat) 45 5.4.2.3 So sánh kết quả 4 trường hợp kiểm thử - ¿+ 2 22+ ££+E+Eexrerersesed 51 5.4.2.4 Kết luận - ¿+ + 1111 121 12111 3151115111111 1111 1111111101011 0 1111111011111 TXĐ 52
Trang 8Danh sach cac hinh
Hình 1.1: Quá trình phát hiện tri thức trong cơ sở đữ liệu [2] - 5555 << <s5 52 12
Hình 1.2: Kiến trúc điển hình của hệ thống khai phá dữ liệu [2] - 2 2 5<: 13
Hình 1.3: Tính đa/ liên ngành của khai phá dữ liệu [2] - 2+5 <<<<<sss++2 15
Hình 2.1: Bốn bước co ban trong quá trình trích chọn các thuộc tính phù hợp [ó6] 17 Hình 2.2: Mô hình Filter [Ó ] - - - - - - << G 2k 1 36% 3311380533805 1 605503 11 1 1v 9 1v vvsg 18
Hinh 2.3: M6 hinh Wrapper [6] .cccccccccccccccceccceccecceeeeeeeseeseeeeeeeseeeseeseessesssessessaaaas 18 Hình 3.1: Các toán tử chung cho thuật giải đi truyền [20] 5-2 2 +2 +s+e£z£sszxzxe: 28
Hình 4.1: Mô tả sự khác nhau giữa MEMPM (h.1) và MPM (h.2) với cùng xác suất tiên
01340)1910189)1989/010000N8Wj(Ư 34
Hình 5.1: Mô hình kết hợp thuật toán di truyền và phương pháp phân lớp MPM 36
Hình 5.2: 6 bước thực hiện đề tìm ra chromosome tốt nhất - - 2+ +2 £+s£+E£zE+e£zez2 38 Hình 5.3: Giá trị của hàm đánh giá tại mỗi thế hệ - - c2 S3 S23 98853858858 E53 E533 EsErserd 39 Hình 5.4: Hình ảnh biéu diễn hàm đánh giá của GA tại mỗi thế hệ :- 2 c+sc+sx+scs: 40
Hình 5.5: Kết quả quá trình tối ưu tập thuộc tính của dữ liệu ban đầu - 41 Hình 5.6: Giao diện kết quả của bộ phân lớp minimax probability machine 42 Hình 5.7: So sánh tỷ lệ phân lớp chính xác của tập dữ liệu gốc và dữ liệu mới (trường hop + 46 Hình 5.8: So sánh tỷ lệ phân lớp chính xác của tập dữ liệu gốc và dữ liệu mới (trường hop ) Q1 kh 47 Hình 5.9: So sánh tỷ lệ phân lớp chính xác của tập dữ liệu gốc và dữ liệu mới (trường hop đẢ QC TT TT re 49 Hình 5.10: So sánh tỷ lệ phân lớp chính xác của tập dữ liệu gốc và dữ liệu mới (trường hỢp 4)) c1 1 1 1211111 10111115 1111511111111 1111T10111 1111111111 11111111.11211110151 1111111101111 Tx ki 50
Trang 9Bang 3.1: Bang 5.1: Bang 5.2: Bang 5.3: Bang 5.4: Bang 5.5: Bang 5.6:
Danh sach cac bang
Thuat giai di truyén mau [20] oo ceeesescecesscescecesscscecesesvscseeseetevsnsseeees 24
Mô tả bảng dữ liệu sử dụng (file Stomach_ Full.matf) « «<< << 2 37
Kết quả phân lớp trên bộ dữ liệu ban đâầu - + 22 2 £+E+k+x+E£zEsxzxzee 44
Trang 10Bảng các từ viết tat Blased Minimax Probability Machine BMPM Genetic Algorithm GA Genetic Algorithms Gas Las Vegas LV
Matlab Matrix Laboratory
Minimax Probability Machine MPM
Minimum Error Minimax Probability Machine MEMPM
Online Analytical Processing OLAP
Trang 11Gidi thiéu
Những năm gần đây, các cơ sở dữ liệu đã đem lại những lợi ích vô cùng to lớn cho con người Song hành cùng sự phát triển nhanh chóng của công nghệ thông tin và những ứng dụng của nó trong đời sống, kinh tế và xã hội, lượng dữ liệu thu thập ngày càng nhiều
theo thời gian, dẫn đến việc xuất hiện ngày càng nhiều các hệ thông cơ sở dữ liệu có kích
thước lớn Trong xã hội hiện đại, thông tin được coi như sức mạnh và là yếu tố quyết định
thành công trong mọi lĩnh vực, do đó việc tìm ra thông tin hữu ích trong khối dữ liệu không lỗ được xem như mục tiêu hàng đâu của mọi tô chức và cá nhân
Trong khóa luận này, tôi sẽ ứng dụng kỹ thuật chọn lựa tập các thuộc tính có ích trong
bài toán trích chọn để nhằm cải thiện hiệu quả phân lớp dữ liệu, là nền tảng cho hệ thống
chuẩn đoán bệnh ung thư Hệ thống này sẽ được huấn luyện với tập dữ liệu về các bệnh
nhân có từ trước và khi có dữ liệu của bệnh nhân mới, hệ thống sẽ tự động đưa ra chuẩn
đoán người đó có bị bệnh hay không? Tôi sử dụng phương pháp phân lớp Minimax Probability Machine (MPM) két hop ciing thuat todn di truyén (Genetic Algorithm) dé xây dựng hệ thông này Với mục đích làm tăng độ chính xác của quá trình phân lớp dữ
liệu và giảm thời gian huấn luyện của bộ phân lớp, tơi sử dụng thuật tốn di truyền để lựa chọn tập thuộc tính tốt nhất của tập dữ liệu ban đầu nhăm tìm ra bộ dữ liệu phù hợp nhất
cho đầu vào của bộ phân lớp MPM Kết quả thực nghiệm đã chứng minh rằng phương pháp phân lớp sử dụng thuật toán di truyền để tối ưu tập thuộc tính cho kết quả tốt hơn phương pháp truyền thống
Nội dung chính của khóa luận bao gôm sáu chương, với nội dung cụ thể như sau:
Chương 1 tập trung mô tả về khai phá dữ liệu (data mining), giới thiệu những bài toán điển hình trong khai phá dữ liệu cũng như những ứng dụng rộng rãi của lĩnh vực này Cuối cùng là những thách thức đặt ra cho quá trình khai phá dữ liệu
Chương 2 có nội dung chủ yếu trình bày về khái niệm trích chọn thuộc tính phù hợp,
những mô hình trích chọn điển hình và một số kỹ thuật xử lý trong quá trình trích chon Chương 3 giới thiệu về cơ sở lý thuyết cũng như những bước thực hiện của thuật toán di
truyền Thuật toán này được sử dụng để tìm ra tập các thuộc tính phù hợp nhất với thuật
Trang 12Chương 4 sẽ mô tả phương pháp phân lớp minimax probability machine Phan tich những mặt mạnh và yếu của phương pháp này để đề ra những cải tiền nhằm nâng cao hiệu quả phân lớp của minimax probability machine
Chương 5 trình bày chỉ tiết quá trình xây dựng mô hình dự kiến của tôi bao gồm phân lớp
minimax probability machine kết hợp với thuật toán di truyền Phần còn lại của chương dùng để mô tả quá trình đánh giá chất lượng, từ đó đưa ra những phân tích kỹ thuật và kết
luận về hiệu quả của mô hình
Chương 6 tóm tắt lại những kết quả đã đạt được của khóa luận, đồng thời nêu ra những
Trang 13Chương 1: Giới thiệu về khai phá dữ liệu
1.1 Khai phá dữ liệu là øì?
Có khá nhiều định nghĩa về khai phá dữ liệu, nhưng định nghĩa đơn giản nhất là khai
phá dữ liệu là việc trích rút thông tin hay tri thức mới và có ích từ nguồn đữ liệu không lô
(Frawley, Piatetski-Shapiro va Matheus) [1]
Ngoài ra, khai phá dữ liệu còn có thể hiểu là trích rút các thông tin có ích từ những dữ liệu không tường minh, hoặc trích rút lẫy những thông tin không biết trước và tiềm tàng trong dữ liệu Cũng có thể hiểu, khai phá dữ liệu là việc phân tích khảo sát một cách tỉ mỉ
sỐ lượng lớn dữ liệu bằng các phương pháp tự động hoặc bán tự động nhằm tìm ra các
thông tin hay tri thuc có ích
Có thể nhận xét răng, khái niệm khai phá dữ liệu là khá rộng lớn, nhưng không phải tất cả mọi công việc liên quan đến dữ liệu đều được coi là khai phá dữ liệu, chăng hạn như những việc xử lý truy vấn đơn giản như tra cứu một số điện thoại, hay thống kê ra những học sinh giỏi của một lớp, thì không thể coi đó là khai phá dữ liệu Nhưng những công việc như gom nhóm các tài liệu trả về từ máy tìm kiếm theo từng ngữ cảnh thì lại
được xem là khai phá dữ liệu Chính vì sự phong phú và đa dạng này mà dẫn đến thực
trạng là tồn tại một số quan niệm khác nhau về chuyên ngành nghiên cứu gần gũi nhất với
lĩnh vực khai phá dữ liệu Tài liệu này của tôi tán thành quan điểm về khai phá dữ liệu của
Frawley, Piatetski-Shapiro va Matheus [1]
1.2 Tại sao phải tiến hành khai phá dữ liệu?
Trong những năm gần đây khai phá dữ liệu trở thành một lĩnh vực nghiên cứu rộng rãi trong ngành công nghiệp thông tin, nguyên nhân chủ yếu là do khối lượng khống lỗ
của đữ liệu mà con người tạo ra, đi kèm với nó là sự cần thiết của việc rút trích tri thức từ
những dữ liệu đó Thông tin và tri thức có thể được áp dụng vào nhiều lĩnh vực từ phân
tích thị trường tài chính, phát hiện giả mạo, cho đến điều khiến sản xuất và nghiên cứu
khoa học
Nhìn vào hai lĩnh vực sinh ra nhiều dữ liệu nhất đó là thương mại và khoa học Trong
lĩnh vực thương mại, hàng ngày hàng giờ con người đang tạo ra, thu thập và lưu trữ lại rất
nhiều dữ liệu, như dữ liệu web, đữ liệu về thương mại điện tử, dữ liệu về việc thanh toán
Trang 14kinh doanh là rất cao, cho nên việc phân tích đữ liệu để cung cấp dịch vụ tốt hơn, có nhiều
tiện ích cho khách hàng, và đón bắt chính xác nhu cầu của khách hàng rất quan trọng Trong lĩnh vực khoa học, dường như lượng đữ liệu sinh ra và thu thập lại còn lớn hơn
nhiều, lên tới hàng GB/giò, chang hạn như dữ liệu từ vệ tính, từ các ảnh chụp vũ trụ và từ
các mô phỏng thử nghiệm khoa học Khai phá dữ liệu giúp các nhà khoa học trong việc
phân lớp dữ liệu và hỗ trợ trong việc đưa ra các quyết định
Cùng với sự phát triển của khoa học, của ngành cơ sở dữ liệu không thể không kế đến là sự phát triển của ngành công nghiệp máy tính, người ta đã tạo ra những phương tiện
lưu trữ lớn hơn, những máy tính rẻ hơn, tốc độ cao hơn, trợ giúp cho quá trình thu thập dữ
liệu cũng như khai phá chúng
Trong quá trình tác nghiệp người ta thường phải đưa ra các quyết định, tuy nhiên, với lượng đữ liệu không lỗ như thế, người ta không thể sử dụng hết, hoặc nếu muốn sử dụng
thì phải mất thời gian quá nhiều, như vậy có nguy cơ đánh mất cơ hội Do đó, việc sử
dụng máy tính để khai phá dữ liệu nhằm giúp đỡ con người trong công việc cảng được
thúc đây mạnh mẽ, làm sao với các dữ liệu đã thu thập được có thé đưa ra hành động mang lại lợi ích tối đa
1.3 Quá trình khai phá dữ liệu
Ở một góc độ nào đó, khái niệm khai phá dữ liệu và khai phá trí thức nhiều khi được
coi là một Tuy nhiên, nếu xét kỹ thì khai phá dữ liệu chỉ là một khâu quan trọng trong
khai phá tri thức [T] Một quá trình phát hiện tri thức trong cơ sở dữ liệu bao gôm Các glaI đoạn chính sau [2]:
(1) Lam sạch đữ hiệu (Data Cleaning): Khu nhiễu và các dữ liệu mâu thuẫn (2) Tich hop dit liéu (Data Integration): Két hop nhiéu nguon đữ liệu khác nhau
(3) Lựa chọn đữ liệu (Data SelecHon): Chắt lọc lay những đữ liệu liên quan đến nhiệm
vụ phân tích sau này
(4) Biến đổi dữ liệu (Data Transformation): Biến đối dữ liệu thu được về dạng thích
hợp cho quá trình khai phá
(5) Khai phá dữ liệu (Data Mining): Sử dụng những phương pháp thông minh để khai
thác dữ liệu nhằm thu được các mẫu mong muốn
(6) Đánh giá kết quả (Pattern Evaluarion): Sử dụng các độ đo đề đánh giá kết quả thu
được
Trang 15(7) Biéu dién tri thức (Knowledge Presentation): Su dung cac cong cu biéu dién truc
quan đề biểu diễn những tri thức khai phá được cho người dùng ¡>>> TTT errr eee rrr reer eer ere rer rrr 7 Ỷ ' ! ! Đánh giá & J Trinh dién TH thi I ! Ỷ f1 thưc I I ' ! ! Khai pha fd dữ liệu R I I Mau y Lua chọn & + ' 1 Chuyén dang 1 | Dữ liệu | ' v A A Ị ' ¡chuyên | Lam sach & ; dang 1 Tich hop ! ' I \ ; l 1 ; ! ; Peek "Ả a Dữ liệu
Hinh 1.1: Qua trinh phat hiện tri thức trong cơ sở đữ liệu [2]
Quá trình này có thể được lặp lại nhiều lần một hay nhiều giai đoạn dựa trên phản hồi
từ kêt quả của các giai đoạn sau
1.4 Kiến trúc điển hình của một hệ khai phá dữ liệu
Trong kiến trúc điển hình của một hệ khai phá dữ liệu (hình 1.2), các nguồn dữ liệu
cho hệ thống khai phá dữ liệu bao gôm cơ sở đữ liệu, hoặc kho dữ liệu, hoặc World Wide
Web, hoặc kho chứa dữ liệu kiểu bất kỳ khác, hoặc tô hợp các kiểu dữ liệu nói trên
Cơ sở tri thức bao chứa các tri thức hiện có về miền ứng dụng, được sử dụng trong
Trang 16thức đã có trong cơ sở tr1 thức Nếu mẫu khai phá được thực sự là hấp dan thi duoc bé sung vào cơ sở tri thức để phục vụ cho hoạt động tiếp theo của hệ thống | I G1ao diện người dùng A Vv Đánh giá mẫu khai phá được iw > r Vv Thanh phần khai phá dữ liệu k Ậ Vv Phục vụ Cơ sở dữ liéu/ Kho dtr —^ (7y\ CA C¬
Cơ sở dữ Kiểu kho
liệu IỆ chứa thông tin
Hình 1.2: Kiến trúc điển hình của hệ thống khai phá dữ liệu [2]
1.5 Các bài toán khai phá dữ liệu điển hình
Hai mục tiêu chủ yếu của khai phá dữ liệu la dw bdo (prediction) va mé ta
(description) Dự báo dùng một số biễn hoặc trường trong trong cơ sở đữ liệu để dự đoán
về giá trị chưa biết hoặc về gia tri sé có trong tương lai của các bién M6 ta hướng tới việc
tìm ra các mẫu mô tả dữ liệu
Dự báo và mô tả được thể hiện thông qua các bài toán cụ thể sau [2]:
e M6é tá khái niệm (Summarization)
Mục đích của bài toán là tìm ra các đặc trưng và tính chất của các khái niệm Điển
hình cho bài toán này là các bài toán như tông quát hóa, tóm tắt, các đặc trưng dữ liệu
ràng buộc
Trang 17e Quan hé phu thudc (Dependency relationship)
Một trong những vẫn đề của phát hiện mối quan hệ là làm rõ ràng và nguyên nhân Bài toán tìm luật kết hợp là một đại diện điển hình, thực hiện việc phát hiện ra mối
quan hệ giữa các thuộc tính (các biến), có dạng ở phụ thuộc hàm trong cơ sở dữ liệu
quan hệ
e_ Phân lớp (Classicamron)|[5]
Phân lớp còn được gọi là học máy có giám sát (supervised learning) Với một tập
các dữ liệu huấn luyện cho trước và sự huấn luyện của con người, các giải thuật phân
loại sẽ học ra bộ phân loại (classifier) dùng để phân dữ liệu mới vào trong những lớp
(còn gọi là loại) đã được định trước Một sỐ phương pháp điển hình là cây quyết định,
luật phân lớp, mạng neuron
e Phdn cum (Clustering)
Phan cụm còn được gọi là học máy không giám sát (unsupervised learning), thực
hiện việc nhóm dữ liệu thành các lớp mới để có thể phát hiện các mẫu phân bố Phân
cụm chỉ là bái tốn mơ tả hướng tới việc nhận biết một tập hữu hạn các loại hoặc các cụm để mô tả đữ liệu Các loại (cụm) có thể rời nhau và toàn phần (tạo nên phân hoạch) hoặc chồng chéo lên nhau [3]
e Phan doan (Segmentation)
Về bản chất phân đoạn là tổ hop của phân cụm và phân lớp, trong đó phân cum được tiễn hành trước và sau đó là phân lớp
e_ Hỏi quy (Regression)
Hồi quy là học một hàm ánh xạ dữ liệu nhằm tìm và xác định giá trị thực của một
biến
e_ Mô hình phụ thuộc (Dependency modeling)
Bài tốn xây dựng mơ hình phụ thuộc hướng tới việc tìm ra một mô hình mô tả sự
phụ thuộc có ý nghĩa giữa các biến Mô hình phụ thuộc gồm hai mức: mức cấu trúc
của mô hình mô tả (thường dưới dạng đồ thị) và mức định lượng e_ Phát hiện biến đổi và độ lệch (Change and Deviation Detection)
Trang 181.6 Các lĩnh vực liên quan đến khai phá dữ liệu
Khai phá dữ liệu liên quan đến nhiều ngành, nhiều lĩnh vực như thống kê, trí tuệ nhân
tạo, cơ sở dữ liệu, thuật toán học, tính toán song song vả tốc độ cao, thu thập tri thức cho các hệ chuyên gia, quan sát dữ liệu Đặc biệt khai phá dữ liệu rat gan gui voi linh vuc
thống kê, sử dụng các phương pháp thống kê để mô hình dữ liệu và phát hiện các mẫu, luật Ngân hàng dữ liệu (Data Warehousing) và các công cụ phân tích trực tuyến (OLAP — Online Analytical Processing) cũng liên quan chặt chẽ với khai phá dữ liệu [2]
Các kỹ thuật truyền thống không còn thích hợp với các loại dữ liệu bị lỗi, bị nhiễu hay dữ liệu nhiều chiều và các hệ dữ liệu tự nhiên phân tán hay hỗn tạp Do đó khi kết hợp với
nhau, hình thành lĩnh vực mới, đó là khai phá dữ liệu
Hệ thống cơ Thống kê
sở đữ liệu
Thuật toán Các bộ môn
khác
Hinh 1.3: Tinh da/ liên ngành của khai phá đữ liệu [2]
1.7 Các ứng dụng điển hình của khai phá dữ liệu
Ứng dụng của khai phá dữ liệu được chia thành hai lớp chính bao gồm các ứng dụng Khai phá dữ liệu phân tích — hỗ trợ ra quyết định và lớp các lĩnh vực ứng dụng khác e©_ Lớp các ứng dụng trong phân tích dữ liệu và hỗ trợ ra quyết định bao gồm các ứng dụng trong [2] [4]:
- _ Thông tin thương mại: Phân tích dữ liệu Marketing, khách hàng: Phân tích đầu tư; Phê duyệt cho vay vốn hay phát hiện gian lận
Trang 191.9
- Bao hiém y té - - Viễn thông
- Thé thao
Lớp các lĩnh vực ứng dụng điển hình khác được kế đến là khai phá văn bản, khai
phá Web, khai phá dữ liệu sinh học và khai phá dữ liệu dòng
Các thách thức với khai phá dữ liệu Cơ sở dữ liệu lớn
Số chiều lớn
Thay đổi dữ liệu và tri thức có thể làm cho các mẫu đã phát hiện không còn phù
hợp
Dữ liệu bị thiếu hoặc bị nhiễu
Quan hệ giữa các trường phức tạp
Giao tiếp với người sử dụng và kết hợp với các tri thức đã có
Tích hợp với các hệ thống khác [2] [4]
Kết luận
Qua các vấn đề đã trình bảy, chúng ta nhận thấy với một lượng dữ liệu thực tế nhỏ và
với mục đích bài toán cụ thê nhưng ta có thê tiép cận theo nhiêu hướng khác nhau của cùng một phương pháp khai phá dữ liệu và đạt được kết quả khác nhau, điều đó càng làm
Trang 20Chương 2: Trích chọn thuộc tính phù hợp
2.1 Giới thiệu
Trích chọn đặc trưng (Featưre Selecton) là phương pháp chọn ra một tập con tốt nhất từ tập các đặc trưng đâu vào bằng cách lọai bỏ những đặc trưng có rất ít hoặc không có thơng tin dự đốn
Trích chọn đặc trưng có vai trò quan trọng trong việc chuẩn bị và lựa chọn dữ liệu cho quá trình khai phá dữ liệu Nó sẽ làm giảm kích cỡ của không gian đặc trưng, loại bỏ dư
thừa hay nhiễu của dữ liệu Phương pháp này có thể tìm chính xác những tập con đặc trưng có khả năng dự đoán, do đó giúp cải thiện đáng kế kết quả thu được trong các mô hình phân lớp
Về cơ bản, quá trình trích chọn đặc trưng bao gồm bốn bước cơ bản: sinh tập con
(subset generation), danh gia tap con (subset evaluation), kiém tra diéu kién dừng của quá trình trích chon (stopping criterion) va két qua (result validation)
Subset Subset Subset
Original | Generation Evaluation Set A Goodness of Subset NO YES Result Validation Stopping Criterion
Hình 2.1: Bốn bước co ban trong quá trình trích chọn các thuộc tính phù hợp [6] Subset generation 1a mot thu tuc tim kiếm Về cơ bản, nó sinh ra một tập con của tập các đặc trưng dé đánh giá Giả sử có N đặc trưng trong tập dữ liệu sốc, thì số lượng các
tập con tiềm năng là 2" Vì một tập con tối ưu các điểm đặc trưng không phải là duy nhất nên số lượng các tập con có thể thỏa mãn là rất lớn, do đó quá trình tìm kiếm trong trích
chọn đặc trưng sẽ tốn nhiều thời gian và công sức Mỗi tập con được sinh ra cần phải được đánh giá và so sánh với những tập con tốt nhất đã được tìm thay trước Nếu tập con
tìm thấy sau là tốt hơn thì nó sẽ được thay thế cho tập con tốt nhất trước đây Nếu không
Trang 21có một điều kiện dừng hợp lý thì quá trình tìm kiếm các tập con tốt nhất sẽ được xem như
là vô hạn Một quá trình trích chọn đặc trưng có thể dừng khi thỏa mãn một trong những
điều kiện đánh giá sau: (a) chọn đủ số lượng đã được xác định trước của tập đặc trưng, (b)
thỏa mãn số lần đã được xác định trước của quá trình lặp lại (c) ở một khía cạnh (điều
kiện) nào đó tập con mới được đánh giá là không tốt hơn tập con trước, (d) tập con được
bộ đánh giá cho là tốt nhất [6]
2.2 Mô hình trong bài toán trích chọn
2.2.1 Các mô hình trong trích chọn
Trích chọn đặc trưng thật sự là lý tưởng trong lựa chọn tập con đặc trưng toi wu ti một tập ung cu đề mô tả khái niệm mục tiêu trong hệ thông học Độ tốt của một tập con
Trang 222: BO danh gia (Feature Subset Evaluator)
3: Cac thuat toan hoc may (Followed Machine learning Algorithm) 4: Thuật toán học máy diéu khién (Central Machine learning Algorithm)
Mô hình Eilter đánh giá mỗi cá thể bang một vài tiêu chuẩn hay độ đo nào đó, rồi
chọn ra tập con các thuộc tính được đánh giá cao nhất Nhìn chung, Filter coi tiễn trình của trích chọn thuộc tính như tiến trình thực thi trước, sau đó mới sử dụng thuật toán để
phân lớp
Wrapper sử dụng một thuật toán tìm kiếm để đánh giá tập con các thuộc tính coi như là một nhóm hơn là một cá thể riêng lẻ Cốt lõi của mô hình Wrapper là một thuật toán máy học cụ thể Nó đánh giá độ tốt của những tập con đặc trưng tùy theo độ chính xác học của tập con, điều này xác định thông qua một fiêu chí nào đó Những thuật toán tìm kiếm cũng sử dụng hàm đánh giá kinh nghiệm (heuristics) để hướng dẫn việc tìm kiếm tập trung vào các đôi tượng có triên vọng
2.2.2 Đánh gia hai mo hinh Filter va Wrapper 2.2.2.1 Mô hình Filter
e Ưu điểm:
- - Không có xử lý học máy trong quá trình lựa chọn các đặc trưng - _ Dễ dàng nhận diện và thời gian tiêu thụ ít hơn mô hình Wrapper
se Nhược điểm:
- _ Hiệu suất sản sinh các tập con đặc trưng là không đảm bảo vì nó thường đánh giá một tập con đặc trưng chỉ dựa trên đặc trưng nhỏ thiên về nguyên lý mà
không tính tới độ chính xác của kết quả học máy
- Kết quả thu được bị giảm sút về độ chính xác học ở những giai đoạn sau vì các hàm đánh giá hiện thời được sử dụng thường thiên về giá trỊ ở một vài phạm vi,
Trang 23= Tién trình học tốn kém về thời gian đến mức thời gian thực hiện đưa ra bởi
một thuật toán sử dụng mô hình Wrapper là không chấp nhận được
“ Với một hệ thống kích thước cực lớn, mô hình này không thực tế do phạm
vi của nó buộc phải thu nhỏ lại trước khi thuật toán học máy được áp dụng
“ Kết quả đánh giá của mô hình phụ thuộc nhiều vào thuật toán học máy điều khiển
2.3 Một số kỹ thuật xử lý
2.3.1 Bộ sinh tap con (Feature Subset Generator)
Tuy tung chiến lược cụ thể, bộ sinh tập con sẽ tạo ra những tập con đặc trưng từ một tập đầu vào tương ứng Đầu ra của bộ sinh sẽ xác định thuật toán trích chọn đặc trung
của việc tìm đường và tìm kiếm phạm vi trong một không gian đặc trưng tương ứng Nói
chung, bộ sinh có hai chiến lược để sản sinh ra những tập con đặc trưng:
e_ Đây ấu (Completely): Một bộ khởi tạo đầy đủ có thể sản sinh ra tất cả các tập con
từ một tập đặc trưng đầu vào, do vậy phạm vi tìm kiếm của chiến lược này là NP
đầy đủ, tuy nhiên điều này không phải lúc nào cũng chứng tỏ tìm kiếm vét cạn là cần thiết trong thực tế, bởi vì một số công nghệ như: đường biên và rẽ nhánh có thê
được áp dụng để lược bớt phạm vi tìm kiếm tốt nhất Bởi vậy nếu là thuật toán
trích chọn với bộ khởi tạo day đủ, thực nghiệm chỉ ra rằng không gian tìm kiếm
lớn nhất là O(2*) Mà đối với hầu hết những hệ thống học máy thực, điều này là
không cần thiết phải đánh giá tất cả những tập con từ một tập đặc trưng tương ứng
Thường thì, thuật toán trích chọn với bộ khởi tạo đầy đủ có thể tìm ra một tập con
đặc trưng tối ưu của hệ thống học máy nhưng đòi hỏi thời gian thực thi phức tạp Lu H [10] đã đưa ra bộ khởi tạo day đủ đặc biệt mà sản sinh một cách ngẫu nhiên ra những tập con đặc trưng dựa vào thuật toán Las Vegas (LV) Thuật toán LV có
thé tim kiếm trên toàn bộ không gian đáp án rồi sau đó đưa ra kết quả tối ưu đảm
bảo Tuy nhiên khác với những bộ khởi tạo đầy đủ khác, đối với một ứng dụng thực tế, khả năng thực thi của bộ khởi tạo Liu là hoàn toàn thay đối, nó phụ thuộc nhiều vào quá trình phân chia dữ liệu ngẫu nhiên trong toàn bộ hệ thống học máy
e Kinh nghiém (Heuristically): Đề lược bớt không gian tìm kiếm, bộ khởi tạo kinh nghiệm sản sinh ra các tập con đặc trưng dựa vào những chiến lược dựa theo kinh
Trang 24- Lwya chon tién (Forward Selection): Cac tập con đặc trưng được khởi tạo
trước hết là rỗng (null), sau đó liên tục gán những tính năng tốt nhất hiện thời cho tập con đó cho đến khi không còn tính năng nào nữa hay các điều
kiện thực thi đưa ra đã được tiếp nhận hết
- Lugc bo lui (Backward Elimination): Cac tap con dac trung duoc khoi tạo trước hết là day du cac dac trung, sau do loai bo lần lượt những đặc trưng
kém nhất hiện thời từ các tập con đó, cho đến khi không còn đặc trưng nào
hoặc các điều kiện thực thi đưa ra đã được triệt tiêu hết
- Lua chon hai hwong (Bi — direction Selection): Cac tập con đặc trưng được
khởi tạo trước hết là rong, day, hoặc sản sinh ngẫu nhiên một tập con đặc
trưng, sau đó liên tục hoặc là gán tính năng tốt nhất hiện thời cho tập con đó hoặc là triệt tiêu tính năng kém nhất từ các tập con đó Để từ đó đưa ra những giá trị định hướng tốt nhất ở mỗi lần lặp lại đó Quá trình tiếp tục cho
tới khi tất cả điều kiện được đưa ra từ trước đã được tiếp nhận hết
Bộ phận khởi tạo dựa trên kinh nghiệm giảm thiểu phạm vi tìm kiếm đa thức số mũ, do đó giảm thời gian thực hiện thuật toán phức tạp trong phương pháp trích chọn Tuy
nhiên, thuật toán chỉ đưa ra một lượng nhỏ kết quả tối ưu khi thực hiện tìm đường và tìm
kiếm phạm vi của bộ phận khởi tạo, kết guả này được đảm bảo thông qua những thuật
toán này
2.3.2 BO danh gia tap con đặc trưng (Feature Subset Evaluator)
Hiệu suất của một tập con đặc trưng được đánh giá dựa trên cơ sở nào đó mà bộ đánh
giá đạt được Bộ đánh gia của những mô hình thuật toán khác nhau là khác nhau Bộ đánh giá của mô hình Filter thường là các hàm đánh giá, trong khi của mô hình Wrapper là độ học chính xác đạt được bởi quá trình thực thi thuật toán học máy điều khiển trên hệ thống học
e Hàm đánh giá
Những hàm đánh giá điển hình dùng để đo đạc và phân biệt khả năng phân lớp của
những đặc điểm khác nhau trên các mẫu Thực tế, các hàm đánh giá khác nhau
thường được dùng hiện nay như: xấp xỉ chất lượng (Approximation Quality), độ
quan trọng của thuộc tính (Feature Importance), trọng số của thuộc tính (Feature
Weight)
e Hoc chính xác
Trang 25Trong m6 hinh Wrapper, để ước lượng độ học máy chính xác, trước hết, các mẫu của huấn luyện phải được chia ngẫu nhiên làm hai tập dữ liệu, bao gồm: tập huấn luyện và tập kiểm tra, trong đó, cấu trúc của hai hệ thống con có cùng đặc điểm và
được tạo ra bởi bộ sinh; sau đó mô hình được huấn luyén (training) dé tim ra tham
số tối ưu và các tham số này được kiểm chứng lại nhờ quá trình kiểm tra kết quả
học thông qua tập kiểm tra (Validation set) Hiển nhiên, độ chính xác đạt được
trong trường hợp này là giá trị ngẫu nhiên, nó phụ thuộc lớn vào kết quả của việc
chia mau Dé tang muc do ôn định của việc ước lượng độ chính xác học máy, bộ
đánh giá của mô hình Wrapper thường được sử dụng cùng kỹ thuật kiểm tra chéo
(Cross Validation) [11]
2.3.3 Thudt todn hoc diéu khién (Central machine learning algorithm)
Trong mô hình Wrapper, thuật toán học máy điều khiến có ảnh hưởng lớn tới ước lượng độ chính xác học của một tập con đặc trưng Do vậy, fhuật toán đóng vài trò quyết định trong mô hình Wrapper Thuật toán thường được chọn ở ví trí trung tâm mô hình thuong la: ID3, CN2, C4.5
2.4 Kết luận
Trích chọn được xem như bước tiền xử lý dữ liệu Phương pháp này lọc ra những đặc
trưng tốt nhất, đồng thời loại bỏ nhiễu, giảm bớt chiều trong dữ liệu Hai mô hình phố
Trang 26Chuong 3: Genetic algorithms
3.1 Giới thiệu
Thuút toán di truyền là thuật tốn tơi wu ngấu nhiên dựa trên cơ chế chọn lọc tự nhiên và tiễn hóa di truyền Thuật toán di truyền được ứng dụng đầu tiên trong hai lĩnh vực chính: tối ưu hóa và học máy Trong lĩnh vực tối ưu hóa thuật toán di truyền được phát
triển nhanh chóng và ứng dụng trong nhiều lĩnh vực khác nhau như tối ưu hàm, xử lý ảnh,
bài toán hành trình người bán hàng, nhận dạng hệ thống và điều khiến Thuật toán di
truyền cũng như các thuật toán tiễn hóa nói chung, hình thành dựa trên quan niệm cho rằng, quá trình tiễn hóa tự nhiên là quá trình hoàn hảo nhất, hợp lý nhất và tự nó đã mang tính tối ưu Quan niệm này có thể xem như một tiên để đúng, không chứng minh được, nhưng phù hợp với thực tế khách quan Quá trình tiến hóa thể hiện tính tối ưu ở chỗ, thế hệ sau bao giờ cũng tốt hơn (phát triển hơn, hoàn thiện hơn) thế hệ trước bởi tính kế thừa
và đâu tranh sinh tôn 3.2 Động lực
Thuật giải di truyền cung cấp một phương pháp học được thúc đây bởi sự tương tự với
sự tiễn hóa sinh học Thay vì tìm kiếm các giả thuyết từ tong quat đến cụ thể hoặc từ đơn
giản đến phức tạp, GAs tạo ra các giả thuyết kế tiếp bằng cách lặp việc đột biến và việc
tái hợp các phần của giả thuyết được biết hiện tại là tốt nhất Ở mỗi bước, một tập các giả
thuyết được gọi là quân thê hiện tại được cập nhật bằng cách thay thế vài phần nhỏ quân
thể bởi cá thể con của các giả thuyết tốt nhất ở thời điểm hiện tại Sự phổ biến của GAs
được thúc đây bởi các yếu té sau:
e_ Tiến hóa là một phương pháp mạnh và thành công cho sự thích nghi bên trong các
hệ thông sinh học
e_ GA có thể tìm kiếm trên các không gian giả thuyết có các phần tương tác phức tạp, ở đó ảnh hưởng của mỗi phân lên toàn thể độ thích nghi giả thuyết khó có thể mô hình hóa
e Thuật giải GA có thể được thực hiện song song và có thể tận dụng thành tựu của
phân cứng máy tính
Trang 273.3 Thuật giải di truyền
3.3.1 Nội dung thuật toán
Bài toán dành cho GAs là tìm kiếm trên không gian các giả thuyết ứng cử để xác định giả thuyết tốt nhất Trong GAs “giả thuyết tốt nhất” được định nghĩa như là một giả
thuyết tối ưu hóa một đại lượng số được định nghĩa trước cho bài toán sắp tới, được gọi là
độ thích nghỉ của giả thuyết Ví dụ, nếu tác vụ học hỏi là bài toán xấp xỉ một hàm chưa biết cho tập mẫu huấn luyện gồm dữ liệu đầu vào và dữ liệu đầu ra, thì độ thích nghi có thể được định nghĩa như là độ chính xác của giả thuyết trên dữ liệu huấn luyện này Nếu tác vụ là học chiến lược chơi cờ, độ thích nghi có thể là số ván thăng của chiến lược này
khi đấu với các chiến lược khác trong quân thể hiện tai
Mặc dù các thuật giải di truyền được thực hiện thay đối theo bài toán cụ thể, nhưng
chúng chia sẻ chung cau trúc tiêu biểu sau: Thuật giải hoạt động băng cách cập nhật liên tục tập giả thuyết — được gọi là quần thể Ở mỗi lần lặp, tất cả các cá thể trong quân thể được ước lượng tương ứng với hàm thích nghi Rồi quân thể mới được tạo ra băng cách
lựa chọn có xác suất các cá thể thích nghĩ tốt nhất từ quân thể hiện tại Một số trong
những cá thể được chọn được đưa nguyên vẹn vào quân thể kế tiếp Những cá thể khác được dùng làm cơ sở để tạo ra các cá thể con băng cách áp dụng các tác động di truyền: lai ghép và đột biến
Bảng 3.1: Thuật giải di truyền mẫu [20]
GA (Fitness, Fitness_threshold, p, r, m)
{ // Fitness: ham gán thang điểm ước lượng cho một giả thuyết
// Fitness_ threshold: Ngưỡng xác định tiêu chuẩn dừng giài thuật tìm kiếm // p: Số cá thể trong quần thể giả thuyết
// r: Phân số cá thể trong quần thể được áp dụng toán tử lai ghép ở mỗi bước
// m: Tỉ lệ cá thể bị đột biến
e Khởi tạo quần thể: P < Tạo ngẫu nhiên p cá thể giả thuyết
e _ Ước lượng: Ứng với mỗi h trong P, tính Fitness(h)
e while [max Fitness(h)| < Fitness_ threshold do
Tạo thế hệ mới, Ps
Trang 28Fitness (h,
Pr(h\) = _FimessCi) 21 Fitness(h, )
2 Lai ghép: chọn lọc theo xác suất = cặp giả thuyết từ quần thé P, theo Pr(h,) đã
tính ở bước trên Ứng với mỗi cặp <h¿, h;>, tạo ra hai con bằng cách áp dụng toán tử
lai ghép Thêm tất các các con vào Ps
3 Đột biến: Chọn m% cá thể của Ps với xác suất cho mỗi cá thể là như nhau Ứng với mỗi cá thể biến đổi một bit được chọn ngẫu nhiên trong cách thể hiện của nó
4 Cap nhat: P < Ps
5 Ước lượng: Ứng với mỗi h trong P, tính Fitness(h)
e Trả về giả thuyết trong P có độ thích nghi cao nhất
Quân thê gồm p cá thể Ở mỗi lần lặp, quần thể kế tiếp Ps được hình thành từ việc lựa
chọn theo xác suất các giả thuyết hiện tại theo độ thích nghi của chúng và bằng cách thêm
vào các giả thuyết mới Các giả thuyết mới được tạo ra băng cách áp dụng toán tử lai ghép cho cặp giả thuyết thích nghi nhất và băng cách tạo ra các đột biến điểm đơn trong thế hệ
giả thuyết kết quả Quá trình này được lặp cho đến khi các giả thuyết thích hợp được phát hiện Các toán tử ii ghép và đột biến tiêu biêu được định nghĩa trong bảng kế tiếp
Một thuật giải di truyền mẫu được mô tả trong bảng 3.1 Các đầu vào cho thuật giải
này bao gồm hàm tính độ thích nghi để tính hạng cho các giả thuyết ứng cử, một giá trị ngưỡng được định nghĩa cấp độ thích nghi có thể chấp nhận để kết thúc thuật giải, kích thước quân thể, và các tham số quyết định các quân thể kế tiếp được tạo ra như thế nào: phân quân thể bị thay thế ở mỗi thế hệ và tỉ lệ đột biến
Lưu ý trong thuật giải này, ở mỗi bước lặp qua vòng lặp chính tạo ra một thế hệ mới
các giả thuyết dựa vào quần thế hệ hiện tại Trước tiên, một số giả thuyết được chọn từ
quân thể hiện tại để đưa vào thế hệ kế tiếp Những giả thuyết này được chọn theo xác suất,
ở đây xác suất của giả thuyết được tính bởi [20]:
Fitness(h,)
Tu itness(h; )
Pr(h¡) =
Vì vậy, xác suất để giả thuyết được chọn tỉ lệ với độ thích nghi của nó và tỉ lệ nghịch
với độ thích nghi của các giả thuyết cạnh tranh khác trong quân thể hiện tại
Một khi các cá thể này của thế hệ hiện tại đã được chọn để đưa vào quân thể thế hệ kế
tiếp, các cá thể thêm vào được tạo ra dùng toán tử lai ghép Lai ghép, được định nghĩa chỉ
Trang 29tiét trong phan ké tiép, lay hai gia thuyét tir thé hé hién tai va tao ra hai gia thuyét con bằng cách kết hợp các phần của hai giả thuyết cha Các giả thuyết cha được chọn theo xác
suất từ quân thê hiện tại, sử dụng hàm xác suất được định nghĩa ở trên Sau khi các cá thể
mới được tạo ra từ hoạt động lai ghép này, quân thế thế hệ mới bây giờ có đủ số lượng
thành viên mong muốn Lúc này, một phân s6 m nao đó các cá thé này được chọn một cách ngẫu nhiên và tất cả các đột biến ngẫu nhiên được thực hiện để thay đổi các cá thể
`
này
3.3.2 Thể hiện các giả thuyết
Các giả thuyết trong GAs thường được thê hiện đưới dạng chuối các bit, để chúng có
thé dé dàng được thực hiện bởi các toán tử di truyền là đội biến và lai ghép [14] Các giả thuyết được thể hiện bởi chuỗi bit này có thể khá phức tạp Ví dụ, tập các luật if-then có thé dễ dàng được thể hiện theo cách này, bằng cách chọn một cách thức mã hóa các luật
để phân bố các chuỗi con riêng cho mỗi điều kiện trước và điều kiện sau của luật
Đề thay các luật if-then có thể được mã hóa băng các chuỗi bit như thế nào, trước tiên
hãy xem chúng ta có thể sử dụng chuỗi bit như thế nào để mô tả ràng buộc trên giá trị của
thudc tinh don Lay mét vi du [20], hay xem xét thuéc tinh Outlook, thudc tinh nay c6 thé
lay bat ki giá trị nào trong ba gia tri: Sunny, Overcast hoac Rain Mot cach ro rang dé thé
hiện ràng buộc cho Øuziook là dùng một chuỗi bít có chiều dài 3, mỗi vị trí bit trong tng
với một trong ba giá tri có thể của nó Đặt gia tri 1 ở một vài vị trí để chỉ ra rằng thuộc
tính được phép lấy giá trị tương ứng Ví dụ, chuỗi 070 thể hiện ràng buộc Øuzlook phải lay gid tri thir hai trong cdc gid tri nay, hay 1A Outlook = Overcast Mét cách tương tự, chuỗi 077 thể hiện ràng buộc tổng quát hơn là cho phép hai giá trị c6 thé, hay 1A Outlook = Overcast U Rain Chú ý 111 thê hiện ràng buộc có thể tổng quát nhất, chỉ ra răng chúng ta không quan tâm giá trị nào trong các giá trị có thể của nó mà thuộc tính giữ
Đưa ra phương pháp này để thể hiện các ràng buộc trên thuộc tính đơn, các liên kết
của các ràng buộc trên nhiều thuộc tính có thé dé dàng được thể hiện bằng cách nối các
chuỗi bit tương ứng Ví dụ, xem xét thuộc tính thứ hai, Wind có thể lẫy giá tri Strong
hoặc Wea# Điều kiện trước của luật chang han nhu:
(Outlook = Overcast U Rain) N (Wind = Strong)
Có thể được biểu diễn bởi chuỗi bit có chiều dài là 5 sau:
Trang 30O11 10
Các điều kiện sau của luật (chang han nhu PlayTennis = yes) có thé dugc thé hién theo
kiểu tương tự Vì vậy, toàn bộ luật có thể được mô tả bởi móc nỗi các chuỗi bit mô tả các điều kiện đầu, cùng với chuỗi bit mô tả điều kiện sau của luật Ví dụ, luật
IF Wind = Strong THEN PlayTennis = yes
sẽ được thể hiện bởi chuỗi:
Outlook Wind PlayTennis
TH 10 10
ở đây 3 bit đầu tiên mô tả ràng buộc “không quan tâm” trên Outlook , hai bit ké tiép mô tả ràng buộc trên Wind, và hai bit cuối cùng mô tả điều kiện sau của luật (ở đây chúng ta giả sử PlayTennis có thê lẫy giá trị Yes hoặc No) Chú ý chuỗi bít thể hiện luật chứa
một chuỗi con cho mỗi thuộc tính trong không gian giả thuyết, thậm chí thuộc tính không bị ràng buộc bởi các điều kiện trước Điều này tạo ra một chuỗi bit có chiều dài cô định để
thể hiện các luật, trong đó các chuỗi con ở các vị trí cụ thể mô tả các ràng buộc trên các thuộc tính cụ thể Đưa ra cách thể hiện này cho các luật đơn, chúng ta có thê thể hiện tập
các luật băng cách móc nối các thê hiện chuỗi bit của các luật riêng biệt
Trong thiết kế mã hóa chuỗi bit cho một vài không gian giả thuyết, thật là hữu ích để
sắp xếp cho mọi chuỗi bit tuân thủ theo cú pháp để thể hiện một giả thuyết được định nghĩa tốt Để mô tả, chú ý cách mã hóa luật ở đoạn trên, chuỗi bit 777 70 77 thể hiện luật
có điều kiện trước không ràng buộc thuộc tính mục tiêu Piay7enmis Nếu tránh xem xét
giả thuyết này, chúng ta có thể mượn một cách mã hóa khác (ví dụ phân bố chỉ một bit
cho điều kiện sau để chỉ định giá trỊ là Yes hoặc No), thay đổi các toán tử di truyền để tránh một cách tường minh việc xây dựng các chuỗi bit như thế, hoặc đơn giản gán một
độ thích nghi rất thấp cho các chuỗi bit như vậy
3.3.3 Các toán tử đi truyền
Những thể hệ sau trong GAs được quyết định bởi tập các toán tử tái hợp và đột biến
cdc cd thé được chọn từ quân thể hiện tại Các toán tử GAs tiêu biêu để thực hiện các giả
thuyết chuỗi bit được mô tả trong bảng 3.1 Các toán tử này tương ứng với các phiên bản được ý tưởng hóa của các hoạt động di truyền trong tiễn hóa sinh học Hai toán tử phổ
biến nhất là /z¡ ghép và đột biến
Trang 31Toán tử lai ghép tạo ra hai con từ hai chuỗi cha bằng cách sao chép các bit được chon lựa từ mỗi cha Bit ở vị trí ¡ trong mỗi con được sao chép từ bit ở vị trí ¡ của một trong hai cha Chọn lựa cha nào phân phối bit cho vi tri i được quyết định bởi thêm vào một chuỗi mặt nạ lai ghép
Các chuỗi ban đầu Mặt nạlaighép Các cá thé con Lai ghép điểm đơn: 11101001000 11101010101 NV 1111000000 77 00001010101 ⁄ N 00001001000 Lai ghép diém kép: 11101001000 11001011000 2 NY 00111110000 Xi 00001010101 ⁄ N 00101000101 Lai ghép đồng nhất: 11 40101000 10001000100 LÍ dị N| 00111110000 J) 0001010101 ⁄ N 01101011001 Đột biến điểm: 11101001000 > 11101011000
Hình 3.1: Các toán tử chung cho thuật giải di truyền [20]
Đề minh họa, xem xét todn ttr Jai ghép diém don (single-point) 6 dau hinh 3.1 Xem xét hai con trên nhất trong trường hợp này Con này lấy năm bit đầu tiên của nó từ cha thứ
nhất và sáu bit còn lại từ cha thứ hai, bởi mặt nạ lai chép là 77771000000 xác định các lựa
chọn này cho mỗi vi trí bit Con thứ hai dùng cùng mặt nạ lai ghép, nhưng đổi vai trò của hai cha Do đó, nó chứa các bit không được dùng bởi con đầu tiên Trong /zi ghép điểm đơn, mặt nạ lai ghép luôn luôn được xây dựng sao cho nó bắt đầu với chuỗi chứa ø giá trị
1 liên tục, được theo sau một số gia tri O cần thiết để hoàn chỉnh chuỗi Cách này tạo ra cá
Trang 32lần toán tử lai ghép điểm đơn được áp dung, diém lai ghép n được chọn ngẫu nhiên, rồi mặt nạ lai ghép được tạo và áp dụng
Trong /2¡ ghép hai điểm (điểm kép), cá thê con được tạo ra bởi thay thế các đoạn trung
gian của một cá thể cha vào giữa của chuỗi cha thứ hai Nói một cách khác, mặt nạ lai
ghép là một chuỗi bắt đầu với mạ trị 0, được theo sau bởi chuỗi liên tục 7, trị 7, được theo sau bởi một số trị 0 cần thiết để hoàn chỉnh chuỗi Mỗi lần toán tử lai ghép hai điểm được
áp dụng, một mặt nạ được tạo ra bằng cách chọn ngẫu nhiên các số nguyên 7ñ; và n; Ví dụ, ở hình 3.1 cá thể con được tạo ra dùng một mặt nạ với 1ñ; = 2 và øñ; = 5 Như lai ghép trước, hai cá thể con được tạo ra bằng cách hoán đổi vai trò của hai cá thể cha
Lai ghép đồng nhất kết hợp các bít được lây mẫu đồng nhất từ hai cá thể cha, như được minh họa trong trong hình 3.1 Trong trường hợp này, mặt nạ lai ghép được tạo ra
như là một chuỗi bit ngẫu nhiên với mỗi bit được chọn ngẫu nhiên và độc lập với các bịt
khác
Thêm vào các toán tử tái kết hợp - tạo ra cá thể con băng cách kết hợp các phan cua
hai cá thể cha, một loại toán tử thứ hai tạo ra cá thể con từ một cá thể cha Cụ thể là oán
từ đột biến tạo ra những thay đối ngẫu nhiên nhỏ cho chuỗi bit bằng cách chọn một bit ở vị trí ngẫu nhiên, rồi thay đổi giá trị của nó Đột biến thường được thực hiện sau khi lai ghép được áp dụng như trong giải thuật mẫu trong bảng 3.1
Một vài hệ thống GAs mượn thêm một vài toán tử, các toán tử đặc biệt được chuyên
biệt hóa cho biểu diễn giả thuyết cụ thể được sử dụng bởi hệ thống Ví dụ, John 1 Grefenstette [15] mô tả hệ thông học tập luật điều khiến robot Nó sử dụng đột biến và lai
ghép cùng với một toán tử để chuyên biệt hóa các luật
3.3.4 Hàm thích nghĩ và sự chọn lọc
Hàm thích nghi định nghĩa tiêu chuẩn để xếp hạng các giả thuyết tiềm ẩn và đề chọn lọc chúng theo xác suất đề đưa vào quân thể thế hệ kế tiếp Nễu tác vụ là học các luật phân loại, thì hàm thích nghi thông thường có một thành phần cho điểm độ chính xác phân loại của luật trên tập mẫu huấn luyện được cho Thường các tiêu chuân khác có thể
được bao hàm, chang hạn như độ phức tạp và mức độ tong quát của luật Một cách tong
quát hơn, khi giả thuyết chuỗi bit được hiểu như là một thủ tục phức tạp (ví dụ, khi chuỗi bit thể hiện tập chọn lọc, các luật if-then sẽ được móc xích với nhau, để điều khiến thiết bị
robot), hàm thích nghi có thể đo hiệu suất tong của thủ tục kết quả hơn là hiệu suất của các luật riêng biệt
Trang 33Trong thuật giải GA mẫu được chỉ trong bảng 3.1, xác suất để một giả thuyết được
chọn được cho bởi tỉ số của độ thích nghi của nó với độ thích nghi của các thành viên
khác của quân thể hiện tại, như đã thấy trong phương trình tính giá trị thích nghi Phương
pháp này thỉnh thoảng thường được gọi là sự chọn lọc tỉ lệ độ thích nghĩ, hoặc sự chọn lọc
vòng roulette Các phương pháp khác dùng độ thích nghi để chọn lọc các giả thuyết cũng
sẽ được đề xuất Ví dụ, sự chọn lọc kiểu vòng thi dau, hai gia thuyét dau tién duoc chon ngau nhiên từ quân thể hiện tại Với một vài xác suất p được định nghĩa trước hai cá thể
này càng phù hợp càng được chọn và với xác suất (7 — p) giả thuyết càng ít phù hợp càng
được chọn Sự chọn lọc theo vòng thi dau thuong tao ra quan thê khác nhau nhiều hơn so với sự chọn lọc tỉ lệ với độ thích nghi (Goldberg và Deb 1991) Trong phương pháp sự
chọn lọc theo hạng, các giả thuyết trong quân thể hiện tại đầu tiên sẽ được sắp xếp theo độ
thích nghi Xác suất đề giả thuyết sẽ được chọn tỉ lệ với hạng của nó trong danh sách đã
Trang 34Chuong 4: Minimax probability machine
4.1 Giới thiệu
Xuất phát từ bài toán phân lớp, giả sử cho tập dữ liệu trong đó các thuộc tính của các
phân tử là các triệu chứng cua bênh nhân bi bênh ung thư chăng han Nhiệm vụ chính la phân biêt đươc ngươi bi bênh va ngươi không bi bênh Ở đây goi lơp X là nhóm người
không bị bệnh và lớp Y là nhóm người bị bệnh
Minimax probability machine là một thuật toán phân hai lớp đữ liệu, cung cấp một giới hạn cho xác suất phân loại sai trong trường hợp xấu nhất dựa trên những đánh giá đáng tin cậy về giá trị trung bình và ma trận hiệp phương sai của các lớp trong tập dữ
hiệu huán luyện
4.2 Nội dung thuật toán
Trong bài toán phân lớp ta cần đi tìm một siêu phắng (nếu hiểu trong mặt phăng thì nó
là một đường thăng) chia tập dữ liệu ra làm hai, siêu phắng cụ thể có dạng tổng quát là
[16]:
a'z = b(a,z€ R",a#0,DER)
Để tìm được một siêu phang tối ưu nhất (tức là phân chia tốt nhất) cần thực hiện qua
trinh huan luyén (training) Nhu vay tap du liéu se phaic hia ra lam tap training va tap test Tap training dung dé tim ra siéu phang Sau do ta dung tap test dé xem rang đô chinh xác của siêu phăng đó là bao nhiêu và có tốt hay không?
Trong MPM dữ liệu được phân ra làm hai lớp băng cách cực tiêu hóa xác suất phân lớp sai của dữ liệu tương lai trong trường hợp xấu nhất [ 16]:
maxa_s.t_ infPr{a’x >b} =a,
a,a#0,b
infPr{a’y <b}=a
Trong đó: ø đại diện cho cận dưới của độ chính xác đối với dữ liệu tương lại, được gọi
là độ chính xác trong trường hợp xấu nhất
Như vậy MPM sẽ có các yếu tô a, b, œ được xác định
Bài toán phân lớp đặt ra trong hai trường hợp:
e_ Tập dữ liệu là tuyến tính khi đó các điểm đữ liệu mới sẽ được phân chia bởi dấu hiệu sign(a! Znoy — b.) néu dau nay 1a +1, khi do z,.y €X ngược lại thì
Znew EY
Trang 354.3
4.4
Tập dữ liệu là phi tuyến, khi đó sử dụng một hàm kernel đề đưa không gian gốc về một không gian đặc biệt, ở đó dữ liệu là tuyến tính, khi đó việc phân lớp sẽ được
thực hiện trên không gian đặc biệt đó, chiêu tơi môt không gian đăc bịêt RI qua
Anh xa sau pg: R™ > Rf, ham kernel K(z1, 2.) = @(Z)T@(2¿) thỏa mãn điều kiện
Mercer (diéu kién dé một hàm là Kernel) Khi đó việc phân lớp điểm dữ liệu mới
Z„e„ được thực hiện băng cách đánh giá:
sign(aŸg(,„„)— b.) = sign|(Y ` Ir]KŒuz„u))—b.]
Nếu giá trị này bằng +l khi đó Z„„„ € X ngược lại thì Z„„„ € Y
Ny+Ny
i=1
Ưu điểm va nhugce diém cia minimax probability machine Uu diém:
- _ Phi phân phối (distribution-free): không cần đưa ra một giả thuyết phân phối cụ
thể, bộ phân lớp được xây dựng trực tiếp từ bộ dữ liệu
- - Trong các trường hợp tong quát, độ chính xác của việc phân lớp được giới hạn
bởi giá trỊ đ
Nhược điểm:
- _ Trong các trường hợp cụ thể, tầm quan trọng của hai phân lớp không phải luôn
luôn ngang nhau, do vậy việc đặt cận dưới # như nhau cho cả hai lớp là không
cần thiết — sự ra đời của Biased Minimax Probability Machine
- - Mặt khác, không có gì chứng tỏ hai cận dưới này phải bằng nhau Do đó, mô hình thu được trong trường hợp này là không tối ưu — sự ra đời của Minimuưưn Error Minimax Probability Machine
Các phiên bản cải tién cia minimax probability machine
Phan nay sé gioi thigu tong quan vé hai m6 hinh cai tién cua minimax probability machine \a: Minimum error minimax probability machine va Biased minimax probability
machine
4.4.1 Minimum error minimax probability machine (MEMPM)
Minimum error minimax probability machine la mé hinh phan lép toi wu Bayes phi phân phối (distribution-fee), được mở rộng từ MPM [17]
Trang 36nhất thiết phải cực tiểu hóa tỉ lệ lỗi trong trường hợp xấu nhất, do vậy chưa tối ưu
MEMPM loại bỏ ràng buộc trên, đưa ra mô hình tổng quát sau [17]:
max Øœ+(1—6)8, s.t inf Pr{iaÍx >b}>«œ,
af ,a#0,b x~(X,)x)
inf Pr{aTy < b}> 8
y~(y,y) “ ) P
Tương tự như MPM, ø và ổ là độ độ chính xác của việc phân lớp trong trường hợp
xấu nhất, tương ứng với đó, Ø € [0,1] là xác suất tiên nghiệm của lớp x và 1 — 6 là xác
suất tiên nghiệm của lớp y Ta thấy việc cực đại hóa Oa + (1 — 6)jØ chính là cực đại hóa độ chính xác trong trường hợp xấu nhất Nói cách khác, nếu chúng ta thay nax{0œ + (1 — 8)Ø} bằng min{6(1 — ø) + (1 — 6)(1— B)} va coi 1 — ø là xác suất cận trên mà
một điểm dữ liệu thuộc lớp x được xếp vào lớp y (tương tự với 1— Ø) thì mô hình
MEMPM chính xác là cực tiểu hóa lỗi Bayes cực đại và do đó thu được siêu phẳng tối ưu Bayes trong trường hợp xấu nhất
Trang 37ñ1.5ƑF 4 wa decision plane when o=B (h.2) Hinh 4.1; M6 ta su khac nhau gitta MEMPM (h.1) va MPM (h.2) voi cung xdc suất tiên nghiệm cho 2 lớp [ L7]
Trong hình 4.1, mặt phăng quyết định tối ưu ứng với điểm giao nhau, tại đó lỗi error
(1-a)+(1-b) là cực tiểu (độ chính xác a+b là cực đại) như trong MEMPM
4.4.2 Biased minimax probability machine (BMPM)
Biased minimax probability machine citing la m6 hinh dwoc mo réng tic MPM bang cách loại bỏ giả thuyết về trọng số đối xứng cho mỗi phân lớp trong MPM [18] BMPM
dùng để giải quyết các bài toán phân lớp bất đối xứng, đặc biệt là trong các ứng dụng
chân đoán y học Mục tiêu của bộ phân lớp kiểu này là đảm bảo độ chính xác của các lớp
quan trọng càng cao càng tốt, còn độ chính xác của các lớp ít quan trọng hơn thì chỉ cần ở
mức độ chấp nhận được
Công thức của BMPM: [IS]
max, a Ss t _ int Pr{a’x > b}>œ, in Pr{aTÍy < b} >8
y~(y 3y)
B>y
Trong đó các ký hiệu có ý nghĩa giống như trên đã nói, y là một hằng số dương xác
định trước, thể hiện mức độ chính xác chấp nhận được đối với lớp ít quan trọng
Trang 38Chuong 5: Phuong phap dé nghi
5.1 Tổng quan về phương pháp
Bước quan trọng đầu tiên trong việc xây dựng mô hình dự đoán là làm sao chọn được
tập giá trị đầu vào thích hợp Hầu hết các kỹ thuật khai phá dữ liệu hiện nay đều không
đạt hiệu quả cao với tập dữ liệu có số chiều lớn, độ chính xác và hiệu quả truy vẫn giảm
nhanh chóng khi số chiều tăng lên Ngoài ra việc thu thập dữ liệu cũng tốn nhiều thời gian,
công sức và tiền bạc, nhưng số chiều bên trong dỡ liệu cần sử dụng trên thực tế là nhỏ (ví dụ: số lượng các Gen tương ứng cho một loại bệnh là rất nhỏ) Việc chọn lựa dữ liệu thích
hợp làm đầu vào cho mô hình dự đoán sẽ giúp đưa ra kết quả có tính chính xác cao và giúp tôi ưu thời gian thực hiện công việc
5.1.1 Mô tả phương pháp
Theo ý tưởng trên, trong bài toán cụ thể là chuẩn đoán bệnh ung thư, dữ liệu về bệnh
nhân được trình bày dưới dạng một ma trận, trong đó mỗi cột là một dấu hiệu (thuộc tính)
của bệnh ung thư, mỗi dòng sẽ biểu diễn những số liệu về một bệnh nhân cụ thể Ở bước đầu tiên, chúng ta sử dụng thuật toán di truyền (GA) để giải quyết vẫn đề tối ưu tập thuộc
tính từ tập dữ liệu ban đầu Bước thứ hai, phương pháp phân lớp MPM sẽ thực hiện phân lớp với tập thuộc tính đã được chọn lọc để đưa ra kết luận bệnh nhân đó có khả năng bị ung thư hay không ?
Ở đây ta áp dụng GA như một công cụ tối ưu hóa đầu vào cho quá trình phân lớp, nhăm tăng hiệu năng và tính chính xác của quá trình phân lớp Trước tiên, GA được áp
dụng để chọn ra tập con thuộc tính tốt nhất từ tập dữ liệu ban đầu Dữ liệu của chúng ta
bao gồm ø cột số liệu sẽ được mô tả dưới dạng một vector nhị phân 01110 11101 có độ
đài ứng với số thuộc tính và có ý nghĩa như sau: 0 là không chọn cột đó, còn T là chọn cột
có số thứ tự tương ứng Cách biểu diễn này sẽ mô tả được bộ dữ liệu với số cột được lựa
chọn theo một thứ tự ngẫu nhiên Một chuỗi nhị phân được coi là một chromosome trong thuật toán đi truyền Tiếp đó tìm các chuỗi nhị phân này được thực hiện thông qua các phép toán của GA như chọn lọc, lai ghép và đột biến dựa trên hàm mục tiêu là MPM hay MPM dùng để tính toán giá trị thích nghi (fitness function) cho GA Với tập thuộc tính
được coi là tối ưu, chúng ta sẽ sử dụng phương pháp MPM để chuẩn đoán bệnh nhân đó
Trang 39thuộc về lớp bị bệnh hay không bị bệnh và so sánh kết quả phân lớp với kết quả thực tế nhăm đánh giá mức độ tốt của hệ thống
5.1.2 Mô hình bài toán Training Model ! Training Validation ! Set Set | Error 7 MPM > GA ' | <<variable selection evaluator>> \e < <search>> ; / 1 `" Best chromosome MPM đã được tối ưu
Hình 5.1: Mô hình kết hợp thuật toán đi truyền và phương pháp phan lop MPM
Trong đó, bộ dữ liệu Test chiếm 30% dữ liệu gốc, bộ dữ liệu Train chiếm 70% dữ liệu sốc Tiếp tục chia theo dữ liệu Train thành hai phần trong đó dữ liệu Validation chiếm
30% bộ dữ liệu Train và 70% còn lại của dt ligu Train la Training set
5.2 Mô tả dữ liệu sử dụng
Dữ liệu sử dụng để đánh giá và kiểm thử mô hình là một bộ dữ liệu phi tuyến về bệnh
ung thư Bộ dữ liệu bao gồm 311 hàng và 120 cột, trong đó cột cuối cùng là nhãn Nó có
2 lớp nhãn, ký hiệu nhãn +ÏI tương ứng với không bị bệnh và nhãn -I là bị bệnh ung thư
Trang 40Như vậy, bộ dữ liệu có 311 phần tử và mỗi phân tử có 119 thuộc tính Bang 5.1: Mé ta bang dit liéu su dung (file Stomach_Full.mat) 1 2 3 ase 119 Nhan 1 642.48 835.28 615.65 rà 329.66 1 2 58/.21 786.04 380.87 " 131.73 -1 3 1006 1325.7 330.09 wee 252.63 -1 4 524.47 646.16 417.86 wee 314.33 -1 310 648.43 1155.9 230.35 wee 236.92 1 311 496.06 1413.8 293.8 ee 335.01 1 312 1060 1205.4 177.06 wee 224.09 1
5.3 Cac module trong hé thống và giao diện của chương trình
Chương trình được xây dựng và chạy trên MATLAB 7.0 MATLAB (Matrix Laboratory) là một phần mềm khá mạnh trong việc giải quyết các bài toán kỹ thuật và thống kê như xử lý tín hiệu số, hệ thống điều khiển, mô phỏng hay mang neuron
5.3.1 Chi tiét céc module ciia Genetic Algorithm
Đề nâng cao tính chính xác của bộ phân lớp, chương trình sử dụng gói “Genetic
Algorithm Tool” trong Matlab 7.0 để thực hiện việc tối ưu hóa tập dữ liệu đầu vào cho bộ
phan lop MPM
Dữ liệu cua ta bao gom I19 cột thuộc tính sẽ được mã hóa ở dạng chuỗi nhị phân 0101 011 với ý nghĩa như sau: 0 là không chọn và I là chọn cột thuộc tính có số thứ tự tương ứng Mỗi chuỗi nhị phân có độ dài cố định là 119 được xem như một chromosome
trong thuật toán di truyền Tiếp theo ta sẽ sử dụng MPM là hàm đánh giá (ñtness function) để tìm ra chromosome tốt nhất ở thế hệ cuối cùng băng cách cực tiểu hóa tỷ lệ lỗi
Để tìm ra chromosome tốt nhất từ tập dữ liệu ban đầu, thuật toán di truyền cần thực hiện quá trình chọn lựa, lai ghép và đột biến