Bố cục luận văn Luận văn gồm các phần sau: Phần mở đầu Chương 1: Tổng quan về các phương pháp dự báo Chương 2: Thuật toán Bayes và thuật toán C4.5 Chương 3: Ứng dụng thuật toán C4.5 và
Trang 2TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS NGUYỄN QUANG HOAN
HÀ NỘI - 2022
Trang 3LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác
Hà Nội, ngày 01 tháng 08 năm 2022
HỌC VIÊN
Nguyễn Thị Hương
Trang 4LỜI CẢM ƠN
Em xin chân thành cảm ơn Khoa Công nghệ thông tin - Trường Đại học Mở
Hà Nội đã tạo điều kiện thuận lợi giúp em hoàn thành luận văn này
Em xin chân thành cảm ơn sự hướng dẫn, chỉ bảo tận tình của PGS.TS
Nguyễn Quang Hoan trong suốt thời gian thực hiện đề tài, cảm ơn thầy đã luôn
dành thời gian giúp đỡ em để có thể hoàn thành được luận văn này
Em xin cảm các thầy cô giáo khoa Công nghệ thông tin - Trường Đại học
Mở Hà Nội đã truyền thụ kiến thức, hỗ trợ em trong suốt quá trình học tập vừa qua Cảm ơn bạn bè, đồng nghiệp, gia đình và những người thân yêu đã luôn đồng hành, tạo mọi điều kiện, động viên giúp đỡ em trong quá trình học tập, công tác để hoàn thành khóa học và luận văn này
Qua một thời gian em đã hoàn thành luận văn tốt nghiệp với đề tài: Dự báo
sinh viên nhập học Khoa Công nghệ sinh học – Trường Đại học Mở Hà Nội dùng phương pháp học máy” Tuy đã cố gắng nhưng chắc chắn vẫn không tránh
khỏi những thiếu sót Kính mong nhận được sự thông cảm và đóng góp ý kiến của quý Thầy Cô và các bạn
Hà Nội, ngày 01 tháng 08 năm 2022
HỌC VIÊN
Nguyễn Thị Hương
Trang 5MỤC LỤC
LỜI CAM ĐOAN iii
LỜI CẢM ƠN iv
DANH MỤC CÁC THUẬT NGỮ vii
DANH MỤC CÁC BẢNG viii
LỜI MỞ ĐẦU 1
CHƯƠNG 1: 4
TỔNG QUAN VỀ CÁC PHƯƠNG PHÁP DỰ BÁO 4
1.1 Khái quát về dự báo 4
1.2 Các phương pháp dự báo 4
1.2.1 Phương pháp định tính 5
1.2.2 Phương pháp định lượng 5
1.3 Quy trình thực hiện dự báo 6
1.4 Các phương pháp, mô hình dự báo trên thế giới 9
1.4.1 Phương pháp định tính 9
1.4.2 Phân tích chuỗi thời gian 9
1.4.3 Mô hình nguyên nhân – kết quả 10
1.5 Các phương pháp, mô hình dự báo ở Việt Nam 10
1.5.1 Phương pháp ngoại suy 10
1.5.2 Phương pháp chuyên gia 11
1.5.3 Phương pháp mô hình hóa 11
1.5.4 Hướng tiếp cận mới 12
1.6 Kết luận chương 1 12
CHƯƠNG 2 : 13
THUẬT TOÁN C4.5 VÀ BAYES 13
2.1 Thuật toán C4.5 13
2.1.1 Giới thiệu chung 13
2.1.2 Thuật toán C4.5 13
2.1.3 C4.5 chọn thuộc tính phân loại tốt nhất 15
2.1.4 Xử lý trong trường hợp dữ liệu thiếu 16
2.1.5 Chuyển đổi từ cây quyết định sang luật 17
2.1.6 C4.5 là một thuật toán hiệu quả cho những tập dữ liệu vừa và nhỏ 18
2.1.7 Ví dụ minh họa cho giải thuật C4.5 18
2.2 Thuật toán Bayes 22
2.2.1 Ý tưởng và mục đích của thuật toán 22
2.2.2 Thuật toán Bayes 23
2.2.3 Ví dụ minh họa cho giải thuật Bayes 24
2.3 Kết luận chương 2 26
CHƯƠNG 3: 27
ỨNG DỤNG THUẬT TOÁN C4.5 VÀ BAYES ĐỂ DỰ BÁO 27
SỐ SINH VIÊN NHẬP HỌC 27
3.1 Giới thiệu bài toán 27
3.2 Thu thập và tiền xử lý dữ liệu 27
3.2.1 Thu thập dữ liệu 27
3.2.2 Phân tích và xử lý dữ liệu 29
3.3 Ứng dụng dự báo số sinh viên nhập học 32
3.3.1 Dự báo sinh viên nhập học dùng thuật toán C4.5 32
Trang 63.4 Giới thiệu phần mềm Weka 55
3.4.1 Giới thiệu chung 55
3.4.2 Phần mềm Weka 55
3.4.3 Cài đặt và chạy Weka 56
3.5 Kết quả thử nghiệm 57
3.5.1 Thử nghiệm bằng thuật toán C4.5 57
3.5.2 Thử nghiệm bằng thuật toán Bayes 62
3.5.3 So sánh độ đo phân lớp của C4.5 và Bayes 65
3.6 Thử nghiệm khi thêm/bớt đặc trưng đầu vào cho tập huấn luyện mẫu dữ liệu S 65
trên phần mềm Weka 65
3.6.1 Thêm một đặc trưng đầu vào (THXT) 65
3.6.2 Bớt một đặc trưng đầu vào (TD) 72
3.7 Thực nghiệm dữ liệu (Percentage Split) với C4.5 và Bayes trên Weka 78
3.7.1 Thực nghiệm dữ liệu với C4.5 ( sử dụng J48 trên Weka) 78
3.7.2 Thực nghiệm dữ liệu với Bayes trên Weka 80
3.8 Kết luận chương 3 81
KẾT LUẬN CHUNG 83
TÀI LIỆU THAM KHẢO 85
Trang 7DANH MỤC CÁC THUẬT NGỮ
C4.5 C4.5 Algorithm Giải thuật C4.5
GR Gain Ratio Tỉ số độ lợi
GDP Gross Domestic Product Tổng sản phẩm quốc nội
ID3 Inductive Dichotomizer 3 Giải thuật quy nạp cây ID3
IG Information Gain Độ lợi thông tin
Info Information Thông tin
SplitInfo Split Information Thông tin của phân phối dữ liệu
TN True Negative Sự kiện được dự đoán là Không” thực tế
có” xảy ra Đúng của giá trị âm : m đúng
TP True Positive Sự kiện được dự đoán là Có” thực tế
không” xảy ra Đúng của giá trị dương: Dương đúng
WEKA Waikato Environment for Knowledge Analysis
Môi trường Waikato để Phân tích Tri thức.Phần mềm học máy của trường Đại học Waikato
Trang 8DANH MỤC CÁC BẢNG
Bảng 1.1: Tổng hợp một số phương pháp dự báo thường dùng trên thế giới 4 Bảng 2.1: Bảng cơ sở dữ liệu dự đoán đỗ đại học 18
Bảng 3.4: Bảng so sánh kết quả GainRatio trong tập thuộc tính S 36 Bảng 3.5: Dữ liệu mẫu huấn luyện S1 (KV=KV1) 37 Bảng 3.6: Bảng so sánh kết quả GainRatio trong tập thuộc tính S1 39 Bảng 3.7: Dữ liệu mẫu huấn luyện S2 (TD = T-TBK) 40 Bảng 3.8 Bảng so sánh kết quả GainRatio trong tập thuộc tính S2 42 Bảng 3.9: Dữ liệu mẫu huấn luyện S3 (NH = CNTP) 43
Bảng 3.12: Bảng dữ liệu của các mẫu tin cần dự báo 48 Bảng 3.13: Bảng xác suất của tập dữ liệu sinh viên 49 Bảng 3.14: Bảng dữ liệu của các mẫu tin đã được gán nhãn 54 Bảng 3.15: Các độ đo của thuật toán C4.5 và Bayes 64
Trang 9DANH MỤC CÁC HÌNH
Hình 1.3: Mô hình dự báo trên công nghệ máy học 12
Hình 2.2: Ví dụ về Cây quyết định hoàn chỉnh 21
Hình 3.11: Kết quả Classifer Output thuật toán C4.5 59
Hình 3.13: Cây quyết định sử dụng thuật toán C4.5 trong Weka 61
Hình 3.15: Kết quả Classifer Output thuật toán Bayes 63
Hình 3.17: Cây quyết định (thêm đặc trƣng) dùng thuật toán C4.5 68 Hình 3.18 : Kết quả Classifer Output (thêm đặc trƣng) thuật toán C4.5 69 Hình 3.19: Kết quả Classifer Output (thêm đặc trƣng) thuật toán Bayes 70 Hình 3.20: Cây quyết định (bớt đặc trƣng) dùng thuật toán C4.5 74 Hình 3.21: Kết quả Classifer Output (bớt đặc trƣng) thuật toán C4.5 75 Hình 3.22: Kết quả Classifer Output (bớt đặc trƣng) thuật toán Bayes 76
Hình 3.24: Cấu hình tham số thuật toán Bayes 79
Trang 10LỜI MỞ ĐẦU
1 Lý do chọn đề tài
Trong những năm gần đây, số lượng tuyển sinh đầu vào Khoa CNSH – Trường Đại học Mở Hà Nội đang trở thành mối quan tâm của Ban lãnh đạo Khoa cũng như Ban giám hiệu nhà trường Do đó, vấn đề dự báo số lượng sinh viên đầu vào có ảnh hưởng không nhỏ đến công tác tuyển sinh tại Khoa, nhờ đó Ban lãnh đạo Khoa sẽ có những chiến lược tuyển sinh đúng đắn, tập trung vào đúng đối tượng cần tuyển Có nhiều phương pháp dự báo khác nhau theo định tính và định lượng Về định lượng thường sử dụng phương pháp dự báo hồi quy tuyến tính hoặc phi tuyến Về phương pháp định tính thông thường sử dụng các phương pháp học máy như cây quyết định, Bayes, K-láng giềng…Hiện nay phương pháp học máy thuộc trí tuệ nhân tạo là một phương pháp phổ biển được áp dụng rộng rãi và báo Luận văn này sẽ nghiên cứu các phương pháp học máy để dự báo số sinh viên nhập học Khoa CNSH – Trường Đại học Mở Hà Nội, một vấn đề chưa được nghiên cứu trước đó
Khoa CNSH – Trường Đại học Mở Hà Nội đã thành lập được 28 năm, đào tạo được hàng nghìn kỹ sư chính quy với chất lượng đội ngũ cán bộ,giảng viên uy tín, tận tâm với công việc Khoa CNSH đã thực sự trưởng thành trong sự nghiệp Giáo dục, đào tạo và nghiên cứu khoa học và có những đóng góp đáng kể cho sự nghiệp phát triển nghành Công nghệ sinh học Vệt Nam, đồng thời trở thành một trong những địa chỉ tin cậy về đào tạo nguồn nhân lực có trình độ đại học nghành CNSH của Việt Nam Tuy nhiên, trong những năm trở lại đây số lượng sinh viên nhập học vào Khoa đang có xu thế giảm
Trang 11Bảng trên từ năm 2015 đến 2017 là số sinh viên thuộc chuyên nghành CNSH, từ 2018 đến 2020 Khoa mở thêm nghành mới Công nghệ thực phẩm (CNTP) nên được thêm số sinh viên của 2 ngành tương ứng
Có nhiều nguyên nhân dẫn tới việc giảm số lượng khác nhau như: sinh viên thuộc Khu vưc 1 (KV1) thường có xu hướng học các nghành xã hội – kinh tế, hoặc học nghề hoặc các trường Trung cấp – Cao đẳng để không mất nhiều thời gian, định hướng nghề nghiệp của phụ huynh đối với nghành còn hạn chế …
Với những lý do như vậy tôi đăng ký nghiên cứu đề tài Dự báo sinh viên
nhập học Khoa Công nghệ sinh học – Trường Đại học Mở Hà Nội dùng phương pháp học máy” để đánh giá hiện trạng và dự báo mức tăng giảm số sinh
viên nhập học vào Khoa CNSH Đề tài sẽ tập trung nghiên cứu thuật toán Bayes, thuật toán C 4.5 để dự báo số học sinh nhập học vào Khoa CNSH từ đó có thể mở rộng triển khai dự báo cho các Khoa khác và thậm chí các trường Đại học khác
Từ việc dự đoán bằng phương pháp có căn cứ khoa học đưa ra các đề xuất, kiến nghị, tham mưu cho Ban giám hiệu trường Đại học Mở Hà Nội, Ban lãnh đạo Khoa CNSH để chất lượng đầu vào của trường ngày càng cao
2 Mục tiêu, đối tượng và phạm vi nghiên cứu
- Mục tiêu: Luận văn tập trung tìm hiểu thuật toán C4.5 và Bayes, áp dụng vào bài toán dự báo sinh viên nhập học Khoa CNSH – Trường Đại học Mở Hà Nội
- Đối tượng,phạm vi nghiên cứu:
+ Đối tượng nghiên cứu của luận văn là dữ liệu về sinh viên nhập học Khoa CNSH – Trường Đại học Mở Hà Nội năm 2020
+ Giới hạn thử nghiệm dự báo theo 4 đặc trưng và 90 bản ghi đầu vào được cho là cơ bản nhất
+Trong quá trình triển khai 2 thuật toán, tôi tính một số phép tính tiêu biểu sau đó dùng phần mềm Weka để chạy
3 Ý nghĩa khoa học và thực tiễn của luận văn
Trang 12Luận văn nghiên cứu tổng quan về phương pháp dự báo nói chung và dự báo dựa trên thuật toán C4.5, Bayes nói riêng Phân tích đánh giá thuật toán có giá trị khoa học và thực tiễn Tìm hiểu các thuật toán giúp chúng ta tiếp thu và có thể phát triển về mặt tư tưởng, cũng như kỹ thuật của một công nghệ tiên tiến Từ đó
có thể triển khai cài đặt và thử nghiệm các mô hình dự báo thực tế
Cụ thể luận văn sử dụng phần mềm tiên tiến Weka với thuật toán C4.5, Bayes để dự báo số sinh viên nhập học Khoa CNSH – Trường Đại học Mở Hà Nội phục vụ cho công tác tuyển sinh
4 Bố cục luận văn
Luận văn gồm các phần sau:
Phần mở đầu
Chương 1: Tổng quan về các phương pháp dự báo
Chương 2: Thuật toán Bayes và thuật toán C4.5
Chương 3: Ứng dụng thuật toán C4.5 và Bayes để dự báo sinh viên nhập học
Phần kết luận: tổng kết kết quả đạt được của luận văn và hướng phát triển tiếp theo
Tài liệu tham khảo
Trang 13để xác định xu hướng vận động của các hiện tượng trong tương lai nhờ vào một số
mô hình toán học (định lượng) Tuy nhiên, dự báo cũng có thể là một dự đoán chủ quan hoặc trực giác về tương lai (định tính) và để dự báo định tính được chính xác, người ta loại trừ tính chủ quan của người dự báo
Dù định nghĩa có sự khác biệt, nhưng đều thống nhất về cơ bản là dự báo bàn về tương lai, nói về tương lai Dự báo trước hết là một thuộc tính không thể thiếu của tư duy con người, con người luôn luôn nghĩ đến ngày mai, hướng về tương lai Trong thời đại công nghệ thông tin và toàn cầu hóa, dự báo lại đóng vai trò quan trọng hơn khi nhu cầu về thông tin thị trường, tình hình phát triển tại thời điểm nào đó trong tương lai lại càng cao Dự báo được sử dụng trong nhiều lĩnh vực khác nhau, mỗi lĩnh vực có một yêu cầu về dự báo riêng nên phương pháp dự báo được sử dụng cũng khác nhau [10]
1.2 Các phương pháp dự báo
Có nhiều học giả có cách phân loại phương pháp dự báo khác nhau Tuy nhiên theo học giả Gordon, trong 2 thập kỷ gần đây, có 8 phương pháp dự báo được áp dụng rộng rãi trên thế giới [10]
Bảng 1.1.Tổng hợp một số phương pháp dự báo thường dùng trên thế giới
Trang 148 Phương pháp dự báo tổng hợp Bảng 1.1 đề cập đến 8 phương pháp thường được sử dụng trên thế giới trong
Ưu điểm: dễ dàng thực hiện, không đòi hỏi kiến thức về các mô hình toán hoặc kinh tế lượng
Nhược điểm: Mang tính chủ quan rất cao, không chuẩn, mất nhiều năm để trở thành người có khả năng phán đoán đúng Không có phương pháp hệ thống để đánh giá và cải thiện mức độ chính xác
1.2.2 Phương pháp định lượng
Mô hình dự báo định lượng dựa trên số liệu quá khứ, những số liệu này giả
sử có liên quan đến tương lai và có thể tìm thấy được Tất cả các mô hình dự báo theo định lượng có thể sử dụng thông qua chuỗi thời gian và các giá trị này được quan sát đo lường các giai đoạn theo từng chuỗi [10]
Ưu điểm:
- Kết quả dự báo hoàn toàn khách quan
- Có phương pháp đo lường độ chính xác dự báo
- Tốn ít thời gian để tìm ra kết quả dự báo
Nhược điểm:
- Chỉ dự báo tốt trong thời gian ngắn và trung hạn
- Không có phương pháp nào có thể đưa đầy đủ những yếu tố bên ngoài
có tác động đến kết quả dự báo và mô hình
Trang 15Hiện nay thông thường khi dự báo người ta thường hay kết hợp cả phương pháp định tính và phương pháp định lượng để nâng cao mức độ chính xác của dự báo Bên cạnh đó, vấn đề cần dự báo đôi khi không thể thực hiện được thông qua một phương pháp dự báo đơn lẻ mà đòi hỏi kết hợp nhiều hơn một phương pháp nhằm mô tả đúng bản chất sự việc cần dự báo
1.3 Quy trình thực hiện dự báo
Dự báo là một quá trình phức tạp nhưng về cơ bản quy trình có thể thực hiện theo các bước sau [10]:
Hình 1.1.Quy trình thực hiện dự báo Bước 1: Xác định mục tiêu
Xác định mục tiêu
Xác định nội dung dự báo
Xác định khía cạnh thời gian
Xem xét dữ liệu
Lựa chọn mô hình
Đánh giá mô hình
Chuẩn bị dự báo
Trình bày kết quả dự báo
Theo dõi kết quả dự báo
Trang 16Bước đầu tiên trong quy trình dự báo là xác định mục tiêu Xác định mục tiêu là xác định xem kết quả dự báo sẽ được sử dụng như thế nào Mục tiêu chung của dự báo là lập kế hoạch và có những quyết định hành động hợp lý Mục tiêu của dự báo tuyển sinh nhằm giúp các nhà lãnh đạo có những chiến lược phát triển một cách hợp lý nhất
Bước 2: Xác định nội dung dự báo
Khi các mục tiêu tổng quát đã được xác định rõ, ta phải xác định chính xác
dự báo cái gì Ví dụ, mục tiêu chung là dự báo tuyển sinh nhưng một hệ thống dự báo gồm có: Số lượng học sinh, số lượng lớp…Luận văn xây dựng hệ thống thử nghiệm dự báo tuyển sinh với các thông số đầu vào là số liệu thu được trong 06 năm liên tiếp tại Khoa CNSH – Trường Đại học Mở Hà Nội
Bước 3: Xác định khía cạnh thời gian
Sau khi xác định được nội dung dự báo, thì cần xác định được độ dài của
dự báo: Dự báo dài hạn hay dự báo ngắn hạn và tính cấp thiết của dự báo
Bước 4: Xem xét dữ liệu
Mặc dù dữ liệu là cần thiết cho hệ thống để dự báo, nhưng cũng cần xem xét đến các yếu tố khác của dữ liệu như: Nguồn cung cấp, các bước phân loại, đánh giá, xử lý dữ liệu trước khi sử dụng Trong luận văn này sử dụng nguồn dữ liệu thu thập được từ Phòng Quản lý đào tạo – Trường Đại học Mở Hà Nội Vì vậy, dữ liệu là chính xác và đáng tin cậy
Bước 5: Lựa chọn mô hình
Việc chọn mô hình thích hợp cho dự báo có liên quan đến nhiều yếu tố như:
Dữ liệu vào, các yêu cầu về thời gian, yêu cầu về kết quả đầu ra, tài nguyên sẵn có…
Quy trình lựa chọn mô hình dự báo có thể được lựa chọn dựa trên một số chiến lược dự báo như sau:
1 Tiền định: Dựa trên mối quan hệ mật thiết giữa hiện tại và tương lai/ Các
mô hình Chuỗi thời gian thích hợp với chiến lược này
2 Triệu chứng: Dựa trên những dấu hiệu hiện tại để dự báo cho tương lai
3 Hệ thống: Dựa trên ý tưởng cho rằng xu hướng phát triển trong tương lai sẽ tuân thủ theo một quy tắc nào đó, chẳng hạn các lý thuyết về giáo dục
Trang 17Luận văn sử dụng chiến lược dự báo tiền định để dự báo tuyển sinh
Bước 6: Đánh giá mô hình
Đối với các phương pháp định tính thì bước này ít quan trọng hơn nhưng
đối với các phương pháp định lượng thì cần phải đánh giá mức độ phù hợp của mô hình (trong phạm vi mẫu dữ liệu) và đánh giá mức độ chính xác của dự báo (ngoài phạm vi mẫu dữ liệu) Nếu mô hình không phù hợp thì quay lại bước 5
Bước 7: Chuẩn bị dự báo
Sau khi đã đánh giá và lựa chọn được mô hình dự báo phù hợp thì chuẩn bị
các số liệu phục vụ cho việc dự báo
Bước 8: Trình bày kết quả dự báo
Hình 1.2 Quy trình lựa chọn mô hình dự báo
Có nhiều cách để trình bày kết quả dự báo, có thể thông qua bảng biểu, đồ
thị hay hình ảnh minh họa, có thể trình bày ở dạng viết hoặc dạng nói, trình bày tại một vị trí hoặc trên phương tiện thông tin đại chúng…Dù trình bày bằng cách nào thì những kết quả dự báo vẫn phải ngắn gọn, rõ ràng, thể hiện được sự tin cậy của
dự báo và phải bằng ngôn ngữ mà người nghe hiểu được
Bước 9: Theo dõi kết quả dự báo
Nhận định và đánh giá chung
Lựa chọn mô hình Xác định lập các mô hình sơ bộ Xác định đầu vào
Xác định chiến lược dự báo Xác định yêu cầu về đầu ra Xác định vấn đề dự báo cụ thể
Trang 18Độ lệch giữa giá trị dự báo và giá trị thực phải được thảo luận một cách tích cực, khách quan và cởi mở
Mục tiêu của việc thảo luận là để hiểu tại sao có các sai số và xác định độ lớn của các sai số, qua đó bảo trì và nâng cấp hệ thống dự báo
Trao đổi và hợp tác giữa người sử dụng và người làm dự báo có vai trò rất quan trọng trong việc xây dựng và duy trì quy trình dự báo thành công
1.4 Các phương pháp, mô hình dự báo trên thế giới
Việc lựa chọn phương pháp dự báo phụ thuộc vào lĩnh vực hoạt động, các lĩnh vực dự báo liên quan đến hiện tượng tự nhiên thì phương pháp định lượng hay được sử dụng như mô hình hóa, phương pháp kịch bản,…Tuy nhiên tùy vào lĩnh vực, ngành mà các phương pháp dự báo có thể khác nhau [10]
Hiện nay, các mô hình dự báo trên thế giới được chia làm 3 loại như: Phương pháp định tính, phân tích chuỗi thời gian và mô hình nguyên nhân – kết quả
1.4.1 Phương pháp định tính
Phương pháp định tính được sử dụng khi dữ liệu khan hiếm Nó sử dụng các chương trình đánh giá và sự đánh giá của con người để biến thông tin định tính thành các ước tính định lượng
Mục tiêu của phương pháp này là kết hợp một cách hợp lý, có hệ thống mọi thông tin và phán đoán có liên quan đến các yếu tố được ước tính Kỹ thuật này thường được sử dụng trong các lĩnh vực công nghệ mới
1.4.2 Phân tích chuỗi thời gian
Phương pháp này được sử dụng khi dữ liệu thu thập được trong nhiều năm
và mối quan hệ, xu hướng của đối tượng dự báo là rõ ràng và tương đối ổn định Một trong những nguyên tắc cơ bản của dự báo thống kê thực của tất cả các
dự báo khi dữ liệu lịch sử có sẵn – người dự báo nên sử dụng dữ liệu về hiệu suất trong quá khử để có được Speedometer Reading” về tỷ lệ hiện tại và tốc độ gia tăng nhanh như thế nào Tỷ lệ hiện tại và sự thay đổi về tốc độ - tăng tốc” và giảm tốc”- tạo cơ sở cho dự báo
Trang 19Thông thường khó có thể dự báo từ dữ liệu thô do tỷ lệ và xu hướng không
rõ ràng Vì vậy, dữ liệu thô phải được xử lý trước khi có thể sử dụng được nên phương pháp chuỗi thời gian sẽ được sử dụng để xử lý dữ liệu
Chuỗi thời gian là một tập các điểm được sắp xếp theo thứ tự thời gian của
dữ liệu thô Phân tích chuỗi thời gian giúp xác định và giải thích:
- Bất kỳ sự khác biệt có tính hệ thống hoặc có hệ thống trong chuỗi dữ liệu từng thời kỳ
- Chu kỳ mô hình lặp lại trong hai, ba năm hoặc nhiều hơn
- Xu hướng trong dữ liệu
- Tốc độ tăng trưởng của các xu hướng
1.4.3 Mô hình nguyên nhân – kết quả
Được sử dụng khi lịch sử dữ liệu đã có sẵn và đã được phân tích đầy đủ, chỉ
rõ mối quan hệ giữa các yếu tố được dự báo và các yếu tố khác
Đây là mô hình dự báo tốt nhất Nó diễn đạt các mối quan hệ nguyên nhân
và kết quả Nó cũng có thể kết hợp cả các kết quả của việc phân tích chuỗi thời gian
Mô hình này có tính đến cả sự thay đổi của dòng chảy hệ thống và sử dụng các dự đoán về các sự kiện có liên quan Nếu đã có dữ liệu thì mô hình này sẽ chỉ
ra các vị trí của các yếu tố trong biểu đồ lưu lượng và kết nối chúng bằng các phương trình để mô tả tổng thể dòng chảy của đối tượng
Mô hình này được sử dụng tốt để dự đoán những thay đổi và dự báo tầm xa
1.5 Các phương pháp, mô hình dự báo ở Việt Nam
Việt Nam hiện chủ yếu sử dụng 3 phương pháp (trong một phương pháp có thể có nhiều mô hình khác nhau) dự báo sau đây [10]:
1.5.1 Phương pháp ngoại suy
Bản chất của phương pháp ngoại suy là kéo dài quy luật đã hình thành trong quá khử để làm dự báo cho tương lai Giả thiết cơ bản của phương pháp này là sự bảo toàn nhịp điệu, quan hệ và những quy luật phát triển của đối tượng dự báo trong quá khứ cho tương lai Thông tin cung cấp cho phương pháp ngoại suy là số liệu về động thái của đối tượng dự báo trong quá khứ qua một số năm nhất định,
Trang 20thông thường yêu cầu thời khoảng quá khứ có số liệu phải lớn hơn nhiều lần thời khoảng làm dự báo Phương pháp này thích hợp để dự báo những đối tượng phát triển theo kiểu tiệm tiến Phương pháp ngoại suy có ưu điểm là đơn giản, tuy nhiên, nhược điểm chính là không tính được ảnh hưởng của các yếu tố khách quan đến kết quả dự báo
1.5.2 Phương pháp chuyên gia
Bản chất của phương pháp chuyên gia là lấy ý kiến đánh giá của các chuyên gia để làm kết quả dự báo Phương pháp này được triển khai theo một quy trình chặt chẽ bao gồm nhiều khâu: Thành lập nhóm chuyên gia, đánh giá năng lực chuyên gia, lập biểu câu hỏi và xử lý toán học kết quả thu được từ ý kiến chuyên gia Khó khăn của phương pháp này là việc tuyển chọn và đánh giá năng lực của các chuyên gia Phương pháp này được áp dụng có hiệu quả cho những đối tượng thiếu (hoặc chưa đủ) số liệu thống kê, phát triển có độ bất ổn lớn hoặc đối tượng của dự báo phức tạp không có số liệu nền Kết quả của phương pháp dự báo này chủ yếu phục
vụ cho nhu cầu định hướng, quản lý vì thế cần kết hợp (trong trường hợp có thể) với các phương pháp định lượng khác
1.5.3 Phương pháp mô hình hóa
Phương pháp này là sự kết hợp hai phương pháp nói trên Cách thức tiếp cận của phương pháp này là dùng hệ thức toán học để mô tả mối liên hệ giữa đối tượng dự báo với các yếu tố có liên quan Khó khăn của phương pháp này là phải viết được chính xác hệ thức toán học nói trên Phương pháp mô hình hóa áp dụng cho nghiên cứu kinh tế, tài nguyên – môi trường sẽ phải sử dụng nhiều phương trình của mô hình kinh tế lượng vi đối tượng dự báo (mối liên hệ giữa hoạt động kinh tế và chất lượng môi trường, sử dụng tài nguyên) có liên quan đến nhiều yếu
tố kinh tế ví dụ: GDP, giá cả…
Phương pháp này yêu cầu số liệu của nhiều yếu tố hữu quan trong quá khứ, trong khi đó, phương pháp ngoại suy chỉ yêu cầu một loại số liệu Tuy nhiên, phương pháp này cũng có ưu điểm là có thể giải thích được kết quả dự báo và có thẻ phân tích ảnh hưởng của các yếu tố liên quan đến kết quả dự báo
Trang 211.5.4 Hướng tiếp cận mới
Một hướng tiếp cận mới để mô hình hóa các hiện tượng cần dự báo là dựa trên các công nghệ học máy Mô hình này dựa trên một cơ sở dữ liệu thực tế đủ lớn
và áp dụng các kỹ thuật tính toán hiện đại đang được dùng nhiều trong lĩnh vực công nghệ thông tin những năm gần đây như mạng nơron nhân tạo, giải thuật di truyền, cây quyết định…
Hình 1.3 Mô hình dự báo trên công nghệ máy học
Chúng thường được nói tới như các phương pháp học máy, một phần của trí tuệ nhân tạo Mô hình của nó được biểu diễn như trong hình 1.3
1.6 Kết luận chương 1
Trong chương 1 luận văn đã nêu đươc tổng quan về các phương pháp dự báo, đưa ra được quy trình thực hiện dự báo Dự báo là một nhu cầu thiết yếu đối với công tác quản lý vì nó mang tính định hướng cho tương lai, giúp đưa ra được những quyết định đúng đắn nhất
Dựa trên mô hình đã lựa chọn sau khi huấn luyện có thể đánh giá được hiệu quả của mô hình Việc đánh giá chủ yếu dựa vào so sánh kết quả thực tế chứ chưa
có phương pháp chuẩn để đánh giá
Dữ liệu
thực tế đầu
vào
Hệ thống thực
Mô hình học máy
Đầu ra thực tế
Đầu ra dự báo
Học để cực tiểu hóa sự khác nhau
Trang 22CHƯƠNG 2 : THUẬT TOÁN C4.5 VÀ BAYES 2.1 Thuật toán C4.5
2.1.1 Giới thiệu chung
Thuật toán C4.5 là sự kế thừa của thuật toán học máy bằng cây quyết định dựa trên nền tảng là kết quả nghiên cứu của HUNT và các cộng sự của ông trong nửa cuối thập kỷ 50 và nửa đầu những năm 60 (Hunt 1962) Phiên bản đầu tiên ra đời là ID3 (Quinlan, 1979)- 1 hệ thống đơn giản ban đầu chứa khoảng 600 dòng lệnh Pascal, và tiếp theo là C4 (Quinlan 1987) Năm 1993, J Ross Quinlan đã kế thừa các kết quả đó phát triển thành C4.5 với 9000 dòng lệnh C chứa trong một đĩa mềm Mặc dù đã có phiên bản phát triển từ C4.5 là C5.0 - một hệ thống tạo ra lợi nhuận từ Rule Quest Research, nhưng nhiều tranh luận, nghiên cứu vẫn tập trung vào C4.5 vì mã nguồn của nó là sẵn dùng [1], [2], [3]
2.1.2 Thuật toán C4.5
Thuật toán C4.5 là thuật toán cải tiến từ thuật toán ID3 Với những đặc điểm C4.5 là thuật toán phân lớp dữ liệu dựa trên cây quyết định hiệu quả và phổ biến trong những ứng dụng khai phá cơ sở dữ liệu có kích thước nhỏ C4.5 sử dụng cơ chế lưu trữ dữ liệu thường trú trong bộ nhớ, chính đặc điểm này làm C4.5 chỉ thích hợp với những cơ sở dữ liệu nhỏ, và cơ chế sắp xếp lại dữ liệu tại mỗi node trong quá trình phát triển cây quyết định C4.5 còn chứa một kỹ thuật cho
phép biểu diễn lại cây quyết định dưới dạng một danh sách sắp thứ tự các luật
if-then (một dạng quy tắc phân lớp dễ hiểu) Kỹ thuật này cho phép làm giảm bớt
kích thước tập luật và đơn giản hóa các luật mà độ chính xác so với nhánh tương ứng cây quyết định là tương đương [7], [8], [9]
Tư tưởng phát triển cây quyết định của C4.5 là phương pháp HUNT đã
nghiên cứu ở trên Chiến lược phát triển theo độ sâu (Depth-first strategy) được áp
dụng cho C4.5 Tìm kiếm theo độ sâu trước tiên ( DFS ) là một thuật toán để duyệt qua hoặc tìm kiếm cấu trúc dữ liệu dạng cây hoặc đồ thị Thuật toán bắt đầu ở nút gốc (chọn một số nút tùy ý làm nút gốc trong trường hợp biểu đồ) và khám phá càng xa càng tốt dọc theo mỗi nhánh trước khi bẻ khóa ngược [8]
Trang 23Mã giả của thuật toán C4.5:
Hình 2.1: Mã giả thuật toán C4.5
Cụ thể ta thực hiện theo các bước sau với tập dữ liệu T:
(1) Tính toán tần suất các giá trị trong các lớp của T;
(2) Kiểm tra các mẫu, nếu thuộc cùng một lớp hoặc có rất ít mẫu khác lớp thì trả về một nút lá;
Nếu không thì tạo một nút quyết định N;
(3) Với mỗi thuộc tính A, tính Gain(A)
(4) Tại nút N, thực hiện việc kiểm tra để chọn ra thuộc tính N.test có giá trị Gain tốt nhất (lớn nhất)
(5) Nếu thuộc tính có giá trị Gain lớn nhất là thuộc tính liên tục thì tìm ngưỡng cho phép tách của thuộc tính đó
(6) Với mỗi tập con Ti được tách ra từ tập T
nếu Ntest là thuộc tính liên tục thì tách theo ngưỡng,
nếu Ntest là thuộc tính phân loại rời rạc thì tách theo giá trị của các thuộc tính này ta kiểm tra,
(7) nếu Ti rỗng thì gán nút con này của nút N là nút lá
(8) nếu không thì gán nút con này là nút được trả về và thực hiện lại từ bước đầu với tập dữ liệu là Ti;
(9) Tính toán sai số của nút N;
(1) ComputerClassFrequency(T);
(2) if OneClass or FewCases return a leaf;
Create a decision node N;
(3) For Each Attribute A ComputeGain(A);
(4) N.test=AttributeWithBestGain;
(5) if N.test is continuous find Threshold;
(6) ForEach T' in the splitting of T
Trang 24Trả về N
Trường hợp thuộc tính liên tục
Xử lý thuộc tính liên tục đòi hỏi nhiều tài nguyên tính toán hơn thuộc tính rời rạc Gồm các bước sau:
1 Sắp xếp các case trong tập dữ liệu huấn luyện theo thứ tự tăng dần hoặc giảm
dần các giá trị liên tục của thuộc tính liên tục A đang xét ta được tập giá trị
2 Chia tập dữ liệu thành 2 tâp con theo ngưỡng nằn giữa hai giá trị liền kề nhau
3 Xét (n-1) ngưỡng θ có thể có ứng với n giá trị của thuộc tính A bằng cách
tính Information gain hay Gain ratio với từng ngưỡng đó Ngưỡng có giá trị của
Information gain hay Gain ratio lớn nhất sẽ được chọn làm ngưỡng phân chia của
thuộc tính đó
Việc tìm ngưỡng (theo cách tuyến tính như trên) và sắp xếp tập training theo thuộc tính liên tục đang xem xét đôi khi gây ra thắt cổ chai vì tốn nhiều tài nguyên tính toán
2.1.3 C4.5 chọn thuộc tính phân loại tốt nhất
Quá trình xây dựng cây chủ yếu phụ thuộc vào việc chọn thuộc tính tốt nhất
để phân hoạch dữ liệu Một thuộc tính được cho là tốt được sử dụng để phân hoạch
dữ liệu sao cho kết quả thu được cây nhỏ nhất Việc lựa chọn này dựa vào việc chọn thuộc tính sinh ra các nút thuần khiết nhất Hiện nay có giải thuật học cây quyết định tiêu biểu là C4.5 của Quinlan [2] Để đánh giá và chọn thuộc tính khi phân hoạch dữ liệu, Quinlan đề nghị sử dụng độ lợi thông tin (chọn thuộc tính có
độ lợi thông tin lớn nhất) và tỉ số độ lợi dựa trên hàm entropy của Shannon
Độ lợi thông tin của một thuộc tính được tính bằng: độ đo hỗn loạn trước khi phân hoạch trừ cho sau khi phân hoạch
Giả sử P i là xác xuất mà phần tử trong dữ liệu S thuộc lớp C i (i=1, k), đo độ
hỗn loạn thông tin trước khi phân hoạch được tính theo công thức (2.1):
∑ (2.1)
Độ đo hỗn loạn sau khi sử dụng thuộc tính A phân hoạch dữ liệu S thành v
Trang 25phần được tính như công thức (2.2):
∑ | |
| |
Độ lợi thông tin (informartion gain) khi chọn thuộc tính A phân hoạch dữ
liệu S thành v phần được tính theo công thức (2.3):
(2.3) Tuy nhiên, khi dữ liệu có thuộc tính có nhiều giá trị hơn các thuộc tính khác, độ lợi thông tin tăng trên các thuộc tính có nhiều giá trị phân hoạch Để giảm bớt sự lệch này, Quinlan cũng đề nghị sử dụng tỉ số độ lợi Tỉ số độ lợi tính đến số lượng và độ lớn của các nhánh khi chọn một thuộc tính phân hoạch, được tính bằng độ lợi thông tin chia cho thông tin của phân phối dữ liệu trên các nhánh Giả
sử khi sử dụng thuộc tính A phân hoạch dữ liệu S thành v phần, thông tin của phân
phối dữ liệu được tính như công thức (2.4):
∑ | |
| | | |
| | (2.4)
Và tỉ số độ lợi được tính như công thức (2.5):
Trong mô hình phân lớp C4.5, có thể dùng một trong hai loại chỉ số
Information Gain hay Gain ratio để xác định thuộc tính tốt nhất Trong đó Gain ratio là lựa chọn mặc định [7], [9]
2.1.4 Xử lý trong trường hợp dữ liệu thiếu
Dữ liệu thiếu là giá trị của thuộc tính không xuất hiện trong một vài trường hợp có thể do lỗi trong quá trình nhập bản ghi vào cơ sở dữ liệu hoặc giá trị của
thuộc tính đó được đánh giá là không cần thiết trong những trường hợp đó
Trong quá trình xây dựng cây từ tập dữ liệu đào tạo S, B là test dựa trên thuộc tính A a với các giá trị đầu ra là b 1 ,b 2 ,…,b t Tập S 0 là tập con các case trong S
mà có giá trị thuộc tính A a không biết và S i biểu diễn các case với đầu ra là b i trong test B
Khi đó độ đo độ lợi thông tin của test B giảm vì chúng ta không phân được lớp nào từ các case trong S 0 và được tính theo công thức 2.6:
Trang 26| |
| | Trong đó:
S là tập dữ liệu huấn luyện
B là tập dữ liệu test
Tập con S 0 là tập con các case trong S mà có giá trị thuộc tính A a không biết
S i biễu diễn các case với đầu ra là b i trong B
Từ đó P(S, B) cũng thay đổi như sau:
(| |
| |)
Hai thay đổi này làm giảm giá trị của test liên quan đến thuộc tính có tỉ lệ
giá trị thiếu cao Nếu test B được chọn, C4.5 không tạo một nhánh riêng trên cây quyết định cho S 0 Thay vào đó, thuật toán có cơ chế phân chia các case trong S 0
về các tập con S i là tập con mà có giá trị thuộc tính test xác định theo trọng số
| |
| |
2.1.5 Chuyển đổi từ cây quyết định sang luật
Việc chuyển đổi từ cây quyết định sang luật sản xuất (production rules)
dạng if-then tạo ra những quy tắc phân lớp dễ hiểu, dễ áp dụng Các mô hình phân
lớp biểu diễn các khái niệm dưới dạng các luật sản xuất đã được chứng minh là hữu ích trong nhiều lĩnh vực khác nhau, với việc đòi hỏi cả về độ chính xác và tính hiểu được của mô hình phân lớp Dạng output tập luật sản xuất là sự lựa chọn khôn ngoan” Tuy nhiên, tài nguyên tính toán dùng cho việc tạo ra tập luật từ dữ liệu đào tạo có kích thước lớn và nhiều giá trị sai là vô cùng lớn Khẳng định này
sẽ được chứng minh qua kết quả thực nghiệm trên mô hình phân lớp C4.5 [9]
Giai đoạn chuyển đổi từ cây quyết định sang luật gồm 4 bước:
Luật khởi tạo ban đầu là đường đi từ gốc đến lá của cây quyết định Một
quyết định có l lá thì tương ứng tập luật sản xuất sẽ có l luật khởi tạo Từng điều
kiện trong luật được xem xét và loại bỏ nếu không ảnh hưởng tới độ chính xác của
Trang 27luật đó Sau đó, các luật đã được cắt tỉa được thêm vào tập luật trùng với những luật đã có
Các luật đã cắt tỉa được nhóm lại theo giá trị phân lớp, tạo nên các tập con
chứa các luật theo lớp Sẽ có k tập luật con nếu tập huấn luyện có k giá trị phân
lớp Từng tập con trên được xem xét để chọn ra một tập con các luật mà tối ưu hóa
độ chính xác dự đoán của lớp gắn với tập luật đó
Sắp xếp k tập luật đã tạo ra từ trên bước theo tần số lỗi Lớp mặc định được
tạo ra bằng cách xác định các case trong tập huấn luyện không chứa trong các luật hiện tại và chọn lớp phổ biến nhất trong các case đó làm lớp mặc định
Tập luật được đem ước lượng lại trên toàn bộ tập huấn luyện nhằm mục đính xác định xem có luật nào làm giảm độ chính xác của sự phân lớp Nếu có, luật đó bị loại bỏ và quá trình ước lượng được lặp cho đến khi không thể cải tiến thêm
2.1.6 C4.5 là một thuật toán hiệu quả cho những tập dữ liệu vừa và nhỏ
C4.5 có cơ chế sinh cây quyết định hiệu quả và chặt chẽ bằng việc sử dụng
độ đo lựa chọn thuộc tính tốt nhất là độ lợi thông tin Các cơ chế xử lý với giá trị
lỗi, thiếu và chống quá vừa” dữ liệu của C4.5 cùng với cơ chế cắt tỉa cây đã tạo
nên sức mạnh của C4.5 Thêm vào đó, mô hình phân lớp C4.5 còn có phần chuyển
đổi từ cây quyết định sang luật if- then, làm tăng độ chính xác và tính dễ hiểu của
kết quả phân lớp Đây là tiện ích rất có ý nghĩa đối với người sử dụng [9]
2.1.7 Ví dụ minh họa cho giải thuật C4.5
Cho bảng CSDL dưới đây Sử dụng thuật toán C4.5 để phân lớp đối tượng đậu (đỗ) đại học hoặc không
Bảng 2.1: Bảng cơ sở dữ liệu dự đoán đỗ đại học
TT Tên người Bố, mẹ đỗ ĐH Điều kiện KT Học lực Học thêm Kết quả
1 Giáp Có Trung bình Giỏi Không Đậu
Trang 282 Ất Có Cao TB Có Không
7 Canh Không Trung bình Khá Có Đậu
Giả sử ta sử dụng bảng dữ liệu đƣợc đƣa vào dự đoán việc đỗ đại học hay không đỗ
Có các đối tƣợng {Giáp, Ất, Bính, Đinh, Mậu, Kỷ, Canh, Tân, Nhâm, Quý} và các thuộc tính (Bố mẹ đỗ đại học, Điều kiện kinh tế, Học lực, Học thêm)
Ta phân lớp +” là lớp Đỗ đại học, lớp -” là lớp Không đỗ đại học
- Đo độ hỗn loạn trước khi phân hoạch là:
Trang 29
Tương tự, với các thuộc tính Bố, mẹ đỗ ĐH, Học lực, Điều kiện kinh tế và Học thêm ta có:
Như vậy, từ hai nút lá ta sẽ viết được 2 luật quyết định tương ứng:
Luật 1: Nếu (Học lực = giỏi) thì Kết quả = Đậu
Luật 2: Nếu (Học lực = trung bình) thì Kết quả = Không đậu
Đối với nhánh Học lực khá, quá trình học cây được tiếp tục với tập dữ liệu
Trang 30Gain (SKha,BMĐỗ ĐH) = Entropy(SKha) – Entropy(SKha,BMĐỗ ĐH) = 0,918 – 0,66 = 0,258
Tỷ suất lợi ích Gain Ratio:
Tương tự, với các thuộc tính còn lại ta có:
+ IG(SKhá, Điều kiện KT) = 1
+ IG(SKhá, Học thêm) = 1
Quá trình phân hoạch ta thấy thuộc tính Học thêm và thuộc tính Điều kiện kinh tế có giá trị IG bằng nhau nên ta có thể chọn một trong hai thuộc tính trên Ở đây ta chọn thuộc tính Học thêm làm nút tiếp theo trong nhánh này
+ Ta thấy đối với nhánh Có Học thêm mà Học lực Khá thì toàn bộ các nhãn
là Đậu” nên quá trình học cây cho nhánh này dừng lại với nút lá là có nhãn là Đậu”
+ Tương tự đối với nhánh Không Học thêm mà Học lực Khá thì chỉ có nhãn
là Không đậu” nên quá trình học cho nhánh này cũng dừng lại với nút lá có nhãn
là Không đậu”
Tương tự , ta viết được các luật tương ứng tiếp theo là:
Luật 3: Nếu (Học lực = Khá) và (Học thêm = Có) Thì Kết quả = Đậu Luật 4: Nếu (Học lực = Khá) và (Học thêm = Không) Thì Kết quả = Không
Trang 31Hình 2.2: Ví dụ về Cây quyết định hồn chỉnh
Mơ hình cây quyết định được xây dựng từ việc học trên tập dữ liệu dự báo quy luật để đỗ đại học hay khơng Với mơ hình cây quyết định hình 2.3 ta nhận thấy cây cĩ 4 nút lá tương ứng với 4 luật quyết định sau đây:
Luật 1: Nếu (Học lực = giỏi) Thì Kết quả = Đậu
Luật 2: Nếu (Học lực = trung bình) Thì Kết quả = Khơng đậu
Luật 3: Nếu (Học lực=Khá)và(Học thêm=Cĩ) Thì Kết quả=Đậu
Luật 4: Nếu (Học lực=Khá)và(Học thêm=Khơng) Thì Kết quả=Khơng đậu
- Dữ liệu quan sát được đưa vào :
Cĩ các đối tượng {Giáp, Ất, Bính, Đinh, Mậu, Kỷ, Canh, Tân, Nhâm, Quý}
và các thuộc tính (Bố mẹ đỗ đại học, Điều kiện kinh tế, Học lực, Học thêm)
- Dữ liệu quan sát được đưa ra :
Những đối tượng Đậu đại học: {Giáp, Tân, Nhâm, Canh, Mậu}
Những đối tượng Khơng Đậu đại học {Ất, Bính, Đinh, Quý, Kỷ}
2.2 Thuật tốn Bayes
2.2.1 Ý tưởng và mục đích của thuật tốn
a Ý tưởng của thuật tốn
Thuật tốn phân lớp Nạve Bayes dựa trên việc xử lý số liệu thống kê với một phân lớp xác suất dựa trên các ứng dụng định lý Bayes với giả định độc lập bền vững
b Mục đích của thuật tốn
Phân loại Bayes đơn giản sử dụng trong trường hợp mỗi ví dụ được
cho bằng tập các thuộc tính <x 1 , x 2 ,…,x n > và cần xác định nhãn phân loại y, y cĩ
thể nhận giá trị từ một tập nhãn hữu hạn C [7], [8], [9]
Trang 322.2.2 Thuật toán Bayes
Trong giai đoạn huấn luyện, dữ liệu huấn luyện được cung cấp dưới dạng các mẫu <xi, yi> Sau khi huấn luyện xong, bộ phân loại cần dự đoán nhãn cho mẫu
mới x
Mô hình dự báo Bayes dựa trên định lý xác suất Bayes như sau:
[ | ] [ | ] [ ]
[ ]
Trong đó mẫu tin E = [E 1, E 2 , …,E n ] có n giá trị thuộc tính được biết như là
giá trị dữ liệu cần dự báo và H chính là lớp nhãn” dự báo
Với giả thiết là các thuộc tính độc lập nhau, nên cách dự báo trong mô hình Bayes đơn giản được tính như (2.9):
[ | ] [ | ] [ | ] [ | ] [ ]
[ ]
Áp dụng trong bài toán phân loại, các dữ kiện gồm có:
D: tập dữ liệu huấn luyện đã được vector hóa dưới dạng
Trang 33Tức là xác suất đồng thời quan sát thấy các thuộc tính bằng tích xác suất điều kiện của từng đặc tính riêng lẻ
Các bước thực hiện giải thuật Bayes
|
từng phân lớp khi đã biết trước X new X new được gán vào lớp có xác suất lớn nhất theo công thức (2.13):
( ∏ |
)
Trong đó P(x k |c i ) được tính từ dữ liệu huấn luyện bằng số lần x k xuất hiện
cùng với c i chia cho số lần c i xuất hiện Việc tính xác suất này đòi hỏi ít dữ liệu
hơn nhiều so với tính P(x 1 , x 2 , , x k |c i)
Quá trình học Bayes đơn giản là quá trình tính các xác suất P(c i) và các xác
xuất điều kiện P(x k |c i) bằng cách đếm trên tập dữ liệu
2.2.3 Ví dụ minh họa cho giải thuật Bayes
Ta lấy ví dụ đối với bài toán phân chia ngày phù hợp hay không phù hợp cho việc chơi tennis theo điều kiện thời tiết như bảng 2.3:
Bảng 2.2 : Bảng cơ sở dữ liệu thời tiết
Trang 34D11 Nắng Trung bình Bình thường Mạnh Có
D14 Mưa Trung bình Cao Mạnh Không
Giả sử ta xác định nhãn phân loại cho ví dụ:
< Trời = mưa, nhiệt độ= trung bình, độ ẩm= bình thường, gió = mạnh >
b Lời giải
Ta sẽ tính các xác suất và thay vào công thức sau:
| | | |
Do Ci nhận 2 giá trị có” và không” nên P (có) và P (không) được tính bằng tần suất có” và không” trên dữ liệu huấn luyện
Trang 35Như vậy, theo phân loại Bayes đơn giản, Xác xuất thực của nhãn có” lớn hơn Xác suất thực của nhãn không” nên ví dụ đang xét sẽ được phân loại là có”
2.3 Kết luận chương 2
Thuật toán C4.5 có cơ chế sinh cây quyết định hiệu quả và chặt chẽ, có các
cơ chế xử lí với giá trị lỗi, thiếu và chống quá vừa dữ liệu (là trường hợp nếu không có case xung đột thì cây quyết định sẽ phân lớp chính xác toàn bộ các case trong tập dữ liệu đào tạo nhưng đôi khi dữ liệu lại chứa những đặc tính cụ thể nên khi áp dụng cây quyết định đó vào tập dữ liệu khác thì kết quả không còn chính xác như trước) Hơn nữa, C4.5 còn có phần chuyển đổi từ cây quyết định sang luật làm tăng độ chính xác và dễ hiểu của kết quả phân lớp Do đó có thể nói thuật toán này là thuật toán hiệu quả nhất trong học cây quyết định
Còn giải thuật Bayes đơn giản là mô hình đơn giản, dễ cài đặt, chạy nhanh, lại cho kết quả tốt trong thực tế mặc dù chịu những giả thiết về tính độc lập của các thuộc tính và độ quan trọng của các thuộc tính bằng nhau Như đã trình bày ở trên, Bayes đơn giản không cần tính chính xác công thức xác suất mà vẫn phân lớp tốt Bayes đơn giản cũng có thể xử lý dữ liệu nhiễu, dữ liệu cả rời rạc và liên tục Tuy nhiên, khi dữ liệu liên tục không phân theo phân phối chuẩn, lúc này cần xử dụng phương pháp hàm nhân để ước lượng xác suất
Bayes vẫn còn có những hạn chế như xử lý không tốt trong trường hợp dữ liệu có nhiều thuộc tính dư thừa Để khắc phục hạn chế này, giải pháp thường dùng là chọn tập con thuộc tính quan trọng từ dữ liệu để cải thiện quá trình học phân lớp của Bayes đơn giản Khi dữ liệu có sự phụ thuộc lẫn nhau giữa các thuộc tính, cần phải thiết lập mô hình mạng Bayes Tuy vậy, giải thuật Bayes đơn giản vẫn được dùng nhiều trong khai mỏ dữ liệu nhờ vào sự đơn giản trong tính toán và hiệu quả phân lớp khá tốt của nó trong phân loại văn bản và lọc thư rác
Trang 36CHƯƠNG 3:
ỨNG DỤNG THUẬT TOÁN C4.5 VÀ BAYES ĐỂ DỰ BÁO
SỐ SINH VIÊN NHẬP HỌC 3.1 Giới thiệu bài toán
Luận văn giải quyết bài toán dự báo số sinh viên nhập học Khoa CNSH – Trường Đại học Mở Hà Nội nhằm phục vụ công tác quản lý, hỗ trợ lên kế hoạch tuyển sinh Chương này sẽ trình bày một số nội dung liên quan đến bài toán dự báo và một số thử nghiệm sử dụng những nghiên cứu trong chương 2 để dự báo số sinh viên nhập học vào Khoa
3.2 Thu thập và tiền xử lý dữ liệu
3.2.1 Thu thập dữ liệu
- Dữ liệu được cung cấp từ phòng Quản lý đào tạo, Trường Đại học Mở Hà Nội
- Dữ liệu được cung cấp là CSDL về số sinh viên trúng tuyển năm 2020 ngành CNSH và CNTP – Khoa Công nghệ Sinh học Dữ liệu gồm 217 bản ghi và 16 đặc trưng, đây là dữ liệu thô của luận văn
Để tiện cho việc xử lý dữ liệu và tính toán, ta có:
Bảng 3.1: Quy ước biểu diễn dữ liệu
Trang 37T-TB (Tổng điểm trung bình) Từ 15- 21 điểm (>=15 điểm,< 21 điểm) T-TBK(Tổng điểm trung bình khá) Từ 21- 23 điểm (>= 21 điểm, < 23 điểm) T-K (Tổng điểm khá) Từ 23 - 25 điểm (>= 23 điểm, < 25 điểm) T-G (Tổng điểm giỏi) Từ 25 - 30 điểm (>=25 điểm,<=30 điểm)
Khong Sinh viên không nhập học vào Khoa
Bảng 3.2: Bảng các thuộc tính của tập dữ liệu
(Khu vực)
KV1 (Khu vực 1)
Phụ thuộc vào học lực KV2 (Khu vực 2) Nhap KV2-NT (Khu vực 2
3 (Nghành học) NH
CNSH (Công nghệ sinh học)
Khong
CNTP (Công nghệ thực phẩm)
Phụ thuộc vào tổng điểm
4
TD (Tổng điểm)
T-TB (Tổng điểm trung bình)
Nhap
T-TBK(Tổng điểm trung bình khá)
Nhap
Trang 38T-K (Tổng điểm khá) Khong T-G (Tổng điểm giỏi) Khong
3.2.2 Phân tích và xử lý dữ liệu
Qua quá trình phân tích dữ liệu, ta thấy có nhiều thuộc tính ảnh hưởng đến công tác tuyển sinh Tuy nhiên, bài toán chú trọng đến một số thuộc tính đặc trưng nhất sau:
Khu vực (KV): là các khu vực tuyển sinh theo quy định của Bộ giáo dục, được chia thành 4 khu vực:
+ Gioi: sinh viên có học lực giỏi
+ Kha: sinh viên có học lực khá
+ TBK: sinh viên có học lực trung bình khá
+ TB: sinh viên có học lực trung bình
Nghành học (NH): chia làm 2 trường hợp
+ CNSH: Nghành công nghệ sinh học
+ CNTP: Nghành công nghệ thực phẩm
Tổng điểm (TD): chia làm 2 trường hợp
+ T-TB: sinh viên có tổng điểm xét tuyển trung bình
+ T-TBK: sinh viên có tổng điểm xét tuyển trung bình khá
+ T-K: sinh viên có tổng điểm xét tuyển khá
+ T-G: sinh viên có tổng điểm xét tuyển giỏi
Quyết định: kết quả của việc áp dụng cây quyết định, chia làm 2 trường hợp
+ Nhap: sinh viên nhập học vào Khoa
+ Khong: sinh viên không nhập học vào Khoa
Ta có các giá trị của các thuộc tính như sau:
KV = {KV1; KV2;KV2-NT; KV3}
HL = {Gioi; Kha; TBK ;TB}
Trang 39NH = {CNSH; CNTP}
TD = {T-G ;T-K;T-TBK ;T-TB}
Từ phân tích trên ta xây dựng được bảng dữ liệu mẫu huấn luyện sau :
Bảng 3.3 : Dữ liệu mẫu huấn luyện (S)
6 Hoàng Đức Thắng 27/12/2002 Nam KV1 CNTP T-TBK TB Khong
7 Đỗ thị phương thảo 25/10/2002 Nu KV1 CNTP T-TBK TB Khong
8 Trần Hậu Trường 23/08/1997 Nam KV1 CNTP T-TBK Kha Nhap
9 Nguyễn Thị Thu Hiền 24/10/2002 Nu KV1 CNTP T-K Kha Khong
10 Trần Thị Kim Cúc 25/04/2002 Nu KV1 CNTP T-TBK Gioi Khong
11 Nguyễn Quỳnh Mai 17/12/2002 Nu KV2 CNSH T-TBK Kha Nhap
13 Dương Thị Phương 11/04/2002 Nu KV1 CNTP T-K Kha Khong
15 Nguyễn Hồng Trang 07/10/2002 Nu KV3 CNSH T-G Kha Nhap
16 Nguyễn Thị Hà Anh 08/11/2002 Nu KV2-NT CNSH T-G Gioi Nhap
17 Đỗ Thị Quỳnh Anh 17/08/2002 Nu KV1 CNTP T-K Kha Khong
18 Nguyễn Thị Mỹ Linh 01/02/2002 Nu KV2 CNSH T-G Gioi Nhap
19 Nguyễn Thị Phương 22/03/2002 Nu KV2-NT CNSH T-G Gioi Nhap
20 Nguyễn Bá Quân
28/07/2002 Nam KV2 CNTP T-TB TBK Nhap
21 Trần Danh Thương 12/09/2002 Nam KV2-NT CNSH T-G Gioi Nhap
22 Phạm Hữu Hòa 09/12/2002 Nam KV3 CNSH T-G Gioi Nhap
23 Phùng Gia Quốc 28/08/2002 Nam KV2 CNTP T-K Kha Nhap
24 Nguyễn Hương Giang 13/10/2002 Nu KV3 CNTP T-K Kha Nhap
25 Giang Thị Ngọc Anh 21/12/2002 Nu KV2 CNSH T-K Kha Nhap
26 Vương Đức Anh 22/08/2002 Nam KV3 CNSH T-TBK Kha Nhap
27 Hà thị Huế 04/02/2001 Nu KV2-NT CNSH T-K Kha Nhap
28 Nguyễn Nhị Khang 10/03/2001 Nam KV2-NT CNSH T-TBK TBK Nhap
Trang 4029 Lê Hoài Nam 05/03/2002 Nam KV3 CNSH T-G Kha Nhap
30 Nguyễn Thị Lan Anh 06/05/2002 Nu KV2 CNSH T-G Gioi Nhap
31 Lê Nguyễn Mỹ Tâm 25/08/2002 Nu KV1 CNTP T-G Kha Khong
33 Nguyễn Thúy Hiền 13/02/2002 Nu KV3 CNSH T-TBK Kha Nhap
36 Đỗ Thị Hồng Thắm 03/12/2002 Nu KV2 CNTP T-K Kha Nhap
38 Vũ Thị Kim Oanh 22/08/2001 Nu KV3 CNTP T-G Gioi Nhap
39 Nguyễn Hải Dung 09/07/2002 Nu KV2 CNTP T-K Gioi Nhap
40 Đào Thị Ánh Tuyết 28/07/2002 Nu KV1 CNTP T-K Kha Khong
41 Hà Xuân Chỉnh 23/05/2002 Nam KV2-NT CNSH T-K Kha Nhap
43 Nguyễn hữu quốc 03/07/2002 Nam KV3 CNSH T-K Gioi Nhap
46 Trần Thái Bình 14/08/2001 Nu KV2-NT CNSH T-TBK Kha Nhap
47 Nguyễn Tuấn Đạt 05/03/2002 Nam KV3 CNSH T-TB Kha Nhap
49 Nguyễn Thị Nhung 04/09/2002 Nu KV2-NT CNTP T-K Kha Nhap
51 Nguyễn Hoàng Anh 18/11/2002 Nam KV2-NT CNTP T-TBK TBK Nhap
52 Đỗ Hiền Trâm Anh 25/07/2002 Nu KV3 CNTP T-G Kha Nhap
53 Nguyễn Thế Anh 26/03/2002 Nam KV2 CNSH T-G Gioi Nhap
54 Nguyễn Thị Ngọc Ánh 31/05/2002 Nu KV2 CNSH T-K Kha Nhap