Luận văn xây dựng hệ thống tư vấn chọn ban đầu tiên của trường trung học phổ thông Võ Văn Kiệt – huyện Vũng Liêm – tỉnh Vĩnh Long Hệ thống này đã không chỉ góp phần giải đáp thắc mắc cho đa số học sinh trước khi chọn ban giúp các em chọn đúng ban hạn chế việc chạy ban học nhầm ban… mà còn hỗ trợ cho giáo viên làm công tác quản lý danh sách học sinh chọn ban xếp lớp được thuận tiện và hiệu quả hơn trước thềm năm học mới Nghiên cứu tiến hành bốn bước chính 1 Tìm hiểu cơ sở lý thuyết và công tác quản lý học sinh chọn ban tại trường trung học phổ thông 2 Thu thập và tiền xử lý dữ liệu 3 Tìm hiểu bài toán để phân tích và thiết kế cơ sở dữ liệu lựa chọn phương pháp phù hợp với yêu cầu bài toán đặt ra và dữ liệu thu thập được 4 Cài đặt và thử ghiệm hệ thống Luận văn đã xây dựng được hệ thống hỗ trợ tư vấn chọn ban dựa trên lý thuyết Bayes phù hợp với thực tế chọn ban tại trường trung học phổ thông
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
Trang 2ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
LUẬN VĂN THẠC SĨ KỸ THUẬT
Người hướng dẫn khoa học: TS TRẦN THẾ VŨ
Đà Nẵng - Năm 2017
Trang 3i
LỜI CAM ĐOAN
Tôi xin cam đoan:
Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của PGS TS Nguyễn Thanh Bình; và chưa từng được ai công bố trong bất kỳ công trình nào khác
Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng và trung thực tên tác giả, tên công trình, thời gian, địa điểm công bố;
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin chịu hoàn toàn trách nhiệm
Trang 4TÓM TẮT LUẬN VĂN
XÂY DỰNG HỆ THỐNG TƯ VẤN HỖ TRỢ CHỌN BAN CHO HỌC SINH
TẠI TRƯỜNG THPT VÕ VĂN KIỆT
Lý Thị Kiều Oanh, học viên cao học khoá 31, chuyên ngành Khoa học máy tính Tóm tắt - Luận văn xây dựng hệ thống tư vấn chọn ban đầu tiên của trường
trung học phổ thông Võ Văn Kiệt – huyện Vũng Liêm – tỉnh Vĩnh Long Hệ thống này đã không chỉ góp phần giải đáp thắc mắc cho đa số học sinh trước khi chọn ban, giúp các em chọn đúng ban, hạn chế việc chạy ban, học nhầm ban… mà còn hỗ trợ cho giáo viên làm công tác quản lý danh sách học sinh chọn ban, xếp lớp được thuận tiện và hiệu quả hơn trước thềm năm học mới Nghiên cứu tiến hành bốn bước chính: (1) Tìm hiểu cơ sở lý thuyết và công tác quản lý học sinh chọn ban tại trường trung học phổ thông; (2) Thu thập và tiền xử lý dữ liệu; (3) Tìm hiểu bài toán để phân tích và thiết kế cơ sở dữ liệu, lựa chọn phương pháp phù hợp với yêu cầu bài toán đặt ra và dữ liệu thu thập được; (4) Cài đặt và thử ghiệm hệ thống Luận văn đã xây dựng được hệ thống hỗ trợ tư vấn chọn ban dựa trên lý thuyết Bayes phù hợp với thực tế chọn ban tại trường trung học phổ thông
Từ khóa - hệ thống hỗ trợ tư vấn; chọn ban; học sinh; trung học phổ thông; lý
thuyết Bayes
BUILDING A CONSULTANCY SYSTEM SUPPORTING STUDENTS TO
SELECT FIELDS AT VO VAN KIET HIGH SCHOOL
Abstract - The thesis presents the first counseling system of high school Vo Van Kiet - Vung Liem district - Vinh Long province This system has contributed to answering questions for the majority of the students before choosing the field, helping them choose the right field, limiting the field, learning the wrong field and support teachers to manage the list of students selecting fields, class placement is more convenient and effective before the new school year Research was conducted
in 4 main steps: (1) Understanding the theoretical basis and the management of students for selecting fields at high school; (2) Data collection and pre-processing; (3) Exploring the problem for analysis and design; Selecting the method to solve the problem requirements and the collected data; (4) Installing and testing the system The result of the thesis is to build the counseling system based on the Bayesian theory in order to meet the requirements at high school
Key words - counseling support system; choose school board; student; high school;
Bayesian theory
Trang 5MỤC LỤC
LỜI CAM ĐOAN i
TÓM TẮT LUẬN VĂN ii
MỤC LỤC iii
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT vi
DANH MỤC CÁC BẢNG vii
DANH MỤC CÁC HÌNH viii
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục đích và ý nghĩa đề tài 2
3 Mục tiêu và nhiệm vụ nghiên cứu 2
4 Đối tượng và phạm vi nghiên cứu 2
5 Phương pháp nghiên cứu 3
6 Phương tiện, công cụ triển khai 3
7 Bố cục của luận văn 3
CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 4
1.1 Kho dữ liệu 4
1.1.1 Tổng quan về kho dữ liệu 4
1.1.2 Mục đích của kho dữ liệu 4
1.1.3 Đặc tính của kho dữ liệu 5
1.1.4 Quy trình xây dựng kho dữ liệu và các vấn đề liên quan 5
1.1.4.1 Kho dữ liệu và cơ sở dữ liệu 5
1.1.4.2 Kiến trúc kho dữ liệu 5
1.2 Khám phá tri thức và khai phá dữ liệu 8
1.2.1 Tổng quan về khai phá tri thức và khai phá dữ liệu 8
1.2.2 Quá trình khám phá tri thức 11
1.2.3 Quá trình khai phá dữ liệu 12
1.2.4 Các kỹ thuật khai phá dữ liệu 12
1.2.5 Khai phá dữ liệu bằng cây quyết định 13
1.2.5.1 Định nghĩa cây quyết định 13
1.2.5.2 Vấn đề xây dựng cây quyết định 13
1.2.5.3 Rút ra các luật từ cây quyết định 13
1.2.5.4 Các thuật toán khai phá dữ liệu bằng cây quyết định 14
1.3 Giới thiệu công cụ xây dựng mô hình khai phá dữ liệu Business Intelligence Development Studio (BIDS) của Microsoft 16
Trang 61.4 Giới thiệu phương pháp phân lớp Nạve Bayes 16
1.4.1 Vận dụng các phương pháp tốn học để phân lớp dữ liệu 16
1.4.2 Phương pháp phân lớp Nạve Bayes 17
1.4.3 Thuật tốn Nạve Bayes 18
1.4.3.1 Mơ hình phân lớp Nạve Bayes 18
1.4.3.2 Thuật tốn Nạve Bayes 18
1.4.3.3 Các bước thực hiện thuật tốn phân lớp Nạve Bayes 18
1.4.3.4 Mở rộng định lý Nạve Bayes 19
1.5 Kết luận 20
CHƯƠNG 2 GIẢI PHÁP HỆ TƯ VẤN HỖ TRỢ CHỌN BAN 21
2.1 Giới thiệu về cơng tác tư vấn và chọn ban tại trường THPT Võ Văn Kiệt 21
2.2 Phát biểu bài tốn tư vấn chọn ban 22
2.3 Phân tích bài tốn 22
2.3.1 Yêu cầu chức năng 22
2.3.2 Yêu cầu phi chức năng 23
2.3.2.1 Đối với tư vấn chọn ban 23
2.3.2.2 Đối với việc chọn ban của học sinh 23
2.4 Giải pháp tổng thể 23
2.4.1 Ý tưởng 23
2.4.2 Hoạt động của hệ thống 24
2.4.2.1 Mơ hình giải pháp 24
2.4.2.2 Mơ tả chi tiết hoạt động của hệ thống 24
2.5 Thiết kế chi tiết 25
2.5.1 Thiết kế cơ sở dữ liệu 25
2.5.2 Thiết kế thuật tốn 27
2.5.2.1 Sơ đồ thuật tốn chi tiết tư vấn dựa trên điểm trung bình mơn 27
2.5.2.2 Sơ đồ thuật tốn chi tiết tư vấn dựa trên mơn học yêu thích 28
2.5.2.3 Sơ đồ thuật tốn chi tiết tư vấn dựa trên ngành nghề 29
2.5.2.4 Học sinh chọn ban học 30
2.6 Kết luận 31
CHƯƠNG 3 CÀI ĐẶT VÀ THỬ NGHIỆM 32
3.1 Mơi trường cài đặt 32
3.2 Dữ liệu đầu vào 32
3.3 Cài đặt hệ thống 32
3.3.1 Các chức năng của hệ thống 32
3.3.2 Các thành phần của hệ thống 33
Trang 73.3.2.1 Màn hình chính của hệ thống 33
3.3.2.2 Màn hình đăng nhập của hệ thống 33
3.3.2.3 Màn hình tư vấn theo điểm môn học 34
3.3.2.4 Màn hình tư vấn theo môn học yêu thích 35
3.3.2.5 Màn hình tư vấn theo ngành nghề 35
3.3.2.6 Màn hình chọn ban học 36
3.3.2.7 Màn hình thống kê 37
3.4 Kết quả thử nghiệm 37
3.4.1 Các bước chuẩn bị 37
3.4.2 Dữ liệu thử nghiệm 38
3.4.2.1 Một số bảng dữ liệu thử nghiệm 38
3.4.2.2 Thử nghiệm sử dụng định lý Bayes 39
3.4.3 Một số kết quả thử nghiệm 40
3.5 Đánh giá kết quả 43
3.6 Kết luận 43
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 44
TÀI LIỆU THAM KHẢO 46 QUYẾT ĐỊNH GIAO ĐỀ TÀI
BẢN SAO KẾT LUẬN CỦA HỘI ĐỒNG, BẢN SAO NHẬN XÉT CỦA CÁC PHẢN BIỆN
Trang 8DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
Trang 9DANH MỤC CÁC BẢNG
Trang 102.2 Sơ đồ thuật toán chi tiết tư vấn dựa trên điểm trung bình môn 27 2.3 Sơ đồ thuật toán chi tiết tư vấn dựa trên môn học yêu thích 28 2.4 Sơ đồ thuật toán chi tiết tư vấn dựa trên ngành nghề 29 2.5 Sơ đồ thuật toán chi tiết chọn ban của học sinh 30 3.1 Màn hình chính của hệ thống tư vấn chọn ban 33
3.7 Màn hình thống kê kết quả chọn ban của học sinh 37
3.9 Màn hình kết quả tư vấn theo điểm môn học trong trường hợp
3.10 Màn hình kết quả tư vấn theo môn học yêu thích 41
Trang 11ra quyết định Khai phá dữ liệu là quá trình trích lọc những tri thức hoặc những mẫu tin tiềm ẩn và hữu ích từ những sự kiện rời rạc
Trong mấy năm gần đây, ở trường trung học phổ thông có tổ chức phân ban cho học sinh để học sinh có thể học theo các khối thi đại học Theo đó, học sinh có thể chọn theo ban mà mình yêu thích hay theo nguyện vọng để thi đại học Công việc gặp nhiều khó khăn khi học sinh thay đổi ban mình đã lựa chọn, nguyên nhân chính là do các em không biết chọn ban nào là phù hợp Các em có nhiều vấn đề thắc mắc và đặt ra nhiều câu hỏi để bổ sung kiến thức vào việc chọn ban phù hợp với ngành nghề mà các em yêu thích hay theo xu hướng phát triển xã hội Mặc dù
xã hội rất phát triển, Internet không xa lạ gì với các em, nhưng các em không biết xem trang nào là đúng (vì quá nhiều trang, mỗi trang thông tin khác nhau) Vì vậy, các em cần được tư vấn trước khi chọn ban Việc mở các buổi tư vấn rất khó khăn
và mất nhiều thời gian, không có giáo viên làm công tác này, cũng rất khó để trả lời hết các câu hỏi của các em học sinh
Vì thế, tôi có một giải pháp để giảm bớt sự lo lắng và bỡ ngỡ cho học sinh, đồng thời giảm khó khăn cho người quản lý việc chọn ban của học sinh, đó là có thể
tư vấn cho học sinh chọn ban bằng một hệ thống tự động Cho nên tôi chọn đề tài:
“Xây dựng hệ thống tư vấn hỗ trợ học sinh chọn ban tại trường trung học phổ thông Võ Văn Kiệt” để phục vụ học sinh và cán bộ quản lý về việc chọn ban ở đầu
mỗi năm học
Trang 122 Mục đích và ý nghĩa đề tài
a Mục đích
Bước đầu nghiên cứu một số cơ sở lý thuyết khai phá dữ liệu để hỗ trợ phần nào giúp các học sinh có thể chọn đúng ban phù hợp khi đăng kí vào lớp mới, giúp các bạn học sinh hiểu rõ hơn về việc chọn ban, từ đó chọn được ban học phù hợp với khả năng và ngành nghề sau này, chủ động trong xây dựng kế hoạch học Đề tài cũng đưa ra chương trình demo nhỏ minh họa việc xây dựng hệ thống hỗ trợ tư
vấn
b Ý nghĩa khoa học
Đề tài sẽ đưa ra một hệ thống tư vấn hỗ trợ công tác tư vấn chọn ban và đăng
ký ban học cho học sinh tại trường trung học phổ thông
c Ý nghĩa thực tiễn
Đề tài tạo ra được kho dữ liệu hỗ trợ tư vấn, tra cứu nhằm nắm được những thông tin về tư vấn chọn ban Bên cạnh đề tài còn đưa ra hệ thống chọn ban hỗ trợ
trong việc quản lý và xếp lớp học tại trường THPT Võ Văn Kiệt
3 Mục tiêu và nhiệm vụ nghiên cứu
Những kết quả nghiên cứu nhằm ứng dụng có hiệu quả cho công tác tư vấn quản lý chọn ban tại trường Trung học phổ thông Võ Văn Kiệt Để hoàn thành mục đích, ý tưởng đặt ra, cần nghiên cứu các nội dung như sau:
- Nghiên cứu thực trạng công tác tư vấn và quản lý chọn ban tại trường Trung học phổ thông Võ Văn Kiệt
- Nghiên cứu khai phá dữ liệu
- Nghiên cứu thuật toán Bayes trong phân lớp: nghiên cứu cách biểu diễn tri thức để xây dựng kho tri thức cho phù hợp với thuật toán Bayes trong phân
lớp (Naive Bayes classifiers)
- Phát biểu, phân tích và cài đặt cho bài toán đặt ra
- Đánh giá kết quả theo yêu cầu của đề tài
4 Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu: Kho dữ liệu, phương thức quản lý và vận hành kho
dữ liệu Nghiên cứu kỹ thuật khám phá tri thức và khai phá dữ liệu
- Phạm vi nghiên cứu: Nghiên cứu xây dựng, quản lý kho dữ liệu, khai phá
dữ liệu trong công tác tư vấn chọn ban học của học sinh Nghiên cứu xây dựng hệ thống hỗ trợ hệ thống chọn ban cho học sinh trường trung học phổ thông Võ Văn Kiệt
Trang 135 Phương pháp nghiên cứu
a Phương pháp lý thuyết
Dựa vào tri thức về khai phá dữ liệu và thuật tốn suy diễn Bayes để xây dựng hệ thống tư vấn chọn ban trực tuyến trên mơ hình khai phá dữ liệu Business Intelligence Development Studio Sử dụng các cơng cụ của hệ quản trị SQL Server trong Data Warehouse
b Phương pháp thực nghiệm
Dựa trên các nghiên cứu về lý thuyết để xây dựng ứng dụng “Xây dựng hệ thống tư vấn hỗ trợ học sinh chọn ban tại trường trung học phổ thơng Võ Văn Kiệt” Chạy ứng dụng thử nghiệm trên máy đơn
6 Phương tiện, cơng cụ triển khai
- Microsoft SQL Server 2008
- Microsoft Visual Studio 2008
7 Bố cục của luận văn
Báo cáo luận văn được thể hiện trong 3 chương:
Chương 1 Cơ sở lý thuyết: Chương này giới thiệu tổng quan về kho dữ liệu,
khám phá tri thức, khai phá dữ liệu và giới thiệu sơ về phương pháp phân loại Nạve Bayes
Chương 2 Giải pháp hệ tư vấn hỗ trợ chọn ban: gồm các phần như: giới
thiệu về cơng tác tư vấn và chọn ban tại trường THPT Võ Văn Kiệt, phát biểu bài tốn, giải pháp tổng thể, thiết kế chi tiết hệ thống tư vấn
Chương 3 Cài đặt và thử nghiệm: gồm mơi trường cài đặt, dữ liệu đầu vào,
cài đặt hệ thống, kết quả thử nghiệm, đánh giá kết quả
Trang 14CHƯƠNG 1 CƠ SỞ LÝ THUYẾT
Từ khi ứng dụng công nghệ thông tin được sử dụng rộng rãi trên hệ thống máy tính, có một khối lượng lớn dữ liệu được lưu trữ và xử lý trên máy tính Vấn đề ứng dụng công nghệ thông tin hiện nay không chỉ là lưu trữ vận hành dữ liệu, mà còn là việc tổ chức các nguồn dữ liệu đó để rút trích thông tin và hỗ trợ ra quyết định Đây chính là một sự tiến hoá cần thiết cho các hệ thống thông tin
1.1 Kho dữ liệu
1.1.1 Tổng quan về kho dữ liệu
Kho dữ liệu là tuyển tập các cơ sở dữ liệu tích hợp, hướng chủ đề, được thiết
kế để hỗ trợ cho chức năng trợ giúp quyết định
Theo John Ladley, Công nghệ kho dữ liệu (Data Warehouse Technology) là tập các phương pháp, kỹ thuật và các công cụ có thể kết hợp, hỗ trợ nhau để cung cấp thông tin cho người sử dụng trên cơ sở tích hợp từ nhiều nguồn dữ liệu, nhiều môi trường khác nhau
Định nghĩa W.H Inman đề xướng: DW được hiểu là một tập hợp các dữ liệu tương đối ổn định (không hay thay đổi), cập nhật theo thời gian, được tích hợp theo hướng chủ đề nhằm hỗ trợ quá trình tạo quyết định về mặt quản lý [8;9]
Kho dữ liệu thường rất lớn tới hàng trăm Gigabyte hay thậm chí hàng Terabyte Kho dữ liệu được xây dựng để tiện lợi cho việc truy cập theo nhiều nguồn, nhiều kiểu dữ liệu khác nhau sao cho có thể kết hợp được cả những ứng dụng của các công nghệ hiện đại và kế thừa được từ những hệ thống đã có sẵn từ trước
1.1.2 Mục đích của kho dữ liệu
- Mục tiêu chính của kho dữ liệu là nhằm đáp ứng các tiêu chuẩn cơ bản sau: + Phải có khả năng đáp ứng mọi yêu cầu về thông tin của người sử dụng + Hỗ trợ để các nhân viên của tổ chức thực hiện tốt, hiệu quả công việc của mình, như có những quyết định hợp lý, nhanh và bán được nhiều hàng hơn, năng suất cao hơn, thu được lợi nhuận cao hơn, v.v
+ Giúp cho tổ chức, xác định, quản lý và điều hành các dự án, các nghiệp vụ một cách hiệu quả và chính xác
+ Tích hợp dữ liệu và các siêu dữ liệu từ nhiều nguồn khác nhau
- Muốn đạt được những yêu cầu trên thì DW phải:
+ Nâng cao chất lượng dữ liệu bằng các phương pháp làm sạch và tinh lọc dữ liệu theo những hướng chủ đề nhất định
+ Tổng hợp và kết nối dữ liệu
+ Đồng bộ hoá các nguồn dữ liệu với DW
+ Phân định và đồng nhất các hệ quản trị cơ sở dữ liệu tác nghiệp như là các công cụ chuẩn để phục vụ cho DW
Trang 15+ Quản lí siêu dữ liệu
+ Cung cấp thông tin được tích hợp, tóm tắt hoặc được liên kết, tổ chức theo các chủ đề
+ Dùng trong các hệ thống hỗ trợ quyết định (Decision suport system - DSS), các hệ thống thông tin tác nghiệp hoặc hỗ trợ cho các truy vấn đặc biệt [11]
1.1.3 Đặc tính của kho dữ liệu
Những đặc điểm cơ bản của Kho dữ liệu (DW) là một tập hợp dữ liệu có tính chất sau:
1.1.4 Quy trình xây dựng kho dữ liệu và các vấn đề liên quan
1.1.4.1 Kho dữ liệu và cơ sở dữ liệu
- Trước tiên DW là database rất lớn
- Database hướng về xử lý thời gian thực, DW hướng về tính ổn định
- Phục vụ xử lý transaction, cập nhật Datawarehouse thường chỉ đọc, phục
vụ cho những nhu cầu báo cáo
- DW sẽ lấy thông tin có thể từ nhiều nguồn khác nhau: DB2, Oracle, SQLserver thậm chí cả File thông thường rồi làm sạch chúng và đưa vào cấu trúc của nó-đó là VLDB (very large database)
- Một điểm quan trọng là Database thường được chuẩn hóa (Dạng chuẩn 1, 2,
3, BCK) để khai thác [1]
1.1.4.2 Kiến trúc kho dữ liệu
Mô hình kiến trúc của kho dữ liệu cơ bản gồm có ba thành phần: Dữ liệu nguồn, khu vực xử lý và kho dữ liệu [4]
Trang 16Hình 1.1 Kiến trúc kho dữ liệu
a Nguồn dữ liệu
Nguồn dữ liệu của kho dữ liệu bao gồm từ rất nhiều nguồn khác nhau và có cấu trúc dữ liệu khác nhau:
- Dữ liệu từ hệ thống tác nghiệp: Đây là nguồn dữ liệu chính để xây dựng kho
dữ liệu, chứa các dữ liệu chi tiết hiện tại của hệ thống tác nghiệp
- Dữ liệu từ hệ thống phân tích: Đây là dữ liệu được tổng hợp từ dữ liệu nguồn
đã cũ và tổ chức lại theo nhiều phương pháp khác nhau
- Dữ liệu từ bên ngoài: đây là các dữ liệu từ các nguồn ngoài hệ thống của công ty, có thể do các tổ chức khác thu thập và tạo ra, nó được sử dụng cho các yêu cầu phân tích dữ liệu
Dữ liệu từ các hệ thống nguồn thường hỗn tạp và chứa nhiều cấu trúc khác nhau
ví dụ: các cơ sở dữ liệu, từ các file excel, các file thô, hay dạng XML Vì thế trước khi đưa vào kho dữ liệu cần phải chuyển đổi và tích hợp dữ liệu
b Khu vực xử lý
Ở khu vực này dữ liệu được sử dụng các kỹ thuật làm sạch và chuyển đổi để đảm bảo tính nhất quán dữ liệu trước khi đưa vào kho dữ liệu đích Thông thường người ta sử dụng các công cụ trích xuất, chuyển đổi và nạp dữ liệu (ETL: Extracts
dữ liệu-Transforms dữ liệu-Load dữ liệu) Công cụ này thực hiện các thao tác trích xuất dữ liệu, chuyển đổi dữ liệu, tải dữ liệu vào kho dữ liệu
Nhiệm vụ:
- Làm sạch dữ liệu vào: Đây là quá trình kiểm tra dữ liệu đầu vào và loại bỏ các
dữ liệu sai định dạng hoặc lỗi Nhiệm vụ của bước này bao gồm:
Sử dụng các luật về dữ liệu (Data Quality rules) để kiểm tra dữ liệu đầu vào
Dữ liệu nguồn Khu vực xử lý Kho dữ liệu Người dùng đầu cuối
Hệ thống hoạt động
Các tập tin phẳng
Trang 17 Chỉnh sửa lỗi dữ liệu
Cảnh báo về lỗi dữ liệu đầu vào
- Chuyển đổi dữ liệu: Đây là quá trình chuyển đổi dữ liệu nhằm đảm bảo tính nhất quán trước khi chuyển vào kho dữ liệu Quá trình này bao gồm các bước:
Sử dụng các luật về chuyển đổi dữ liệu để chuyển đổi
Chuyển đổi kiểu dữ liệu cho phù hợp với cơ sở dữ liệu đích
Chuyển đổi dữ liệu vào một lược đồ nhất quán
Các bước: Tiến trình ETL gồm có 3 bước:
- Trích xuất: Dữ liệu nguồn từ rất nhiều nguồn khác nhau và có thể có rất nhiều cấu trúc dữ liệu khác nhau như nhiều loại cơ sở dữ liệu, từ file excel hay từ file thô Vì thế nhiệm vụ chính của bước này là trích xuất dữ liệu từ hệ thống nguồn
để xử lý
- Chuyển đổi: Đây là quá trình rất phức tạp dùng để chuyển đổi dữ liệu nguồn một mô hình khác phù hợp và chuyển vào cơ sở dữ liệu đích Ở bước này sẽ phải sử dụng các phép chuyển đổi như:
Chọn các cột dữ liệu phù hợp (chỉ chọn các cột cần thiết)
Chuyển đổi dữ liệu Ví dụ: chuyển 1 thành Nam hay ngược lại
Tạo ra các cột tính toán mới Ví dụ: Điểm trung bình = Tổng điểm /số trình
Lọc dữ liệu
Sắp xếp dữ liệu
Thực hiện các phép tổng hợp (tính tổng các cột, đếm số dòng, tính trung bình)
Tạo ra các giá trị mới (tạo khóa tự tăng)
Tìm kiếm hay so sánh dữ liệu
Có thể nói đây là bước quan trọng nhất trong tiến trình ETL, nó thực hiện hầu hết các nhiệm vụ của tiến trình ETL
- Nạp dữ liệu vào kho dữ liệu: Đây là quá trình đẩy dữ liệu sau khi đã được chuyển đổi vào kho dữ liệu Dữ liệu sau khi đã được chuyển đổi sẽ được nạp vào kho dữ liệu
c Kho dữ liệu
Trang 18Kho dữ liệu là cơ sở dữ liệu được tổ chức lại theo mô hình hình sao hay mô hình bông tuyết Mô hình được phi chuẩn hóa, chấp nhận sự dư thừa dữ liệu trong lưu trữ
dữ liệu chính vì thế mô hình dữ liệu đơn giản hơn nên việc truy vấn dễ dàng hơn và tốc độ xử lý cũng nhanh hơn mô hình dữ liệu được chuẩn hóa Ngoài ra kho dữ liệu còn chứa các dữ liệu khác như:
- Siêu dữ liệu: Đây là dữ liệu chứa định nghĩa của dữ liệu được lưu trữ trong kho dữ liệu Siêu dữ liệu định nghĩa nên các thành phần của kho dữ liệu, cách thức
dữ liệu được tải vào kho dữ liệu, lưu lại quá trình hoạt động của kho dữ liệu Siêu
+ Dữ liệu định nghĩa và chú thích về tiến trình ETL
+ Dữ liệu định nghĩa các luật về chất lượng dữ liệu, các mức độ sai lệch của dữ liệu và cách thức xử lý
+ Dữ liệu theo dõi tiến trình xử lý các bản ghi trong kho dữ liệu
+ Dữ liệu chứa các sự kiện hoạt động của các ứng dụng
- Bảng sự kiện tổng hợp: Các bảng tổng hợp này lưu dữ các dữ liệu tính toán được nhằm trả lời một cách nhanh nhất các câu hỏi của người dùng đưa ra Đây là
dữ liệu có thể tính toán được từ các bảng khác tuy nhiên để tăng tốc độ xử lý dữ liệu này được lưu trữ để không phải tính toán lại mỗi khi có truy vấn
1.2 Khám phá tri thức và khai phá dữ liệu
1.2.1 Tổng quan về khai phá tri thức và khai phá dữ liệu
“Khám phá tri thức là quá trình tìm ra những tri thức, đó là những mẫu tìm ẩn, trước đó chưa biết và là thông tin hữu ích đáng tin cậy” Còn khai phá dữ liệu (KPDL) là một bước quan trọng trong quá trình khám phá tri thức, sử dụng các thuật toán KPDL chuyên dùng với một số qui định về hiệu quả tính toán chấp nhận được để chiết xuất ra các mẫu hoặc các mô hình có ích trong dữ liệu Nói một cách khác, mục đích của khám phá tri thức và KPDL chính là tìm ra các mẫu hoặc mô hình đang tồn tại trong các cơ sở dữ liệu (CSDL) nhưng vẫn còn bị che khuất bởi hàng núi dữ liệu [12]
Khám phá tri thức từ CSDL là một quá trình sử dụng các phương pháp và công
cụ tin học, trong đó con người là trung tâm của quá trình Do đó, con người cần phải
có kiến thức cơ bản về lĩnh vực cần khám phá để có thể chọn được tập con dữ liệu
Trang 19tốt, từ đó phát hiện các mẫu phù hợp với mục tiêu đề ra Đó chính là tri thức, được rút ra từ CSDL, thường để phục vụ cho việc giải quyết một loạt nhiệm vụ nhất định trong một lĩnh vực nhất định Tuy vậy, quá trình khám phá tri thức mang tính chất hướng nhiệm vụ vì không phải là mọi tri thức tìm được đều áp dụng vào thực tế được
Để có được những thông tin quý báu chúng ta phải tìm ra các mẫu có trong tập CSDL trước Việc đánh giá các mẫu được tìm thấy cũng là một điều thú vị và tất nếu có tính chất quyết định đến sự sử dụng hay không sử dụng chúng Đầu ra của một chương trình là khám phá những mẫu có ích được gọi là tri thức Tri thức được khám phá có các đặc điểm chính:
- Kiến thức cao cấp: Ngày càng có nhiều câu hỏi mang tính chất định tính cần phải trả lời dựa trên một khối lượng dữ liệu khổng lồ đã có Quá trình để tìm ra kiến thức như vậy không phải từ những phương pháp thống kê cổ điển mà nó được đúc
kết từ các kinh nghiệm đã có, được thể hiện trong dữ liệu, những kết quả đó có thể lĩnh hội được
- Độ chính xác: Dù cho những mẫu khai phá thật sự có trong CSDL hay không thì việc đo lường trị giá của chúng là bắt buộc phải có Chúng ta sẽ chỉ sử dụng những mẫu nào có độ chính xác càng cao thì hiệu quả công việc đạt được càng lớn, những mẫu có độ chính xác chưa được xác định rõ ràng hoặc không cao thì không nên sử dụng chúng
- Tính hấp dẫn: Khám phá tri thức được coi là lý thú vì nó có thể vạch ra các
xu hướng một cách hoàn thiện Đó là những điều mới lạ hay những quy trình tìm năng, hữu ích ẩn chứa từ trong dữ liệu trước đó
- Tính hiệu quả: thời gian chạy của thuật toán khám phá tri thức trên CSDL lớn có thể dự tính và chấp nhận được
Dữ liệu là tập hợp những bộ thông tin chính xác và quá trình khám phá tri thức được xem là sự lọc bỏ các dư thừa, được rút gọn tới mức tối thiểu chỉ để lại các đặc trưng cơ bản cho dữ liệu Tri thức được tìm thấy là các thông tin tích hợp, bao gồm các sự kiện và các mối quan hệ trong chúng Các mối quan hệ này có thể được hiểu
ra, có thể được phát hiện, hoặc có thể được học
Nếu khám phá tri thức là toàn bộ quá trình chiết xuất tri thức từ các CSDL thì KPDL là giai đoạn chủ yếu của quá trình đó KPDL là một quá trình phát hiện các mẫu mới, thường bao gồm việc thử tìm mô hình phù hợp với tập dữ liệu và tìm kiếm các mẫu từ tập dữ liệu theo mô hình đó Sử dụng các kỹ thuật và các khái niệm của các lĩnh vực đã được nghiên cứu từ trước như: học máy, nhận dạng, thống kê, hồi quy, xếp loại, phân nhóm, các mô hình đồ thị, các mạng Bayes, … Hầu hết các CSDL đều chứa rất nhiều các mẫu mới và có ích, tuy nhiên mẫu có giá trị với mục tiêu đặt ra phải là những mẫu không tầm thường Để các mẫu trở nên không tầm thường, hệ thống phải làm nhiều hơn là chỉ mò mẫm thống kê vì kết quả của việc
Trang 20tính toán trực tiếp qua công tác thống kê là đã có đối với người dùng Một hệ thống tìm kiếm cần phải có khả năng quyết định cần thực hiện tính toán nào và kết quả là có đáng quan tâm để tạo nên tri thức trong ngữ cảnh hiện tại hay không KPDL được sử dụng để tạo ra giả thuyết Ví dụ như để xác định các yếu tố rủi ro khi cho vay tín dụng, kỹ thuật KPDL phải phát hiện được những người có thu nhập thấp và nợ nhiều là những người sẽ có mức rủi ro cao Ngoài ra kỹ thuật cũng có thể phát hiện ra những quy luật mà nhà phân tích có thể chưa tìm ra ví dụ như tỷ lệ giữa thu nhập trên nợ và tuổi cũng là các yếu tố xác định mức rủi ro Để làm được điều này, KPDL sử dụng các thông tin trong quá khứ để học Nó sẽ tìm kiếm các thông tin này trong các CSDL và sử dụng chúng để tìm ra các mẫu đáng quan tâm
Nếu xét về mặt ý tưởng và mục đích ứng dụng, KPDL là một nhu cầu tất yếu, một sự nhạy cảm đáp lại sự mong mỏi của giới kinh doanh thì về mặt kỹ thuật, đó thực sự là một khó khăn và là cả sự thách thức đối với những nhà khoa học KPDL được xây dựng dựa trên việc sử dụng các giải thuật mới, được định hướng theo như cầu kinh doanh để có thể giải quyết tự động các bài toán kinh doanh bằng các kỹ thuật dễ dùng và có thể hiểu được Các kỹ thuật đang được nghiên cứu và sử dụng hiện nay bao gồm cây quyết định (CART, CHAID, AID), mạng neuron, phương pháp láng giềng gần nhất, các luật suy diễn, …
KPDL không thuộc một ngành công nghiệp nào Nó sử dụng các kỹ thuật thông minh để khai phá các tri thức tiềm ẩn trong dữ liệu Có thể coi KPDL ngày nay đang ở trạng thái giống như việc quản trị dữ liệu vào những năm 60, khi mà các ứng dụng quản trị dữ liệu đều không tuân theo một nguyên tắc chung nào cho đến khi
mô hình dữ liệu quan hệ ra đời cùng với sức mạnh của ngôn ngữ vấn đáp đã thúc đẩy việc phát triển các ứng dụng quản trị dữ liệu lên nhanh chóng Tuy vậy, hiện nay trên thế giới đã có rất nhiều ngành công nghiệp sử dụng kỹ thuật KPDL để phục
vụ cho hoạt động kinh doanh của mình và đã bước đầu thành công như ngành tài chính, y học, hóa học, bảo hiểm, sản xuất, giao thông, hàng không, …
Các kết quả đạt được cho thấy mặc dù kỹ thuật KPDL hiện nay vẫn còn nhiều
vấn đề nổi cộm, nhưng với những tri thức mà chuyên gia con người cũng chưa cung cấp được thì KPDL có một tiềm năng to lớn trong việc tạo ra những lợi nhuận đáng kể trong nền kinh tế [1;12]
Trang 21Hình thành và định nghĩa bài toán
Thu thập và tiền xử lý dữ liệu
Phân tích và kiểm định kết quả Khai phá dữ liệu rút ra các tri thức
Sử dụng các tri thức phát hiện được
1.2.2 Quá trình khám phá tri thức
Hình 1.2 Quá trình khám phá tri thức
Quá trình khám phá tri thức từ CSDL là một quá trình có sử dụng nhiều phương pháp và công cụ tin học nhưng vẫn là một quá trình mà trong đó con người là trung tâm Do đó, nó không phải là một hệ thống phân tích tự động mà là một hệ thống bao gồm nhiều hoạt động tương tác thường xuyên giữa con người và CSDL, tất nhiên là với sự hỗ trợ của các công cụ tin học Người sử dụng hệ thống ở đây phải
là người có kiến thức cơ bản về lĩnh vực cần phát hiện tri thức để có thể chọn được đúng các tập con dữ liệu, các lớp mẫu phù hợp và đạt tiêu chuẩn quan tâm so với mục đích Tri thức mà ta nói ở đây là các tri thức rút ra từ các CSDL, thường để phục vụ cho việc giải quyết một loạt nhiệm vụ nhất định trong một lĩnh vực nhất định Do đó, quá trình phát hiện tri thức cũng mang tính chất hướng nhiệm vụ, không phải là phát hiện mọi tri thức bất kỳ mà là phát hiện tri thức nhằm giải quyết tốt nhiệm vụ đề ra [10]
Trang 221.2.3 Quá trình khai phá dữ liệu
Quá trình này gồm 6 bước:
Tri thức
Dữ liệu Dữ liệu Dữ liệu
Dữ liệu được làm sạch đã được mẫu
mục tiêu Tiền xử lý chuyển đổi
Hình 1.3 Quá trình khai phá dữ liệu
1.2.4 Các kỹ thuật khai phá dữ liệu
Các kỹ thuật KPDL được có thể chia làm 2 nhóm chính:
- Kỹ thuật KPDL mô tả: có nhiệm vụ mô tả về các tính chất hoặc các đặc tính
chung của dữ liệu trong CSDL hiện có Nhóm kỹ thuật này gồm các phương pháp:
phân nhóm (Clustering), tổng hợp hóa (Summerization), phát hiện sự biến đổi và độ lệch (Change and deviation detection), phân tích luật kết hợp (Association Rules),
- Kỹ thuật KPDL dự đoán: có nhiệm vụ đưa ra các dự đoán dựa vào các suy
diễn trên dữ liệu hiện thời Nhóm kỹ thuật này gồm các phương pháp: phân lớp
(Classification), hồi quy (Regression),
Một số kỹ thuật phổ biến thường được sử dụng để khai phá dữ liệu hiện nay là: phân lớp dữ liệu, phân cụm dữ liệu, khai phá luật kết hợp, hồi quy, giải thuật di truyền, mạng nơron, cây quyết định, … [2;12]
lý
Chuyển đổi Khai thác dữ liệu
Trang 231.2.5 Khai phá dữ liệu bằng cây quyết định
1.2.5.1 Định nghĩa cây quyết định
Cây quyết định là một mô tả tri thức dạng đơn giản nhằm phân các đối tượng
dữ liệu thành một số lớp nhất định Các nút của cây được gán nhãn là tên các thuộc tính, các cạnh được gán các giá trị có thể của các thuộc tính, các lá miêu tả các lớp khác nhau Các đối tượng được phân lớp theo các đường đi trên cây, qua các cạnh tương ứng với giá trị của thuộc tính của đối tượng tới lá
Tạo luật: Các luật được tạo ra nhằm suy diễn một số mẫu dữ liệu có ý nghĩa
về mặt thống kê
1.2.5.2 Vấn đề xây dựng cây quyết định
Quá trình xây dựng cây quyết định đều được chia ra làm 3 giai đoạn cơ bản: Xây dựng cây, cắt tỉa cây, đánh giá cây
- Xây dựng cây: Thực hiện chia một cách đệ quy tập mẫu dữ liệu huấn luyện cho đến khi các mẫu ở mỗi nút lá thuộc cùng một lớp
- Cắt tỉa cây: Là việc làm dùng để tối ưu hoá cây Cắt tỉa cây chính là việc trộn một cây con vào trong một nút lá
- Đánh giá cây: Dùng để đánh giá độ chính xác của cây kết quả Tiêu chí đánh giá là tổng số mẫu được phân lớp chính xác trên tổng số mẫu đưa vào
1.2.5.3 Rút ra các luật từ cây quyết định
Có thể chuyển đổi qua lại giữa mô hình cây quyết định và mô hình dạng luật (IF …THEN…) Hai mô hình này là tương đương nhau
Hình 1.4 Cây quyết định phân lớp mức lương
Trang 24Ví dụ từ cây hình 1.4, ta có thể rút ra được các luật sau:
IF (Age <= 35) AND (salary<=40) THEN class = bad
IF (Age<=35) AND (salary>40) THEN class = good
IF (Age>35) AND (salary <=50) THEN class = bad
IF (Age > 35) AND(salary>50) THEN class = good
1.2.5.4 Các thuật toán khai phá dữ liệu bằng cây quyết định
a) Thuật toán CLS:
Thuật toán này được Hovland và Hint giới thiệu trong Concept Learning System (CLS) vào những năm 50 của thế kỷ 20 Sau đó gọi tắt là thuật toán CLS Thuật toán CLS được thiết kế theo chiến lược chia để trị từ trên xuống Nó gồm các bước sau:
B1 Tạo một nút T, nút này gồm tất cả các mẫu của tập huấn luyện
B2 Nếu tất cả các mẫu trong T có thuộc tính quyết định mang giá trị "yes" (hay thuộc cùng một lớp), thì gán nhãn cho nút T là "yes" và dừng lại T lúc này là nút lá
B3 Nếu tất cả các mẫu trong T có thuộc tính quyết định mang giá trị "no" (hay thuộc cùng một lớp), thì gán nhãn cho nút T là "no" và dừng lại T lúc này là nút lá
B4 Trường hợp ngược lại các mẫu của tập huấn luyện thuộc cả hai lớp "yes"
+ Tạo n nút con Ti (i=1,2 n) với nút cha là nút T
+ Tạo các nhánh nối từ nút T đến các nút Ti (i=1,2 n) là các thuộc tính của
X
B5 Thực hiện lặp cho các nút con Ti(i =1,2 n) và quay lại B2
Ta nhận thấy trong bước 4 của thuật toán, thuộc tính được chọn để triển khai cây là tuỳ ý Do vậy cùng với một tập mẫu dữ liệu huấn luyện nếu áp dụng thuật toán CLS với thứ tự chọn thuộc tính triển khai cây khác nhau, sẽ cho ra các cây có hình dạng khác nhau Việc lựa chọn thuộc tính sẽ ảnh hưởng tới độ rộng, độ sâu, độ phức tạp của cây Vì vậy một câu hỏi đặt ra là thứ tự thuộc tính nào được chọn để triển khai cây sẽ là tốt nhất Vấn đề này sẽ được giải quyết trong thuật toán ID3 dưới đây
Trang 25b) Thuật toán ID3:
Thuật toán ID3 được phát biểu bởi Quinlan (trường đại học Syney, Australia) và được công bố vào cuối thập niên 70 của thế kỷ 20 Sau đó, thuật toán ID3 được giới thiệu và trình bày trong mục Induction on decision trees, machine learning năm 1986 ID3 được xem như là một cải tiến của CLS với khả năng lựa chọn thuộc tính tốt nhất để tiếp tục triển khai cây tại mỗi bước ID3 xây dựng cây quyết định từ trên- xuống (top -down)
Nhiệm vụ của giải thuật ID3 là học cây quyết định từ một tập các ví dụ huấn luyện (training example) hay còn gọi là dữ liệu huấn luyện (training data) Hay nói khác hơn, giải thuật có:
- Đầu vào: Một tập hợp các ví dụ Mỗi ví dụ bao gồm các thuộc tính mô tả một tình huống, hay một đối tượng nào đó, và một giá trị phân loại của nó
- Đầu ra: Cây quyết định có khả năng phân loại đúng đắn các ví dụ trong tập
dữ liệu huấn luyện, và hy vọng là phân loại đúng cho cả các ví dụ chưa gặp trong tương lai
ID3 xây dựng cây quyết định theo cách từ trên xuống Lưu ý rằng đối với bất
kỳ thuộc tính nào, chúng ta cũng có thể phân vùng tập hợp các ví dụ rèn luyện thành những tập con tách rời, mà ở đó mọi ví dụ trong một phân vùng (partition) có một giá trị chung cho thuộc tính đó ID3 chọn một thuộc tính để kiểm tra tại nút hiện tại của cây và dùng trắc nghiệm này để phân vùng tập hợp các ví dụ; thuật toán khi đó xây dựng theo cách đệ quy một cây con cho từng phân vùng Việc này tiếp tục cho đến khi mọi thành viên của phân vùng đều nằm trong cùng một lớp; lớp đó trở thành nút lá của cây
Tuy nhiên, thuật toán ID3 không có khả năng xử lý đối với những dữ liệu có chứa thuộc tính số - thuộc tính liên tục (numeric attribute) và khó khăn trong việc
xử lý các dữ liệu thiếu (missing data) và dữ liệu nhiễu (noisy data) Vấn đề này sẽ được giải quyết trong thuật toán C4.5 sau đây
c) Thuật toán C4.5
Thuật toán C4.5 được phát triển và công bố bởi Quinlan vào năm 1996 Thuật toán C4.5 là một thuật toán được cải tiến từ thuật toán ID3 với việc cho phép xử lý trên tập dữ liệu có các thuộc tính số (numeric atributes) và và làm việc được với tập dữ liệu bị thiếu và bị nhiễu Nó thực hiện phân lớp tập mẫu dữ liệu theo chiến lược ưu tiên theo chiều sâu (Depth - First)
Giải thuật C4.5 là một giải thuật học đơn giản nhưng tỏ ra thành công trong nhiều lĩnh vực C4.5 là một thuật toán hay vì cách biểu diễn tri thức học được của
nó, tiếp cận của nó trong việc quản lý tính phức tạp, kinh nghiệm của nó dùng cho
Trang 26việc chọn lựa các khái niệm ứng viên, và tiềm năng của nĩ đối với việc xử lý dữ liệu nhiễu
Thuật tốn C4.5 biểu diễn các khái niệm (concept) ở dạng các cây quyết định (decision tree) Biểu diễn này cho phép chúng ta xác định phân loại của một đối tượng bằng cách kiểm tra các giá trị của nĩ trên một số thuộc tính nào đĩ
1.3 Giới thiệu cơng cụ xây dựng mơ hình khai phá dữ liệu Business Intelligence Development Studio (BIDS) của Microsoft
BIDS là cơng cụ cho phép tổ chức quản lý và khai thác kho dữ liệu (Xử lý phân tích trực tuyến) cũng như xây dựng các mơ hình khai phá dữ liệu rất dễ sử dụng và hiệu quả của Microsoft
BIDS cho phép triển khai các mơ hình khai phá dữ liệu sau:
- Micorosft Decision Tree (Cây quyết định)
- Microsoft Clustering (Phân cụm)
- Micorosoft Naive Bayes (Phân lớp với Bayes Rules)
- Micorosoft Time Series (Chuỗi thời gian)
- Micorosoft Association (Luật kết hợp)
- Micorsoft Sequence Clustering (Phân tích chuỗi)
- Microsoft Neural Network (Mạng Neural)
- Micorsoft Linear Regression (Hồi qui tuyến tính)
- Micorsoft Logistics Regression (Hồi qui logistics)
Qui trình Xây dựng mơ hình khai phá dữ liệu với BIDS như sau:
Tạo mới 1 project (Analysis Services Project)
Tạo một Data Source
Tạo một Data Source View
Tạo một Mining model structure
Tạo các Mining models
Khai thác Mining models
Kiểm tra độ chính xác của Mining Models
Sử dụng Mining Models để dự đốn
1.4 Giới thiệu phương pháp phân lớp Nạve Bayes
1.4.1 Vận dụng các phương pháp tốn học để phân lớp dữ liệu
* Khái niệm về phân lớp:
- Phân lớp dữ liệu cĩ thể coi là quá trình học một mơ hình mà mơ hình này dùng để mơ tả các lớp dữ liệu khác nhau Các lớp dữ liệu ở đây đã được xác định trước
- Khác với phân cụm dữ liệu, phân lớp dữ liệu được xem là một quá trình
“học cĩ giám sát” Sau khi được xây dựng, mơ hình phân lớp cĩ thể được sử dụng
để phân lớp các dữ liệu mới
Trang 27- Mỗi bản ghi trong tập dữ liệu học cĩ một thuộc tính gọi là nhãn lớp (Class lable) để chỉ ra bản ghi đĩ thuộc lớp nào
Tiến trình xử lý nhằm xếp các mẫu dữ liệu hay các đối tượng vào một trong các lớp đã được định nghĩa trước Phân lớp là kỹ thuật phổ biến nhất của học máy
và khai phá dữ liệu
* Các bước chính để giải quyết bài tốn phân lớp:
Bước 1: Học (Training) Xây dựng mơ hình phân lớp
Bước 2: Phân lớp (classification) Bước này sử dụng mơ hình phân lớp đã được xây dựng ở bước 1 để kiểm tra, đánh giá và thực hiện phân lớp
* Các kỹ thuật phân lớp:
- Phương pháp dựa trên cây quyết định
- Phương pháp dựa trên luật
- Phương pháp Nạve Bayes
- Xác suất này được kí hiệu là P(A\B)
- Đọc là “xác suất của A nếu cĩ B”
Theo định lý Bayes, xác suất xảy ra A khi biết B sẽ phụ thuộc vào 3 yếu tố:
Xác suất xảy ra A của riêng nĩ, khơng quan tâm đến B Ký hiệu là P(A) và đọc
là xác suất của A Đây được gọi là xác suất biên duyên hay xác suất tiên nghiệm, nĩ là "tiên nghiệm" theo nghĩa rằng nĩ khơng quan tâm đến bất kỳ
thơng tin nào về B
Xác suất xảy ra B của riêng nĩ, khơng quan tâm đến A Ký hiệu là P(B) và đọc
là "xác suất của B" Đại lượng này cịn gọi là hằng số chuẩn hĩa (normalising constant), vì nĩ luơn giống nhau, khơng phụ thuộc vào sự kiện A đang muốn
Trang 28𝑷(𝑨|𝑩) =𝑷(𝑩|𝑨)𝑷(𝑨)
𝑷(𝑩)
Từ đĩ dẫn tới:
1.4.3 Thuật tốn Nạve Bayes
1.4.3.1 Mơ hình phân lớp Nạve Bayes
- Mỗi mẫu được biểu diễn bằng X= (x1, x2, …, xn) với các thuộc tính a1, a2,
…, an
- Các lớp {C1, C2, …, Cm} cho trước mẫu Phân lớp Nạve Bayes gán X vào
Ci nếu P(X|Ci) với 1≤j≤M, j≠I (theo định lý Bayes)
- Để phân lớp mẫu chưa biết X, ta tính P(X|Ci)P(Ci) cho từng Ci Phân lớp Nạve Bayes gán X vào Ci sao cho P(X|Ci)P(Ci) là lớn nhất
1.4.3.2 Thuật tốn Nạve Bayes
Áp dụng trong bài tốn phân loại, các dữ kiện gồm cĩ:
- D: tập dữ liệu huấn luyện đã được vectơ hĩa x= (𝑥1, 𝑥2,…, 𝑥𝑛)
- Ci: phân lớp i, với i = {1, 2, …, m}
- Các thuộc tính độc lập điều kiện đơi một với nhau
Theo định lý Bayes: P(Ci|X)=P(X|Ci)P(Ci)
1.4.3.3 Các bước thực hiện thuật tốn phân lớp Nạve Bayes
- Bước 1: Huấn luyện Nạve Bayes (dựa vào tập dữ liệu), tính P(Ci) và P(Xk|Ci)
- Bước 2: Phân lớp Xnew= (x1, x2, …, xn) Xnew ta cần tính xác suất thuộc từng phân lớp khi đã biết trước Xnew Xnew được gán vào lớp cĩ xác suất lớn nhất
Trang 291.4.3.4 Mở rộng định lý Nạve Bayes
Ở trên ta cĩ thể thấy xác suất sảy ra của giả thuyết A phụ thuộc và xác suất của giả thuyết B, nhưng trong thực tế xác suất A cĩ thể phụ thuộc vào xác suất của nhiều các giác thuyết khác cĩ thể là B1, B2, B3 … Bn Vậy định lý Bayes cĩ thể được mở rộng bằng cơng thức sau:
Bảng 1.1 Số lượng trái cây theo đặc điểm
Bây giờ bài tồn đặt ra là tính ra tỷ lệ một quả chuối cĩ thuộc tính là “màu vàng, dài, và ngọt” với tỷ lệ quả cam và các loại hoa quả khác cĩ cũng cĩ thuộc tính
là “màu vàng, dài, và ngọt”
Áp dụng định lý Bayes ta sẽ cĩ 3 cơng thức tính cho 3 loại trái cây như sau:
- Tỷ lệ quả chuối với thuộc tính “màu vàng, dài và ngọt”
P Banana Long Sweet Yellow
Trang 30P(Yellow) = 800/1000= 0.8
P(Banana|Long,Sweet,Yellow) = (0.8 * 0.7 * 0.9 * 0.5) / (0.5 * 0.65 * 0.8) = 0.97 Tức là tỷ lệ chuối với thuộc tính “màu vàng, dài và ngọt” là 97%
- Tương tự ta cũng có thể tính ra tỷ lệ quả cam với thuộc tính “màu vàng, dài
và ngọt” với công thức sau:
Do tỷ lệ P(Long|Orange) = 0/500 = 0 cho nên P(Orange|Long, Sweet, Yellow)
= 0 tức là tỷ lệ quả cam với thuộc tính “màu vàng, dài và ngọt” là 0%
- Cũng thế ta dùng công thức Bayes để tính các trái cây còn lại với thuộc tính “màu vàng, dài và ngọt” với công thức sau:
Vậy suy ra với trái cây với ba thuộc tính là “màu vàng, dài và ngọt” thì có khả năng cao nhất đó là quả chuối
Chúng ta có thể ứng dụng Naive Bayes Classification để tính tỷ lệ xác suất với rất nhiều các dạng bài toán khác nhau, với dữ liệu càng nhiều thì độ chính xác của
thuật toán sẽ càng cao, và khi dữ liệu thay đổi thì kết quả cũng thay đổi theo
P Orange Long Sweet Yellow
P OtherFruit Long Sweet Yellow
Trang 31CHƯƠNG 2 GIẢI PHÁP HỆ TƯ VẤN HỖ TRỢ CHỌN BAN
Trong những năm gần đây sự phát triển của công nghệ thông tin trong nền giáo dục, đã đem lại nhiều lợi ích to lớn cho nền giáo dục toàn cầu Thông qua ứng dụng công nghệ thông tin trong công tác dạy và học, nền giáo dục đã mới rất nhanh chóng và đạt được nhiều kết quả khả quan
Hưởng ứng với sự phát triển đó, tôi đã mạnh dạn tạo một hệ thống hỗ trợ tư vấn chọn ban cho ngôi trường tôi đang công tác, trường THPT Võ Văn Kiệt – thị trấn Vũng Liêm – tỉnh Vĩnh Long Để hình thành được hệ thống tư vấn tôi có các giải pháp hệ tư vấn hỗ trợ chọn ban như sau:
2.1 Giới thiệu về công tác tư vấn và chọn ban tại trường THPT Võ Văn Kiệt
Trường trung học phổ thông (THPT) Võ Văn Kiệt – thị trấn Vũng Liêm – tỉnh Vĩnh Long được thành lập năm 2008 Trường có nhiệm vụ tuyển sinh vào lớp
10, được phụ trách giảng dạy khối 10, 11, 12
Mỗi năm cứ vào khoảng tháng 5, trường THPT Võ Văn Kiệt thông báo đến các em học sinh khối 10 và 11 về việc chọn ban cho năm học tiếp theo, còn các em học sinh lớp 9 thì sẽ thực hiện công việc này sau khi đậu kỳ thi tuyển sinh vào trường
Học sinh tự chọn ban mà ít được tư vấn trước, nên một số là chọn không đúng, dẫn đến việc đang học thì chuyển ban, nhiều trường hợp chuyển ban trễ (đã học một vài tháng), vì thế không thể giải quyết được cho các em Cho nên học lực của các em này chưa đạt kết quả tốt
Cho đến hiện tại thì trường chưa mở được buổi tư vấn nào cho học sinh, đa phần là các em học sinh sẽ tự đi hỏi người thân, giáo viên và bạn bè nếu có thắc mắc
Các học sinh hầu hết không được tư vấn trước khi chọn ban, một số ít được cha mẹ, người thân khuyên học ban mà họ cho là đúng, và rất nhiều học sinh là chọn theo bạn bè, một số khác thì trực tiếp tìm thầy cô để trả lời các câu hỏi mà các
em thắc mắc
Gần đây, trường có website, nhưng website chỉ đăng nội dung về kết quả học tập, một số kế hoạch của trường, của tổ bộ môn, hình ảnh hoạt động của trường, … chưa có hệ thống tư vấn nào giúp học sinh lựa chọn ban học
Đây là hệ thống tư vấn chọn ban đầu tiên của trường, học sinh sẽ được tư vấn trên website của trường Hệ thống sẽ hỗ trợ phần nào đến việc lo lắng, đắn đo của các em học sinh trước thềm năm học mới