Cho đến những năm 90 của thế kỷ trước, nhu cầu khám phá tri thức mới thực sự bùng nổ, theo đó hàng loạt các lĩnh vực nghiên cứu về tổ chức các kho dữ liệu và kho thông tin, các hệ trợ gi
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trần Thanh Sơn
PHÂN CỤM DỮ LIỆU
VÀ ỨNG DỤNG TRONG CÔNG TÁC TÁI BẢO HIỂM
Ngành: Công nghệ thông tin
Mã số: 1.01.10
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS VŨ ĐỨC THI
Hà Nội – 2006
Trang 2MỤC LỤC
MỤC LỤC 2
DANH SÁCH HÌNH VẼ 4
DANH SÁCH BẢNG BIỂU 6
BẢNG TỪ VIẾT TẮT 6
TỪ KHOÁ 6
MỞ ĐẦU 8
CHƯƠNG 1: TỔNG QUAN VỀ DATA MINING 10
1.1 Giới thiệu chung 10
1.2 KPDL là gì? 10
1.3 Quá trình khám phá tri thức trong CSDL 11 1.4 Các kỹ thuật áp dụng trong KPDL Error! Bookmark not defined
1.4.1 Các kỹ thuật tiếp cận trong KPDL Error! Bookmark not defined 1.4.2 Các dạng dữ liệu có thể khai phá Error! Bookmark not defined
1.5 Ứng dụng của KPDL Error! Bookmark not defined 1.6 Phân cụm dữ liệu và ứng dụng Error! Bookmark not defined CHƯƠNG 2: PHÂN CỤM DỮ LIỆU VÀ CÁC TIẾP CẬN Error! Bookmark not defined 2.1 Vấn đề phân cụm dữ liệu Error! Bookmark not defined 2.2 Các ứng dụng của phân cụm dữ liệu Error! Bookmark not defined 2.3 Các kiểu dữ liệu và độ đo tương tự Error! Bookmark not defined
2.3.1 Phân loại các kiểu dữ liệu dựa trên kích thước miềnError! Bookmark not defined 2.3.2 Phân loại các kiểu dữ liệu dựa trên hệ đo Error! Bookmark not defined 2.3.3 Khái niệm về tương tự và phi tương tự Error! Bookmark not defined
2.4 Những kỹ thuật tiếp cận trong phân cụm dữ liệu Error! Bookmark not defined
2.4.1 Phân cụm phân hoạch Error! Bookmark not defined 2.4.2 Phân cụm dữ liệu phân cấp Error! Bookmark not defined 2.4.3 Phân cụm dữ liệu dựa trên mật độ Error! Bookmark not defined 2.4.4 Phân cụm dữ liệu dựa trên lưới Error! Bookmark not defined 2.4.5 Phân cụm dữ liệu dựa trên mô hình Error! Bookmark not defined 2.4.6 Phân cụm dữ liệu có ràng buộc Error! Bookmark not defined
2.5 Các yêu cầu cần thiết cho tạo dựng kỹ thuật PCDL Error! Bookmark not defined CHƯƠNG 3: CÁC THUẬT TOÁN PHÂN CỤM DỮ LIỆU ĐIỂN HÌNHError! Bookmark not defined
3.1 Họ các thuật toán phân hoạch Error! Bookmark not defined
3.1.1 Thuật toán k-means Error! Bookmark not defined 3.1.2 Thuật toán PAM Error! Bookmark not defined 3.1.3 Thuật toán CLARA Error! Bookmark not defined 3.1.4 Thuật toán CLARANS Error! Bookmark not defined 3.1.5 Nhận xét chung về họ các thuật toán phân hoạch Error! Bookmark not defined
3.2 Các thuật toán phân cụm phân cấp Error! Bookmark not defined
3.2.1 Thuật toán BIRCH Error! Bookmark not defined 3.2.2 Thuật toán CURE Error! Bookmark not defined
3.3 Các thuật toán phân cụm dựa trên mật độ Error! Bookmark not defined
3.3.1 Thuật toán DBSCAN Error! Bookmark not defined 3.3.2 Thuật toán OPTICS Error! Bookmark not defined 3.3.3 Thuật toán DENCLUE Error! Bookmark not defined
Trang 33.4 Một số thuật toán phân cụm dữ liệu đặc thù Error! Bookmark not defined
3.4.1 Thuật toán STING Error! Bookmark not defined
3.4.2 Thuật toán CLIQUE Error! Bookmark not defined
3.4.3 Thuật toán EM Error! Bookmark not defined
CHƯƠNG 4: PHÂN CỤM DỮ LIỆU MỜ Error! Bookmark not defined
4.1 Vấn đề phân cụm mờ Error! Bookmark not defined
4.2 Thuật toán FCM Error! Bookmark not defined
4.2.1 Hàm tiêu chuẩn Error! Bookmark not defined
4.2.2 Thuật toán FCM Error! Bookmark not defined
4.3 Thuật toán FCM Error! Bookmark not defined
4.3.1 Hàm tiêu chuẩn Error! Bookmark not defined
4.3.2 Thụât toán FCM Error! Bookmark not defined
CHƯƠNG 5: PHÂN CỤM SONG SONG TRÊN TẬP DỮ LIỆU HỖN HỢPError! Bookmark not defined
5 1 Giới thiệu Error! Bookmark not defined
5.2 Mô hình dữ liệu có kiểu hỗn hợp giữa thuộc tính số và thuộc tính hạng mục Error!
Bookmark not defined
5.2.1 Các miền thuộc tính Error! Bookmark not defined
5.2.2 Các đối tượng có kiểu hỗn hợp Error! Bookmark not defined
5 3 Cơ sở toán học cho thuật toán k - prototypes Error! Bookmark not defined
5.3.1 Hàm tiêu chuẩn Error! Bookmark not defined
5.3.2 Độ đo sự tương tự Error! Bookmark not defined
5.4 Thuật toán k- prototypes Error! Bookmark not defined
5.5 Nhận xét chung về phương pháp k-prototypes Error! Bookmark not defined
KẾT LUẬN Error! Bookmark not defined
1 Các kết quả đạt được trong luận văn Error! Bookmark not defined
2 Hướng nghiên cứu tiếp theo Error! Bookmark not defined
PHỤ LỤC Error! Bookmark not defined
1 Đặt bài toán Error! Bookmark not defined
2 Thiết kế chương trình Error! Bookmark not defined
3 Một số module chính của chương trình Error! Bookmark not defined
TÀI LIỆU THAM KHẢO 2
Trang 4DANH SÁCH HÌNH VẼ
Hình 1 - Các bước thực hiện trong quá trình khám phá tri thứcError! Bookmark not defined Hình 2: Các lĩnh vực liên quan đến Khám phá tri thức trong CSDLError! Bookmark not defined Hình 3: Mô phỏng vấn đề PCDL Error! Bookmark not defined
Hình 4 : Các chiến lược phân cụm phân cấp Error! Bookmark not defined
Hình 5: Một số hình dạng cụm dữ liệu khám phá được bởi kỹ thuật PCDL dựa trên mật độ Error! Bookmark not defined
Hình 6: Mô hình cấu trúc dữ liệu lưới Error! Bookmark not defined
Hình 7: Các bước thực hiện của thuật toán k-means Error! Bookmark not defined
Hình 8: Thuật toán k-means chi tiết Error! Bookmark not defined
Hình 9: Thí dụ về một số hình dạng cụm dữ liệu được khám phá bởi k-meansError! Bookmark
not defined
Hình 10: Thí dụ về các khả năng thay thế các đối tượng tâm medoidError! Bookmark not defined
Hình 11: Các bước thực hiện của thuật toán PAM Error! Bookmark not defined
Hình 12: Các bước thực hiện của thuật toán CLARA Error! Bookmark not defined
Hình 14: Cây CF được sử dụng bởi thuật toán BIRCH Error! Bookmark not defined
Hình 15 : Các bước thực hiện cơ bản của thuật toán BIRCHError! Bookmark not defined
Hình 16: Các cụm dữ liệu được khám phá bởi CURE Error! Bookmark not defined
Hình 17 : Các bước thực hiện cơ bản của thuật toán CUREError! Bookmark not defined
Hình 18: Thuật toán DBSCAN Error! Bookmark not defined
Hình 19: Thứ tự phân cụm của các đối tượng của OPTICS Error! Bookmark not defined
Hình 20: DENCLUE với hàm phân phối Gaussian Error! Bookmark not defined
Hình 21: Thuật toán FCM Error! Bookmark not defined
Hình 22: Mô phỏng về tập dữ liệu đơn chiều Error! Bookmark not defined
Hình 23: Hàm thuộc với trọng tâm của cụm A trong k-meansError! Bookmark not defined Hình 24: Hàm thuộc với trọng tâm của cụm A trong FCM Error! Bookmark not defined
Hình 25: Các cụm khám phá được bởi thuật toán phân cụm mờError! Bookmark not defined
Trang 5Hình 26: Thuật toán FCM Error! Bookmark not defined Hình 27: Sự tác động của t trong phân cụm Error! Bookmark not defined Hình 28: Các bước thực hiện cơ bản của thuật toán k-prototypesError! Bookmark not defined Hình 29: Thuật toán k-prototypes chi tiết Error! Bookmark not defined Hình 30: Quá trình hội tụ của thuật toán k-prototypes Error! Bookmark not defined
Trang 6DANH SÁCH BẢNG BIỂU
Bảng 1: Bảng tham số Error! Bookmark not defined Bảng 2: Tổng kết các thuật toán phân cụm Error! Bookmark not defined Bảng 3: Kết quả thực nghiệm của thuật toán FCM Error! Bookmark not defined Bảng 4: Dữ liệu có thuộc tính hỗn hợp Error! Bookmark not defined Bảng 5: Bảng kết quả thực hiện theo độ lớn của dữ liệu Error! Bookmark not defined Bảng 6: Bảng kết quả thực hiện số cụm thu đƣợc Error! Bookmark not defined
BẢNG TỪ VIẾT TẮT
Database
TỪ KHOÁ
Data mining, phân cụm dữ liệu, dữ liệu hỗn hợp, phân cụm mờ, phân cụm song song
Trang 7LỜI CẢM ƠN
Trước tiên, tôi xin tỏ lòng biết ơn sâu sắc tới thầy giáo PGS.TS Vũ Đức Thi - người hướng dẫn khoa học đã chỉ bảo tận tình và truyền thụ cho tôi kiến thức, nguồn cảm hứng nghiên cứu giúp tôi hoàn thành luận văn này
Tôi xin bày tỏ lòng biết ơn đến các thầy giáo trong trường Đại học Công nghệ: TS Hà Quang Thuỵ, PGS.TS Đỗ Đức Giáo, PGS.TS Trịnh Nhật Tiến, PGS.TS Nguyễn Văn Vị, TS Nguyễn Tuệ,
…đã trực tiếp giảng dạy, góp ý chuyên môn, động viên tôi trong suốt khoá học
Cuối cùng tôi xin bày tỏ lòng biết ơn đến gia đình, và các bạn bè đã chia sẻ và động viên tôi hoàn thành luận văn
Trần Thanh Sơn
Trang 8MỞ ĐẦU
Trong những năm gần đây, dưới tác động mạnh mẽ của các tiến bộ trong công nghệ phần cứng
và truyền thông, các hệ thống dữ liệu phục vụ cho các lĩnh vực kinh tế - xã hội đã phát triển bùng nổ, lượng dữ liệu được tạo ra ngày càng lớn Sự phong phú về dữ liệu, thông tin cùng với khả năng khai thác một cách tối ưu đã mang lại cho công tác quản lý, hoạt động kinh doanh,…những hiệu quả thực
sự rõ rệt Cùng với sự phát triển các lĩnh vực hoạt động đó, đặc biệt trong lĩnh vực ra quyết định thì yêu cầu về thông tin, dữ liệu ngày càng đòi hỏi cao hơn, người quyết định không những cần dữ liệu mà còn cần có thêm nhiều hiểu biết, nhiều tri thức để hỗ trợ cho việc ra quyết định của mình Cho đến những năm 90 của thế kỷ trước, nhu cầu khám phá tri thức mới thực sự bùng nổ, theo đó hàng loạt các lĩnh vực nghiên cứu về tổ chức các kho dữ liệu và kho thông tin, các hệ trợ giúp quyết định, các thuật toán nhận dạng mẫu và phân lớp mẫu, …và đặc biệt là Khai phá dữ liệu (Data Mining - KPDL) ra đời
Từ khi ra đời, KPDL đã trở thành một trong những hướng nghiên cứu phổ biến trong lĩnh vực khoa học máy tính và công nghệ tri thức kết hợp với CSDL, thống kê, học máy và những lĩnh vực có liên quan để trích chọn những thông tin giá trị và tri thức hữu ích trong tập hợp dữ liệu lớn Nhiều kết quả nghiên cứu, ứng dụng của KPDL trong các lĩnh vực khoa học, kinh tế, xã hội KPDL bao hàm nhiều hướng nghiên cứu quan trọng, một trong số đó là phân cụm dữ liệu (Data Clustering - PCDL) PCDL là quá trình tìm kiếm và phát hiện ra các cụm hoặc các mẫu dữ liệu tự nhiên trong cơ sở dữ liệu lớn Các kỹ thuật chính được áp dụng trong phân cụm dữ liệu phần lớn được kế thừa từ lĩnh vực thống
kê, học máy, nhận dạng, lượng hoá, Đến nay, đã có nhiều ứng dụng phân cụm dữ liệu cho việc giải quyết các vấn đề trong các lĩnh vực như tài chính, thông tin địa lý, sinh học, nhận dạng ảnh, …Trong thời gian gần đây, trong lĩnh vực PCDL, người ta tập trung chủ yếu vào nghiên cứu, phân tích các mô hình dữ liệu phức tạp như dữ liệu văn bản, Web, hình ảnh,…và đặc biệt là mô hình dữ liệu hỗn hợp để
áp dụng chúng trong PCDL
Trong bối cảnh nước ta đang đẩy mạnh phát triển, hội nhập kinh tế với thế giới thì nhu cầu về
tự động khám phá tri thức từ các dữ liệu sẵn có nhằm tăng năng lực cạnh tranh của các ngành kinh tế
là cực kỳ cần thiết và cấp bách Hơn nữa, KPDL là lĩnh vực rộng nên trong luận văn này tôi chọn đề
tài nghiên cứu: "Phân cụm dữ liệu và ứng dụng trong công tác Tái bảo hiểm" cho luận văn của
mình Đây là một trong các nội dung quan trọng trong KPDL và là hướng nghiên cứu có nhiều triển vọng Luận văn trình bày một số vấn đề về KPDL và tập trung khảo cứu hệ thống các họ thuật toán PCDL, bao gồm các cách tiếp cận và đặc điểm ứng dụng
Trang 9Ngoài phần mở đầu và kết luận, cấu trúc nội dung của luận văn bao gồm có 5 chương :
Chương 1: trình bày tổng quan về lĩnh vực KPDL và một số khái niệm liên quan, đồng thời chỉ
ra các giai đoạn thực hiện trong quá trình khám phá tri thức Phần tiếp theo của chương là trình bày ngắn gọn, có hệ thống về các kỹ thuật, các dạng dữ liệu thường được sử dụng trong KPDL
Chương 2: giới thiệu về Phân cụm dữ liệu, đây là một hướng tiếp cận chính trong KPDL
Trong đó, đi sâu phân tích chi tiết các vấn đề cơ bản trong PCDL và ý nghĩa của PCDL, đặc điểm của
các kiểu dữ liệu cơ bản thường sử dụng trong PCDL như: dữ liệu có thuộc tính hạng mục (Categorical), dữ liệu có thuộc tính số,… Các khái niệm về “tương tự” và “phi tương tự” cũng được
trình bày trong chương này Phần cuối của chương trình bày vắn tắt, tổng kết về các đặc trưng của các
phương pháp PCDL được sử dụng phổ biến như: Phương pháp phân cụm phân hoạch, phương pháp phân cụm phân cấp, phương pháp phân cụm dựa trên mật độ,…đồng thời nêu các kỹ thuật đánh giá
kết quả PCDL
Chương 3: trình bày các phân tích, đánh giá các họ các thuật toán PCDL điển hình và chỉ ra
các ưu điểm, nhược điểm của chúng cũng như các yêu cầu đặt ra cho việc tạo dụng thuật toán PCDL
Chương 4: trình bày các khảo cứu về áp dụng các kỹ thuật mờ trong PCDL và chứng minh tính
hiệu quả của nó trong giải quyết với một lớp bài toán trong PCDL Nội dung cụ thể của chương này là trình bày về thuật toán FCM, đây là một thuật toán phân cụm mờ dựa trên lược đồ của thuật toán k-means Thuật toán mở rộng của FCM là FCM được đề xuất nhằm khắc phục cho các nhược điểm của thuật toán FCM là như nhạy cảm với các phần tử nhiễu (noise) và các phần tử ngoại lai trong dữ liệu (outlier) Phần cuối của chương nêu ra một số các kết quả thực nghiệm cho các thuật toán phân cụm mờ đã trình bày ở trên
Chương 5: trình bày về khảo cứu của thuật toán PCDL k-prototypes áp dụng tập dữ liệu có
kiểu hỗn hợp giữa thuộc tính số và thuộc tính hạng mục
Phần kết luận, phần này trình bày tóm tắt về các nội dung thực hiện trong luận văn này, đồng thời đưa ra những vấn đề nghiên cứu tiếp theo cho tương lai
Phần phụ lục trình bày thử nghiệm khai phá dữ liệu “Tái bảo hiểm” bằng phương pháp phân cụm dữ liệu
Trang 10CHƯƠNG 1: TỔNG QUAN VỀ DATA MINING
1.1 Giới thiệu chung
Những năm 60 của thế kỷ trước, người ta đã bắt đầu sử dụng các công cụ tin học để tổ chức và khai thác các CSDL Cùng với sự phát triển vượt bậc của các công nghệ điện tử và truyền thông, khả năng thu thập và lưu trữ và xử lý dữ liệu cho các hệ thống tin học không ngừng được nâng cao, theo
đó, lượng thông tin được lưu trữ trên các thiết bị như đĩa từ, băng từ, đĩa CD-ROM, không ngừng tăng lên
Lượng dữ liệu khổng lồ này thực sự là một nguồn “tài nguyên” có nhiều giá trị bởi thông tin là yếu tố then chốt trong mọi hoạt động quản lý, kinh doanh, phát triển sản xuất và dịch vụ,… nó giúp những người điều hành và quản lý có hiểu biết về môi trường và tiến trình hoạt động của tổ chức mình trước khi ra quyết định để tác động đến quá trình hoạt động nhằm đạt được các mục tiêu một cách hiệu quả và bền vững
KPDL là một lĩnh vực mới xuất hiện, nhằm tự động khai thác những thông tin, những tri thức
có tính tiềm ẩn, hữu ích từ những CSDL lớn cho các đơn vị, tổ chức, doanh nghiệp,… từ đó làm thúc đẩy khả năng sản xuất, kinh doanh, cạnh tranh cho các đơn vị, tổ chức này Các kết quả khoa học cùng những ứng dụng thành công trong khám phá tri thức, cho thấy, KPDL là một lĩnh vực phát triển bền vững, mang lại nhiều lợi ích và có nhiều triển vọng, đồng thời có ưu thế hơn hẳn so với các công cụ phân tích dữ liệu truyền thống Hiện nay, KPDL đã ứng dụng ngày càng rộng rãi trong các lĩnh vực như: thương mại, tài chính, điều trị y học, viễn thông, tin - sinh,
1.2 KPDL là gì?
KPDL là một hướng nghiên cứu mới ra đời hơn một thập niên trở lại đây, các kỹ thuật chính được áp dụng trong lĩnh vực này phần lớn được thừa kế từ lĩnh vực CSDL, học máy, trí tuệ nhân tạo,
lý thuyết thông tin, xác suất thống kê, và tính toán hiệu năng cao Do sự phát triển nhanh của KPDL về phạm vi áp dụng và các phương pháp tìm kiếm tri thức, nên đã có nhiều quan điểm khác nhau về KPDL Tuy nhiên, ở một mức trừu tượng nhất định, chúng ta định nghĩa KPDL như sau [11][23]:
Định nghĩa: KPDL là một quá trình tìm kiếm, phát hiện các tri thức mới, tiềm ẩn, hữu dụng trong
CSDL lớn