Nh v y ta có thể khái quát hóa khái niệm KPDL lƠ “quá trình kh o sát và phân tích m t l ợng lớn các dữ liệu đ ợc l u trữ trong các CSDL, kho dữ liệu… để từ đó trích xu t ra các thông tin
Trang 1Đ IăH CăĐĨăN NG
NGăD NGăKHAIăPHỄăD ăLI UăĐ XỂYăD NGăH ăTH NGăTR ăGIÚP ĐỄNHăGIỄăR IăROăTRONGăB OăHI MăTĨUăCỄ
LU NăVĔNăTH CăSƾă
H ăTH NGăTHỌNGăTINă
ĐƠăN ngă- Nĕmă2019
Trang 2Đ IăH CăĐĨăN NG
NGăD NGăKHAIăPHỄăD ăLI UăĐ XỂYăD NGăH ăTH NGăTR ăGIÚP ĐỄNHăGIỄăR IăROăTRONGăB OăHI MăTĨUăCỄ
ChuyênăngƠnh:ăH ăth ngăthôngătin
Mưăs :ă848.01.04
LU NăVĔNăTH CăSƾă
ĐƠăN ng,ănĕmă2019
Trang 6M C L C
L IăCAMăĐOAN i
M CăL C ii
DANH M C CÁC T VI T T T iv
DANH M C CÁC B NG v
DANH M C CÁC HÌNH vi
M ăĐẦU 1
1 LỦ do chọn đề tƠi 1
2 M c tiêu nghiên c u 2
3 Đối t ợng vƠ phạm vi nghiên c u 2
4 Ph ng pháp nghiên c u 2
5 K t qu đạt đ ợc 3
6 ụ nghĩa khoa học vƠ thực tiễn c a lu n văn 3
7 Bố c c lu n văn 3
CH NGă1.ăNGHIểNăC UăT NGăQUAN 4
1.1 Tổng quan về khai phá dữ liệu 4
1.1.1 S l ợc về khai phá dữ liệu 4
1.1.2 Các kỹ thu t áp d ng trong khai phá dữ liệu 6
1.1.3 Các b ớc xơy dựng hệ thống khai phá dữ liệu 6
1.1.4 ng d ng c a khai phá dữ liệu 7
1.1.5 Khó khăn trong khai phá dữ liệu 7
1.2 Phơn lớp trong khai phá dữ liệu 7
1.2.1 Phơn lớp dữ liệu 7
1.2.2 Quá trình phơn lớp dữ liệu 8
1.2.3 Các v n đề liên quan đ n phơn lớp dữ liệu 9
1.3 Giới thiệu cơy quy t định 12
1.3.1 Giới thiệu chung 12
1.3.2 u điểm c a cơy quy t định 13
1.3.3 Các lu t đ ợc rút ra từ cơy quy t định 13
1.4 Thu t toán C4.5 14
1.4.1 Giới thiệu 14
1.4.2 Gi i thu t C4.5 xơy dựng cơy quy t định từ trên xuống 15
1.4.3 Chọn thu c tính phơn loại tốt nh t 17
1.4.4 Entropy đo tính thuần nh t c a t p ví d 17
1.4.5 Tỷ su t lợi ích Gain Ratio 19
1.4.6 Chuyển cơy về dạng lu t 20
Trang 71.5 Random Forest (rừng ng u nhiên) 21
1.5.1 C s vƠ định nghĩa 21
1.5.2 Tóm tắt gi i thu t 22
1.5.3 Mô hình phơn lớp với Random Forest 23
1.5.4 ơy dựng cơy ng u nhiên 24
1.5.5 Tạo cơy ng u nhiên 24
1.5.6 Đặc điểm c a Random Forest 24
K T LU N CH NG 1 25
CH NGă2.ă NGăD NGăCỂYăQUY TăĐ NHăTRONGăCỌNGăTỄC ĐỄNHă GIỄăR IăROăVĨăB IăTH NGăB OăHI MăTĨUăCỄ 26
2.1 Khái quát về thị tr ng b o hiểm tƠu cá 26
2.2 Đánh giá r i ro tƠu cá 26
2.2.1 Khái niệm r i ro 26
2.2.2 Khái niệm về đánh giá r i ro 27
2.2.3 Phạm vi b o hiểm 27
2.2.4 Quy trình đánh giá r i ro trong b o hiểm tƠu cá 28
2.2.5 Các y u tố nh h ng đ n r i ro trong b o hiểm tƠu cá 28
2.3 Phơn tích hiện trạng 28
2.3.1 Chỉ số trong lĩnh vực kinh doanh b o hiểm tƠu cá 28
2.3.2 Gi i pháp xơy dựng hệ thống trợ giúp đánh giá r i ro trong b o hiểm tƠu cá 29
2.4 So Sánh k t qu phơn lớp giữa 2 thu t toán C4.5 vƠ Random Forest 30
2.4.1 ng d ng thu t toán C4.5 30
2.4.2 ng d ng Random Forresst 31
2.4.3 So sánh C4.5 và Random Forest 40
K T LU N CH NG 2 41
CH NGă3.ăXỂYăD NGăVĨăTH ăNGHI Mă NGăD NG 42
3.1 Ch c năng hệ thống 42
3.1.1 Phân tích yêu cầu 42
3.1.2 Các ch c năng chính 45
3.2 Thử nghiệm ng d ng 46
3.3 Đánh giá đ chính xác 49
K T LU N CH NG 3 52
K TăLU N 53
DANHăM CăTĨIăLI UăTHAMăKH O 54 QUY TăĐ NHăGIAOăĐ ăTĨIăLU NăVĔNă(B năsao)ă
Trang 92.6 B ng dữ liệu bootstrap 1 c a 10 khách hƠng 35
2.11 Sử d ng phần mềm Weka so sánh đ chính xác giữa thu t
Trang 101.12 Cơy quy t định đư đ ợc xơy dựng hoƠn chỉnh 19
2.1 Thông số c a thu t toán xơy dựng cơy quy t định bằng C4.5 30
2.5 Mô hình tổng quát c a Random Forest để phơn lớp 34
2.9 Ví d - Cơy phơn lớp với nút chia đầu tiên 38 2.10 Fold 1 với CSDL 1724 b ng ghi c a khách hƠng 39 2.11 Fold 2 với CSDL 1724 b ng ghi c a khách hƠng 39
Trang 11S ăhi uă
2.12 Fold 10 với CSDL 1724 b ng ghi c a khách hƠng 39
3.6 Biểu đồ tuần tự cho hoạt đ ng hu n luyện dữ liệu 44
Trang 12M ăĐẦU
1 LỦădoăch năđ ătƠi
Công nghệ thông tin ngƠy nay đư đ ợc ng d ng r ng khắp trong nhiều lĩnh vực c a xư h i trong đó khai phá dữ liệu đư vƠ đang đ ợc ng d ng thƠnh công vƠo
r t nhiều các lĩnh vực khác nhau nh : B o hiểm, tƠi chính, y học, giáo d c vƠ viễn thông v.v
Nền kinh t ngƠy cƠng phát triển thì nhu cầu b o hiểm cƠng lớn vƠ các loại hình
b o hiểm ngƠy cƠng đa dạng vƠ đ ợc hoƠn thiện B o hiểm góp phần giữ cho nền kinh
t ổn định, đ m b o cho cá nhơn, gia đình, tổ ch c xư h i vƠ các doanh nghiệp luôn duy trì đ ợc quá trình hoạt đ ng s n xu t, kinh doanh c a mình Có thể nói, khai thác
vƠ đánh bắt cá lƠ m t ngƠnh chịu nhiều r i ro vƠ tổn th t NgƠnh nƠy ph thu c nhiều vƠo điều kiện tự nhiên, môi tr ng hoạt đ ng… Trong quá trình khai thác các ng dơn
th ng xuyên ph i đối mặt với v n đề r i ro cho tƠu, cho con ng i, máy móc, ng
l ới c Qu ng Ngưi lƠ m t tỉnh duyên h i miền Trung có 192 km b biển với h n 5.444 tƠu cá vƠ hƠng vạn ng dơn tham gia nghề khai thác vƠ đánh bắt cá với s n
l ợng ớc đạt trong năm 2016 lƠ 191.400 t n Gi i pháp phát triển tƠu cá bền vững cũng chính lƠ gi i pháp lơu dƠi để phát triển kinh t biển, góp phần b o vệ an ninh vƠ
ch quyền trên biển Vì v y b o hiểm tƠu cá lƠ m t thị tr ng đầy h a hẹn Đặc biệt, với sự ra đ i c a c a nghị định 67/2014/NĐ_CP đư tạo điều kiện cho ng dơn đóng mới tƠu thuyền mạnh m theo chiều h ớng tích cực vƠ thị tr ng b o hiểm tƠu cá cũng không nằm ngoƠi luồng chuyển bi n đó
Trong lĩnh vực kinh doanh nƠy, công tác đánh giá r i ro đối với tƠu cá r t quan trọng vƠ h t s c ph c tạp Quy trình tác nghiệp đòi hỏi ng i thẩm định vừa ph i có trình đ chuyên môn nghiệp v cao, vừa ph i có nhiều kinh nghiệm thực tiễn Hầu h t các công ty b o hiểm chỉ chú trọng đ n v n đề doanh thu mƠ ít quan tơm đ n công tác đánh giá r i ro, đa phần đều đánh giá m t cách th công s sƠi vƠ c m tính
Vì v y, hiệu qu kinh doanh th ng không nh mong muốn Mặt khác, v n đề
gi i quy t bồi th ng khi có tổn th t x y ra cần nhanh chóng, đầy đ vƠ chính xác s mang lại cho khách hƠng niềm tin đối với các công ty b o hiểm V n đề bồi th ng sau tai nạn mang tính nhạy c m r t cao vƠ tác đ ng không nhỏ đ n tính hiệu qu c a hoạt đ ng kinh doanh b o hiểm
Nắm bắt đ ợc v n đề trên cũng nh tính c p thi t c a hoạt đ ng đánh giá r i ro
vƠ bồi th ng tổn th t trong b o hiểm tƠu cá, tôi th y cần ph i xơy dựng triển khai hệ thống ng d ng công nghệ thông tin nhằm đáp ng nhu cầu phơn tích, xử lỦ vƠ h trợ
đ n m c tối đa cho công tác đánh giá vƠ bồi th ng r i ro trong b o hiểm tƠu cá
Trang 13u t phát từ những lỦ do trên và đ ợc sự đồng Ủ c a TS Nguyễn Trần Quốc Vinh, tôi chọn đề tƠi: “ ng d ng khai phá dữ liệu xơy dựng hệ thống trợ giúp đánh giá
r i ro trong b o hiểm tƠu cá” để lƠm lu n văn thạc sỹ
2.ăM cătiêuănghiênăc u
2.1 Mục tiêu tổng quát
- H ớng đ n lƠ xơy dựng hệ thống trợ giúp đánh giá r i ro cho tƠu cá, đ m b o đầy đ các yêu cầu về mặt chuyên môn trong lĩnh vực b o hiểm tƠu cá vƠ h ớng đ n nơng cao hiệu qu kinh doanh trong đ n vị
2.2 Mục tiêu cụ thể
- Nêu b t những v n đề hạn ch , đề xu t gi i pháp khắc ph c những tồn tại giúp tăng c ng năng lực cạnh trạnh với các đối th trên thị tr ng b o hiểm tƠu cá
- Thu th p dữ liệu trong lĩnh vực b o hiểm tƠu cá tại Qu ng Ngưi
- Tìm hiểu các thu t toán phơn lớp C4.5 vƠ rừng ng u nhiên (random forest) và
so sánh đ chính xác trên t p dữ liệu b o hiểm tƠu cá thu th p đ ợc
- Phơn tích, thi t k vƠ phát triển hệ thống trợ giúp đánh giá r i ro b o hiểm tƠu
cá trên c s thu t toán phơn lớp đ ợc chọn
3.ăĐ iăt ngăvƠăph măviănghiênăc uă
3.1 Đối t ợng nghiên c u
- Quy trình đánh giá r i ro tƠu cá
- Các v n đề liên quan đ n đ r i ro trong b o hiểm tƠu cá
- Hồ s khách hƠng tham gia mua b o hiểm tƠu cá
- Các kỹ thu t khai phá dữ liệu
- Khai phá dữ liệu vƠ phơn lớp dữ liệu
- Gi i thu t xơy dựng cơy quy t định
- Nghiên c u về Thu t toán C4.5 vƠ rừng ng u nhiên trong việc dự đoán vƠ phơn loại thông tin
4.2 Nghiên c u thực nghiệm
- Ti n hƠnh thu th p vƠ tổng hợp các tƠi liệu liên quan đ n quy trình thẩm định
vƠ đánh giá hồ s đối với lĩnh vực b o hiểm tƠu cá
Trang 14- V n d ng các c s lỦ thuy t để xơy dựng ng d ng, ti n hƠnh kiểm thử so sánh đánh giá hiệu su t c a ng d ng
5 K tăqu đ tăđ c
- Hiểu thêm đ ợc ph ng pháp khai phá dữ liệu vƠ ng d ng ph ng pháp khai phá dữ liệu vƠo dự đoán tính r i ro trong khai thác b o hiểm nhằm nơng cao hiệu qu kinh doanh trong đ n vị
- ơy dựng hệ thống h trợ đánh giá r i ro cho tƠu cá tại Công ty Cổ phần b o hiểm B o Minh tại Qu ng Ngưi
- Hệ thống giúp đánh giá r i ro nhanh chóng nh ng v n đ m b o về mặt tối u,
có ch c năng c b n vƠ dễ sử d ng
6.ăụănghƿaăkhoaăh căvƠăth căti năc aălu năvĕn
Áp d ng lỦ thuy t về khai phá dữ liệu phơn vƠo bƠi toán đánh giá r i ro trong khai thác b o hiểm cho tƠu cá
Về mặt thực tiễn, ng d ng có kh năng phơn tích dữ liệu kinh doanh c a công
ty trong những năm gần đơy vƠ qua đó có kh năng phát hiện ra các tr ng hợp b o hiểm tƠu cá có m c đ r i ro cao
Giúp cho việc dự đoán nhằm h trợ ra quy t định m t cách khoa học, tránh
đ ợc các tình huống bồi th ng theo c m tính, hạn ch các tr ng hợp r i ro vƠ tăng hiệu qu kinh doanh c a công ty
7.ăB ăc călu năvĕn
Ch ng 1: Nghiên c u tổng quan
Ch ng nƠy, tôi trình bƠy các c s lỦ thuy t lƠm nền t ng để xơy dựng ng
d ng, bao gồm: Tổng quan về khai phá dữ liệu, các kỹ thu t khai phá dữ liệu Giới thiệu về cơy quy t định trong phơn lớp dữ liệu Gi i thu t C4.5 vƠ Random Forest
Ch ng 2: ng d ng cơy quy t định trong công tác đánh giá r i ro vƠ bồi
th ng b o hiểm tƠu cá
Ch ng nƠy, tôi s tìm hiểu vƠ phơn tích hiện trạng tại đ n vị, nêu lên những
v n đề hạn ch vƠ đề xu t gi i pháp khắc ph c So sánh vƠ đánh giá phơn lớp giữa 2 thu t toán C4.5 vƠ Random Forest ng d ng để xơy dựng mô hình phơn lớp dữ liệu
để gi i quy t bƠi toán đặt ra
Ch ng 3: ơy dựng vƠ thử nghiệm ng d ng
Tôi t p trung trình bƠy chi ti t về mô hình ki n trúc tổng thể c a hệ thống vƠ xơy dựng ng d ng Ti n hƠnh thử nghiệm trên số liệu thực t , sau đó đánh giá k t qu đạt đ ợc vƠ kh năng triển khai ng d ng trên toƠn hệ thống
Cuối cùng lƠ những đánh giá, k t lu n vƠ h ớng phát triển c a đề tƠi
Trang 15CH NGă1 NGHIểNăC UăT NGăQUAN
1.1 T ngăquanăv ăkhaiăpháăd ăli u
1.1.1 Sơ l ợc về khai phá dữ liệu
Khai phá dữ liệu lƠ m t lĩnh vực khoa học mới, ra đ i vƠo những năm cuối th p
kỷ 80 c a th kỷ , nhằm khai thác những thông tin, tri th c hữu ích, tiềm ẩn trong các c s dữ liệu (CSDL) c a các tổ ch c, doanh nghiệp từ đó thúc đẩy kh năng s n
xu t, kinh doanh, cạnh tranh c a tổ ch c, doanh nghiệp
Trong th i đại ngƠy nay, cùng với sự phát triển v ợt b t c a công nghệ thông tin, các hệ thống thông tin có thể l u trữ m t khối l ợng lớn dữ liệu về hoạt đ ng hƠng ngƠy c a chúng Từ khối dữ liệu nƠy, các kỹ thu t trong khai phá dữ liệu (KPDL) vƠ máy học (MH) có thể dùng để trích xu t những thông tin hữu ích mƠ chúng ta ch a
bi t Các tri th c vừa học đ ợc có thể v n d ng để c i thiện hiệu qu hoạt đ ng c a hệ thống thông tin ban đầu
Giáo s Tom Mitchell [5] đư đ a ra định nghĩa c a KPDL nh sau: “KPDL lƠ việc sử d ng dữ liệu lịch sử để khám phá những qui tắc vƠ c i thiện những quy t định trong t ng lai.” Với m t cách ti p c n ng d ng h n, Ti n sĩ Fayyad đư phát biểu:
“KPDL, th ng đ ợc xem lƠ việc khám phá tri th c trong các c s dữ liệu, lƠ m t quá trình trích xu t những thông tin ẩn, tr ớc đơy ch a bi t vƠ có kh năng hữu ích,
d ới dạng các qui lu t, rƠng bu c, qui tắc trong c s dữ liệu.” Nói tóm lại, KPDL lƠ
m t quá trình học tri th c mới từ những dữ liệu đư thu th p đ ợc
Nh v y ta có thể khái quát hóa khái niệm KPDL lƠ “quá trình kh o sát và phân tích m t l ợng lớn các dữ liệu đ ợc l u trữ trong các CSDL, kho dữ liệu… để từ đó trích xu t ra các thông tin quan trọng, có giá trị tiềm ẩn bên trong”
Khám phá tri th c trong c s dữ liệu (Knowledge Discovery in Databaes ậKDD) lƠ m c tiêu chính c a KPDL, do v y hai khái niệm khai phá dữ liệu vƠ KDD
đ ợc các nhƠ khoa học xem lƠ t ng đ ng nhau Th nh ng, n u phơn chia m t cách chi ti t thì khai phá dữ liệu lƠ m t b ớc chính trong quá trình KDD
Quá trình khá phá tri th c có thể chia thành các b ớc nh sau:
Trang 16Hình 1.1 Quá trình khám phá tri thức
Quá trình KPDL có thể phơn thƠnh các giai đoạn sau:
- Tíchăh păd ăli u: LƠ b ớc tuyển chọn những t p dữ liệu cần đ ợc khai phá từ
các t p dữ liệu lớn ban đầu theo m t số tiêu chí nh t định
- Ti năx ălỦăd ăli u: LƠ b ớc lƠm sạch dữ liệu (xử lỦ dữ liệu không đầy đ ,
không nh t quán ), tổng hợp dữ liệu (nén, nhóm dữ liệu, tính tổng, xơy dựng các histograms, l y m u ), r i rạc hóa dữ liệu (r i rạc hóa dựa vƠo histograms, entropy ) Sau b ớc tiền sử lỦ nƠy, dữ liệu s nh t quán, đầy đ , đ ợc rút gọn vƠ r i rạc hóa
- Bi năđ iăd ăli u: LƠ b ớc chuẩn hóa vƠ lƠm mịn dữ liệu để đ a dữ liệu về
dạng thu n lợi nh t nhằm ph c v việc áp d ng các kỹ thu t khai phá b ớc sau
- Khaiăpháăd ăli u: LƠ b ớc áp d ng những kỹ thu t phơn tích (phần nhiều lƠ
các kỹ thu t học máy) nhằm khai thác dữ liệu, trích lọc những m u tin, những mối quan hệ đặc biệt trong dữ liệu Đơy đ ợc xem lƠ b ớc quan trọng vƠ tiêu tốn th i gian
nh t c a toƠn b quá trình KDD
- ĐánhăgiáăvƠăbi uădi nătriăth c: Những m u thông tin vƠ mối quan hệ trong
dữ liệu đư đ ợc phát hiện b ớc khai phá dữ liệu đ ợc chuyển sang vƠ biểu diễn dạng gần gũi với ng i sử d ng nh đồ thị, cơy, b ng biểu vƠ lu t Đồng th i b ớc nƠy cũng đánh giá những tri th c khai phá đ ợc theo những tiêu chí
nh t định
Trang 171.1.2 Các kỹ thuật áp dụng trong khai phá dữ liệu
HọẾ Ếó giám sát: LƠ quá trình gán nhưn lớp cho các phần tử trong CSDL dựa
trên m t t p các ví d hu n luyện vƠ các thông tin về nhưn lớp đư bi t
HọẾ không có giám sát: LƠ quá trình phơn chia m t t p dữ liệu thƠnh các lớp
hay c m dữ liệu t ng tự nhau mƠ ch a bi t tr ớc các thông tin về lớp hay t p các ví
d hu n luyện
HọẾ nửa giám sát: LƠ quá trình phơn chia m t t p dữ liệu thƠnh các lớp dựa
trên m t t p nhỏ các ví d hu n luyện vƠ các thông tin về m t số nhưn lớp đư bi t
tr ớc
1.1.3 Các b ớc xây dựng hệ thống khai phá dữ liệu
B ớc 1: ác định m c tiêu bƠi toán
B ớc đầu tiên trong quá trình khai phá dữ liệu đó lƠ ph i xác định rõ m c tiêu, nhiệm v c a bƠi toán
B ớc 2: Thu th p dữ liệu
Sau khi xác định đ ợc m c tiêu, nhiệm v c a bƠi toán, ta ti n hƠnh thu th p các dữ liệu liên quan, ti p đ n ta có thể ti n hƠnh chọn lọc các m u tiêu biểu để gi m
đ lớn c a t p luyện
B ớc 3: LƠm sạch dữ liệu vƠ chuyển đổi dữ liệu
Đơy lƠ m t b ớc r t quan trọng trong dự án khai phá dữ liệu M c đích c a lƠm sạch dữ liệu lƠ loại bỏ những dữ liệu thừa, không nh t quán, có ch a nhiễu Quá trình lƠm sạch dữ liệu s cố gắng thêm giá trị vƠo những giá trị bị thi u, lƠm mịn các điểm nhiễu vƠ sửa lại các dữ liệu không nh t quán
B ớc 4: ơy dựng mô hình
Đối với m i bƠi toán trong khai phá dữ liệu đều có nhiều mô hình để gi i quy t
Để lựa chọn chính xác mô hình nƠo tốt h n lƠ khó khăn, chúng ta nên thử gi i quy t bƠi toán bằng nhiều mô hình khác nhau rồi ti n hƠnh so sánh lựa chọn, để tìm ra mô hình tối u nh t, thích hợp nh t với bƠi toán c a ta
B ớc 5: Đánh giá mô hình, đánh giá m u
Sau khi áp d ng m t số các mô hình chúng ta s đánh giá lựa chọn xem mô hình nào tốt h n
Trang 18- Kinh doanh th ng mại:
+ ác định thói quen mua hƠng c a khách hƠng
+ Dự đoán chu kỳ kinh doanh s n phẩm
- Ngân hàng:
+ Dự đoán các d u hiệu c a m t giao dịch trái lu t
+ Dự đoán r i ro c a các kho n cho vay
- Y t :
+ Chuẩn đoán bệnh qua các triệu ch ng
+ Liên hệ giữa các loại bệnh
- B o hiểm:
+ Loại khách hƠng có r i ro cao? Gian l n?
+ Liệu khách hƠng có thực hiện h t hợp đồng b o hiểm?
+ Đối t ợng, vùng nƠo có kh năng tham gia b o hiểm?
1.1.5 Khó khăn trong khai phá dữ liệu
- Kích th ớc c a c s dữ liệu lớn: N u c s dữ liệu nhỏ, k t qu truy xu t s không đáng tin c y Tuy nhiên, l ợng dữ liệu lớn (hƠng terabyte) đồng nghĩa với không gian tìm ki m r ng, do dó đòi hỏi ph i có các chi n l ợc tìm ki m hiệu qu với
đ ph c tạp th p để gi m th i gian thực hiện thu t toán
- Dữ liệu thi u vƠ nhiễu: đơy lƠ m t thách th c lớn trong khai phá dữ liệu
L ợng dữ liệu thi u vƠ nhiễu có thể d n đ n các k t qu dự báo không chính xác
1.2.ăăPhơnăl pătrongăkhaiăpháăd ăli u
1.2.1 Phân lớp dữ liệu
Phơn lớp dữ liệu lƠ gán các m u mới vƠo các lớp với đ chính xác cao nh t để
dự báo cho các b dữ liệu (m u) mới
Đầu vƠo lƠ m t t p các m u dữ liệu hu n luyện, với m t nhưn phơn lớp cho m i
m u dữ liệu Đầu ra lƠ mô hình dự đoán (b phơn lớp) dựa trên t p hu n luyện vƠ
Trang 19những nhưn phơn lớp
1.2.2 Quá trình phân lớp dữ liệu
Quá trình phơn lớp dữ liệu gồm hai b ớc:[1]
B ớc th nhất: Quá trình học nhằm xơy dựng m t mô hình mô t m t t p các
lớp dữ liệu hay các khái niệm định tr ớc Đầu vƠo c a quá trình nƠy lƠ m t t p dữ liệu
có c u trúc đ ợc mô t bằng các thu c tính vƠ đ ợc tạo ra từ t p các b giá trị c a các thu c tính đó Đầu ra c a b ớc nƠy th ng lƠ các phơn lớp d ới dạng lu t dạng if-then, cơy quy t định, công th c logic, hay mạng n ron Quá trình nƠy đ ợc mô t nh trong hình v :
Hình 1.2 Xây dựng mô hình phân lớp
B ớc th hai: Dùng mô hình đư xơy dựng b ớc tr ớc để phơn lớp dữ liệu
mới Tr ớc tiên đ chính xác mang tính ch t dự đoán c a mô hình phơn lớp vừa tạo ra
đ ợc ớc l ợng N u đ chính xác c a mô hình đ ợc ớc l ợng dựa trên t p dữ liệu đƠo tạo thì k t qu thu đ ợc lƠ r t kh quan vì mô hình luôn có xu h ớng “quá vừa” dữ liệu Quá vừa dữ liệu lƠ hiện t ợng k t qu phơn lớp trùng khít với dữ liệu thực t vì quá trình xơy dựng mô hình phơn lớp từ t p dữ liệu đƠo tạo có thể đư k t hợp những đặc điểm riêng biệt c a t p dữ liệu đó Do v y, cần sử d ng m t t p dữ liệu kiểm tra
đ c l p với t p dữ liệu đƠo tạo N u đ chính xác c a mô hình lƠ ch p nh n đ ợc, thì
mô hình đ ợc sử d ng để phơn lớp những dữ liệu t ng lai, hoặc những dữ liệu mƠ giá trị c a thu c tính phơn lớp lƠ ch a bi t
Trang 20Hình 1.3 ớẾ l ợng độ chính xác
Hình 1.4 Phân lớp dữ liệu mới
Trong mô hình phơn lớp, thu t toán phơn lớp giữ vai trò trung tơm, quy t định tới
sự thƠnh công c a mô hình phơn lớp Do v y chìa khóa c a v n đề phơn lớp dữ liệu lƠ tìm ra đ ợc m t thu t toán phơn lớp nhanh, hiệu qu , có đ chính xác cao vƠ có kh năng m r ng đ ợc Trong đó kh năng m r ng đ ợc c a thu t toán đ ợc đặc biệt chú trọng vƠ phát triển
1.2.3 Các vấn đề liên quan đến phân lớp dữ liệu
a Chuẩn bị ếữ liệu Ếho việẾ phân lớp
- LƠmăs chăd ăli u: LƠm sạch dữ liệu liên quan đ n việc xử lỦ với l i vƠ giá trị
thi u trong t p dữ liệu ban đầu Với l i lƠ các l i ng u nhiên hay các giá trị không hợp
lệ c a các bi n trong t p dữ liệu Để xử lỦ với loại l i nƠy có thể dùng kỹ thu t lƠm
Alex Assistant Prof 4
Alice Assistant Prof 8
TENURED
yesnoyes
Trang 21tr n Những ô không có giá trị c a các thu c tính Giá trị thi u có thể do l i ch quan trong quá trình nh p liệu, hoặc trong tr ng hợp c thể giá trị c a thu c tính đó không
có, hay không quan trọng Kỹ thu t xử lỦ đơy có thể bằng cách thay giá trị thi u bằng giá trị phổ bi n nh t c a thu c tính đó hoặc bằng giá trị có thể x y ra nh t dựa trên thống kê Mặc dù phần lớn thu t toán phơn lớp đều có c ch xử lỦ với những giá trị thi u vƠ l i trong t p dữ liệu, nh ng b ớc tiền xử lỦ nƠy có thể lƠm gi m sự h n
đ n trong quá trình học (xơy dựng mô hình phơn lớp)
- Chuy năđ iăd ăli u: Việc khái quát hóa dữ liệu lên m c khái niệm cao h n
đôi khi lƠ cần thi t trong quá trình tiền xử lỦ Việc nƠy đặc biệt hữu ích với những thu c tính liên t c Ví d các giá trị số c a thu c tính thu nh p c a khách hƠng có thể
đ ợc khái quát hóa thƠnh các dưy giá trị r i rạc: th p, trung bình, cao T ng tự với những thu c tính r i rạc nh địa chỉ phố có thể đ ợc khái quát hóa lên thƠnh thƠnh phố Việc khái quát hóa lƠm cô đọng dữ liệu học nguyên th y, vì v y các thao tác vƠo
ra liên quan đ n quá trình học s gi m
b Ph ơng pháp đánh giá độ Ếhính ồáẾ Ếủa mô hình phân lớp
- Ph ng pháp Holdout: Dữ liệu d a ra đ ợc phơn chia ng u nhiên thƠnh 2 phần T p dữ liệu đƠo tạo vƠ t p dữ liệu kiểm tra Thông th ng 2/3 dữ liệu c p cho
t p dữ liệu đƠo tạo, phần còn lại cho t p dữ liệu kiểm tra
Hình 1.5 ớẾ l ợng độ chính xác của mô hình
- Ph ng pháp K-Fold Cross Validation: T p dữ liệu ban đầu đ ợc chia ng u nhiên thƠnh k t p con (fold) có kích th ớc x p xỉ nhau S1, S2, …, Sk Quá trình học vƠ test đ ợc thực hiện k lần Tại lần lặp th i, Si lƠ t p dữ liệu kiểm tra, các t p còn lại hợp thƠnh t p dữ liệu đƠo tạo Có nghĩa lƠ, đơu tiên việc dạy đ ợc thực hiện trên các
t p S2, S3 …, Sk, sau đó test trên t p S1; ti p t c quá trình dạy đ ợc thực hiện trên t p S1, S3, S4,…, Sk, sau đó test trên t p S2; vƠ c th ti p t c Đ chính xác lƠ toƠn b số phơn lớp đúng từ k lần lặp chia cho tổng số m u c a t p dữ liệu ban đầu
Trang 22Ví d : k-fold croos validation với k=3:
Trang 23Fold 3:
Hình 1.8 Ví dụ K-fold croos validation-fold 3
ớc tính đ chính xác = ( ớc tính chính xác 1+ ớc tính chính xác 2+ ớc tính chính xác 3) / 3
1.3.ăGi iăthi uăcơyăquy tăđ nh
1.3.1 Giới thiệu chung
Trong lĩnh vực học máy, cơy quy t định lƠ m t kiểu mô hình dự báo (predictive model), nghĩa lƠ m t ánh xạ từ các quan sát về m t sự v t, hiện t ợng tới các k t lu n
về giá trị m c tiêu c a sự v t, hiện t ợng M i nút trong (internal node) t ng ng với
m t bi n; đ ng nối giữa nó với nút con c a nó thể hiện giá trị c thể cho bi n đó M i nút lá đại diện cho giá trị dự đoán c a bi n m c tiêu, cho tr ớc các giá trị dự đoán c a các bi n đ ợc biểu diễn b i đ ng đi từ nút gốc tới nút lá đó Kỹ thu t học máy dùng trong cơy quy t định đ ợc gọi lƠ học bằng cơy quy t định, hay chỉ gọi với cái tên ngắn gọn lƠ cơy quy t định [1]
Trang 24Ví d : Cơy quy t định phơn lớp m c l ng
Age ?
≤ 35 >35
≤ 40 Bad
> 40 Good
≤ 50 >50 Bad Bad Good
Hình 1.9 Cây quy t định phân lớp mứẾ l ơng
Ta th y:
- Gốc (Age): Nút trên cùng c a cơy
- Nút trong (Salary): Biểu diễn m t kiểm tra trên m t thu c tính đ n
- Nhánh (mũi tên): Biểu diễn các k t qu c a kiểm tra trên nút trong
- Nút lá (Bad, Good): Biểu diễn lớp hay sự phơn phối lớp
Để phơn lớp m u dữ liệu ch a bi t giá trị, các thu c tính c a m u đ ợc đ a vƠo kiểm tra trên cơy quy t định M i m u t ng ng có m t đ ng đi từ gốc đ n lá vƠ lá biểu diễn dự đoán giá trị phơn lớp m u đó
1.3.2 u điểm c a cây quyết định
- Cơy quy t định t ng đối dễ hiểu
- Đòi hỏi m c tiền xử lỦ dữ liệu đ n gi n
- Có thể xử lỦ với c các dữ liệu r i rạc vƠ liên t c
- K t qu dự đoán bằng cơy quy t định có thể thẩm định lại bằng cách kiểm tra thống kê
1.3.3 Các luật đ ợc rút ra từ cây quyết định
Lu t đ ợc rút ra từ cơy quy t định lƠ các tri th c đ ợc phát biểu d ới dạng THEN M i lu t có thể đ ợc xác định thông qua m i nhánh c a cơy quy t định Mệnh
IF-đề IF bao gồm giá trị c a các thu c tính t ng ng với các nút trong, mệnh IF-đề THEN
lƠ giá trị c a thu c tính phơn lớp, t ng ng với các nút lá trong cơy quy t định
Các b ớc bi n đổi cơy quy t định thƠnh lu t:
- Biểu diễn tri th c d ới dạng lu t IF-THEN
Trang 25IF (Age <= 35) AND (Salary<=40) THEN class = Bad
IF (Age<=35) AND (Salary>40) THEN class = Good
IF (Age>35) AND (Salary <=50) THEN class = Bad
IF (Age > 35) AND(Salary>50) THEN class = Good
1.4 Thu tătoánăC4.5
1.4.1 Giới thiệu
VƠo đầu những năm 1980, J Ross Quinlan, m t nhƠ nghiên c u trong lĩnh vực học máy tính, phát triển thu t toán cơy quy t định đ ợc bi t đ n nh ID3 Gi i thu t C4.5 lƠ m t gi i thu t học đ n gi n nh ng tỏ ra thƠnh công trong nhiều lĩnh vực Vì cách biểu diễn tri th c học đ ợc c a nó, ti p c n c a nó trong việc qu n lỦ tính ph c tạp, kinh nghiệm c a nó dùng cho việc chọn lựa các khái niệm ng viên, vƠ tiềm năng
c a nó đối với việc xử lỦ dữ liệu nhiễu
Gi i thu t C4.5 biểu diễn các khái niệm dạng các cơy quy t định Biểu diễn này cho phép chúng ta xác định phơn loại c a m t đối t ợng bằng cách kiểm tra các giá trị c a nó trên m t số thu c tính nƠo đó [7]
Nh v y, nhiệm v c a gi i thu t C4.5 lƠ học cơy quy t định từ m t t p các ví
d hu n luyện hay còn gọi lƠ dữ liệu hu n luyện Hay nói khác h n, gi i thu t có: Đầu vƠo: M t t p hợp các ví d M i ví d bao gồm các thu c tính mô t m t tình huống, hay m t đối t ợng nƠo đó, vƠ m t giá trị phơn loại c a nó
Đầu ra: Cơy quy t định có kh năng phơn loại đúng đắn các ví d trong t p dữ liệu hu n luyện, vƠ hy vọng lƠ phơn loại đúng cho c các ví d ch a gặp trong t ng lai
ét bƠi toán phơn loại r i ro trong b o hiểm tƠu cá Gi i thu t C4.5 s học cơy quy t định từ t p dữ liệu hu n luyện sau:
d ng
Kinh nghi mă lái tàu
3 Gi cƠo 14 6 Không 50 Không Gần b CAO
c ng a b TB
5 Gi cƠo 12 11 Có 20 Cầu
c ng Gần b TB
Trang 26d ng
Kinh nghi mă lái tàu
9 Gi cƠo 14 7 Không 50 Không a b TB
10 Gi cƠo 9 4 Không 50 Cầu
c ng Gần b CAO
M i thu c tính đều có m t t p các giá trị hữu hạn Thu c tính m c đích sử d ng
có ba giá trị (gi cƠo, lặn, cơu), th i gian sử d ng có các giá trị lƠ số [6,7,8,9,11,12,14], kinh nghiệp lái tƠu lƠ [2,3,6,7,11,12] lƠm n ớc có hai giá trị (có, không,), số tiền bồi
th ng lƠ [10,20,30,40,50] khu vực để tƠu có hai giá trị (cầu c ng, không ) vƠ phạm vi hoạt đ ng có hai giá trị (xa b , gần b ) vƠ có m t thu c tính phơn loại “r i ro” có ba giá trị (cao, trung bình, th p) vƠ thu c tính “r i ro” còn đ ợc gọi lƠ thu c tính đích
1.4.2 Giải thuật C4.5 xây dựng cây quyết định từ trên xuống
Gi i thu t C4.5 xơy dựng cơy quy t định theo cách từ trên xuống vƠ chọn m t thu c tính để kiểm tra tại nút hiện tại c a cơy vƠ dùng trắc nghiệm nƠy để phơn vùng
t p hợp các ví d , thu t toán khi đó xơy dựng theo cách đệ quy m t cơy con cho từng phơn vùng Việc nƠy ti p t c cho đ n khi mọi thƠnh viên c a phơn vùng đều nằm trong cùng m t lớp, lớp đó tr thƠnh nút lá c a cơy
Ví d , hưy xem xét cách xơy dựng cơy quy t định c a C4.5 trong hình sau từ
t p ví d hu n luyện trong b ng 1.1
Hình 1.10 Một phần cây quy t định đ ợc xây dựng
Trang 27Thu t toán C4.5 đ ợc thực hiện nh sau:
Function C45_builder (t p ví d , t p thu c tính)
Chọn m t thu c tính P, l y nó lƠm gốc cho cơy hiện tại;
óa P ra khỏi t p thu c tính;
Với m i giá trị V c a P
begin
Tạo m t nhánh c a cơy gán nhưn V;
Đặt vƠo phơn vùng V các ví d trong t p ví d có giá trị V tại thu c tính P; Gọi C45_builder (phơn vùng V, t p thu c tính), gắn k t qu vƠo nhánh V
end
end
end
L u Ủ rằng, để phơn loại m t ví d , có khi cơy quy t định không cần sử d ng t t
c các thu c tính đư cho, mặc dù nó v n phơn loại đúng t t c các ví d
Các kh năng có thể có c a các phơn vùng:
Trong quá trình xơy dựng cơy quy t định, phơn vùng c a m t nhánh mới có thể
có các dạng sau:
Có các ví d thu c các lớp khác nhau, chẳng hạn nh có c ví d ‘cao’, ‘th p’
vƠ ‘TB’ nh phơn vùng “m c đích sử d ng = gi cƠo” c a ví d trên thì gi i thu t ph i
ti p t c tách m t lần nữa
T t c các ví d đều thu c cùng m t lớp, chẳng hạn nh toƠn “th p” nh phơn vùng “m c đích sử d ng = cơu” c a ví d trên thì gi i thu t tr về nút lá với nhưn lƠ lớp đó
Không còn ví d nƠo, gi i thu t tr về mặc nhiên
Không còn thu c tính nƠo có nghĩa lƠ dữ liệu bị nhiễu, khi đó gi i thu t ph i sử
d ng m t lu t nƠo đó để xử lỦ, chẳng hạn nh lu t đa số (lớp nƠo có nhiều ví d h n s
đ ợc dùng để gán nhưn cho nút lá tr về)
Trang 281.4.3 Chọn thuộc tính phân loại tốt nhất
Quinlan (1983) lƠ ng i đầu tiên đề xu t việc sử d ng lỦ thuy t thông tin để tạo
ra các cơy quy t định vƠ công trình c a ông lƠ c s cho phần trình bƠy đơy LỦ thuy t thông tin c a Claude Shannon (1948) cung c p khái niệm entropy để đo tính thuần nh t (hay ng ợc lại lƠ đ pha tr n) c a m t t p hợp [6] M t t p hợp lƠ thuần
nh t n u nh t t c các phần tử c a t p hợp đều thu c cùng m t loại, vƠ khi đó ta nói
t p hợp nƠy có đ pha tr n lƠ th p nh t
Khi t p ví d lƠ thuần nh t thì có thể nói: ta bi t chắc chắn về giá trị phơn loại
c a m t ví d thu c t p nƠy, hay ta có l ợng thông tin về t p đó lƠ cao nh t Khi t p ví
d có đ pha tr n cao nh t, nghĩa lƠ số l ợng các ví d có cùng giá trị phơn loại cho
m i loại lƠ t ng đ ng nhau, thì khi đó ta không thể đoán chính xác đ ợc m t ví d
có thể có giá trị phơn loại gì, hay nói khác h n, l ợng thông tin ta có đ ợc về t p nƠy
là ít nh t V y, điều ta mong muốn đơy lƠ lƠm sao chọn thu c tính để hỏi sao cho có thể chia t p ví d ban đầu thƠnh các t p ví d thuần nh t cƠng nhanh cƠng tốt V y
tr ớc h t, ta cần có m t phép đo để đo đ thuần nh t c a m t t p hợp, từ đó mới có thể
so sánh t p ví d nƠo thì tốt h n
1.4.4 Entropy đo tính thuần nhất c a tập ví dụ
Khái niệm entropy c a m t t p S đ ợc định nghĩa trong lỦ thuy t thông tin lƠ số
l ợng mong đợi các bit cần thi t để mư hóa thông tin về lớp c a m t thƠnh viên rút ra m t cách ng u nhiên từ t p S Trong tr ng hợp tối u, mư có đ dƠi ngắn nh t Theo lỦ thuy t thông tin, mư có đ dƠi tối u lƠ mư gán ậlog2p bit cho thông điệp có xác su t lƠ p
Trong tr ng hợp S lƠ t p ví d , thì thƠnh viên c a S lƠ m t ví d , m i ví d thu c m t lớp hay có m t giá trị phơn loại
Entropy có giá trị nằm trong kho ng [0 1]
Entropy(S) = 0: t p ví d S chỉ toƠn thu c cùng m t loại, hay S lƠ thuần nh t Entropy(S) = 1: t p ví d S có các ví d thu c các loại lƠ bằng nhau
0 < Entropy(S) < 1: t p ví d S có số l ợng ví d thu c các loại khác nhau lƠ không bằng nhau
Để đ n gi n ta xét tr ng hợp các ví d c a S chỉ thu c loại ơm (-) hoặc d ng (+)
Hình 1 1 Entropy(S)
Trang 29T p S lƠ t p dữ liệu hu n luyện, trong đó thu c tính phơn loại có hai giá trị, gi
sử lƠ ơm (-) vƠ d ng (+) Trong đó:
p+ lƠ phần các ví d d ng trong t p S
p- lƠ phần các ví d ơm trong t p S
Khi đó, entropy đo đ pha tr n c a t p S theo công th c sau:
Entropy(S) = -p+ log2 p+ - p- log2 p-
M t cách tổng quát h n, n u các ví d c a t p S thu c nhiều h n hai loại, gi sử
lƠ có c giá trị phơn loại thì công th c entropy tổng quát lƠ:
i 2 c
1 i
ilog p p
Entropy(S)
Víăd : Từ 10 m u c a b ng dữ liệu “b o hiểm tƠu cá”, ta nh n th y trong t p
thu c tính đích S có 3 m u thu c lớp ‘cao’ 2 m u thu c lớp ‘th p’ vƠ 5 m u thu c lớp
‘TB’ Do đó:
Entropy(S)= -(2/10)log2(2/10)-(5/10)log2(5/10)-(3/10)log2(3/10) = 1,4855 Entropy lƠ số đo đ pha tr n c a m t t p ví d , bơy gi chúng ta s định nghĩa
m t phép đo hiệu su t phơn loại các ví d c a m t thu c tính Phép đo nƠy gọi lƠ
l ợng thông tin thu đ ợc (hay đ lợi thông tin), nó đ n gi n lƠ l ợng gi m Entropy mong đợi gơy ra b i việc phơn chia các ví d theo thu c tính nƠy
M t cách chính xác h n, Gain(S, A) c a thu c tính A, trên t p S, đ ợc định nghĩa nh sau:
) Entropy(S S
S
Entropy(S) A)
Value(A) V
Víăd : Tr lại với b ng dữ liệu “r i ro tƠu cá”, áp d ng công th c trên ta có:
Gain(S, m c đích sử d ng) = Entropy(S) - (6/10)Entropy(S giacao)
ậ (2/10)Entropy(S cau) ậ (2/10)Entropy(S lan) = 0,4099
Trang 30Ta th y, Gain(S, kinhnghiemlaitau) lớn nh t nên thu c tính ‘kinhnghiemlaitau’
đ ợc chọn lƠm nút phơn tách cơy
Sau khi l p đ ợc c p đầu tiên c a cơy quy t định ta lại xét nhánh
Hình 1.12 Cây quy t định đã đ ợc xây dựng hoàn chỉnh
1.4.5 Tỷ suất lợi ích Gain Ratio
Khái niệm đ lợi thông tin Gain có xu h ớng u tiên các thu c tính có số l ợng lớn các giá trị N u thu c tính D có giá trị riêng biệt cho m i b ng ghi (thu c tính NgƠy b ng dữ liệu trên), thì Entropy(S, D) = 0, nh v y Gain(S,D) s đạt giá trị cực đại Rõ rƠng, m t phơn vùng nh v y thì việc phơn loại lƠ vô ích
Trang 31Thu t toán C4.5, m t c i ti n c a ID3, m r ng cách tính Information Gain thành Gain Ratio để cố gắng khắc ph c sự thiên lệch
Gain Ratio đ ợc xác định b i công th c sau
A)mation(S,SplitInfor
A)Gain(S,A)
S,
Trong đó, SplitInformation(S, A) chính lƠ thông tin do phơn tách c a A trên c
s giá trị c a thu c tính phơn loại S Công th c tính nh sau:
|S
|
Slog
|S
|
SA)
mation(S,
c
1 i i
Víăd : Tính Gain Ratio cho các thu c tính b ng dữ liệu 1.1
SplitInformation(S, mucđichsudung) = - (6/10)log2(6/10)
1.4.6 Chuyển cây về dạng luật
Thông th ng, cơy quy t định s đ ợc chuyển về dạng các lu t để thu n tiện cho việc cƠi đặt vƠ sử d ng
Ví d cơy quy t định cho t p dữ liệu hu n luyện trong b ng 1.1 có thể đ ợc chuyển thƠnh m t số lu t nh sau:
Trang 32Hình 1.13 Chuyển cây quy t định về dạng luật
-Lu t 1: If (KINHNGHIEMLAITAU >3) ^ (SOTIENBOITHUONG 40<) Then RUIRO = CAO
-Lu t 2: If (KINHNGHIEMLAITAU >3) ^ (SOTIENBOITHUONG <=40) Then RUIRO = TB
-Lu t 3: If (KINHNGHIEMLAITAU <=3) Then RUIRO = TH P
1.5 Random Forest (r ngăng uănhiên)
1.5.1 Cơ sở và định nghĩa
Từ những năm 1990, c ng đồng máy học đư nghiên c u cách để k t hợp nhiều
mô hình phơn loại thƠnh t p hợp các mô hình phơn loại để cho tính chính xác cao h n
so với chỉ m t mô hình phơn loại M c đích c a các mô hình t p hợp lƠ lƠm gi m variance vƠ hoặc bias c a các gi i thu t học Bias lƠ khái niệm về l i c a mô hình học (không liên quan đ n dữ liệu học) vƠ variance lƠ l i do tính bi n thiên c a mô hình so với tính ng u nhiên c a các m u dữ liệu học Ti p c n Random Forest (Breiman, 2001) lƠ m t trong những ph ng pháp t p hợp mô hình thƠnh công nh t Gi i thu t Random Forest xơy dựng cơy không cắt nhánh nhằm giữ cho bias th p vƠ dùng tính
ng u nhiên để điều khiển tính t ng quan th p giữa các cơy trong rừng
Sự phát triển sớm c a Random Forest đư bị nh h ng b i công việc c a Amit
vƠ Geman, đư giới thiệu Ủ t ng về tìm ki m trên m t t p hợp con ng u nhiên trong những quy t định có sẵn khi tách m t nút, trong bối c nh phát triển cơy duy nh t ụ
t ng lựa chọn ng u nhiên từ không gian con c a Amit và Geman cũng đư có nh
h ng trong việc thi t k các khu rừng ng u nhiên Trong ph ng pháp nƠy m t rừng cơy đ ợc trồng, vƠ sự thay đổi giữa các cơy đ ợc giới thiệu bằng cách chi u các dữ liệu đƠo tạo thƠnh m t không gian con đ ợc lựa chọn ng u nhiên tr ớc khi lắp m i
Trang 33cây Cuối cùng, Ủ t ng ng u nhiên tối u hóa nút, n i các quy t định tại m i nút đ ợc chọn theo m t quy trình ng u nhiên, ch không ph i lƠ tối u hóa xác định lần đầu tiên
đ ợc giới thiệu b i Dietterich
Random Forest đ ợc xơy dựng dựa trên 3 thƠnh phần chính là: (1) CART, (2) học toƠn b , h i đồng các chuyên gia, k t hợp các mô hình, vƠ (3) tổng hợp bootstrap
Random Forest lƠ m t ph ng pháp học quần thể để phơn loại, hồi quy vƠ các nhiệm v khác, hoạt đ ng bằng cách xơy dựng vô số các cơy quy t định trong th i gian đƠo tạo vƠ đầu ra c a lớp lƠ mô hình phơn lớp hoặc hồi quy c a những cơy riêng biệt
Nó nh lƠ m t nhóm phơn loại vƠ hồi quy cơy không cắt tỉa đ ợc lƠm từ các lựa chọn ng u nhiên c a các m u dữ liệu hu n luyện Tính năng ng u nhiên đ ợc chọn
trong quá trình c m ng Dự đoán đ ợc thực hiện bằng cách k t hợp (đa số phi u để phơn loại hoặc trung bình cho hồi quy) dự đoán c a quần thể
1.5.2 Tóm tắt giải thuật
Đầu vƠo: lƠ t p dữ liệu đƠo tạo
Đầu ra: lƠ mô hình Random Forest, Random Forest lƠ t p hợp nhiều cơy quy t định n tree
Với m i Cơy n tree đ ợc xơy dựng bằng các sử d ng thu t toán sau:
Với N lƠ số l ợng các tr ng hợp c a dữ liệu đƠo tạo, M lƠ số l ợng các bi n trong việc phơn loại
L y m lƠ số các bi n đầu vƠo đ ợc sử d ng để xác định việc phơn chia tại 1 Nút
c a cơy, m < M
Chọn 1 t p hu n luyện cho cơy bằng cách chọn n ng u nhiên với sự thay th từ
t t c các tr ng hợp đƠo tạo có sẵn N Sử d ng các phần còn lại để ớc l ợng các l i
Trang 341.5.3 Mô hình phân lớp với Random Forest
Hình 1.14 Mô hình phân lớp với Random Forest
Từ m t quần thể ban đầu l y ra m t m u L = (x1, x2, xn) gồm n thƠnh phần, tính toán các tham số mong muốn Trong các b ớc ti p theo lặp lại b lần việc tạo ra
m u Lb cũng gồm n phần từ L bằng cách l y lại m u với sự thay th các thƠnh phần trong m u ban đầu sau đó tính toán các tham số mong muốn
Víăd :
Dữ liệu đƠo tạo {1 2 3 4 5 6 7 8 9}
bootstrap -> dữ liệu hu n luyện 1 {1 2 4 5 1 7 2 9 5} - oob {3 6 8}
bootstrap -> d liệu hu n luyện 2 {3 2 3 2 5 6 7 9 6} - oob {1 4 8}
Khi t p m u đ ợc rút ra từ m t t p hu n luyện c a m t cơy với sự thay th (bootstrap), thì theo ớc tính có kho ng 1/3 các phần từ không có nằm trong m u nƠy
Điều nƠy có nghĩa lƠ chỉ có kho ng 2/3 các phần tử trong t p hu n luyện tham gia vƠo trong các tính toán c a chúng ta, vƠ 1/3 các phần tử nƠy đ ợc gọi lƠ dữ liệu Out of Bag (OOB) Dữ liệu OOB đ ợc sử d ng để ớc l ợng l i tạo ra từ việc k t hợp
các k t qu từ các cơy tổng hợp trong Random Forest cũng nh dùng để ớc tính đ quan trọng thu c tính
Trang 351.5.4 ây dựng cây ng u nhiên
Hình 1.15 Ví dụ cây ngẫu nhiên
Cơy ng u nhiên lƠ m t cơy đ ợc tạo ra với việc xem xét các thu c tính đ ợc lựa chọn ng u nhiên tại m t nút, cơy không cắt tỉa
1.5.5 Tạo cây ng u nhiên
Cơy ng u nhiên cũng tạo ra theo quy tắt tạo cơy top-down
Với m i nút c a cơy (không ph i lƠ nút lá) chọn ng u nhiên m lƠ c s phơn chia tại nút đó (đ c l p với m i nút) Tính chia tốt nh t dựa trên các bi n m trong t p
hu n luyện n
Với bi n lƠ giá trị không liên t c thì m i nhánh s lƠ m t giá trị c a thu c tính,
ng ợc lại với bi n lƠ giá trị tiên l c thì s chia thƠnh 2 nhánh với ng ỡng chia tốt nh t
Ví d : Tạo ra cơy ng u nhiên với CSDL có 10 thu c tính, M=10
1.5.6 Đặc điểm c a Random Forest
a u điểm
- Thu t toán gi i quy t tốt các bƠi toán có nhiều dữ liệu nhiễu, thi u giá trị
Trang 36- Dễ dƠng thực hiện song song Thay vì m t máy thực hiện c thu t toán, ta có thể sử d ng nhiều máy để xơy dựng các cơy sau đó ghép lại thƠnh rừng
Các sai số đ ợc gi m thiểu do k t qu c a Random Forest đ ợc tổng hợp thông qua nhiều cơy phơn lớp
b Hạn Ếh
- Dữ liệu hu n luyện cần đ ợc đa dạng hóa vƠ cơn bằng về số nhưn lớp Việc không cơn bằng nhưn lớp khi n k t qu dự đoán c a thu t toán có thể lệch về số đông nhưn lớp
- Th i gian hu n luyện c a rừng có thể kéo dƠi tùy số cơy vƠ số thu c tính phơn chia
Trong ch ng nƠy, tôi đư trình bƠy khái quát về khai phá dữ liệu, các b ớc xơy dựng hệ thống khai phá dữ liệu, phơn lớp trong khai phá dữ liệu
Giới thiệu chung về cơy quy t định Thu t toán xơy dựng cơy quy t định C4.5
và Random Forest
Trong ch ng ti p theo, lu n văn s trình bƠy chi ti t cách th c v n d ng cơy quy t định để gi i quy t bƠi toán đánh giá r i ro vƠ bồi th ng b o hiểm xe c giới