TRƯỜNG ĐẠI HỌC ĐIỆN LỰCKHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ CUỐI MÔN KHAI PHÁ DỮ LIỆU SỬ DỤNG PHƯƠNG PHÁP RANDOM FOREST CHO BÀI TOÁN DỰ ĐOÁN HIỆU SUẤT HỌC TẬP CỦA SINH VIÊNSinh viê
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO CHUYÊN ĐỀ CUỐI MÔN KHAI PHÁ DỮ LIỆU
SỬ DỤNG PHƯƠNG PHÁP RANDOM FOREST CHO BÀI TOÁN DỰ ĐOÁN HIỆU SUẤT HỌC TẬP
CỦA SINH VIÊNSinh viên thực hiện : LÊ HOÀNG MINH
HOÀNG GIANG THÀNH HOÀNG TRỌNG HẠNH Giảng viên hướng dẫn : VŨ VĂN ĐỊNH
Ngành : CÔNG NGHỆ THÔNG TIN Chuyên ngành : CÔNG NGHỆ PHẦN MỀM
Khóa : 2021-2026
Hà Nội, tháng 05 năm 2024
Trang 2* Cây quyết định (Decision Tree)
Cây quyết định là một công cụ khá phổ biến để phân lớp và dự báo, được đánh giácao:
+ Tốc độ học tương đối nhanh so với các phương pháp khác
+ Có thể chuyển thành luật một cách dễ dàng
+ Sự chính xác cũng khá tốt
+ Đòi hỏi tiền xử lý đơn giản
Cây quyết định (decision tree) – mô hình phân lớp
Node cha: phép kiểm thử (test) trên một thuộc tính
Node lá: nhãn/mô tả của một lớp (class label)
Nhánh từ một node cha: kết quả của một phép thử trên thuộc tính tương ứng
Các mẫu huấn luyện xuất phát nằm ở gốc
Chọn một thuộc tính để phân chia tập mẫu huấn luyện thành nhánh
Tiếp tục lặp việc xây dựng cây quyết định cho các nhánh, quá trình dừng khi:Tất cả các mẫu đều được phân lớp
Không còn thuộc tính nào có thể dùng để chia mẫu
Trang 3PHIẾU CHẤM ĐIỂM STT Họ và tên Nội dung thực hiện Điểm Chữ ký
1 Lê Hoàng Minh
Trang 4MỤC LỤC
Trang 5LỜI MỞ ĐẦU
Trong thời đại số hóa hiện nay, dữ liệu ngày càng trở nên phong phú và quantrọng trong mọi lĩnh vực của cuộc sống Trong giáo dục, việc sử dụng dữ liệu đểhiểu và dự đoán hiệu suất học tập của sinh viên có thể cung cấp thông tin quý báucho các nhà quản lý giáo dục, giáo viên, và sinh viên chính họ Trong báo cáo này,chúng em tiến hành khai phá dữ liệu để dự đoán hiệu suất học tập của sinh viênbằng cách sử dụng mô hình Random Forest Mô hình này là một trong nhữngphương pháp học máy phổ biến và mạnh mẽ, được ứng dụng rộng rãi trong nhiềulĩnh vực khác nhau bao gồm dự đoán và phân loại
Bài toán của chúng em là dự đoán hiệu suất học tập của sinh viên dựa trêncác yếu tố như thông tin cá nhân, học lực trước đây, và các yếu tố khác liên quan.Mục tiêu là xây dựng một mô hình dự đoán chính xác và đáng tin cậy, từ đó cungcấp thông tin hữu ích cho quản lý giáo dục và sinh viên để cải thiện hiệu suất họctập Chúng em sẽ sử dụng phương pháp khai phá dữ liệu để tiến hành thu thập, xử
lý, và phân tích dữ liệu Trong quy trình này, chúng em sẽ áp dụng mô hìnhRandom Forest, một phương pháp học máy mạnh mẽ cho bài toán dự đoán
Trang 6CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 1.1 Đặt vấn đề
1.2 Cơ sở hình thành đề tài
1.3 Mục tiêu đề tài
1.4 Đối tượng và phương pháp nghiên cứu
Trang 7CHƯƠNG 2: KHAI PHÁ DỮ LIỆU 2.1 Tổng quan về kỹ thuật khai phá dữ liệu (Data Mining)
2.1.1 Khái niệm về khai phá dữ liệu
Khai phá dữ liệu (Data Mining) là quá trình khám phá các mẫu, xu hướng và thông tin hữu ích từ một lượng lớn dữ liệu thô Đây là một phần quan trọng của quá trình khám phá tri thức từ dữ liệu (Knowledge Discovery in Databases - KDD) Khai phá dữ liệu bao gồm việc sử dụng các kỹ thuật thống
kê, toán học và trí tuệ nhân tạo để trích xuất thông tin có giá trị từ dữ liệu và chuyển nó thành một cấu trúc dễ hiểu để sử dụng sau này.
### 2.1.2 Quy trình khai phá dữ liệu
Quy trình khai phá dữ liệu gồm các bước chính như sau:
1 **Thu thập dữ liệu**:
+ Thu thập dữ liệu từ nhiều nguồn khác nhau như cơ sở dữ liệu, kho dữ liệu, dữ liệu trực tuyến, cảm biến và nhiều nguồn dữ liệu khác.
+ Các nguồn dữ liệu có thể bao gồm dữ liệu có cấu trúc (bảng cơ sở dữ liệu),
dữ liệu bán cấu trúc (XML, JSON) và dữ liệu phi cấu trúc (văn bản, hình ảnh).
Trang 8+ **Biến đổi dữ liệu**: Chuẩn hóa dữ liệu, trích xuất các thuộc tính đặc trưng, tạo ra các thuộc tính mới nếu cần thiết.
+ **Giảm thiểu dữ liệu**: Sử dụng các kỹ thuật như lấy mẫu, tổng hợp dữ liệu và lựa chọn thuộc tính để giảm kích thước của dữ liệu mà không làm mất thông tin quan trọng.
5 **Diễn giải và trình bày**:
+ Diễn giải kết quả khai phá dữ liệu một cách rõ ràng và có ý nghĩa.
Trang 9+ Trình bày kết quả thông qua các báo cáo, biểu đồ, đồ thị hoặc các công cụ trực quan hóa khác để người dùng dễ dàng hiểu và áp dụng vào thực tế.
### 2.1.3 Ứng dụng của khai phá dữ liệu
Khai phá dữ liệu có ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau: + **Kinh doanh**:
+ Phân tích hành vi khách hàng để cá nhân hóa dịch vụ và sản phẩm + Dự đoán xu hướng thị trường và tối ưu hóa chiến lược marketing + Phát hiện gian lận và quản lý rủi ro.
+ **Y tế**:
+ Phân tích hồ sơ bệnh án để dự đoán bệnh tật và phát hiện xu hướng sức khỏe.
+ Tối ưu hóa quy trình điều trị và quản lý bệnh nhân.
+ Nghiên cứu các yếu tố ảnh hưởng đến sức khỏe cộng đồng.
+ Phân tích dữ liệu học sinh để cải thiện chất lượng giảng dạy.
+ Cá nhân hóa quá trình học tập và phát hiện sớm học sinh có nguy cơ bỏ học.
+ Nghiên cứu các phương pháp giảng dạy hiệu quả.
Trang 10+ **Nông nghiệp**:
+ Dự đoán năng suất mùa vụ và tối ưu hóa quản lý trang trại.
+ Phân tích điều kiện thời tiết và các yếu tố môi trường để cải thiện sản xuất.
+ Quản lý chuỗi cung ứng nông sản và giảm thiểu lãng phí.
Hệ thống hỗ trợ ra quyết định (Decision Support System - DSS) là một công
cụ tích hợp nhiều công nghệ và phương pháp như khai phá dữ liệu, phân tích thống kê, mô phỏng và trực quan hóa dữ liệu DSS cung cấp thông tin có giá trị, hỗ trợ quá trình ra quyết định trong các lĩnh vực như kinh doanh, y tế, tài chính, quản lý và nhiều lĩnh vực khác.
### Các thành phần chính của DSS
1 **Cơ sở dữ liệu**: Lưu trữ dữ liệu cần thiết cho việc ra quyết định.
2 **Mô hình phân tích**: Bao gồm các thuật toán và phương pháp phân tích
dữ liệu.
3 **Giao diện người dùng**: Cung cấp khả năng tương tác giữa người dùng
và hệ thống, giúp người dùng truy vấn và trực quan hóa dữ liệu.
Trang 11## 2.3 Bài toán phân lớp trong khai phá dữ liệu
### 2.3.1 Khái niệm về phân lớp
Phân lớp (Classification) là một kỹ thuật trong khai phá dữ liệu dùng để gán các đối tượng vào các nhóm hoặc lớp đã được xác định trước dựa trên các đặc trưng hoặc thuộc tính của chúng Mục tiêu của phân lớp là xây dựng một mô
Trang 12hình từ dữ liệu đã biết (dữ liệu huấn luyện), sau đó sử dụng mô hình này để phân loại các đối tượng mới.
Ví dụ: Trong lĩnh vực email, phân lớp có thể được sử dụng để xác định một email là "spam" hay "không spam" Trong lĩnh vực y tế, phân lớp có thể giúp chẩn đoán bệnh dựa trên các triệu chứng và dữ liệu y tế của bệnh nhân.
### 2.3.2 Quy trình phân lớp dữ liệu
Quy trình phân lớp dữ liệu thường bao gồm các bước sau:
1 **Thu thập dữ liệu**:
+ Thu thập dữ liệu huấn luyện, trong đó mỗi đối tượng đều được gán nhãn lớp Dữ liệu này thường bao gồm các đặc trưng (features) và nhãn (labels) tương ứng.
+ Dữ liệu huấn luyện phải đủ lớn và đa dạng để đảm bảo mô hình phân lớp
có thể học được các đặc trưng quan trọng.
Trang 133 **Xây dựng mô hình phân lớp**:
+ Sử dụng dữ liệu huấn luyện để xây dựng mô hình phân lớp bằng các thuật toán như cây quyết định (Decision Tree), mạng nơ-ron (Neural Network), máy vector hỗ trợ (Support Vector Machine - SVM), k-NN (k- Nearest Neighbors), Naive Bayes và nhiều thuật toán khác.
+ Lựa chọn thuật toán phù hợp dựa trên tính chất của dữ liệu và mục tiêu phân lớp.
+ **ROC và AUC**: Đường cong ROC và diện tích dưới đường cong ROC để đánh giá hiệu suất của mô hình.
5 **Áp dụng mô hình**:
+ Sử dụng mô hình đã được huấn luyện để phân loại các đối tượng mới Quá trình này bao gồm việc sử dụng mô hình để gán nhãn cho các đối tượng chưa biết nhãn.
+ Đảm bảo rằng mô hình được áp dụng đúng cách và các kết quả phân loại được kiểm tra và xác nhận.
Trang 146 **Bảo trì và cải thiện mô hình**:
+ Cập nhật mô hình theo thời gian dựa trên dữ liệu mới để duy trì và cải thiện hiệu suất phân loại Quá trình này có thể bao gồm việc thu thập thêm dữ liệu huấn luyện, điều chỉnh các tham số của mô hình hoặc thậm chí thay đổi thuật toán phân lớp nếu cần thiết.
+ Theo dõi hiệu suất của mô hình trong thực tế và thực hiện các thay đổi cần thiết để đảm bảo mô hình vẫn phù hợp với dữ liệu hiện tại.
### Kết luận
Phân lớp là một kỹ thuật quan trọng trong khai phá dữ liệu, giúp gán nhãn các đối tượng mới dựa trên dữ liệu huấn luyện Quy trình phân lớp bao gồm các bước từ thu thập và tiền xử lý dữ liệu, xây dựng và đánh giá mô hình, đến
áp dụng và bảo trì mô hình Hiệu quả của phân lớp phụ thuộc vào chất lượng
dữ liệu, lựa chọn thuật toán và quá trình đánh giá mô hình Việc áp dụng phân lớp rộng rãi trong nhiều lĩnh vực giúp cải thiện quá trình ra quyết định
và tối ưu hóa các hoạt động kinh doanh và quản lý.
Trang 15CHƯƠNG 3: XÂY DỰNG MÔ HÌNH DỮ LIỆU RANDOM FOREST 3.1 Cơ sở dữ liệu xây dựng mô hình
+ Nguồn dữ liệu: dữ liệu được thu thập từ các cơ sở giáo dục, bao gồm thông tin về
sinh viên, kết quả học tập, và các yếu tố ảnh hưởng đến học tập như hoàn cảnh giađình, thời gian học tập, hoạt động ngoại khóa, và các yếu tố cá nhân khác.+ Các thuộc tính dữ liệu: các thuộc tính của dữ liệu bao gồm:
Thông tin cá nhân: Tuổi, giới tính, địa chỉ
Thông tin học tập: Điểm số từng môn học, điểm trung bình học kỳ, điểmtổng kết
Thông tin xã hội: Thu nhập gia đình, học vấn của bố mẹ
Các yếu tố khác: Thời gian tự học, tham gia các hoạt động ngoại khóa, sửdụng công nghệ trong học tập, thời gian lên thư viện
+ Tiền xử lý dữ liệu: dữ liệu thu thập được cần được tiền xử lý để loại bỏ các giátrị thiếu, xử lý các giá trị ngoại lai, và chuẩn hóa các thuộc tính để phù hợp với môhình Các bước tiền xử lý bao gồm:
Loại bỏ các bản ghi không đầy đủ hoặc không hợp lệ
Xử lý giá trị thiếu bằng cách thay thế bằng giá trị trung bình hoặc phươngpháp khác
Chuẩn hóa dữ liệu về một thang đo chung
Mã hóa các biến phân loại thành các biến số học để dễ dàng xử lý trong môhình
3.2 Phương pháp Random Forest sử dụng trong khai phá dữ liệu
3.2.1 Giới thiệu phương pháp Random Forest
Random Forest là một phương pháp học máy mạnh mẽ và linh hoạt, được sửdụng rộng rãi trong các bài toán phân loại và hồi quy Đây là một phương phápensemble learning, kết hợp nhiều cây quyết định (decision trees) để cải thiện độchính xác và giảm thiểu overfitting
Trang 16+ Nguyên lý hoạt động: Random Forest xây dựng nhiều cây quyết định độc lậptrên các tập con của dữ liệu huấn luyện, sau đó tổng hợp kết quả dự đoán của từngcây để đưa ra kết quả cuối cùng.
+ Ưu điểm:
Khả năng xử lý dữ liệu lớn và đa dạng
Giảm thiểu overfitting so với các mô hình cây quyết định đơn lẻ
Đánh giá được tầm quan trọng của từng thuộc tính trong mô hình
+ Nhược điểm:
Cần tài nguyên tính toán lớn hơn so với các mô hình đơn giản
Kết quả không dễ diễn giải như các cây quyết định đơn lẻ
3.2.2 Thuật toán CART
CART (Classification and Regression Trees) là thuật toán cơ bản để xâydựng cây quyết định, sử dụng trong Random Forest Thuật toán CART hoạt độngnhư sau:
Xây dựng cây quyết định: CART xây dựng cây quyết định bằng cách chọn
thuộc tính phân chia tại mỗi nút sao cho giảm thiểu độ đo lỗi (như Giniimpurity hoặc entropy đối với bài toán phân loại, và mean squared error đốivới bài toán hồi quy)
Quá trình chia tách: Ở mỗi nút, thuật toán chọn thuộc tính và ngưỡng phân
chia sao cho tổng độ lỗi của các nhánh con là nhỏ nhất Quá trình này đượclặp lại đệ quy cho đến khi đạt điều kiện dừng (như chiều sâu tối đa của câyhoặc số lượng mẫu tối thiểu tại mỗi nút)
Tỉa cây: Để tránh overfitting, cây quyết định có thể được tỉa bớt bằng cách
loại bỏ các nhánh không đóng góp đáng kể vào độ chính xác của mô hình
Trang 173.3 Random Forest trong giải quyết bài toán khai phá dữ liệu về hiệu suất học tập của sinh viên
3.3.1 Lý do chọn Random Forest
Hiệu suất cao: Random Forest thường cho kết quả chính xác cao hơn so với
các mô hình đơn giản nhờ khả năng kết hợp kết quả từ nhiều cây quyết định
Khả năng xử lý dữ liệu không đồng nhất: Mô hình có khả năng xử lý tốt
dữ liệu với nhiều dạng thuộc tính khác nhau (số học, phân loại, thứ tự)
Giảm thiểu overfitting: Bằng cách sử dụng nhiều cây quyết định độc lập,
Random Forest giảm thiểu rủi ro overfitting so với các mô hình cây đơn lẻ
Đánh giá được tầm quan trọng của các thuộc tính: Random Forest cung
cấp thông tin về tầm quan trọng của từng thuộc tính trong việc dự đoán kếtquả, giúp hiểu rõ hơn về các yếu tố ảnh hưởng đến hiệu suất học tập của sinhviên
3.3.2 Tập dữ liệu sinh viên
+ Mô tả tập dữ liệu: tập dữ liệu được thu thập từ một trường đại học bao gồm các
thông tin chi tiết về sinh viên và kết quả học tập của họ
+ Kích thước tập dữ liệu: Tập dữ liệu bao gồm X sinh viên và Y thuộc tính.+ Các thuộc tính chính:
Thuộc tính cá nhân: Giới tính, quốc tịch, nơi sinh.
Thuộc tính học tập: Giai đoạn giáo dục, cấp lớp, phần ID, chủ đề, học kỳ.
Hoạt động trong lớp: Giơ tay, tài nguyên đã truy cập, xem thông báo, nhóm
thảo luận
Thông tin phụ huynh: Phụ huynh có trách nhiệm với học sinh, khảo sát trả
lời của phụ huynh, mức độ hài lòng của phụ huynh đối với trường học
Sự tham gia của học sinh: Ngày học sinh vắng mặt.
+ Quy trình thu thập dữ liệu: dữ liệu được thu thập từ hệ thống quản lý học tập củatrường và các khảo sát bổ sung từ sinh viên
Trang 18+ Tiền xử lý dữ liệu: các bước tiền xử lý được thực hiện để đảm bảo dữ liệu sạch
và sẵn sàng cho việc xây dựng mô hình, bao gồm xử lý các giá trị thiếu, chuẩn hóa
dữ liệu, và mã hóa các biến phân loại
Trang 19CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ 4.1 Xây dựng mô hình Random Forest bằng Google Colab
Hình 4.1 Code
Hình 4.2 Code
Trang 20Hình 4.3 Hiển thị tập dữ liệu
Hình 4.4 Đánh giá dựu đoán và biểu đồ đặc trưng
Trang 214.2 Xây dựng mô hình Random Forest bằng VSCode
Hình 4.5 Code
Trang 22Hình 4.6 Code
Hình 4.7 Kết quả chạy
Trang 23KẾT LUẬN
Trong báo cáo này, chúng em đã áp dụng phương pháp Random Forest để
dự đoán hiệu suất học tập của sinh viên Kết quả cho thấy Random Forest là mộtcông cụ mạnh mẽ và hiệu quả trong việc phân loại và hồi quy, giúp giảm thiểu hiệntượng overfitting và cải thiện độ chính xác của mô hình dự đoán
Các thuộc tính như giới tính, quốc tịch, nơi sinh, giai đoạn giáo dục, cấp lớp
và các hoạt động trong lớp (giơ tay, truy cập tài nguyên, tham gia nhóm thảo luận)
có ảnh hưởng đáng kể đến hiệu suất học tập của sinh viên Đặc biệt, sự tham giatích cực của sinh viên trong quá trình học tập đóng vai trò quan trọng trong việc dựđoán kết quả
Việc sử dụng dữ liệu giáo dục để xây dựng mô hình dự đoán giúp cải thiệnquản lý giáo dục và hỗ trợ giáo viên, sinh viên trong việc nhận diện và giải quyếtcác vấn đề tiềm ẩn Tuy nhiên, Random Forest yêu cầu tài nguyên tính toán lớn vàkhông dễ diễn giải kết quả như các cây quyết định đơn lẻ Các nghiên cứu trongtương lai có thể tập trung vào tối ưu hóa thuật toán và mở rộng tập dữ liệu để nângcao hiệu quả và khả năng ứng dụng của mô hình
Nhìn chung, nghiên cứu này đã cho thấy tiềm năng của Random Forest trongviệc dự đoán hiệu suất học tập, đồng thời mở ra hướng phát triển mới cho việc ứngdụng học máy trong giáo dục Việc tiếp tục nghiên cứu và ứng dụng các phươngpháp này sẽ góp phần nâng cao chất lượng giáo dục và hiệu suất học tập của sinhviên
Trang 24TÀI LIỆU THAM KHẢO