Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)Nghiên cứu một số phương pháp phân lớp dữ liệu và ứng dụng trong phân lớp nấm (mushroom) với công cụ Weka (Luận văn thạc sĩ)
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG INTHAVONG SOUKSAKHONE NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN LỚP DỮ LIỆU VÀ ỨNG DỤNG TRONG PHÂN LỚP NẤM (MUSHROOM) VỚI CÔNG CỤ WEKA LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH Thái Nguyên – 2020 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG INTHAVONG SOUKSAKHONE NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN LỚP DỮ LIỆU VÀ ỨNG DỤNG TRONG PHÂN LỚP NẤM (MUSHROOM) VỚI CÔNG CỤ WEKA LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 84 01 01 Người hướng dẫn khoa học: TS Nguyễn Văn Núi Thái Nguyên – 2020 I LỜI CẢM ƠN Trước tiên, xin gửi lời cảm ơn lòng biết ơn sâu sắc tới Thầy giáo, TS Nguyễn Văn Núi tận tình bảo, hướng dẫn, động viên giúp đỡ tơi suốt q trình tơi thực luận văn tốt nghiệp Tôi xin gửi lời cảm ơn tới thầy cô Trường Đại Học Công nghệ Thông Tin Truyền Thông – Đại học Thái Nguyên, người tận tình giúp đỡ, hướng dẫn q trình tơi học tập trường Cuối cùng, muốn gửi lời cảm ơn tới gia đình bạn bè, người thân yêu bên cạnh, quan tâm, động viên suốt trình học tập thực luận văn tốt nghiệp Tôi xin chân thành cảm ơn! Thái Nguyên, tháng 11 năm 2020 Học viên Inthavong Souksakhone II LỜI CAM ĐOAN Tôi xin cam đoan kết đạt Luận văn sản phẩm riêng cá nhân tôi, không chép lại người khác Những điều trình bày nội dung Luận văn, cá nhân tổng hợp từ nhiều nguồn tài liệu Tất tài liệu tham khảo có xuất xứ rõ ràng trích dẫn quy cách Tơi xin hồn tồn chịu trách nhiệm chịu hình thức kỷ luật theo quy định cho lời cam đoan Thái Nguyên, tháng 11 năm 2020 Tác giả luận văn Inthavong Souksakhone III MỤC LỤC LỜI CẢM ƠN I LỜI CAM ĐOAN II MỤC LỤC III DANH SÁNH BẢNG VI DANH SÁNH HÌNH VẼ VII DANH SÁCH TỪ VIẾT TẮT IX CHƯƠNG TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÁT HIỆN TRI THỨC 1.1 Giới thiệu tổng quan 1.1.1 Khái niệm khai phá liệu 1.1.2 Nhiệm vụ khai phá liệu 1.1.3 Một số ứng dụng khai phá liệu 1.1.4 Bước phát triển việc tổ chức khai thác CSDL 1.1.5 Quá trình phát tri thức 1.1.6 Các bước trình KPDL 1.2 Một số kỹ thuật khai phá liệu 10 1.2.1 Khai phá liệu dự đoán 10 1.2.1.1 Phân lớp (Classification) 10 1.2.1.2 Hồi quy (Regression) 11 1.2.2 Khai phá liệu mô tả 11 1.2.2.1 Phân cụm 11 1.2.2.2 Khai phá luật kết hợp 12 1.3 Một số so sánh khai phá liệu phương pháp khác 12 1.3.1 So sánh với phương pháp hệ chuyên gia (Expert Systems) 13 1.3.2 So sánh với phương pháp thống kê (Statistics) 14 1.3.3 So sánh với phương pháp học máy (Machine Learning) 14 1.3.4 So sánh với phương pháp học sâu (Deep Learning) 15 IV 1.4 Tổng kết chương 18 CHƯƠNG MỘT SỐ PHƯƠNG PHÁP VÀ KỸ THUẬT PHÂN LỚP DỮ LIỆU 19 2.1 Tổng quan phân lớp liệu .19 2.2 Phân lớp liệu định 22 2.2.1 Độ lợi thông tin 26 2.2.2 Tỉ số độ lợi 29 2.2.3 Chỉ số Gini 30 2.2.4 Tỉa định 32 2.3 Phân lớp liệu Bayesian 33 2.3.1 Định lý Bayes 33 2.3.2 Phân lớp Naïve Bayes 34 2.4 Phân lớp liệu sử dụng máy hỗ trợ vector (SVM) 36 2.4.1 Phân lớp đa lớp với SVM 40 2.5 Phân lớp liệu với Random Forest (rừng ngẫu nhiên) 40 2.6 Một số phương pháp phân lớp liệu khác 44 2.6.1 Thuật toán phân lớp k-NN 44 2.7 Đánh giá mơ hình phân lớp liệu .44 2.8 Tổng kết chương 46 CHƯƠNG ỨNG DỤNG PHÂN LỚP DỮ LIỆU MUSHROOM VỚI CƠNG CỤ WEKA VÀ MỘT SỐ THUẬT TỐN CƠ BẢN 47 3.1 Giới thiệu toán phân lớp liệu Mushroom 47 3.1.1 Giới thiệu toán phân lớp liệu Mushroom 47 3.1.2 Thu thập, tiền xử lý mã hóa liệu 47 3.1.3 Mô tả sơ lược liệu 51 3.2 Giới thiệu công cụ Weka, cấu hình ứng dụng phân lớp Mushroom 52 3.2.1 Môi trường Explorer 53 V 3.2.2 Khuôn dạng tập liệu 54 3.2.3 Tiền xử lý liệu 54 3.2.4 Phân tích chức phân lớp (Classify) 54 3.2.5 Mô tả chức phân lớp (Classify) 58 3.3 Áp dụng phương pháp phân lớp tập liệu Mushroom 60 3.3.1 Thực phân lớp thuật toán Naive Bayes 61 3.3.2 Thực phân lớp thuật toán k-Nearest neighbor 63 3.3.3 Thực phân lớp thuật toán Support Vector Machines 66 3.4 Đánh giá mơ hình phân lớp liệu Mushroom 70 3.4.1 Đánh giá mơ hình phương pháp Hold-out 70 3.4.2 Đánh giá mơ hình phương pháp k-fold Cross validation 71 3.5 Kết luận thực nghiệm phần lớp liệu Mushroom .71 3.6 Tổng kết chương 72 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .73 TÀI LIỆU THAM KHẢO 74 VI DANH SÁNH BẢNG Bảng 2.1: Bảng liệu khách hàng 25 Bảng 2.3: Bảng biểu diễn ma trận nhầm lẫn 45 Bảng 3.1: Bảng tổng hợp liệu thu thập 47 Bảng 3.2: Các tính dành cho liệu nấm 48 Bảng 3.3: Mô tả ý nghĩa giá trị liệu nấm 50 Bảng 3.4: Hiệu mơ hình dự đốn, đánh giá kiểm tra 70% 70 Bảng 3.5: Hiệu mơ hình dự đốn, đánh giá kiểm tra chéo mặt (fold=10 cross-validation) 71 VII DANH SÁNH HÌNH VẼ Hinh 1.1: Q trình phát tri thức Hinh 1.2: Quá trình khai phá liêu (KPDL) Hinh 1.3: Phân cụm tập liệu cho vay thành cụm 12 Hinh 1.4: Một số lĩnh vực ứng dụng trí tuệ nhân tạo 13 Hinh 1.5: Học sau nhận dạng khuôn mặt biểu cảm xúc khuân mặt 16 Hình 2.1: Quá trình phân lớp liệu - (a) Bước xây dựng mô hình phân lớp 21 Hình 2.2 : Quá trình phân lớp liệu - (b1) Ước lượng độ xác mơ hình 22 Hình 2.3: Q trình phân lớp liệu - (b2) Phân lớp liệu 22 Hình 2.4:Phân lớp cho toán cho vay vốn ngân hàng 23 Hình 2.5:Thuật tốn xây dựng định 24 Hình 2.6: Minh họa định 26 Hình 2.7: Thuộc tính tuổi có thơng tin thu cao 29 Hình 2.8 :Các điểm không gian D chiều 36 Hình 2.9: Siêu phẳng phân lớp điểm không gian 37 Hình 2.10: Đồ thị biểu diễn điểm mặt phẳng R+ 37 Hình 2.11: Các điểm lựa chọn cho siêu phẳng 38 Hình 2.12: Kiến trúc mơ hình SVM 38 Hình 2.13: Đồ thị biểu diễn siêu phẳng tìm 39 Hình 2.14: Mơ hình rừng ngẫu nhiên 42 Hình 2.15: Mơ hình chia tập liệu Hold-out 45 Hình 2.16: Mơ hình chia tập liệu Cross validation 46 Hình 3.1: Sơ đồ Phương pháp phân lớp nấm (Mushroom) 49 Hình 3.2 : Load Mushroom data 51 Hình 3.3: Giao diên ban đầu Phần mềm WEKA 52 Hình 3.4: Giao diên WEKA Explorer 53 Hình 3.5: Biểu diễn tập liệu weather tập tin văn bản(text) 54 Hình 3.6: Biểu diễn đọc liệu vào chương trình Weka 55 VIII Hình 3.7: Biểu diễn chọn tab Classify để phân lớp 55 Hình 3.8: Biểu diễn chọn thuật tốn phân lớp xác định tham số 56 Hình 3.9: Biểu diễn chọn kiểu test 56 Hình 3.10: Chạy thuật toán phân lớp 57 Hình 3.11: Bảng lưu thơng tin 57 Hình 3.12: Bảng kết sau chạy thuật toán phân lớp 58 Hình 3.13: Giải thích Running Information 58 Hình 3.14: Giải thích Classifier model (full training set) 59 Hình 3.15: Giải thích xem xét tổng kết số liệu thống kế tập liệu 59 Hình 3.16: Xem độ xác chi tiết cho phân lớp 59 Hình 3.17: Confusion matrix phân lớp liêu Mushroom 60 Hình 3.18: Sơ đồ tổng thể Mơ hình phân lớp dự đốn nấm (mushroom) 60 Hình 3.19: Cấu hình Weka cho thuật toán Naive Bayes 61 Hình 3.20: Kết phân lớp Weka cho thuật tốn Naive Bayes với số 70% Split 62 Hình 3.21: Kết phân lớp Weka cho thuật toán Naive Bayes kiểm tra chéo 10 mặt 63 Hình 3.22: Cấu hình Weka cho thuật toán k-NN 64 Hình 3.23: Cấu hình Weka cho thuật tốn tìm kiếm thuật tốn k-NN 64 Hình 3.24: Kết phân lớp Weka cho thuật toán k-NN với số 70% Split 65 Hình 3.25: Kết phân lớp Weka cho thuật toán k-NN kiểm tra chéo 10 mặt 65 Hình 3.26: Cấu hình Weka cho thuật toán SVM 66 Hình 3.27: Kết phân lớp Weka cho thuật toán SVM với số 70% Split 67 Hình 3.28: Kết phân lớp Weka cho thuật tốn SVM kiểm tra chéo 10 mặt 67 Hình 3.29: Cấu hình Weka cho thuật tốn J48 68 Hình 3.30: Kết phân lớp Weka cho thuật toán J48 decision với số 70% Split 68 Hình 3.31: Kết phân lớp Weka cho thuật toán J48 kiểm tra chéo 10 mặt 69 Hình 3.32: Mơ hình định hiển thị Hold-out J48 69 Hình 3.33: định Visualization 70 60 • Confusion matrix: cho biết mẫu gán vào lớp Các phần tử ma trận thể số mẫu test có lớp thật dịng lớp dự doạn cột Hình 3.17: Confusion matrix phân lớp liêu Mushroom 3.3 Áp dụng phương pháp phân lớp tập liệu Mushroom Trong luân văn này, ta áp dụng phương pháp phân lớp (classification) lên tập liệu Mushroom Đây tập liệu mơ tả đặc tính vật lý nấm, với nhãn phân loại có độc ăn Các thuật toán sử dụng gồm: Naive Bayes, Nearest neighbor, Support Vector Machines, Decision tree (J48) Để dễ tiếp cận, phương pháp thực với Weka Mô hình phân lớp dự đốn đề xuất đề tài hiển thị chi tiết qua hình đây: Hình 3.18: Sơ đồ tổng thể Mơ hình phân lớp dự đoán nấm (mushroom) 61 3.3.1 Thực phân lớp thuật toán Naive Bayes Kịch 1: thực nghiệm huấn luyện chế độ phân lớp Percentage split để xác định tỉ lệ phân chia, thực nghiệm tơi xác định tỉ lệ 70%, có nghĩa chia 70% tâp huấn luyện (tập train), 30% tập kiểm tra (tập test) Để đạt hiệu phân lớp sau: 1) Nhấp vào nút “Choose” Lựa chọn chọn Tập tin “NaiveBayes” trực tuyến nhóm “Bay Bayes” 2) Nhấp vào tên thuật toán để xem lại cấu hình thuật tốn Hình 3.19: Cấu hình Weka cho thuật toán Naive Bayes Theo mặc định, phân phối Gaussian giả sử cho thuộc tính số Các phân phối thay đổi thuật tốn để sử dụng cơng cụ ước tính Kernel với đối số sử dụng Kernel Estimator phù hợp với phân phối thực tế thuộc tính tập liệu bạn Tuy nhiên, thơng số tự động chuyển đổi thuộc tính số thành thuộc tính danh nghĩa với tham số sử dụng Supervised Discretization 3) Nhấn vào “Ok” để đóng cấu hình thuật tốn 4) Ta chọn thuộc tính phân lớp “class”, chọn Classifer tương ứng, sau bấm Start để tiến hành xây dựng mơ hình đánh giá độ xác Sau chạy thuật tốn liệu Ionosphere Có thể thấy với cấu hình mặc định, thuật tốn định đạt độ xác 95.4042% 62 Hình 3.20: Kết phân lớp Weka cho thuật toán Naive Bayes với số 70% Split Nhận xét: - Thời gian xây dừng mơ hình 0.01 giây - Tỷ lệ phân lớp 95.4042% (2325 mẫu) - Tỷ lệ phân lớp sai 4.5958% (112 mẫu) - Mức độ phân lớp lớp e (nấm ăn được) lớp p (nấm không ăn được) là: - Ma trận Confusion thể mẫu nấm ăn (e) phân 1242, phân sai 101 Các mẫu không ăn (p) phân 1083, phân sai 11 63 Kịch 2: thực nghiệm huấn luyện chế độ phân Cross-validation Tập liệu chia k tập (folds) có kích thước xấp xỉ nhau, phân loại học dánh giá phướng pháp cross-validation Trong thực nghiệm xác định chọn fold=10, để đạt hiệu phân lớp sau: Sau chạy thuật tốn liệu Ionosphere Có thể thấy với cấu hình mặc định, thuật tốn định đạt độ xác 95.8272% Hình 3.21: Kết phân lớp Weka cho thuật toán Naive Bayes kiểm tra chéo 10 mặt (fold=10 cross-validation) 3.3.2 Thực phân lớp thuật toán k-Nearest neighbor Thuật toán hỗ trợ phân lớp hồi quy Nó gọi kNN cho ngắn gọn Nó hoạt động cách lưu trữ toàn tập liệu huấn luyện truy vấn để xác định vị trí mẫu đào tạo tương tự đưa dự đốn Như vậy, khơng có mơ hình ngồi tập liệu huấn luyện thơ phép tính thực truy vấn bộdữ liệu huấn luyện yêu cầu dự đoán 64 Chọn thuật toán k-Nearest Neighbors: 1) Nhấp vào nút “Choose” chọn “IBk” nhóm “Lazy” 2) Nhấp vào tên thuật tốn để xem lại cấu hình thuật tốn Hình 3.22: Cấu hình Weka cho thuật tốn k-NN Theo hình 3.21 cấu hình Weka cho thuật tốn k-Neares Neighbors xác định giá trị tham số K (số láng giềng gần nhất) K=1 dùng khoảng cách Euclidean để tính khoảng cách trường hợp, điều tốt cho liệu số có tỷ lệ Khoảng cách Manhattan tốt để sử dụng thuộc tính bạn khác biện pháp loại Hình 3.23: Cấu hình Weka cho thuật tốn tìm kiếm thuật tốn k-NN 3) Sau nhấn vào “Ok” để đóng cấu hình thuật tốn 65 4) Ta chọn thuộc tính phân lớp “class”, chọn Classifer tương ứng, sau bấm Start để tiến hành xây dựng mơ hình đánh giá độ xác Sau chạy thuật tốn liệu Ionosphere Có thể thấy với cấu hình mặc định, thuật tốn định đạt độ xác 100% Hình 3.24: Kết phân lớp Weka cho thuật toán k-NN với số 70% Split Hình 3.25: Kết phân lớp Weka cho thuật toán k-NN kiểm tra chéo 10 mặt (fold=10 cross-validation) 66 3.3.3 Thực phân lớp thuật toán Support Vector Machines 1) Nhấp vào nút “Choose” chọn “SMO” nhóm “Function” 2) Nhấp vào tên thuật tốn để xem lại cấu hình thuật tốn Hình 3.26: Cấu hình Weka cho thuật tốn SVM Theo hình (3.26) tham số C, gọi tham số độ phức tạp Weka kiểm soát mức độ linh hoạt quy trình vẽ đường phân tách lớp Giá trị cho phép không vi phạm ký quỹ, mặc định Một tham số SVM loại Kernel sử dụng Hạt nhân đơn giản hạt nhân tuyến tính phân tách liệu đường thẳng siêu phẳng Mặc định Weka hạt nhân đa thức phân tách lớp cách sử dụng đường cong uốn lượn, đa thức cao, lung lay (giá trị số mũ) Một hạt nhân phổ biến mạnh mẽ Kernel RBF Radial Basis Function Kernel có khả học đa giác khép kín hình dạng phức tạp để phân tách lớp Đó ý tưởng tốt để thử giá trị hạt nhân C (độ phức tạp) khác vấn đề bạn xem hoạt động tốt 3) Sau nhấn vào “Ok” để đóng cấu hình thuật tốn 67 4) Ta chọn thuộc tính phân lớp “class”, chọn Classifer tương ứng, sau bấm Start để tiến hành xây dựng mơ hình đánh giá độ xác Sau chạy thuật tốn liệu Ionosphere Có thể thấy với cấu hình mặc định, thuật tốn định đạt độ xác 100% Hình 3.27: Kết phân lớp Weka cho thuật tốn SVM với số 70% Split Hình 3.28: Kết phân lớp Weka cho thuật toán SVM kiểm tra chéo 10 mặt (fold=10 cross-validation) 68 3.3.4 Thực phân lớp thuật toán Decision tree (J48) 1) Nhấp vào nút “Choose” chọn “J48” nhóm “Trees” 2) Nhấp vào tên thuật tốn để xem lại cấu hình thuật tốn Hình 3.29: Cấu hình Weka cho thuật tốn J48 5) Sau nhấn vào “Ok” để đóng cấu hình thuật tốn 6) Ta chọn thuộc tính phân lớp “class”, chọn Classifer tương ứng, sau bấm Start để tiến hành xây dựng mơ hình đánh giá độ xác Sau chạy thuật tốn liệu Ionosphere Có thể thấy với cấu hình mặc định, thuật tốn định đạt độ xác 100% Hình 3.30: Kết phân lớp Weka cho thuật toán J48 decision với số 70% Split 69 Hình 3.31: Kết phân lớp Weka cho thuật toán J48 kiểm tra chéo 10 mặt (fold=10 cross-validation) Riêng thuật tốn J48, ta sử dụng chức Visualize Tree để xem hình ảnh định Hình 3.32: Mơ hình định hiển thị Hold-out J48 70 Hình 3.33: định Visualization 3.4 Đánh giá mơ hình phân lớp liệu Mushroom 3.4.1 Đánh giá mơ hình phương pháp Hold-out Chúng ta chia liệu thành phần: 70% để xây dựng mơ hình phân lớp (tập train), 30% để kiểm tra (tập test) Bảng 3.4: Hiệu mơ hình dự đoán, đánh giá kiểm tra 70% Classifier Precision Recall F-measure ACC Time Naïve Bayes 0,990 0,915 0,951 95.4042% 0.01 KNN (k=1) 1 100% 0.03 SVM 1 100% 1.35 Confusion matrix 71 J48 1 100% 0.05 3.4.2 Đánh giá mơ hình phương pháp k-fold Cross validation Ta chọn k=10, nghĩa chia tập liệu thành 10 phần, phần dùng làm tập kiểm tra (test set), phần dùng để huấn luyện (train set) Bảng 3.5: Hiệu mơ hình dự đoán, đánh giá kiểm tra chéo mặt (fold=10 cross-validation) Classifier Precision Recall F-measure ACC Time Naïve Bayes 0,991 0,922 0,955 95.8272% 0.02 KNN (k=1) 1 100% 0.02 SVM 1 100% 0.98 J48 1 100% 0.03 Confusion matrix 3.5 Kết luận thực nghiệm phần lớp liệu Mushroom Qua kết phân lớp trên, ta thấy ngồi mơ hình Naive Bayes, mơ hình lại cho kết phân lớp tốt (100% phân lớp xác) Điều cho thấy, mơ hình phân lớp phù hợp cho toán phân lớp, dự đoán nấm Từ kết số mơ hình phân lớp trên, đặc biệt mơ hình phân lớp dựa vào định, ta biết loại nấm có độc hay không nhờ vào đặc điểm mùi màu sắc 72 Về đặc điểm mùi, nấm ăn thường có mùi hạnh nhân mùi hoa hồi, nấm độc thường có mùi hơi, tanh, cay Cịn đặc điểm màu sắc, có nấm màu xanh khơng ăn nấm có độc, lồi nấm có màu l loẹt cam, vàng, tím nấm ăn Thật thú vị, thơng qua số thuật tốn phân lớp (ví dụ: định), ta phân biệt đâu nấm độc, đâu nấm ăn thông qua số đặc điểm nhận diện qua mùi màu sắc 3.6 Tổng kết chương Chương trình bày vấn đề tốn phân lớp/dự đốn tính chất (ăn được/có độc) nấm thơng qua việc áp dụng số phương pháp/kỹ thuật phân lớp liệu Đặc biệt, chương trình xây dựng trình bày mơ hình tổng thể tốn phân lớp dự đốn nấm sở áp dụng thuật toán phân lớp phần mềm hỗ trợ trực quan Weka Kết thực nghiệm tốn trình bày chi tiết sở áp dụng phần mềm Weka phương pháp phổ biến như: Naive Bayes, Nearest neighbor, Support Vector Machines, Decision tree (J48) 73 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết đạt được: Sau thời gian làm việc, nghiên cứu hướng dẫn tận tình thầy giáo TS Nguyễn Văn Núi, đạt kết sau đây: Tổng hợp tương đối đầy đủ xác khái niệm kiến thức liên quan đến khai phá liệu phát tri thức, thuật toán phân lớp liệu ứng dụng việc dự dốn Giới thiệu trình bày cơng cụ phần mềm Weka (Waikato Environment for Knowledge Analysis) phần mềm học máy Đại học Waikato, New Zealand phát triển Java., ứng dụng phân lớp liệu Tìm hiểu tốn phân lớp liệu áp dụng cho phân lớp dự đoán nấm Mushroom Cài đặt, cấu hình phần mềm Weka tiến hành phân lớp liệu thực phân lớp liệu Mushroom Tóm tắt đề xuất số tính chất tiêu biểu nấm trở thành thơng tin, chính, qua giúp phân biệt dự đoán loại nấm có độc ăn thơng qua số mơ hình phân lớp định (ví dụ: định) Hướng phát triển luận văn: Trong thời gian tới, tiếp tục nghiên cứu sâu vấn đề phân lớp liệu, đặc biệt nghiên cứu tìm hiểu sâu việc ứng dụng phần mềm Weka để tiến hành phân tích liệu ứng dụng lĩnh vực cụ thể phân lớp, dự đoán Mushroom Tiến hành nghiên cứu thêm thuật tốn phân lớp liệu, tối ưu hóa thuật tốn phân lớp liệu, từ đề xuất mơ hình phân lớp, dự đốn vị Mushroom với độ xác cao 74 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Đỗ Phúc (2017), Giáo trình khai phá liệu, NXB ĐHQG TPHCM [2] Nguyễn Hà Nam, Nguyễn Trí Thành, Hà Quang Thụy (2013), Giáo trình khai phá liệu, NXB Đại học Quốc gia Hà Nội [3] Hà Quang Thụy (Chủ biên), Phan Xuân Hiếu – Đoàn Sơn – Nguyễn Trí Thành, Nguyễn Thu Trang – Nguyễn Cẩm Tú (2009), Giáo trình khai phá liệu, NXB Giáo dục Việt Nam [4] Website: https://ndhcuong.wordpress.com/hoc-phan/khai-pha-du-lieu/ [5] Website:https://ongxuanhong.wordpress.com/2015/08/25/ap-dung-cacphuong -phap- phan-lop-classification-tren-tap-du-lieu-mushroom/ Tiếng anh [6] Joydeep Ghosh (2003), Scalable Clustering, Chapter 10, pp 247-278, Formal version appears in: The Hand book of Data Mining, Nong Ye (Ed) [7] Anil K Jain and Richard C Dubes (1988), Algorithms for clustering data, Prentice Hall, Inc., USA [8] Ho Tu Bao (1998), Introduction to knowledge discovery and data mining [9] Jiawei Hanand Micheline Kambel (2000), Data Mining: Concepts and Techniques, Morgan Kaufmann Publishers [10] J.Ross Quinlan (1993), C4.5: Programsfor Machine Learning, Morgan Kaufmann Publishers [11] Robert Nisbet, John Elder, Gary Miner, Handbook of Statistical Analysis and Data Mining Applications, Elsevier Inc, 2009 [12] Mehmed Kantardzic; Data mininng concepts, models, methods, and algorithms; John Wiley & Són, 2003 [13] Usama Fayyad, Gregory Piatesky-Shapiro, and Padhraic Smyth; From data mining to knowledge discovery in databases [14] Concepts-and-Techniques-3rd-Edition-Morgan-Kaufmann-(2011) [15] WEKA Manual for Version 3-8-0 Remco R Bouckaert, Eibe Frank, Mark Hall, Richard Kirkby, Peter Reutemann, Alex Seewald, David Scuse, April 14, 2016 [16] Website: https://archive.ics.uci.edu/ml/datasets/mushroom ... TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG INTHAVONG SOUKSAKHONE NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN LỚP DỮ LIỆU VÀ ỨNG DỤNG TRONG PHÂN LỚP NẤM (MUSHROOM) VỚI CÔNG CỤ WEKA LUẬN VĂN THẠC SỸ KHOA... dụng phân lớp liệu Mushroom với công cụ Weka số thuật toán Phần giới thiệu toán phân lớp liệu Mushroom, giới thiệu phân lớp liệu sử dụng công cụ Weka, áp dụng phương pháp phân lớp tập liệu Mushroom... liệu với Random Forest (rừng ngẫu nhiên), Phân lớp liệu sử dụng máy hỗ trợ vector (SVM) số phương pháp phân lớp liệu khác Ngồi cịn đánh giá mơ hình phương pháp phân lớp liệu Chương Ứng dụng phân