Tài liệu Phân lớp dữ liệu sử dụng logic mờ

  • Số trang: 75 |
  • Loại file: PDF |
  • Lượt xem: 103 |
  • Lượt tải: 0
nhattuvisu

Đã đăng 27125 tài liệu

Mô tả:

Đ ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG PHẠM MẠNH HÙNG PHÂN LỚP DỮ LIỆU SỬ DỤNG LOGIC MỜ LuËn v¨n th¹c SÜ KHOA HỌC MÁY TÍNH Mẫu 3. Trang phụ bìa luận văn (title page) THÁI NGUYÊN - 2012 Số hóa bởi Trung tâm Học liệu – Đại học Thái NguyênTh¸i Nguyªn 2012 http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG PHẠM MẠNH HÙNG PHÂN LỚP DỮ LIỆU SỬ DỤNG LOGIC MỜ Chuyªn ngµnh: Khoa học máy tính M· sè: 60 48 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. VŨ MẠNH XUÂN THÁI NGUYÊN - 2012 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn i LỜI CAM ĐOAN Tôi xin cam đoan toàn bộ nội dung trong luận văn hoàn toàn theo đúng nội dung của đề cƣơng đã đăng ký và nội dung các phần trích lục tài liệu hoàn toàn chính xác. Nếu có sai sót gì tôi xin hoàn toàn chịu trách nhiệm. Ngƣời viết Phạm Mạnh Hùng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ii MỤC LỤC LỜI CAM ĐOAN ....................................................................................................... i DANH MỤC CÁC HÌNH ...........................................................................................v DANH MỤC CÁC BẢNG........................................................................................ vi MỞ ĐẦU .....................................................................................................................1 CHƢƠNG 1: TỔNG QUAN VỀ PHÂN LỚP DỮ LIỆU ...........................................3 1.1. Khái quát về phân lớp dữ liệu ..........................................................................3 1.1.1. Các bƣớc tiến hành phân lớp dữ liệu ..........................................................4 1.1.2. Chuẩn bị dữ liệu .........................................................................................6 1.1.3. Làm sạch dữ liệu ........................................................................................7 1.1.4. Phân tích dữ liệu .........................................................................................7 1.1.5. Chuyển đổi dữ liệu .....................................................................................7 1.1.6. So sánh các mô hình phân lớp ....................................................................8 1.2. Phân lớp dữ liệu với kỹ thuật cây quyết định ...................................................8 1.2.1. Khái niệm về cây quyết định ......................................................................8 1.2.2. Giải thuật ....................................................................................................9 1.2.3. Rút luật phân lớp từ cây quyết định .........................................................10 1.2.4. Ƣu điểm và hạn chế của cây quyết định ...................................................11 1.3. Phân lớp dữ liệu với kỹ thuật mạng Bayes .....................................................12 1.3.1. Định lý Bayes ...........................................................................................12 1.3.2. Phân loại Bayes ngây thơ (Bayes đơn giản) .............................................12 1.4. Phân lớp dữ liệu với kỹ thuật mạng nơ-ron ....................................................13 1.4.1. Cơ sở về mạng nơ-ron ..............................................................................13 1.4.2. Cấu trúc và mô hình mạng nơ-ron............................................................14 1.4.3. Dạng toán học của tổng liên kết ...............................................................15 1.4.4. Dạng của hàm a(f) - Hàm hoạt tính phi tuyến. .........................................15 1.5. Phân lớp dữ liệu bằng Fuzzy C- MEANS (FCM) ..........................................17 1.6. Phân lớp dữ liệu bằng WEKA ........................................................................19 1.6.1. Giới thiệu chung .......................................................................................19 1.6.2. Ứng dụng của phần mềm Weka 3.7.5 vào bài toán phân lớp dữ liệu điểm của học sinh. .......................................................................................................21 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iii 1.7. Kết luận chƣơng 1 ..........................................................................................23 CHƢƠNG 2: PHÂN LỚP DỮ LIỆU SỬ DỤNG LOGIC MỜ ................................24 2.1. Tập mờ:...........................................................................................................24 2.1.1. Lý thuyết tập mờ ......................................................................................24 2.1.2. Khái niệm tập mờ .....................................................................................25 2.1.3. Một số định nghĩa cơ bản .........................................................................27 2.1.4. Các phép toán trên tập mờ ........................................................................29 2.2. Quan hệ mờ ....................................................................................................31 2.2.1. Khái niệm chung ......................................................................................31 2.2.3. Các phép hợp thành mờ ............................................................................38 2.3. Suy diễn mờ ....................................................................................................39 2.3.1. Phép suy diễn: “if P then Q” ....................................................................39 2.3.2. Phép suy diễn “if P then Q else Q1” ........................................................40 2.4. Logic mờ.........................................................................................................40 2.4.1. Mở đầu ......................................................................................................40 2.4.2. Biến ngôn ngữ và mệnh đề mờ.................................................................41 2.4.3. Các phép kết nối .......................................................................................43 2.5. Phân lớp dữ liệu dựa trên quan hệ mờ ............................................................45 2.5.1. Cơ sở lí thuyết ..........................................................................................45 2.5.2. Phân hoạch các đối tƣợng mờ trong bài toán thực tế ..............................45 2.5.3. Quan hệ mờ trong phân lớp dữ liệu ..........................................................46 CHƢƠNG 3: CÀI ĐẶT THỬ NGHIỆM ..................................................................50 3.1. Khái niệm chung bài toán phân lớp ................................................................50 3.2. Bài toán minh họa sự phân lớp các đối tƣợng mờ ..........................................51 3.2.1. Phát biểu bài toán .....................................................................................51 3.2.2. Thuật toán .................................................................................................51 3.3. Thử nghiệm bài toán ứng dụng phân lớp bằng logic mờ ............................52 3.4. Kết quả thử nghiệm .....................................................................................55 KẾT LUẬN VÀ KIẾN NGHỊ...................................................................................61 TÀI LIỆU THAM KHẢO .........................................................................................63 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iv DANH MỤC CÁC KÍ HIỆU VÀ CHỮ VIẾT TẮT  Phép hội  Phép tuyến  Lƣợng từ với mọi  Phép giao  Phép hợp  Phép kéo theo  Tập rỗng  Phép thuộc  Lƣợng từ tồn tại  Phép tƣơng đƣơng ┐ Phép phủ định  Chứa trong × Tích đề các CSDL Cơ sở dữ liệu Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn v DANH MỤC CÁC HÌNH Hình 1.1: Quá trình phân lớp dữ liệu và bƣớc xây dựng mô hình phân lớp. ...............4 Hình 1.2: Quá trình phân lớp dữ liệu - ƣớc lƣợng độ chính xác của mô hình .............6 Hình 1.3: Quá trình phân lớp dữ liệu - phân lớp dữ liệu mới ......................................6 Hình 1.4: Cây quyết định mua máy tính của sinh viên ..............................................10 Hình1.5: Minh hoạ về một nơ- ron ...........................................................................14 Hình1.6: Sự liên kết của hai nơ-ron ...........................................................................15 Hình1.7: Giao diện ban đầu của phần mềm WEKA .................................................19 Hình 2.1: Khái niệm tập mờ ......................................................................................28 Hình2.2: Các tập mờ biểu diễn các giá trị ngôn ngữ: “Chậm”, “Trung bình" và “Nhanh”.42 Hình 2.3: Tập mờ “tuổi trẻ” .......................................................................................43 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn vi DANH MỤC CÁC BẢNG Bảng 1.1: Bảng mua máy tính của sinh viên ............................................................9 Hình 1.3: Hình minh họa đổi đuôi XLS sang CSV (comma delimited) .................21 Bảng 1.4: Bảng dữ liệu đầu vào để phân lớp bằng WEKA ....................................22 Bảng1.3: Bảng phân lớp các trƣờng dữ liệu WEKA ..............................................22 Bảng 3.1: Bảng điểm học sinh ................................................................................53 Bảng 3.2: Ma trận khoảng cách Hamming .............................................................55 Bảng 3.3: Ma trận phân lớp Hamming....................................................................57 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 1 MỞ ĐẦU Phân lớp dữ liệu là một bài toán thƣờng gặp trong đời sống hàng ngày. Chẳng hạn ngƣời ta phân loại học lực sinh viên dựa vào điểm trung bình từng học kỳ hoặc phân chia theo từng vùng lãnh thổ, phân loại các bệnh tật thƣờng gặp, các cách phân loại nhƣ vậy đều xuất phát từ việc xác định một quan hệ tƣơng đƣơng trên tập các đối tƣợng đang xét. Tuy nhiên phân lớp thông qua quan hệ tƣơng đƣơng thông thƣờng mặc dù thuận tiện, dễ lập trình, song thiếu mềm dẻo và đôi khi không phản ánh đúng thực chất đối tƣợng. Chẳng hạn một sinh viên có điểm trung bình 6,9 thì đƣợc xếp loại trung bình, đồng hạng với ngƣời có điểm 5,0; song ngƣời có điểm trung bình 7,0 lại xếp hạng khá!. Tƣơng tự nhƣ vậy, trong đời sống ngƣời ta vẫn phân loại một cách “tƣơng đối” chẳng hạn nhƣ “những ngƣời cao”. Logic mờ đƣợc ra đời và phát triển dựa trên lý thuyết tập mờ đã giúp cho tin học có cái nhìn gần với thực tiễn hơn, các công cụ của logic mờ cho phép xử lý những thông tin không đầy đủ, không chính xác, chẳng hạn việc tìm hai đối tƣợng “giống nhau” chứ không phải “bằng nhau” nhƣ với cách tìm kiếm thông thƣờng. Nhằm tìm hiểu kỹ hơn về logic mờ và ứng dụng trong bài toán phân lớp dữ liệu, giúp cho việc phân lớp mềm dẻo hơn, gần với đời thƣờng hơn, tôi đã lựa chọn đề tài “Phân lớp dƣ̃ liệu sử dụng logic mờ” làm đề tài luận văn của mình. Mục đích của đề tài: Mục đích của đ ề tài này nh ằm nghiên cƣ́u lý thuyết tập mờ , quan hệ mờ, logic mờ, trên cơ sở đó nghiên cứu phƣơng pháp phân lớp dữ liệu dựa trên logic mờ đồng thời minh hoạ trên một số bài toán cụ thể. Nội dung chính của luận văn gồm ba chƣơng. Chương 1: Tổng quan về phân tích dữ liệu. Chƣơng này trình bày khái quát về một số kỹ thuật phân lớp, cách phân lớp thông thƣờng đã sử dụng. Chƣơng này cũng đƣa ra một số ví dụ minh họa cụ thể. Chương 2: Phân lớp dƣ̃ liệu sử dụng logic mờ. Chƣơng này trình bày khái niệm tập mờ, các phép toán trên tập mờ và quan hệ mờ cùng với những tính chất cơ bản của quan hệ mờ. mệnh đề mờ, các phép toán logíc mờ, đặc biệt là các luật logic mờ làm cơ sở cho chƣơng sau. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 2 Chương 3: Cài đặt thử nghiệm. Chƣơng này trình bày bài toán thử nghiệm và kết quả cụ thể. Trên cơ sở kiến thƣ́c đã học và việc tổng hợp tài liệu , sách báo, tạp chí tôi đã cố gắng trình bày những nội dung cô đọng và cơ bản nhất liên quan đến đề tài . Trong quá trình thực hiện đề tài này mặ c dù đã có sƣ̣ nỗ lƣ̣c cao của bản thân song do trình độ , thời gian và kinh nghi ệm còn hạn chế nên lu ận văn không tránh khỏi nhƣ̃ng sai sót . Vì vậy, tôi rất mong sƣ̣ đóng góp của thầy cô giáo và cùng b ạn bè đồng nghiệp. Em xin trân trọng cảm ơn! Thái Nguyên, ngày 25 tháng 6 năm 2012 Học viên Phạm Mạnh Hùng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 3 CHƢƠNG 1 TỔNG QUAN VỀ PHÂN LỚP DỮ LIỆU Hiện nay kĩ thuật phân lớp dữ liệu trong Khai Phá Dữ Liệu là một trong những vấn đề nghiên cứu với nhiều mở rộng tập trung chủ yếu vào thống kê, máy học và mạng nơ-ron. Kĩ thuật phân lớp đƣợc đánh giá là một kĩ thuật khai phá dữ liệu đƣợc sử dụng rộng rãi nhất. Sự kết hợp của kỹ thuật phân lớp và cơ sở dữ liệu là một lĩnh vực quan trọng vì có tính uyển chuyển cao, với những ý nghĩa và vai trò hết sức quan trọng của kĩ thuật phân lớp nói trên, nên trong chƣơng 1 này trƣớc tiên em nêu một số những kĩ thuật phân lớp, những cách tiếp cận khác nhau đối với kỹ thuật phân lớp cùng với những tìm hiểu và đánh giá những cải tiến của kĩ thuật phân lớp trong thời gian gần đây. 1.1. Khái quát về phân lớp dữ liệu Trong công việc con ngƣời ngày một tạo ra nhiều dữ liệu có kích thƣớc lớn và có rất nhiều thông tin ẩn số có thể sử dụng để tạo nên những quyết định, chiến lƣợc thông minh, đúng đắn, phù hợp với yêu cầu thực tế. Phân lớp dữ liệu (classification) là một dạng của phân tích dữ liệu, thao tác với những đối tƣợng dữ liệu mà có bộ giá trị biết trƣớc dùng để trích ra những lớp dữ liệu quan trọng, hay dự đoán những khuynh hƣớng phát triển trong tƣơng lai. Phân lớp dữ liệu là xếp đối tƣợng dữ liệu vào một trong các lớp đã đƣợc xác định trƣớc. Tức là có 1 tập các đối tƣợng và theo một tiêu chí nào đó chia các đối tƣợng này thành các lớp, sao cho các phần tử trong cùng một lớp thì đƣợc hiểu là tƣơng đƣơng nhau theo một nghĩa nào đó. Nhiều phƣơng pháp phân lớp dữ liệu đƣợc đề xuất bởi các nhà nghiên cứu trong các lĩnh vực nhƣ máy học (machine learning), hệ chuyên gia (expert system), thống kê (statistics),… hầu hết giải thuật sử dụng để phân lớp dữ liệu với kích thƣớc nhỏ. Các nghiên cứu về khai phá dữ liệu đã phát triển nhanh chóng, phù hợp phân lớp cho các gói cơ sở dữ liệu lớn. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 4 Một số kỹ thuật cơ bản để phân lớp dữ liệu: sử dụng phân lớp cây quyết định (decision tree classification), bộ phân lớp Bayesian (Bayesian classifier), mạng nơ ron (neural network), mô hình phân lớp K_hàng xóm gần nhất (knearest neighbor classifier), 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.1.1. Các bƣớc tiến hành phân lớp dữ liệu Kĩ thuật phân lớp đƣợc tiến hành bao gồm 2 bƣớc: Xây dựng mô hình và sử dụng mô hình . Bước 1: Xây dựng mô hình (learning) Xây dựng mô hình mô tả một tập các dữ liệu hay các khái niệm định trƣớc. Đầu vào là một tập dữ liệu có cấu trúc mô tả bằng các thuộc tính và đƣợc tạo ra từ 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) hay các mẫu (samples), đối tƣợng (object) bản ghi (record)..hay truờng hợp case. Trong 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 lable attribute). Đầu ra thƣờng là các quy tắc phân lớp dƣới dạng luật if - then, cây quyết định, công thức logic hay mạng nơ-ron. Mô hình mô tả nhƣ sau: Hình 1.1: Quá trình phân lớp dữ liệu và bước xây dựng mô hình phân lớp. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 5 Mô tả một tập những lớp đƣợc định nghĩa trƣớc trong đó: mỗi bộ hoặc mẫu đƣợc gán thuộc về một lớp đƣợc định nghĩa trƣớc nhƣ là đƣợc xác định bởi thuộc tính nhãn lớp, tập hợp của những bộ đƣợc sử dụng trong việc sử dụng mô hình đƣợc gọi là tập huấn luyện . Mô hình đƣợc biểu diễn là những luật phân lớp, cây quyết định và những công thức toán học . Bước 2: Sử dụng mô hình (classification) Sử dụng mô hình phục vụ cho mục đích phân lớp dữ liệu trong tƣơng lai hoặc phân lớp cho những đối tƣợng chƣa biết đến tức là dùng mô hình xây dựng ở bƣớc trƣớc để phân lớp dữ liệu mới. Trƣớc khi sử dụng mô hình ngƣời ta thƣờng phải đánh giá tính chính xác của mô hình trong đó, nhãn đƣợc biết của mẫu kiểm tra đƣợc so sánh với kết quả phân lớp của mô hình, độ chính xác là phần trăm của tập hợp mẫu kiểm tra mà phân loại đúng bởi mô hình, tập kiểm tra là độc lập với tập huấn luyện . Phân lớp dữ liệu là một hình thức học có giám sát: tập dữ liệu huấn luyện (quan sát, thẩm định…) đi đôi với những nhãn lớp chỉ định quan sát, những dữ liệu mới đƣợc phân lớp dựa lên tập huấn luyện. Ngƣợc lại hình thức học không giám sát. Dùng mô hình ở bƣớc trƣớc để phân lớp dữ liệu mới với độ 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 là tỉ lệ phần trăm các mẫu trong tập dữ liệu kiểm tra đƣợc mô hình phân lớp đúng. Nếu độ chính xác của mô hình đƣợc ƣớc lƣợng dựa trên tập dữ liệu đào tạo thì kết quả thu đƣợc khả quan vì mô hình luôn có xu hƣớng quá vừa dữ liệu tức là 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 đó cần sử dụng một tập dữ liệu đào tạo. Nếu nhƣ độ chính xác của mô hình là chấp nhận đƣợc thì mô hình sẽ đƣợc sử dụng để phân lớp những dữ liệu tƣơng lai hay những dữ liệu chƣa biết giá trị của thuộc tính phân lớp. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 6 Hình 1.2: Quá trình phân lớp dữ liệu - ước lượng độ chính xác của mô hình Trong mô hình phân lớp, thuật toán phân lớp dữ liệu dữ vai trò trung tâm, quyết định sự thành công của mô hình phân lớp nên quan trọng 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ó thể mở rộng. Hình 1.3: Quá trình phân lớp dữ liệu - phân lớp dữ liệu mới 1.1.2. Chuẩn bị dữ liệu Tiền xử lý dữ liệu cho quá trình phân lớp là việc cần thiết đầu tiên quyết định việc áp dụng đƣợc hay không của mô hình phân lớp. Quá trình trên giúp cải thiện chính xác, tính hiệu quả và cả khả năng mở rộng của mô hình phân lớp. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 7 Quá trình này gồm một số công việc sau: 1.1.3. Làm sạch dữ liệu Đây là quá trình tiền xử lý dữ liệu để gỡ bỏ, lọc và loại bỏ nhiễu, cách xử lý các giá trị bị khuyết. Nghĩa là do dữ liệu liên quan đến việc xử lý lỗi (noise) và giá trị thiếu (missing value) ở trong dữ liệu đầ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, có thể dùng kỹ thuật làm trơn xử lý. Missing value là những ô không có giá trị của các thuộc tính lỗi này có thể có trong quá trình nhập liệu hoặc giá trị thuộc tính đó không có, có thể xử lý 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ị mà có thể sảy ra nhất dựa trên thống kê. Tuy thuật toán phân lớp đều có cơ chế xử lý với những giá trị lỗi và thiếu trong tập dữ liệu, có thể nói bƣớc tiền xử lý này làm giảm sự hỗn độn trong quá trình xây dựng mô hình phân lớp, giúp cải thiện độ chính xác, hiệu suất và khả năng mở rộng của phân lớp dữ liệu. 1.1.4. Phân tích dữ liệu Phân tích sự liên quan giữa các dữ liệu để chọn đặc trƣng: Nhiều thuộc tính trong dữ liệu có thể không có sự liên kết, liên quan, hay không cần thiết phân lớp dữ liệu. Vì vậy phép phân tích sự liên quan đƣợc thực hiện trên dữ liệu với mục đích gỡ bỏ, loại bỏ bất kỳ những thuộc tính không thích hợp, không liên quan, dƣ thừa hay không cần thiết khỏi quá trình xây dựng mô hình phân lớp 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 xây dựng mô hình phân lớp. Trong lĩnh vực máy học (machine learning) đƣợc gọi là bƣớc trích chọn đặc trƣng giúp cho quá trình phân loại, phân lớp dữ liệu đạt hiệu quả và cũng nhƣ việc nâng cao khả năng mở rộng. 1.1.5. Chuyển đổi dữ liệu Biến đổi dữ liệu: dữ liệu có thể tổng quát hóa tới các mức khái niệm cao hơn và rất hữu ích khi các thuộc tính có giá trị liên tục. Dữ liệu cũng có thể đƣợc tiêu chuẩn hóa (khi sử dụng mạng nơ-ron hay các phƣơng pháp dùng phép đo khoảng cách trong bƣớc học). Trong quá trình tiền xử lý việc khái quát hóa dữ liệu lên mức khái niệm cao hơn là cần thiết, đặc biệt hữu ích với những thuộc tính liên tục (continuous attribute Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 8 hay numeric attribute). Ví dụ các giá trị của thuộc tính Học lực khái quát hóa thành các dãy giá trị rời rạc: trung bình, khá, giỏi. Việc khái quát hóa làm cô đọng ngắn gọn mà vẫn phản ánh đầy đủ dữ liệu ban đầu. Do đó mà các thao tác vào/ra liên quan đến quá trình xây dựng mô hình phân lớp sẽ giảm. 1.1.6. So sánh các mô hình phân lớp Tùy từng ứng dụng cụ thể cần chọn mô hình phân lớp phù hợp trên cơ sở căn cứ vào sự so sánh các tiêu chuẩn sau của mỗi mô hình phân lớp: Các phƣơng pháp phân lớp có thể so sánh và đánh giá theo tiêu chí sau đây: + Độ chính xác dự đoán (Predictive accuracy): 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): Là những chi phí tính toán liên quan đến quá trình tạo ra và sử dụng mô hình + Bền vững hay sức mạnh: Là khả năng mô hình tạo ra những dự đoán đúng từ những dữ liệu noise hay dữ liệu với những giá trị thiếu. + Co dãn hay khả năng mở rộng (scalability): Là khả năng thực thi hiệu quả trên lƣợng dữ liệu lớn của mô hình dữ liệu đã xây dựng. + Tính hiểu đƣợc (interpretability): Là mức độ hiểu và hiểu rõ những kết quả sinh ra bởi mô hình dữ liệu đã xây dựng. 1.2. Phân lớp dữ liệu với kỹ thuật cây quyết định 1.2.1. Khái niệm về cây quyết định Cây quyết định là cấu trúc cây trong đó có: + Nút trong bằng phép kiểm tra trên một thuộc tính hay tên thuộc tính đƣợc chọn để phân lớp. + Nhánh của cây bằng đầu ra của một phép kiểm tra hay các giá trị tƣơng ứng của thuộc tính đƣợc chọn ở bƣớc đó + Nút lá là một nhãn phân lớp hoặc sự phân chia của lớp hay là một trong các giá trị của thuộc tính kết quả. Mỗi lá gắn với một nhãn lớp, mỗi nút quyết định mô tả một phép thử X nào đó, mỗi nhánh của nút này tƣơng ứng với một khả năng của X. Nút cao nhất đƣợc gọi là nút gốc. Cách tạo cây quyết định bao gồm hai giai đoạn. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 9 Giai đoạn 1: Xây dựng cây + Bắt đầu tất cả các mẫu huấn luyện đều ở gốc. + Phân chia các mẫu dựa trên giá trị của các thuộc tính đƣợc chọn + Kiểm tra các thuộc tính đƣợc chọn lựa trên một độ đo thống kê. Giai đoạn 2: Thu gọn cây, tiến hành xác định và loại bỏ những nhánh nhiễu hoặc tách khỏi nhóm. 1.2.2. Giải thuật Sinh cây quyết định (Generate_decision_tree): xây dựng cây quyết định từ tập dữ liệu huấn luyện cho trƣớc. Đầu vào: các mẫu huấn luyện Samples là các giá trị rời rạc của các thuộc tính, tập các thuộc tính attribute_list. Đầu ra: Cây quyết định (Decision tree) Xét ví dụ về mua máy tính sau: Bảng 1.1: Bảng mua máy tính của sinh viên STT Tuổi Thu nhập Sinh viên Độ tín nhiệm Lớp mua máy tính 1 <30 Cao Không Khá tốt Không 2 <30 Cao Không Tốt Không 3 30-40 Cao Không Khá tốt Có 4 >40 Trung bình Không Khá tốt Có 5 >40 Thấp Có Khá tốt Có 6 >40 Thấp Có Tốt Không 7 30 - 40 Thấp Có Tốt Có 8 <30 Trung bình Không Khá tốt Không 9 <30 Thấp Có Khá tốt Có 10 >40 Trung bình Có Khá tốt Có 11 <30 Trung bình Có Tốt Có 12 30-40 Trung bình Không Tốt Có 13 30-40 Cao Có Khá tốt Có 14 >40 Trung bình Không Tốt Không Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 10 Từ đó tập huấn luyện trên ta có thể phân lớp: tuổi, sinh viên, độ tín nhiệm thành cây quyết định nhƣ sau: Hình 1.4: Cây quyết định mua máy tính của sinh viên 1.2.3. Rút luật phân lớp từ cây quyết định Rút luật từ cây quyết định: + Mỗi một đƣờng dẫn từ gốc đến nút lá trong cây tạo thành một luật, luật này có vế trái là một bộ giá trị của các thuộc tính đƣợc chọn để phân lớp, vế phải là một trong các giá trị của thuộc tính kết quả. + Tri thức từ cây quyết định có thể đƣợc trích và trình bày dƣới dạng luật dƣới dạng các luật phân loại If – Then. + Một luật tƣơng ứng với một đƣờng đi từ gốc tới các nút lá. + Mỗi cặp thuộc tính - giá trị dọc theo đƣờng đi tạo thành một luật liên kết trong tiền đề luật (phần If). Nút lá là lớp dự đoán, thiết lập nên mệnh đề kết quả luật (phần Then). Các luật If - Then giúp hiểu hơn, đặc biệt nếu cây cho trƣớc là rất lớn Luật đƣợc trích rút: If tuổi=”< 30” And Sinh viên= “không” Then mua máy tính = “không”. If tuổi =”<30” And Sinh viên=”Có” Then mua máy tính = “có” If tuổi = “30-40” Then mua máy tính = “có”. If tuổi =”>40” And độ tín nhiệm = “tốt” then mua máy tính = “Có” Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 11 If tuổi =”>40” And độ tín nhiệm = “khá tốt” then mua máy tính = “không” Tƣơng tự, ta có thể phân lớp dựa vào: Sinh viên, thu nhập và độ tín nhiệm để trích rút luật từ cây quyết định. 1.2.4. Ƣu điểm và hạn chế của cây quyết định Ưu điểm: + Dễ chọn các thuộc tính để phân lớp dữ liệu + Dễ dàng trong việc trích rút luật từ cây quyết định. + Dễ thực hiện với những tập cơ sở dữ liệu nhỏ và vừa. Hạn chế: + Khó thao tác đƣợc trên tập cơ sở dữ liệu, các mẫu huấn luyện lớn do trên thực tế việc xử lý các mẫu huấn luyện lớn (có hàng triệu mẫu huấn luyện trở lên). + Các mẫu huấn luyện tập trung ở bộ nhớ chính. 1.2.5. Độ lợi thông tin (Information gain) Độ lợi thông tin (Information gain): đƣợc dùng để lựa chọn thuộc tính kiểm định tại mỗi nút trên cây. Phép đo nhƣ vậy đƣợc gọi là Độ lợi thông tin (Information gain) hay phép đo chất lƣợng thông tin. Chọn thuộc tính có chỉ số độ lợi thông tin lớn nhất Cho P và N là hai lớp và S là một tập dữ liệu có p phần tử của lớp P và n phần tử của lớp N. Khối lƣợng thông tin cần thiết để quyết định một mẫu bất kỳ có thuộc về lớp P hay N hay không là: Cho các tập { S1, S2,…,Sk) là một phân hoạch trên tập S, khi sử dụng thuộc tính A. Cho mỗi Si chứa pi mẫu lớp P và ni mẫu lớp N. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
- Xem thêm -