1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên

70 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Tác giả Hồ Hiếu
Người hướng dẫn TS. Võ Thị Ngọc Châu, TS. Bùi Hoài Thắng, PGS.TS Lê Hoài Bắc
Trường học Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Khoa học máy tính
Thể loại Luận văn thạc sĩ
Năm xuất bản 2015
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 70
Dung lượng 1,24 MB

Cấu trúc

  • CHƯƠNG 1: GIỚI THIỆU (13)
    • 1.1 Lý do chọn đề tài (13)
    • 1.2 Mục tiêu đề tài (14)
    • 1.3 Ý nghĩa của đề tài (14)
    • 1.4 Đối tượng và phạm vi nghiên cứu (0)
    • 1.5 Phương pháp nghiên cứu (15)
    • 1.6 Cấu trúc luận văn (16)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (16)
    • 2.1 Tổng quan về bài toán phân lớp (17)
    • 2.2 Các thuật toán sử dụng trong đề tài (18)
    • 2.3 Phát hiện vùng chồng lấp (19)
    • 2.4 Dữ liệu chồng lấp (20)
  • CHƯƠNG 3: CÁC CÔNG TRÌNH LIÊN QUAN (16)
    • 3.1 Công trình liên quan đến giáo dục (22)
    • 3.2 Công trình xử lý chồng lấp (24)
    • 3.3 Đối chiếu các công trình liên quan đến luận văn (27)
  • CHƯƠNG 4: ĐỀ XUẤT GIẢI PHÁP PHÂN LỚP DỮ LIỆU CHỒNG CHẤT CHO BÀI TOÁN “DỰ BÁO SỚM TRẠNG THÁI HỌC TẬP CỦA SINH VIÊN” (28)
    • 4.1 Định nghĩa bài toán (28)
    • 4.2 Xây dựng mô hình (29)
    • 4.3 Đánh giá mô hình (31)
    • 4.4 Sử dụng mô hình (32)
  • CHƯƠNG 5: KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ (34)
    • 5.1 Môi trường và tập dữ liệu thực nghiệm (34)
    • 5.2 Phương pháp thực nghiệm (36)
    • 5.3 Kết quả thực nghiệm (46)
  • CHƯƠNG 6: TỔNG KẾT (66)

Nội dung

44 Hình 11: Biểu đồ kết quả phân lớp của các thuật toán khi chưa xử lý dữ liệu chồng lấp 47 Hình 12: Biểu đồ kết quả phân lớp tập dữ liệu năm 2 trên các vùng dữ liệu chồng lấp và không c

GIỚI THIỆU

Lý do chọn đề tài

Trong những năm gần đây, khai phá dữ liệu thu hút rất nhiều sự chú ý trong lĩnh vực công nghệ thông tin nói riêng và xã hội nói chung Bởi vì chúng ta đang có sẵn lượng dữ liệu rất lớn và mục tiêu cấp thiết trước mắt đó là chuyển đổi những dữ liệu đó trở thành những thông tin và kiến thức có ích Những thông tin và kiến thức thu được có thể sử dụng trong các lĩnh vực như: phân tích thị trường, phát hiện lỗi, kiểm soát quy trình sản xuất và khám phá khoa học [1]

Khai phá dữ liệu trong giáo dục là một lĩnh vực mới nổi, liên quan đến việc phát triển các phương pháp khám phá những dữ liệu độc đáo trong môi trường giáo dục, và sử dụng những phương pháp này để có thể hiểu rõ sinh viên hơn (Được định nghĩa tại website: www.educationaldatamining.org) Và một trong những mục tiêu khi thực hiện khai phá dữ liệu giáo dục đó là có thể dự báo sớm được tình trạng học tập của sinh viên để có thể đưa ra những phương pháp học tập cụ thể khác nhau cho từng sinh viên từ đó nâng cao chất lượng trong giáo dục

Phân lớp dữ liệu là một trong những phương pháp rất hữu ích trong việc khai phá dữ liệu tuy nhiên nó luôn là một vấn đề phức tạp bởi vì dữ liệu trên thực tế luôn bị ảnh hưởng bởi các yếu tố như: dữ liệu bị thiếu (missing data), dữ liệu không cân bằng (imbalance data), dữ liệu bị chồng lấp (overlapping data)…

Trong môi trường giáo dục thì những vấn đề như trên lại thường xuyên xảy ra Ví dụ như khi xét tập dữ liệu điểm kiểm tra, điểm thi của sinh viên, thì sẽ có những sinh viên đã học môn học này nhưng sinh viên khác thì chưa vì thế tập dữ liệu sẽ xảy ra tình trạng bị thiếu; những sinh viên bỏ học sẽ ít hơn những sinh viên đang học từ đó tạo ra sự mất cân đối trong tập dữ liệu; ngoài ra tập dữ liệu giáo dục còn xảy ra tình trạng bị chồng lấpthể hiện ở chỗ những sinh viên đang bị cảnh cáo đuổi học thì là những sinh viên vẫn đang học Vì thế để việc phân lớp dữ liệu giáo dục có thể đạt được hiệu suất phân lớp cao là một thách thức lớn

14 Vấn đề dữ liệu bị chồng lấp là một trong những vấn đề ảnh hưởng lớn đến hiệu suất phân lớp trong tập dữ liệu giáo dục, chính vì thế tôi chọn đề tài“phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên” để giải quyết bài toán dữ liệu bị chồng lấp trong tập dữ liệu giáo dục.

Mục tiêu đề tài

Đề tài nghiên cứu tập dữ liệu kết quả học tập trong hệ thống giáo dục tín chỉ và tập trung nghiên cứu dữ liệu bị chồng lấp Từ đó đưa ra phương pháp để giải quyết bài toán phân lớp dữ liệu giáo dục Mục tiêu chính của đề tài là giải quyết vấn đề dữ liệu bị chồng lấp Đểgiải quyết vấn đề dữ liệu bị chồng lấp, đề tài sử dụng phương pháp phân rã (chia tập dữ liệu huấn luyện thành những tập dữ liệu bị chồng lấp và không bị chồng lấp, từ đó xây dựng từng mô hình riêng trên từng tập dữ liệu đó [20]),sau đó cải thiện hiệu suất phân lớp trên vùng dữ liệu bị chồng lấp bằng cách chia nhỏ vùng dữ liệu chồng lấp ra thành các vùng chồng lấp con và tiến hành xây dựng mô hình trên từng vùng chồng lấp con đó Với mỗi mẫu dữ liệu kiểm tra đưa vào sẽxác định xem nó thuộc mô hình nào, và sử dụng mô hình đó để phân lớp cho mẫu dữ liệu kiểm tra.

Ý nghĩa của đề tài

Trình bày được sự ảnh hưởng của dữ liệu bị chồng lấp trong việc phân lớp dữ liệu

Hiện tại không có nhiều công trình phân lớp dữ liệu trong giáo dục xem xét vấn đề dữ liệu bị chồng lấp Vì thế đề tài đóng góp được một phương pháp giải quyết vấn đề dữ liệu bị chồng lấp trong tập dữ liệu giáo dục Cụ thể là sử dụng phương pháp phân rã để giải quyết bài toán chồng lấp dữ liệu bằng cáchxây dựng từng mô hình riêng trên vùng dữ liệu chồng lấp và vùng dữ liệu không chồng lấp, sau đó cải thiện hiệu suất phân lớp của vùng dữ liệu bị chồng lấp bằng cách phân hoạch vùng dữ liệu chồng lấp thành từng vùng dữ liệu chồng lấp con và xây dựng từng mô hình trên đó Từ đó nâng cao hiệu suất phân lớp đối với tập dữ liệu có tỷ lệ chồng lấp lớn Ý nghĩa thực tiễn

Nền giáo dục là một vấn đề lớn của mỗi quốc gia, là nền tảng cho sự phát triển đất nước

Vì thế nâng cao chất lượng giáo dục luôn luôn là một trong những mục tiêu hàng đầu tại mỗi quốc gia Trong đó nâng cao chất lượng giáo dục trong giai đoạn đại học cũng là một trong những giai đoạn quan trọng Để có thể nâng cao được chất lượng giáo dục cho sinh viên, thì việc phân lớp dữ liệu giáo dục của sinh viên dựa vào dữ liệu học tập trong thời điểm hiện tại là việc vô cùng quan trọng Bởi vì dựa vào những kết quả đó, chúng ta có thể đưa ra những chiến lược học tập khác nhau cho từng sinh viên từ đó có thể hỗ trợ

15 siunh viên hoàn thành chương trình học và tốt nghiệp đúng thời hạn và do đó có thể cải hiện được chất lượng trong giáo dục

1.4 Đối tƣợng và phạm vi nghiên cứu Đốitƣợng nghiên cứu: Đề tài hướng đến việc xây dựng bộ dữ liệu giáo dục tại các trường đại học được học theo quy chế tín chỉ Dữ liệu cụ thể được sử dụng trong đề tài là dữ liệu giáo dục được thu thập tại khoa Khoa Học & Kỹ Thuật Máy Tính, trường Đại Học Bách Khoa TP Hồ Chí Minh trong 4 năm từ 2005 đến 2008 với kích thước dữ liệu là 1334 và có 43 thuộc tính

Phạm vi nghiên cứu của đề tài là phân lớp sinh viên dựa trên tập dữ liệu điểm tổng kết môn học ở mỗi học kỳ của sinh viên Tập dữ liệu này vướng phải ba vấn đề đó là: dữ liệu bị thiếu, dữ liệu không cân bằng và dữ liệu bị chồng lấp

Trong đó vấn đề dữ liệu bị thiếu đã được giải quyết trước đó trong đề tài ―Phân lớp sinh viên dựa trên kết quả học tập trong hệ thống giáo dục tín chỉ‖ [2] Sau khi khảo sát, tôi nhận thấy rằng việc dữ liệu bị chồng lấp ảnh hưởng lớn đến kết quả phân lớp Vì thế mục tiêu của đề tài là giải quyết vấn đề dữ liệu chồng lấp trong tập dữ liệu giáo dục, từ đó nâng cao hiệu suất phân lớp

1.5 Phương pháp nghiên cứu Đề tài sử dụng thuật toán kNN để phát hiện vùng dữ liệu bị chồng lấp Sau đó sử dụng phương pháp phân rã để xây dựng mô hình phân lớp trên các vùng dữ liệuchồng lấp và không chồng lấp Để cải thiện hiệu suất phân lớp trong tập dữ liệu chồng lấp, chúng tôi tiến hành phân hoạch tập dữ liệu chồng lấp bằng thuật toán mean-shift, sau đó sử dụng k- mean để phân hoạch tập dữ liệu huấn luyện, sao cho mỗi cụm trong tập dữ liệu huấn luyện tương ứng với một cụm trong tập dữ liệu chồng lấp Xây dựng các mô hình phân lớp tương ứng với từng cụm của tập dữ liệu huấn luyện sau khi đã được phân hoạch Đánh giá: Quá trình đánh giá sẽ bao gồm 4 bước:

- Bước 1:Xây dựng các mô hình phân lớp mà không xử lý dữ liệu chồng lấp

- Bước 2:Xây dựng mô hình phân lớp khi áp dụng phương phân rã bằng cách xây dựng mô hình phân lớp riêng trên từng vùng chồng lấp và không chồng lấp

- Bước 3:Xây dựng mô hình phân lớp bằng phương pháp phân rã và cải thiện kết quả phân lớp trên vùng chồng lấp bằng cách phân hoạch không gian chồng lấp và xây dựng từng mô hình cụ thể trên từng vùng không gian chồng lấp đã được phân hoạch.

Phương pháp nghiên cứu

Đề tài sử dụng thuật toán kNN để phát hiện vùng dữ liệu bị chồng lấp Sau đó sử dụng phương pháp phân rã để xây dựng mô hình phân lớp trên các vùng dữ liệuchồng lấp và không chồng lấp Để cải thiện hiệu suất phân lớp trong tập dữ liệu chồng lấp, chúng tôi tiến hành phân hoạch tập dữ liệu chồng lấp bằng thuật toán mean-shift, sau đó sử dụng k- mean để phân hoạch tập dữ liệu huấn luyện, sao cho mỗi cụm trong tập dữ liệu huấn luyện tương ứng với một cụm trong tập dữ liệu chồng lấp Xây dựng các mô hình phân lớp tương ứng với từng cụm của tập dữ liệu huấn luyện sau khi đã được phân hoạch Đánh giá: Quá trình đánh giá sẽ bao gồm 4 bước:

- Bước 1:Xây dựng các mô hình phân lớp mà không xử lý dữ liệu chồng lấp

- Bước 2:Xây dựng mô hình phân lớp khi áp dụng phương phân rã bằng cách xây dựng mô hình phân lớp riêng trên từng vùng chồng lấp và không chồng lấp

- Bước 3:Xây dựng mô hình phân lớp bằng phương pháp phân rã và cải thiện kết quả phân lớp trên vùng chồng lấp bằng cách phân hoạch không gian chồng lấp và xây dựng từng mô hình cụ thể trên từng vùng không gian chồng lấp đã được phân hoạch

- Cho cả ba hướng tiếp cận trên ta sử dụng các thuật toán Decision Tree, K-nearest Neighbours (KNN), Support Vector Machine (SVM), AdaBoosting (với mô hình phân lớp cơ sở là SVM), Bagging (với mô hình phân lớp cơ sở là SVM) và Random Forest để xây dựng các mô hình.Lý do khi lựa chọn các thuật toán phân lớp trên nhằm khảo sát được giải pháp đề tài đưa ra có giải quyết tốt trên các loại thuật toán phân lớp hay không Trong đó thuật toán cây quyết định là thuật toán phân lớp tuyến tính; SVM là thuật toán phân lớp phi tuyến; KNN là thuật toán phân lớp lười (lazy); Bagging, AdaBoost, Random Forest là các thuật toán học tổ hợp

- Bước 4:So sánh mô hình: So sánh kết quả phân lớp với 3 hướng tiếp cận trên khi sử dụng cùng thuật toán phân lớp Từ đó đánh giá và đưa ra kết luận về mô hình sau cùng cho hệ hỗ trợ ra quyết định trong giáo dục.

Cấu trúc luận văn

Luận văn bao gồm các phần sau:

Chương 1: Giới thiệu.Giới thiệu bài toán phân lớp đối với tập dữ liệu bị chồng lấp trong lĩnh vực giáo dục; mục đích, đối tượng, phạm vi và phương pháp nghiên cứu của đề tài.

CƠ SỞ LÝ THUYẾT

Tổng quan về bài toán phân lớp

Ngày nay phân lớp dữ liệu (classification) là một trong những hướng nghiên cứu chính của khai phá dữ liệu Thực tế đặt ra nhu cầu là từ một cơ sở dữ liệu với nhiều thông tin ẩn con người có thể trích rút ra các quyết định nghiệp vụ thông minh Phân lớp và dự đoán là hai dạng của phân tích dữ liệu nhằm trích rút ra một mô hình mô tả các lớp dữ liệu quan trọng hay dự đoán xu hướng dữ liệu tương lai Phân lớp dự đoán giá trị của những nhãn xác định (categorical label) hay những giá trị rời rạc (discrete value), có nghĩa là phân lớp thao tác với những đối tượng dữ liệu mà có bộ giá trị là biết trước Trong khi đó, dự đoán lại xây dựng mô hình với các hàm nhận giá trị liên tục Ví dụ mô hình phân lớp dự báo thời tiết có thể cho biết thời tiết ngày mai là mưa, hay nắng dựa vào những thông số về độ ẩm, sức gió, nhiệt độ,… của ngày hôm nay và các ngày trước đó Hay nhờ các luật về xu hướng mua hàng của khách hàng trong siêu thị, các nhân viên kinh doanh có thể ra những quyết sách đúng đắn về lượng mặt hàng cũng như chủng loại bày bán…

Một mô hình dự đoán có thể dự đoán được lượng tiền tiêu dùng của các khách hàng tiềm năng dựa trên những thông tin về thu nhập và nghề nghiệp của khách hàng Trong những năm qua, phân lớp dữ liệu đã thu hút sự quan tâm các nhà nghiên cứu trong nhiều lĩnh vực khác nhau như học máy (machine learning), hệ chuyên gia (expert system), thống kê (statistics) Công nghệ này cũng ứng dụng trong nhiều lĩnh vực khác nhau như: thương mại, ngân hàng, tiếp thị, nghiên cứu thị trường, bảo hiểm, y tế, giáo dục Phần lớn các thuật toán ra đời trước đều sử dụng cơ chế dữ liệu cư trú trong bộ nhớ (memory resident), thường thao tác với lượng dữ liệu nhỏ Một số thuật toán ra đời sau này đã sử dụng kỹ thuật cư trú trên đĩa cải thiện đáng kể khả năng mở rộng của thuật toán với những tập dữ liệu lớn lên tới hàng tỉ bản ghi

Quá trình phân lớp dữ liệu gồm ba bước:

Xây dựng mô hình: Nhằm xây dựng một mô hình mô tả một tập các lớp dữ liệu hay các khái niệm định trước Đầu vào của quá trình này là một tập dữ liệu có cấu trúc được mô tả bằng các thuộc tính và được tạo ra từ tập các bộ giá trị của các thuộc tính đó Trong tập dữ liệu này, mỗi phần tử dữ liệu được giả sử thuộc về một lớp định trước, lớp ở đây là giá trị của một thuộc tính được chọn làm thuộc tính gán nhãn lớp hay thuộc tính phân lớp (class label attribute) Đầu ra của bước này thường là các quy tắc phân lớp dưới dạng luật dạng if-then, cây quyết định, công thức logic, hay mạng nơron… Đánh giá mô hình: Sử dụng mô hình phân lớp đã xây dựng được, tiến hành phân lớp cho một tập dữ liệu kiểm tra Và sử dụng độ chính xác (Accuracy) để đánh giá xem hiệu suất phân lớp của mô hình đã xây dựng được Độ chính xác (accuracy) của bộ phân lớp trên

18 tập kiểm tra cho trước là phần trăm của các mẫu trong trong tập kiểm tra được bộ phân lớp xếp lớp đúng

Sử dụng mô hình: Sau khi đánh giá mô hình, sử dụng mô hình phân lớp có độ chính xác chấp nhận được để phân lớp dữ liệu.

Các thuật toán sử dụng trong đề tài

Là một cây phân cấp có cấu trúc được dùng để phân lớp các đối tượng bằng một chuỗi các luật Trong lĩnh vực học máy, cây quyết định là một kiểu mô hình dự báo, nghĩa là một ánh xạ từ các quan sát về một sự vật,hiện tượng tới các kết luận về giá trị mục tiêu của sự vật,hiện tượng Mỗi một nút trong (internal node) tương ứng với một biến; đường nối giữa nó với nút con của nó thể hiện một giá trị cụ thể cho biến đó Mỗi nút lá đại diện cho giá trị dự đoán của biến mục tiêu, cho trước các giá trị của các biến được biểu diễn bởi đường đi từ nút gốc tới nút lá đó

Support Vector Machine là một phương pháp học có giám sát được sử dụng trong phân lớp và trong phân tích hồi quy SVM là một thuật toán phân lớp nhị phân Trong mô hình

SVM, không gian dữ liệu huấn luyện ban đầu sẽ được ánh xạ vào một không gian đặc trưng, từ đó lựa chọn ra một siêu phẳng phân chia dữ liệu thành hai lớp sao cho khoảng cách từ mỗi lớp đến siêu phẳng đó là lớn nhất Một dữ liệu mới đưa vào cũng được ánh xạ vào cùng không gian với tập dữ liệu huấn luyện, từ đó sẽ xác định nó thuộc vào lớp nào bằng cách xác định nó nằm phần bên nào của siêu phẳng

K-nearest neighbours là thuật toán phân lớp các đối tượng dựa vào khoảng cách giữa đối tượng cần phân lớp với tất cả các đối tượng có trong tập huấn luyện Một đối tượng được phân lớp dựa vào K láng giếng của nó (hay nói cách khác là K đối tượng trong tập dữ liệu huấn luyện gần nó nhất), nó sẽ thuộc về lớp mà đa số các láng giềng của nó thuộc về

Boosting là sự kết hợp các bộ phân lớp yếu (hay các bộ phân lớp cơ sở) để tạo nên một bộ phân lớp mạnh.Adaboost là một thuật toán sử dụng kỹ thuật Boosting được đưa ra bởi Freund và Schapire vào 1996 Điểm cải tiến của Adaboost là ta sẽ gán cho mỗi mẫu một trọng số Ở mỗi vòng lặp của quá trình huấn luyện, khi một bộ phân lớp yếu y i đã được

19 xây dựng, ta sẽ tiến hành cập nhật trọng số cho các mẫu Việc cập nhật này được tiến hành như sau: ta sẽ tăng trọng số của các mẫu bị phân lớp sai bởi bộ phân lớp yếu y i và giảm trọng số của các mẫu được phân lớp đúng bởi y i Bằng cách này, ở vòng lặp kế, ta sẽ xây dựng bộ phân lớp yếu y i+1 theo hướng: tập trung vào các mẫu bị phân lớp sai bởi bộ phân lớp yếu trước đó Cuối cùng, để có được bộ phân lớp mạnh, ta sẽ kết hợp tuyến tính các bộ phân lớp yếu đã tìm được lại với nhau Mỗi bộ phân lớp yếu sẽ được đánh một trọng số tương ứng với độ tốt của bộ phân lớp yếu đó

Phương pháp Bagging hay còn gọi là Boostrap aggregating là thuật toán học tổ hợp Cho một tập dữ liệu huấn huyện D có độ lớn là n, thuật toán bagging sẽ tạo ra m tập dữ liệu huấn luyện mới bằng cách lấy mẫu có hoàn lại (có nghĩa là một cá thể có thể xuất hiện nhiều lần trong một lần lấy mẫu) từ tập dữ liệu huấn luyện D ban đầu Từ đó tạo ra m bộ phân lớp trên m tập dữ liệu mới được sinh ra Một mẫu dữ liệu kiểm tra đi vào sẽ đi qua m bộ phân lớp và kết quả phân lớp cuối cùng được xác định bằng phương pháp biểu quyết (voting) của các bộ phân lớp mới

Là sự kết hợp giữa giải thuật phân lớp cây quyết định và phương pháp boostrap để phân lớp Tạo ra một tập hợp các cây quyết định không cắt nhánh, mỗi cây được xây dựng trên một tập mẫu boostrap.Kết quả cuối cùng được rút ra bằng cách sử dụng phương pháp biểu quyết tất cả các cây con tạo ra từ tập dữ liệu boostrap.

Phát hiện vùng chồng lấp

Ta có thể sử dụng thuật toán KNN để phát hiện ra vùng không gian dữ liệu bị chồng lấp, được trình bày trong công trình [5]

Hình 1: Xác định không gian dữ liệu chồng lấp(công trình [5]) Ý tưởng chính của phương pháp như sau Tìm k láng giềng gần nhất của tất cả các mẫu dữ liệu có trong tập dữ liệu, sau đó xét các trường hợp có thể xảy ra như sau:Nếu như k láng giếng gần nhất và mẫu dữ liệu đó đều thuộc về một lớp thì mẫu dữ liệu đó nằm trong vùng không chồng lấp (như mẫu B); nếu như với k láng giếng gần nhất đều có dữ liệu ở nhiều lớp thì mẫu dữ liệu đang xét nằm trong vùng không gian bị chồng lấp và nếu với k láng giếng gần nhất không có mẫu dữ liệu nào thuộc lớp của mẫu dữ liệu đang xét thì mẫu dữ liệu đó là dữ liệu nhiễu.

CÁC CÔNG TRÌNH LIÊN QUAN

Công trình liên quan đến giáo dục

CÔNG TRÌNH 1: Mining Educational Data to Analyze Students’ Performance 2011 [3] Đặc điểm tập dữ liệu

- Dữ liệu 50 sinh viên đang học thạc sỹ về ứng dụng máy tính, bao gồm 8 thuộc tính:

PSM – điểm kiểm tra đầu vào khóa học, CTG – bài kiểm tra trong lớp, SEM – đánh giá của các bài thuyết trình, ASS – bài tập lớn, GP – Các kỹ năng chung, ATT – điểm danh trên lớp, LW – làm việc tại phòng thí nghiệm và ESM – điểm kiểm tra cuối khóa

- Sử dụng các thuật toán mở rộng của cây quyết định để phân lớp như: ID3, ASSITANT, C4.5

- Từ việc sử dụng thuật toán cây quyết định để phân lớp cho tập dữ liệu sinh viên sử dụng trong công trình này, ta có thể biểu diễn tri thức dưới dạng mệnh đề IF-THEN

CÔNG TRÌNH 2: Predicting student failure at school using genetic programming and different data mining approaches with high dimensional and imbalanced data [19] Đặc điểm tập dữ liệu

- Dữ liệu của 670 sinh viên trung học Zacatecas, México được thu thập từ tháng 8 đến tháng 12 năm 2010 Gồm 77 thuộc tính như: tuổi, số anh chị em, lớp/nhóm, hút thuốc, trung bình kiểm tra…

- Phân thành 2 lớp Pass và Fail, lớp đa số là lớp Pass (610) và lớp thiểu số là Fail (60)

- Áp dụng hướng tiếp cận lựa chọn đặc trưng để chọn ra những đặc trưng quan trọng từ đó nâng cao hiệu suất phân lớp Trong đề tài này từ 77 đặc trưng, người ta lựa chọn ra 15 đặc trưng tốt nhất để thực hiện phân lớp Việc hiện thực lựa chọn đặc trưng được thực hiện bằng Weka

- Thuật toán sử dụng trong quá trình phân lớp bao gồm 10 loại thuật toán khác nhau:

- Xử lý vấn đề dữ liệu không cân bằng bằng 2 phương pháp:

23 o Áp dụnghướng tiếp cận tiền xử lý dữ liệu sử dụng phương pháp SMOTE để tái cân bằng dữ liệu Trong công trình này chỉ thực hiện tái cân bằng trên tập dữ liệu đã được lựa chọn đặc trưng (gồm 15 đặc trưng tốt nhất) o Áp dụng hướng tiếp cận theo mức thay đổi thuật toán, áp dụng phương pháp cost- sensitive learning vào trong thuật toán để phân lớp dữ liệu

- Sử dụng các độ đo như: Tỷ lệ phân lớp dương đúng (TP rate), tỷ lệ phân lớp âm đúng (TN rate), độ đo Accuracy, Geometric Mean để đo hiệu suất phân lớp của các phương pháp trên

- Kết quả phân lớp đúng khi lựa chọn đặc trưng (15 đặc trưng tốt nhất)đạt hiệu suất cao hơn so với khi không lựa chọn đặc trưng (77 đặc trưng) Cụ thể là: o Khi áp dụng lựa chọn đặc trưng thì các độ đo như TN rate và Geometric Mean thường cao hơn khi không lựa chọn đặc trưng o Tuy nhiên độ đo mà ta quan tâm nhất lại là TN rate – tỷ lệ phân lớp đúng ở lớp thiểu số, trong khi đó khi áp dụng lựa chọn đặc trưng thì TN rate đạt giá trị nhỏ nhất là 41,7 trong khi đó tỷ lệ TN rate có giá trị nhỏ nhất khi không áp dụng lựa chọn đặc trưng chỉ là 25% o Tỷ lệ phân lớp đúng ở lớp thiểu số không được cao bởi vì sự ảnh hưởng của dữ liệu không cân bằng

- Khi áp dụng tái cân bằng dữ liệu sử dụng SMOTE: Phần lớn giá trị các độ đo đều được cải thiện, nhất là đối với độ đo TN rate được cải thiện rõ rệt Ví dụ với thuật toán ONE-R, khi chưa áp dụng SMOTE, TN rate là 65%, sau khi áp dụng SMOTE là 81%, tương tự đối với ICRMv3, khi áp dụng SMOTE TN rate đạt được hiệu suất lên đến 98.7%

- Khi áp dụng cost-sensitive learning vào thuật toán: Kết quả không được cải thiện rõ ràng

CỒNG TRÌNH 3: Data Mining In Higher Education: University Student Dropout Case

Study 2015 [4] Đặc điểm tập dữ liệu

- Gồm 1290 mẫu dữ liệu và 12 thuộc tính bao gồm đặc điểm (giới tính, vị trị địa lý) và bảng điểm của sinh viên trong 2 năm đầu tiên khoa khoa học máy tính trường đại học

ALAQSA từ năm 2005 đến năm 2011 và nhãn lớp của từng mẫu dữ liệu đó để xác định xem sau khi kết thúc khóa học thì sinh viên đó có tốt nghiệp hay không

- Dữ liệu bị thiếu: Tập dữ liệu điểm của sinh viên, vì thế có những môn sinh viên này học mà sinh viên kia chưa học Nên tập dữ liệu sẽ bị thiếu

- Dữ liệu mất cân đối: tập dữ liệu gồm 1290 mẫu dữ liệu, trong đó sinh viên tốt nghiệp sau khi kết thúc khóa học là 326 mẫu, và sinh viên không tốt nghiệp sau khi kết thúc khóa học là 964 mẫu Vì thế tập dữ liệu xảy ra tình trạng mất cân đối

- Xử lý dữ liệu bị thiếu bằng cách thay thế điểm các môn học bị thiếu bởi giá trị 0 để chỉ ra rằng sinh viên đó chưa học môn đó, chứ không phải là bị rớt môn học đó

- Xử lý mất cân đối bằng phương pháp Over Sampling Tăng số lượng mẫu dữ liệu ở tập thiểu số lên

- Phân chia thang điểm thành từng nhóm, ví dụ: A là 100 điểm, C là 80 điểm, D là 70 điểm, E là 60 điểm và điểm F là 50 điểm

- Thuật tốn sử dụng: Decision Tree và Nạve Bayes

- Độ chính xác khi sử dụng thuật toán Desiction Tree đạt 98.14% và khi sử dụng thuật tốn Nạve Bayes là 96.68%.

Công trình xử lý chồng lấp

Đặc điểm tập dữ liệu

Công trình này sử dụng 5 tập dữ liệu:

- Inosphere: Lớp 1 gồm 351 mẫu, lớp 2 gồm 34 mẫu, tỷ lệ chồng lấp dữ liệu là 41.3%

- Sonar: Lớp 1 gồm 208 mẫu, lớp 2 gồm 60 mẫu tỷ lệ chồng lấp dữ liệu là 20.2%

- Splice: Lớp 1 gồm 1000 mẫu, lớp 2 gồm 60 mẫu tỷ lệ chồng lấp dữ liệu là 12.6%

- Diabetes: Lớp 1 gồm 768 mẫu, lớp 2 gồm 8 mẫu tỷ lệ chồng lấp dữ liệu là 7.9 %

- German:Lớp 1 gồm 1000 mẫu, lớp 2 gồm 24 mẫu tỷ lệ chồng lấp dữ liệu là 5.7% Đánh giá hiệu suất phân lớp bằng độ đo F-measure

- Sử dụng ten-fold cross-validation để tạo ra tập dữ liệu huấn luyện và dữ liệu kiểm tra từ 5 tập dữ liệu trên

- Thuật toán phân lớp được sử dụng trong công trình bao gồm 5 thuật toán cơ bản:

Nạve Bayesian, k-NN (k=5), SVMs, C4.5 và RIPPER - Áp dụng 3 hướng tiếp cận của việc giải quyết chồng lấp dữ liệu vào thực nghiệm và đánh giá Ba hướng tiếp cận đó là: loại bỏ, sát nhập và phân rã

- Hướng tiếp cận giải quyết chồng lấp dữ liệu đạt kết quả tốt nhất là phương pháp phân rã o Hiệu suất phân lớp của phương pháp giải quyết chồng lấp dữ liệu bằng phân rã cao hơn hiệu suất phân lớp của phương pháp giải quyết phân lớp bằng sát nhập.Ví dụ như khi sử dụng thuật tốn Nạve Bayesian cho 2 phương pháp trên hiệu suất đạt được lần lượt là 86.1% và 60.7%, như ta thấy xử lý bằng phương pháp sát nhập đạt hiệu suất cao hơn đến gần 16% Lý do bởi vì đối với phương pháp sát nhập ta thêm vào tập dữ liệu thêm một lớp mới (lớp chồng lấp) từ đó tạo nên sự phức tạp trong quá trình phân lớp o Đối với những tập dữ liệu có tỷ lệ chồng lấplớn hơn 20% thì hiệu suất phân lớp của phương pháp phân rã cũng cao hơn hẳn đối với phương pháp loại bỏ như trong 2 tập dữ liệu Inoshere và Sonar Trong khi đó khi tỷ lệ chồng lấp nhỏ hơn 20% thì hiệu suất phân lớp của 2 phương pháp phân rã và loại bỏ xấp xỉ bằng nhau o Nói chung phương pháp phân rã thường đạt hiệu suất cao nhất đối với cả 5 tập dữ liệu trên

- Đánh giá sự hiệu quả của phương pháp phân rã khi giải quyết chồng lấp dữ liệu o Thứ nhất chênh lệch hiệu suất phân lớp khi áp dụng phân rã và khi không áp dụng tỷ lệ thuận với tỷ lệ chồng lấp dữ liệu giữa 2 lớp Khi tỷ lệ chồng lấp dữ liệu nhỏ

(có nghĩa rất ít dữ liệu nằm trong vùng bị chồng lấp) thì áp dụng phương pháp phân rã vào cũng khó cải thiện được hiệu suất phân lớp o Với năm giải thuật phân lớp được áp dụng trong công trình này được chia làm 2 loại: Phân lớp dựa trên luật (rule-base classfiers) bao gồm C4.5 và RIPPER; Phân lớp dựa trên khoảng cách (distance-base classifiers)bao gồm NV, SVM, k-NN Và ta nhận thấy rằng khi áp dụng những thuật toán phân lớp dựa trên khoảng cách sẽ đạt được hiệu suất cao hơn trong trường hợp dữ liệu bị chồng lấp

- Khi áp dụng tái cân bằng dữ liệu o Đối với tập dữ liệu có tỷ lệ chồng lấp lớn, khi áp dụng phương pháp phân rã hiệu suất tốt hơn khi không áp dụng bất chấp tỷ lệ tăng độ lớn của lớp thiểu số o Tuy nhiên đối với tỷ lệ chồng lấp nhỏ, khi áp dụng phương pháp phân rã thì hiệu suất so với khi không áp dụng bị thu hẹp tỷ lệ thuận với việc tăng độ lớn lớp thiểu số nhất là đối với thuật toán SVM

- Áp dụng phương pháp phân rã đạt hiệu suất cao nhất đối với việc giải quyết dữ liệu bị chồng lấp

- Phân lớp dữ liệu bằng những thuật toán dựa trên khoảng cách đạt hiệu suất cao hơn những thuật toán phân lớp dựa trên luật ở trường hợp dữ liệu bị chồng lấp

CÔNG TRÌNH 5: Improved Classification for Problem Involving Overlapping Patterns

[5] Đặc điểm tập dữ liệu

Công trình sử dụng 5 tập dữ liệu để tiến hành khảo sát cho thực nghiệm bao gồm IRIS, Wis-breast cancer, Breast cancer, PIMA và BUPA liver Đặc điểm của các tập dữ liệu này đó là việc dữ liệu bị chồng lấp với tỷ lệ chồng lấp từ thấp đến cao tưng ứng là: tập IRIS có tỷ lệ chồng lấp là 8.5%, tập Wis-breast cancer có tỷ lệ chồng lấp là 2.39% tập Breast cancer có tỷ lệ chồng lấp là 29.59% tập PIMA có tỷ lệ chồng lấp là 37.05% và tập BUPA-liver có tỷ lệ chồng lấp lên đến 54.81%

- Sử dụng thuật toán KNN để phát hiện ra vùng chồng lấp dữ liệu

- Sử dụng các thuật toán DR-SVM, SVM, 3-NN và RIONA để phân lớp

- Độ đo sử dụng Accuracy

- Đối với tập dữ liệu IRIS và Wis-breast cancer có tỷ lệ chồng lấp nhỏ (tương ứng là 8.5% và 2.39%) cho ra kết quả phân lớp cao trong cả 4 thuật toán phân lớp DR-SVM, SVM, 3-NN và RIONA Với tập IRIS, thuật toán DR-SVM cho ra kết quả phân lớp cao nhất với 97.46%, thấp nhất khi sử dụng thuật toán RIONA với kết quả phân lớp đúng là 94.6% Với tập WIS-breast cancer, thuật toán RIONA cho kết quả phân lớp tốt nhất là 97% và thấp nhất khi sử dụng thuật toán SVM với độ chính xác là 96.23%

- Đối với các tập dữ liệu Breast cancer, PIMA, BUPA-liver có tỷ lệ chồng lấp cao (từ 29.59% đến 54.81%) thì kết quả phân lớp không tốt bằng kết quả phân lớp ở các tập IRIS và Wis-breast cancer Đối với tập Breast cancer, khi sử dụng thuật toán DR- SVM cho ra kết quả phân lớp tốt nhất với 72.84% thấp nhất là khi sử dụng thuật toán 3-NN để phân lớp với 68.6% Đối với tập PIMA, DR-SVM cho ra kết quả phân lớp tốt nhất với độ chính xác là 76.56% và thấp nhất là 72.2% khi sử dụng 3-NN Đối với tập BUPA-liver thì SVM cho ra kết quả phân lớp tốt nhất là 69.48% trong khi đó 3- NN cho ra kết quả phân lớp thấp nhất chỉ 66%

- Nhìn chung, kết quả phân lớp trung bình cho cả 4 tập dữ liệu trên khi sử dụng phương pháp DR-SVM cho ra kết quả phân lớp tốt nhất với độ chính xác trung bình là 82.41%, trong khi đó SVM đạt được độ chính xác là 82.27% Thấp nhất là khi sử

27 dụng thuật toán K-NN để phân lớp với độ chính xác trung bình cho cả 4 tập dữ liệu là 79.84%

- Công trình đưa ra phương pháp giải quyết dữ liệu chồng lấp bằng phương pháp DR-SVM cho ra kết quả phân lớp tốt nhất so với các phương pháp phân lớp truyền thống như K-NN, SVM, RIONA.

Đối chiếu các công trình liên quan đến luận văn

So với các công trình liên quan [19] 670 mẫu dữ liệu 77 thuộc tính; [4] tập dữ liệu sinh viên tạo trường ALAQSA 1290 mẫu dữ liệu 12 thuộc tính Thì tập dữ liệu mà chúng ta xem xét bao gồm 1334 bản ghi và 43 thuộc tính nhận thấy là tương đối đủ phức tạp để có thể khảo sát vấn đề đã đưa ra

Trong công trình [5] có sử dụng thuật toán KNN để phát hiện ra vùng chồng lấp dữ liệu

Vì thế trong đề tài sẽ sử dụng phương pháp đó để phát hiện ra vùng dữ liệu bị chồng lấp Đối với dữ liệu bị chồng lấp công trình [20] có đề cập đến một số phương pháp giải quyết bao gồm: loại bỏ, sát nhập và phân rã Và phương pháp phân rã cho ra hiệu suất phân lớp khi xem xét dữ liệu bị chồng lấp cao hơn cả Vì thế, đề tài sẽ cải thiện phương pháp phân rã khi phân lớp cho tập dữ liệu bị chồng lấp

ĐỀ XUẤT GIẢI PHÁP PHÂN LỚP DỮ LIỆU CHỒNG CHẤT CHO BÀI TOÁN “DỰ BÁO SỚM TRẠNG THÁI HỌC TẬP CỦA SINH VIÊN”

Định nghĩa bài toán

Bài toán mà đề tài giải quyết là ―Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên‖.Trong thực tế, chúng ta có thể biết được tình trạng của sinh viên sau khi sinh viên đó kết thúc thời gian đào tạo (vẫn còn đang học hay đã tốt nghiệp, có bị đuổi học hay không …), tuy nhiên vẫn có thể dự đoán được trước trình trạng của sinh viên đó khi sinh viên đó mới chỉ học năm 2, năm 3 … thông qua các dữ liệu thu thập được từ sinh viên đó như bảng điểm tổng kết môn học Chính vìcó thể dự đoán sớm được tình trạng của sinh viên mà có thể xác định xem sinh viên đó có phù hợp với ngành học mà sinh viên đang học không, hoặc điều chỉnh lại phương pháp giảng dạy phù hợp hơn…, và từ đó nâng cao chất lượng trong giáo dục Để giải quyết bài toán như vậy luận văn đã sử dụng tập dữ liệu điểm tổng kết môn học tại mỗi học kỳ của sinh viên năm 2, năm 3 hoặc năm 4 tại Khoa Khoa Học & Kỹ Thuật Máy Tính Trường Đại Học Bách Khoa TP Hồ Chí Minh để dự báo được tình trạng của sinh viên sau khi kết thúc khóa học (thời gian là 4.5 năm)

Tập dữ liệu đầu vào là tập dữ liệu sinh viên khoa Khoa Học Kỹ Thuật Máy Tính trường Đại Học Bách Khoa TP.Hồ Chí Minh được học theo quy chế tín chỉ từ năm 2005 đến 2008, gồm 1334 mẫu dữ liệu và 43 thuộc tính tương ứng với 43 môn học Tập dữ liệu bao gồm 5 nhãn: graduated, studying, study_stop, first_warned, second_warned Trong đó graduated là các sinh viên đã tốt nghiệp sau khi kết thúc khóa học, studying là các sinh viên vẫn còn học sau khi kết thúc khóa học, study_stop là các sinh viên đã bị đuổi học trước khi kết thúc khóa học, first_warned là các sinh viên bị cảnh cáo học vụ lần 1 tại thời điểm kết thúc khóa học và second_warned là các sinh viên bị cảnh cáo học vụ lần 2 tại thời điểm kết thúc khóa học

Tập dữ liệu khảo sát bị vướng phải các vấn đề như dữ liệu bị thiếu, dữ liệu mất cân bằng và dữ liệu bị chồng lấp.Do đó, kết quả phân lớp sẽ bị ảnh hưởng lớn.Tập dữ liệu là điểm kiểm tra, điểm thi của các sinh viên năm 2,3,4 và được học theo quy chế tín chỉ, vì thế sẽ có những trường hợp mà sinh viên này đã học môn học này mà sinh viên kia chưa học dẫn đến tình trạng dữ liệu bị thiếu Trong khi đó, khi khảo sát tập dữ liệu 1334 mẫu thì tình trạng mất cân đối của dữ liệu rất lớn, tỷ lệ sinh viên tốt nghiệp chiếm 54.35% (725 mẫu), trong khi đó,tỷ lệ sinh viên bị cảnh cáo học vụ lần 1 và 2 tương ứng là 0.45% (6 sinh viên bị cảnh cáo lần 1) và 0.82% (11 sinh viên bị cảnh cáo lần 2) Đối với vấn đề dữ liệu bị chồng lấp có thể thấy rõ ràng rằng sinh viên bị cảnh cáo học vụ lần 1 và lần 2 đều là những sinh viên đang học, sinh viên đang học còn nợ lại một đến hai môn thì là sinh

29 viên gần tốt nghiệp … nên vấn đề dữ liệu bị chồng lấp cũng xuất hiện trong tập dữ liệu đang khảo sát.

Xây dựng mô hình

Đề tài áp dụng phương pháp phân rã [20] để giải quyết vấn đề dữ liệu bị chồng lấp Tư tưởng của phương pháp phân rã là chia tập dữ liệu thành 2 vùng: vùng dữ liệu chồng lấp và vùng dữ liệu không chồng lấp; từ đó, tạo ra 2 mô hình riêng trên hai tập dữ liệu đó

Tuy nhiên, đề tài còn cải thiện hiệu suất phân lớp trên vùng dữ liệu bị chồng lấp, bằng cách phân hoạch vùng chồng lấp thành các vùng chồng lấp con và xây dựng mô hình phân lớp trên từng vùng chồng lấp con ấy

Lý do của việc phân hoạch vùng chồng lấp thành các vùng chồng lấp con là bởi vì tập dữ liệu bị chồng lấp không phải nằm tập trung ở một chỗ trong không gian dữ liệu mà nó bị phân tán thành nhiều cụm chồng lấp nhỏ trong không gian dữ liệu Vì thế khi sử dụng cả tập dữ liệu huấn luyện trên vùng chồng lấp để xây dựng mô hình thì có thể kết quả phân lớp sẽ không tốt Thay vì vậy, với mỗi vùng chồng lấp con, xác định không gian của tập dữ liệu huấn luyện tương ứng với nó và xây dựng mô hình phân lớp cho vùng dữ liệu chồng lấp trêntừng vùng không gian của tập huấn luyện tương ứng với nó

Vì thế, đề tài đưa ra các bước để xây dựng mô hình như sau:

- Bước 1: Chuẩn bị tập dữ liệu: Là việc tiền xử lý dữ liệu, xây dựng tập dữ liệu huấn luyện

- Bước 2: Phát hiện ra vùng dữ liệu chồng lấp, trong đề tài sử dụng thuật toán KNN để phát hiện ra vùng dữ liệu bị chồng lấp

- Bước 3: Sau khi phát hiện ra vùng dữ liệu bị chồng lấp thì tập dữ liệu huấn luyện ban đầu được chia ra thành 2 tập dữ liệu con là tập dữ liệu chồng lấp và tập dữ liệu không chồng lấp Và từ 2 tập dữ liệu con, đề tài xây dựng 3 tập dữ liệu bao gồm: o Tập dữ liệu 1: là tập dữ liệu bao gồm tất cả các mẫu dữ liệu có trong tập huấn luyện, tuy nhiên đã được gán lại nhãn Nhãn của dữ liệu bao gồm 2 nhãn: overlap và non_overlap, trong đó overlap là các mẫu dữ liệu được phát hiện là thuộc vùng dữ liệu bị chồng lấp và non_overlap là các mẫu dữ liệu được phát hiện thuộc vùng không chồng lấp o Tập dữ liệu 2: Là tập dữ liệu bao gồm các mẫu dữ liệu được phát hiện thuộc vùng chồng lấp o Tập dữ liệu 3: là tập dữ liệu bao gồm các mẫu dữ liệu thuộc vùng không chồng lấp

- Bước 4: Sử dụng thuật toán Mean Shift để phân hoạch tập dữ liệu 2 (tập dữ liệu thuộc vùng chồng lấp) thành các vùng dữ liệu chồng lấp con (gọi là Cj với j tương ứng là vùng chồng lấp con thứ j)

- Bước 5: Sử dụng thuật toán K-Means để phân hoạch tập dữ liệu huấn luyện ban đầu thành các tập dữ liệu huấn luyện con (gọi làCi với i tương ứng là tập dữ liệu huấn luyện con thứ j) sao cho mỗi tập dữ liệu huấn luyện con (Ci) sẽ tương ứng với một tập dữ liệu trong vùng chồng lấp con (Oj) Hay nói cách khác là sao cho Ci sẽ chứa phần lớn các mẫu dữ liệu của Oj.Giá trị của K cho thuật toán K-Means chính là số cụm tìm được ở Bước 4

- Bước 6: Xây dựng các mô hình phân lớp model_A; model_NO và các model_Ci tương ứngtrên các tập dữ liệu: tập dữ liệu 1; tập dữ liệu 3 và các tập dữ liệu Ci

Tập dữ liệu huấn luyện

Tập dữ liệu thuộc vùng chồng lấp

Tập dữ liệu thuộc vùng không chồng lấp

Mô hình phân lớp model_A

Gom cụm bằng thuật toán Mean Shift Phát hiện vùng dữ liệu chồng chấp với thuật toán kNN

Tập dữ liệu được gán lại nhãn: overlap và non_overlap

Mô hình phân lớp model_NO

Gom cụm tập dữ liệu huấn luyện ban đầu bằng thuật toán k-means với k là số cụm của tập dữ liệu thuộc vùng chồng chất

Mô hình phân lớp model_C1

Mô hình phân lớp model_C2 … Mô hình phân lớp model_Ck

Hình 3: Xây dựng mô hình phân lớp

Đánh giá mô hình

Sử dụng phương pháp cross-validation để chia tập dữ liệu ban đầu thành các fold, và từ đó chia thành tập dữ liệu huấn luyện và tập dữ liệu kiểm tra,sao cho các mẫu dữ liệu thuộc tập dữ liệu kiểm tra không thuộc vào tập dữ liệu huấn luyện và ngược lại Để đánh giá mô hình, tập dữ liệu kiểm tra sẽ đi qua các bước như sau:

- Bước 1:Mỗi dữ liệu kiểm tra sẽ đi qua model_A để xác định xem nó nên được phân lớp trên mô hình được xây dựng trên tập dữ liệu chồng lấp hay không chồng lấp

- Bước 2:Nếu mẫu dữ liệu kiểm tra qua model_A cho ra kết quả phân lớp là non_overlap thì nó sẽ được phân lớp bằng mô hình được xây dựng trên vùng dữ liệu không bị chồng lấp là model_NO

- Bước 3: Nếu như mẫu dữ liệu kiểm tra đi qua model_A cho ra kết quả phân lớp là overlap thì nó sẽ được xác định xem, nó gần với cụm chồng lấp nào nhất (giả sử là Oj) Từ đó xác định được mẫu dữ liệu kiểm tra sẽ được phân lớp bằng mô hình phân lớp được xây dựng trên các vùng dữ liệu huấn luyện con (giả sử là Cj) tương ứng với cụm dữ liệuchồng lấp gần mẫu dữ liệu kiểm tra nhất

- Bước 4:Sử dụng mô hình model_Cj (được xây dựng bằng tập dữ liệu huấn luyện Cj) để phân lớp cho mẫu dữ liệu kiểm tra

- Bước 5:Tổng hợp lại kết quả phân lớp của tất cả các mẫu dữ liệu kiểm tra thông qua việc phân lớp dữ liệu ở bước 2 và bước 4 để xác định xem kết quả phân lớp của tập dữ liệu kiểm tra như thế nào

- Bước 6: So sánh với lớp thực tế của tập dữ liệu kiểm tra để xác định hiệu suất phân lớp chính xác của mô hình

Xác định gần với cụm huấn luyện nào nhất (giả sử cụm j) Model_NO

Kết quả phân lớp non_overlap

Sử dụng model_Cj để phân lớp cho dữ liệu liểu tra overlap Model_A

So sánh nhãn lớp thực tế từ đó xác định hiệu suất phân lớp chính xác của mô hình

Sử dụng mô hình

Việc sử dụng mô hình phân lớp diễn ra tương tự như việc đánh giá mô hình, tuy nhiên sẽ không có bước xác định hiệu suất phân lớp đúng của mô hình

Xác định gần với cụm huấn luyện nào nhất (giả sử cụm j) Model_NO

Kết quả phân lớp non_overlap

Sử dụng model_Cj để phân lớp cho dữ liệu liểu tra overlap Model_A

Hình 5: Sử dụng mô hình phân lớp

KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ

Môi trường và tập dữ liệu thực nghiệm

Các giải pháp đưa ra được hiện thực bằng ngôn ngữ java trên IDE Eclipse và sử dụng thư viện hỗ trợ là weka 3.7.12 Môi trường hiện thực là trên máy Dell, core i5, ram 4gb và sử dụng hệ điều hành window 8.1

Tập dữ liệu thực nghiệm

Tập dữ liệu thực nghiệm là tập dữ liệu điểm tổng kết môn học ở các học kỳ của sinh viên năm 2, năm 3, năm 4 tại Khoa Khoa Học & Kỹ Thuật Máy Tính Trường Đại Học Bách Khoa TP Hồ Chí Minh từ năm 2005 đến năm 2008 và đã được tiền xử lý đối với vấn đề dữ liệu bị thiếu trong luận văn ―Phân lớp sinh viên dựa trên kết quả học tập trong hệ thống giáo dục tín chỉ‖

Tập dữ liệu bao gồm 1334 mẫu dữ liệu, bao gồm 43 thuộc tính Tuy rằng đã được xử lý về vấn đề dữ liệu bị thiếu tuy nhiên tập dữ liệu vẫn đang còn 2 vấn đề lớn là: dữ liệu mất cân đối và dữ liệu bị chồng lấp

Tỷ lệ bị chồng lấpđược tính toán bằng thuật toán KNN khá lớn, cụ thể là: Đối với năm 2 tỷ lệ chồng lấp chiếm 47.5% so với toàn tập dữ liệu, đối với tập dữ liệu năm 3 tỷ lệ chồng lấp chiếm 42.2% và đối với tập dữ liệu năm 4 tỷ lệ chồng lấpchiếm đến 32.2%

Bảng 1: Tỷ lệ dữ liệu bị chồng lấp của tập dữ liệu điểm tổng kết môn học của sinh viên năm 2, năm 3, năm 4 khi sử dụng phương pháp KNN để phát hiện

Tỷ lệ dữ liệu bị chồng lấp 47.5% 42.2% 32.2%

Tỷ lệ dữ liệu bị mất cân đối cũng rất cao Cụ thể là khi khảo sát tập dữ liệu sinh viên năm

2 thì đối với lớp đã graduated (đã tốt nghiệp) chiếm 54.35% toàn bộ tập dữ liệu, lớp studying (đang học) chiếm 33.81% toàn bộ tập dữ liệu, lớp study_stop (đã thôi học) chiếm 10.57% trong khi đó lớp first_warned (cảnh cáo học vụ lần 1) và second_warned (cảnh cáo học vụ lần 2) chỉ chiếm tỷ lệ rất nhỏ lần lượt là 0.82% và 0.45%

Bảng 2: Tỷ lệ dữ liệu mất cân bằng khi khảo sát tập dữ liệu điểm tổng kết môn học của sinh viên năm 2 Lớp Tốt nghiệp Đang học Cảnh cáo 1 Cảnh cáo 2 Thôi học

Phương pháp thực nghiệm

Để hiện thực được giải pháp đề xuất trong chương 4 và thực nghiệm trong tập dữ liệu giáo dục mà đề tài đang xét, đề tài đưa ra phương pháp thực nghiệm gồm 8 bước như sau:

Bước 1: Chuẩn bị dữ liệu

Bước 7: Xây dựng các bộ mô hình phân lớp với các tập dữ liệu đã xây dựng trong bước 6

Bước 6: Sử dụng k-mean để gom cụm cho tập dữ liệu huấn luyện ban đầu với k là số cụm khi sử dụng mean-shift để gom cụm cho vùng dữ liệu chồng chất

Bước 5: Đánh giá mô hình khi áp dụng phương pháp phân rã để xử lý dữ liệu chồng chất

Bước 4: Xây dựng mô hình phân lớp khi áp dụng phương pháp phân rã để xử lý dữ liệu chồng chất

Bước 3: Phát hiện vùng dữ liệu chồng chất Bước 2: Xây dựng mô hình và phân lớp tập dữ liệu kiểm tra khi chưa xử lý dữ liệu chồng chất

Bước 8: Đánh giá mô hình đã xây dựng trong bước 7

Hình 6: Phương pháp thực nghiệm

Bước 1: Chuẩn bị dữ liệu

Tập dữ liệu được kế thừa từ luận văn ―Phân lớp sinh viên dựa trên kết quả học tập trong hệ thống giáo dục tín chỉ‖ Chính vì thế tập dữ liệu đã được tiền xử lý và xử lý cho trường hợp dữ liệu bị thiếu

Luận văn chọn cách chia tập dữ liệu thành 5 fold khác nhau, không phải là 10 fold như những công trình khác thường làm khi đi phân lớp tập dữ liệu Cách chọn chia thành 5 fold là phù hợp với tập dữ liệu vì tập dữ liệu bị mất cân đối khá nhiều, nên nếu chia thành quá nhiều fold sẽ dẫn đến tình trạng có những fold không có thông tin về lớp mà cụ thể ở đây là lớp thiểu số Điều này dẫn đến không có thông tin về lớp ở một fold nào đó sẽ đem đến kết quả không chính xác

Sử dụng WEKA để chia tập dữ liệu thành 5 fold khác nhau F1,F2,F3,F4,F5 sử dụng thuật toán StratifiedRemoveFolds Từ 5 fold đó, xây dựng 5 bộ dữ liệu bao gồm 2 phần: huấn luyện (4/5 tập dữ liệu) và kiểm tra (1/5 tập dữ liệu) 5 bộ dữ liệu đó là:

- Bộ dữ liệu 1: Tập kiểm tra là F1, tập dữ liệu huấn luyện là D – F1

- Bộ dữ liệu 2: Tập kiểm tra là F2, tập dữ liệu huấn luyện là D – F2

- Bộ dữ liệu 3: Tập kiểm tra là F3, tập dữ liệu huấn luyện là D – F3

- Bộ dữ liệu 4: Tập kiểm tra là F4, tập dữ liệu huấn luyện là D – F4

- Bộ dữ liệu 5: Tập kiểm tra là F5, tập dữ liệu huấn luyện là D – F5

Hình 8: Sử dụng StratifiedRemoveFold để chia ra các Fold cho phương pháp k-fold cross validation

Bước 2: Xây dựng mô hình phân lớp và đánh giá mô hình khi chưa xử lý dữ liệu chồng lấp

Sau khi đã xây dựng tập dữ liệu như bước ở bước 1, ta đã có 5 bộ dữ liệu, mỗi bộ gồm có tập dữ liệu huấn luyện (4/5 tập dữ liệu gốc) và tập dữ liệu kiểm tra (1/5 tập dữ liệu gốc)

Trong đề tài ta thực hiện phân lớp trên 3 tập dữ liệu điểm của sinh viên vào năm hai, năm ba và năm tư Vì thế, sau khi đi qua bước 1,ta sẽ có 15 bộ dữ liệu khác nhau

Các tập dữ liệu huấn luyện được đưa vào để huấn luyện mô hình, và sử dụng tập dữ liệu kiểm tra tương ứng với tập huấn luyện đó để kiểm tra mô mình đó.Trong đề tài để xây dựng mô hình, ta sử dụng các thuật toán phổ biến: Cây quyết định (J48), kNN (k-nearest neighboirs), SVM (Support Vector Machine), AdaBoost, Baggingvà thuật toán Random

Forest Theo kinh nghiệm, chúng tôi đã lựa chọn các thông số phù hợp với từng thuật toán đó: Cây quyết định sử dụng thuật toán J48 của thư viện WEKA; thuật toán KNN với k được lựa chọn là 1, đối với thuật toán SVM sử dụng thuật toán One-against-one Support Vector Machine (SMO) trong thư viện WEKA với kernel lựa chọn là radial basis function; AdaBoost lựa chọn bộ phân lớp cơ sở là SVM ; Boosting lựa chọn bộ phân lớp cơ sở là SVM và Random Forest lựa chọn số thuộc tính (numFeatures) là 2, số lượng cây (numTrees) là 300

Bước 3: Phát hiện vùng dữ liệu bị chồng lấp

Trong lĩnh vực khai phá dữ liệu việc dữ liệu bị chồng lấp ảnh hưởng rất lớn đến kết quả phân lớp dữ liệu, tỷ lệ chồng lấpcàng cao thì kết quả phân lớp càng xấu đi Trong tập dữ liệu giáo dục và đề tài thực hiện việc khai phá, việc chồng lấp dữ liệu cũng xuất hiện

Trong tập dữ liệu điểm toonge kết các môn học ở các học kỳ của sinh viên năm hai, năm ba và năm bốn do phòng Đào Tạo trường Đại Học Bách Khoa TP Hồ Chí Minh cung cấp, trạng thái học tập của sinh viên gồm có 5 trạng thái đó là: graduated, studying, study_stop, first_warned và second_warned Trong đó: trạng thái graduated tương ứng với những sinh viên đã hoàn thành xong chương trình học và đã tốt nghiệp; trạng thái studying là những sinh viên đang còn học; trạng thái study_stop tương ứng với những sinh viên đã thôi học; first_warned và second_warned tương ứng là những sinh viên có kết quả học tập không tốt và đang có thông báo bị cảnh cáo học vụ Tuy nhiên xét về mặt số liệu thì những sinh viên đã đã nghiệp và những sinh viên vẫn đang học nhưng chỉ nợ lại một đến hai môn sẽ gần giống nhau; tương tự các sinh viên cảnh cáo học vụ lần một và gần chuyển sang ngưỡng sinh viên bị cảnh cáo lần hai với các sinh viên bị cảnh cáo học vụ lần hai sẽ gần giống nhau … Nói cách khác, các sinh viên có điểm số ngay tại ngưỡng của trạng thái này và trạng thái kia sẽ có số liệu về điểm gần như sau Từ đó tạo ra sự chồng lấp về mặt dữ liệu và vì thế sẽ giảm đi hiệu suất phân lớp đúng trong quá trình phân lớp

Chính vì thế để nâng cao được hiệu suất phân lớp thì việc phát hiện ra vùng chồng lấp dữ liệu đóng vai trò rất quan trọng trong việc khai phá dữ liệu nhất là đối với những tập dữ liệu có khả năng xảy ra chồng lấp lớn như những tập dữ liệu mà đề tài đang thực hiện khai phá

Hiện tại có một số phương pháp phát hiện ra vùng chồng lấp như đã trình bày như ở chương 2 và chương 3 như là: SVDD (Support Vector Data Description) [20], thuật toán KNN [28] Trong đề tài này, chúng tôi lựa chọn giải thuật kNN trong công trình [28] để phát hiện ra vùng dữ liệu bị chồng lấp Trong đề tài lựa chọn giá trị k bằng 3 bởi vì số lượng mẫu dữ liệu thuộc lớp thiểu số là cảnh cáo học vụ lần một và cảnh cáo học vụ lần 2 tương ứng là 6 và 11 mẫu dữ liệu

Với mỗi tập dữ liệu năm hai, năm ba và năm tư sau khi qua sử dụng phương pháp cross- validation trong bước 1 thì sẽ tạo thành 5 bộ dữ liệu bao gồm: tập dữ liệu huấn luyện và tập dữ liệu kiểm tra Ta tiến hành phát hiện vùng chồng lấp dữ liệu trên tập dữ liệu huấn luyện của mỗi bộ dữ liệu

Xét tập dữ liệu năm 2, sau khi sử dụng phương pháp cross-validation thì sẽ tạo ra 5 bộ dữ liệu Và kết quả phát hiện vùng chồng lấp trên tập dữ liệu huấn luyện của từng bộ dữ liệu

Kết quả thực nghiệm

Sau khi thực hiện phương pháp cross-validation để tạo thành những bộ dữ liệu bao gồm tập dữ liệu huấn luyện (4/5 tập dữ liệu) và tập dữ liệu kiểm tra (4/5 tập dữ liệu) tiến hành phân lớp dữ liệu bằng những thuật toán cơ bản như: cây quyết định (J48), Support Vector Machine, KNN (với k = 1), AdaBoost (với kenel lựa chọn là SVM), Bagging (kenel lựa chọn là SVM) và Random Forest Cho phần đánh giá mô hình phân lớp đạt được, độ đo được lựa chọn là độ chính xác (accuracy, ACC)

Kết quả phân lớp được đo bằng độ đo accuracy tại năm 2 thấp nhất trong 3 năm, trong đó kết quả phân lớp thấp nhất là khi sử dụng thuật toán cây quyết định (J48) với ACC 64.9%; kết quả phân lớp cao nhất là khi sử dụng thuật toán Random Forest với ACC 72.6%

Kết quả phân lớp được đo bằng độ đo accuracy tại năm 3 cho ra kết quả cao hơnđối với năm 2 khoảng 5%, trong đó kết quả phân lớp thấp nhất là khi sử dụng thuật toán cây quyết định (J48) với ACC = 71.1%; kết quả phân lớp cao nhất là khi sử dụng thuật toán Random Forest với ACC = 78.2%

Kết quả phân lớp được đo bằng độ đo accuracy tại năm 4 cho ra kết quả cao nhất trong 3 năm, cao hơn so với năm 2 khoảng 7% và cao hơn năm ba khoảng 2% Kết quả phân lớp thấp nhất cũng là khi sử dụng thuật toán cây quyết định (J48) với ACC = 71.7%; kết quả phân lớp cao nhất là khi sử dụng thuật toán Random Forest với ACC = 80.8%

Bảng 6: kết quả phân lớp của các thuật toán khi chƣa xử lý dữ liệu chồng lấp

Hình 11: Biểu đồ kết quả phân lớp của các thuật toán khi chƣa xử lý dữ liệu chồng lấp

5.3.2 Kết quả phân lớp dữ liệu khi áp dụng phương pháp phân rã để xử lý dữ liệu bị chồng lấp

Sau khi xác định được vùng dữ liệu bị chồng lấp bằng thuật toán KNN [28],chúng tôi áp dụng phương pháp phân rã [20] để xử lý vấn đề dữ liệu bị chồng lấp có trong những tập dữ liệu Kết quả nhận được là kết quả phân lớp khi dữ liệu kiểm tra thuộc vùng dữ liệu bị chồng lấp cho ra kết quả thấp hơn nhiều so với kết quả phân lớp khi dữ liệu kiểm tra thuộc vùng dữ liệu không bị chồng lấp

Bảng 7: kết quả phân lớp tập dữ liệu năm 2, năm 3 và năm 4 trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã

Tập dữ liệu Phân rã

Chồng lấp Không chồng lấp Tổng cộng J48

49 Đối với tập dữ liệu năm 2, độ chính xác thấp nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 58% là khi xây dựng mô hình bằng thuật toán Decision Tree, độ chính xác cao nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 64% khi áp dụng thuật toán AdaBoost (SVM) Trong khi đó khi dữ liệu kiểm tra thuộc vùng không chồng lấp thì kết quả phân lớp thấp nhất là 72.1% khi thuật toán phân lớp là J48 và đạt kết quả phân lớp cao nhất là 84% khi thuật toán phân lớp là Random Forest Như ta thấy, tỷ lệ phân lớp đúng ở vùng dữ liệu không chồng lấp cao hơn nhiều so với vùng dữ liệu chồng lấp cao hơn vào khoảng 14% Độ chính xác của cả tập dữ liệu khi áp dụng phương pháp phân rã cao nhất khi thuật toán phân lớp là Random Forest với ACC= 73.3% và thấp nhất khi thuật toán phân lớp là J48 với ACCe.3%

Hình 12: Biểu đồ kết quả phân lớp tập dữ liệu năm 2 trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã Đối với tập dữ liệu năm 3, độ chính xác thấp nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 65.5% là khi xây dựng mô hình bằng thuật toán Decision Tree, độ chính xác cao nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 72.7% khi áp dụng thuật toán AdaBoost (kenel là SVM) Trong khi đó khi dữ liệu kiểm tra thuộc vùng không chồng lấp thì kết quả phân lớp thấp nhất là 72.1% khi thuật toán phân lớp là J48 và đạt kết quả phân lớp cao nhất là 84.1% khi thuật toán phân lớp là Random Forest Như ta thấy, tỷ lệ phân lớp đúng ở vùng dữ liệu không chồng lấp cao hơn nhiều so với vũng dữ liệu chồng lấpvà cao hơn vào khoảng 12% Độ chính xác của cả tập dữ liệu khi áp dụng phương pháp phân rã cao nhất khi thuật toán phân lớp là Random Forest với ACC= 78.8% và thấp nhất khi thuật toán phân lớp là J48 với ACCq.2%

Chồng chấpKhông chồng chấpTổng thể

Hình 13:Biểu đồ kết quả phân lớp tập dữ liệu năm 3 trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã Đối với tập dữ liệu năm 4, độ chính xác thấp nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 64.5% là khi xây dựng mô hình bằng thuật toán Decision Tree, độ chính xác cao nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 70% khi áp dụng thuật toán Random Forest.Trong khi đó khi dữ liệu kiểm tra thuộc vùng không chồng lấp thì kết quả phân lớp thấp nhất là 76.5% khi thuật toán phân lớp là J48 và đạt kết quả phân lớp cao nhất là 82.1% khi thuật toán phân lớp là Random Forest Như ta thấy, tỷ lệ phân lớp đúng ở vùng dữ liệu không chồng lấp cao hơn khá nhiều so với vùng dữ liệu chồng lấpvà cao hơn vào khoảng 12% Độ chính xác của cả tập dữ liệu khi áp dụng phương pháp phân rã cao nhất khi thuật toán phân lớp là Random Forest với ACC= 79.5% và thấp nhất khi thuật toán phân lớp là J48 với ACCr.6%

Chồng chấpKhông chồng chấpTổng thể

Hình 14: Biểu đồ kết quả phân tập dữ liệu năm 4 lớp trên các vùng dữ liệu chồng lấp và không chồng lấpkhi sử dụng phương pháp phân rã

Chồng chấpKhông chồng chấpTổng thể

5.3.3 Kết quả phân lớp dữ liệu khi áp dụng phương pháp phân rã và gom cụm dựa trên vùng dữ liệu bị chồng lấp

Nhận thấy rằng đối với phương pháp phân rã, tỷ lệ phân lớp đúng rất thấp.Vì thế,đề tài đã đề xuất ra giải pháp để nâng cao tỷ lệ phân lớp đúng đối với vùng dữ liệu bị chồng lấp.Thay vì sử dụng sử dụng tập dữ liệu huấn luyện nằm trong vùng chồng lấp để xây dựng mô hình, đề tàisẽ gom tập dữ liệu thành từng cụm riêng có tính chồng lấp cục bộ và xây dựng từng mô hình trên từng cụm riêng đó

Bảng 8: kết quả phân lớp tập dữ liệu năm 2, năm 3 và năm 4 trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã kết hợp cải thiện kết quả phân lớp vùng chồng lấp

Phân rã kết hợp với cải thiện vùng dữ liệu bị chồng lấp Chồng lấp Không chồng lấp Tổng thể

53 Đối với tập dữ liệu năm 2, độ chính xác thấp nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 60.8% là khi xây dựng mô hình bằng thuật toán Decision Tree, độ chính xác cao nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 65.6% khi áp dụng thuật toán SVM Độ chính xác của cả tập dữ liệu khi áp dụng phương pháp phân rã cao nhất khi thuật toán phân lớp là Random Forest với ACC= 73.4% và thấp nhất khi thuật toán phân lớp là J48 với ACCf.7%

Hình 15: Biểu đồ kết quả phân lớp tập dữ liệu năm 2 trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã kết hợp cải thiện kết quả phân lớp vùng chồng lấp Đối với tập dữ liệu năm 3, độ chính xác thấp nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 67.2% là khi xây dựng mô hình bằng thuật toán KNN, độ chính xác cao nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 73.5% khi áp dụng thuật toán Bagging(SVM) Độ chính xác của cả tập dữ liệu khi áp dụng phương pháp phân rã cao nhất khi thuật toán phân lớp là Random Forest với ACC= 79.1% và thấp nhất khi thuật toán phân lớp là J48 với ACCr.9%

Chồng chấpKhông chồng chấpTổng thể

Hình 16: Biểu đồ kết quả phân lớp tập dữ liệu năm 3 trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã kết hợp cải thiện kết quả phân lớp vùng chồng lấp Đối với tập dữ liệu năm 4, độ chính xác thấp nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 67.2% là khi xây dựng mô hình bằng thuật toán SVM, độ chính xác cao nhất khi dữ liệu kiểm tra thuộc vùng chồng lấp là 73.6% khi áp dụng thuật toán Random Forest Độ chính xác của cả tập dữ liệu khi áp dụng phương pháp phân rã cao nhất khi thuật toán phân lớp là Random Forest với ACC= 80.3% và thấp nhất khi thuật toán phân lớp là J48 với ACCs.5%

Chồng chấpKhông chồng chấpTổng thể

Hình 17: Biểu đồ kết quả phân lớp tập dữ liệu năm 4trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã kết hợp cải thiện kết quả phân lớp vùng chồng lấp

Chồng chấpKhông chồng chấpTổng thể

5.3.4 Đánh giá chung a Đánh giá việc cải thiện độ chính xác của vùng chồng lấp khi áp dụng gom cụm rồi phân lớp

Bảng 9: so sánh kết quả phân lớp tập dữ liệu năm 2, năm 3 và năm 4 trên vùng dữ liệu chồng lấp trước và sau khi cải thiện

Phân rã Phân rã kết hợp cải thiện vùng dữ liệu chồng lấp Vùng chồng chât Vùng chồng chât J48

TỔNG KẾT

- Nêu lên được sự ảnh hưởng của dữ liệu bị chồng lấp đến hiệu suất phân lớp của một số giải thuật phân lớp phổ biến

- Khảo sát các phương pháp xử lý dữ liệu bị chồng lấp và lựa chọn phương pháp thích hợp cho dữ liệu bị chồng lấp

- Đề xuất giải pháp ―phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên‖ bằng cách sử dụng lại phương pháp phân rã của công trình [20] và cải thiện hiệu suất phân lớp trên vùng chồng lấp

- Tiến hành đánh giá và thực nghiệm giải pháp đề xuất bằng việc hiện thực phương pháp xử lý dữ liệu chồng lấpvà xây dựng ra các mô hình phân lớp trên tập dữ liệu giáo dục trong ngữ cảnh dữ liệu bị chồng lấp bằng nhiều thuật toán phân lớp khác nhau và sử dụng độ chính xác để đánh giá Tập dữ liệu sử dụng là tập dữ liệu điểm tổng kết môn học của các học kỳ của sinh viên năm 2, năm 3, năm 4 khoa Khoa Học Máy Tính Trường Đại Học Bách Khoa TP Hồ Chí Minh Đóng góp của đề tài

- Chứng minh được sự ảnh hưởng của vấn đề dữ liệu bị chồng lấp trong tập dữ liệu giáo dục ảnh hưởng đển kết quả phân lớp trong các giải thuật phổ biến như: cây quyết định, Support Vector Machine, K-nearest Neighbours, Bagging, AdaBoost và Random Forest

- Đóng góp phương pháp xử lý dữ liệu bị chồng lấp cụ thể là sử dụng phương pháp phân rã để xử lý riêng phần: vùng dữ liệu được phát hiện là chồng lấp và vùng dữ liệu được phát hiện là không không chồng lấp; từ đó, nâng cao kết quả phân lớp ở vùng dữ liệu chồng lấp bằng phương pháp phân hoạch vùng dữ liệu chồng lấp thành các vùng chồng lấp con, từ đó xây dựng nên các mô hình phân lớp trên các vùng chồng lấp con đó

- Kết quả phân lớp ở vùng dữ liệu không chồng lấp cho ra kết quả khá cao (82-84% ở thuật toán Random Forest), trong thực tế dữ liệu của một sinh viên đưa vào có thể xác định nó thuộc vùng chồng lấp hay không Nếu dữ liệu của sinh viên không thuộc vùng chồng lấpthì có thể sử dụng mô hình được xây dựng trên vùng không chồng lấp để phân lớp Nếu dữ liệu của sinh viên thuộc vùng chồng lấp, thì có thể được xem xét lại các yếu tố khác ngoài dữ liệu về bảng điểm kiểm tra, điểm thi để có thể phân lớp chính xác hơn

Hướng phát triển tiếp theo

- Tiếp tục nâng cao hiệu suất phân lớp trên vùng dữ liệu không chồng lấp

67- Xử lý dữ liệu mất cân đối trong ngữ cảnh dữ liệu bị chồng lấp

DANH MỤC CÁC TÀI LIỆU THAM KHẢO

[1] Jiawei Han and Micheline Kamber, ―Data Mining: Concepts and Techniques, Second Edition‖, ISBN 13: 978-1-55860-901-3, November 3, 2005

[2] Nguyễn Trúc Mai Anh, ―Phân lớp sinh viên dựa trên kết quả học tập trong hệ thống giáo dục tín chỉ‖, Luận Văn Tốt Nghiệp Thạc Sỹ, Đại Học Bách Khoa Thành Phố Hồ Chí Minh, Việt Nam, June 2013

[3]Brijesh Kumar Baradwaj, Saurabh Pal, ―Mining Educational Data to Analyze Students‖ Performance, (IJACSA) International Journal of Advanced Computer Science and Applications, Vol 2, No 6, 2011

[4] Ghadeer S Abu-Oda and Alaa M El-Halees,‖ Data Mining In Higher Education : University Student Dropout Case Study‖, International Journal of Data Mining &

Knowledge Management Process (IJDKP) Vol.5, No.1, January 2015

[5] Yaohua TANG and Jinghuai GAO, ―Improved Classification for Problem Involving Overlapping Patterns‖, IEICE TRANS INF & SYST., VOL.E90–D, NO.11 NOVEMBER 2007

[6] Nitesh V Chawla, Kevin W Bowyer, Lawrence O Hall and W Philip Kegelmeyer,

―SMOTE: Synthetic Minority Over-sampling Technique‖ Journal of Artificial Intelligence Research 16, p321–357, 2002

[7] Mikel Galar, Alberto Fern´andez, Edurne Barrenechea, Humberto Bustinceand Francisco Herrera, ―A Review on Ensembles for the Class Imbalance Problem: Bagging-, Boosting-, and Hybrid-Based Approaches‖, IEEE Transactions On Systems, Man, And Cybernetics—Part C: Applications And Reviews, Volume:42 , Issue: 4, p463 – 484, July 2012

[8] Deepika Tiwari, ―Handling Class Imbalance Problem Using Feature Selection‖, International Journal of Advanced Research in Computer Science & Technology (IJARCST 2014) Vol 2, Issue 2, Ver 3 (April - June 2014)

[9] Ilnaz Jamali , Mohammad Bazmara and Shahram Jafari, ―Feature Selection in Imbalance data sets‖, IJCSI International Journal of Computer Science Issues, Vol 9, Issue 3, No 2, May 2012

[10] Haibo He, Member, IEEE, and Edwardo A Garcia, ―Learning from Imbalanced Data‖, IEEE Transactions On Knowledge And Data Engineering,Vol 21, No 9, September 2009

[11] Vaishali Ganganwar, ―An overview of classification algorithms for imbalanced datasets‖ International Journal of Emerging Technology and Advanced Engineering, ISSN 2250-2459, Volume 2, Issue 4, April 2012

69 [12] Tao D., Tang X., Li X., Wu X, ―Asymmetric bagging and random subspace for suppor vector machines-based relevance feedback in image retrieval‖, IEEE Transactions on Pattern Analysisand Machine Intelligence, Volume 28 , Issue 7, p 1088–1099, July 2006

[13] Wang S & Yao, ―Diversity Analysis on Imbalanced Data Sets by using Ensemble Models‖,In Proc of The IEEE Symposium on Computational Intelligence and Data Mining, April 2 2009

[14] Liu Y., Chawla N, V., Harper M., Shriberg E., Stolcke A.,(2006), ―A Study in Machine Learningfrom Imbalanced Data for Sentence Boundary Detection in Speech‖;

[15] Schebesch K, Stecking R,―Using Multiple SVM Models for Unbalanced Credit Scoring DataSets‖; In Classification, Data Analysis, and Knowledge Organization, p515–

[16] Nitesh V Chawla , Ar Lazarevic , Lawrence O Hall , Kevin W Bowyer,

―SMOTEBoost: improving prediction of the minority class in boosting‖, In Proceedings of the Principles of Knowledge Discovery in Databases, PKDD-2003

[17] Chris Seiffert, Taghi M Khoshgoftaar, Jason Van Hulse and Amri Napolitano,

―RUSBoost: A Hybrid Approach to Alleviating Class Imbalance‖, IEEE Transactions On Systems, Man, And Cybernetics—Part A: Systems And Humans, Vol 40, No 1, January 2010

[18] Victoria López, Alberto Fernández, Jose G Moreno-Torres and Francisco Herrera,

―Analysis of preprocessing vs cost-sensitive learning for imbalanced classification Open problems on intrinsic data characteristics‖, Expert Systems with Applications 39, p 6585–

[19]Carlos Márquez and Cristóbal Romero, ―Predicting student failure at school using geneticprogrammingand different data mining approaches with high dimensional and imbalanced data‖, Applied Intelligence, Volume 38, Issue 3 , pp 315-330, Aprill 2013

[20]Haitao Xiong Junjie Wu Lu Liu, ―Classification with ClassOverlapping: A Systematic Study‖, Atlantis Press, 2010

[21] Jonathan Burez, Dirk Van den Poel, ―Handling class imbalance in customer churn prediction‖, Expert Systems Application 36(3): p4626-4636, 2009

[22] Barnan Das, Narayanan C Krishnan, Diane J Cook, ―Handling Class Overlap and Imbalance to Detect Prompt Situations in Smart Homes‖, Data Mining Workshops (ICDMW), IEEE 13th International Conference, p266 – 273, 2013.

Ngày đăng: 09/09/2024, 15:34

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[26] N. Liu, W.L. Woon, Z. Aung, and A. Afshari, "Handling class imbalance in customer behavior prediction," Collaboration Technologies and Systems (CTS), p 100 – 103, May 2014 Sách, tạp chí
Tiêu đề: Handling class imbalance in customer behavior prediction
[1] Jiawei Han and Micheline Kamber, ―Data Mining: Concepts and Techniques, Second Edition‖, ISBN 13: 978-1-55860-901-3, November 3, 2005 Khác
[2] Nguyễn Trúc Mai Anh, ―Phân lớp sinh viên dựa trên kết quả học tập trong hệ thống giáo dục tín chỉ‖, Luận Văn Tốt Nghiệp Thạc Sỹ, Đại Học Bách Khoa Thành Phố Hồ Chí Minh, Việt Nam, June 2013 Khác
[3]Brijesh Kumar Baradwaj, Saurabh Pal, ―Mining Educational Data to Analyze Students‖ Performance, (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 2, No. 6, 2011 Khác
[4] Ghadeer S. Abu-Oda and Alaa M. El-Halees,‖ Data Mining In Higher Education : University Student Dropout Case Study‖, International Journal of Data Mining &Knowledge Management Process (IJDKP) Vol.5, No.1, January 2015 Khác
[5] Yaohua TANG and Jinghuai GAO, ―Improved Classification for Problem Involving Overlapping Patterns‖, IEICE TRANS. INF. & SYST., VOL.E90–D, NO.11 NOVEMBER 2007 Khác
[6] Nitesh V. Chawla, Kevin W. Bowyer, Lawrence O. Hall and W. Philip Kegelmeyer, ―SMOTE: Synthetic Minority Over-sampling Technique‖ Journal of Artificial Intelligence Research 16, p321–357, 2002 Khác
[7] Mikel Galar, Alberto Fern´andez, Edurne Barrenechea, Humberto Bustinceand Francisco Herrera, ―A Review on Ensembles for the Class Imbalance Problem: Bagging-, Boosting-, and Hybrid-Based Approaches‖, IEEE Transactions On Systems, Man, And Cybernetics—Part C: Applications And Reviews, Volume:42 , Issue: 4, p463 – 484, July 2012 Khác
[8] Deepika Tiwari, ―Handling Class Imbalance Problem Using Feature Selection‖, International Journal of Advanced Research in Computer Science & Technology (IJARCST 2014) Vol. 2, Issue 2, Ver. 3 (April - June 2014) Khác
[9] Ilnaz Jamali , Mohammad Bazmara and Shahram Jafari, ―Feature Selection in Imbalance data sets‖, IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 3, No 2, May 2012 Khác
[10] Haibo He, Member, IEEE, and Edwardo A. Garcia, ―Learning from Imbalanced Data‖, IEEE Transactions On Knowledge And Data Engineering,Vol. 21, No. 9, September 2009 Khác
[11] Vaishali Ganganwar, ―An overview of classification algorithms for imbalanced datasets‖ International Journal of Emerging Technology and Advanced Engineering, ISSN 2250-2459, Volume 2, Issue 4, April 2012 Khác
[12] Tao D., Tang X., Li X., Wu X, ―Asymmetric bagging and random subspace for suppor vector machines-based relevance feedback in image retrieval‖, IEEE Transactions on Pattern Analysisand Machine Intelligence, Volume 28 , Issue 7, p 1088–1099, July 2006 Khác
[13] Wang S & Yao, ―Diversity Analysis on Imbalanced Data Sets by using Ensemble Models‖,In Proc. of The IEEE Symposium on Computational Intelligence and Data Mining, April 2 2009 Khác
[14] Liu Y., Chawla N, V., Harper M., Shriberg E., Stolcke A.,(2006), ―A Study in Machine Learningfrom Imbalanced Data for Sentence Boundary Detection in Speech‖;Computer Speech andLanguage, 20, 468-494, Oct, 2006 Khác
[15] Schebesch K, Stecking R,―Using Multiple SVM Models for Unbalanced Credit Scoring DataSets‖; In Classification, Data Analysis, and Knowledge Organization, p515–522, March 7–9, 2007 Khác
[16] Nitesh V. Chawla , Ar Lazarevic , Lawrence O. Hall , Kevin W. Bowyer, ―SMOTEBoost: improving prediction of the minority class in boosting‖, In Proceedings of the Principles of Knowledge Discovery in Databases, PKDD-2003 Khác
[17] Chris Seiffert, Taghi M. Khoshgoftaar, Jason Van Hulse and Amri Napolitano, ―RUSBoost: A Hybrid Approach to Alleviating Class Imbalance‖, IEEE Transactions On Systems, Man, And Cybernetics—Part A: Systems And Humans, Vol. 40, No. 1, January 2010 Khác
[18] Victoria López, Alberto Fernández, Jose G. Moreno-Torres and Francisco Herrera, ―Analysis of preprocessing vs. cost-sensitive learning for imbalanced classification. Open problems on intrinsic data characteristics‖, Expert Systems with Applications 39, p 6585–6608, 2012 Khác
[19]Carlos Márquez and Cristóbal Romero, ―Predicting student failure at school using geneticprogrammingand different data mining approaches with high dimensional and imbalanced data‖, Applied Intelligence, Volume 38, Issue 3 , pp 315-330, Aprill 2013 Khác

HÌNH ẢNH LIÊN QUAN

Hình  1: Xác định không gian dữ liệu chồng lấp(công trình [5]) - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 1: Xác định không gian dữ liệu chồng lấp(công trình [5]) (Trang 20)
Hình  2: Dữ liệu bị chồng lấp(công trình [20])  Hướng tiếp cận - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 2: Dữ liệu bị chồng lấp(công trình [20]) Hướng tiếp cận (Trang 21)
Hình  3: Xây dựng mô hình phân lớp - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 3: Xây dựng mô hình phân lớp (Trang 30)
Hình  4: Đánh giá mô hình phân lớp  4.4  Sử dụng mô hình - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 4: Đánh giá mô hình phân lớp 4.4 Sử dụng mô hình (Trang 32)
Hình  5: Sử dụng mô hình phân lớp - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 5: Sử dụng mô hình phân lớp (Trang 33)
Bảng 1: Tỷ lệ dữ liệu bị chồng lấp của tập dữ liệu điểm tổng kết môn học của sinh  viên năm 2, năm 3, năm 4 khi sử dụng phương pháp KNN để phát hiện - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Bảng 1 Tỷ lệ dữ liệu bị chồng lấp của tập dữ liệu điểm tổng kết môn học của sinh viên năm 2, năm 3, năm 4 khi sử dụng phương pháp KNN để phát hiện (Trang 34)
Bảng 2: Tỷ lệ dữ liệu mất cân bằng khi khảo sát tập dữ liệu điểm tổng kết môn học - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Bảng 2 Tỷ lệ dữ liệu mất cân bằng khi khảo sát tập dữ liệu điểm tổng kết môn học (Trang 35)
Hình 6: Phương pháp thực nghiệm - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 6 Phương pháp thực nghiệm (Trang 36)
Hình  8: Sử dụng StratifiedRemoveFold để chia ra các Fold cho phương pháp k-fold - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 8: Sử dụng StratifiedRemoveFold để chia ra các Fold cho phương pháp k-fold (Trang 37)
Bảng 3: Phát hiện vùng chồng lấp trong tập dữ liệu năm 2 - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Bảng 3 Phát hiện vùng chồng lấp trong tập dữ liệu năm 2 (Trang 40)
Hình  9: Xây dựng mô hình ở bước 4 - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 9: Xây dựng mô hình ở bước 4 (Trang 43)
Hình  10: Đánh giá mô hình ở bước 4 - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 10: Đánh giá mô hình ở bước 4 (Trang 44)
Bảng 6: kết quả phân lớp của các thuật toán khi chƣa xử lý dữ liệu chồng lấp - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Bảng 6 kết quả phân lớp của các thuật toán khi chƣa xử lý dữ liệu chồng lấp (Trang 47)
Bảng 7: kết quả phân lớp tập dữ liệu năm 2, năm 3 và năm 4 trên các vùng dữ liệu - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Bảng 7 kết quả phân lớp tập dữ liệu năm 2, năm 3 và năm 4 trên các vùng dữ liệu (Trang 48)
Hình  12: Biểu đồ kết quả phân lớp tập dữ liệu năm 2 trên các vùng dữ liệu chồng - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 12: Biểu đồ kết quả phân lớp tập dữ liệu năm 2 trên các vùng dữ liệu chồng (Trang 49)
Hình  13:Biểu đồ kết quả phân lớp tập dữ liệu năm 3 trên các vùng dữ liệu chồng - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
nh 13:Biểu đồ kết quả phân lớp tập dữ liệu năm 3 trên các vùng dữ liệu chồng (Trang 50)
Hình 14: Biểu đồ kết quả phân tập dữ liệu năm 4 lớp trên các vùng dữ liệu chồng - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 14 Biểu đồ kết quả phân tập dữ liệu năm 4 lớp trên các vùng dữ liệu chồng (Trang 51)
Bảng 8: kết quả phân lớp tập dữ liệu năm 2, năm 3 và năm 4 trên các vùng dữ liệu  chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã kết hợp cải thiện - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Bảng 8 kết quả phân lớp tập dữ liệu năm 2, năm 3 và năm 4 trên các vùng dữ liệu chồng lấp và không chồng lấp khi sử dụng phương pháp phân rã kết hợp cải thiện (Trang 52)
Hình 18: Biểu đồ so sánh kết quả phân lớp tập dữ liệu năm 2 trên vùng dữ liệu - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 18 Biểu đồ so sánh kết quả phân lớp tập dữ liệu năm 2 trên vùng dữ liệu (Trang 57)
Hình 19: Biểu đồ so sánh kết quả phân lớp tập dữ liệu năm 3 trên vùng dữ liệu - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 19 Biểu đồ so sánh kết quả phân lớp tập dữ liệu năm 3 trên vùng dữ liệu (Trang 58)
Hình 20: Biểu đồ so sánh kết quả phân lớp tập dữ liệu năm 4 trên vùng dữ liệu - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 20 Biểu đồ so sánh kết quả phân lớp tập dữ liệu năm 4 trên vùng dữ liệu (Trang 58)
Bảng 10: so sánh kết quả phân lớp năm 2, năm 3 và năm 4 khi chƣa xử lý dữ liệu  chồng lấp; khi sử dụng phương pháp phân rã và khi kết hợp phương pháp phân rã - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Bảng 10 so sánh kết quả phân lớp năm 2, năm 3 và năm 4 khi chƣa xử lý dữ liệu chồng lấp; khi sử dụng phương pháp phân rã và khi kết hợp phương pháp phân rã (Trang 59)
Hình 21: Biểu đồ so sánh kết quả phân lớp năm 2 khi chƣa xử lý dữ liệu chồng lấp; - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 21 Biểu đồ so sánh kết quả phân lớp năm 2 khi chƣa xử lý dữ liệu chồng lấp; (Trang 60)
Hình 22: Biểu đồ so sánh kết quả phân lớp năm 3 khi chƣa xử lý dữ liệu chồng lấp; - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 22 Biểu đồ so sánh kết quả phân lớp năm 3 khi chƣa xử lý dữ liệu chồng lấp; (Trang 62)
Hình 23: Biểu đồ so sánh kết quả phân lớp năm 4 khi chƣa xử lý dữ liệu chồng lấp; - Luận văn thạc sĩ Khoa học máy tính: Phân lớp dữ liệu chồng lấp cho bài toán dự báo sớm trạng thái học tập của sinh viên
Hình 23 Biểu đồ so sánh kết quả phân lớp năm 4 khi chƣa xử lý dữ liệu chồng lấp; (Trang 63)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w