Kết quả học tập của HSSV là cơ sở để phòng Đào tạo phối hợp với các phòng, ban, khoa tổ chức năng đánh giá chất lượng người dạy và người học, báo cáo trình bộ giáo dục, từ đó trợ giúp ch
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRỊNH THỊ NHỊ
NGHIÊN CỨU, KHAI THÁC KHO DỮ LIỆU ĐIỂM TẠI TRƯỜNG ĐẠI HỌC SPKT HƯNG YÊN
DỰA TRÊN BỘ CÔNG CỤ BI CỦA HỆ QUẢN TRỊ CSDL SQL SERVER 2008
LUẬN VĂN THẠC SĨ
Hà Nội - 2011
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRỊNH THỊ NHỊ
NGHIÊN CỨU, KHAI THÁC KHO DỮ LIỆU ĐIỂM TẠI TRƯỜNG ĐẠI HỌC SPKT HƯNG YÊN
DỰA TRÊN BỘ CÔNG CỤ BI CỦA HỆ QUẢN TRỊ CSDL SQL SERVER 2008
Ngành: CÔNG NGHỆ THÔNG TIN
Chuyên ngành: HỆ THỐNG THÔNG TIN
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan rằng, đây là công trình nghiên cứu của tôi, trong đó có sự giúp
đỡ rất lớn và đầy nhiệt tình của thầy hướng dẫn, các thầy/cô ở Khoa CNTT – Trường Đại học Công nghệ và các đồng nghiệp nơi tôi đang làm việc Các nội dung nghiên cứu và kết quả trong đề tài này là hoàn toàn trung thực
Trong luận văn, tôi có tham khảo đến một số tài liệu của một số tác giả đã được liệt kê tại phần tài liệu tham khảo ở cuối luận văn
Hà Nội, ngày 12 tháng 05 năm 2011
Tác giả
Trịnh Thị Nhị
Trang 4MỤC LỤC
BẢNG CÁC CHỮ VIẾT TẮT 6
DANH MỤC HÌNH VẼ VÀ BẢNG BIỂU 7
Chương 1 - GIỚI THIỆU 11
1.1 Nhu cầu xây dựng kho dữ liệu về điểm 11
1.1.1 Nhu cầu xây dựng kho dữ liệu về điểm của Đại học SPKT Hưng Yên: 11
1.1.2 Phạm vi dự kiến của luận văn: 12
1.2 Một số hướng nghiên cứu về kho dữ liệu trên thế giới và ở tại Việt Nam 12
1.2.1 Một số hướng nghiên cứu về kho dữ liệu trên Thế giới 12
1.2.2 Một số hướng nghiên cứu về kho dữ liệu ở Việt Nam 12
1.3 Hướng tiếp cận của luận văn và dự kiến kết quả đạt được 13
1.3.1 Hướng tiếp cận của luận văn 13
1.3.2 Dự kiến kết quả đạt được 13
1.4 Cấu trúc của luận văn 13
1.5 Kết luận chương 1 13
Chương 2 - KHO DỮ LIỆU VÀ CÁC VẤN ĐỀ LIÊN QUAN 14
2.1 Cơ sở lý thuyết 14
2.1.1 Một số khái niệm về kho dữ liệu 14
2.1.2 Mô hình dữ liệu sử dụng trong kho 19
2.1.4 Các bước xây dựng kho dữ liệu 21
2.2 Khai phá dữ liệu 27
2.2.1 Khái niệm về khai phá dữ liệu 27
2.2.2 Khuynh hướng phát triển của lĩnh vực khai phá dữ liệu 28
2.3 Giới thiệu bộ công cụ BI trong hệ quản trị cơ sở dữ liệu SQL 2008 29
2.3.1 Business Intelligence (BI) 29
2.3.2 Dịch vụ phân tích 29
2.3.3 Dịch vụ báo cáo 39
2.4 Kết luận chương 2 40
Chương 3 - XÂY DỰNG KHO DỮ LIỆU ĐIỂM CỦA SINH VIÊN 41
3.1 Hiện trạng dữ liệu và nhu cầu xây dựng kho dữ liệu 41
3.2 Xây dựng kho dữ liệu điểm của sinh viên 42
3.2.1 Thông tin về dữ liệu điểm 42
3.2.2 Kiến trúc của kho dữ liệu 46
3.2.3 Các chiều dữ liệu 47
3.2.4 Các bước cài đặt vật lý kho dữ liệu 48
3.3 Xây dựng báo cáo từ kho dữ liệu phục vụ quản lý 49
3.3.1 Yêu cầu báo cáo 49
3.3.2 Lợi ích của báo cáo trong BI 49
Trang 53.3.3 Xây dựng báo cáo và đưa ra kết quả 50
3.3.4 Tính ưu việt của báo cáo xây dựng từ kho dữ liệu 55
3.4 Kết luận chương 3 56
Chương 4 - KHAI THÁC DỮ LIỆU TỪ KHO DỮ LIỆU 57
4.1 Ứng dụng kỹ thuật KPDL để dự báo, dự đoán 57
4.1.1 Yêu cầu dự báo, dự đoán xu thế 57
4.1.2 Ưu điểm của một số thuật toán khai phá trong BI 58
4.2 Xây dựng mô hình dự báo dựa trên Data Mining Tool 58
4.2.1 Khảo sát dự đoán kết quả học tập của sinh viên 58
4.2.2 Phân tích kết quả đạt được 63
4.3 Kết luận chương 4 63
KẾT LUẬN – HƯỚNG PHÁT TRIỂN 64
Các mục tiêu đã thực hiện trong luận văn 64
Hướng phát triển 64
TÀI LIỆU THAM KHẢO 65
Trang 6BẢNG CÁC CHỮ VIẾT TẮT
HOLAP Hybrid Online Analytical Processing
MOLAP Multidimensional Online Analytical Processing
ROLAP Relational - Online Analytical Processing
T - SQL Transact - Structured Query Language
Trang 7DANH MỤC HÌNH VẼ VÀ BẢNG BIỂU
Hình 2.1 - Dòng dữ liệu trong kho dữ liệu 15
Hình 2.2 – Sơ đồ hình sao 17
Hình 2.3 – Sơ đồ bông tuyết 19
Hình 2.4 - Kiến trúc 3 tầng hệ thống kho dữ liệu 20
Hình 2.5 – Ví dụ về mô hình dữ liệu 3 chiều 24
Hình 2.6 – Mô tả chi tiết các bước của quá trình khám phá tri thức 28
Hình 2.7 - Cấu trúc của dịch vụ phân tích 30
Hình 2.8 – Các thành phần của BI 1
Hình 2.9 - Ví dụ dữ liệu đầu vào phân tích thuật toán Cây quyết định 33
Hình 2.10 – Entrophy cho thuộc tính “Quê quán” 33
Hình 2.11 – Entrophy cho thuộc tính “Điểm vào” 34
Hình 2.12 – Entrophy cho thuộc tính “Kinh tế” 34
Hình 2.13 – Entrophy cho thuộc tính “Giới tính” 34
Hình 2.14 - Chọn nút phân nhánh của cây 1
Hình 2.15 – Bảng dữ liệu đầu vào con 35
Hình 2.16 – Entrophy cho thuộc tính “Điểm vào” 35
Hình 2.17 – Entrophy cho thuộc tính “Kinh tế” 35
Hình 2.18 – Entrophy cho thuộc tính “giới tính” 35
Hình 2.19 - Cây quyết định kết quả 1
Hình 2.20 – Tính xác suất cho các thuộc tính 37
Hình 3.1 - Bảng tổng hợp kết quả học tập của một lớp 43
Hình 3.2 - Lược đồ thực thể - mối quan hệ của CSDL điểm sinh viên 43
Hình 3.3 - Lược đồ CSDL điểm sinh viên dưới dạng quan hệ 44
Hình 3.4 - Bảng các dữ liệu liên quan đến kho dữ liệu về điểm 45
Hình 3.5 - Chuẩn hóa, tối ưu dữ liệu làm nguồn cho kho dữ liệu điểm 46
Hình 3.6 – Nguồn của kho dữ liệu về điểm 47
Hình 3.7 – Các chiều của khối DiemSV-20-4 48
Hình 3.8 – Kho dữ liệu về điểm của sinh viên 49
Hình 3.9 - Cửa sổ tạo Report Server Project 50
Hình 3.10- Cửa sổ thiết lập kết nối 51
Hình 3.11- Cửa sổ tạo Report Server Project 51
Hình 3.12 – Hiển thị kết quả của báo cáo thông thường dạng bảng 52
Hình 3.13- Báo cáo lực học của sinh viên thuộc mỗi khóa học dạng cột 52
Hình 3.14 – Báo cáo thống kê số lượng về giới tính dạng thanh 53
Hình 3.15 – Báo cáo điểm vào trung bình của sinh viên dạng hình dáng .54
Hình 3.16 – Theo dõi điểm toán của sinh viên khóa k03 dạng Line 54
Hình 3.17 – Theo dõi điểm tổng kết của sinh viên khóa k03 dạng Line 54
Hình 3.18 – Học lực của sinh viên theo kỳ học 55
Trang 8Hình 4.1 – Cấu trúc mơ hình dùng cho các thuật tốn: Decision Tree, Nạve Bayes,
Neural Network 58
Hình 4.2 – Mơ hình khai phá cho 3 thuật tốn 59
Hình 4.3 – Cây phân nhánh khi dùng thuật tốn Decision Tree 59
Hình 4.4 – Cây khơng phân nhánh khi dùng thuật tốn cây quyết định 59
Hình 4.5 – Mạng phụ thuộc khi dùng thuật tốn Decision Tree 59
Hình 4.6 – Mạng phụ thuộc khi dùng thuật tốn Nạve Bayes 60
Hình 4.7 – Đặc điểm của các thuộc tính khi dùng thuật tốn Nạve Bayes 60
Hình 4.8 – Đặc trưng của thuộc tính học lực là khá khi dùng thuật tốn Nạve Bayes 60 Hình 4.9 – Biểu đồ dự báo về học lực trung bình của sinh viên khi dùng 3 thuật tốn 61 Hình 4.10 – Ma trận phân lớp khi dùng ba thuật tốn 61
Hình 4.11 – Xây dựng mơ hình dự đốn cho thuật tốn Nạve Bayes 62
Hình 4.12 – Kết quả dự đốn khi dùng thuật tốn Nạve Bayes 62
Trang 9LỜI CẢM ƠN
Trước tiên tôi xin được bày tỏ sự trân trọng và lòng biết ơn sâu sắc đối với TS Nguyễn Hà Nam - Phó phòng đào tạo - giảng viên Bộ môn Hệ thống thông tin - Khoa Công nghệ thông tin - Trường Đại học Công nghệ - ĐHQGHN Trong thời gian học và làm luận văn tốt nghiệp, Thầy đã dành nhiều thời gian qúi báu và tận tình chỉ bảo, hướng dẫn tôi trong việc nghiên cứu, thực hiện luận văn Trong thời gian làm việc với Thầy, tôi không những học hỏi được nhiều kiến thức bổ ích mà còn học được tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc của Thầy
Tôi xin được cảm ơn PGS.TS Hà Quang Thụy và các Thầy/Cô ở Khoa Công nghệ thông tin – Trường Đại học Công nghệ đã giảng dạy chúng tôi trong quá trình học tập và góp ý cho tôi hoàn thiện trong quá trình làm luận văn Tôi cũng xin được cảm ơn PGS.TS Nguyễn Quang Hoan đang công tác tại khoa Công nghệ thông tin – Trường đại học SPKT Hưng yên đã tận tình góp ý cho luận văn của tôi Các thầy đã giúp tôi tiếp thu được những kiến thức bổ ích trong lĩnh vực mà mình nghiên cứu để
có thể vận dụng các kiến thức đó vào trong trường - nơi tôi đang làm việc
Xin cảm ơn các bạn bè, đồng nghiệp và đặc biệt là các thành viên trong gia đình
đã tạo mọi điều kiện tốt nhất, động viên tôi trong suốt quá trình học tập và nghiên cứu
để hoàn thành tốt bản luận văn tốt nghiệp này
Mặc dù đã cố gắng hoàn thiện luận văn với tất cả sự nỗ lực của bản thân, nhưng chắc chắn không thể tránh khỏi những thiếu sót Kính mong quý Thầy/Cô tận tình chỉ bảo
Tác giả
Trang 10LỜI MỞ ĐẦU
Trong nhiều năm gần đây, CNTT đã được ứng dụng rất rộng rãi trong nhiều lĩnh vực khác nhau như kinh doanh, giáo dục, nông nghiệp, y học…Trong lĩnh vực giáo dục, phần lớn các trường đã xây dựng được CSDL sinh viên để lưu trữ hồ sơ lý lịch, quá trình học tập, rèn luyện của HSSV Trên CSDL đó đã có nhiều nghiên cứu, đánh giá về kết quả thi tuyển sinh, kết quả học tập, rèn luyện của HSSV nhưng mới chỉ dừng lại ở mức độ đơn giản, việc sinh ra các báo báo vẫn hoàn toàn thực hiện một các thủ công, thống kê kết quả học tập của HSSV mới chỉ thực hiện ở phần mềm excel tốn rất nhiều công sức nhưng chưa có nhiều nghiên cứu về sự ảnh hưởng giữa kết quả tuyển sinh, kết quả của từng môn học, giới tính… với kết quả học tập của HSSV.Thông qua đó dự báo, dự đoán kết quả học tập của HSSV Nhằm góp phần trợ giúp các nhà quản lý có những quyết định nhanh, phù hợp để phát huy cái mới tích cực, hạn chế, ngăn chặn những sai sót trong công tác quản lý đào tạo Do đó, việc nghiên cứu vấn đề nêu trên có vai trò rất quan trọng
Trường Đại học SPKT Hưng Yên nằm trong hệ thống các trường đại học thuộc GD&ĐT, đào tạo nhiều ngành nghề với nhiều hình thức đào tạo và nhiều hệ đào tạo khác nhau Trường được phát triển trên cơ sở từ trường Cao đẳng SPKT Hưng Yên với
bề dày hơn 35 năm Kết quả học tập của HSSV là cơ sở để phòng Đào tạo phối hợp với các phòng, ban, khoa tổ chức năng đánh giá chất lượng người dạy và người học, báo cáo trình bộ giáo dục, từ đó trợ giúp cho Ban Giám hiệu nhà trường về định hướng đào tạo, kế hoạch chuyên môn, chỉ tiêu tuyển sinh các khóa tiếp theo…Hai năm gần đây, bộ giáo dục đã triển khai cho nhiều trường đại học sử dụng đồng bộ nhiều phần mềm cho công tác đào tạo như Edusoft: lập thời khóa biểu, quản lý hồ sơ sinh viên, quản lý điểm,…bước đầu đã thống nhất được các biểu mẫu, bảng điểm Bên cạnh, trường cũng đã có nhiều phần mềm tiện ích khác: Quản lý vật tư, quản lý thực tập của sinh viên…Tuy nhiên những phần mềm này vẫn chưa giải quyết được câu trả lời về sự ảnh hưởng giữa kết quả tuyển sinh, kết quả của từng môn học, giới tính… với kết quả học tập của HSSV Đây là một nhiệm vụ quan trọng trong công tác quản lý đào tạo, thu hút nhân tài Hơn nữa, lượng HSSV thi vào trường ngày một đông, trường có 3 cơ
sở với tổng diện tích sàn trên 30 ha, đây là thuận lợi và cũng là vấn đề lo lắng của trường trong việc lưu trữ dữ liệu, sinh ra các báo cáo nhiều chiều và đưa ra chiến lược đào tạo hàng năm Do đó, đòi hỏi phải có nghiên cứu về vấn đề này để cải thiện tình hình quản lý đào tạo của trường cũng như giúp cho trường ngày một phát triển và thích ứng với trào lưu tin học hóa, và ngang tầm với các trường có bề dày lịch sử trong nước
và quốc tế
Xuất phát từ vấn đề trên, chúng tôi thực hiện đề tài luận văn “Nghiên cứu, khai
thác kho dữ liệu điểm tại trường Đại học SPKT Hưng Yên dựa trên bộ công cụ BI của
Hệ quản trị CSDL SQL Server 2008” Với mong muốn góp phần trợ giúp, ra quyết
định cho công tác quản lý đào tạo của trường Đại học SPKT Hưng Yên nói riêng và các trường chuyên nghiệp nói chung
Trang 11Chương 1 - GIỚI THIỆU
1.1 Nhu cầu xây dựng kho dữ liệu về điểm
1.1.1 Nhu cầu xây dựng kho dữ liệu về điểm của Đại học SPKT Hưng Yên:
Theo báo cáo kế hoạch năm 2011 và 5 năm 2011- 2015, Về tốc độ tăng trưởng quy mô học sinh, sinh viên 5 năm 2006 – 2010, dựa trên kế hoạch tuyển sinh bộ GD&ĐT giao hàng năm, nhà trường đã thực hiện tuyển sinh các trình độ, loại hình đào tạo đảm bảo chi tiêu chất lượng, tỷ lệ bình quân các năm tăng ~16,5 %, quy mô học sinh sinh viên tăng nhanh vào những năm cuối của kế hoạch 5 năm 2006-2010 Trong
5 năm qua Nhà trường đã xin phép để mở mới được 06 ngành đào tạo ở trình độ đại học: Công nghệ Cơ điện tử, Công nghệ kỹ thuật hóa học, Công nghệ kỹ thuật môi trường, Kế toán, Tiếng Anh và Công nghệ cơ điện Xây dựng và thực hiện đào tạo nhiều chuyên ngành mới đưa tổng số chuyên ngành đào tạo của trường lên là 29, Tính đến tháng 6/2010 tổng số CBVC của trường là hơn 600 Trường còn mở thêm nhiều ngành mới ở trình độ đại học: Công nghệ vật liệu, Tài chính – Ngân hàng, Tiếng Trung Quốc, Hàn Quốc Quy mô đào tạo: tăng nhanh cả về số lượng lẫn chất lượng, năm 2010 số lượng sinh viên trên toàn trường là hơn 16000 sinh viên, dự kiến năm
2011, số lượng sinh viên sẽ tăng lên gần 18000 sinh viên với tất cả các hệ đào tạo và ngành nghề khác nhau trong toàn trường
- Đầu tư trang thiết bị: Trong giai đoạn 2011-2015 tập trung các nguồn vốn: Ngân sách Nhà nước, vốn hợp pháp của Trường và các nguồn vốn khác đầu tư từ 25 tỷ35 tỷ mua sắm trang thiết bị phục vụ đào tạo cho các khoa: Công nghệ thông tin, Công nghệ Hoá học và Môi trường, Kinh tế, May và Thiết kế thời trang, Cơ khí, cơ khí động lực, Cơ điện tử, Điện - Điện tử, Sư phạm kỹ thuật và đặc biệt ngành Công nghệ vật liệu
Tính trung bình, số lượng máy tính sử dụng tốt trong toàn trường là hơn 600 máy tính Tuy nhiên, số máy tính này vẫn khai thác chưa triệt để, chủ yếu vẫn là phục
vụ cho công tác dạy học, soạn thảo văn bản đơn giản, chưa lưu trữ các phần mềm quản
lý, các tiện ích Hiện tại, việc lưu trữ dữ liệu về sinh viên mới chỉ ở mức đơn giản trên excel, các mẫu biểu giữa các khoa chưa được thống nhất dẫn đến việc tổng hợp và báo cáo chưa được thuận lợi và chính xác Để khắc phục nhược điểm này, nhà trường đã
có chiến lược chuẩn bị cho việc tổ chức và lưu trữ dữ liệu được tốt, bằng các quy định
về các mẫu biểu, thống nhất các quy trình, bước đầu, đã triển khai các phần mềm xếp thời khóa biểu, quản lý sinh viên, quản lý điểm sinh viên Nên việc quản lý, lưu trữ các thông tin có nhiều bất cập, nguy cơ thất lạc và mất mát cao dẫn đến việc xử lý các thông tin liên quan gặp nhiều khó khăn
Như vậy, với sự phát triển nhanh chóng về số lượng sinh viên qua các năm, một vấn đề quan tâm là việc lưu trữ dữ liệu về chương trình đào tạo, thời khóa biểu, thông tin sinh viên và các thông tin về điểm của sinh viên để việc tìm kiếm nhanh và có hiệu quả Và quan trọng hơn là việc tìm ra những dữ liệu tiềm ẩn qua các năm, định ra
Trang 12hướng mở rộng và phân bổ số lượng sinh viên hợp lý ở các ngành nghề khác nhau, phục vụ cho việc tổng hợp, báo cáo, dự đoán Do đó, nhu cầu chuẩn bị xây dựng một kho dữ liệu là cần thiết và cấp bách [5]
1.1.2 Phạm vi dự kiến của luận văn:
Trong khuôn khổ giới hạn của luận văn, chúng tôi xin trình bày:
Tìm hiểu cơ sở lý thuyết kho dữ liệu, một số thuật toán KPDL
Xây dựng kho dữ liệu điểm trường Đại học SPKT Hưng Yên
Thiết kế báo cáo đa chiều
Sử dụng một số thuật toán KPDL để giải quyết bài toán dự đoán
1.2 Một số hướng nghiên cứu về kho dữ liệu trên thế giới và ở tại Việt Nam
1.2.1 Một số hướng nghiên cứu về kho dữ liệu trên Thế giới
Về các hướng nghiên cứu kho dữ liệu trên Thế giới thì về cơ bản vẫn là để phục
vụ cho mục tiêu xây dựng báo cáo của công ty Tuy nhiên, mức độ khó dễ có thể khác nhau, do đó độ phức tạp của kho dữ liệu cũng khác nhau Một số nơi có thế có các ứng dụng cao cấp hơn chẳng hạn KPDL hoặc tích hợp hệ thống Ngày nay, thế giới đang quan tâm đến: kho dữ liệu thời gian thực, OLAP mining, mobile OLAP, thông qua những bài toán khai phá dữ liệu: phân lớp, gom cụm, dự báo để để tìm kiếm các mẫu mới, những thông tin tiềm ẩn mang tính dự đoán trong các khối dữ liệu lớn Những công cụ khai phá dữ liệu có thể phát hiện những xu hướng trong tương lai, các tri thức
mà khai phá dữ liệu mang lại cho các doanh nghiệp có thể ra các quyết định kịp thời
và trả lời những câu hỏi trong lĩnh vực kinh doanh mà trước đây tốn nhiều thời gian để
xử lý [18]
1.2.2 Một số hướng nghiên cứu về kho dữ liệu ở Việt Nam
Ở Việt nam đa phần cũng là xây dựng các báo cáo [11]
Khai phá dữ liệu trong kho dữ liệu ở môi trường kinh doanh đầy tính cạnh tranh ngày nay và được ứng dụng rộng rãi trong các lĩnh vực thương mại, tài chính, điều trị
y học, giáo dục, viễn thông,…[6]
Hệ hỗ trợ quyết định - Đây có thể nói là mục tiêu quan trọng nhất của doanh nghiệp khi xây dựng kho dữ liệu Một doanh nghiệp trước khi xây dựng kho dữ liệu, nên tự đặt câu hỏi liệu kho dữ liệu đó có giúp ích gì trong việc ra quyết định kinh
doanh của doanh nghiệp không [11]
Kho dữ liệu nên được xây dựng từ trên yêu cầu nghiệp vụ Một số các nhà lãnh đạo doanh nghiệp ngày nay ra quyết định dựa trên dữ liệu Điều này có được là do sử dụng báo cáo và OLAP Báo cáo được sử dụng để đưa ra số liệu kinh doanh đã tổng hợp trong kho dữ liệu tới những người kinh doanh [6] Thường thì các yêu cầu này liên quan đến việc sử dụng các số liệu tổng hợp, chẳng hạn count, sum, max, min, average Thường thì người ta sử dụng các số liệu kiểu này để phân tích xu hướng [11]
Trang 13Sacombank là ngân hàng TMCP Việt Nam đầu tiên vừa chính thức công bố triển khai thành công dự án kho dữ liệu– giải pháp kho dữ liệu tập trung hỗ trợ công tác dự báo, phân tích và ra quyết định kinh doanh trong thời gian nhanh nhất được xây dựng dựa trên nền tảng công nghệ Oracle - lần đầu tiên triển khai thành công tại Việt Nam Điều này là minh chứng cho tầm quan trọng của việc xây dựng một kho dữ liệu trong hiện tại và tương lai với những lợi ích.[12]
Nhiều đề tài nghiên cứu khoa học, luận văn,…đã và đang được tiến hành về kho dữ liệu
1.3 Hướng tiếp cận của luận văn và dự kiến kết quả đạt được
1.3.1 Hướng tiếp cận của luận văn
Luận văn trình bày về vấn đề xây dựng kho dữ liệu về điểm và khai khác dữ liệu từ kho dữ liệu đã xây dựng
1.3.2 Dự kiến kết quả đạt được
Hiểu được các kiến thức về kho dữ liệu, KPDL, một số thuật toán KPDL trong
bộ công cụ BI của hệ quản trị SQL Server 2008
Xây dựng kho dữ liệu về điểm sinh viên phục vụ một mục tiêu cụ thể
Thiết kế các báo cáo theo yêu cầu
Sử dụng một số thuật toán khai phá để dự đoán, ra quyết định nghiệp vụ cho trường sở tại
1.4 Cấu trúc của luận văn
Nội dung chính của luân văn gồm 4 chương, cụ thể như sau:
Chương 1 - Giới thiệu
Chương này trình bày về nhu cầu xây dựng kho dữ liệu về điểm của sinh viên, một số hướng nghiên cứu của kho dữ liệu, mô tả ngắn gọn hướng nghiên cứu của luận văn
Chương 2 - Kho dữ liệu và các vấn đề liên quan
Chương này trình bày cơ sở lý thuyết về kho dữ liệu, khai phá dữ liệu, giới thiệu bộ công cụ sử dụng để làm thực nghiệm
Chương 3 - Xây dựng kho dữ liệu về điểm của sinh viên
Chương này trình bày về việc xây dựng kho dữ liệu về điểm của trường Đại học SPKT Hưng yên, thiết kế báo cáo đa chiều phục vụ cho việc ra quyết định
Chương 4 - Khai thác dữ liệu từ kho dữ liệu
Chương này trình bày ứng dụng của một số thuật toán khai phá dữ liệu trong kho dữ liệu điểm của bộ công cụ BI
1.5 Kết luận chương 1
Chương này trình bày:
Nhu cầu xây dựng kho dữ liệu điểm của Trường Đại học SPKT Hưng Yên
Một số hướng nghiên cứu kho dữ liệu ở Việt Nam và trên thế giới
Hướng tiếp cận của luận văn và dự kiến kết quả đạt được
Cấu trúc luận văn
Trang 14Chương 2 - KHO DỮ LIỆU VÀ CÁC VẤN ĐỀ LIÊN QUAN
2.1 Cơ sở lý thuyết
2.1.1 Một số khái niệm về kho dữ liệu
Khái niệm kho dữ liệu
Theo William Inmon [1], kho dữ liệu là một bộ dữ liệu có các đặc tính: hướng chủ đề,
có tính tích hợp, ổn định, dữ liệu gắn với thời gian thường được sử dụng trong các hệ thống hỗ trợ quyết định
Kho dữ liệu thường bao gồm:
Một hoặc nhiều công cụ để chiết xuất dữ liệu từ các dạng cấu trúc dữ liệu khác nhau
Cơ sở dữ liệu tích hợp hướng chủ đề, ổn định được tổng hợp thông qua việc lập các bảng dữ liệu
Một kho dữ liệu có thể được coi là một hệ thống thông tin với những thuộc tính sau:
Là một cơ sở dữ liệu được thiết kế dành cho nhiệm vụ phân tích, sử dụng các
Chứa các bảng dữ liệu có kích thước lớn
Một câu hỏi thường trả về một tập kết quả liên quan đến toàn bộ bảng và các liên kết nhiều bảng
Các đặc tính của kho dữ liệu
Hướng chủ đề: Kho dữ liệu có thể chứa lượng dữ liệu lên tới hàng trăm
Gigabyte, được tổ chức theo những chủ đề chính Kho dữ liệu không chú trọng vào giao tác và việc xử lý giao tác Thay vào đó, kho dữ liệu tập trung vào việc
mô hình hóa, phân tích dữ liệu nhằm hỗ trợ cho nhà quản lý ra quyết định Do
đó, các kho dữ liệu thường cung cấp một khung nhìn tương đối đơn giản bằng cách loại bớt những dữ liệu không cần thiết trong quá trình ra quyết định
Tính tích hợp: Kho dữ liệu thường được xây dựng bằng cách tổng hợp dữ liệu
từ nhiều nguồn khác nhau, ví dụ các cơ sở dữ liệu, những bản ghi giao tác trực tuyến hoặc thậm chí là từ những file dữ liệu độc lập Những dữ liệu này tiếp tục được làm sạch, chuẩn hóa để đảm bảo sự nhất quán, sau đó đưa vào kho dữ liệu
Trang 15 Ổn định: Dữ liệu trong kho dữ liệu thường được lưu trữ lâu dài, ít bị sửa đổi,
chủ yếu dùng cho việc truy xuất thông tin nên có độ ổn định cao Hai thao tác chủ yếu tác động tới kho dữ liệu là: nhập dữ liệu vào và truy xuất
Dữ liệu gắn với thời gian: Do có tính ổn định, kho dữ liệu thường lưu trữ dữ
liệu của hệ thống trong khoảng thời gian dài, cung cấp đủ số liệu cho các mô hình nghiệp vụ, dự báo, khảo sát những chỉ tiêu cần quan tâm
Dòng dữ liệu trong kho dữ liệu [3]
Do kho dữ liệu chứa lượng dữ liệu lớn, đồng thời hạn chế thao tác sửa đổi nên rất thích hợp cho việc phân tích dài hạn và báo cáo Các thao tác với dữ liệu của kho dữ liệu chủ yếu dựa trên cơ sở là Mô hình dữ liệu đa chiều, thường áp dụng cho các khối
dữ liệu Khối dữ liệu là trung tâm của vấn đề cần phân tích, bao gồm một hay nhiều tập sự kiện và các sự kiện được tạo ra từ nhiều chiều dữ liệu khác nhau
Hình 2.1 - Dòng dữ liệu trong kho dữ liệu
Đầu tiên dữ liệu được lấy trong các hệ cơ sở dữ liệu tác nghiệp, có thể ở nhiều dạng khác nhau, dữ liệu được làm sạch, chuẩn hóa rồi đưa vào kho dữ liệu, cuối cùng
dữ liệu được lấy từ kho dữ liệu phục vụ cho các phân tích khác nhau
Ứng dụng của kho dữ liệu [1]
Kho dữ liệu được đưa vào ba mảng ứng dụng chính
Theo như cách khai thác truyền thống đối với cơ sở dữ liệu, kho dữ liệu được sử dụng để khai thác thông tin bằng các công cụ thực hiện truy vấn và báo cáo Nhờ việc
dữ liệu thô đã được chuyển sang thành các dữ liệu ổn định, có chất lượng nên kho dữ liệu đã giúp nâng cao kỹ thuật biểu diễn thông tin truyền thống Với cách thứ hai, các kho dữ liệu được sử dụng để hỗ trợ cho phân tích trực tuyến (OLAP) Trong khi ngôn ngữ SQL và các công cụ xây dựng báo cáo truyền thống chỉ có thể mô tả những gì có
Trang 16trong cơ sở dữ liệu thì phân tích trực tuyến có khả năng phân tích dữ liệu, xác định xem giả thuyết đúng hay sai Tuy nhiên, phân tích trực tuyến lại không có khả năng đưa ra được các giả thuyết Ngoài ra, sử dụng OLAP còn giúp phân tích tổng hợp dữ liệu, đưa ra kết quả bằng các báo cáo hoặc bảng biểu trực quan
Cách thứ ba để khai thác kho dữ liệu là dựa trên các kỹ thuật khai phá dữ liệu Đây
là một phương pháp mới, đáp ứng được cả những yêu cầu trong nghiên cứu khoa học cũng như yêu cầu trong thực tiễn Các kết quả thu được mang nhiều tính dự báo, dự đoán, dùng trong việc xây dựng kế hoạch, chiến lược
Các lĩnh vực hiện tại áp dụng kho dữ liệu:
Thương mại điện tử
Kế hoạch hoá nguồn lực doanh nghiệp
Quản lý quan hệ khách hàng
Chăm sóc sức khỏe
Viễn thông
2.1.2 Mô hình dữ liệu sử dụng trong kho
Mô hình kho dữ liệu được phát sinh từ một mô hình dữ liệu tổng thể Một mô hình dữ liệu này là một bức tranh tổng thể mà các mô hình khác có thể hoạt động trên
đó Nó được tổ chức thành các vùng theo chủ điểm, dịch vụ phân tích là phần chính của sự chia nhỏ các công việc cần được quan tâm đáp ứng nhu cầu người sử dụng Nếu một tổ chức không có sẵn mô hình dữ liệu tổng thể thích hợp, mô hình dữ liệu tổng thể
cũ được phép dùng tiếp và bổ sung các dịch vụ phân tích mới
Một số công ty bắt đầu với một mô hình được chuẩn hóa đầy đủ cho kho dữ liệu của họ sau đó ứng dụng kĩ thuật mô hình kho dữ liệu
Một vấn đề nổi cộm trong việc thiết lập mô hình dữ liệu là không có câu trả lời đúng cho mọi tình huống Mô hình dữ liệu kho dữ liệu có tính chủ đề, phụ thuộc vào công việc nghiệp vụ và các vấn đề nảy sinh
Mô hình dữ liệu của kho dữ liệu có thể thiết lập theo:
Sơ đồ hình sao
Sơ đồ tuyết rơi
Sơ đồ kết hợp
Lược đồ dữ liệu hình sao:
Sơ đồ hình sao được đưa ra lần đầu tiên bởi Dr Ralph Kimball [1] như là một lựa chọn thiết kế cơ sở dữ liệu cho kho dữ liệu Nó được gọi là sơ đồ hình sao bởi vì các
sự kiện nằm ở trung tâm của mô hình và được bao quanh bởi các phạm vi liên quan, rất giống với các điểm của một ngôi sao Sơ đồ hình sao cho phép một hệ thống đối tượng có thể kết nối với nhiều đối tượng khác Mô hình này thể hiện cách nhìn của người sử dụng về nhiều vấn đề trong tác nghiệp
Trong sơ đồ hình sao, dữ liệu được xác định và phân loại theo 2 kiểu:
Trang 17 Các sự kiện được tổ chức thành bảng sự kiện
Phạm vi, hay các chiều của dữ liệu, được tổ chức thành các bảng chiều
- Bảng sự kiện chứa các thông tin cơ sở ở mức giao tác ở trong nghiệp vụ mà các ứng dụng cần thiết Ví dụ, khi phân tích dữ liệu về học lực của sinh viên thì cần những dữ liệu về điểm các kỳ của sinh viên như về Điểm môn, v.v Những dữ liệu này đều được lưu ở bảng sự kiện của kho dữ liệu Tuy nhiên, trước khi các dữ liệu này được đưa vào kho dữ liệu thì cần phải chọn một trường dữ liệu nào đó thường sử dụng trong các chiều phân tích để tham chiếu và sau đó đưa vào bảng các chiều Các sự kiện là các đại lượng số của công việc Các bảng sự kiện thường rất lớn, chứa hàng triệu dòng
mà phần lớn là số
- Bảng chiều, ngược lại, thường là tương đối nhỏ so với các bảng sự kiện, chứa các thông tin mô tả Đó là các bộ lọc hoặc các ràng buộc của những sự kiện ở bảng sự kiện Bảng chiều chứa các dữ liệu cần thiết cho việc thực hiện các giao tác nghiệp vụ theo một chiều, hay phạm vi nào đó Ví dụ, trong ứng dụng phân tích kết quả học tập của sinh viên, bảng chiều bao gồm: thời gian, sinh viên, môn học, v.v
Hình 2.2 mô tả về một ví dụ sơ đồ hình sao Trong sơ đồ hình sao này có ba quan hệ một-nhiều liên kết giữa các dòng trong bảng chiều với các dòng trong bảng sự kiện
Hình 2.2 – Sơ đồ hình sao
Ưu điểm của sơ đồ hình sao
- Hỗ trợ rất đa dạng các câu truy vấn và xử lý khá hiệu quả những câu truy vấn đó Ví
dụ, khi phân tích dữ liệu ở hình 2.2, chiều thời gian có thể thực hiện khá hiệu quả mà không cần sắp xếp lại dữ liệu trong bảng các sự kiện
- Phù hợp với cách mà người sử dụng nhận và sử dụng dữ liệu và qua đó làm cho dữ liệu được hiểu trực quan hơn
- Nguyên lý cơ bản của sơ đồ hình sao là một dạng dư thừa dữ liệu nhằm cải thiện sự thực hiện các truy vấn Với sơ đồ hình sao, người thiết kế có thể dễ dàng mô phỏng những chức năng của cơ sở dữ liệu đa chiều Sự phi chuẩn hóa có thể coi là sự tiền kết nối các bảng để cho các ứng dụng không phải thực hiện công việc kết nối, làm giảm thời gian thực hiện
Trang 18- Dễ dàng nhận thấy, sơ đồ hình sao được thiết kế là để khắc phục những hạn chế của
mô hình quan hệ hai chiều Với cơ sở dữ liệu được thiết kế theo sơ đồ hình sao, những truy vấn với những câu hỏi phức tạp liên quan tới nhiều bảng và số liệu trở nên đơn giản hơn và số lượng công việc cần thực hiện để đưa được ra câu trả lời là ít nhất so với một mô hình quan hệ chuẩn Sơ đồ hình sao cải thiện đáng kể thời gian truy vấn và cho phép thực hiện một số tính năng đa phạm vi Sơ đồ này rất trực quan, dễ sử dụng, thể hiện khung nhìn đa chiều của dữ liệu dùng ngữ nghĩa của cơ sở dữ liệu quan hệ Khóa của bảng sự kiện được tạo bởi những khóa của các bảng chứa thông tin theo từng phạm vi Tất cả các khóa đều được xác định với cùng một chuẩn đặt tên
- Những bảng chiều có chứa khóa của các bảng chiều, có thể là với tên khác đi để đảm bảo tính duy nhất của mỗi hàng Các bảng chiều thường có định danh duy nhất và chứa đựng những thông tin về chiều của bảng đó Số lượng các bảng chiều của mỗi bảng sự kiện là từ 3 đến 5
- Vì bảng sự kiện được tổng hợp từ trước và được kết hợp theo nhiều chiều nên xu hướng có rất nhiều hàng và tăng trưởng một cách nhanh chóng trong khi đó các bảng chiều không có nhiều hàng và sự tăng trưởng là tĩnh Bảng sự kiện có thể bao gồm hàng triệu hàng Bảng chiều chứa đựng các thuộc tính có thể được sử dụng như các tiêu chí tìm kiếm và thường có kích thước nhỏ hơn nhiều, rất quen thuộc với người sử dụng từ trước Khoá của nó không là khoá ghép như bảng sự kiện Nếu một bảng chiều bắt đầu có sự tương đồng với các bảng sự kiện thì có thể nó cần được chia ra thành các bảng sự kiện Nếu một bảng chiều được chia ra thành chiều chính và chiều phụ thì cấu trúc thu được của kết quả được coi là một sơ đồ tuyết rơi hoặc một cấu trúc hình sao
mở rộng
- Một sơ đồ hình sao đơn giản chỉ gồm một bảng sự kiện và một vài bảng chiều Một
sơ đồ hình sao phức tạp bao gồm hàng trăm bảng sự kiện và bảng chiều
Lưu ý: Bảng sự kiện và các bảng chiều đều không bắt buộc ở dạng chuẩn như đối
với phương pháp thiết kế truyền thống tức là có dư thừa dữ liệu Với loại sơ đồ này cho phép lưu trữ dư thừa dữ liệu đổi lại khả năng truy nhập nhanh hơn phù hợp với những câu hỏi phân tích nhiều chiều, phức tạp Về bản chất, bảng sự kiện thuộc dạng chuẩn I, với mức độ dư thừa dữ liệu rất lớn
Lược đồ dữ liệu bông tuyết:
Lược đồ này là mở rộng của lược đồ hình sao Khi một bảng chiều trở lên phức tạp hàm chức các quan hệ dữ liệu thì có thể tách thành nhiều bảng Các bảng được tách có quan hệ với bảng chiều tạo lên hình dạng tuyết rơi Công việc này cũng chính là chuẩn hóa dữ liệu cho bảng chiều
Trang 19Hình 2.3 – Sơ đồ bông tuyết Tùy theo thực tế mà ta lựa chọn lược đồ hình sao hay hình tuyết rơi Việc lựa chọn được cân nhắc giữa hai yếu tố: thời gian đáp ứng truy vấn và mức độ kiểm soát tính chặt chẽ dữ liệu Lược đồ dạng tuyết rơi có thể thích hợp khi dữ liệu bảng chiều trở lên quá lớn và nhiều thuộc tính Tuy sự khác nhau thể hiện rất rõ về mặt lý thuyết nhưng khi thực hiện chúng trong thực tế có thể dẫn tới các kết quả khác hẳn nhau
Sơ đồ kết hợp:
Là kết hợp giữa sơ đồ hình sao dựa trên bảng sự kiện và những bảng chiều không chuẩn hóa theo các chuẩn 1, 2, 3 và sơ đồ hình tuyết rơi trong đó tất cả các bảng chiều đều đã được chuẩn hóa Trong sơ đồ loại này chỉ những bảng chiều lớn là được chuẩn hóa còn những bảng khác chứa một khối lượng lớn các cột dữ liệu chưa được chuẩn hóa
2.1.3 Kiến trúc kho dữ liệu [3], [7]
Các chức năng của kho dữ liệu
Như trên đã phân tích, kiến trúc ba tầng là thích hợp đối kho dữ liệu, nó phản ánh được mối liên hệ giữa các dữ liệu và phù hợp với các yêu cầu của người sử dụng
Liên quan đến các thành phần của kiến trúc trên là các chức năng:
Xây dựng dữ liệu cho kho dữ liệu nghiệp vụ: Thu thập dữ liệu từ các hệ thống tác nghiệp
Xây dựng dữ liệu kho thông tin tác nghiệp: Thu thập dữ liệu từ các kho dữ liệu nghiệp vụ
Xây dựng dữ liệu cho danh mục kho dữ liệu: là sự lưu trữ vật lý tất cả các siêu
dữ liệu sử dụng và điều khiển trong kho dữ liệu, được phân chia và phân tán giữa các kho dữ liệu tác nghiệp và nhiều kho thông tin tác nghiệp.Thu thập dữ liệu từ các siêu
dữ liệu khi xây dựng kho dữ liệu
Trang 20 Các chức năng quản trị hệ thống kho dữ liệu: lưu trữ, xử lý, truy cập, truyền tin,…
Ba chức năng đầu làm nhiệm vụ tập hợp dữ liệu cho kho dữ liệu theo kiến trúc ba tầng Chức năng thứ tư cung cấp các dịch vụ và sự tiện dụng cho người sử dụng nhằm khai thác, xử lý, khai thác dữ liệu nhằm đáp ứng mọi yêu cầu về thông tin hàng ngày của con người
Người sử dụng có thể sử dụng dữ liệu và siêu dữ liệu theo nhiều cách khác nhau Dữ liệu có thể được thăm dò và phân tích để có được những kết quả theo yêu cầu, còn siêu dữ liệu chỉ thăm dò mà không phân tích được, nó chỉ giúp chúng ta hiểu
về dữ liệu mà thôi
Kiến trúc nhà kho dữ liệu
Hình 2.4 - Kiến trúc 3 tầng hệ thống kho dữ liệu
Hệ thống kho dữ liệu thường bao gồm 3 tầng như trong hình 2.4:
Tầng đáy: Là nơi lấy dữ liệu từ nhiều nguồn khác nhau sau đó làm sạch, chuẩn hóa,
lưu trữ tập trung
Tầng giữa: thực hiện các thao tác với kho dữ liệu thông qua dịch vụ OLAP (OLAP
server) Có thể cài đặt bằng Relational OLAP, Multidimensional OLAP hay kết hợp cả hai mô hình trên thành mô hình Hybrid OLAP
Tầng trên: thực hiện việc truy vấn, khai phá thông tin
Trang 212.1.4 Các bước xây dựng kho dữ liệu [7]
Các bước xây dựng kho dữ liệu:
a Xác định chiến lược cài đặt
Đây là bước đầu tiên, rất quan trọng, quyết định về cơ cấu tổ chức của kho dữ liệu Có
ba cách tiếp cận chính:
Thực hiện trên xuống (Top-down)
Thực hiện dưới lên (Bottom up)
Tổ hợp của hai cách tiếp cận trên
Cả ba cách tiếp cận này liên quan đến công việc và công nghệ
Tuỳ vào điều kiện, tình huống trong nghiệp vụ của đơn vị mà lựa chọn chiến lược cài đặt hệ thống
b Lựa chọn phương pháp và mô hình phát triển kho dữ liệu
Để phát triển hệ thống kho dữ liệu có hai phương pháp cơ bản:
Phương pháp hướng chức năng: tập trung vào chức năng là chính, dữ liệu là phụ
Phương pháp hướng đối tượng: xem hệ thống là tập các đối tượng và do vậy tập trung chính vào dữ liệu
Mỗi phương pháp cũng có mặt mạnh, mặt yếu của nó Tuỳ vào sự hỗ trợ của công nghệ, của năng lực của đội ngũ cán bộ tham gia dự án mà lựa chọn phương pháp cho thích hợp
c Xác định mục tiêu của kho dữ liệu
Việc xác định kho dữ liệu là rất phức tạp vì kho dữ liệu chính là một hệ thống các CSDL lớn, phức tạp với khối lượng dữ liệu khổng lồ và thường là không thuần nhất, bao quát nhiều lĩnh vực khác nhau
Ngoài ra còn thường xuyên xuất hiện những công nghệ mới, nhiều điều kiện mới xuất hiện thường xuyên; nhiều khái niệm về thông tin, dữ liệu của các nhà quản lý, phân tích và người sử dụng khác nhau khiến cho việc xác định mục tiêu càng trở nên khó khăn
d Xác định phạm vi của hệ thống
Trang 22Trong hầu hết các tổ chức, lý do cần phát triển kho dữ liệu là nhằm đáp ứng nhu cầu quản lý, khai thác thông tin để thực hiện công việc hay trợ giúp quyết định trong quản
lý, điều hành công việc của một nhóm người, một bộ phận hay cả tổ chức đó
e Lựa chọn kiến trúc
Có thể xây dựng kho dữ liệu theo những kiến trúc sau:
Chỉ xây dựng dữ liệu chủ đề Kiến trúc này phù hợp cho các phòng, ban trong
tổ chức có nhu cầu riêng và một kho dữ liệu đơn giản không thể đáp ứng được mọi yêu cầu của họ
Chỉ xây dựng kho dữ liệu Trong kiến trúc này, các phép xử lý đối với các nguồn dữ liệu như: làm sạch, tích hợp, tổng hợp, v.v sẽ được sử dụng chung cho mọi ứng dụng Kho dữ liệu logic phù hợp với mọi người sử dụng, hỗ trợ cho việc ra quyết định
Xây dựng kho dữ liệu và cả dữ liệu chủ đề Mỗi bộ phận có tiểu kho, được đặt trong một cơ cấu thống nhất được gọi là tổng kho, hay kho dữ liệu liên hợp
Kiến trúc Client/Server gồm hai lớp chính: lớp chủ và lớp khách Máy chủ thực hiện các chương trình trong kho, quầy dữ liệu và lưu trữ dữ liệu vào kho Máy khách thực hiện các chương trình khai thác, lập báo cáo, lưu trữ dữ liệu cục bộ, v.v
f Xây dựng chương trình và dự kiến ngân sách
Khớp nối chương trình hành động với chương trình dự án Chương trình hành động bao gồm các kế hoạch tổng hợp về các ứng dụng kho dữ liệu và vai trò của nó trong tổ chức, xã hội Chương trình dự án là các kế hoạch thực hiện cụ thể kho dữ liệu, nó phải phù hợp với thứ tự ưu tiên công việc mà chương trình hành động nêu trên đề ra
Dự trù ngân sách tương xứng với chương trình phát triển hệ thống, bao gồm tất
cả các kinh phí hoạt động: phân tích, thiết kế, cài đặt, duy trì, v.v
Bước 2: Phân tích các yêu cầu của hệ thống
Danh sách các yêu cầu đóng vai trò rất quan trọng không chỉ trong việc đặc tả, xây dựng mô hình hệ thống mà nó cả trong quá trình xây dựng và duy trì hệ thống Theo các con số thống kê về hiệu quả của các phần mềm, rất nhiều sản phẩm xây dựng xong không sử dụng được, hoặc rất kém hiệu quả sử dụng là do chưa xác định đúng và chính xác các yêu của hệ thống
a Yêu cầu về kiến trúc
Như trên đã nêu, kiến trúc hệ thống là rất quan trọng, nó quyết định nhiều tính chất và các khả năng của kho dữ liệu Kiến trúc là cơ sở để thiết lập các thành phần của một kho dữ liệu nhằm đáp ứng các nhu cầu hiện tại và tương lai của một tổ chức Chất lượng kết cấu của hệ thống được xây dựng phụ thuộc nhiều vào những yếu tố sau:
Phạm vi chức năng và các đặc tính mà hệ thống sẽ có
Trang 23 Sử dụng các chuẩn công nghệ, tuân theo các qui định chuẩn về qui trình, nghiệp
vụ và giao diện mở
Khả năng mở rộng, khả năng tương thích của hệ thống
b Xác định yêu cầu của người phát triển hệ thống
Các kiến trúc sư quan tâm đến mô hình trừu tượng, còn những người xây dựng
hệ thống lại quan tâm đến những vấn đề cụ thể của kho dữ liệu Họ có những yêu cầu
về dữ liệu, các chương trình ứng dụng, công nghệ, công cụ sử dụng để phát triển ứng dụng và những vấn đề cơ sở như máy tính, phần mềm hệ thống, mạng truyền tin, v.v
c Những yêu cầu của người sử dụng đầu cuối
Khi kho dữ liệu được xây dựng và những dữ liệu đầu tiên được đưa vào kho, sau đó được những người sử dụng đầu cuối, các nhà phân tích dữ liệu để có được sự trợ giúp quyết định trong các công việc của họ Mục đích của người sử dụng là xử lý thông tin và họ mong muốn là được sử dụng kho dữ liệu để làm được tất cả những gì
có thể
Bước 3: Thiết kế và xây dựng kho dữ liệu
a Mô hình dữ liệu đa chiều
Các nhà quản lý thường có khuynh hướng suy nghĩ theo “nhiều chiều” Ví dụ như về kết quả học tập của sinh viên:
“Với những môn học nào thì sinh viên sẽ có kết quả học tập tốt hơn qua các năm”
Ta có thể hình dung việc đánh giá kết quả học tập như một khối dữ liệu với các chiều của khối là môn học, sinh viên và năm học Giao điểm bên trong khối là giao điểm của các cạnh Với mô tả của một sự kiện đánh giá như trên thì độ đo kết quả học tập được kết hợp bởi các giá trị môn học, sinh viên và năm học (thời gian)
Trang 24Ví dụ xét trong cùng thời gian học, những sinh viên khối A thì học những môn học ban tự nhiên thường có kết quả tốt hơn những sinh viên khối C Nếu nhìn từ chiều thời gian làm mốc, sau đó tổng hợp thêm dữ liệu từ các chiều sinh viên và môn học sẽ có thể đưa ra kết quả đánh giá về học lực của sinh viên
Một khối dữ liệu không bắt buộc phải có 3 chiều mà có thể có N chiều, phụ thuộc vào yêu cầu của công việc Các chiều của khối, mà ở đó các mặt hoặc các thực thể tương ứng với những khía cạnh mà công việc ghi nhận Mỗi chiều kết hợp với một bảng chiều để mô tả cho chiều đó Ví dụ bảng chiều sinh viên thì mô tả về sinh viên đó gồm tên sinh viên, tổ, lớp, khoa, ngày sinh, quê quán… Với những chiều đặc biệt như chiều thời gian, hệ thống kho dữ liệu có thể phát sinh tương ứng với bảng chiều dựa trên loại dữ liệu Chiều thời gian trong thực tế có ý nghĩa đặc biệt đối với việc hỗ trợ cho các khuynh hướng phân tích
Hình 2.5 – Ví dụ về mô hình dữ liệu 3 chiều Một khối dữ liệu trong kho dữ liệu thường được xây dựng để đo hiệu quả của một công việc nào đó Do vậy một mô hình dữ liệu đa chiều thường được tổ chức xung quanh một chủ đề được thể hiện bởi một bảng sự kiện của nhiều độ đo số học (là các đối tượng phân tích) Ví dụ một sự kiện kết quả học tập có thể chứa điểm trung bình học tập, xếp loại học lực, khen thưởng… Mỗi độ đo phụ thuộc vào một tập các chiều cung cấp ngữ cảnh cho độ đo đó Vì thế khi các chiều kết hợp với nhau thì xác định một độ đo duy nhất, đó là một giá trị trong không gian đa chiều Ví dụ như kết hợp của loại học lực, sinh viên và thời gian sẽ cho ra kết quả học tập của sinh viên đó là gì trong khoảng thời gian đó
Các chiều có thể được phân cấp theo loại Ví dụ chiều thời gian của dữ liệu kết quả học tập của sinh viên được mô tả bởi các thuộc tính như niên khóa, năm học, kì học hoặc có nhiều cách phân loại khác phụ thuộc vào bản chất của dữ liệu và yêu cầu
sử dụng Nếu mỗi chiều chứa nhiều mức trừu tượng, dữ liệu có thể được xem từ nhiều khung nhìn linh động khác nhau Một số thao tác điển hình của khối dữ liệu như tăng mức độ trừu tượng, giảm mức độ trừu tượng hoặc tăng mức chi tiết, chọn và chiếu, và định hướng lại khung nhìn đa chiều của dữ liệu, cho phép tương tác truy vấn và phân
Trang 25tích dữ liệu rất tiện lợi Những thao tác đó được biết như xử lý phân tích trực tuyến OLAP [19]
b Thiết kế và xây dựng kho dữ liệu
Xây dựng kho dữ liệu là quá trình tích hợp dữ liệu từ các nguồn khác nhau vào một kho Các nhà phân tích nghiệp vụ có thể truy vấn kho dữ liệu và sinh các báo cáo, biểu đồ để trợ giúp quá trình ra quyết định của họ Một kho dữ liệu có thể chứa CSDL lớn toàn xí nghiệp mà người sử dụng và người quản trị có thể truy cập hoặc có thể kết hợp một số hệ thống nhỏ thường gọi là kho dữ liệu chủ đề Điển hình, mỗi KPDL gắn với một miền chủ đề bên trong một kho dữ liệu lớn
Phân tích các nguồn dữ liệu
Các hệ thống thông tin có sẵn được phát triển xung quanh các vùng nghiệp vụ của
cơ quan cần xây dựng dự án Các ứng dụng được phát triển với dữ liệu mà các dữ liệu này phù hợp với các nhu cầu khác nhau, với cùng một hệ thống dữ liệu nhưng với tên khác nhau, hoặc với các hệ thống đo lường khác nhau, định nghĩa dữ liệu thậm chí chúng có những yêu cầu về dữ liệu tương tự như nhau Kết quả cuối cùng là các nguồn
dữ liệu cần được đánh giá
Thu thập và tạo lập dữ liệu
Một phần quan trọng của việc cài đặt kho dữ liệu là sử dụng những dữ liệu đã được tinh chế từ những hệ thống tác nghiệp và đưa chúng vào một khuôn dạng thích hợp cho các ứng dụng thông tin
Có nhiều công cụ có sẵn thường chỉ có ích cho việc tinh chế những dữ liệu đơn giản Do đó việc phát triển những thủ tục tinh chế cho một số lĩnh vực ứng dụng là cần thiết cho việc tinh chế dữ liệu Các công đoạn thực hiện bao gồm:
Bóc tách dữ liệu
Lọc, làm sạch dữ liệu
Thẩm định dữ liệu
Gộp, kết tập dữ liệu
Tải dữ liệu vào kho
Lưu trữ và phát tán, phân phối dữ liệu
Bóc tách dữ liệu:
Bóc tách dữ liệu là một phép xử lí để lấy các dữ liệu đã được xác định trước ra khỏi các hệ thống tác nghiệp và các nguồn dữ liệu bên ngoài Có thể trong các hệ thống dữ liệu gốc lại có một vài vấn đề như: Không có đủ thông tin chi tiết về hệ thống
Trang 26hoặc người sử dụng đầu cuối yêu cầu thông tin ở mức thấp hơn mức thông tin của hệ thống hoạt động có thể lưu trữ
Lọc, làm sạch dữ liệu:
Sau khi dữ liệu được trích chọn, nó được tinh chế thông qua các công việc lọc, làm sạch để thu dữ liệu dữ liệu không bị thay đổi và đúng với các dữ liệu nghiệp vụ Quá trình trình lọc, làm sạch dữ liệu kiểm tra và sửa chữa các lỗi có thể có của dữ liệu
để đảm bảo tính đúng đắn của dữ liệu Công việc này bao gồm các thao tác dọn dẹp, thay đổi và tính toán lại dữ liệu
Thẩm định và chuyển đổi dữ liệu:
Tiếp theo, dữ liệu phải được kiểm tra, thẩm định để đảm chất lượng nhằm đáp ứng các yêu cầu phân tích phục vụ trợ giúp quyết định Các công cụ hỗ trợ để thực hiện những công việc nêu trên dựa vào một tập các thông số đã được xác định trước
Mục đích của việc chuyển đổi và tích hợp là chuyển dữ liệu thành thông tin và làm cho chúng dễ hiểu và dễ sử dụng hơn đối với người sử dụng đầu cuối
Mô hình dữ liệu đích có thể khác so với mô hình của dữ liệu nguồn Sự khác nhau này xảy ra khi các yêu cầu của người sử dụng khác so với dạng thức của dữ liệu Quá tình này bao gồm các công việc chuyển đổi, thao tác, sắp xếp và chọn lọc dữ liệu
Tích hợp, ghép và gộp dữ liệu:
Khi có nhiều nguồn dữ liệu thì chúng cần thiết phải được tích hợp lại để hợp nhất và tổ chức lại dữ liệu cho phù hợp với kiến trúc và nhu cầu sử dụng Quá trình tích hợp có thể là sự phối hợp các thao tác sau đây: sắp xếp và hợp nhất, chia cắt, xác định và giải quyết các vi phạm đến tính nguyên vẹn của dữ liệu, sinh ra các khoá tổng hợp
Nạp, tải dữ liệu vào kho:
Việc tải dữ liệu vào kho dữ liệu có thể thực hiện:
- Làm tươi lại dữ liệu
- Bổ sung: Tạo thêm các dữ liệu vào bảng dữ liệu, tạo hàng mới duy nhất mới bằng cách thêm giá trị thời gian vào khoá
- Cập nhật trong vùng: Giữ nguyên cấu trúc khoá ở trong hàng trừ các hàng đã bị hết thời hạn hoặc chỉ cập nhật cột không phải là khoá
- Đọc trước và tải dữ liệu: Quá trình đọc trước là việc tổ chức và quản lý các file chuẩn bị sẵn cho các tiện ích của các hệ quản trị cơ sở dữ liệu đích
- Sửa chữa và đánh giá: Trong quá trình làm sạch, chuyển đổi và tích hợp dữ liệu
có thể xảy ra lỗi, do vậy trong môi trường chứa dữ liệu nguồn phải có chức năng làm nhiệm vụ sửa lỗi này
Thời gian cho công việc tải dữ liệu về kho (có thể là hàng ngày, hàng tuần, hàng tháng, hàng quí, )
Lưu trữ và phân phát dữ liệu
Dữ liệu được phân bố từ một nền tảng nguồn tới một nền tảng đích khác Sự phân bố này có thể xảy ra trước, sau hoặc trong khi xảy ra các quá trình làm sạch, biến
Trang 27đổi và tích hợp dữ liệu Quá trình này có thể bao gồm các thao tác như vận chuyển, chuyển đổi và phân phát dữ liệu
Việc phân phát phụ thuộc vào kiến trúc của kho dữ liệu Việc phân phát chỉ cần thiết đối với các kho dữ liệu mà dữ liệu nguồn ở trên một nền tảng và kho dữ liệu, kho dữ liệu tác nghiệp hoặc OLAP chủ lại ở trên một nền tảng khác
Thiết kế kho dữ liệu nghiệp vụ
Phần trên chúng ta đã thảo luận về những kỹ thuật cần thiết để thu thập và tạo lập
dữ liệu cho kho dữ liệu nói chung Bước này căn cứ vào việc chọn lược đồ dữ liệu (hình sao, bông tuyết hay hỗn hợp), bảng sự kiện, các chiều để định hướng thiết kế kho
dữ liệu nghiệp vụ
Bước 4: Duy trì và triển khai kho dữ liệu
Triển khai liên quan tới thực tế nằm ngoài kho dữ liệu, ngoài siêu dữ liệu, liên quan tới việc thực hiện, quản lí các nhu cầu về công cụ truy vấn của người sử dụng đầu cuối, lưu trữ các dữ liệu cũ Giai đoạn triển khai đưa những thành phần phụ và cố định vào kho dữ liệu
Giai đoạn triển khai đưa vào các phần trang trí và những bộ phận bất động vào kho dữ liệu Tại giai đoạn này, công cụ truy nhập và phân tích đã phải được lựa chọn
để cung cấp tập kết quả Việc triển khai kho dữ liệu ảnh hưởng tới 3 vùng chính:
Công ty
Toàn bộ thông tin trợ giúp
Những người sử dụng đầu cuối
2.2 Khai phá dữ liệu
2.2.1 Khái niệm về khai phá dữ liệu [1]
Công nghệ khai phá dữ liệu được coi là dạng tiến hóa mới của công nghệ cơ sở
dữ liệu bắt đầu từ cuối những năm 1980 và không ngừng được phát triển về bề rộng và chiều sâu
Khai phá dữ liệu là một quá trình trích xuất thông tin có mối quan hệ hoặc có mối tương quan nhất định từ một kho dữ liệu lớn nhằm mục đích dự đoán các xu thế, các hành vi trong tương lai, hoặc tìm kiếm những tập thông tin hữu ích mà bình thường không thể nhận diện được
Trên thực tế, khai phá dữ liệu chỉ là một bước thiết yếu trong quá trình khám phá tri thức trong cơ sở dữ liệu Quá trình này bao gồm các bước sau:
Bước 1: Làm sạch dữ liệu: Loại bỏ nhiễu hoặc các dữ liệu không thích hợp;
Bước 2: Tích hợp dữ liệu: Tích hợp dữ liệu từ các nguồn khác nhau như: Cơ
sở dữ liệu, kho dữ liệu, file văn bản ;
Bước 3: Chọn dữ liệu: Ở bước này, những dữ liệu liên quan trực tiếp đến
nhiệm vụ sẽ được thu thập từ các nguồn dữ liệu ban đầu;
Trang 28 Bước 4: Chuyển đổi dữ liệu: Trong bước này, dữ liệu sẽ được chuyển đổi về
dạng phù hợp cho việc khai phá bằng cách thực hiện các thao tác nhóm hoặc tập hợp;
Bước 5: Khai phá dữ liệu: Là giai đoạn thiết yếu, trong đó các phương pháp
thông minh sẽ được áp dụng để trích xuất ra các mẫu dữ liệu;
Bước 6: Đánh giá mẫu: Đánh giá sự hữu ích của các mẫu biểu diễn tri thức dựa
vào một số phép đo;
Bước 7: Mô tả tri thức: Sử dụng các kĩ thuật trình diễn và trực quan hoá dữ liệu để biểu diễn tri thức khai phá được cho người sử dụng
Khai phá dữ liệu là một bước xử lý của quá trình khám phá tri thức: [1],[2]
Hình 2.6 – Mô tả chi tiết các bước của quá trình khám phá tri thức
2.2.2 Khuynh hướng phát triển của lĩnh vực khai phá dữ liệu
Trang web http://www.kdnuggets.com/ do Piatetsky – Shapiro chủ trì là trong những trang web điển hình về lĩnh vực khai phá dữ liệu và phát hiện tri thức trong CSDL Nhiều thông tin cập nhật nhất về lĩnh vực được thông báo tại trang web này, đặc biệt là các kết quả thăm dò, cung cấp một số thông tin hữu ích liên quan tới khuynh hướng phát triển của lĩnh vực khai phá dữ liệu Một số nội dung cụ thể về khuynh hướng nghiên cứu của khai phá dữ liệu được đề cập dưới dạng bài toán thách thức trong các hội nghị khoa học về khai phá dữ liệu [2]
Xu hướng phát triển khai phá dữ liệu đã và đang là các nội dung nghiên cứu có tính thời sự, rất đa dạng và phong phú
Vì sao cần khai phá dữ liệu
Vấn đề bùng nổ dữ liệu
Sự phát triển của các công cụ lấy dữ liệu tự động và sự phát triển của công nghệ cơ sở dữ liệu
Sự phát triển của các ứng dụng
Trang 29 Sự đa dạng của các loại dữ liệu: Số lượng bản ghi lớn (thiên văn học, viễn thông, đào tạo…), số lượng thuộc tính lớn,…
Vấn đề là làm thế nào để lấy được thông tin cần thiết/tri thức từ cơ sở dữ liệu lớn?
Hướng giải quyết: Khai phá dữ liệu
Hiện nay, ứng dụng của KPDL rất đa dạng và rộng lớn, từ kinh doanh, chống gian lận, giảm giá thành sản xuất, tăng doanh thu, phân tích hành vi sử dụng người dùng internet để mục tiêu đúng nhu cầu, đúng đối tượng hay ứng dụng hỗ trợ ra quyết định, nhiều lĩnh vực khác nhau v.v Trong đó, lĩnh vực giáo dục - đào tạo không phải ngoại lệ
Trong phạm vi luận văn, chúng tôi đã sử dụng kho dữ liệu về điểm của sinh viên
để thực hiện một số bài toán về KPDL Chẳng hạn, một số câu hỏi như: “Xu hướng điểm vào của sinh viên tăng hay giảm?”, “Sinh viên học giỏi môn toán cao cấp có kết quả học tập cao không?”, “Dự đoán tỉ lệ giới tính nữ và nam của năm học tới?”,…
2.3 Giới thiệu bộ công cụ BI trong hệ quản trị cơ sở dữ liệu SQL 2008
2.3.1 Business Intelligence (BI)
Các cơ sở dữ liệu lưu trữ dữ liệu thật sự hiệu quả như là một công cụ nghiệp vụ khi được sử dụng để hỗ trợ các quyết định kinh doanh Những quyết định này có thể mang tính chiến lược (có nên tăng điểm tuyển sinh đầu vào trong năm học tới không?),
có tính chiến thuật (chiến lược thay đổi khung chương trình nào thì tốt nhất?), Tuy nhiên, tất cả các quyết định này đòi hỏi đúng dữ liệu, vào đúng thời điểm, bằng đúng định dạng
BI là một tập hợp các hoạt động để hiểu biết một cách sâu sắc về doanh nghiệp bằng việc thực hiện các loại phân tích khác nhau trên dữ liệu của công ty cũng như trên dữ liệu để đề ra chiến lược, sách lược và điều hành các quyết định kinh doanh, thực hiện các hành động cần thiết để cải thiện tình hình kinh doanh Một vài ví dụ phổ biến nhất của việc triển khai BI là phân tích khả năng sinh lợi, nghiên cứu sở thích của sinh viên, năng lực của sinh viên, nghiên cứu sản phẩm lợi nhận, đánh giá con số bán hàng trên các sản phẩm khác nhau và các khu vực,…[10]
Trong hệ quản trị cơ sở dữ liệu SQL Server 2008 có một bộ công cụ vốn hỗ trợ và phát triển các ứng dụng BI Hệ quản trị SQL Server xây dựng dịch vụ báo cáo và dịch
vụ tích hợp là những thành phần của BI, nhưng nền tảng là dịch vụ phân tích
2.3.2 Dịch vụ phân tích
Trang 30Hình 2.8 – Các thành phần của BI
Cấu trúc của dịch vụ phân tích
Hình 2.7 - Cấu trúc của dịch vụ phân tích
Một thành phần chính là mô hình chiều thống nhất (Unified Dimensional Model – UDM), tượng trưng cho những nơi lưu trữ dữ liệu quan hệ và đa chiều Mô hình chiều thống nhất cung cấp một cầu nối từ một máy khách chẳng hạn như trong Excel hoặc dịch vụ báo cáo của BI đến một tập hợp nguồn dữ liệu không thuần nhất đa dạng Thay
vì truy cập các nguồn dữ liệu bằng những ngôn ngữ gốc của chúng, mô hình chiều thống nhất cho phép các ứng dụng máy khách gọi ra các lệnh trên mô hình chiều thống nhất
Tất cả sự giao tiếp giữa máy khách với dịch vụ phân tích của máy chủ thông qua giao thức XML/A (ADOMD, ADODB.NET, OLE DB) XML/A là một tập con của ngôn ngữ kịch bản của dịch vụ phân tích Trong đó, XML/A gởi các lệnh hành động như Create (tạo lập), Alter (sửa đổi) và Process (xử lý) để tạo khối, thay đổi một khối,
xử lý một khối,…
Dịch vụ phân tích của BI – Khai phá dữ liệu
Dịch vụ phân tích của BI chứa các tính năng và công cụ cần thiết để tạo lập các giải pháp khai phá dữ liệu phức tạp
Bộ thiết kế khai phá dữ liệu dùng để tạo, quản lý và khám phá các mô hình khai phá dữ liệu, sau đó tạo các dự báo bằng cách sử dụng các mô hình này
Khai phá dữ liệu giúp chúng ta tạo lập các quyết định thông minh về các vấn đề khó khăn của doanh nghiệp Sử dụng các công cụ khai phá dữ liệu trong dịch vụ phân tích giúp nhận ra các mẫu trong dữ liệu, do đó xác định được tại sao lại xảy ra vấn đề đó, cho phép tạo ra các luật và kiến nghị, để có thể dự báo điều gì sẽ xảy ra trong tương lai Không cần phải tạo kho dữ liệu để khai phá dữ liệu; có thể dùng dữ liệu bảng từ nhà cung cấp bên ngoài, bảng tính, và thậm chí là file văn bản
Dịch vụ phân tích cung cấp một loạt các công cụ mà bạn có thể sử dụng để xây dựng các giải pháp khai phá dữ liệu trên dữ liệu quan hệ và dữ liệu khối
Khi mô hình khai phá dữ liệu được hoàn tất, có thể triển khai (deploy) trên máy chủ khác để người dùng có thể thực hiện các phân tích và dự báo bằng cách sử dụng
Trang 31các mơ hình đĩ Cĩ thể truy cập các mơ hình khai phá dữ liệu thơng qua ứng dụng khách (như Web services),…
Dịch vụ phân tích cung cấp một tập hợp các thuật tốn khai phá dữ liệu chuẩn
Ví dụ, để dự báo các thuộc tính rời rạc (dự báo rằng sinh viên học giỏi mơn tốn để nhắm tới dự đốn học lực của sinh viên đĩ?), cĩ thể sử dụng một số thuật tốn sau:
Thuật tốn Decision Tree
Thuật tốn Naive Bayes
Thuật tốn Neural Network
…
a Giới thiệu một số thuật tốn:
Hãng Microsoft khi phát triển dịch vụ phân tích trong hệ quản trị SQL Server 2008, họ đã hồn thiện các thuật tốn thường sử dụng trong khai phá dữ liệu một cách hồn chỉnh nhất so với dịch vụ phân tích trong SQL Server 2000, 2005; bao gồm: Microsoft Decision Tree, Microsoft Clustering, Microsoft Nạve Bayes, Microsoft Time Series, Microsoft Association, Microsoft Sequence Clustering, Microsoft Neural Network, Microsoft Linear Regression, Microsoft Logistic Regression
Trong phạm vi luận văn, chúng tơi xin trình bày chi tiết hơn 2 thuật tốn sau:
a.1 Thuật tốn Decision Tree:
Thuật tốn Microsoft Decision Tree hỗ trợ cả việc phân loại và hồi quy, và tạo rất tốt các mơ hình dự đốn Sử dụng thuật tốn này cĩ thể dự đốn cả các thuộc tính rời rạc và liên tục
Trong việc xây dựng mơ hình, thuật tốn này sẽ khảo sát sự ảnh hưởng của mỗi thuộc tính trong tập dữ liệu và kết quả của thuộc tính dự đốn Và tiếp đến nĩ sử dụng các thuộc tính đầu vào để tạo thành một nhĩm phân hố gọi là các nút Khi một nút mới được thêm vào mơ hình, một cấu trúc cây sẽ được thiết lập Nút đỉnh của cây sẽ miêu tả sự phân tích của các thuộc tính dự đốn thơng qua các mẫu Mỗi nút thêm vào sẽ được tạo ra dựa trên sự sắp xếp các trường của thuộc tính dự đốn, để so sánh với dữ liệu đầu vào Nếu một thuộc tính đầu vào đựơc coi là nguyên nhân của thuộc tính dự đốn, một nút mới sẽ thêm vào mơ hình Mơ hình tiếp tục phát triển cho đến lúc khơng cịn thuộc tính nào, tạo thành một sự phân tách
để cung cấp một dự báo hồn chỉnh thơng qua các nút đã tồn tại Mơ hình địi hỏi tìm kiếm một sự kết hợp giữa các thuộc tính và trường của nĩ, nhằm thiết lập một
sự phân phối khơng cân xứng giữa các trường trong thuộc tính dự đốn Vì thế cho phép dự đốn kết quả của thuộc tính dự đốn một cách tốt nhất [10], [17]
a.1.1.Tạo Cây
Cây quyết định được tạo thành bằng cách lần lượt chia một tập dữ liệu thành các tập dữ liệu con, mỗi tập con được tạo thành chủ yếu từ các phần tử của cùng một lớp Các nút khơng phải là nút lá là các điểm phân nhánh của cây Việc phân nhánh
Trang 32tại các nút có thể dựa trên việc kiểm tra một hay nhiều thuộc tính để xác định việc phân chia dữ liệu Chúng ta chỉ xét việc phân nhánh nhị phân vì cho cây chính xác hơn
a.1.2 Entropy và Information Gain
Đây là các công thức để tính toán cho việc chọn thuộc tính để phân nhánh cây quyết định Việc chọn thuộc tính nào tại một nút để phân nhánh có thể dựa trên các chỉ số như Index hay Entropy
Giả sử thuộc tính dự đoán có m giá trị phân biệt (tức là có m lớp Ci, i=1, …, m), S
có s mẩu tin, si là số các mẩu tin trong S thuộc lớp Ci Index được tính như sau:
1.1
Entropy được tính như sau:
1.2 Giả sử thuộc tính A có n giá trị phân biệt {a1, a2,…, an} Gọi Sj là tập con của S có giá trị của thuộc tính A là aj, sij là số các mẩu tin thuộc lớp Ci trong tập
Sj Nếu phân nhánh theo thuộc tính A thì
Sau khi đã chọn được thuộc tính tốt nhất, chúng ta tạo thêm một nút phân nhánh cho cây, gán nhãn cho nút là thuộc tính được chọn và tiến hành phân chia tập