Như vậy ta có thể khái quát hóa khái niệm khai phá dữ liệu 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 cơ sở dữ liệu CSDL, kho dữ liệu… để từ đó
Trang 1ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM
NGUYỄN THỊ THU AN
ỨNG DỤNG THUẬT TOÁN RỪNG NGẪU NHIÊN MỜ
ĐỂ XÂY DỰNG HỆ THỐNG TRỢ GIÚP ĐÁNH GIÁ
RỦI RO TRONG BẢO HIỂM XE CƠ GIỚI
LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN
Đà Nẵng - Năm 2017
Trang 2ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM
NGUYỄN THỊ THU AN
ỨNG DỤNG THUẬT TOÁN RỪNG NGẪU NHIÊN MỜ
ĐỂ XÂY DỰNG HỆ THỐNG TRỢ GIÚP ĐÁNH GIÁ
RỦI RO TRONG BẢO HIỂM XE CƠ GIỚI
Chuyên ngành: Hệ thống thông tin
Mã số: 61.49.01.04
LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN
Người hướng dẫn khoa học: TS Nguyễn Trần Quốc Vinh
Đà Nẵng - Năm 2017
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan:
- Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của TS Nguyễn Trần Quốc Vinh
- Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng và trung thực về tên tác giả, tên công trình, thời gian và địa điểm công bố
- Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin chịu hoàn toàn trách nhiệm
Tác giả luận văn
Nguyễn Thị Thu An
Trang 4MỤC LỤC
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục tiêu nghiên cứu 3
3 Đối tượng và phạm vi nghiên cứu 3
4 Phương pháp nghiên cứu 3
5 Dự kiến kết quả 4
6 Ý nghĩa khoa học và thực tiễn của luận văn 4
7 Bố cục luận văn 5
CHƯƠNG 1 NGHIÊN CỨU TỔNG QUAN 6
1.1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 6
1.1.1 Sơ lược về khai phá dữ liệu 6
1.1.2 Các kỹ thuật áp dụng trong khai phá dữ liệu 8
1.1.3 Các bước xây dựng hệ thống khai phá dữ liệu 8
1.1.4 Ứng dụng của khai phá dữ liệu 10
1.1.5 Khó khăn trong khai phá dữ liệu 10
1.2 PHÂN LỚP TRONG KHAI PHÁ DỮ LIỆU 10
1.2.1 Phân lớp dữ liệu 10
1.2.2 Quá trình phân lớp dữ liệu 11
1.2.3 Các vấn đề liên quan đến phân lớp dữ liệu 14
1.3 CÂY QUYẾT ĐỊNH 17
1.3.1 Cây quyết định ID3 17
1.3.2 Cây quyết định mờ (Fuzzy Decision tree) 21
1.4 RỪNG NGẪU NHIÊN 30
1.4.1 Rừng ngẫu nhiên (Random Forest) 30
1.4.2 Rừng ngẫu nhiên mờ (Fuzzy Random Forest) 31
Trang 51.4.3 Mô hình phân lớp với rừng ngẫu nhiên mờ 33
KẾT CHƯƠNG 1 37
CHƯƠNG 2 ỨNG DỤNG RỪNG NGẪU NHIÊN MỜ TRONG CÔNG TÁC ĐÁNH GIÁ RỦI RO VÀ BỒI THƯỜNG BẢO HIỂM XE CƠ GIỚI 38 2.1 KHÁI QUÁT VỀ THỊ TRƯỜNG BẢO HIỂM XE CƠ GIỚI 38
2.2 ĐÁNH GIÁ RỦI RO XE CƠ GIỚI 39
2.2.1 Khái niệm rủi ro 39
2.2.2 Khái niệm về đánh giá rủi ro 39
2.2.3 Phạm vi bảo hiểm 40
2.2.4 Quy trình đánh giá rủi ro trong bảo hiểm xe cơ giới 40
2.2.5 Các yếu tố ảnh hưởng đến rủi ro trong bảo hiểm xe cơ giới 40
2.3 PHÂN TÍCH HIỆN TRẠNG 41
2.3.1 Chỉ số trong lĩnh vực kinh doanh bảo hiểm xe cơ giới 41
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 xe cơ giới 42
2.4 ỨNG DỤNG RỪNG NGẪU NHIÊN MỜ 42
2.4.1 Phân tích dữ liệu 42
2.4.2 Mờ hóa dữ liệu 44
2.4.3 Xây dựng cây ngẫu nhiên mờ 46
2.5.4 Mô hình tổng quát 48
2.4.5 Ước tính độ chính xác của mô hình 48
KẾT CHƯƠNG 2 50
CHƯƠNG 3 XÂY DỰNG VÀ THỬ NGHIỆM ỨNG DỤNG 51
3.1 CHỨC NĂNG HỆ THỐNG 51
3.1.1 Phân tích yêu cầu 51
3.1.2 Các chức năng chính 55
3.2 THỬ NGHIỆM ỨNG DỤNG 56
Trang 63.3 ĐÁNH GIÁ ĐỘ CHÍNH XÁC 60 3.3.1 Mô hi ̀nh Random Forest 60 3.3.2 Mô hình Fuzzy Random Forest 62
2.3.3 So sánh độ chính xác giữa mô hình Random Forest và Fuzzy
Random Forest 64 KẾT CHƯƠNG 3 64
KẾT LUẬN 65 DANH MỤC TÀI LIỆU THAM KHẢO
QUYẾT ĐỊNH GIAO ĐỀ TÀI (BẢN SAO)
PHỤ LỤC
Trang 7DANH MỤC CÁC TỪ VIẾT TẮT
Tiếng Việt
CSDL : Cơ sở dữ liệu CNTT : Công nghệ thông tin KPDL : Khai phá dữ liệu MDSD : Mục đích sử dụng
MH : Máy học STBT : Số tiền bồi thường
SL : Số lượng TGSD Thời gian sử dụng XCG Xe cơ giới
Tiếng nước ngoài
CART Classification and Regression Trees
DBMS Database Management System KDD Knowledge Discovery in Database FRF Fuzzy Random Forest
OOB Out of Bag
RF Random Forest
Trang 83.2 So sánh độ chính xác giữa Random Forest và Fuzzy
Trang 9DANH MỤC CÁC HÌNH
Số hiệu
1.1 Quá trình khám phá tri thức 7 1.2 Xây dựng mô hình phân lớp 12
1.5 Ước lượng độ chính xác của mô hình 16 1.6 Ví dụ K-fold croos validation - fold 1 16 1.7 Ví dụ K-fold croos validation-fold 2 17 1.8 Ví dụ K-fold croos validation-fold 3 17 1.9 Xây dựng cây quyết định theo thuật toán ID3 18 1.10 Đồ thị hàm thuộc tập mờ A 23 1.11 Hình biểu diễn chức năng thành phần của Nhiệt độ 25 1.12 Hình biểu diễn chức năng thành phần của Gió 26 1.13 Biểu diễn chức năng thành phần Ùn tắc giao thông 26 1.14 Xây dựng cây con Fuzzy ID3 29 2.1 Đồ thị của hàm membership 46
Trang 10Số hiệu
3.4 Biểu đồ hoạt động huấn luyện dữ liệu 53
3.6 Biểu đồ tuần tự cho hoạt động đăng nhập 53 3.7 Biểu đồ tuần tự cho hoạt động huấn luyện dữ liệu 54 3.8 Biểu đồ tuần tự cho hoạt động tư vấn 54
3.20 Độ chính xác của mô hình Fuzzy Random Forest –
3.21 Kết quả độ chính xác của mô hình Fuzzy Random
Trang 11MỞ ĐẦU
1 Lý do chọn đề tài
Trong những năm gần đây, sự phát triển mạnh mẽ của công nghệ thông tin đã làm cho khả năng thu thập và lưu trữ thông tin của các hệ thống thông tin tăng nhanh một cách chóng mặt Bên cạnh đó, việc tin học hóa một cách ồ ạt và nhanh chóng của các hoạt động sản xuất, kinh doanh cũng như nhiều lĩnh vực hoạt động khác đã tạo ra cho chúng ta một lượng dữ liệu lưu trữ khổng lồ Hàng triệu cơ sở dữ liệu đã được sử dụng cho các hoạt động sản xuất, kinh doanh và quản lý,
Sự phát triển này đã dẫn tới một yêu cầu cấp thiết là cần có những kỹ thuật và công cụ mới để tự động chuyển đổi lượng dữ liệu khổng lồ trên thành các tri thức có ích Từ đó, các kỹ thuật khai phá dữ liệu đã trở thành một lĩnh vực thời sự của nền CNTT thế giới hiện nay nói chung và Việt Nam nói riêng Khai phá dữ liệu đang được áp dụng một cách rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác nhau: marketing, tài chính, ngân hàng và bảo hiểm, khoa học, y tế, an ninh, internet… Rất nhiều tổ chức và công ty lớn trên thế giới đã áp dụng kỹ thuật khai phá dữ liệu vào các hoạt động sản xuất kinh doanh của mình và thu được những lợi ích to lớn
Theo thống kê, dân số tại Quảng Ngãi hiện có 1.200.000 người, tập trung ở 12 huyện và thành phố Trong đó có khoản 593.243 phương tiện cơ giới tham gia giao thông và có 20.114 ô tô, 573.129 môtô các loại Theo số liệu của Ủy ban An toàn giao thông tỉnh Quảng Ngãi, trong năm 2015 có khoản 792 vụ tại nạn giao thông, làm hỏng 1.467 phương tiện ô tô xe máy các loại, đa số tập trung ở các vùng đồng bằng
Quảng Ngãi là đầu mối giao thông quan trọng xuyên suốt trên địa bàn tỉnh,
có Quốc lộ 1A và đường sắt Bắc - Nam chạy qua tỉnh Trong đó chiều dài Quốc lộ 1A qua tỉnh dài 98 km Quốc lộ 24 nối liền Quốc lộ 1A đoạn qua Thạch Trụ, huyện Mộ Đức, tỉnh Quảng Ngãi với Kon Tum dài 69 km và Quốc lộ 24B dài
18 km, đây là tuyến giao thông quan trọng đối với Kon Tum và Quảng Ngãi trong quan hệ kinh tế, văn hoá giữa duyên hải và Tây Nguyên, giao lưu trao đổi hàng hoá,
Trang 12phát triển kinh tế miền núi gắn với an ninh quốc phòng Phía Bắc tỉnh, tại huyện Bình Sơn có sân bay Chu Lai đã đưa vào hoạt động, tại đây có cảng nước sâu Dung Quất Ngoài ra, với bờ biển dài 144 km, Quảng Ngãi có nhiều cửa biển, cảng biển nhỏ như Sa Kỳ, Sa Cần, Bình Châu, Mỹ Á,… có tiềm năng về giao thông đường thủy, thương mại và du lịch Tuy mức tăng trưởng kinh tế của Quảng Ngãi đạt được là khá cao nhưng đi liền với nó là vấn đề về tai nạn giao thông và ùn tắc giao thông, đặc biệt là giao thông đường bộ, số vụ giao thông không ngừng tăng
cả về quy mô và số lượng Khi tai nạn giao thông xẩy ra, không chỉ gây thiệt hại về tính mạng và tài sản cho người điều khiển mà còn ảnh hưởng đến tính mạng và tài sản của người bị hại, cũng như gây ra nhiều hệ lụy cho xã hội Đây là mối lo ngại lớn nhất đối với chủ xe cơ giới bởi vì họ không chỉ gây thiệt hại cho bản thân mà còn phải chịu trách nhiệm đối với bên thứ ba Để khắc phục tổn hại cho các bên, bảo hiểm xe cơ giới đã ra đời và đã chứng minh được sự cần thiết khách quan của loại hình bảo hiểm này
Trong lĩnh vực kinh doanh này, công tác đánh giá rủi ro xe cơ giới 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 Tuy nhiên, hầu hết các công ty đều 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 việc đánh giá rủi ro đều thủ công, sơ sài và cảm tính dẫn đến 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, Đúng, Đủ” sẽ mang lại cho khách hàng niềm tin, cũng như sự sẻ chia những rủi ro
mà họ gặp phải 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 xe cơ giới, 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
xe cơ giới
Trang 13Hiện nay, đã có một số công trình nghiên cứu được sử dụng để xây dựng hệ thống đánh giá rủi ro trong xe cơ giới như: thuật toán C4.5, thuật toán rừng nhẫu nhiên, nhưng thuật toán rừng ngẫu nhiên mờ chưa được sử dụng Vì vậy tôi chọn
đề tài: “Ứng dụng thuật toán rừng ngẫu nhiên mờ để xây dựng hệ thống trợ giúp
đánh giá rủi ro trong bảo hiểm xe cơ giới” để làm luận văn thạc sỹ của mình
2 Mục tiêu nghiên cứu
- Nghiên cứu thuật toán liên quan đến cây quyết định
- Phân tích, so sánh đánh giá và triển khai áp dụng thuật toán Random Forest
và Fuzzy Random Forest
- Xây dựng hệ thống trợ giúp đánh giá rủi ro xe cơ giới, đả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 xe cơ giới và nâng cao hiệu quả kinh doanh trong đơn vị
3 Đối tượng và phạm vi nghiên cứu
3.1 Đối tượng nghiên cứu
- Nghiên cứu về các quy định, quy trình trong đánh giá rủi ro xe cơ giới
- Các vấn đề liên quan đến độ rủi ro trong bảo hiểm xe cơ giới
- Hồ sơ khách hàng tham gia mua bảo hiểm xe cơ giới tại Công ty Cổ phần Bảo hiểm AAA tại Quảng Ngãi
- Các phương pháp khai phá dữ liệu
4 Phương pháp nghiên cứu
4.1 Nghiên cứu lý thuyết
- Nghiên cứu tài liệu, ngôn ngữ và các công nghệ có liên quan
Trang 14- 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 Random Forest và Fuzzy Random Forest 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 xe cơ giới
- 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 Dự kiến kết quả
5.1 Kết quả về lý thuyết
- Hiểu thêm được phương pháp khai phá dữ liệu
- Ứ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 hiện tại nhằm nâng cao hiệu quả kinh doanh trong đơn vị
5.2 Kết quả thực tiễn
- Xây dựng hệ thống hỗ trợ đánh giá rủi ro cho xe cơ giới tại Công ty Cổ phần Bảo hiểm AAA 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ề thuật toán rừng ngẫu nhiên mờ vào bài toán đánh giá rủi
ro trong khai thác bảo hiểm cho xe cơ giới
Về mặt thực tiễn, ứng dụng phân tích dữ liệu kinh doanh của công ty trong những năm gần đây, qua đó phát hiện các trường hợp bảo hiểm xe cơ giới có mức
độ rủi ro cao
Giúp dự đoán và hỗ trợ ra các quyết định chính xác, tránh những tình huống bồi thường theo cảm tính, đồng thời 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
Trang 157 Bố cục luận văn
Chương 1: Nghiên cứu tổng quan
Trong chương này, chúng tôi trình bày 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 và cây quyết định mờ trong phân lớp dữ liệu Giải thuật Random Forest và Fuzzy 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 trong bảo hiểm xe cơ giới
Trong chương này, chúng 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 Random Forest và Fuzzy 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: Xây dựng chương trình và thử nghiệm ứng dụng
Ở chương này, chú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 16CHƯƠ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ỷ XX, 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 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ậc 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 và máy học 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 đã đưa ra định nghĩa của khai phá dữ liệu như sau:
“Khai phá dữ liệu 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” [11] Với một cách tiếp cận ứng dụng hơn, Tiến sĩ Fayyad đã phát biểu: “Khai phá dữ liệu 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, khai phá dữ liệu 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 khai phá dữ liệu 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 cơ sở dữ liệu (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 khai phá dữ liệu, 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
Trang 17chia 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
Hình 1.1 Quá trình khám phá tri thức
Quá trình khá phá tri thức có thể chia thành các bước như Hình 1.1 và có thể được 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
Trang 18dữ 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
1.1.2 Các kỹ thuật áp dụng trong khai phá dữ liệu
- Học có giám sát (supervised learning): là một kỹ thuật của ngành học máy để
xây dựng một hàm từ dữ liệu huấn luyện Dữ liệu huấn luyện bao gồm các cặp đối tượng đầu vào (thường dạng vector) và đầu ra mong muốn Đầu ra của một hàm có thể là một giá trị liên tục (gọi là hồi quy), hay có thể là dự đoán một nhãn phân lớp cho một đối tượng đầu vào (gọi là phân lớp)
- Học không có giám sát (unsupervised learning): là một phương pháp của
ngành học máy nhằm tìm ra một mô hình mà phù hợp với các quan sát Nó khác biệt với học có giám sát ở chỗ là đầu ra đúng tương ứng cho mỗi đầu vào là không biết trước Trong học không có giám sát, một tập dữ liệu đầu vào được thu thập Học không có giám sát thường đối xử với các đối tượng đầu vào như là một tập các biến ngẫu nhiên Sau đó, một mô hình mật độ kết hợp sẽ được xây dựng cho tập
dữ liệu đó
- Học bán giám sát (semi-supervised learning): 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
- Học tăng cường (reinforcement learning): máy tính đưa ra quyết định hành
động (action) và nhận kết quả phản hồi (response/ reward) từ môi trường (environment) Sau đó, máy tính tìm cách sữa chữa các quyết định hành động của mình
1.1.3 Các bước xây dựng hệ thống khai phá dữ liệu
Bước 1: Xá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
Trang 19cá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: Xâ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
Bước 6: Báo cáo
Sau khi xây dựng và đánh giá mô hình thích hợp, chúng ta nên đưa ta các báo cáo dự đoán dưới dạng biểu đồ hay bảng số liệu
Bước 9: Quản lý mô hình
Mỗi một mô hình khai phá dữ liệu đều có một vòng đời phát triển Tuy vậy trong một số trường hợp các mẫu là thay đổi thường xuyên, trong những trường hợp
đó thì mô hình phải được tạo mới liên tục và việc tạo ra mô hình mới là phải tự động
Trang 201.1.4 Ứng dụng của khai phá dữ liệu
KPDL được vận dụng trong nhiều lĩnh vực khác nhau nhằm khai thác nguồn
dữ liệu phong phú được lưu trữ trong các hệ thống thông tin như:
- Kinh doanh thương mại:
+ Xá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 ngàn bản ghi) đồ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
Ngày nay phân lớp dữ liệu (classification) là một trong những hướng nghiên
cứu chính của khai phá dữ liệu Thực tế đặt ra nhu cầu là từ một cơ sở dữ liệu với nhiều thông tin ẩn con người có thể trích rút ra các quyết định nghiệp vụ thông minh Phân lớp và dự đoán là hai dạng của phân tích dữ liệu nhằm trích rút ra một
Trang 21mô hình mô tả các lớp dữ liệu quan trọng hay dự đoán xu hướng dữ liệu tương lai
Phân lớp dự đoán giá trị của những nhãn xác định (categorical label) hay những giá trị rời rạc (discrete value), có nghĩa là phân lớp thao tác với những đối tượng
dữ liệu mà có bộ giá trị là biết trước Trong khi đó, dự đoán lại xây dựng mô hình với các hàm nhận giá trị liên tục Ví dụ mô hình phân lớp dự báo thời tiết có thể cho biết thời tiết ngày mai là mưa hay nắng dựa vào những thông số về độ ẩm, sức gió, nhiệt độ,… của ngày hôm nay và các ngày trước đó Hay nhờ các luật về xu hướng mua hàng của khách hàng trong siêu thị, các nhân viên kinh doanh có thể ra những quyết sách đúng đắn về lượng mặt hàng cũng như chủng loại bày bán… Một mô hình dự đoán có thể dự đoán được lượng tiền tiêu dùng của các khách hàng tiềm năng dựa trên những thông tin về thu nhập và nghề nghiệp của khách hàng Trong những năm qua, phân lớp dữ liệu đã thu hút sự quan tâm các nhà
nghiên cứu trong nhiều lĩnh vực khác nhau như học máy (machine learning), hệ chuyên gia (expert system), thống kê (statistics) Công nghệ này cũng ứng dụng
trong nhiều lĩnh vực khác nhau như: thương mại, nhà băng, maketing, nghiên cứu thị trường, bảo hiểm, y tế, giáo dục Phần lớn các thuật toán ra đời trước đều sử
dụng cơ chế dữ liệu cư trú trong bộ nhớ (memory resident), thường thao tác với
lượng dữ liệu nhỏ Một số thuật toán ra đời sau này đã sử dụng kỹ thuật cư trú trên
để cải thiện đáng kể khả năng mở rộng của thuật toán với những tập dữ liệu lớn lên tới hàng tỉ bản ghi
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 [14]:
- Bước thứ nhất (learning)
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 đó Mỗi bộ giá trị được gọi chung là một phần tử dữ liệu (data tuple), có thể là các mẫu (sample), ví dụ (example), đối tượng (object), bản ghi (record) hay trường hợp (case) Khoá luận sử dụng các thuật ngữ này với nghĩa tương đương
Trang 22Trong tập dữ liệu này, mỗi phần tử dữ liệu được giả sử thuộc về một lớp định
trước, lớp ở đây là giá trị của một thuộc tính được chọn làm thuộc tính gán nhãn lớp hay thuộc tính phân lớp (class label attribute) Đầu ra của bước này thường là
các quy tắ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 1.2
Hình 1.2 Xây dựng mô hình phân lớp
- Bước thứ hai (classification)
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 Holdout là một kỹ thuật đơn giản để ước lượng độ chính xác đó
Kỹ thuật này sử dụng một tập dữ liệu kiểm tra với các mẫu đã được gán nhãn lớp Các mẫu này được chọn ngẫu nhiên và độc lập với các mẫu trong tập dữ liệu đào
tạo Độ chính xác của mô hình trên tập dữ liệu kiểm tra đã đưa là tỉ lệ phần trăm các
các mẫu trong tập dữ liệu kiểm tra được mô hình phân lớp đúng (so với thực tế) 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ô
Trang 23hì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
Hình 1.3 Ước 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 trú trọng và phát triển
Có thể liệt kê ra đây các kỹ thuật phân lớp đã được sử dụng trong những năm qua:
- Phân lớp cây quyết định (Decision tree classification)
- Bộ phân lớp Bayesian (Bayesian classifier)
Bộ phân lớp (Mô hình)
Dữ liệu mới
TENURED
yes no yes
Bộ phân lớp (Mô hình)
Dữ liệu kiểm tra
Trang 24- Mô hình phân lớp K-hàng xóm gần nhất (K-nearest neighbor classifier)
- Mạng nơron
- Phân tích thống kê
- Các thuật toán di truyền
- Phương pháp tập thô (Rough set Approach)
1.2.3 Các vấn đề liên quan đến phân lớp dữ liệu
a Chuẩn bị dữ liệu cho việc 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 (noise)
và giá trị thiếu (missing value) trong tập dữ liệu ban đầu Noise 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 trơn Missing value là 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)
- Phân tích sự cần thiết của dữ liệu: Có rất nhiều thuộc tính trong tập dữ liệu có
thể hoàn toàn không cần thiết hay liên quan đến một bài toán phân lớp cụ thể Ví dụ
dữ liệu về ngày trong tuần hoàn toàn không cần thiết đối với ứng dụng phân tích độ rủi ro của các khoản tiền cho vay của ngân hàng, nên thuộc tính này là dư thừa Phân tích sự cần thiết của dữ liệu nhằm mục đích loại bỏ những thuộc tính không cần thiết,
dư thừa khỏi quá trình học vì những thuộc tính đó sẽ làm chậm, phức tạp và gây ra sự hiểu sai trong quá trình học dẫn tới một mô hình phân lớp không dùng được
- 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 (continuous attribute hay numeric attribute) 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á
Trang 25trị 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 (categorical attribute) 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 So sánh các mô hình phân lớp
Trong từng ứng dụng cụ thể cần lựa chọn mô hình phân lớp phù hợp Việc lựa chọn đó căn cứ vào sự so sánh các mô hình phân lớp với nhau, dựa trên các tiêu chuẩn sau:
- Độ chính xác dự đoán (predictive accuracy): Độ chính xác là khả năng của
mô hình để dự đoán chính xác nhãn lớp của dữ liệu mới hay dữ liệu chưa biết
- Tốc độ (speed): Tốc độ là những chi phí tính toán liên quan đến quá trình tạo
c Phương pháp đánh giá độ chính xác của mô hình phân lớp
Ước lượng độ chính xác của bộ phân lớp là quan trọng ở chỗ nó cho phép dự đoán được độ chính xác của các kết quả phân lớp những dữ liệu tương lai Độ chính xác còn giúp so sánh các mô hình phân lớp khác nhau Luận văn đề cập đến
2 phương pháp đánh giá phổ biến là holdout và k-fold cross-validation Cả 2 kỹ
thuật này đều dựa trên các phân hoạch ngẫu nhiên tập dữ liệu ban đầu
- Phương pháp Holdout: Dữ liệu dưa ra được phân chia ngẫu nhiên thành 2
Trang 26phầ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 Ước 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 S 1 , S 2 , …, S k Quá trình học và kiểm thử được thực hiện k lần Tại lần lặp thứ i, S i 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 S 2 , S 3 …, S k , sau đó test trên tập S 1; tiếp tục quá trình dạy được thực hiện trên
tập S 1 , S 3 , S 4 ,…, S k , sau đó kiểm thử trên tập S 2; 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
Ví dụ: k-fold croos validation với k=3:
Dữ liệu huấn luyện
Dữ liệu kiểm tra
Trang 27Fold 2:
Hình 1.7 Ví dụ K-fold croos validation-fold 2
Fold 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 CÂY QUYẾT ĐỊNH
1.3.1 Cây quyết định ID3
Thuật toán ID3 (Interactive Dichotomizer 3) là một trong những thuật toán được sử dụng nhiều nhất trong máy học và khai phá dữ liệu do đặc tính dễ sử dụng
và hiệu quả của nó J.Róe Quilan [1] đã phát triển nó vào những năm 1986 dựa trên thuật toán CLS (Concept Learning System) Nó xây dựng một cây duyết định từ
Dữ liệu
Phần 1
Phần 2
Phần 3
Dữ liệu đào tạo 3
Dữ liệu kiểm tra 3
chính xác 3
Trang 28một số dữ liệu tượng trưng cố định hoặc dữ liệu mang tính biểu tượng lịch sử để học cách phân loại chúng và dự đoán sự phân loại dữ liệu mới Dữ liệu phải có một
số thuộc tính với các giá trị khác nhau Trong đó, dữ liệu này phải xác định trước và
có các lớp rời rạc nhau Cây quyết định lựa chọn các thuộc tính cho việc ra quyết định bằng cách sử dụng thu thập thông tin (IG) [18] ID3 là thuật toán nổi tiếng nhất
để học Cây quyết định Trong ví dụ sau, một người sẽ quyết định lái xe hoặc đi phương tiện công cộng để đi làm theo thời tiết và tình hình giao thông Số liệu thu được trong 14 ngày như sau:
Trang 29a Entropy và độ lợi thông tin (Information Gain)
Phương pháp ID3 cơ bản chọn mỗi phân loại thuộc tính cá thể bằng cách sử dụng phương pháp thống kê bắt đầu ở trên cùng của cây Câu hỏi đặt ra của phương pháp ID3 là làm thế nào để chọn thuộc tính của mỗi điểm trên chiều cao của cây Mỗi thuộc tính thống kê gọi là Information Gain được định nghĩa để đo lường giá trị của thuộc tính Số liệu thống kê Entropy được áp dụng để xác định thu được thông tin, để chọn thuộc tính tốt nhất từ các thuộc tính khóa Định nghĩa của Entropy như sau:
2 1
| |
| |
i i
C P S
Để thực hiện việc hỗ trợ các thuộc tính, dựa trên dữ liệu của bộ mẫu này, chúng
ta phải xác định một tiêu chuẩn đo lường: độ lợi thông tin (Information Gain) Độ lợi thông tin thu được của một thuộc tính là nội dung thông tin cuối cùng, là kết quả của việc giảm mẫu thiết lập Entropy sau khi sử dụng thuộc tính này để chia mẫu Cách xác định độ lợi thông tin của thuộc tính A liên quan đến tập mẫu S là:
Trang 30Trong đó: trọng số W v
i
S S
là tỷ số của dữ liệu với thuộc tính v trong tập
G(S, Nhiệt độ) = 0.029 G(S, Ùn tắc giao thông ) = 0.151
b Thuật toán xây dựng cây quyết định ID3
Function ID3 (Training_Set, Class_Labels, Attibutes)
If tất cả các ví dụ của Training_Set thuộc lớp C
Return Cây quyết định có nút gốc Root được gắn với (có nhãn) lớp C
Thuộc tính kiểm tra có nút gốc Root A
For each Giá trị có thể vi của thuộc tính A
Trang 31Bổ sung một nhánh cây mối dưới nút gốc Root, tương ứng với trường hợp:
“Giá trị của A là vi”
Xác định Training_Set = {ví dụ x| x Training_Set, xA=v}
If (Training_Set v là rỗng) Then
Tạo một nút lá với nhãn lớp Majority_Class_Label (Training_Set)
Gắn nút lá này vào nhánh cây mới vừa tạo
Else Gắn cây mới vừa tạo một cây con sinh ra bởi
ID3 (Training_Set, Class_Labels, {Attibutes A})
Return Root
1.3.2 Cây quyết định mờ (Fuzzy Decision tree)
Cây quyết định mờ là một cây quyết định cổ điển mở rộng và là một phương pháp hiệu quả để trích xuất tri thức trong các vấn đề phân loại không chắc chắn Nó
áp dụng lý thuyết tập mờ để đại diện cho tập dữ liệu, kết hợp sự phát triển và tỉa cây
để xác định cấu trúc của cây
a Lý thuyết tập mờ
Trong toán học truyền thống, khái niệm tập hợp được phát biểu:
Cho tập hợp X và A X khi đó ta có thể xây dựng một hàm, được gọi là hàm
đặc trưng, xác định các phần tử của tập X như sau: xét : X {0,1} với x thì: A
( ) 1x
nếu x A ( )x 0
x A Hàm đặc trưng ( ) x rõ ràng là hàm xác định các phần tử của tập A Nhờ hàm
Mở rộng khái niệm tập hợp của toán học cổ điển nêu trên, Lofti Zad xét hàm
trên toàn đoạn [0,1]
Định nghĩa 1 Cho X là một tập hợp A được gọi là một tập mờ trong X nếu:
{( , ( )) | }
A x x xX
Trang 32Trong đó A( )x là hàm xác định trên đoạn [0,1]: A:X [0,1] Hàm A
được gọi là hàm thuộc (membership) của A, còn A( )x là một giá trị trong đoạn
[0,1] được gọi là mức độ thuộc của x trong A
( ) /
A A
A x dx x
Ví dụ 3 Cho X là tập các điểm tổng kết trung bình các môn học cho sinh viên
Qua thống kê người ta thấy rằng:
0% số người coi một sinh viên là giỏi khi điểm tổng kết đạt dưới 7.0;
5% số người coi một sinh viên là giỏi khi điểm tổng kết đạt điểm từ 7.0 đến 7.5; 10% số người coi một sinh viên là giỏi khi điểm tổng kết đạt đến 8.0;
20% số người coi một sinh viên là giỏi khi điểm tổng kết đạt đến 8.5;
80% số người coi một sinh viên là giỏi khi điểm tổng kết đạt điểm từ 9.0 đến 9.5; 100% số người coi một sinh viên là giỏi khi điểm tổng kết đạt điểm 10;
Bây giờ cần biểu diễn tập các điểm trên X, được kí hiệu là tập A, để mô tả
“sinh viên giỏi” Với kết quả thống kê như trên, không thể dùng khái niệm truyền
thống để biểu diễn tập A Trong trường hợp này, khái niệm tập mờ là rất hữu dụng
và A chính là một tập mờ Nếu xét X gồm các đại lượng hữu hạn:
Trang 33Nếu xét X là một khoảng liên tục X = [7.0, 10], ta có thể biểu diễn đồ thị hàm thuộc của A như sau:
- Giao của hai tập mờ: Giao của hai tập mờ A và B, ký hiệu A , là một tập B
mờ có hàm thuộc A B xác định như sau:
( ) min{ ( ), ( )},
- Hợp của hai tập mờ: Hợp của hai tập mờ A và B trong X, ký hiệu A , là B
một tập mờ có hàm thuộc A B xác định như sau:
Trang 34- Phần bù của một tập mờ: Phần bù A của A trong X là một tập mờ A có hàm thuộc xác định như sau:
( ) 1 A( ),
- Tổng rời của hai tập mờ: Tổng rời của hai tập mờ A và B trong X, ký hiệu
A được định nghĩa như sau: B
b Mờ hóa dữ liệu mẫu
Dữ liệu thường tồn tại hai loại thuộc tính khác nhau: rời rạc và liên tục Nhiều thuật toán đòi hỏi dữ liệu có giá trị rời rạc Nó không thể thay thế một miền liên tục với một miền rời rạc, nó đòi hỏi một số phân vùng/ nhóm và rất khó để xác định ranh giới của các thuộc tính liên tục Ví dụ, làm thế nào để chúng ta xác định các
Ùn tắc giao thông là dài hay ngắn? Chúng ta có thể nói rằng đoạn đường giao thông 3km là dài và 2.9km là ngắn? nói là lạnh khi nhiệt độ là 9, và nó là mát mẻ khi nhiệt
là 10? Do đó, một số học giả đã trích dẫn khái niệm mờ trong phương pháp ID3, thay thế dữ liệu mẫu bằng biểu thức mờ và tạo nên phương pháp ID3 mờ Dưới đây
là ví dụ về biểu diễn mờ cho dữ liệu mẫu
Chúng ta biết rằng ở hầu hết các giá trị của hệ số nhiệt độ x xấp xỉ giữa [-50, 50] Sau đó, các hàm membership của tập mờ nóng ( ( ))h x , lạnh (m( ))x và mát
mẻ ( ( ))c x có thể được xác định riêng như sau:
Trang 350 51
x
x
x x
Hình 1.11 Hình biểu diễn chức năng thành phần của Nhiệt độ
Khi đó, hàm membership của thuộc tính Nhiệt độ sẽ là:
Trang 36Hình 1.12 Hình biểu diễn chức năng thành phần của Gió
Hàm membership của thuộc tính Ùn tắc giao thông:
Trang 37Áp dụng các hàm membership trên ta tính được các giá trị membership của các thành phần như sau:
c Entropy mờ và độ lợi thông tin mờ
Vì dữ liệu mờ nên công thức Entropy cho các thuộc tính và Information Gain được tính khác với công thức tính 1.1 và 1.2
Giả sử ta có mẫu dữ liệu huấn luyện S có l thuộc tính A A1, 2, ,A và thuộc l
A là tổng các giá trị hàm thuộc trong tập A
Công thức tính Entropy và độ lợi thông tin như sau:
D P
D
Trang 38* Áp dụng công thức trên cho ví dụ 1
- Đối với thuộc tính nhiệt độ:
Giống như thuật toán ID3, Ùn tắc giao thông có độ lợi thông tin lớn nhất nên
ta sẽ chọn thuộc tính Ùn tắc giao thông làm nút tách cây
d Xác định ngưỡng dừng
Nếu việc học của FDT dừng lại cho đến khi tất cả các dữ liệu mẫu trong mỗi nút lá thuộc về một lớp sẽ dẫn tới độ chính xác sẽ thấp Để nâng cao độ chính xác, việc học phải dừng lại sớm hoặc được tỉa cành Do đó, có hai ngưỡng dừng được định nghĩa trong tài liệu [8]
- Ngưỡng điều khiển mờ r Nếu tỷ lệ của một tập dữ liệu của một lớp C lớn k
hơn hoặc bằng r, dừng việc mở rộng cây
- Ngưỡng quyết định lá n Nếu số lượng tập dữ liệu nhỏ hơn ngưỡng n thì dừng mở rộng cây
e Thủ tục xây dựng cây quyết định mờ
Tạo một nút gốc là tập mờ của tất cả các dữ liệu với giá trị bằng 1 Với kết quả tính toán ở trên, chúng ta sử dụng thuộc tính Ùn tắc giao thông để mở rộng cây Tạo
ra hai nút con Dài và Ngắn, trong đó các giá trị hàm membership tại các nút con này
là tích của các giá trị hàm membership ban đầu ở gốc và các giá trị hàm
Trang 39membership của thuộc tính Ùn tắc giao thông Phần tử mẫu được bỏ qua nếu giá trị thành viên của nó là null
Ví dụ, đối với nút phụ bên trái với giá trị thuộc tính Dài, giá trị hàm membership của dữ liệu D1 là d bằng 0.25 Giá trị hàm membership mới của D1trong nút này là:
Nếu là 75% thì nút trái sẽ tiếp tục mở rộng và nút bên phải dừng lại
Trang 40f Thuật toán FID3
1 Tạo nút gốc có tập dữ liệu mờ với giá trị membership bằng 1
2 Nếu một nút t với tập dữ liệu mờ D đáp ứng các điều kiện sau, thì đó là một
nút lá và được gán bởi tên lớp
- Tỷ lệ của một lớp Ck lớn hơn hoặc bằng r, tức là:
i
C r
D
D
- Số lượng tập dữ liệu ít hơn n
- Không còn thuộc tính nào để tiếp tục mở rộng
3 Nếu một nút D không đáp ứng tất cả các điều kiện trên, thì nó không phải là nút lá Và một nút con mới được tạo ra như sau:
- Đối với mỗi A i i ( 1, 2, , )l tính toán độ lợi thông tin G f(A , chọn thuộc i)
tính có độ lợi thông tin lớn nhất kí hiệu là A max
- Chia D thành tập con mờ D D1, 2, ,D theo A m max, trong đó giá trị hàm membership của dữ liệu trong D là tích của hàm membership trong D với giá trị j
hàm membership của Fmax, j hàm membership của thuộc tính giá trị A max
- Tạo các nút mới t t1, , ,2 t cho tập con mờ m D D1, 2, ,D và nhãn các tập m
mờ Fmax, j tới các cạnh kết nối giữa các nút t và t j
- Thay D bằng D j (i1, 2, ,m) và lặp lại từ 2 đệ quy
1.4 RỪNG NGẪU NHIÊN
1.4.1 Rừng ngẫu nhiên (Random Forest)
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 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ố