LÝ DO CHỌN ĐỀ TÀI
• Về sự tiến bộ của khoa học kỹ thuật:
• Trí thông minh nhân tạo (AI) đang là xu hướng
• Sự tiến bộ không ngừng của máy học (Machine Learning)
• Các giải thuật gợi ý ngày càng chính xác
• Về nhu cầu thiết yếu:
• Định hướng và chọn mục tiêu là việc rất quan trọng
• Chọn sai môn học gây tổn thất lớn cho sinh viên, gia đình và xã hội
• Dự đoán kết quả học tập giúp đánh giá, phân loại sinh viên một cách nhanh
chóng, chính xác.
• Về cá nhân
• Với mong muốn học hỏi và ứng dụng máy học vào các vấn đề thực tiễn nhất
là đối với việc cấp thiết như lựa chọn môn học
43 trang |
Chia sẻ: thanhle95 | Lượt xem: 577 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Tiểu luận Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
XÂY DỰNG WEBSITE DỰ ĐOÁN KẾT QUẢ HỌC
TẬP VÀ GỢI Ý LỰA CHỌN MÔN HỌC DỰA TRÊN
KHAI PHÁ DỮ LIỆU VÀ MÁY HỌC
GVHD: TS. Bùi Thành Hùng
SVTH: Trương Thiệu Huy
MSSV: 1424801030127
NIÊN KHÓA: 2014 - 2018
TIỂU LUẬN TỐT NGHIỆP
ĐẠI HỌC THỦ DẦU MỘT
KHOA KỸ THUẬT CÔNG NGHỆ
Bình Dương – 5/2018
NỘI DUNG
1. GIỚI THIỆU
2. TỔNG QUAN
3. MÔ HÌNH TIẾP CẬN
4. THỰC NGHIỆM
5. DEMO
6. KẾT LUẬN
2Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
1. GIỚI THIỆU
3Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
LÝ DO CHỌN ĐỀ TÀI
• Về sự tiến bộ của khoa học kỹ thuật:
• Trí thông minh nhân tạo (AI) đang là xu hướng
• Sự tiến bộ không ngừng của máy học (Machine Learning)
• Các giải thuật gợi ý ngày càng chính xác
• Về nhu cầu thiết yếu:
• Định hướng và chọn mục tiêu là việc rất quan trọng
• Chọn sai môn học gây tổn thất lớn cho sinh viên, gia đình và xã hội
• Dự đoán kết quả học tập giúp đánh giá, phân loại sinh viên một cách nhanh
chóng, chính xác.
• Về cá nhân
• Với mong muốn học hỏi và ứng dụng máy học vào các vấn đề thực tiễn nhất
là đối với việc cấp thiết như lựa chọn môn học
4Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
MỤC TIÊU
• Từ những dữ liệu của sinh viên thông qua máy học để tiến hành
dự đoán và gợi ý môn học
• Thực hiện dự đoán trên 3 giải thuật gợi ý:
• Content base
• Collaborative Filtering
• Matrix Factorization
• Xây dựng website hiển thị kết quả dự đoán và gợi ý lựa chọn
môn học
5Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
2. TỔNG QUAN
6Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
CƠ SỞ LÍ THUYẾT
• Máy học (Machine Learning)
• Hệ thống gợi ý (Recommender System)
7Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Recommender System
8Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Các nghiên cứu ở Việt Nam
Dự đoán kết quả học tập và gợi ý lựa chọn môn học bằng phương
pháp Phân rã ma trận – Huỳnh Lý Thanh Nhân (Luận văn Thạc sĩ –
Đại học Cần Thơ - 2013)
Khai phá dữ liệu điểm để dự đoán kết quả học tập của sinh viên
trường Cao đẳng Sư phạm Hà Nội bằng Business Intelligence
Development Studio của SQL Server 2008 - Phạm Thị Như Trang
(Luận văn Thạc sĩ – Đại học Công nghệ - 2013)
Huynh Ly Thanh-Nhan, Huu-Hoa Nguyen, and Nguyen Thai-Nghe.
2016. Methods for building course recommendation systems. In
Proceedings of the 2016 International Conference on Knowledge and
Systems Engineering (KSE 2016), pp.163-168, ISBN 978-1-4673-
8929-7, IEEE Xplore.
9Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Giải pháp đề xuất
Xây dựng hệ thống dự đoán kết quả học tập và gợi ý lựa
chọn môn học bằng 3 phương pháp:
- Content based filtering
- Collaborative filtering
- Matrix Factorization
Xây dựng Website trực quan hóa kết quả
10Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Xây dựng Website trực quan hóa kết quả
Dự đoán kết quả
Gợi ý lựa chọn môn học
So sánh đánh giá
các mô hình
Tích hợp vào hệ
thống quản lý
Thông tin
Phân tích kết quả
11Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
3. MÔ HÌNH ĐỀ XUẤT
12Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
MÔ HÌNH ĐỀ XUẤT
13Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
ỨNG DỤNGXÂY DỰNG MODEL
Dữ liệu thô
Xử lí và chọn
lọc
Phân tách
Huấn luyện
6 Models:
- Content base (2)
- Collaborative Filtering (2)
- Matrix Factorization (2)
Server
API
Http
Website
Xây dựng
model
DỮ LIỆU THÔ
14Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
DỮ LIỆU THÔ
15Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
XỬ LÝ VÀ CHỌN LỌC
16Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
PHÂN TÁCH DỮ LIỆU
17Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Hình a Hình b
XÂY DỰNG HỆ THỐNG BẰNG 3 PHƯƠNG PHÁP
• Content based filtering
• Collaborative filtering
• Matrix Factorization
18Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Content based filtering
Là giá trị điểm của môn đã có điểm
19Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Là feature môn đã có điểm
e là vector cột chứa S(n) phần tử 1Sn là số môn đã có điểm
Content based filtering
Ta có feature matrix cho item như sau:
Xét user E ta có:
Từ đó suy ra:
Áp dụng vào công thức để tìm nghiệm w5 và b5:
20Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Content based filtering
• Sau khi ta tìm được mô hình cho user. Thì kết quả dự
đoán của user (n) và item (m) sẽ được tính bằng:
Xây dựng Website dự đoán kết quả học tập và gợi ý lựa
chọn môn học dựa trên khai phá dữ liệu và máy học 21
Với X(m) là feature của item
Wn và bn là mô hình của user (n)
Collaborative Filtering
Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học 22
Các bước thực hiện:
• Tìm mean (Số điểm trung bình)
• Chuẩn hóa
• Tìm độ tương đồng
• Dự đoán
Collaborative Filtering
23Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Collaborative Filtering
24Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Ví dụ ta dự đoán u1 với i1:
Ta chọn hệ số k = 2
Các sinh viên có điểm i1: {u0, u3, u5}
Độ tương quan với u1: {0.83, -0.4, -0.23}
2 sinh viên gần u1 nhất: {u0, u5}
Điểm đã chuẩn hóa: {0.75, 0.5}
Matrix Factorization
25Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Tìm ra 2 ma trận X và W sao cho X.W = Y
K là số nhân tố tiềm ẩn
Thay vì cần N*N hoặc M*M bộ nhớ để lưu
Giờ ta chỉ cần K(N+M)
Matrix Factorization
Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học 26
Công thức cập nhật W
Công thức cập nhật X
Matrix Factorization
Mean => 4.5 4.5 1.5
U0 U1 U2
I0 0.5 0.5 0.5
I1 -0.5 0 0
I2 0 -0.5 -0.5
Chuẩn
hóa
Tìm y và
X|W
Cập nhật
27Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Matrix Factorization
-0.3 2.3 0.4
0.7 -0.4 3.0
0.5 0.5
0.5 -0.9
1.6 1.9
X =
W =
U0 U1 U2
I0 0.5 0.5 0.5
I1 -
0.5
? ?
I2 ? -
0.5
-
0.5
Chuẩn
hóa
Tìm y và
X|W
Cập nhật
Cập nhật X, Với item 0
Ta có: y = [0.5 , 0.5 , 0.5] , s = 6
Xn = [0.5 , 0.5]
28Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
-0.3 2.3 0.4
0.7 -0.4 3.0
Wm =
Matrix Factorization
-0.3 2.3 0.4
0.7 -0.4 3.0
Chuẩn
hóa
Tìm y và
X|W
Cập nhật
Cập nhật X, Với item 0
Ta có: y = [0.5 , 0.5 , 0.5] , s = 6
Xm = [0.5 , 0.5]
lam = 0.1
learn_rate = 0.75
Wm =
Kết quả ta cập nhật X0 = [0.3 , 0.7 ]
29Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
Recommender Systems
Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học 30
6 model sau khi đã huấn luyện
Điểm dự đoán
Điểm 6
Gợi ý
Không phải môn
tiên quyết
4. THỰC NGHIỆM
31Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
THỰC NGHIỆM
• Với CSDL của sinh viên D13HT01 (TDMU):
• Bao gồm 32 sinh viên
• 52 môn học
• Danh sách môn học và số tín chỉ
• Tổng số record là 1560
32Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
XÂY DỰNG MODEL
• Với 2 dạng dữ liệu để huấn luyện:
• Phân phối ngẫu nhiên (traing/test) với tỉ lệ 7/3
• Dùng 3 năm đầu để traning và dự đoán kết quả năm cuối
• Xây dựng các model cho từng giải thuật bằng lần lượt với 2
dạng dữ liệu:
=> Ta có tổng số model là 6
33Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
ĐÁNH GIÁ MODEL
• Dùng 3 độ do để đánh giá model
• MAE (Mean absolute error)
• MSE (Mean squared error)
• RMSE (Root mean squared error)
34Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
KẾT QUẢ
35Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
KẾT QUẢ
• Sai số trung bình của 3 giải thuật khoảng 1 điểm
• Giải thuật Content-based cho kết quả không được chính xác cho
đã đơn giản hóa feature của môn học
• Dùng bộ dữ liệu (3 năm đầu để dự đoán năm cuối) cho kết quả
sai số cao
36Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
XÂY DỰNG WEBSITE VÀ API
• Dùng Flask để xây dựng API trên python hỗ trợ việc đọc
model để tiến hành dự đoán và gợi ý
• Xây dựng website bằng MEAN Stack để hiển thị kết quả
37Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
KẾT QUẢ
38Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
5. DEMO
39Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
6. KẾT LUẬN
40Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
KẾT LUẬN
Xây dựng hệ thống dự đoán kết quả học tập và gợi ý lựa
chọn môn học bằng 3 phương pháp:
- Content based filtering
- Collaborative filtering
- Matrix factorization
Xây dựng Website trực quan hóa kết quả
Phân tích, đánh giá các model đề xuất
Thực nghiệm trên CSDL điểm của sinh viên Đại học TDM
41Xây dựng Website dự đoán kết quả học tập và gợi ý lựa chọn môn học dựa trên khai phá dữ liệu và máy học
TÀI LIỆU THAM KHẢO
Dự đoán kết quả học tập và gợi ý lựa chọn môn học bằng phương pháp Phân
rã ma trận – Huỳnh Lý Thanh Nhân (Luận văn Thạc sĩ – Đại học Cần Thơ -
2013)
Khai phá dữ liệu điểm để dự đoán kết quả học tập của sinh viên trường Cao
đẳng Sư phạm Hà Nội - Phạm Thị Như Trang (Luận văn Thạc sĩ – Đại học
Công nghệ - 2013)
Huynh Ly Thanh-Nhan, Huu-Hoa Nguyen, and Nguyen Thai-Nghe. 2016.
Methods for building course recommendation systems. In Proceedings of the
2016 International Conference on Knowledge and Systems Engineering
(KSE 2016), pp.163-168, ISBN 978-1-4673-8929-7, IEEE Xplore.
Francesco Ricci, Lior Rokach, Bracha Shapira, Paul B. Kantor,
Recommander Systems Handbook, Springer 2011
42