Mục lục BÁO CÁO ĐỒ ÁN KHAI PHÁ DỮ LIỆU 1 Giáo viên hướng dẫn: Hồ Nhật Quang 1 Sinh Viên: Nguyễn Thị Thu Thảo 1 Lớp: CNPM 6 1 A. Mở đầu: 2 B. Bài toán tìm luật phân lớp: 3 C. Mô tả tập dữ liệu Sunburn – Rám nắng: 3 D. Yêu cầu của Bài Toán: 4 1. Khởi động Weka: 4 E. Áp dụng thuật toán cây quyết định J48 để huấn luyện tập dữ liệu mới: 7 F. Áp dụng thuật toán ID3 để huấn luyện tập dữ liệu mới: 12 G. So sánh kết quả giữa thuật toán J48 và thuật toán ID3: 16 A. Mở đầu: o Xây dựng hệ thống phân lớp là một yêu cầu khai phá dữ liệu.Nhờ các luật phân lớp ta có thể rút ra các đặc tính chung của đối tượng thuộc cùng một lớp hoặc có thể dự báo nhằm xếp lớp các đối tượng sẽ gặp phải trong tương lai. Có rất nhiều thuật toán tìm luật phân lớp như: Tìm luật phân lớp từ cây quyết định J48, cây định danh ID3 hay một số thuật toán khác… o Các thuật toán tìm luật phân lớp có các bước sau: • Tìm tập phổ biến từ CSDL • Tạo đồ thị liên kết dựa trên luật kết hợp • Phân hoạch đồ thị theo ngưỡng để thu được các cụm từ miền liên thông
ĐỒ ÁN KHAI PHÁ DỮ LIỆU Cộng hòa xã hội chủ nghĩa Việt Nam Độc lập – Tự do – Hạnh phúc BÁO CÁO ĐỒ ÁN KHAI PHÁ DỮ LIỆU Đề Tài: Sử dụng phần mềm Weka khai phá bộ dữ liệu SUNBURN với thuật toán phân lớp Giáo viên hướng dẫn: Hồ Nhật Quang Sinh Viên: Nguyễn Thị Thu Thảo Lớp: CNPM 6 Nguyễn Thị Thu Thảo – CNPM6 Page 1 ĐỒ ÁN KHAI PHÁ DỮ LIỆU Mục lục A.Mở đầu: 2 B.Bài toán tìm luật phân lớp: 3 C.Mô tả tập dữ liệu Sunburn – Rám nắng: .3 D.Yêu cầu của Bài Toán: 4 1.Khởi động Weka: 4 E.Áp dụng thuật toán cây quyết định J48 để huấn luyện tập dữ liệu mới: .7 F.Áp dụng thuật toán ID3 để huấn luyện tập dữ liệu mới: .12 G.So sánh kết quả giữa thuật toán J48 và thuật toán ID3: .16 A. Mở đầu: o Xây dựng hệ thống phân lớp là một yêu cầu khai phá dữ liệu.Nhờ các luật phân lớp ta có thể rút ra các đặc tính chung của đối tượng thuộc cùng một lớp hoặc có thể dự báo nhằm xếp lớp các đối tượng sẽ gặp phải trong tương lai. Có rất nhiều thuật toán tìm luật phân Nguyễn Thị Thu Thảo – CNPM6 Page 2 ĐỒ ÁN KHAI PHÁ DỮ LIỆU lớp như: Tìm luật phân lớp từ cây quyết định J48, cây định danh ID3 hay một số thuật toán khác… o Các thuật toán tìm luật phân lớp có các bước sau: • Tìm tập phổ biến từ CSDL • Tạo đồ thị liên kết dựa trên luật kết hợp • Phân hoạch đồ thị theo ngưỡng để thu được các cụm từ miền liên thông • Dựa vào các cụm để tìm luật phân lớp o Và trong đồ án này tôi sử dụng mã nguồn mở Weka cung cấp công cụ để phân lớp cho tập dữ liệu Sunburn.arff. o Vậy bạn hiểu Weka là gì? • Weka là môi trường thử nghiệm KPDL do các nhà khoa học thuộc trường ĐH Waitako, NZ khởi xướng và được sự đóng góp của rất nhiều các nhà nghiên cứu trên thế giới. • Ngoài ra Weka còn cho phép các giải thuật học mới phát triển có thể tích lợp vào môi trường của nó. B. Bài toán tìm luật phân lớp: Cho CSDL phân lớp r được tạo từ R trong đó có chứa thuộc tính quyết định và một ngưỡng ErrorT phản ánh mức độ sai số của các luật phân lớp.Tìm các luật phân lớp X Y sao cho lỗi của phân lớp Error (X Y) =< ErrorT C. Mô tả tập dữ liệu Sunburn – Rám nắng: Tập dữ liệu Sunburn.arff thu thập được qua việc khảo sát rám nắng dựa vào tóc, chiều cao, cân nặng, dùng thuốc để xác định người đó có bị rám nắng hay không? • Qua tập dữ liệu Sunburn.arff ta nhận thấy có 5 thuộc tính và 6 mẫu có trong tập dữ liệu. Nguyễn Thị Thu Thảo – CNPM6 Page 3 ĐỒ ÁN KHAI PHÁ DỮ LIỆU • Bảng miêu tả tên thuộc tính, kiểu dữ liệu và các giá trị của từng thuộc tính: STT Tên thuộc tính Kiểu dữ liệu Các giá trị 1. Hair Nominal Blonde, brown, red 2. Height Nomina Short, average, tall 3. Weight Nomina Light, average, heavy 4. Lotion Nomina Yes,no 5. burned Nomina Burned, none • Ý nghĩa của từng thuộc tính: STT Tên thuộc tính Kiểu dữ liệu Các giá trị 1. Tóc Nominal Tóc vàng, nâu, đỏ 2. Chiều cao Nomina Thấp, trung bình, cao 3. Cân nặng Nomina Nhẹ, trung bình, nặng 4. Dùng thuốc Nomina Có, không 5. Rám nắng Nomina Bị rám nắng, Không bị D. Yêu cầu của Bài Toán: Sử dụng 1 trong các thuật toán cây quyết định do Weka cung cấp (ID3, J48…) để huấn luyện tập dữ liệu. 1. Khởi động Weka: Khởi động Weka Explorer / Preprocess / Open file / chọn CSDL Sunburn.arff Nguyễn Thị Thu Thảo – CNPM6 Page 4 ĐỒ ÁN KHAI PHÁ DỮ LIỆU Cửa sổ Preprocess sẽ hiện ra: Nguyễn Thị Thu Thảo – CNPM6 Page 5 ĐỒ ÁN KHAI PHÁ DỮ LIỆU Nguyễn Thị Thu Thảo – CNPM6 Page 6 ĐỒ ÁN KHAI PHÁ DỮ LIỆU E. Áp dụng thuật toán cây quyết định J48 để huấn luyện tập dữ liệu mới: o Cây quyết định từ kết quả sau khi chạy thuật toán: o Thuật toán J48 được lựa chọn và đã không xảy ra vấn đề gì. o Kết quả chạy khi thiết lập sử dụng tất cả những dữ liệu đào tạo: Kết quả: === Run information === Scheme: weka.classifiers.trees.J48 -C 0.25 -M 2 Nguyễn Thị Thu Thảo – CNPM6 Page 7 ĐỒ ÁN KHAI PHÁ DỮ LIỆU Relation: sunburn Instances: 8 Attributes: 5 hair height weight lotion burned Test mode: evaluate on training data === Classifier model (full training set) === J48 pruned tree ------------------ lotion = yes: none (3.0) lotion = no: burned (5.0/2.0) Number of Leaves : 2 Size of the tree : 3 Time taken to build model: 0.01 seconds === Evaluation on training set === === Summary === Correctly Classified Instances 6 75 % Incorrectly Classified Instances 2 25 % Kappa statistic 0.5294 Mean absolute error 0.3 Root mean squared error 0.3873 Nguyễn Thị Thu Thảo – CNPM6 Page 8 ĐỒ ÁN KHAI PHÁ DỮ LIỆU Relative absolute error 63.1579 % Root relative squared error 79.8935 % Total Number of Instances 8 === Detailed Accuracy By Class === TP Rate FP Rate Precision Recall F-Measure ROC Area Class 1 0.4 0.6 1 0.75 0.8 burned 0.6 0 1 0.6 0.75 0.8 none Weighted Avg. 0.75 0.15 0.85 0.75 0.75 0.8 === Confusion Matrix === a b <-- classified as 3 0 | a = burned 2 3 | b = none Đánh giá: Số mẫu Tỉ lệ Phân lớp đúng 6 75% Phân lớp sai 2 25% Không phân lớp được 0 0 Tổng 8 o Kết quả khi chạy khi thiết lập sử dụng 50% dữ liệu đạo tạo và test 50% dữ liệu còn lại. Kết quả: Nguyễn Thị Thu Thảo – CNPM6 Page 9 ĐỒ ÁN KHAI PHÁ DỮ LIỆU === Run information === Scheme: weka.classifiers.trees.J48 -C 0.25 -M 2 Relation: sunburn Instances: 8 Attributes: 5 hair height weight lotion burned Test mode: split 50.0% train, remainder test === Classifier model (full training set) === J48 pruned tree ------------------ lotion = yes: none (3.0) lotion = no: burned (5.0/2.0) Number of Leaves : 2 Size of the tree : 3 Time taken to build model: 0.01 seconds === Evaluation on test split === === Summary === Correctly Classified Instances 2 50 % Incorrectly Classified Instances 2 50 % Kappa statistic 0 Nguyễn Thị Thu Thảo – CNPM6 Page 10 . dữ liệu Các giá trị 1. Tóc Nominal Tóc vàng, nâu, đỏ 2. Chiều cao Nomina Thấp, trung bình, cao 3. Cân nặng Nomina Nhẹ, trung bình, nặng 4. Dùng thuốc Nomina. liệu Sunburn.arff thu thập được qua việc khảo sát rám nắng dựa vào tóc, chiều cao, cân nặng, dùng thuốc để xác định người đó có bị rám nắng hay không? • Qua