Hình 32. Giao diện thơng báo thuật tốn được triển khai thành cơng
Sau khi hồn tất việc khởi chạy thuật tốn, chúng tôi thu được tập kết quả là những luật kết hợp giữa các tập hạng mục có trong dữ liệu điểm của sinh viên ngành MIS với số lượng luật là 211 luật.
Tuy nhiên, tuỳ theo mức thiết lập xác suất xuất hiện tối thiểu (Minimum Probability) và độ hữu dụng tối thiểu của kết quả (Minimum Importance) sẽ cho ra số lượng luật khác nhau. Các chỉ số này khi được thiết lập càng cao thì số lượng luật kết hợp được sinh ra sẽ giảm đi đáng
thiểu của luật kết hợp sinh ra là 1.00 - điều này có nghĩa là bất kì tập hạng mục nào cũng sẽ xuất hiện luật này. Ngồi ra, chúng tơi sẽ thiết lập chỉ số hữu dụng tối thiểu của kết quả đầu ra là 0 vì chúng tơi chỉ quan tâm đến chỉ số tỉ lệ xuất hiện (Probability), những kết quả được sinh ra sẽ được chúng tôi xử lý thông qua các tiêu chuẩn sàng lọc luật kết hợp được trình bày ở mục 4.5 của báo cáo.
Hình 33. Những luật kết hợp thu được từ thuật toán Apriori
4.5 Xử lý, sàng lọc kết quả thu được
Sau khi đã thu được những luật kết hợp từ hình số 33, chúng tơi sao chép những luật này vào 1 trang tính trên Google Spreadsheet để thực hiện việc sàng lọc những luật kết hợp có ý nghĩa.
Trước khi thực hiện việc sàng lọc, chúng tơi tiến hành chuẩn hố lại kết quả thu được để dễ dàng quan sát và sàng lọc.
Bước 1: Chúng tôi loại bỏ hồn tồn các luật kết hợp khơng có ý nghĩa thực tiễn.
Chẳng hạn như có MIS211F thì có MIS212P – nghĩa là rớt mơn MIS211 thì đậu mơn MIS212. Ngồi ra, những trường hợp ngược lại như là đậu mơn A thì rớt mơn B thì nhóm chúng tơi sẽ loại bỏ trước để sàng lọc dễ dàng hơn.
Bước 2: Chúng tôi sử dụng các hàm Right, Left, Len kết hợp với hàm Find trong
Excel để tách điều kiện và kết quả của những luật kết hợp thu được. Trong cơng thức ở hình số 34, hàm Find là hàm tìm vị trí của giá trị F xuất hiện đầu tiên trong cột C2 (kết quả thu được), sau đó dùng hàm Left để lấy các giá trị từ bên trái đến vị trí đã tìm ở trên. Cơng thức này có thể thay đổi giá trị Find từ “F” thành “P” để phù hợp với các luật như AP -> BP (Đậu môn A sẽ đậu mơn B).
Hình 34. Chuẩn hố kết quả thu được - Bước 2(1)
Để tách kết quả thu được từ cột luật kết hợp, chúng tôi sử dụng hàm như hình 35. Để xác định được vị trí của kết quả ở trong cột rules, chúng tôi sử dụng hàm Len (hàm đếm số ký tự). Sau khi trừ tổng ký tự của cột rules với điều kiện nếu số giá trị cịn lại nhỏ hơn hoặc bằng 10 thì chứng tỏ số ký tự của kết quả có giá trị bằng với số giá trị cần tìm và trừ đi thêm ra 3 ký tự “->” thì sẽ thu được vế kết quả. Trong trường hợp số giá trị còn lại lớn hơn 10 ký tự thì
Hình 35. Chuẩn hố kết quả thu được - Bước 2(2)
Bước 3: Sau khi biết được mã môn học của hai vế điều kiện và kết quả được tách từ
kết quả thu được ở mục (x), chúng tơi sử dụng hàm VLOOKUP để tìm kiếm tên mơn học để thuận tiện hơn cho việc sàng lọc thủ công theo các tiêu chuẩn ở mục (x).
Đối với môn học của vế điều kiện, chúng tôi sử dụng hàm Left để lấy các ký tự từ bên trái cột E2 (ngoại trừ ký tự cuối).
Hình 36. Cơng thức tìm tên mơn học cho vế điều kiện
Đối với môn học của vế kết quả, chúng tôi sử dụng hàm Len để xác định số lượng ký tự của vế kết quả. Trong trường hợp tổng số ký tự nhỏ hơn 7, chúng tôi kết hợp hàm VLOOKUP và hàm LEFT để lấy các ký tự trong cột kết quả (ngoại trừ ký tự cuối). Ngược lại, nếu tổng số ký tự lớn hơn 7, chúng tôi kết hợp ba hàm VLOOKUP, MID và FIND để tìm các ký tự sau dấu khoảng trắng để lấy mã mơn để tra tên mơn học.
Hình 37. Cơng thức tìm tên mơn học cho vế điều kiện
Bước 4: Áp dụng tiêu chí sàng lọc luật để tiến hành sàng lọc bước cuối, thứ tự sàng
lọc được thực hiện như sau:
Bước 4.1: Chỉ lấy những mơn có ý nghĩa đồng nhất. Chúng tôi sẽ loại bỏ những
luật kết hợp khơng có ý nghĩa đồng nhất về mặt ý nghĩa thự tế. Ví dụ như có MIS201F thì sẽ có MK203P, tức là rớt mơn MIS201 thì sẽ đậu mơn MK203, điều này trên thực tế khơng có ý nghĩa cho đề xuất.
Bước 4.2: Chỉ lấy những mơn thoả điều kiện theo lộ trình học tập của ngành MIS
khố 18. Sau khi đã thu được kết quả từ bước 4.1, chúng tơi tiếp tục lọc theo lộ trình ngành MIS khố 18. Ví dụ, nếu ta có luật kết hợp là có MIS202P thì sẽ có MIS201P (tức là nếu đậu mơn MIS202 thì đậu mơn MIS201). Nhưng thực tế, mơn MIS201 phải học trước mơn MIS202 theo lộ trình học tập ngành MIS khố 18. Do đó, những luật kết hợp tương tự như thế này sẽ bị loại bỏ.
Bước 4.3: Chọn ra các mơn học có cùng đóng góp vào 1 năng lực lõi trong ma
trận năng lực lõi của ngành MIS. Ở bước cuối cùng này, chúng tôi sẽ xem xét để loại bỏ những môn học khơng cùng đóng góp vào 1 trong 7 năng lực lõi của sinh viên ngành MIS theo chương trình đào tạo ngành MIS. Ví dụ với cặp luật AP (đậu mơn A) -> BP (đậu mơn B), mơn A đóng góp vào năng lực lõi ngành MIS là PL01, PL02, PL03, PL04, PL05 và mơn B có đóng góp vào năng lực PL03, PL04, PL05 thì khi đó chúng tơi sẽ giữ lại luật kết hợp AP -> BP vì chúng có cùng đóng góp vào chung 1 năng lực lõi trong ma trận năng lực lõi.
Chúng tôi tiếp tục thực hiện lại quá trình khai thác (mục 4.4) với chỉ số kiểm thử dữ liệu (testing) lần lượt là 0%, 10%, 20%, 30%, 50% và thực hiện các bước xử lý, sàng lọc kết quả thu được và dùng những kết quả này để so trùng với những lần thực hiện với các chỉ số kiểm thử dữ liệu khác để tăng tính chính xác của kết quả đầu ra.
Với từng chỉ số kiểm thử dữ liệu (testing), chúng tôi thu được các kết quả như sau: 0% tỉ lệ kiểm thử: 561 luật được sinh ra, trong đó có 112 luật phù hợp.
20% tỉ lệ kiểm thử: 577 luật được sinh ra, trong đó có 121 luật phù hợp. 30% tỉ lệ kiểm thử: 533 luật được sinh ra, trong đó có 120 luật phù hợp. 50% tỉ lệ kiểm thử: 651 luật được sinh ra, trong đó có 183 luật phù hợp.
Kết hợp tất cả những luật kết hợp trùng khớp từ 5 lần thực hiện khai thác, chúng tôi thu được kết quả cuối cùng là 36 luật kết hợp.
PHẦN 5: QUÁ TRÌNH KHAI THÁC DỮ LIỆU CHO MỤC ĐÍCH ĐƯA RA CẢNH BÁO HỌC TẬP CHO SINH VIÊN
Do mỗi tập dữ liệu cần được chuẩn hố riêng theo các hình thức khác nhau để phục vụ cho mục đích khai thác dữ liệu khác nhau. Tuy nhiên, giai đoạn trích xuất cho hai mơ hình khai thác là như nhau. Vì vậy, chúng tơi sẽ khơng trình bày lại giai đoạn trích xuất dữ liệu.
5.1 Chuẩn hố
Từ bảng dữ liệu thơ như hình 8, chúng tơi loại bỏ các trường dữ liệu như ID, INPUT, KETQUASHORT để thu được bảng dữ liệu như sau:
Hình 38. Bảng dữ liệu lưu thơng tin điểm trung bình của sinh viên
Chúng tôi tiếp tục thực hiện việc loại bỏ hai trường dữ liệu là TBMHSO và HOCKY nhằm phục vụ cho mục đích tính tổng số tín chỉ của sinh viên. Sau đó, chúng tơi thực hiện việc xố các giá trị lặp lại để làm mịn dữ liệu. Khi một sinh viên khi rớt một mơn học, điểm của mơn học đó mà sinh viên đạt được vẫn được lưu vào bảng điểm thành phần của sinh viên, nhưng tín chỉ của mơn học mà sinh viên rớt sẽ khơng được tính. Ngồi ra, một số sinh viên cũng có xu hướng học cải thiện điểm số. Hai nguyên nhân trên là lý do chúng tơi thực hiện việc xố các giá trị trùng lặp và các hàng dữ liệu có KETQUA là “FAIL”, tức là nếu sinh viên
rớt mơn nào, thì chúng tơi sẽ khơng tính mơn đó vào số tín chỉ hiện tại của sinh viên. Trong trường hợp sinh viên đó học cải thiện, chúng tôi sẽ chỉ lấy dữ liệu của lần học đầu tiên.
Hình 39. Bảng thống kê tổng số tín chỉ của sinh viên và tiến độ so với lộ trình học của ngành HQ Khố 18
Nhóm chúng tơi sau khi thống kê lại tổng số tín chỉ của sinh viên HQ khoá 18, chúng tơi thu được bảng thơng tin như hình 39. Từ hình 39, chúng tơi có thể dễ dàng nhận thấy đâu là những sinh viên đang đúng, trễ lộ trình học của ngành MIS khố 18.
Từ bảng dữ liệu như hình 38, Chúng tơi tiếp tục thực hiện việc loại bỏ những mơn học khơng thuộc trong lộ trình của khố 18. Cụ thể, chúng tơi chỉ giữ lại những hàng dữ liệu điểm của những môn học sau đây:
Chúng tơi tiếp tục tạo một trang tính Excel mới, sử dụng 12 lần hàm VLOOKUP để lấy kết quả của những mơn học của từng sinh viên tương ứng.
Hình 41. Bảng dữ liệu đã được chuẩn hố (chưa loại bỏ giá trị N/A)
Như hình 41, những giá trị N/A khơng hề mang ý nghĩa là lỗi mà sẽ được hiểu là sinh viên chưa học mơn học đó. Bảng dữ liệu này hồn tồn có thể được sử dụng để tiến hành khai thác. Hoặc theo cách khác, chúng ta có thể loại bỏ các mơn học có giá trị N/A trong đó để bộ dữ liệu trơng tinh gọn hơn (hình 42).
Hình 42. Bảng dữ liệu đã được chuẩn hố cho mục đích khai thác (đã xử lý giá trị N/A)
5.2 Tải dữ liệu vào SQL Server
Ở giai đoạn này, chúng tôi chỉ cần lặp lại các bước như mục 4.3 của đề án.
Hình 44. Đặt tên cho Database nơi sẽ chứa dữ liệu tải từ tệp Excel
Chúng tơi chọn hình thức tải dữ liệu lên SQL Server là Copy dữ liệu từ các bảng ở Excel.
Hình 46. Chọn trang tính cần tải lên SQL Server
Ở đây, chúng tơi chọn trang tính “Mining” và “Mining2” để tải lên. Trang tính này là nơi lưu trữ bảng dữ liệu như hình 41 và 42.
Hình 48. Bảng dữ liệu đã được tải lên SQL Server thành công
5.3 Thực hiện khai thác
Chúng tôi thực hiện tạo 1 dự án sử dụng tính năng Analysis Services Multidimensional and Data Mining Project của Microsoft Visual Studio.
Hình 50. Thêm nguồn dữ liệu cho công đoạn khai thác dữ liệu (Bước 2)
Ở bước này, chúng tôi thiết lập cổng kết nối dữ liệu từ Microsoft Analysis Services đến SQL Server.
Hình 52. Định dạng cách thức kết nối dữ liệu với SQL Server (Bước 2.2)
Hình 53. Đặt tên cho nguồn dữ liệu (Bước 2.3)
Tiếp theo đó, chúng tơi bắt đầu lần lượt tạo view cho từng bảng dữ liệu để tiến hành khai thác dữ liệu.
Hình 54. Tạo view cho nguồn dữ liệu
Hình 56. Chọn logic quan hệ giữa các trường dữ liệu
Hình 58. Đặt tên cho View
Hình 59. Thiết lập Logical Primary Key cho thuộc tính MASV trong từng View
Chúng tơi tiếp tục thực hiện tương tự với bảng dữ liệu “Mining(2)” để thu được 2 mơ hình như bên dưới.
Hình 60. View Mining Canh Bao 1
Hình 61. View Mining Canh Bao 2
Từ hai view thu được bên trên, chúng tôi tiến hành khai thác dữ liệu bằng thuật toán Decision Trees như sau:
Bước 1: Mở giao diện Data Mining Wizard
Bước 2: Chọn phương pháp sử dụng dữ liệu - nguồn dữ liệu sẵn có Bước 3: Tạo cấu trúc khai thác dữ liệu - chọn thuật toán Decision Trees Bước 4: Chọn view dữ liệu muốn khai thác
Bước 5: Xác định kiểu của bảng dữ liệu
Bước 6: Xác định các Key, Input, Output của dữ liệu Bước 7: Điều chỉnh kiểu dữ liệu
Bước 8: Thiết lập chỉ số testing cho mơ hình khai thác Bước 9: Đặt tên cho cấu trúc khai thác
Hình 62. Bắt đầu thực hiện khai thác dữ liệu (Bước 1)
Hình 64. Chọn thuật tốn khai thác dữ liệu – Decision Trees (Bước 3)
Hình 66. Chọn loại bảng (Bước 5)
Hình 68. Điều chỉnh kiểu dữ liệu cho từng trường dữ liệu (Bước 7)
Hình 70. Đặt tên cho mơ hình khai thác (Bước 9)
Hình 72. Các chỉ số thước đo cho thuật tốn
Hình 73. Kết quả của mơ hình khai thác
Chúng tơi tiếp tục thử nghiệm nhiều lần mơ hình này với bảng dữ liệu chưa loại bỏ các mơn học có các giá trị missing và bảng dữ liệu đã bỏ các giá trị missing tương ứng với các chỉ số testing khác nhau lần lượt là 0%, 10%, 20%, 30% và thu được các cây quyết định như sau:
Với 0% testing, chúng tôi thu được cây quyết định bên dưới. Ý nghĩa của cây quyết định này là nếu sinh viên MIS Khố 18 hiện tại vẫn chưa hồn tất mơn “Đồ án chuyên ngành MIS” thì các bạn có nguy cơ cao là đang trễ so với lộ trình học. Cịn những bạn đã đậu mơn học này thì sẽ khơng trễ so với lộ trình học.
Hình 74. Cây quyết định với 0% testing (chưa loại bỏ các môn học missing)
Với 10% testing, chúng tôi thu được cây quyết định bên dưới. Ý nghĩa của cây quyết định tương tự với cây quyết định bên trên.
Hình 75. Cây quyết định với 10% testing (chưa loại bỏ các môn học missing)
Với 30% testing, chúng tôi thu được một cây quyết định khác với ba cây ở 3 trường hợp trên. Ý nghĩa của cây quyết định này là nếu sinh viên Khoá 18 ngành MIS hiện tại vẫn chưa hồn tất mơn học “Business System Analysis – Phân tích hệ thống nghiệp vụ” thì các bạn đang trễ hơn so với lộ trình học và ngược lại.
Hình 77. Cây quyết định với 30% testing (chưa loại bỏ giá trị missing)
Với bảng dữ liệu đã loại bỏ các mơn học có chứa giá trị missing, chúng tôi thu được những cây quyết định như bên dưới.
Đối với 0% testing, cây quyết định này thể hiện ý nghĩa rằng nếu sinh viên MIS Khố 18 rớt mơn “Tin học dự bị” hoặc mơn “Luật và đạo đức kinh doanh” hoặc môn “Thống kê trong kinh doanh” thì sẽ có nguy cơ trễ so với lộ trình học. Với hai mơn như “Kinh tế vi mơ – QT101” và mơn “KT204 – Ngun lý kế tốn” thì chúng tơi sẽ loại bỏ hai nhánh này do giá trị màu xanh (đúng lộ trình) lớn hơn so với giá trị màu đỏ (trễ so với lộ trình). Điều này khiến cho luật của các nhánh cây quyết định không phù hợp so với thực tế.
Với 10% testing, chúng tôi thu được cây quyết định như bên dưới. Ý nghĩa của cây quyết định này là nếu sinh viên MIS khoá 18 rớt môn “Kinh tế vi mô” hoặc “Tin học dự bị” hoặc mơn “Thống kê trong kinh doanh” thì các bạn có nguy cơ cao sẽ trễ so với lộ trình học.
Hình 79. Cây quyết định với 10% testing (đã loại bỏ giá trị missing)
Với 20% testing, chúng tôi thu được cây quyết định mang ý nghĩa rằng nếu sinh viên MIS khố 18 rớt mơn “Luật và đạo đức kinh doanh” hoặc mơn “Tin học dự bị” thì các bạn có nguy cơ cao sẽ trễ so với lộ trình. Hai nhánh QT101 và KT204 ở trường hợp này sẽ bị loại bỏ