Luận văn Thạc sĩ Khoa học máy tính: Khai phá dữ liệu sử dụng giải thuật di truyền và ứng dụng
lượt xem 4
download
Bố cục của luận văn được chia thành 3 chương: Chương I: -Tổng quan về khai phá dữ liệu và phân cụm dữ liệu; Chương II - Thuật toán phân cụm dữ liệu dựa trên giải thuật di truyền; Chương III - Thực nghiệm phân cụm dữ liệu về sinh viên của trường Cao đẳng Y tế Yên Bái. Mời các bạn cùng tham khảo!
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Luận văn Thạc sĩ Khoa học máy tính: Khai phá dữ liệu sử dụng giải thuật di truyền và ứng dụng
- ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG Hoàng Hà Đức KHAI PHÁ DỮ LIỆU SỬ DỤNG GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍ NH Người hướng dẫn khoa học TS. Nguyễn Huy Đức Thái Nguyên - 2016 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- LỜI CAM ĐOAN Sau quá trình học tập tại Trường Đại học công nghệ thông tin & truyền thông, với những kiến thức lý thuyết và thực hành đã tích lũy được, với việc vận dụng các kiến thức vào thực tế, em đã tự nghiên cứu các tài liệu, các công trình nghiên cứu, đồng thời có sự phân tích, tổng hợp, đúc kết và phát triển để hoàn thành luận văn thạc sĩ của mình. Em xin cam đoan luận văn này là công trình do bản thân em tự tìm hiểu, nghiên cứu và hoàn thành dưới sự hướng dẫn tận tình của thầy giáo TS. Nguyễn Huy Đức. Thái Nguyên, tháng 6 năm 2016 Học viên Hoàng Hà Đức 2 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- LỜI CÁM ƠN Trong thời gian hai năm của chương trình đào tạo thạc sỹ, trong đó gần một nửa thời gian dành cho các môn học, thời gian còn lại dành cho việc lựa chọn đề tài, giáo viên hướng dẫn, tập trung vào nghiên cứu, viết, chỉnh sửa và hoàn thiện đề tài. Với quỹ thời gian như vậy và với vị trí công việc đang phải đảm nhận, không riêng bản thân em mà hầu hết các sinh viên cao học muốn hoàn thành tốt luận văn của mình trước hết đều phải có sự sắp xếp thời gian hợp lý, có sự tập trung học tập và nghiên cứu với tinh thần nghiêm túc, nỗ lực hết mình; tiếp đến cần có sự ủng hộ về tinh thần, sự giúp đỡ về chuyên môn một trong những điều kiện không thể thiếu quyết định đến việc thành công của đề tài. Để hoàn thành được đề tài này trước tiên em xin gửi lời cảm ơn đến thầy giáo hướng dẫn TS. Nguyễn Huy Đức, người đã có những định hướng cho em về nội dung và hướng phát triển của đề tài, người đã có những đóng góp quý báu cho em về những vấn đề chuyên môn của đề tài, giúp em tháo gỡ kịp thời những vướng mắc trong quá trình làm luận văn. Em cũng xin cảm ơn các Thầy Cô giáo Trường Đại học Công nghệ thông tin và Truyền thông Thái Nguyên, cũng như bạn bè cùng lớp đã có những ý kiến đóng góp bổ sung cho đề tài luận văn của em. Xin cảm ơn gia đình, người thân cũng như đồng nghiệp luôn quan tâm, ủng hộ hỗ trợ về mặt tinh thần trong suốt thời gian từ khi nhận đề tài đến khi hoàn thiện đề tài này. Trong nội dung của luận văn chắc chắn còn nhiều thiếu sót. Em rất mong các Thầy Cô cùng bạn bè đóng góp để bản luận văn của Em được hoàn thiện hơn. Em xin trân trọng cảm ơn. Thái Nguyên, tháng 6 năm 2016 Học viên Hoàng Hà Đức 3 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- MỤC LỤC LỜI CAM ĐOAN ....................................................................................................... 1 LỜI CÁM ƠN ............................................................................................................. 3 CHƯƠNG 1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÂN CỤM DỮ LIỆU .......................................................................................................................... 11 1.1. Tổng quan về khám phá tri thức và khai phá dữ liệu. ........................................ 11 1.1.1. Giới thiệu chung về khám phá tri thức và khai phá dữ liệu ................. 11 1.1.2. Quá trình khám phá tri thức. ................................................................ 11 1.1.3. Quá trình khai phá dữ liệu .................................................................... 13 1.2. Các phương pháp khai phá dữ liệu..................................................................... 13 1.2.1. Phân lớp và dự đoán (Classification & Prediction) ............................. 14 1.2.2. Luật kết hợp (Association Rules) .......................................................... 14 1.2.3. Khai thác mẫu tuần tự (Sequential / Temporal patterns) ..................... 14 1.2.4. Phân nhóm- đoạn (Clustering / Segmentation) .................................... 15 1.2.5. Hồi quy (Regression) ............................................................................ 15 1.2.6. Tổng hợp hóa (Summarization) ............................................................ 15 1.2.7. Mô hình hóa sự phụ thuộc (dependency modeling) .............................. 16 1.2.8. Phát hiện sự biến đổi và độ lệch (Change and deviation detection) .... 16 1.3. Phân cụm dữ liệu. ............................................................................................... 16 1.3.1. Phân cụm dữ liệu là gì.......................................................................... 16 1.3.2. Các mục tiêu của phân cụm dữ liệu ...................................................... 18 1.3.4. Các phương pháp phân cụm dữ liệu ..................................................... 19 1.3.4.1. Phương pháp phân cụm phân cấp ..................................................... 19 1.3.4.2. Phương pháp phân cụm dựa trên mật độ .......................................... 20 1.3.4.3. Phương pháp phân cụm phân hoạch ................................................. 21 1.3.4.4. Phương pháp phân cụm dựa trên lưới ............................................... 22 1.3.4.5. Phương pháp phân cụm dựa trên mô hình ........................................ 23 1.3.4.6. Phương pháp phân cụm có dữ liệu ràng buộc ................................... 23 CHƯƠNG 2: THUẬT TOÁN PHÂN CỤM DỮ LIỆU DỰA TRÊN GIẢI THUẬT DI TRUYỀN ................................................................................................................... 25 2.1. Giải thuật di truyền............................................................................................. 25 4 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- 2.1.1. Lịch sử của giải thuật di truyền. ........................................................... 25 2.1.2. Tóm tắt giải thuật di truyền................................................................... 25 2.1.3. Cách biểu diễn bài toán trong giải thuật di truyền (hay chọn cách biểu diễn cấu trúc dữ liệu cho bài toán) ................................................................. 29 2.1.4. Mã hóa (encoding). ............................................................................... 35 2.1.5. Các phương pháp chọn(Selection). ....................................................... 37 2.1.6. Chọn lọc Roulette (Roulette Wheel Selection). ..................................... 37 2.1.7. Các toán tử trong giải thuật di truyền .................................................. 41 2.1.8. Các tham số cần sử dụng trong giải thuật di truyền............................. 44 2.1.9. Điều kiện kết thúc thuật giải di truyền. ................................................. 44 2.1.10. Nguyên lý hoạt động của giải thuật di truyền. .................................... 44 2.1.11. Ứng dụng của thuật giải di truyền. ..................................................... 44 2.2. Thuật toán phân cụm sử dụng giải thuật di truyền. ............................................ 44 2.2.1. Một số giải thuật cơ bản trong phân cụm dữ liệu................................. 44 2.2.2. Giải thuật phân cụm dựa trên giải thuật di truyền. .............................. 57 2.3. So sánh hiệu quả của thuật toán Kmeans và thuật toán Kmeans sử dụng giải thuật di truyền..................................................................................................................... 61 2.3.1. Thuật Toán K-Means............................................................................. 61 2.3.2. Thuật toán Kmean sử dụng giải thuật di truyền ................................... 66 2.3.3. So sánh giữa k-means và k-means sử dụng giải thuật di truyền: .......... 69 CHƯƠNG 3: THỰC NGHIỆM PHÂN CỤM DỮ LIỆU VỀ SINH VIÊN CỦA TRƯỜNG CAO ĐẲNG Y TẾ YÊN BÁI ....................................................... 70 3.1. Mô tả bài toán..................................................................................................... 70 3.1.1. Cơ sở dữ liệu. ........................................................................................ 70 3.2. Xây dựng chương trình. ..................................................................................... 71 3.2.2. Các chức năng của chương trình .......................................................... 71 3.2.3. Giao diện chương trình ......................................................................... 71 3.2.3. Kết quả thực nghiệm. ............................................................................ 73 KẾT LUẬN ............................................................................................................... 75 TÀI LIỆU THAM KHẢO ......................................................................................... 76 PHẦN PHỤ LỤC ...................................................................................................... 78 5 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- DANH SÁCH HÌNH VẼ Hình 1.1: Quá trình khám phá tri thức ..................................................................... 12 Hình 1.2: Quá trình khai phá dữ liệu......................................................................... 13 Hình 1.3: Ví dụ về phân cụm dữ liệu ........................................................................ 17 Hình 1.4: Ví dụ phân cụm các ngôi nhà dựa trên khoảng cách................................ 18 Hình 1.5: Ví dụ phân cụm các ngôi nhà dựa trên kích cở ........................................ 19 Hình 1.6. Các chiến lược phân cụm phân cấp .......................................................... 20 Hình 1.7: Ví dụ về phân cụm theo mật độ (1)........................................................... 21 Hình 1.8: Ví dụ về phân cụm theo mật độ (2)........................................................... 21 Hình 1.9: Cấu trúc phân cụm dựa trên lưới............................................................... 22 Hình 1.10: Ví dụ về phân cụm dựa trên mô hình ...................................................... 23 Hình 1.11: Các cách mà các cụm có thể đưa ra ........................................................ 24 Hình 2.1:Sơ đồ tổng quát của giải thuật di truyền .................................................... 28 Hình 2.2: Nhiễm sắc thể bằng cây ............................................................................ 37 Hình 2.2. Minh họa trường hợp tách dữ liệu thành 3 cụm ........................................ 45 Hình 2.3. Khái quát giải thuật CURE ....................................................................... 48 Hình 2.3. Các cụm dữ liệu được khám phá bởi CURE ............................................. 49 Hình 2.4. Lân cận của P với ngưỡng Eps .................................................................. 50 Hình 2.5: Mật độ - đến được trực tiếp....................................................................... 51 Hình 2.6: Mật độ đến được ....................................................................................... 51 Hình 2.7: Mật độ liên thông ...................................................................................... 51 Hình 2.8: Cụm và nhiễu. ........................................................................................... 52 Hình 2.9: Hình dạng các cụm được khám phá bởi giải thuật DBSCAN .................. 53 Hình 3.1. Cơ sở dữ liệu học sinh sinh viên ............................................................... 71 Hình 3.2. Giao diện chương trình ............................................................................. 71 Hình 3.3. Màn hình khởi động .................................................................................. 73 Hình 3.4. Màn hình phân cụm dữ liệu ...................................................................... 73 6 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- 7 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- DANH SÁCH TỪ VIẾT TẮT Từ viết tắt Ý nghĩa KPDL Khai phá dữ liệu KPTT Khai phá tri thức PCDL Phân cụm dữ liệu CSDL Cơ sở dữ liệu GA Giải thuật di truyền Genetic Algorithm DE Giải thuật tiến hóa vi phân Differential Evolution NST Nhiễm sắc thể CDL Cụm dữ liệu CNTT Công nghệ thông tin 8 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- MỞ ĐẦU Phân cụm dữ liêu là quá trình nhóm một tập các đối tượng tương tự nhau trong tập dữ liêu vào các cụm sao cho các đối tượng thuộc cùng một cụm là tương đồng còn các đối tượng thuộc các cụm khác nhau sẽ không tương đồng. Phân cụm dữ liêu không đòi hỏi phải định nghĩa trước các mẫu dữ liêu huấn luyện. Vì thế, có thể coi phân cụm dữ liêu là một cách học không giám sát (unsupervised learning). Các Kỹ thuật phân cụm được ứng dụng rất nhiều trong các lĩnh vực tài chính ngân hành để phân lọai các nhóm khách hàng khác nhau. Ngoài ra phân cụm dữ liêu còn có thể được sử dụng như một bước tiền xử lý cho các giải thuật khai phá dữ liệu khác như phân loại và mô tả đặc điểm, có tác dụng phát hiện ra các cụm. Trong ngành khoa học máy tính, tìm kiếm lời giải tối ưu cho các bài toán là vấn đề được các nhà khoa học máy tính đặc biệt rất quan tâm. Mục đích chính của các thuật toán là tìm kiếm thuật giải chất lượng cao và sử dụng kỹ thuật trí tuệ nhân tạo đặc biệt rất cần thiết khi giải quyết các bài toán có không gian tìm kiếm lớn. Giải thuật di truyền (Genetic Algorithm GA) là một trong những kỹ thuật tìm kiếm lời giải tối ưu đã đáp ứng được yêu cầu của nhiều bài toán và ứng dụng. Hiện nay, thuật toán di truyền được ứng dụng rất rộng rãi trong các lĩnh vực phức tạp. Thuật toán di truyền chứng tỏ được hiệu quả của nó trong các vấn đề khó có thể giải quyết bằng các phương pháp thông thường hay các phương pháp cổ điển, nhất là trong các bài toán cần có sự lượng giá, đánh giá sự tối ưu của kết quả thu được. Chính vì vậy, trong phạm vi đề tài này, tôi chọn hướng phân cụm dữ liệu dựa trên giải thuật di truyền. Luận văn gồm có 3 chương: Chương I: Tổng quan về khai phá dữ liệu và phân cụm dữ liệu Phần này giới thiệu một cách tổng quát về quá trình khám phá tri thức nói chung và khai phá dữ liệu nói riêng. Các phương pháp khai phá dữ liệu và phân cụm dữ liệu. 9 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- Chương II: Thuật toán phân cụm dữ liệu dựa trên giải thuật di truyền. Trong chương này trình bày giải thuật di truyền, thuật toán phân cụm sử dụng giải thuật di truyền và so sánh hiệu quả của thuật toán Kmeans và thuật toán Kmeans sử dụng giải thuật di truyền. Chương III: Thực nghiệm phân cụm dữ liệu về sinh viên của trường Cao đẳng Y tế Yên Bái. Phần này mô tả bài toán, xây dựng chương trình. Cài đặt chương trình thử nghiệm ứng dụng kỹ thuật phân cụm trong công tác học sinh sinh viên của Trường Cao đẳng Y tế Yên Bái và một kết quả thu được. 10 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- CHƯƠNG 1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÂN CỤM DỮ LIỆU 1.1. Tổng quan về khám phá tri thức và khai phá dữ liệu. 1.1.1. Giới thiệu chung về khám phá tri thức và khai phá dữ liệu Nếu cho rằng, điện tử và truyền thông chính là bản chất của khoa học điện tử, thì dữ liệu, thông tin, và tri thức hiện đang là tiêu điểm của một lĩnh vực mới để nghiên cứu và ứng dụng, đó là khám phá tri thức và khai phá dữ liệu [8]. Thông thường, chúng ta coi dữ liệu như là một chuỗi các bits, hoặc các số và các ký hiệu hay là các “đối tượng” với một ý nghĩa nào đó khi được gửi cho một chương trình dưới một dạng nhất định. Các bits thường được sử dụng để đo thông tin, và xem nó như là dữ liệu đã được loại bỏ phần tử thừa, lặp lại, và rút gọn tới mức tối thiểu để đặc trưng một cách cơ bản cho dữ liệu. Tri thức được xem như là các thông tin tích hợp, bao gồm các sự kiện và mối quan hệ giữa chúng, đã được nhận thức, khám phá, hoặc nghiên cứu. Nói cách khác, tri thức có thể được coi là dữ liệu ở mức độ cao của sự trừu tượng và tổng quát. Khám phá tri thức hay phát hiện tri thức trong CSDL là một quy trình nhận biết các mẫu hoặc các mô hình trong dữ liệu với các tính năng: Phân tích, tổng hợp, hợp thức, khả ích và có thể hiểu được. Khai phá dữ liệu là một bước trong quá trình khám phá tri thức, gồm các giải thuật khai thác dữ liệu chuyên dùng dưới một số qui định về hiệu quả tính toán chấp nhận được để tìm ra các mẫu hoặc các mô hình trong dữ liệu. Nói cách khác, mục tiêu của Khai phá dữ liệu là tìm kiếm các mẫu hoặc mô hình tồn tại trong CSDL nhưng ẩn trong khối lượng lớn dữ liệu. 1.1.2. Quá trình khám phá tri thức. Quy trình khám phá tri thức tiến hành qua 6 giai đoạn, xem hình 1.1 [8]: 1. Gom dữ liệu: Tập hợp dữ liệu là bước đầu tiên trong quá trình khai phá dữ liệu. Đây là bước được khai thác trong một cơ sở dữ liệu, một kho dữ liệu và thậm chí các dữ liệu từ các nguồn ứng dụng Web. 2. Trích lọc dữ liệu: Ở giai đọan này dữ liệu được lựa chọn hoặc phân chia theo một số tiêu chuẩn nào đó phục vụ mục đích khai thác, ví dụ chọn tất cả những em học sinh có điểm Trung bình học kỳ lớn hơn 8.0 và có giới tính nữ. 3. Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu: Giai đoạn thứ ba này là giai đoạn hay bị sao lãng, nhưng thực tế nó là một bước rất quan trọng trong quá trình khai phá dữ liệu. Một số lỗi thường mắc phải trong khi gom dữ liệu là tính không đủ 11 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- chặt chẽ, logíc. Vì vậy, dữ liệu thường chứa các giá trị vô nghĩa và không có khả năng kết nối dữ liệu. Ví dụ : Điểm Trung bình = 12.4. Giai đoạn này sẽ tiến hành xử lý những dạng dữ liệu không chặt chẻ nói trên. Những dữ liệu dạng này được xem như thông tin dư thừa, không có giá trị. Bởi vậy, đây là một quá trình rất quan trọng vì dữ liệu này nếu không được “làm sạch – tiền xử lý – chuẩn bị trước” thì sẽ gây nên những kết quả sai lệch nghiêm trọng. 4. Chuyển đổi dữ liệu: Tiếp theo là giai đoạn chuyển đổi dữ liệu, dữ liệu đưa ra có thể sử dụng và điều khiển được bởi việc tổ chức lại nó, tức là dữ liệu sẽ được chuyển đổi về dạng phù hợp cho việc khai phá bằng cách thực hiện các thao tác nhóm hoặc tập hợp. 5. Khai phá dữ liệu: Đây là bước mang tính tư duy trong khai phá dữ liệu. Ở giai đoạn này nhiều thuật toán khác nhau đã được sử dụng để trích ra các mẫu từ dữ liệu. Thuật toán thường dùng là nguyên tắc phân loại, nguyên tắc kết, v.v... 6. Đánh giá các luật và biểu diễn tri thức: Ở giai đoạn này, các mẫu dữ liệu được chiết xuất ra bởi phần mềm khai phá dữ liệu. Không phải bất cứ mẫu dữ liệu nào cũng đều hữu ích, đôi khi nó còn bị sai lệch. Vì vậy, cần phải ưu tiên những tiêu chuẩn đánh giá để chiết xuất ra các tri thức (Knowlege) cần chiết xuất ra. Đánh giá sự hữu ích của các mẫu biểu diễn tri thức dựa trên một số phép đo. Sau đó sử dụng các kỹ thuật trình diễn và trực quan hoá dữ liệu để biểu diễn tri thức khai phá được cho người sử dụng. Hình 1.1: Quá trình khám phá tri thức 12 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- 1.1.3. Quá trình khai phá dữ liệu Khai phá dữ liệu là một giai đoạn quan trọng trong quá trình khám phá tri thức. Về bản chất là giai đoạn duy nhất tìm ra được thông tin mới, thông tin tiềm ẩn có trong cơ sở dữ liệu chủ yếu phục vụ cho mô tả và dự đoán [8]. Mô tả dữ liệu là tổng kết hoặc diễn tả những đặc điểm chung của những thuộc tính dữ liệu trong kho dữ liệu mà con người có thể hiểu được. Dự đoán là dựa trên những dữ liệu hiện thời để dự đoán những quy luật được phát hiện từ các mối liên hệ giữa các thuộc tính của dữ liệu trên cơ sở đó chiết xuất ra các mẫu, dự đoán được những giá trị chưa biết hoặc những giá trị tương lai của các biến quan tâm. Hình 1.2: Quá trình khai phá dữ liệu - Xác định nhiệm vụ: Xác định chính xác các vấn đề cần giải quyết. - Xác định các dữ liệu liên quan: Dùng để xây dựng giải pháp. - Thu thập và tiền xử lý dữ liệu: Thu thập các dữ liệu liên quan và tiền xử lý chúng sao cho thuật toán khai phá dữ liệu có thể hiểu được. Đây là một quá trình rất khó khăn, có thể gặp phải rất nhiều các vướng mắc như: dữ liệu phải được sao ra nhiều bản (nếu được chiết xuất vào các tệp), quản lý tập các dữ liệu, phải lặp đi lặp lại nhiều lần toàn bộ quá trình (nếu mô hình dữ liệu thay đổi), v.v.. - Thuật toán khai phá dữ liệu: Lựa chọn thuật toán khai phá dữ liệu và thực hiện việc khai phá dữ liệu để tìm được các mẫu có ý nghĩa, các mẫu này được biểu diễn dưới dạng luật kết hợp, cây quyết định... tương ứng với ý nghĩa của nó. 1.2. Các phương pháp khai phá dữ liệu. Các kỹ thuật KPDL được có thể chia làm 2 nhóm chính [8]: - Kỹ thuật KPDL mô tả: có nhiệm vụ mô tả về các tính chất hoặc các đặc tính chung của dữ liệu trong CSDL hiện có. Nhóm kỹ thuật này gồm các phương pháp: phân nhóm (Clustering), tổng hợp hóa (Summerization), phát hiện sự biến đổi và độ lệch (Change and deviation detection), phân tích luật kết hợp (Association Rules), ... 13 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- - Kỹ thuật KPDL dự đoán: có nhiệm vụ đưa ra các dự đoán dựa vào các suy diễn trên dữ liệu hiện thời. Nhóm kỹ thuật này gồm các phương pháp: phân lớp (Classification), hồi quy (Regression), ... 1.2.1. Phân lớp và dự đoán (Classification & Prediction) Là đặt các mẫu vào các lớp được xác định trước. Nhiệm vụ chính là tìm các hàm ánh xạ các mẫu dữ liệu một cách chính xác vào trong các lớp.Ví dụ một ngân hàng muốn phân loại các khách hành của họ vào trong hai nhóm có nợ hay không nợ, từ đó giúp họ ra quyết định cho vay hay không cho vay. Quá trình phân lớp dữ liệu thường gồm 2 bước: xây dựng mô hình và sử dụng mô hình để phân lớp dữ liệu. - Bước 1: một mô hình sẽ được xây dựng dựa trên việc phân tích các mẫu dữ liệu sẵn có. Mỗi mẫu tương ứng với một lớp, được quyết định bởi một thuộc tính gọi là thuộc tính lớp. Các mẫu dữ liệu này còn được gọi là tập dữ liệu huấn luyện (training data set). Các nhãn lớp của tập dữ liệu huấn luyện đều phải được xác định trước khi xây dựng mô hình, vì vậy phương pháp này còn được gọi là học có giám sát (supervised learning) khác với phân nhóm dữ liệu là học không có giám sát (unsupervised learning). - Bước 2: sử dụng mô hình để phân lớp dữ liệu. Trước hết chúng ta phải tính độ chính xác của mô hình. Nếu độ chính xác là chấp nhận được, mô hình sẽ được sử dụng để dự đoán nhãn lớp cho các mẫu dữ liệu khác trong tương lai. Trong kỹ thuật phân lớp chúng ta có thể sử dụng các phương pháp như: Cây quyết định (Decision Tree), K-Láng giềng gần nhất (k-Nearest Neighbor), Mạng Nơron (Neural networks), Giải thuật di truyền (Genetic algorithms), Mạng Bayesian (Bayesian networks), Tập mờ và tập thô (Rough and Fuzzy Sets). 1.2.2. Luật kết hợp (Association Rules) Luật kết hợp là dạng luật biểu diễn tri thức ở dạng tương đối đơn giản. Mục tiêu của phương pháp này là phát hiện và đưa ra các mối liên hệ giữa các giá trị dữ liệu trong CSDL. Mẫu đầu ra của giải thuật KPDL là tập luật kết hợp tìm được. Tuy luật kết hợp là một dạng luật khá đơn giản nhưng lại mang rất nhiều ý nghĩa. Thông tin mà dạng luật này đem lại rất có lợi trong các hệ hỗ trợ ra quyết định. Tìm kiếm được những luật kết hợp đặc trưng và mang nhiều thông tin từ CSDL tác nghiệp là một trong những hướng tiếp cận chính của lĩnh vực khai phá dữ liệu. 1.2.3. Khai thác mẫu tuần tự (Sequential / Temporal patterns) Tương tự như khai thác luật kết hợp nhưng có thêm tính thứ tự và tính thời gian. Một luật mô tả mẫu tuần tự có dạng tiêu biểu X Y phản ánh sự xuất hiện của 14 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- biến cố X sẽ dẫn đến việc xuất hiện kế tiếp biến cố Y. Hướng tiếp cận này có tính dự báo cao. 1.2.4. Phân nhóm- đoạn (Clustering / Segmentation) Mục tiêu chính của việc phân nhóm dữ liệu là nhóm các đối tượng tương tự nhau trong tập dữ liệu vào các nhóm sao cho mức độ tương tự giữa các đối tượng trong cùng một nhóm là lớn nhất và mức độ tương tự giữa các đối tượng nằm trong các nhóm khác nhau là nhỏ nhất. Các nhóm có thể tách nhau hoặc phân cấp gối lên nhau và số lượng các nhóm là chưa biết trước. Một đối tượng có thể vừa thuộc nhóm này, nhưng cũng có thể vừa thuộc nhóm khác. Không giống như phân lớp dữ liệu, phân nhóm dữ liệu không đòi hỏi phải định nghĩa trước các mẫu dữ liệu huấn luyện. Vì thế, có thể coi phân nhóm dữ liệu là một cách học bằng quan sát (learning by observation), trong khi phân lớp dữ liệu là học bằng ví dụ (learning by example). Trong phương pháp này bạn sẽ không thể biết kết quả các nhóm thu được sẽ như thế nào khi bắt đầu quá trình. Vì vậy, thông thường cần có một chuyên gia về lĩnh vực đó để đánh giá các nhóm thu được. Phân nhóm còn được gọi là học không có giám sát (unsupervised learning). Phân nhóm dữ liệu được sử dụng nhiều trong các ứng dụng về phân đoạn thị trường, phân đoạn khách hàng, nhận dạng mẫu, phân loại trang Web, … Ngoài ra phân nhóm dữ liệu còn có thể được sử dụng như một bước tiền xử lý cho các thuật toán KPDL khác. 1.2.5. Hồi quy (Regression) Hồi quy là việc học một hàm ánh xạ từ một mẫu dữ liệu thành một biến dự đoán có giá trị thực. Nhiệm vụ của hồi quy tương tự như phân lớp, điểm khác nhau chính là ở chỗ thuộc tính để dự báo là liên tục chứ không rời rạc. Việc dự báo các giá trị số thường được làm bởi các phương pháp thống kê cổ điển chẳng hạn như hồi quy tuyến tính. Tuy nhiên phương pháp mô hình hóa cũng có thể được sử dụng như cây quyết định. 1.2.6. Tổng hợp hóa (Summarization) Là công việc liên quan đến các phương pháp tìm kiếm một mô tả tập con dữ liệu. Kỹ thuật mô tả khái niệm và tổng hợp hóa thường áp dụng trong việc phân tích dữ liệu có tính thăm dò và báo cáo tự động. Nhiệm vụ chính là sản sinh ra các mô tả đặc trưng cho một lớp. Mô tả loại này là một kiểu tổng hợp, tóm tắt các đặc tính chung của tất cả hay hầu hết các mục của một lớp. Các mô tả đặc trưng thể hiện theo luật có dạng sau: “Nếu một mục thuộc về lớp đã chỉ trong tiền đề thì mục đó có tất cả các thuộc tính đã nêu trong kết luận”. 15 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- 1.2.7. Mô hình hóa sự phụ thuộc (dependency modeling) Là việc tìm kiếm một mô hình mô tả sự phụ thuộc giữa các biến, thuộc tính theo hai mức. Mức cấu trúc của mô hình mô tả (thường dưới dạng đồ thị), trong đó, các biến phụ thuộc bộ phận vào các biến khác. Và mức định lượng mô hình mô tả mức độ phụ thuộc. Những phụ thuộc này thường được biểu thị dưới dạng theo luật “nếu - thì” - nếu tiền đề đúng thì kết luận đúng. Về nguyên tắc, cả tiền đề và kết luận đều có thể là sự kết hợp logic của các giá trị thuộc tính. Trên thực tế, tiền đề thường là nhóm các giá trị thuộc tính và kết luận chỉ là một thuộc tính. Hơn nữa, hệ thống có thể phát hiện các luật phân lớp trong đó tất cả các luật cần phải có cùng một thuộc tính do người dùng chỉ ra trong kết luận. Quan hệ phụ thuộc cũng có thể biểu diễn dưới dạng mạng tin cậy Bayes. Đó là đồ thị có hướng, không chu trình. Các nút biểu diễn thuộc tính và trọng số của liên kết phụ thuộc giữa các nút đó. 1.2.8. Phát hiện sự biến đổi và độ lệch (Change and deviation detection) Tập trung vào khám phá hầu hết sự thay đổi có nghĩa dưới dạng độ đo đã biết trước hoặc giá trị chuẩn, phát hiện độ lệch đáng kể giữa nội dung của tập con dữ liệu thực và nội dung mong đợi. Hai mô hình độ lệch hay dùng là lệch theo thời gian và lệch theo nhóm. Độ lệch theo thời gian là sự thay đổi có ý nghĩa của dữ liệu thời gian. Độ lệch theo nhóm là sự khác nhau của dữ liệu trong hai tập con dữ liệu, ở đây xét cả trường hợp tập con dữ liệu này thuộc tập con kia. Nghĩa xác định dữ liệu trong một nhóm con của đối tượng có khác đáng kể so với toàn bộ đối tượng không? Theo cách này, sai sót dữ liệu hay sai lệch so với giá trị thông thường sẽ được phát hiện. 1.3. Phân cụm dữ liệu. 1.3.1. Phân cụm dữ liệu là gì Phân cụm dữ liệu là một kỹ thuật trong Data mining nhằm tìm kiếm, phát hiện các cụm, các mẫu dữ liệu tự nhiên tiềm ẩn và quan trọng trong tập dữ liệu lớn để từ đó cung cấp thông tin, tri thức cho việc ra quyết định [20]. Phân cụm dữ liệu là sự phân chia một cơ sở dữ liệu lớn thành các nhóm dữ liệu với trong đó các đối tượng tương tự như nhau. Trong mỗi nhóm, một số chi tiết có thể không quan tâm đến để đổi lấy dữ liệu đơn giản hóa. Hay ta có thể hiểu “Phân cụm dữ liệu là quá trình tổ chức các đối tượng thành từng nhóm mà các đối tượng ở mỗi nhóm đều tương tự nhau theo một tính chất nào đó, những đối tượng không tương tự tính chất sẽ ở nhóm khác”. 16 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- Phân cụm dữ liệu là quá trình nhóm một tập các đối tượng tương tự nhau trong tập dữ liệu vào các cụm sao cho các đối tượng thuộc cùng một cụm là tương đồng còn các đối tượng thuộc các cụm khác nhau sẽ không tương đồng. Phân cụm dữ liệu là một ví dụ của phương pháp học không có thầy. Không giống như phân lớp dữ liệu, phân cụm dữ liệu không đòi hỏi phải định nghĩa trước các mẫu dữ liệu huấn luyện. Vì thế, có thể coi phân cụm dữ liệu là một cách học bằng quan sát, trong khi phân lớp dữ liệu là học bằng ví dụ . . . Ngoài ra phân cụm dữ liệu còn có thể được sử dụng như một bước tiền xử lí cho các thuật toán khai phá dữ liệu khác như là phân loại và mô tả đặc điểm, có tác dụng trong việc phát hiện ra các cụm. Như vậy, phân cụm dữ liệu là quá trình phân chia một tập dữ liệu ban đầu thành các cụm dữ liệu sao cho các đối tượng trong một cụm “tương tự” (Similar) với nhau và các đối tượng trong các cụm khác nhau sẽ “không tương tự” (Dissimilar) với nhau. Số các cụm dữ liệu được phân ở đây có thể được xác định trước theo kinh nghiệm hoặc có thể được tự động xác định. Chúng ta có thể thấy điều này với một ví dụ đơn giản như sau: Hình 1.3: Ví dụ về phân cụm dữ liệu Trong trường hợp này, chúng ta dễ dàng xác định được 4 cụm dựa vào các dữ liệu đã cho; các tiêu chí “tương tự” để phân cụm trong trường hợp này là khoảng cách : hai hoặc nhiều đối tượng thuộc nhóm của chúng được “đóng gói” theo một khoảng cách nhất định. Điều này được gọi là phân cụm dựa trên khoảng cách. Một kiểu khác của phân cụm dữ liệu là phân cụm dữ liệu dựa vào khái niệm: hai hay nhiều đối tượng thuộc cùng nhóm nếu có một định nghĩa khái niệm chung cho tất cả các đối tượng trong đó. Nói cách khác, đối tượng của nhóm phải phù hợp với nhau theo miêu tả các khái niệm đã được định nghĩa, không phải theo những biện pháp đơn giản tương tự. 17 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- 1.3.2. Các mục tiêu của phân cụm dữ liệu Mục tiêu của phân cụm dữ liệu là để xác định các nhóm nội tại bên trong một bộ dữ liệu không có nhãn. Nhưng để có thể quyết định được cái gì tạo thành một cụm tốt. Nhưng làm thế nào để quyết định cái gì đã tạo nên một phân cụm dữ liệu tốt ? Nó có thể được hiển thị rằng không có tiêu chuẩn tuyệt đối “tốt nhất” mà sẽ là độc lập với mục đích cuối cùng của phân cụm dữ liệu. Do đó, mà người sử dụng phải cung cấp tiêu chuẩn, theo cách như vậy mà kết quả của phân cụm dữ liệu sẽ phù hợp với nhu cầu của họ cần. Ví dụ, chúng ta có thể quan tâm đến việc tìm kiếm đối tượng đại diện cho các nhóm đồng nhất trong “các cụm tự nhiên” và mô tả thuộc tính không biết của chúng trong việc tìm kiếm các nhóm hữu ích và phù hợp hoặc trong việc tìm kiếm các đối tượng bất thường trong dữ liệu (cá biệt, ngoại lệ, nhiễu). Hình 1.4: Ví dụ phân cụm các ngôi nhà dựa trên khoảng cách Một vấn đề thường gặp trong phân cụm là hầu hết các dữ liệu cần cho phân cụm đều có chứa dữ liệu nhiễu do quá trình thu thập thiếu chính xác hoặc thiếu đầy đủ, vì vậy cần phải xây dựng chiến lược cho bước tiền xử lí dữ liệu nhằm khắc phục hoặc loại bỏ nhiễu trước khi chuyển sang giai đoạn phân tích cụm dữ liệu. Nhiễu ở đây được hiểu là các đối tượng dữ liệu không chính xác, không tường minh hoặc là các đối tượng dữ liệu khuyết thiếu thông tin về một số thuộc tính... Một trong các kỹ thuật xử lí nhiễu phổ biến là việc thay thế giá trị các thuộc tính của đối tượng nhiễu bằng giá trị thuộc tính tương ứng. Ngoài ra, dò tìm đối tượng ngoại lai cũng là một trong những hướng nghiên cứu quan trọng trong phân cụm, chức năng của nó là xác định một nhóm nhỏ các đối tượng dữ liệu khác thường so với các dữ liệu trong cơ sở dữ liệu, tức là các đối tượng dữ liệu không tuân theo các hành vi hoặc mô hình dữ liệu nhằm tránh sự ảnh hưởng của chúng tới quá trình và kết quả của phân cụm. 18 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- Hình 1.5: Ví dụ phân cụm các ngôi nhà dựa trên kích cở Theo các nghiên cứu đến thời điểm hiện nay thì chưa có một phương pháp phân cụm tổng quát nào có thể giải quyết trọn vẹn cho tất cả các dạng cấu trúc cơ sở dữ liệu. Hơn nữa, đối với các phương pháp phân cụm cần có cách thức biểu diễn cấu trúc của cơ sở dữ liệu, với mỗi cách thức biểu diễn khác nhau sẽ có tương ứng một thuật toán phân cụm phù hợp. Vì vậy phân cụm dữ liệu vẫn đang là một vấn đề khó và mở, vì phải giải quyết nhiều vấn đề cơ bản một cách trọn vẹn và phù hợp với nhiều dạng dữ liệu khác nhau, đặc biệt là đối với dữ liệu hỗn hợp đang ngày càng tăng trong các hệ quản trị dữ liệu và đây cũng là một trong những thách thức lớn trong lĩnh vực khai phá dữ liệu. 1.3.4. Các phương pháp phân cụm dữ liệu Các kỹ thuật phân cụm có rất nhiều cách tiếp cận và các ứng dụng trong thực tế, nó đều hướng tới hai mục tiêu chung đó là chất lượng của các cụm khám phá được và tốc độ thực hiện của thuật toán. Hiện nay, các kỹ thuật phân cụm có thể phân loại theo các phương pháp tiếp cận chính như sau: phân cụm phân họach (Partitioning Methods); phân cụm phân cấp (Hierarchical Methods); phân cụm dựa trên mật độ (Density-Based Methods); phân cụm dựa trên lưới (Grid-Based Methods); phân cụm dựa trên mô hình phân cụm (Model-Based Clustering Methods) và phân cụm có dữ liệu ràng buộc (Binding data Clustering Methods). 1.3.4.1. Phương pháp phân cụm phân cấp Phương pháp này xây dựng một phân cấp trên cơ sở các đối tượng dữ liệu đang xem xét. Nghĩa là sắp xếp một tập dữ liệu đã cho thành một cấu trúc có dạng hình cây, cây phân cấp này được xây dựng theo kỹ thuật đệ quy. Có hai cách tiếp cận phổ biến của kỹ thuật này đó là: hòa nhập nhóm, thường được gọi là tiếp cận (Bottom- Up); phân chia nhóm, thường được gọi là tiếp cận (Top-Down). - Phương pháp “dưới lên” (Bottom up) : Phương pháp này bắt đầu với mỗi đối tượng được khởi tạo tương ứng với các cụm riêng biệt, sau đó tiến hành nhóm các đối tượng theo một độ đo tương tự (như khoảng cách giữa hai trung tâm của hai 19 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- nhóm), quá trình này được thực hiện cho đến khi tất cả các nhóm được hòa nhập vào một nhóm (mức cao nhất của cây phân cấp) hoặc cho đến khi các điều kiện kết thúc thỏa mãn. Như vậy, cách tiếp cận này sử dụng chiến lược ăn tham trong quá trình phân cụm. Hình 1.6. Các chiến lược phân cụm phân cấp - Phương pháp “trên xuống” (Top Down) : Bắt đầu với trạng thái là tất cả các đối tượng được xếp trong cùng một cụm. Mỗi vòng lặp thành công, một cụm được tách thành các cụm nhỏ hơn theo giá trị của một phép đo độ tương tự nào đó cho đến khi mỗi đối tượng là một cụm, hoặc cho đến khi điều kiện dừng thỏa mãn. Cách tiếp cận này sử dụng chiến lược chia để trị trong quá trình phân cụm. 1.3.4.2. Phương pháp phân cụm dựa trên mật độ Kỹ thuật này nhóm các đối tượng dữ liệu dựa trên hàm mật độ xác định, mật độ là số các đối tượng lân cận của một đối tượng dữ liệu theo một nghĩa nào đó. Trong cách tiếp cận này, khi một dữ liệu đã xác định thì nó tiếp tục được phát triển thêm các đối tượng dữ liệu mới miễn là số các đối tượng lân cận này phải lớn hơn một ngưỡng đã được xác định trước. Phương pháp phân cụm dựa trên mật độ của các đối tượng để xác định các cụm dữ liệu có thể phát hiện ra các cụm dữ liệu với hình thù bất kỳ. Kỹ thuật này có thể khắc phục được các phần tử ngoại lai hoặc giá trị nhiễu rất tốt, tuy nhiên việc xác định các tham số mật độ của thuật toán là rất khó khăn, trong khi các tham số này lại có tác động rất lớn đến kết quả phân cụm. 20 Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Tóm tắt luận văn thạc sĩ khoa học xã hội và nhân văn: Ảnh hưởng của văn học dân gian đối với thơ Tản Đà, Trần Tuấn Khải
26 p | 788 | 100
-
Tóm tắt luận văn thạc sĩ khoa học: Bài toán tô màu đồ thị và ứng dụng
24 p | 491 | 83
-
Luận văn thạc sĩ khoa học: Hệ thống Mimo-Ofdm và khả năng ứng dụng trong thông tin di động
152 p | 328 | 82
-
Tóm tắt luận văn thạc sĩ khoa học: Bài toán màu và ứng dụng giải toán sơ cấp
25 p | 369 | 74
-
Tóm tắt luận văn thạc sĩ khoa học: Bài toán đếm nâng cao trong tổ hợp và ứng dụng
26 p | 411 | 72
-
Tóm tắt luận văn thạc sĩ khoa học: Nghiên cứu thành phần hóa học của lá cây sống đời ở Quãng Ngãi
12 p | 541 | 61
-
Tóm tắt luận văn Thạc sĩ Khoa học: Nghiên cứu vấn đề an ninh mạng máy tính không dây
26 p | 516 | 60
-
Luận văn thạc sĩ khoa học Giáo dục: Biện pháp rèn luyện kỹ năng sử dụng câu hỏi trong dạy học cho sinh viên khoa sư phạm trường ĐH Tây Nguyên
206 p | 299 | 60
-
Tóm tắt luận văn thạc sĩ khoa học: Bài toán tìm đường ngắn nhất và ứng dụng
24 p | 341 | 55
-
Tóm tắt luận văn thạc sĩ khoa học: Bất đẳng thức lượng giác dạng không đối xứng trong tam giác
26 p | 311 | 46
-
Tóm tắt luận văn Thạc sĩ Khoa học xã hội và nhân văn: Đặc trưng ngôn ngữ và văn hóa của ngôn ngữ “chat” trong giới trẻ hiện nay
26 p | 318 | 40
-
Tóm tắt luận văn thạc sĩ khoa học: Bài toán ghép căp và ứng dụng
24 p | 263 | 33
-
Tóm tắt luận văn thạc sĩ khoa học xã hội và nhân văn: Phật giáo tại Đà Nẵng - quá khứ hiện tại và xu hướng vận động
26 p | 234 | 22
-
Tóm tắt luận văn Thạc sĩ Khoa học: Nghiên cứu ảnh hưởng của quản trị vốn luân chuyển đến tỷ suất lợi nhuận của các Công ty cổ phần ngành vận tải niêm yết trên sàn chứng khoán Việt Nam
26 p | 286 | 14
-
Tóm tắt luận văn Thạc sĩ Khoa học xã hội và nhân văn: Thế giới biểu tượng trong văn xuôi Nguyễn Ngọc Tư
26 p | 245 | 13
-
Tóm tắt luận văn Thạc sĩ Khoa học xã hội và nhân văn: Đặc điểm ngôn ngữ của báo Hoa Học Trò
26 p | 214 | 13
-
Tóm tắt luận văn Thạc sĩ Khoa học xã hội và nhân văn: Ngôn ngữ Trường thơ loạn Bình Định
26 p | 191 | 5
-
Luận văn Thạc sĩ Khoa học giáo dục: Tích hợp nội dung giáo dục biến đổi khí hậu trong dạy học môn Hóa học lớp 10 trường trung học phổ thông
119 p | 5 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn