Từ nguồn dữ liệu tuyển sinh được lưu trữ từ nhiều năm của phòng Giáo dục Trung học - Sở Giáo dục Đào tạo Hải Phòng, từcác kiến thức đã được học từ môn khai phá dữ liệu, tác giả mong muốn
Trang 1BỘ GIAO THÔNG VẬN TẢI BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
Trang 2TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
LUẬN VĂN THẠC SĨ KỸ THUẬT; MÃ SỐ: 60580202
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
Người hướng dẫn khoa học: TS Nguyễn Trọng Đức
HẢI PHÒNG - 2016
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của riêng cá nhân tôi, không sao chép lại của người khác Trong toàn bộ nội dung luận văn, những điều đã được trình bày hoặc là của riêng cá nhân tôi hoặc là được tổng hợp
từ nhiều nguồn tài liệu Tất cả các nguồn tài liệu tham khảo được dùng đều có xuất
Trang 4LỜI CÁM ƠN
Trước tiên tôi trân trọng gửi lời cảm ơn tới TS Nguyễn Trọng Đức - người
đã hướng dẫn, chỉ bảo tận tình, cung cấp tài liệu và phương pháp luận nghiên cứu khoa học để tôi hoàn thành bản luận văn này
Tôi xin bày tỏ lòng cảm ơn sâu sắc tới thầy cô, bạn bè cùng lớp đã giúp đỡ tôi trong suốt những năm học qua
Xin cảm ơn gia đình, bạn bè, anh em đồng nghiệp trong cơ quan, những
người luôn khuyến khích, động viên và giúp đỡ tôi trong mọi hoàn cảnh khó khăn Xin cảm ơn Phòng Giáo dục Trung học của Sở Giáo dục và Đào tạo Hải
Phòng, nơi đã cung cấp cho tôi những nguồn dữ liệu quý báu
Tôi xin cảm ơn các thầy cô trong trường Đại học Hàng Hải Việt Nam đã hết sức tạo điều kiện cho tôi trong quá trình học và làm luận văn này
Luận văn được hoàn thành trong thời gian hạn hẹp nên không thể tránh được những thiếu sót Tôi xin cảm ơn thầy cô, bạn bè, đồng nghiệp đã có những ý kiến đóng góp chân thành cho nội dung của luận văn, để tôi có thể tiếp tục đi sâu tìm hiểu về lĩnh vực này trong tương lai
Hải Phòng, 03/2016
Cao Chiến Thắng
Trang 5MỤC LỤC
Trang
LỜI CAM ĐOAN i
LỜI CÁM ƠN ii
DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU v
DANH MỤC CÁC HÌNH MINH HỌA vi
DANH MỤC CÁC BẢNG vii
MỞ ĐẦU 1
Chương 1: TỔNG QUAN 5
1.1 Tổng quan về bài toán tuyển sinh trung học phổ thông 5
1.1.1 Đối tượng và phương thức tuyển sinh 5
1.1.2 Hồ sơ tuyển sinh 5
1.1.3 Tuyển thẳng, chế độ ưu tiên, khuyến khích 5
1.2 Công tác tuyển sinh vào lớp 10 của thành phố Hải Phòng 7
1.2.1 Đặc điểm 7
1.2.2 Thi tuyển và xét tuyển 7
1.3 Khai phá dữ liệu 12
1.3.1 Định nghĩa khai phá dữ liệu 12
1.3.2 Nhiệm vụ chính trong khai phá dữ liệu 13
1.3.3 Các phương pháp khai phá dữ liệu 15
1.4 Cây quyết định 18
1.4.1 Khái niệm 18
1.4.2 Ưu điểm và nhược điểm của cây quyết định 19
1.4.3 Xây dựng cây quyết định 20
1.5 Kết luận chương 1 24
Chương 2: HỆ HỖ TRỢ RA QUYẾT ĐỊNH CHỌN TRƯỜNG ĐĂNG KÝ DỰ THI VÀO LỚP 10 25
2.1 Hệ hỗ trợ ra quyết định 25
2.1.1 Decision Support Systems (DSS) 25
2.1.2 Quy trình ra quyết định 25
2.1.3 Phân loại DSS 25
Trang 62.2 Thuật toán C4.5 27
2.2.1 Lịch sử phát triển 27
2.2.2 Mã giả của thuật toán C4.5 28
2.2.3 Độ đo để lựa chọn thuộc tính “tốt nhất”:information gain và gain ratio 29
2.2.4 Xử lý “quá vừa” dữ liệu 30
2.2.5 Xử lý những giá trị thiếu 31
2.2.6 Chuyển đổi sang luật 31
2.2.7 Ứng dụng vào bài toán phân lớp dữ liệu 32
2.3 Sử dụng phần mềm Weka với việc tạo luật trong cơ sở dữ liệu 33
2.3.1 Giới thiệu 33
2.3.2 Môi trường chính 33
2.4 Các bước thực hiện bài toán 34
2.4.1 Thu gom dữ liệu 34
2.4.2 Trích lọc dữ liệu 34
2.4.3 Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu 35
2.4.4 Rời rạc hóa dữ liệu 35
2.4.5 Tạo cây quyết định 40
2.4.6 Luật được sinh ra từ cây quyết định 42
2.5 Kết luận chương 2 44
Chương 3: CÀI ĐẶT - THỬ NGHIỆM 45
3.1 Mô hình bài toán 45
3.2 Dữ liệu thử nghiệm 45
3.3 Lựa chọn công nghệ 47
3.4 Chương trình DEMO 49
3.4.1.Giao diện tư vấn vào 10 49
3.4.2 Modul Suy diễn 51
3.4.3 Giao diện kiểm thử dữ liệu 51
3.4.4 Một số kết quả đạt được 55
KẾT LUẬN VÀ KIẾN NGHỊ 57
TÀI LIỆU THAM KHẢO 58
Trang 7DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU
Trang 8DANH MỤC CÁC HÌNH MINH HỌA
Hình 1.1: Các bước của quá trình khai phá dữ liệu 12
Hình 2.1: Giao diện khởi đầu của WEKA 3.6.9 34
Hình 2.2: Kết quả thi tuyển sinh vào lớp 10 năm học
Hình 2.4: Một số thuộc tính có dữ liệu kiểu liên tục 36
Hình 2.5: Các thuộc tính sau khi đã được rời rạc 38
Hình 2.7: Cây quyết định theo tổng điểm thi 43
Hình 2.8 Cây quyết đinh theo tổng điểm thi và nhóm
điểm
45
Hình 3.1 Thứ tự các bước giải quyết bài toán 47
Hình 3.3 Các mẫu luật được lưu trong CSDL 50
Hình 3.4 Các luật được tạo bởi phần mềm Weka 51
Hình 3.5 Giao diện chính chương trình 52
Hình 3.8 Thống kê theo trường THCS 59
Hình 3.9 Thống kê theo trường THPT 59
Trang 9Bảng 1.2 Thống kê điểm chuẩn của các trường THPT quốc
lập thuộc các quận nội thành Hải Phòng các năm
2011-2015
11
Bảng 2.1 Kết quả phân lớp bằng cây quyết định 45
Bảng 3.1 Các thuộc tính chương trình tuyển sinh 48
Bảng 3.2 Mô tả các trường lưu trữ mẫu luật trong CSDL 50
Trang 10MỞ ĐẦU
"We are drowning in Data but starved for knowledge."
(Chúng ta đang chết chìm trong dữ liệu nhưng lại chết đói về tri thức)
John Naisbitt
Chúng ta đều biết công nghệ thông tin nói chung và tin học hóa các lĩnh vực kinh
tế, xã hội nói riêng đã đem lại những thành công đáng kể, đóng góp vào sự phát triển của toàn nhân loại Đồng thời với việc tin học hóa, việc lưu trữ thông tin của các lĩnh vực kể trên đã phát triển một cách nhanh chóng
Tuy nhiên, việc lưu trữ một cách ồ ạt với rất nhiều thông tin, trong đó có nhiều thông tin có thể bị trùng lặp đó cũng gây ra những khó khăn, đó là từ nguồn dữ liệu mênh mông bao la đó làm thế nào để khai thác thành những tri thức có ích, có giá trị
Chính vì vậy một lĩnh vực mới ra đời, nó sử dụng các kỹ thuật để dữ liệu mà ta đã lưu trữ được sẽ được chuyển đổi thành tri thức có ích Đó chính là lĩnh vực khai phá dữ liệu
Mô tả quá trình phát hiện ra tri thức trong CSDL chính là nhiệm vụ của khai phá
dữ liệu Các tri thức tiềm ẩn từ dữ liệu sẽ kết xuất ra từ quá trình nàygiúp cho việc
dự báo trong kinh doanh, các lĩnh vực sản xuất So với phương pháp truyền thống trước kia,khai phá dữ liệu giúp giảm chi phí về thời gian (ví dụ như phương pháp thống kê)
Phát hiện tri thức và khai phá dữ liệu liên quan đến nhiều lĩnh vựcnhiều ngành, như thống kê, cơ sở dữ liệu, trí tuệ nhân tạo nâng cao, thuật toán, tính toán song song
và tốc độ cao, thu thập tri thức cho các hệ chuyên gia Đặc biệt phát hiện tri thức
và khai phá dữ liệu rất gần gũi với lĩnh vực thống kê, dùng các phương pháp thống
kê để mô hình dữ liệu và phát hiện các mẫu, luật
Lĩnh vực giáo dục cũng được các chuyên gia khai phá dữ liệu đặc biệt quan tâm Mọi người đều biết giáo dục là nhân tố quyết định sự phát triển của một quốc gia
Trang 11về nhiều mặt Một đất nước có phát triển bền vững hay không phụ thuộc vào việc định hướng, hoạch định chính sách cho thế hệ trẻ
Học và thi là hai mặt của một quá trình trong giáo dục Học là quá trình tích lũy, trau dồi kiến thức Thi là để đánh giá quá trình học của người học
Trong cuộc đời, mỗi người đều trải qua nhiều kỳ thi Đặc biệt là học sinh, sinh viên thì việc thi càng xảy ra thường xuyên: Thi giữa kỳ, thi cuối năm, thi lên lớp, thi hết cấp, thi chuyển cấp…
Kỳ thi nào cũng quan trọng, nhưng đã có thi thì có đỗ và có trượt Không ai muốn mình trượt thi dù đó là kỳ thi nào Vậy nên kỳ thi tuyển vào lớp 10 đối với học sinh phổ thông là cực kỳ quan trọng Nó quan trọng ở chỗ mỗi năm số lượng thí sinh được tuyển vào trường THPT quốc lập ở thành phố hải Phòng chiếm khoảng 70%, trong số nhiều trường THPT thì có số ít trường thuộc tốp trên, một số trường thuộc
tố giữa và một số thuộc tốp cuối Nếu các em thi được vào một trường thuộc tốp trên thì cánh cửa vào trường đại học của các em đã được mở ra Vì vậy lựa chọn để đăng ký thi vào một trường THPT phù hợp với khả năng của bản thân là một vấn
đề rất quan trọng không chỉ với học sinh mà ngay cả với các bậc phụ huynh
Trong thực tế có nhiều học sinh có học lực trung bình nhưng lựa chọn trường phù hợp nên đã thi đỗ vào trường quốc lập, trong khi có những học sinh có học lực khá nhưng chọn trường quá cao hoặc quá thấp thì đạt những kết quả không mong muốn
Thành phố Hải Phòng có 7 quận và 8 huyện Trong đó 7 quận nội thành với 13 trường THPT quốc lập, có một số trường THPT nằm trong tốp 100 các trường THPT trên cả nước Kết quả này được đánh giá bằng tỷ lệ học sinh đỗ vào đại học, cao đẳng hàng năm của mỗi trường
Việc tư vấn cho học sinh đăng ký dự thi vào một trường THPT phù hợp với trình
độ của các em chưa được các trường THPT quan tâm Chủ yếu các em được các thầy cô ở trường THCS định hướng và tư vấn giúp bằng cảm tính và bằng kinh nghiệm, điều này làm nhiều bậc phụ huynh không thực sự yên tâm
Trang 12Bản thân tác giả làm trong ngành giáo dục, nhiều năm tham gia công tác tuyển sinh vào lớp 10,đồng thời cũng từng là một phụ huynh có con đã thi vào lớp 10 nên rất chia sẻ với những lo lắng của các phụ huynh
Từ nguồn dữ liệu tuyển sinh được lưu trữ từ nhiều năm của phòng Giáo dục Trung học - Sở Giáo dục Đào tạo Hải Phòng, từcác kiến thức đã được học từ môn khai phá dữ liệu, tác giả mong muốn xây dựngmột chương trình hỗ trợ học sinh cũng như phụ huynh học sinh có thể căn cứ để đăng ký nguyện vọng vào một trường THPT mà khả năng đỗ cao nhất
Đó là lý do chọn đề tài: “Xây dựng hỗ trợ tuyển sinh cho các trường THPT trên địa bàn nội thành Hải Phòng”
BỐ CỤC CỦA LUẬN VĂN
Ngoài các phần mở đầu, mục lục, danh mục hình, kết luận, tài liệu tham khảo Luận Văn được chia làm 3 chương:
hiện bài toán “Xây dựng hỗ trợ tuyển sinh cho các trường THPT trên địa bàn nội thành Hải Phòng”
Chương 3: CÀI ĐẶT-THỬ NGHIỆM
Trang 13Trong chương này tác giả trình bày các nội dung:Mô hình chung bài toán, các thao tác biến đổi dữ liệu, quá trình tạo luật trong phần mềm Weka, các thao tác trên giao diện của chương trình hỗ trợ tư vấn tuyển sinh và kết quả thử nghiệm
Trang 14Chương 1: TỔNG QUAN 1.1.Tổng quan về bài toán tuyển sinh trung học phổ thông
1.1.1 Đối tượng và phương thức tuyển sinh
Đối tượng tuyển sinh là người có độ tuổi theo quy địnhvà đã tốt nghiệp trung học cơ sở chương trình giáo dục phổ thông hoặc chương trình giáo dục thường xuyên
Một trong ba phương thức sau được áp dụngđể tuyển sinh trung học phổ thông:
- Xét tuyển: dựa trên kết quả học tập rèn luyện, của 4 năm học ở trung học
cơ sở của đối tượng tuyển sinh, nếu lưu ban lớp nào thì lấy kết quả năm học lại của lớp đó;
- Thi tuyển;
- Kết hợp thi tuyển với xét tuyển
1.1.2 Hồ sơ tuyển sinh
Hồ sơ tuyển sinh gồm
1 Bản sao giấy khai sinh có công chứng
2 Bằng tốt nghiệp trung học cơ sở hoặc bản sao bằng tốt nghiệp trung học cơ sở có công chứng hoặc giấy chứng nhận tốt nghiệp trung học cơ sở tạm thời
3 Học bạ cấp trung học cơ sở (bản chính)
4 Giấy xác nhận chế độkhuyến khích, ưu tiên do cơ quan có thẩm quyền cấp (nếu có)
5 Giấy xác nhận do ủy ban nhân dân phường, xã, thị trấn cấp (đối với người học
đã tốt nghiệp trung học cơ sở từ những năm học trước) không trong thời gian đang
vi phạm pháp luật hoặc thi hành án phạt tù; cải tạo không giam giữ
1.1.3 Tuyển thẳng, chế độ ưu tiên, khuyến khích
1.1.3.1.Các đối tượng sau đây được tuyển thẳng vào trung học phổ thông
Các đối tượng sau đây được tuyển thẳng vào trung học phổ thông:
Trang 15- Học sinh trường phổ thông dân tộc nội trú;
- Học sinh là người dân tộcthiểu số;
- Học sinh khuyết tật;
- Học sinh đạt giải từ cấp quốc gia trở lên về văn hóa; thể dục thể thao;văn nghệ; hoặc cuộc thi khoa học kĩ thuật dành cho học sinh trung học
1.1.3.2 Đối tượng được cộng điểm ưu tiên
Từng loại đối tượng được hưởng chế độ ưu tiên được Sở giáo dục và đào tạo quy định điểm cộng thêm như sau:
a) Nhóm đối tượng 1:
- Là con của liệt sĩ;
- Là con của thương binh mất sức lao động 81% trở lên;
- Là con của bệnh binh mất sức lao động 81% trở lên;
- Là con của người được cấp “Giấy chứng nhận người hưởng chính sách như thương binh mà người được cấp Giấy chứng nhận người hưởng chính sách như thương binh bị suy giảm khả năng lao động 81% trở lên”
b) Nhóm đối tượng 2:
- Là con của Anh hùng lao động, con của Anh hùng lực lượng vũ trang, con của Bà
mẹ Việt Nam anh hùng;
- Là con của thương binh mất sức lao động dưới 81%;
- Là con của bệnh binh mất sức lao động dưới 81%;
- Là con của người được cấp “Giấy chứng nhận người hưởng chính sách như thương binh mà người được cấp Giấy chứng nhận người hưởng chính sách như thương binh bị suy giảm khả năng lao động dưới 81%”
c) Nhóm đối tượng 3:
- Người có cha hoặc mẹ là người dân tộc ít người;
- Người dân tộc ít người;
Trang 16- Người học đang học tập,sinh sống ở các vùng có điều kiện kinh tế - xã hội đặc biệt khó khăn
1.1.3.3 Đối tượng được cộng điểm khuyến khích
Đối tượng và điểm cộng thêm cho từng loại đối tượng được hưởng chế độ khuyến khích được Sở giáo dục và đào tạo quy định chi tiết
1.2 Công tác tuyển sinh vào lớp 10 của thành phố Hải Phòng
1.2.1 Đặc điểm
Mỗi năm thành phố Hải Phòng có khoảng 18.000 học sinh dự thi vào lớp 10 Tổng
số chỉ tiêu dành cho các trường quốc lập trung bình khoảng 70%, còn lại khoảng 30% dành cho khối trường dân lập và các trung tâm giáo dục thường xuyên Như vậy mỗi năm có khoảng 13.000 học sinh đỗ vào các trường quốc lập và khoảng 5.000 học sinh vào trường dân lập
Thành phố Hải Phòng hiện có 40 trường THPT hệ quốc lập (39 trường THPT và
01 Trường THPT chuyên Trần Phú)
Trong số 39 trường THPT này2 trường THPT Cát Bà, Cát Hải thực hiện xét tuyển kết quả học tập, rèn luyện của 4 năm học ở bậc THCS của học sinh, 37 trường THPT thực hiện phương thức vừa thi tuyển, vừa xét tuyển Riêng trường THPT chuyên Trần Phú thi tuyển riêng
Bài toán Xây dựng hỗ trợ tuyển sinh cho các trường THPT trên địa bàn nội thành Hải Phòngtập trung vào đối tượng vừa thi tuyển vừa xét tuyển, vì vậy các thông tin
không liên quan sẽ không được trình bày trong luận văn
1.2.2 Thi tuyển và xét tuyển
Thành phố Hải Phòng có 37 trường THPT thuộc quốc lập sẽ vừa tổ chức thi tuyển, vừa kết hợp xét tuyển: Kết quả điểm thi 2 môn Toán, Ngữ Văn trong kì thi vào lớp
10 THPT quốc lập (không môn nào bị điểm 1 trở xuống) và xét kết quả học tập, rèn luyện của 4 năm học THCS và các điểm ưu tiên, khuyến khích (nếu có)
Trang 171.2.2.1 Xét tuyển
Mỗi học sinh sẽ có 4 tiêu chuẩn xét tuyển: Điểm học tập và rèn luyện, điểm thi nghề, điểm ưu tiên, điểm khuyến khích
Bảng 1.1: Điểm cộngứngvới kết quả học tập và rèn luyện các năm lớp 6,7,8,9
Học sinh có: Hạnh kiểm tốt, học lực giỏi 5.0 điểm Học sinh có: Hạnh kiểm khá, học lực giỏi hoặc hạnh kiểm tốt,
3) Điểm ưu tiên:
- Là con của liệt sĩ;
- Là con của thương binh mất sức lao động 81% trở lên;
- Là con của bệnh binh mất sức lao động 81% trở lên;
- Là con của người được cấp “Giấy chứng nhận người được
hưởng chính sách như thương binh mà người được cấp Giấy
chứng nhận người hưởng chính sách giống như thương binh bị
suy giảm khả năng lao động 81% trở lên”
3.0 điểm
Trang 18- Là con của Anh hùng lao động, con của Anh hùng lực lượng
vũ trang, con của Bà mẹ Việt Nam anh hùng;
- Là con của thương binh mất sức lao động dưới 81%;
- Là con của bệnh binh mất sức lao động dưới 81%;
- Là con của người được cấp “Giấy chứng nhận người được
hưởng chính sách như thương binh mà người được cấp Giấy
chứng nhận người hưởng chính sách giống như thương binh bị
suy giảm khả năng lao động dưới 81%”
2.0 điểm
4) Điểm khuyến khích:
1.2.2.2 Thi tuyển:
Thi viết 2 môn Ngữ Văn và Toán
Thời gian làm bài 120 phú/môn thi
Điểm của bài thi: Điểm của bài thi được cho theo thang điểm từ 0 đến 10, điểm lẻ đến 0,25
Điểm xét tuyển được tính thao công thức:
Điểm xét tuyển = Điểm HT_RL+Điểm ƯT+Điểm KK+2*(Điểm Văn + Điểm Toán)
Thí sính trúng tuyển phải không có bài thi nào nhỏ hơn 1
Như đã trình bày ở trên, kì thi tuyển sinh vào lớp 10 THPT thành phố Hải Phòng kết hợp cả thi tuyển và xét tuyển Vì bài toán Xây dựng hỗ trợ tuyển sinh cho các
Trang 19trường THPT trên địa bàn nội thành Hải Phòng quan tâm đến đối tượng vừa thi tuyển vừa xét tuyển nên các học sinh thi vào trường THPT chuyên Trần Phú và học sinh thuộc các trường ở ngoại thành không nằm trong phạm vi tư vấn.
Trang 20Bảng 1.2:Thống kê điểm chuẩn của các trường THPT quốc lậpthuộc các quận nội thành Hải Phòng các năm 2011-2015
STT Các trường Nội thành Quận 2011-2012 2012-2013 2013-2014 2014-2015 Điểm TB
Trang 211.3 Khai phá dữ liệu
1.3.1 Định nghĩa khai phá dữ liệu
Khai phá dữ liệu dùng để mô tả quá trình phát hiện ra tri thức trong cơ sở dữ liệu (CSDL) Khai phá dữ liệu khi triển khai làm giảm chi phí thời gian so với cách thức truyền thống trước (phương pháp thống kê)
Quy trình phát hiện tri thức thường tuân theo các bước sau:
Hình 1.1: Các bước của quá trình khai phá dữ liệu
- Bước một: Đây là quá trình tìm hiểu các lĩnh vực của bài toán, từ đó hình thành bài toán và định nghĩa bài toán, việc quan trọng ở bước này là xác định được các nhiệm vụ, yêu cầu của bài toán Ở bước này sẽ quyết định việc rút ra được những tri thức gì từ dữ liệu Tại bước này cũng quyết định lựa chọn phương pháp khai phá dữ liệu sao cho phù hợp với mục đích cũng như nội dung của dữ liệu
- Bước hai: Từ việc xác định được các nhiệm vụ của bài toán từ bước 1, chuyển qua bước thu thập dữ liệu Dữ liệu có thể được lấy từ nhiều nguồn khác nhau, có thể có những thông tin bị trùng lặp, hay những nội dung bị khuyết, thiếu Khi đó việc cần làm trong bước này là đồng bộ các kiểu dữ liệu, rút gọn các những thuộc tính thừa hoặc không cần thiết và bổ sung nhưng thông tin bị khuyết thiếu Nhiệm vụ của bước này là bộ dữ liệu phải được nhất
Trang 22quán, đầy đủ nhưng cũng đòi hỏi phải được rút gọn nhất Thông thường bước này tốn rất nhiều thời gian và công sức trong toàn bộ quá trình khai phá tri thức
- Bước ba: Sau khi có bộ dữ liệu từ bước hai, chuyển qua bước ba là bước rút ra tri thức Nhiệm vụ của bước này là rút ra các mẫu và các mô hình
ẩn dưới các dữ liệu Có thể coi đây là bước quan trọng nhất trong việc khai phá dữ liệu Nó bao gồm các công đoạn như chức năng, nhiệm vụ cũng như mục đích của khai phá dữ liệu Sử dụng phương pháp nào để khai phá dữ liệu cho phù hợp Thông thường một bài toán khai phá dữ liệu có dạng mô tả - đưa
ra những tính chất chung nhất của dữ liệu hoặc dự báo – phát hiện và suy diễn dựa trên các dữ liệu đã có Khi đó việc lựa chọn phương pháp phù hợp sẽ quyết định đến sự thành công của việc khai phá dữ liệu
- Bước bốn: Các tri thức đã nhận được từ bước ba sẽ được làm rõ hơn đối với mỗi dạng mô tả cũng như dự đoán Quá trình làm rõ này có thể trải qua các bước lặp đi lặp lại, khi đó kết quả mà ta thu nhận được là trung bình cộng trong tất cả các lần thực hiện
- Bước năm: Những tri thức đã được tìm thấy ở bước bốn sẽ được sử dụng, tại bước này chính là ứng dụng những kết quả mà khai phá tri thức đem lại Đồng thời cũng giúp ta hiểu rõ hơn, sâu hơn về tri thức mà ta đã tìm được
để tiếp tục làm sáng tỏ các mô tả cũng như các dự đoán
- Kết quả của quá trình phát hiện tri thức được ứng dụng trong các lĩnh vực khác nhau Các kết quả có thể là các dự đoán hoặc các mô tả nên chúng
có thể được đưa vào các hệ thống nhằm hỗ trợ ra quyết định nhằm tự động hoá quá trình
1.3.2 Nhiệm vụ chính trong khai phá dữ liệu
Các nhiệm vụ của quá trình khai phá dữ liêu: : Phân lớp, Hồi qui, Phân nhóm, Tổng hợp, Mô hình hoá sự phụ thuộc và Phát hiện sự biến đổi và độ lệch
- Phân lớp (phân loại - Classification)
Trang 23Dữ liệu sẽ được phân thành các lớp có thể giao nhau hoặc không, nhằm xác định một ánh xạ để ánh xạ các mẫu dữ liệu thỏa mãn ràng buộc nào đó vào cùng một lớp
Quan hệ giữa thuộc tính dự báo và thuộc tính phân lớp chính là mục tiêu của thuật toán phân Quá trình phân lớp có thể sử dụng quan hệ này để dự báo cho các mục mới phía sau Khi đó: “Các thuộc tính dự báo của một mục thoả mãn điều kiện của các tiền đề thì mục nằm trong lớp chỉ ra trong kết luận” - các kiến thức được phát hiện biểu diễn dưới dạng các luật
- Hồi qui (regression)
Nhiệm vụ của hồi quy tương tự như phân lớp, nhưng điểm khác nhau chính
là ở chỗ thuộc tính để dự báo là liên tục chứ không phải rời rạc Dự báo các giá trị
số thường được làm bởi các phương pháp thống kê cổ điển, chẳng hạn như hồi quy tuyến tính Việc dùng một hàm dự báo để từ các mẫu dữ liệu đã có hàm dự báo sẽ cho một giá trị thực Nhưng phương pháp mô hình hoá cũng được sử dụng,
ví dụ: cây quyết định
Ứng dụng của hồi quy: dự báo thời tiết; ước lượng sác xuất người bệnh có thể chết bằng cách kiểm tra các triệu chứng; dự báo nhu cầu của người dùng đối với một sản phẩm;…
- Phân nhóm (clustering)
Việc mô tả chung để tìm ra các tập hay các nhóm, loại mô tả dữ liệu Các nhóm có thể tách nhau hoặc phân cấp hay gối lên nhau Nghĩa là dữ liệu có thể vừa thuộc nhóm này lại vừa thuộc nhóm khác Hầu hết ứng dụng khai phá dữ liệu
có nhiệm vụ phân nhóm cũng như phát hiện các tập có tác động giống nhau trong CSDL: Ví dụ như việc xác định các quang phổ từ hoặc các phương pháp đo tia hồng ngoại, … có liên quan chặt chẽ đến việc phân nhóm đó là nhiệm vụ đánh giá
dữ liệu, hàm mật, độ xác suất đa biến, các trường trong CSDL
- Tổng hợp (summarization)
Trang 24Mô tả công việc liên quan tới phương pháp tìm kiếm một dạng mô tả tập con
dữ liệu Được áp dụng trong việc phân tích dữ liệu mang tính thăm dò và báo cáo
tự động
Tuy nhiên nhiệm vụ chính là sản sinh ra các mô tả đặc trưng cho một lớp
Mô tả loại này là một kiểu tổng hợp và tóm tắt các đặc tính chung của tất cả cũng như hầu hết các mục của một lớp Thể hiện các mô tả đặc trưng theo luật có dạng:
“Một mục thuộc về lớp đã chỉ trong tiền đề thì mục đó có tất cả các thuộc tính đã nêu trong kết luận” Đặc biệt với luật dạng này có các khác biệt so với luật phân lớp Luật phát hiện thể hiện đặc trưng cho lớp chỉ sản sinh khi các mục đã thuộc
về lớp đó
- Mô hình hoá sự phụ thuộc (dependency modeling)
Đây là mô hình mô tả sự phụ thuộc giữa các biến, các thuộc tính theo các mức: + Mức cấu trúc của mô hình mô tả (thường biểu diễn dưới dạng đồ thị) Trong
đó, các biến phụ thuộc bộ phận vào các biến khác
+ Mức định lượng mô hình mô tả mức độ phụ thuộc Phụ thuộc này thường được biểu thị dưới dạng theo luật “nếu - thì” (nếu tiền đề là đúng thì kết luận đúng)
- Phát hiện sự biến đổi và độ lệch (change and deviation dectection)
Ở đây tập trung vào khám phá hầu hết sự điều chỉnh có nghĩa dưới dạng độ
đo đã biết trước hoặc giá trị chuẩn, nếu phát hiện độ lệch đáng kể giữa nội dung của tập con dữ liệu thực và nội dung mong đợi Có hai mô hình độ lệch hay dung: lệch theo thời gian hay lệch theo nhóm
1.3.3 Các phương pháp khai phá dữ liệu
Giải thuật khai phá dữ liệu bao gồm các thành phần cơ bản sau: Biểu diễn
mô hình, kiểm định mô hình và phương pháp tìm kiếm Cụ thể:
+ Biểu diễn mô hình: Việc miêu tả các mẫu có thể khai thác được biểu diễn theo một ngôn ngữ nào đó được gọi là biểu diễn mô hình Nếu mô hình càng rõ
Trang 25ràng thì học máy sẽ tạo ra các mẫu càng chính xác cho dữ liệu Nếu mô hình quá lớn sẽ làm giảm khả năng dự đoán của học máy Việc miêu tả mô hình càng lớn dẫn tới việc học máy bị quá làm giảm khả năng dự đoán các dữ liệu chưa biết Khi đó việc giải thích mô hình trở lên phức tạp hơn và việc tìm kiếm cũng trở thành khó khăn hơn
Ban đầu mô hình được xác định bằng cách kết hợp giữa các biến độc lập với các biến đầu ra, mà biến đầu ra phụ thuộc vào đó Tiếp theođi tìm những tham số
mà bài toán cần tập trung giải quyết Công việc tìm kiếm mô hình sẽ tạo ra được
mô hình phù hợp với tham số xác định dựa trên dữ liệu (đôi khi mô hình hoặc các tham số có thể thay đổi để phù hợp với dữ liệu) Trong một số trường hợp, tập các
dữ liệu được chia thành 2 tập dữ liệu: tập dữ liệu học và tập dữ liệu thử Ban đầu tập dữ liệu học được dùng để làm cho tham số của mô hình phù hợp với dữ liệu Sau đó mô hình sẽ được đánh giá bằng cách sử dụngtập các dữ liệu thử vào mô hình và thay đổi các tham số cho phù hợp nếu cần Mô hình lựa chọn có thể một
số giải thuật học máy (ví dụ như cây quyết định), mạng Nơ_ron, suy diễn hướng tình huống, các kỹ thuật phân lớp
+ Kiểm định mô hình (model evaluation): Là việc đánh giá đồng thời ước lượng các mô hình chi tiết và chuẩn trong quá trình xử lý và phát hiện tri thức với
sự ước lượng có dự báo chính xác hay không, có thoả mãn cơ sở logic hay không + Phương pháp tìm kiếm: Phương pháp này bao gồm hai thành phần: Tìm kiếm tham số và tìm kiếm mô hình Với tìm kiếm tham số, giải thuật cần tìm kiếm các tham số để tối ưu hóa các tiêu chuẩn đánh giá mô hình với các dữ liệu quan sát được và với một mô tả mô hình đã định Tìm kiếm mô hình thực hiện giống như một vòng lặp qua phương pháp tìm kiếm tham số: Mô tả mô hình thay đổi cho ta một họ các mô hình Đối với một mô tả mô hình, phương pháp tìm kiếm tham số được áp dụng để đánh giá chất lượng mô hình
- Phương pháp suy diễn/quy nạp:
Trang 26Mỗi cơ sở dữ liệu là một kho thông tin nhưng kho thông tin đó còn có thể suy diễn ra những thông tin hữu ích hơn Để thực hiện việc này có hai kỹ thuật chính đó là suy diễn và quy nạp
Phương pháp suy diễn: Đây là phương pháp rút ra thông tin là kết quả logic của các thông tin trong nguồn cơ sở dữ liệu Phương pháp suy diễn dựa trên các sự kiện chính xác nhằm suy ra các tri thức mới từ các thông tin có sẵn Mẫu chiết xuất được bằng cách sử dụng phương pháp này thường là các luật suy diễn
Ví dụ như toán tử liên kết áp dụng cho bảng quan hệ, bảng đầu chứa thông tin về các công nhân và phân xưởng, bảng thứ hai chứa các thông tin về các phân xưởng
và các đốc công Như vậy sẽ suy ra được mối quan hệ giữa các công nhân và các đốc công
Phương pháp quy nạp: Phương pháp này cho phépsuy ra các thông tin được sinh ra từ CSDL Các thông tin mà phương pháp này đem lại là lượng thông tin hay tri thức cấp cao diễn tả về các đối tượng trong CSDL Phương pháp này liên quan đến việc tìm kiếm các mẫu trong CSDL Khi đó nó sẽ tự tìm kiếm, tạo mẫu đồng thời sinh ra tri thức, không phải bắt đầu với các tri thức đã biết trước Đối với khai phá dữ liệu, quy nạp được sử dụng trong cây quyết định và tạo luật
- Phương pháp K-láng giềng gần:
Sự miêu tả các bản ghi trong tập dữ liệu khi trỏ vào không gian nhiều chiều
là có ích đối với việc phân tích dữ liệu Đối với việc dùng các miêu tả này, nội dung của vùng lân cận được xác định, trong đó các bản ghi gần nhau trong phạm
vi được xem xét thuộc về lân cận (hàng xóm–láng giềng) của nhau Khái niệm này được dùng trong khoa học kỹ thuật với tên là K -láng giềng gần, trong đó K là
số láng giềng được sử dụng Phương pháp này rất hiệu quả nhưng thực hiện đơn giản
Kỹ thuật K -láng giềng gần tuy là một phương pháp tìm kiếm đơn giản, nhưng nó có một số mặt hạn chế giới là hạn phạm vi ứng dụng của nó, do là thuật toán có độ phức tạp tính toán là luỹ thừa bậc 2 theo số bản ghi của tập dữ liệu
Trang 27Với phương pháp K -láng giềng không đưa ra lý thuyết để hiểu cấu trúc dữ liệu Hạn chế đó có thể được khắc phục bằng kỹ thuật cây quyết định
- Phương pháp sử dụng cây quyết định và luật:
Kết quả của quá trình xây dựng mô hình với kỹ thuật phân lớp dựa trên cây quyết định sẽ cho ra một cây quyết định cụ thể Với cây quyết định này được dùng
để phân lớp các đối tượng dữ liệu chưa biết cũng như việc đánh giá độ chính xác của mô hình Nó tương ứng với hai giai đoạn của quá trình phân lớp là quá trình xây dụng cây quyết định và quá trình sử dụng cây quyết định
Một hạn chế chung cho các bài toán sử dụng cây quyết định là sử dụng nhiều bộ nhớ Kích thước của mẫu dữ liệu huấn luyện càng lớn thì bộ nhớ dùng cho cây quyết định càng nhiều Mặc dù một số chương trình sinh cây quyết định
có hỗ trợ bộ nhớ ngoài xong nó lại liên quan đến thời gian thực hiện Do vậy, việc tỉa bớt cây quyết định là rất quan trọng Đặc biệt các nút lá không ổn định trong cây quyết định sẽ cần được tỉa bớt Kỹ thuật tỉa trước là việc dừng sinh cây thực thi khi chia dữ liệu không có ý nghĩa
- Phương pháp phát hiện luật kết hợp:
Phương pháp này giúp tìm ra các luật kết hợp giữa các thành phần dữ liệu trong CSDL Mẫu đầu ra của giải thuật khai phá dữ liệu là tập luật kết hợp tìm được Ví dụ đơn giản về luật kết hợp như sau: sự kết hợp giữa hai thuộc tính A và
B chính là sự xuất hiện của A trong bản ghi kéo theo sự xuất hiện của B trong cùng bản ghi đó: A → B
1.4 Cây quyết định
1.4.1 Khái niệm
Cây quyết định là mô hìnhkiểu dự báo, mỗi nút ứng với một biến, đường nối giữa nó với nút con thể hiện giá trị cụ thể của biến, mỗi nút lá đại diện cho giá trị
dự đoán của biến mục tiêu Kỹ thuật học máy dùng trong cây quyết định được gọi
là học bằng cây quyết đinh
Trang 28Hình 1.2: Cây quyết định
Khi tiến hành phân lớp mẫu dữ liệu chưa biết, giá trị các thuộc tính của mẫu được đưa vào để kiểm tra trên cây quyết định Đối với mỗi mẫu tương ứng sẽ có một đường đi từ gốc đến lá Khi đó lá sẽ biểu diễn giá trị dự đoán phân lớp của mẫu đó
1.4.2 Ưu điểm và nhược điểm của cây quyết định
Cây quyết định là một phương pháp phân lớp rất hiệu quả và có những ưu điểm chính sau:
+ Khả năng sinh ra các quy tắc hiểu được: Cây quyết định có thể dễ dàng hiểu được khi được giải thích ngắn, khả năng sinh ra các quy tắc có thể chuyển đổi được sang các câu lệnh SQL
+ Khả năng thực thi trong những lĩnh vực hướng quy tắc: Quy tắc quy nạp nói chung và câyquyết định nói riêng là lựa chọn hoàn hảo cho những lĩnh vực thực sự là các quy tắc
+ Dễ dàng tính toán trong khi phân lớp: Các thuật toán sử dụng để tạo ra cây quyết định thường tạo ra những cây có số phân nhánh thấp và các kiểm tra là đơn giản tại từng node Những kiểm tra điển hình là: so sánh số lượng phần tử của một tập hợp với các phép nối đơn giản Quá trình sẽ được thực thi trên máy tính,
Trang 29những kiểm tra này chuyển thành các hàm logic đồng thời những toán hạng được thực thi nhanh và có độ phức tạp tính toán đơn giản
+ Khả năng xử lý tất cả thuộc tính liên tục với thuộc tính rời rạc: Cây quyết định có thể xử lý cả thuộc tính có kiểu liên tục cũng như thuộc tính dạng rời rạc Tuy rằng với thuộc tính liên tục cần nhiều tài nguyên tính toán hơn Trong đó một
số kỹ thuật khác chỉ có thể thực hiện được trên một loại biến
+ Thể hiện rõ ràng những thuộc tính tốt nhất: Thuật toán xây dựng cây quyết định đưa ra thuộc tính mà phân chia tốt nhất tập dữ liệu đào tạo bắt đầu từ nút gốc của cây,khi đó có thể thấy thuộc tính nào là quan trọng nhất cho việc dự đoán hay phân lớp
Nhược điểm:
+ Với những bài toán mục tiêu là dự đoán giá trị của thuộc tính liên tục,cây quyết định không thích hợp.Ví dụ như mức thu nhập, đo huyết áp hay lãi xuất ngân hàng,…
+ Với những bài toán có quá nhiều lớp tốn nhiều dung lượng bộ nhớ và có thể xẩy ra lỗi
1.4.3 Xây dựng cây quyết định
Quá trình xây dựng cây quyết định gồm hai giai đoạn: Tạo cây và tỉa cây
- Giai đoạn một tạo cây quyết định:
Giai đoạn này tất cả các dữ liệu huấn luyện đều ở gốc, sau đó phân chia dữ liệu huấn luyện đến từng nhánh theo chách đệ quy cho tới khi đạt được cây quyết định với tất cả các lá được gán nhãn lớp riêng
- Giai đoạn thứ hai cắt, tỉa bớt các nhánh trên cây quyết định
Giai đoạn này nhằm đơn giản hóa kèm theo khái quát hóa từ đó làm tăng độ chính xác của cây quyết định bằng cách loại bỏ những nhánh có phần tử hỗn loạn hoặc những phần từ không thuộc vào một lớp nào Giai đoạn này nhiệm vụ chỉ truy cập dữ liệu trên cây quyết định đã được phát triển trong giai đoạn trước Quá
Trang 30trình này chỉ chiếm khoảng dưới 1% tổng thời gian xây dựng mô hình phân lớp và không tốn tài nguyên tính toán
Do vậy, cần tập trung nghiên cứu cho giai đoạn phát triển cây Sau đây là các bước tạo cây quyết định:
Bước 1) Sử dụng một độ đo để chọn một thuộc tính “tốt” nhất để phân lớp các đối tượng
Bước 2) Thêm các nhánh tương ứng với từng giá trị của thuộc tính đã chọn để phát triển cây
Bước 3) Phân chia, sắp xếp tập dữ liệu đào tạo tới node con
Bước 4) Nếu các trường hợp được phân lớp rõ ràng thì dừng
Ngược lại: lặp lại bước 1 tới bước 4 cho từng node con
Thuật toán xây dựng cây quyết định:
- Tư tưởng chung: Đoạn mã giả dưới đây trình bày thuật toán xây dụng cây quyết đinh
Make Tree (Training Data T)
for each attribute A do
Tính toán các giá trị phục vụ phân lớp trên thuộc A;
Trang 31use giá trị phân lớp tốt nhất tìm được để phân vùng tập Q thành Q 1 ,
- Phương pháp quy nạp của Hunt:
Giả sử tạo cây quyết định từ T là tập dữ liệu huấn luyện (hay tập dữ liệu đào tạo) và các lớp được biểu diễn dưới dạng tập C = {C1, C2,…, Ck}
Trường hợp 1: T chứa các trường hợp (bản ghi) thuộc về một lớp đơn Cj, cây quyết định ứng với T là một lá tương ứng với lớp Cj
Trường hợp 2: T chứa các trường hợp thuộc về nhiều lớp khác nhau trong tập C Cần phải lựa chọn một thuộc tính để chia phân lớp T Việc lựa chọn thuộc tính trên cơ sở tính toán dựa trên lý thuyết thông tin Sau khi tìm được thuộc tính phân chia T, tập T được chia thành cácnhánh con (lớp), mỗi lớp là tập hợp các bản ghi được phân chia trên cơ sở thuộc tính phân chia và giá trị phân chia (Gọi mỗi lớp con đó là tập con T1, T2, …, Tn) Cây quyết định ứng với T bao gồm: một nút biểu diễn thuộc tính phân lớp được chọn, mỗi nhánh tương ứng với phép kiểm tra giá trị thuộc tính và giá trị phân chia thuộc tính, các cây con hình thành từ các tập con Ti Cách xây dựng cây con Ti tương tự được xây dựng cây T bằng cách áp dụng đệ quy
Trường hợp 3: Cây quyết định tương ứng với T chỉ có một lá, nhưng có lớp gắn với lá đó phải được xác định từ những thông tin ngoài T T không chứa cây nào Ví dụ như C 4.5 chọn giá trị phân lớp là lớp phổ biến nhất tại cha của node này
- Tình hình nghiên cứu các thuật toán hiện nay:
Trang 32Phương pháp Hunt là tư tưởng chủ đạo cho các thuật toán phân lớp dữ liệu dựa trên cây quyết định Có các vấn đề được đặt ra đối với các thuật toán phân lớp trên cây quyết định là:
1 Để xác định được thuộc tính tốt nhất để phát triển tại mỗi nút cần làm thế nào?
2 Làm cách nào để phân chia dữ liệu theo các kiểm tra tương ứng và lưu dữ liệu thế nào?
Mỗi thuật toán sẽ có cách giải quyết những câu trả lời cho các vấn đề trên và điều đó làm cho mỗi thuật toán có sự khác biệt
Việc xác định thuộc tính tốt nhất phát triển tại mỗi nodeđược xác định bởi các loại tiêu chuẩn:
- Gini-index (Breiman và các đồng sự, 1984): Các thuật toán CART, SLIQ,
SPRINT sử dụng loại tiêu chuẩn lựa chọn thuộc tính mà làm cực tiểu hóa độ pha trộn của mỗi phân chia
- Information–gain (Quinlan, 1993): Các thuật toán sử dụng entropy để đo
độ pha trộn của một phân chia và lựa chọn thuộc tính theo mức độ cực đại hóa chỉ
số entropy là ID3, C4.5
Để tính toán các chỉ số có thể phải duyệt một phần hoặc toàn bộ tập dữ liệu đào tạo Vì vậy các thuật toán đã ra đời trước đây thường đòi hỏi toàn bộ tập dữ liệu đào tạo phải được thường trú trong bộ nhớ trong suốt qua trình duyệt cây Việc này đã làm hạn chế khả năng mở rộng bởi bộ nhớ kích thước có hạn trong khi kích thước của các tập dữ liệu đào tạo liên tục tăng, nhiều bài toán dữ liệu đào tạo lên đến hàng tỷ bản ghi Vì vậy cần tìm ra phương pháp mới để thay đối các lưu trữ cũng như cách truy cập dữ liệu Năm 1996 hai thuật toán SPRINT (Shafer) và SLIQ (Mehta) được trình bày đã giải quyết được những hạn chế kể trên Ở đây hai thuật toán đã thực hiện việc lưu dữ liệu thường trú trên đĩa cứng đồng thời sử dụng
cơ chế sắp xếp trước một lần cho tập dữ liệu đào tạo Thuật toán đã cải thiện đáng
kể hiệu năng cũng như khả năng mở rộng so với các thuật toán khác
Trang 33Sau đó một số thuật toán phát triển trên nền tảng SPRINT với một số bổ sung cải tiến như đồng thời ý tưởng kết hợp hai quá trình xây dựng và cắt tỉa với nhau PUBLIC (1998), hay cải thiện quá trình phân chia dữ liệu của SPRINT -ScalParC (1998) do các nhà khoa học IBM kết hợp trường đại học Minesota (Mỹ)
đã làm giảm chi phí vào ra cũng như chi phí giao tiếp toàn cục khi song song hóa