Nội dung của bài viết tiến hành thử nghiệm hai thuật toán này cho bài toán phân loại chất lượng học sinh và cài đặt trên phần mềm Weka hướng tới cải thiện công tác quy hoạch và kế hoạch hóa bằng một số phần mềm nhằm nâng cao chất lượng dạy và học trong các trường nghề hiện nay.
ISSN 2354-0575 PHÂN LOẠI CHẤT LƯỢNG HỌC SINH TRƯỜNG CAO ĐẲNG NGHỀ XÂY DỰNG QUẢNG NINH SỬ DỤNG PHƯƠNG PHÁP HỌC MÁY Nguyễn Quang Hoan1, Nguyễn Thị Thanh Lan2, Hoàng Phú Quang3, Đào Minh Tuấn1 Trường Đại học Sư phạm Kỹ thuật Hưng Yên Trường Cao đẳng Nghề Xây dựng Quảng Ninh Trường Cao đẳng Nghề Lạng Sơn Ngày tòa soạn nhận báo: 19/03/2017 Ngày phản biện đánh giá sửa chữa: 22/05/2017 Ngày báo duyệt đăng: 25/05/2017 Tóm tắt: Phân lớp liệu hướng nghiên cứu khai phá liệu Bài báo phân tích, đánh giá so sánh hai thuật toán tiêu biểu ID3 Bayes phân lớp liệu Bài báo tiến hành thử nghiệm hai thuật toán cho toán phân loại chất lượng học sinh cài đặt phần mềm Weka Bài báo hướng tới cải thiện công tác quy hoạch kế hoạch hóa số phần mềm nhằm nâng cao chất lượng dạy học trường nghề Từ khóa: Học máy, phân loại, định, thuật toán ID3, thuật toán Bayes Giới thiệu Phân lớp liệu đã, phát triển mạnh mẽ trước khao khát tri thức người Trong năm qua, phân lớp liệu thu hút quan tâm nhà nghiên cứu nhiều lĩnh vực khác học máy (Machine Learning), hệ chuyên gia (Expert System), thống kê (Statistics) Công nghệ ứng dụng nhiều lĩnh vực thực tế như: thương mại, ngân hàng, Maketing, quản lý đối tượng… nhằm hạn chế rủi ro gặp phải [3] Trong mơ hình phân lớp, thuật tốn phân lớp cơng cụ chủ đạo Do vậy, cần xây dựng thuật toán có độ xác cao, thực thi nhanh, kèm với tính mở để thao tác với kho liệu lớn (Big Data) Bài toán đặt phân loại học sinh trường nghề sử dụng phương pháp học máy Có nhiều thuật tốn phân lớp cơng bố như: Cây định (Thuật toán Quinlan, ID3, Độ lộn xộn, C4.5, C5.0…), K-NN (K-Nearest Neighbor), Bayes; học theo mạng nơron, hệ mờ… Mỗi thuật tốn có ưu điểm, hạn chế độ phức tạp khác áp dụng cho nhiều lớp đối tượng [10] Phương pháp định: đơn giản, nhanh, hiệu ứng dụng thành công hầu hết lĩnh vực phân tích liệu, phân loại văn [2], [9]; thuật toán K-NN khơng tiến hành q trình học, phân loại tốn nhiều thời gian trình tìm kiếm k liệu lân cận, kết phụ thuộc vào việc chọn khoảng cách ứng dụng nhiều lĩnh vực tìm kiếm thơng tin, nhận dạng [4], [9]; thuật tốn Bayes đơn giản cho kết tốt thực tế, chịu giả thiết tính độc lập xác Khoa học & Công nghệ - Số 14/Tháng - 2017 suất thuộc tính thường ứng dụng toán dự đoán, phân loại, phát thư rác (Spam) [5], [8] Các luật học dựa mạng nơron nhân tạo chủ yếu ứng dụng lĩnh vực nhận dạng, xử lý tiếng nói, điều khiển hay lĩnh vực công nghệ thông tin, viễn thơng [2] với độ phức tạp thuật tốn cao Trong báo này, sử dụng thuật toán ID3 Bayes để phân lớp chất lượng học sinh Trường Cao đẳng Nghề Xây dựng Quảng Ninh Đây phương pháp phân loại mà từ trước tới trường chưa đưa vào sử dụng Các thuật toán chọn dùng cho phân loại chất lượng học sinh Từ phân tích trên, chúng tơi nhận thấy với quy mơ liệu khơng lớn, độ xác khơng địi hỏi cao trường nghề dùng thuật toán ID3 Bayes phân loại chất lượng học sinh 2.1 Thuật toán ID3 Đầu vào: Cho tập liệu huấn luyện gồm thuộc tính A mơ tả tình huống, hay đối tượng đó, giá trị nhãn làm dấu hiệu để phân loại tình đối tượng Đầu ra: Cây định đưa luật có khả phân loại ví dụ mẫu tập liệu huấn luyện, phân loại cho ví dụ khơng có tập huấn luyện hay chưa gặp tương lai Thuật toán: Bắt đầu với nút gốc[1], [7]: Bước 1: Chọn A ! thuộc tính định “tốt nhất” cho nút Bước 2: Gán A thuộc tính định cho Journal of Science and Technology 75 ISSN 2354-0575 nút Bước 3: Với giá trị A, tạo nhánh nút Bước 4: Phân loại mẫu huấn luyện cho nhánh Bước 5: mẫu huấn luyện nhánh phân loại hoàn toàn (đồng loại) DỪNG, ta nút lá; ngược lại, lặp với nút nhánh Tiêu chí để chọn gốc thuật tốn ID3 độ lợi thơng tin (Information Gain), tính theo Entropy b Thử nghiệm tốn Sau phân tích liệu tìm hiểu thuật tốn, chúng tơi tiến hành thử nghiệm tốn phần mềm Weka (Hình 1) chuyên nghiệp cho khai phá liệu Bảng liệu (Bảng1) với bốn thuộc tính: XLHL, XLDD, KNN, TACN 650 ghi ứng với 650 học sinh toàn trường lưu tệp ToanTruong.CSV Bảng Tệp liệu ToanTruong.CSV Độ lợi thông tin (Information Gain) Tập liệu S gồm có n thuộc tính Ai (i = 1, 2,…, n) độ lợi thơng tin thuộc tính A tập S ký hiệu Gain(S, A) tính theo: | Sv | Gain (S, A) = Entropy (S) - / Entropy (Sv) v ! Values (A) | S | (1) + Entropy tập S, có lớp (nhị phân) dương (+) âm (-) tính: Entropy(S) = - p + log2 p + - p- log2 p(2) + Entropy tập S có c phân lớp (c nguyên, dương) có dạng tổng quát Entropy (S) = c / - Pi log2 Pi i=1 (3) đó, pi: xác suất kiện đạt giá trị i, thuộc tập S 2.1.1 Thử nghiệm tốn ID3 a Phân tích đặt tốn Trong báo, chúng tơi giới hạn tham số (đặc trưng) ảnh hưởng đến chất lượng học sinh là: Xếp loại học lực, xếp loại đạo đức, Kỹ nghề Tiếng Anh chuyên ngành Mỗi yếu tố nhận giá trị ngôn ngữ cụ thể sau: + Biến 1: Xếp Loại Học Lực (XLHL), có giá trị: XLHL “Gioi” điểm trung bình từ 8.0-9.0; XLHL “Kha” điểm trung bình từ 7.0 – 8.0 XLHL “TBK” điểm trung bình từ 6.07.0.XLHL “TB” điểm trung bình từ 5.0-6.0 + Biến 2: Xếp Loại Đạo Đức (XLDD): có các giá trị: XLDD “Tot” điểm rèn luyện từ 8090 điểm; XLDD “DD_Kha” điểm rèn luyện từ 70–80 điểm XLDD “DD_TBK” điểm rèn luyện từ 60–70 điểm.XLDD “DD_TB” điểm rèn luyện từ 50–60 điểm + Biến 3: Kỹ nghề (KNN): Có hai giá trị: “KNN_Tot” “K_Tot” + Biến 4: Tiếng Anh chuyên ngành (TACN): Có hai giá trị: “Dat” “K_Dat” 76 Sau đó, ta tiến hành tiền xử lý liệu với phần mềm Weka để chọn thuộc tính cần thiết loại bỏ thuộc tính khơng cần thiết để phân loại (Hình 2, Hình 3): Hình Giao diện phần mềm Weka Khoa học & Công nghệ - Số 14/Tháng - 2017 Journal of Science and Technology ISSN 2354-0575 Hình Các tham số trước lọc liệu Hình Các tham số sau lọc liệu Sau thử nghiệm toán phần mềm Weka sử dụng thuật toán ID3 kết Khoa học & Công nghệ - Số 14/Tháng - 2017 sau: Journal of Science and Technology 77 ISSN 2354-0575 - Trường hợp 2: Phân loại khơng xác 12 trường hợp chiếm 1.8462% Bảng Ma trận nhầm lẫn dùng ID3 Để đánh giá khả phân lớp, ta sử dụng ma trận nhầm lẫn (Bảng 3) với kết sau: có trường hợp lớp Yes bị phân lớp nhầm sang lớp No; có trường hợp lớp No bị phân lớp nhầm sang lớp Yes 2.2 Thuật toán Naïve Bayes [5], [6] Giả sử D tập huấn luyện nhiều mẫu với vec tơ X=(x1, x2,…,xn) Ci,D tập mẫu D thuộc lớp Ci (i = {1,…,m}) Các thuộc tính (x1, x2,…, xn) giả thiết độc lập đó, xác suất có điều kiện Bayes tính theo [5], [6]: P = _Ci | X i = n % P _ xk | Ci i (4) i=1 = P _ x1 | Ci i # P _ x2 | Ci i # # P _ xn | Ci i - P(X|Ci) tính với giả định xk độc lập có điều kiện; k = n: - P(xk|Ci) tính với hai trường hợp sau: + Nếu X giá trị rời rạc Ci, D (5) P _Ci i = D #Ci, D {xk} (6) P _ xk | Ci i = Ci, D + Nếu X giá trị liên tục: P(xk|Ci) ước lượng thông qua hàm mật độ: _ xk - n C i (7) P _ xk | Ci i = g _ xk, n Ci, v Ci i = e 2v2C 2rv Ci i i Hình Đầu ra: tập luật sử dụng ID3 Kết quả: Khi sử dụng thuật toán ID3, ta rút 27 tập luật (Hình 4) từ tập liệu Bảng Kết phân lớp dùng ID3 x n = n / xk k=1 đó, µ: Giá trị trung bình; σ: Độ lệch chuẩn: x v = n - / k = _ xk - n i (8) (9) Tóm lại, để phân lớp mẫu chưa biết X, ta tính: P(X|Ci )P(Ci ) cho Ci , gán X vào lớp Ci cho P(X|Ci )P(Ci ) lớn max e P dCi Hình Kết xác nhận phân lớp ID3 2.1.2 Kết thử nghiệm dùng ID3 Bằng phương pháp tính tỷ số phần trăm ta có kết Bảng 2: - Trường hợp 1: Phân loại xác: 638 trường hợp, chiếm 98.1538%; 78 Ci d C % P_ xk | Ci ino n k=1 (10) 2.2.1 Thử nghiệm toán dùng Bayes Bài báo sử dụng thuật toán Bayes giải toán phần mềm Weka với liệu sử dụng cho thuật tốn ID3; có kết phân lớp đánh sau: Khoa học & Công nghệ - Số 14/Tháng - 2017 Journal of Science and Technology ISSN 2354-0575 Bảng Kết phân lớp dùng Bayes 2.2.2 Kết thử nghiệm dùng Bayes Từ Bảng sử dụng phương pháp đánh giá theo phần trăm ta có: - Phân loại xác: 648 trường hợp, chiếm 99.6923%; - Phân loại khơng xác: trường hợp chiếm 0.3077% Bảng Ma trận nhầm lẫn dùng Bayes Bảng 5, sử dụng phương pháp truyền thống: tính ma trận nhầm lẫn Ta nhận thấy: có trường hợp lớp Yes bị phân lớp nhầm sang lớp No; trường hợp lớp No bị phân lớp nhầm sang lớp Yes So sánh độ đo phân lớp ID3, Bayes Từ bảng ma trận nhầm lẫn Bảng Bảng ta tính độ đo hiệu việc phân lớp: Precision, Recall, Accuracy theo cơng thức [5] cho hai thuật tốn ID3 Bayes Bảng 6: Bảng Các độ đo thuật toán ID3, Bayes ID3 Bayes Precision Recall Accuracy 0.9615 0.9803 0.9901 0.9815 0.9969 Từ Bảng ta thấy, với toán phân loại chất lượng học sinh Trường Cao đẳng Nghề Xây dựng Quảng Ninh sử dụng thuật tốn Bayes có độ xác cao sử dụng thuật tốn ID3 Ngồi ra, ta rút đặc điểm hai phương pháp: Điểm giống ID3 Bayes: + Cả hai phương pháp mơ hình học có giám sát, nghĩa phải có tập liệu mẫu huấn luyện để chương trình “học” qua ví dụ rút đặc trưng dùng cho việc gán nhãn + Đều biết trước đầu ra: số nhãn Điểm khác ID3 Bayes: + Thuật toán ID3 xây dựng định với nút gán nhãn rút tập luật if-then tương ứng + Thuật toán Bayes ước lượng xác suất mẫu Nếu xác suất mẫu gần với giá trị lớp, ta gán mẫu cho lớp Kết luận Đóng góp chủ yếu báo thử nghiệm phân loại chất lượng học sinh trường Cao đẳng Nghề Xây dựng sử dụng thuật toán ID3 Bayes với vài kết khả quan ứng dụng cho trường tương tự Căn kết đó, nhà trường có thơng tin xác, nhanh phần mềm chất lượng học sinh để đưa biện pháp dạy học có hiệu Hướng nghiên cứu tiếp theo: Chúng thử nghiệm toán với khối lượng mẫu lớn để đánh giá độ tin cậy thuật toán phân loại học sinh trường nghề Nghiên cứu, ứng dụng thuật toán tiên tiến khác C4.5 hay C5.0 thay cho ID3 để xử lý trường hợp thiếu liệu đặc trưng, nâng cao hiệu suất tăng cường độ tối ưu cho ứng dụng Tài liệu tham khảo [1] Trần Cao Đệ, Phạm Nguyên Khang (2012), Phân loại văn với máy học Vector hỗ trợ định, Tạp chí Khoa học 2012:21a 52-63, Đại học Cần Thơ [2] Nguyễn Quang Hoan (2007), Nhập mơn trí tuệ nhân tạo, Học viện Cơng nghệ Bưu Viễn thơng [3] Nguyễn Dương Hùng (2000), Hạn chế rủi ro tín dụng dựa thuật tốn phân lớp, Khoa Hệ thống Thông tin Quản lý – Học viện Ngân hàng [4] Đỗ Thanh Nghị (2008), Phương pháp K láng giềng - K Nearest Neighbors, Khoa Công nghệ thông tin – Đại học Cần Thơ [5] Đỗ Thanh Nghị (2008), Phương pháp học Bayes - Bayesian Classification, Khoa Công nghệ thông tin – Đại học Cần Thơ [6] Võ Văn Tài (2012), Phân loại phương pháp Bayes từ số liệu rời rạc, Tạp chí Khoa học 2012:23b 69-78, Đại học Cần Thơ [7] Andrew Colin (1996), Building Decision Trees with the ID3 Algorithm, Dr Dobbs Journal Khoa học & Công nghệ - Số 14/Tháng - 2017 Journal of Science and Technology 79 ISSN 2354-0575 [8] ShwetaKharya, SunitaSoni (2016), Weighted Naive Bayes Classifier: A Predictive Model for Breast Cancer Detection, International Journal of Computer Applications (0975 – 8887) Volume 133 – No.9, January 2016, Bhilai Institute of Technology, Durg C.G India [9] Megha Gupta, Naveen Aggarwal (2010), Classification Techniques Analysis, UIET Punjab University Chandigarh INDIA -160014 [10] Deepa S Deulkar, R R Deshmukh (2016), Data Mining Classification, Imperial Journal of Interdisciplinary Research (IJIR) Vol-2, Issue-4, 2016 ISSN: 2454-1362, H.V.P.M COET, Amaravati, India CLASSIFICATION OF THE STUDENT’S QUALITY IN THE QUANG-NINH BUILDING VOCATIONAL COLLEGE USING MACHINE LEARNING Abstract: Data classification is one of the major research areas of Data Mining This paper is going to analyze, evaluate and compare two typical algorithms in data classifiers: ID3 and Bayes algorithms Next, the article applies these algorithms for classifying the student’s quality in the Quang-Ninh building vocational college using Weka software This is a application in order to help for evaluating the quality of teaching and learning in the vocational college today Keyworks: Machine Learning, Classification, Decision Tree, ID3Algorithm, BayesAlgorithm 80 Khoa học & Công nghệ - Số 14/Tháng - 2017 Journal of Science and Technology ... thấy, với toán phân loại chất lượng học sinh Trường Cao đẳng Nghề Xây dựng Quảng Ninh sử dụng thuật tốn Bayes có độ xác cao sử dụng thuật tốn ID3 Ngồi ra, ta rút đặc điểm hai phương pháp: Điểm giống... yếu báo thử nghiệm phân loại chất lượng học sinh trường Cao đẳng Nghề Xây dựng sử dụng thuật toán ID3 Bayes với vài kết khả quan ứng dụng cho trường tương tự Căn kết đó, nhà trường có thơng tin... mềm chất lượng học sinh để đưa biện pháp dạy học có hiệu Hướng nghiên cứu tiếp theo: Chúng thử nghiệm toán với khối lượng mẫu lớn để đánh giá độ tin cậy thuật toán phân loại học sinh trường nghề