BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC KINH TẾ TP HỒ CHÍ MINH TRƯỜNG CÔNG NGHỆ VÀ THIẾT KẾ ĐỒ ÁN MÔN HỌC ĐỀ TÀI Phân tích dữ liệu Zoo Datasets và phân loại các loài động vật thuộc các lớp động vật dựa trê[.]
BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC KINH TẾ TP HỒ CHÍ MINH TRƯỜNG CƠNG NGHỆ VÀ THIẾT KẾ ĐỒ ÁN MƠN HỌC ĐỀ TÀI: Phân tích liệu Zoo Datasets phân loại loài động vật thuộc lớp động vật dựa thuộc tính chúng Học phần: Khoa Học Dữ Liệu Nhóm Sinh Viên: Hoàng Ngọc Phát - 31201023736 Hà Quang Đạt - 31201023692 Chun Ngành: Quản Lý Cơng Khóa: K46 Giảng Viên: TS Đặng Ngọc Hồng Thành TP Hồ Chí Minh, Ngày 26 tháng năm 2022 Tieu luan MỤC LỤC Contents MỤC LỤC CHƯƠNG TỔNG QUAN 1.1 Tổng Quan Về Bài Toán Phân Lớp Dữ Liệu .2 1.2 Giới Thiệu Về Python Phần Mềm Orange 2.1 Các Mô Hình Phân Lớp Dữ Liệu 2.1.1 Mơ Hình Logistic Regression 2.1.2 Mơ Hình Decision Tree 2.1.3 Mơ Hình Support Vector Machine 2.1.4 Mơ Hình Neural Network 2.2 Quy Trình Phân Lớp Dữ Liệu 2.2.1 Phân Lớp Dữ Liệu .5 2.2.2 Đánh Giá Tính Hiệu Quả CHƯƠNG CÁC KẾT QUẢ THỰC NGHIỆM 3.1 Bộ Dữ Liệu 3.2 Các Kết Quả Thực Nghiệm .9 3.3 Phân Tích Đánh Giá 12 CHƯƠNG KẾT LUẬN…………………………………………………………… 12 4.1 Các Kết Quả Đạt Được 13 4.2 Những Hạn Chế Hướng Phát Triển 13 TÀI LIỆU THAM KHẢO 14 Tieu luan CHƯƠNG TỔNG QUAN 1.1 Tổng Quan Về Bài Toán Phân Lớp Dữ Liệu Phân lớp liệu: Là trình phân đối tượng liệu vào hay nhiều lớp (loại) cho trước nhờ mơ hình phân lớp Mơ hình xây dựng dựa tập liệu gán nhãn trước Q trình gán nhãn cho đối tượng liệu q trình phân lớp liệu Mơ hình xây dựng dựa tập liệu xây dựng trước có gán nhãn (hay cịn gọi tập huấn luyện) Quá trình phân lớp trình gán nhãn cho đối tượng liệu 1.2 Giới Thiệu Về Python Phần Mềm Orange Python ngôn ngữ bậc cao (high-level) có hình thức sáng sủa, cấu trúc rõ ràng, thuận tiện cho người học lập trình Cho phép người sử dụng viết mã với số lần gõ phím tối thiểu Python ngơn ngữ phổ biến giới Phần mềm Orange biết đến việc tích hợp cơng cụ khai phá liệu mã nguồn mở học máy thông minh, đơn giản, lập trình Python với giao diện trực quan tương tác dễ dàng Với nhiều chức năng, phần mềm phân tích liệu từ đơn giản đến phức tạp, tạo đồ họa đẹp mắt thú vị giúp việc khai thác liệu học máy trở nên dễ dàng cho người dùng chuyên gia Các công cụ (widgets) cung cấp chức đọc liệu, hiển thị liệu dạng bảng , lựa chọn thuộc tính đặc điểm liệu, huấn luyện liệu để dự đoán, so sánh thuật toán máy học , trực quan hóa phần tử liệu, … Data: Dùng để rút trích, biến đổi, nạp liệu (ETL process) Tieu luan Visualize: dùng để biểu diễn biểu đồ (chart) giúp quan sát liệu tốt Model: gồm hàm máy học (machine learning) phân lớp liệu với Tree, Logictis Regression, SVM, Evaluate: Là phương pháp đánh giá mơ : Test& Score, Prediction, Confusion Unsupervised: Gồm hàm máy học (machine learing) gom nhóm liệu như: Distance, K-means,… 1.3 Lý Do Chọn Lựa Đề Tài Ở gia đình đại ngày gần ln chọn lồi động vật làm thú cưng chó, mèo, cá , chuột, số lồi động vật khác người dám nuôi chúng nhà rắn, cá sấu, heo loài thú cưng Tuy nhiên vơ tình bạn nhận ni lồi thú lạ mà bạn chưa gặp lúc bạn thấy chúng bạn lại muốn mang nhà nuôi Và có điều gặp xảy chúng lại thuộc vào loài động vật quý bạn khơng biết Tieu luan phải chăm sóc chúng Và dự án phần hỗ trợ bạn tìm cách chăm sóc cho chúng Trong dự án này, không khuyến khích bạn bắt giữ ni động vật q hiếm, chúng tơi làm dự án với mục đích lớn khác bảo tồn, gìn giữ lồi động vật quý hiếm, góp phần bảo vệ hệ sinh thái, mơi trường sống xung quanh CHƯƠNG CÁC MƠ HÌNH PHÂN LỚP DỮ LIỆU 2.1 Các Mơ Hình Phân Lớp Dữ Liệu 2.1.1 Mơ Hình Logistic Regression Định nghĩa: Là mơ hình xác suất dự đốn giá trị đầu rời rạc từ tập giá trị đầu vào ( biểu diễn dạng vector) Có dạng hồi quy Logistic: - Hồi quy logistic nhị phân: Biến phụ thuộc có hai kết / lớp xảy - Hồi quy logistic đa thức: biến phụ thuộc có hai ba kết / lớp trở lên mà thứ tự xếp ngẫu nhiên - Hồi quy logistic thông thường: biến phụ thuộc có hai nhiều kết / lớp có xếp thứ tự 2.1.2 Mơ Hình Decision Tree Định nghĩa: Cây định đồ thị định kèm nhằm mô tả, phân loại tổng quát hóa liệu cho trước Mơ hình định cho phép có nhiều kết Trong lĩnh vực khai phá liệu, xem kết hợp hồn hảo khía cạnh: kỹ thuật tốn học tính tốn nhằm hỗ trợ cho việc mơ tả, phân loại tổng Tieu luan quát hóa tập liệu đầu vào Khi đó, định mơ tatr cấu trúc cây, đó, đại diện cho phân loại cành đại diện cho kết hợp thuộc tính dẫn tới phân loại 2.1.3 Mơ Hình Support Vector Machine Định nghĩa: SVM thuật tốn có giám sát, xem liệu vector phân loại chúng vào lớp khác cách xây dựng siêu phẳng không gian nhiều chiều để phân cách lớp liệu Để tối ưu hóa kết quả, ta xác định mặt phẳng siêu phẳng có khoảng cách đến điểm liệu tất lớp xa Có nhiều biến thể phù hợp với nhiều tốn phân lớp Mục đích cuối mơ hình SVM: tạo mặt phẳng lớp liệu 2.1.4 Mơ Hình Neural Network Mơ Hình Neural Network mạng sử dụng loạt thuật toán phcuws tạp nhằm xác định, xử lý thơng tin tìm mối quan hệ tiềm ẩn liệu Lấy cảm hứng từ mơ hình hoạt động tế bào thần kinh não người, Neural Network kết nối nút đơn giản, gọi tế bào thần kinh 2.2 Quy Trình Phân Lớp Dữ Liệu 2.2.1 Phân Lớp Dữ Liệu Bước 1: Xây dựng mơ hình (hay giai đoạn “học” “huấn luyện”) Phân chia liệu trình huấn luyện nhằm xây dựng mơ mơ tả tập liệu mẫu gán nhãn tiền xử lý, phần tử liệu giả định thuộc lớp phân trước, lớp giá trị thuộc tính chọn làm thuộc tính gán nhãn hay thuộc tính phân tính Mỗi giá trị gọi chung Tieu luan phần tử liệu, mẫu, ví dụ, đối tượng, hay trường hợp Kết bước mơ hình phân lớp huấn luyện Bước 2: Phân lớp liệu, sử dụng mơ hình, chia thành bước nhỏ: Bước 2.1: Đánh giá mô hình (kiểm tra tính đắn mơ hình) Đầu vào tập liệu mẫu chọn ngẫu nhiên độc lập với mẫu tập liệu huấn luyện, gán nhãn tiền xử lý Tuy nhiên thuộc tính gán nhãn bị “lờ” đưa vào mơ hình tiến hành phân lớp Bước 2.2: Phân lớp liệu Ở bước này, liệu đâuù vào liệu “ khuyết” thuộc tính cần dự đốn lớp Mơ hình tự động phân lớp (gán nhãn) cho đối tượng liệu dựa vào huấn luyện bước Tính đắn mơ hình xác định cách so sánh thuộc tính gán nhãn liệu đầu vào kết phân lớp mơ hình 2.2.2 Đánh Giá Tính Hiệu Quả Tính hiệu mơ hình phân lớp đánh giá dựa số ma trận nhầm lẫn ( Confusion Matrix), Hold-out, F1-score,… Do phương pháp có Tieu luan chất, cách thực mức độ xác khác nên tùy vào toán mà ta chọn phương pháp đánh giá hiệu - Ma trận nhầm lẫn ( Confusion matrix ) Một Confusion matrix cho thấy nơi mà mơ hình bị nhầm lẫn Cụ thể hơn, ma trận nhầm lẫn cho thấy danh mục mà mơ hình dự đốn xác danh mục mơ hình dự đốn sai Đối với dự đốn khơng xác, xem mơ hình dự đoán danh mục gây nhầm lẫn cho mơ hình để kịp thời xử lý đưa chỉnh sửa hợp lí - Accuracy (Độ xác) Accuracy hiểu tỉ lệ số mẫu dự đoán với tổng số mẫu tập liệu đính mà khơng xác loại phân lớp nào, phân loại nhiều thuộc lớp liệu thường bị phân loại nhầm vào lớp kahcs nằm lớp Tuy nhiên, giúp đánh giá hiệu dự báo mơ hình liệu Độ xác cao mơ hình chuẩn xác - ROC AUC + ROC (Receiver Operating Charracteristic) Là đồ thị sử dụng phổ biến đánh giá mơ hình phân loại nhị phân Đường cong tạo cách biểu diễn tỷ lệ dự báo true positive rate (TPR) dựa tỷ lệ dự báo false positive rate (FPR) ngưỡng khác + AUC (Area Under the Curve) Là diện tích nằm đường cong ROC có giá trị số dương nhỏ Giá trị lớn độ xác hình cao Tieu luan - Cross Validation: Hold-out K-fold + Phương pháp phân chia liệu Hold-out Phương pháp Hold-out phân chia tập liệu ban đầu thành tập độc lập theo tỷ lệ định Phương pháp sử dụng cho tập liệu lớn thường cho hiệu khả quan Tuy nhiên, tập liệu nhỏ vừa phải, kết mơ hình chưa có độ xác cao mẫu liệu nhỏ khơng mang tính đại diện cho tổng thể + Phương pháp nK-fold cross validation Phương pháp phân chia liệu thành k tập có kích thước (gọi fold) Một fold sử dụng làm tập liệu đánh giá phần lại sử dụng làm tập huấn luyện Quá trình lặp lại tất fold dùng làm tập liệu đánh giá CHƯƠNG CÁC KẾT QUẢ THỰC NGHIỆM 3.1 Bộ Dữ Liệu -Thu thập liệu từ Orange ( file liệu zoo) https://archive.ics.uci.edu/ml/datasets/zoo -Đây tập dự liệu mơ tả thuộc tinh lồi động vật Dựa vào đặc tính để phân loại loài thuộc lớp lớp động vật -Lưỡng cư -Chim -Cá -Côn trùng -Động vật không sương sống Tieu luan -Động vật có vú -Bị sát -Data set Characteristic(đặc điểm tập liệu): Đa biến Hình mơ tả dự liệu 3.2 Các Kết Quả Thực Nghiệm Có thể thấy biến độc lập hair, feathers, eggs,milk,… khai báo thuộc tính feature biến phục thuộc type khai báo thuộc tính target Tieu luan Hình Khai báo thuộc tính cho biến liệu huấn luyện Tiếp theo đề chọn thuật tonas cho q trình huấn luyệ mơ hình bao gồm: Decision Tree, SVM, Neural Network Logistic Regression, có kết dùng số đánh giá so sánh với để tìm mơ hình phù hợp với nghiên cứu 10 Tieu luan Hình Mơ tả tổng quan trình huấn luyện dự báo Bài nghiên cứu sử dụng phương pháp Cross validation: K-fold với k - để đánh giá mơ hình nhờ đặc tính vượt trội so với phương pháp Hold-out như: mơ hình huấn luyện dự báo nhiều phần liệu khác nhau, không trùng liệu huấn luyện giúp mơ hình tăng độ xác 11 Tieu luan Hình Kết đánh giá mơ hình phương pháp K-fold Kết cho thấy dù phương pháp sử dụng để đánh giá ( CA, F1, Precision Recall) Neural Network chiếm lợi hẳn thuật toán Tuy giá trị AUC phương pháp chưa phải cao phần nhỏ nên khơng làm ảnh hưởng đến độ xác tổng thể mơ hình Độ phù hợp thuật tốn Neural Network định nghiện cứu chứng minh thông qua phương pháp đánh giá ma trận nhầm lẫn trình bày sau Hình Đánh giá mơ hình thơng qua Ma trận nhầm lẫn Ta thấy 410 mẫu liệu huấn luyện có: Có 80 bird, 30 Insect (cơng trùng) phân lớp hồn tồn Có 20 Amphibian (lưỡng cư) lượng mẫu phân lớp , cịn mẫu bị phân nhầm lớp Invertebrate (không xương sống), mammal, reptile Có 50 Fish lượng mẫu phân lớp 46, mẫu bị phân nhầm lớp Invertebrate (không xương sống), mammal, reptile 12 Tieu luan Có 40 Invertebrate (khơng xương sống) lượng mẫu phân lớp 39 , cịn mẫu bị phân nhầm lớp reptile Có 170 Mammal ( động có vú) lượng mẫu phân lớp 168 , mẫu bị phân nhầm lớp fish Có 20 Reptile (bị sát) lượng mẫu phân lớp 13 , cịn mẫu bị phân nhầm lớp mammal, bird 3.3 Phân Tích Đánh Giá Thơng qua kết thực nghiệm phương pháp đánh giá trên, ta thấy liệu sử nghiên cứu này, thuật toán phân lớp Neural Network cho mơ hình có mức độ phù hợp cao Từ ta sử dụng để tiến hành tìm chiến lược tốt cải thiện hiệu thông qua liệu dự báo trình bày CHƯƠNG KẾT LUẬN 4.1 Các Kết Quả Đạt Được Về lý thuyết, nghiên cứu trình bày sở lý thuyết tổng quan toán phân lớp bao gồm khái niệm, quy trình thực hiện, mơ hình phương pháp đánh giá tính hiệu mơ hình Về thực nghiệm, áp dụng tảng lý thuyết nghiên cứu đưa vào toán ứng dụng để phân loại loài thuộc lớp lớp động vật Bài toán nghiên cứu đề xuất xây dựng bốn mơ hình dự đốn dựa thuật tốn Tree Decision, SVM, Neural Network Logistic Regression, từ so sánh mơ hình với chọn mơ hình tối ưu Neural Network 13 Tieu luan 4.2 Những Hạn Chế Hướng Phát Triển Về hạn chế, phần mềm Orange cung cấp cho nhiều cơng cụ để hổ trợ cho việc phân tích, dự đốn, lọc, xếp liệu, từ cho đòi hỏi người sử dụng phải hiểu công dụng, chức công cụ mà phần mềm Orange mang lại Bên cạnh đó, người sử dụng cần phải biết phối hợp công cụ lại với để tiến hành xử lý liệu Điều dẫn đến khó khăn cho người dùng gặp phải toán phức tạp cần đến phối hợp nhiều cơng cụ Ngồi ra, Orange cần phải cải thiện số chức cơng cụ để hỗ trợ người dùng tốt Đây phần mềm dùng để phân tích, đánh giá, xử lý liệu, lên kế hoạch việc thực chức chuyên sâu khơng đáp ứng đc cho người dùng Do trình độ thân nhiều hạn chế bước đầu áp dụng lý thuyết vào thực tiễn nên tiểu luận khơng tránh khỏi thiếu xót, hạn chế viết Chúng em mong nhận đóng góp quý thầy, để giúp chúng em cải thiện sau 14 Tieu luan TÀI LIỆU THAM KHẢO https://archive.ics.uci.edu/ml/datasets/zoo Machine Learning Repository 15 Tieu luan ... Về Bài Toán Phân Lớp Dữ Liệu Phân lớp liệu: Là trình phân đối tượng liệu vào hay nhiều lớp (loại) cho trước nhờ mô hình phân lớp Mơ hình xây dựng dựa tập liệu gán nhãn trước Q trình gán nhãn cho... tiến hành phân lớp Bước 2.2: Phân lớp liệu Ở bước này, liệu đâuù vào liệu “ khuyết” thuộc tính cần dự đốn lớp Mơ hình tự động phân lớp (gán nhãn) cho đối tượng liệu dựa vào huấn luyện bước Tính đắn... đoán với tổng số mẫu tập liệu đính mà khơng xác loại phân lớp nào, phân loại nhiều thuộc lớp liệu thường bị phân loại nhầm vào lớp kahcs nằm lớp Tuy nhiên, giúp đánh giá hiệu dự báo mơ hình liệu