Tải bản đầy đủ (.pdf) (71 trang)

Ứng dụng một số phương pháp khai thác dữ liệu để dự đoán kết quả tốt nghiệp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.27 MB, 71 trang )

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

Cán bộ hướng dẫn khoa học : PGS.TS Lê Hoàng Thái

Luận văn Thạc sĩ được bảo vệ tại Trường Đại học Công Nghệ TP.HCM
ngày 23 tháng 4 năm 2017
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:
TT

Họ và tên

Chức danh Hội đồng

1

PGS.TS. Võ Đình Bảy

Chủ tịch

2

PGS.TS. Quản Thành Thơ

Phản biện 1

3

TS. Cao Tùng Anh

Phản biện 2



4

TS. Vũ Thanh Hiền

Ủy viên

5

TS. Nguyễn Thị Thúy Loan

Ủy viên, Thư ký

Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã được
sửa chữa (nếu có).
Chủ tịch Hội đồng đánh giá LV


TRƯỜNG ĐH CÔNG NGHỆ TP. HCM
PHÒNG QLKH – ĐTSĐH

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
TP. HCM, ngày..… tháng 3 năm 2017

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Nguyễn Hoàng Vũ

Giới tính: Nam


Ngày, tháng, năm sinh: 22/01/1985

Nơi sinh: Đồng Nai

Chuyên ngành: Công nghệ thông tin

MSHV: 1441860043

I- Tên đề tài:
Ứng dụng một số phương pháp khai thác dữ liệu để dự đoán kết quả tốt nghiệp.
II- Nhiệm vụ và nội dung:
Đề tài sử dụng các kỹ thuật k-means, thuật toán Apriori, chuyển đổi dữ liệu để
xây dựng hệ thống dự đoán kết quả tốt nghiệp của sinh viên để phục vụ cho bộ phận cố
vấn học tập trong việc giúp đỡ sinh viên có thái độ học tập tốt hơn.
III- Ngày giao nhiệm vụ: 23/01/2016
IV- Ngày hoàn thành nhiệm vụ: 29/03/2017
V- Cán bộ hướng dẫn: PGS.TS Lê Hoàng Thái
CÁN BỘ HƯỚNG DẪN

KHOA CÔNG NGHỆ THÔNG TIN

(Họ tên và chữ ký)

(Họ tên và chữ ký)

PGS.TS Lê Hoàng Thái


i


LỜI CAM ĐOAN
Tôi xin cam đoan rằng luận văn “Ứng dụng một số phương pháp khai thác
dữ liệu để dự đoán kết quả tốt nghiệp” là công trình nghiên cứu của riêng tôi. Các
số liệu, kết quả nêu trong Luận văn là trung thực và chưa từng được ai công bố
trong bất kỳ công trình nào khác.
Tôi xin cam đoan rằng không có sản phẩm nghiên cứu nào của người khác
được sử dụng trong luận văn này mà không được trích dẫn theo đúng quy định.
Học viên thực hiện Luận văn

Nguyễn Hoàng Vũ


ii

LỜI CÁM ƠN
Lời đầu tiên tôi xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới
PGS.TS. Lê Hoàng Thái – Trường Đại học Khoa học tự nhiên TP. Hồ Chí Minh
đã tận tình chỉ bảo và hướng dẫn tôi trong suốt quá trình nghiên cứu khoa học và
thực hiện luận văn này.
Tôi xin chân thành cảm ơn sự dạy bảo, giúp đỡ, tạo điều kiện và khuyến
khích tôi trong quá trình học tập và nghiên cứu của các thầy cô giáo, cán bộ quản lý
của Trường Đại học Công nghệ TP. Hồ Chí Minh.
Tôi cũng xin chân thành cám ơn Trường Đại học Khoa học xã hội & nhân
văn TP. Hồ Chí Minh đã tạo điều kiện về thời gian và công tác để tôi tham gia và
hoàn thành khóa đào tạo chương trình Cao học này.
Và cuối cùng, tôi xin gửi lời cảm ơn tới gia đình, người thân và bạn bè những người luôn ở bên tôi những lúc khó khăn nhất, luôn động viên tôi, khuyến
khích tôi trong cuộc sống và trong công việc.
Tôi xin chân thành cảm ơn!
TP.HCM, ngày tháng năm 2017


Nguyễn Hoàng Vũ


iii

TÓM TẮT
Đề tài được chia là 2 giai đoạn:
Giai đoạn 1: đề tài sử dụng cơ sở dữ liệu điểm trung bình 8 học kỳ của những
sinh viên đã tốt nghiệp tại trường ĐH Khoa học xã hội & nhân văn, sử dụng thuật
toán K-means để gom cụm dữ liệu dựa vào độ tương đồng được tính bằng khoảng
cách Euclide. Qua bước chuyển dữ liệu điểm cho ra thành biến ngôn ngữ, dùng
thuật toán Apriori để sinh luật cho quá trình dự đoán kết quả.
Giai đoạn 2: dựa vào tập luật đã có ở giai đoạn 1, dùng cây quyết định để dự
đoán kết quả của sinh viên dựa vào các giá trị điểm trung bình được nhập vào từ
ứng dụng.
Từ hai giai đoạn trên đề tài xây dựng hệ thống dự đoán kết quả tốt nghiệp
của sinh viên để hỗ trợ cho các cố vấn học tập kịp thời tư vấn cho sinh viên trong
quá trình học đại học.


iv

ABSTRACT
The study is divided into two phases:
Phase 1: The topic uses a database of eight semesters of graduates from the
University of Social Sciences and Humanities, using K-means algorithm to
aggregate data sets based on Similarity is calculated by the Euclidean distance. By
fuzzing the point data into language variables, Apriori algorithm is used to generate
the rule for the prediction process.
Phase 2: Based on the first set of rules, use decision trees to predict student

outcomes based on the average scores entered from the application.
Based on the two phases, the study builds on student graduation forecasting
systems to assist the academic counselor in timely counseling students during
college.


v

MỤC LỤC
TÓM TẮT .............................................................................................................. iii
ABSTRACT ............................................................................................................iv
MỤC LỤC ................................................................................................................ v
DANH MỤC HÌNH ẢNH ................................................................................... viii
DANH MỤC CÁC BẢNG BIỂU ...........................................................................ix
CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN ............................................................. 1
1. Mở đầu .................................................................................................................1
2. Giới thiệu .............................................................................................................1
3. Các nghiên cứu liên quan ....................................................................................3
3.1 Các nghiên cứu trên thế giới .........................................................................3
3.2 Các nghiên cứu trong nước ...........................................................................5
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT ........................................................................ 6
2.1. Một số định nghĩa .............................................................................................6
2.2. Xác định sự tương đồng giữa các chuỗi ...........................................................6
2.2.1. Khoảng cách Euclide .................................................................................7
2.2.2. Chuẩn hóa chuỗi giá trị .............................................................................7
2.2.3. Độ tương đồng dựa trên dãy con chung dài nhất ......................................8
2.3. Khám phá tri thức dựa trên cơ sở dữ liệu chuỗi ...............................................8
2.3.1. Tiền xử lý dữ liệu ......................................................................................9
2.3.2. Khám phá luật..........................................................................................10
2.4. Các kỹ thuật khám phá tri thức .......................................................................10

2.4.1. Gom cụm trên cơ sở dữ liệu chuỗi ..........................................................10
2.4.2. Thuật toán khai thác luật kết hợp ............................................................13
2.4.3. Phân lớp dữ liệu bằng cây quyết định .....................................................21
CHƯƠNG 3. XÂY DỰNG HỆ THỐNG LUẬT .................................................. 32
3.1 Phát biểu bài toán ............................................................................................ 32
3.2 Mục tiêu của đề tài .......................................................................................... 32
3.2.1 Về mặt lý thuyết:.......................................................................................33
3.2.2 Về mặt ứng dụng: .....................................................................................33
3.2.2.1 Xây dựng tập luật ...............................................................................33


vi

3.2.2.2 Tiến hành dự đoán cho sinh viên .......................................................36
3.3 Minh họa các bước thực hiện bài toán ............................................................ 37
3.3.1 Chuẩn hóa dữ liệu: ....................................................................................38
3.3.2 Gom cụm dữ liệu ......................................................................................38
3.3.3 Chuyển đổi dữ liệu ....................................................................................40
3.3.4 Xây dựng tập luật:.....................................................................................40
3.3.5 Tiến hành dự đoán cho sinh viên ..............................................................42
3.3.6 Kết luận .....................................................................................................44
CHƯƠNG 4. TRIỂN KHAI ỨNG DỤNG VÀ KẾT QUẢ THỰC NGHIỆM .... 45
4.1. Làm sạch dữ liệu .............................................................................................45
4.2. Chuẩn hóa dữ liệu ...........................................................................................47
4.3. Xây dựng tập luật ............................................................................................48
4.3.1. Độ tương đồng dựa trên chuẩn hóa chuỗi dữ liệu ..................................48
4.3.2. Khám phá luật dựa vào thuật toán Apriori trên dữ liệu đã gom cụm .........51
4.3.3. Khám phá tri thức dựa trên cơ sở dữ liệu chuỗi .........................................54
4.3.4. Phân lớp dữ liệu bằng cây quyết định........................................................55
CHƯƠNG 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ...................................... 57

5.1. Kết quả đạt được .............................................................................................57
5.2. Nhận xét ..........................................................................................................57
5.2.1. Ưu điểm: ..................................................................................................57
5.2.2. Khuyết điểm: ...........................................................................................58
5.3. Hướng phát triển .............................................................................................58


vii

DANH MỤC CÁC CHỮ VIẾT TẮT
Ký hiệu, viết tắt

Ý nghĩa tiếng Việt

Ý nghĩa tiếng Anh

HK

Học kỳ

Semester

CSDL

Cơ sở dữ liệu

Database

CMND


Chứng minh nhân dân

Identity card


viii

DANH MỤC HÌNH ẢNH
Hình 2.1 Minh họa chuỗi kết quả .................................................................................6
Hình 2.2 Minh họa biến đổi chuẩn hóa dữ liệu .........................................................10
Hình 2.3 Minh họa kết quả thuật toán AprioriTID ....................................................19
Hình 2.4 Sơ đồ đường đi của cây quyết định cho bảng 1.3 .......................................22
Hình 2.5 Minh họa cho cây quyết định ......................................................................29
Hình 3.1 Sơ đồ các bước sinh luật của đề tài .............................................................34
Hình 3.2 Sơ đồ các bước dự đoán kết quả cho sinh viên ..........................................36
Hình 3.3 Sơ đồ đường đi của cây quyết định cho bảng 3.7 .......................................44
Hình 4.1 Danh sách số phần tử thuộc nhóm ..............................................................51
Hình 4.2 Danh sách luật được xây dựng ....................................................................52


ix

DANH MỤC CÁC BẢNG BIỂU
Bảng 2.1 Ví dụ minh họa biễu diễn cơ sở dữ liệu dưới dạng nhị phân .....................15
Bảng 2.2 Ví dụ dữ liệu minh họa cho cây quyết định ...............................................22
Bảng 2.3 Cơ sở dữ liệu minh họa cho việc tính các chỉ số độ đo .............................28
Bảng 3.1 Bảng dữ liệu điểm của sinh viên theo học kỳ ............................................37
Bảng 3.2 Bảng dữ liệu sau khi chuẩn hóa ..................................................................38
Bảng 3.3 Ma trận thể hiện độ tương đồng giữa các sinh viên ...................................39
Bảng 3.4 Bảng trọng tâm được tính từ thuật toán k-means .......................................40

Bảng 3.5 Dữ liệu các nhóm sau khi gom cụm ...........................................................40
Bảng 3.6 Dữ liệu điểm của những sinh viên thuộc nhóm 3 ......................................41
Bảng 3.7 Dữ liệu minh họa cho cây quyết định.........................................................43
Bảng 4.1 Dữ liệu lưu trữ thông tin sinh viên .............................................................45
Bảng 4.2 Dữ liệu sinh viên theo niên khóa ................................................................46
Bảng 4.3 Minh họa chuẩn hóa dữ liệu .......................................................................48
Bảng 4.4 Minh họa chuẩn hóa dữ liệu chuỗi dữ liệu .................................................49
Bảng 4.5 Tính độ tương đồng giữa các sinh viên ......................................................50
Bảng 4. 6 Trọng tâm của từng nhóm .........................................................................50
Bảng 4.7 Gom nhóm sinh viên theo trọng tâm ..........................................................51
Bảng 4.8 Dữ liệu làm tròn điểm số của sinh viên ......................................................52
Bảng 4.9 Dữ liệu minh họa cho khám phá tri thức ....................................................54
Bảng 4.10 Dữ liệu sau khi biến đổi ............................................................................55
Bảng 4.11 Dữ liệu minh họa cho cây quyết định ......................................................56


1

CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN
1. Mở đầu
Hiện nay, việc ứng dụng công nghệ thông tin vào các hoạt động kinh tế, xã
hội đã tạo nên các cơ sở dữ liệu khổng lồ. Để khai thác các thông tin hữu ích từ
nguồn dữ liệu to lớn này một cách hiệu quả, chúng ta cần những công cụ và kỹ thuật
thích hợp.
Các kỹ thuật truyền thống đã không thể giúp khai thác triệt để những thông
tin hữu ích mà một cơ sở dữ liệu mang lại, thường thì các thông tin do sử dụng kỹ
thuật cũ không mang lại hiệu quả cao trong việc ra quyết định.
Khám phá tri thức từ cơ sở dữ liệu phát triển trong những năm gần đây và
thu hút sự quan tâm của các nhà nghiên cứu và những người làm công tác quản lý.
Khai thác dữ liệu (Data Mining) được xem là một giai đoạn của quá trình

khám phá tri thức, các kỹ thuật khai thác giúp chuyển khối dữ liệu to lớn thành các
thông tin và tri thức hữu dụng, ứng dụng rộng lớn bao gồm: phân tích thị trường,
quản lý thương mại, hỗ trợ ra quyết định,…
Trong thời gian qua, đã có nhiều nghiên cứu về việc dự đoán kết quả học tập
của học sinh, sinh viên, nhưng chủ yếu khai khoáng dữ liệu dưới dạng các bảng,
không quan tâm đến yếu tố thời gian. Nghiên cứu này mong muốn trình bày một
phương pháp khám phá tri thức trong cơ sở dữ liệu dưới một cái nhìn khác hơn, đó
là xem xét cơ sở dữ liệu quản lý sinh viên như là một cơ sở dữ liệu liên tục theo thời
gian. Kết quả học tập của sinh viên được ghi nhận theo từng học kỳ, năm học.
Với kỹ thuật khai thác dữ liệu như trên, việc dự đoán kết quả học tập và kết
quả tốt nghiệp của sinh viên sẽ đạt được độ chính xác trong khoảng chấp nhận
được.
2. Giới thiệu
Hiện nay, cùng với sự tăng trưởng của dữ liệu thông tin về nhiều lĩnh vực
khác nhau, vấn đề dự đoán hay khai phá những kết quả mới từ dữ liệu có sẵn là một
hướng nghiên cứu thu hút sự quan tâm của nhiều nhà nghiên cứu.


2

Lĩnh vực giáo dục cung cấp nhiều ứng dụng lý thú và đầy thử thách cho khai
thác dữ liệu. Một tổ chức giáo dục thường có nhiều nguồn thông tin phân tán và
khác nhau, những nguồn này thường là dữ liệu truyền thống (thông tin về sinh viên,
giảng viên, lớp học, lịch học, điểm,…) và gần đây là cơ sở dữ liệu đa phương tiện.
Có nhiều mối quan tâm khác nhau trong lĩnh vực giáo dục tạo cơ sở cho
nhiều yêu cầu trong khai thác dữ liệu. Ví dụ: Tìm kiếm thông tin nhập học, dự đoán
số lượng sinh viên đăng ký học, hỗ trợ sinh viên chọn môn học, dự đoán về tình
hình việc làm của sinh viên sau khi ra Trường,…tất cả ứng dụng về khai thác dữ
liệu không những đóng góp cho các cơ sở giáo dục để nâng cao chất lượng tốt hơn
mà còn hỗ trợ công việc quản lý.

Với lượng thông tin quá nhiều và những nhu cầu khác nhau, có thể thấy là
một hệ thống khai thác dữ liệu tích hợp có khả năng phục vụ các nhu cầu đặc biệt
của các cơ sở giáo dục sẽ trở thành nhu cầu lớn trong thời gian sắp tới.
Đề tài này trình bày một ứng dụng thực tiễn trong lĩnh vực giáo dục. Giáo
dục được xem là một yếu tố quan trọng đóng góp cho sự phát triển kinh tế, xã hội.
Ở Việt Nam, sinh viên thường phải tích lũy các môn học trong 4 năm học,
mỗi năm học được chia thành 2 học kỳ chính và 1 học kỳ hè. Kết thúc 1 học kỳ,
sinh viên được tổng kết điểm trung bình tích lũy cho học kỳ đó. Áp dụng tương tự
cho năm học và toàn khóa học.
Đề tài này dựa trên kết quả học tập từng học kỳ của sinh viên để dự đoán kết
quả đạt được của sinh viên trong học kỳ tiếp theo và trong toàn khóa học. Ngoài ra,
có thể tìm ra được các sinh viên cá biệt. Phương pháp sử dụng để dự đoán kết quả
học tập của sinh viên là khai thác dữ liệu.
Khám phá tri thức được chia làm hai giai đoạn chính:
-

Giai đoạn tiền xử lý: chọn lọc, làm sạch dữ liệu, mã hóa dữ liệu,…

-

Giai đoạn khai thác dữ liệu: tùy theo dữ liệu và mục tiêu khai thác mà có
những kỹ thuật khác nhau.

Tóm tắt một vài phương pháp khai thác dữ liệu liên quan đến đề tài:


3

-


Gom cụm dữ liệu: mục tiêu là nhận dạng ra những mẫu giống nhau để có
kết luận tương tự.

-

Khám phá luật: khám phá dữ liệu nhằm kết luận “Nếu xuất hiện X thì sẽ
xuất hiện gì tiếp theo?”.

Khai thác dữ liệu đã có rất nhiều trong lĩnh vực kinh tế xã hội, khoa học kỹ
thuật, nhưng trong lĩnh vực giáo dục và đào tạo thì chưa nhiều. Trong giáo dục, việc
đánh giá kết quả, chất lượng của sinh viên là quan trọng, nhưng đôi khi vẫn còn
mang tính cảm tính và cục bộ. Đề tài mong muốn áp dụng phương pháp khai thác
dữ liệu trên cơ sở dữ liệu điểm của sinh viên trong nhiều năm, bằng cách biến đổi
phù hợp, từ đó đưa ra thông tin chính xác về thực trạng của sinh viên, đặc biệt là
cung cấp thông tin mang tính dự đoán.
Qua các thông tin thu được, người dùng sẽ có một cái nhìn tổng quan về kết
quả học tập của sinh viên để đề ra phương hướng, các biện pháp giáo dục thích hợp
trong các năm học sau.
3. Các nghiên cứu liên quan
Trong thời gian gần đây, khai thác dữ liệu đã trở thành một trong những
hướng nghiên cứu chính trong lĩnh vực khoa học máy tính và công nghệ tri thức ở
trong nước và ngoài nước. Khai thác dữ liệu đã và đang ứng dụng thành công vào
thương mại, tài chính, thị trường chứng khoán, y học, thiên văn, sinh học, giáo dục,
viễn thông,…
3.1 Các nghiên cứu trên thế giới
-

Dự đoán trước về thứ bậc điểm trung bình của sinh viên tốt nghiệp: cách tiếp

cận về khai thác dữ liệu của Ahmet Tekin được giới thiệu vào năm 2014 [1], bài báo

đã nêu lên tầm quan trọng của cơ sở dữ liệu giáo dục có chứa các dữ liệu có giá trị
và tác giả đã thực hiện khai thác dữ liệu này để giúp các học sinh yếu kém cải thiện
thành tích trong quá trình học tập. Trong đó, tác giả sử dụng các kỹ thuật phân
nhóm dữ liệu, phân lớp và hồi quy với các phương pháp như K-means phân nhóm
dữ liệu, mạng nơron, và máy hỗ trợ vector (SVM) có thể được sử dụng để dự đoán.


4

Kết quả đầu ra cuối cùng là có thể xác định được là học sinh sẽ cần giúp đỡ thêm
những gì để cải thiện điểm trung bình trong kỳ thi tốt nghiệp.
-

Năm 2012, Edin Osmanbegovic, Mirza Suljic đã nêu lên cách tiếp cận kỹ

thuật khai thác dữ liệu để dự đoán kết quả học tập của sinh viên [3], việc sử dụng kỹ
thuật khai thác dữ liệu với mục đích là để phát triển một mô hình từ đó lấy được các
kết luận về kết quả học tập của sinh viên. Phương pháp và kỹ thuật khai thác dữ liệu
khác nhau được so sánh trong việc dự đoán để từ đó tác giả đánh giá kỹ thuật nào
hiệu quả hơn. Việc xác định quá trình học tập có thể đưa ra một mô hình nền tảng
cho sự phát triển của hệ thống hỗ trợ ra quyết định trong giáo dục đại học. Trong
bài báo tác giả so sánh ba thuật toán phân lớp: Naive Bayes, MLP (thuật toán
Multilayer Perceptron), J48 (thuật toán C4.5 trong Weka).
-

Sahil P. Karkhanis, Shweta S. Dumbre trong năm 2015 đã nêu lên một

nghiên cứu về ứng dụng của khai thác và phân tích dữ liệu trong lĩnh vực giáo dục
[8], tác giả đã nêu lên tầm quan trọng của việc sử dụng kỹ thuật và thuật toán khai
thác dữ liệu giáo dục và từ đó đưa ra những hiểu biết về các kết quả dự kiến của các

sinh viên. Tác giả nêu ra ba kỹ thuật khai thác dữ liệu dự đoán, gom nhóm và mối
quan hệ để khai thác dữ liệu trong dữ liệu giáo dục, những kết quả này cũng giúp
các nhà quản lý trong việc đưa ra quyết định và trả lời một số câu hỏi về khả năng
học tập của sinh viên, từ đó có những thay đổi về phương pháp giảng dạy của giáo
viên. Bài báo này về cơ bản là một nghiên cứu các thuật toán trên dữ liệu giáo dục
nhằm mục đích phục vụ cho ngành giáo dục.
-

Dự đoán kết quả của học sinh bằng phương pháp thống kê và khai thác dữ

liệu đã được V.Ramesh, P.Parkavi, K.Ramar đưa ra vào năm 2013 [9], việc dự đoán
kết quả của một sinh viên là một mối quan tâm lớn cho nhà quản lý giáo dục đại
học. Bài viết xác định các yếu tố ảnh hưởng đến kết quả học tập của sinh viên trong
các kỳ thi và tìm ra một thuật toán khai thác dữ liệu phù hợp để dự đoán kịp thời
mức độ học tập của sinh viên từ đó đưa ra một cảnh báo thích hợp cho sinh viên có
kết quả học tập yếu kém. Công việc này sẽ giúp các cơ sở giáo dục xác định những


5

học sinh yếu kém để cung cấp thêm thông tin đào tạo tốt hơn cho những học sinh
này, tác giả sử dụng WEKA để kiểm tra kết quả.
3.2 Các nghiên cứu trong nước
-

Năm 2013, Võ Thị Ngọc Liên sử dụng phương pháp hồi quy Bayes để dự

đoán kết quả học tập của sinh viên [13], luận văn này thực hiện nhằm mục đích hỗ
trợ dự đoán kết quả học tập cuối cùng của sinh viên trường nghề, tác giả sử dụng
thuật toán chính là phân lớp Naive Bayes, thuật toán này cho xác suất kết quả cao.

Phương pháp phân tích hồi quy để dự đoán các yếu tố ảnh hưởng đến kết quả học
tập.
-

Năm 2012, Nguyễn Thị Thanh Thủy [12] đã nghiên cứu cơ sở lý thuyết liên

quan đến ba kỹ thuật cây quyết định, luật kết hợp và Naïve Bayes, nghiên cứu quy
trình triển khai ứng dụng khai phá dữ liệu. Ngoài ra, đề tài cũng tìm hiểu các vấn đề
cơ bản về dịch vụ Microsoft SQL Server 2008 R2 Analysis Services và các công cụ
liên quan để dự đoán kết quả học tập của sinh viên. Đề tài đã giải quyết được phần
những yêu cầu đã được đặt ra và có thể phát triển trong tương lai.


6

CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
2.1. Một số định nghĩa

Hình 2.1 Minh họa chuỗi kết quả
Định nghĩa 2.1: Chuỗi X = (x1, x2,…, xn) là một tập n giá trị xi được ghi nhận
trong một khoảng thời gian bằng nhau và được sắp theo thứ tự thời gian.
Khoảng thời gian giữa hai giá trị liên tiếp nhau có thể được chọn tùy theo
lĩnh vực hoặc nội dung mà nó biểu diễn.
Các chuỗi X có bản chất giống nhau, dữ liệu có thể rất dài, có thể chứa hàng
triệu, hàng tỉ giá trị.
Định nghĩa 2.2: Cho chuỗi X = (x1, x2,…, xn) có chiều dài n, một dãy con S
của X là một dãy có chiều dài m (1 ≤ m ≤ n) các giá trị liền nhau trong X.
S = (xk,…, xk+m-1), 1 ≤ p ≤ n – m + 1

(2.1)


Có n – m + 1 dãy con có chiều dài m
Ví dụ 2.1: Cho X = (4, 5, 2, 8, 6), các dãy con có 3 phần tử của X gồm: S1 =
(4, 5, 2), S2 = (5, 2, 8) và S3 = (2, 8, 6).
Định nghĩa 2.3: Cho chuỗi X = (x1, x2,…, xn) có chiều dài n, các giá trị xi
được xác định trong khoảng thời gian từ t1 đến tn, ti là thời gian xác định xi.
2.2. Xác định sự tương đồng giữa các chuỗi


7

Để xác định độ tương đồng giữa các chuỗi, cần xây dựng một độ đo để đánh
giá mức độ tương đồng. Mỗi độ đo chỉ thích hợp với một vài lĩnh vực nào đó, vì vậy
có nhiều độ đo xác định độ tương đồng được xây dựng.
2.2.1. Khoảng cách Euclide
Phương pháp này tính toán độ tương đồng giữa các chuỗi có độ dài bằng nhau.
- Xem một chuỗi X = (x1, x2,…, xn) là một điểm trong không gian Euclide
n-chiều.
- Độ tương đồng giữa hai chuỗi được định nghĩa như là khoảng cách giữa hai
điểm trong không gian Rn.
1

d(X,Y) = (∑𝑛𝑖=1 |𝑥𝑖 − 𝑦𝑖 |2 )2

(2.2)

Trong đó, X = (x1, x2,…, xn) và Y = (y1, y2,…, yn) là các chuỗi đang xét.
Độ tương đồng Euclide có nhiều ưu điểm như dễ tính toán, giải quyết được
nhiều bài toán khác nhau (đánh chỉ mục, gom cụm,…).
Tuy vậy, cũng có khuyết điểm là không cho phép có biên độ dao động khác nhau.

Ví dụ 2.2: giá trị của X từ 20 đến 40, giá trị của Y từ 60 đến 100 thì không
xác định được độ tương đồng.
2.2.2. Chuẩn hóa chuỗi giá trị
Cho chuỗi X = (x1, x2,…, xn), chuẩn hóa X được ký hiệu là 𝑋̅ =
(𝑥̅1 , ̅̅̅,
𝑥2 … , ̅̅̅)
𝑥𝑛 và được định nghĩa như sau:
𝑥̅𝑖 = 𝑥𝑖 − 𝐸𝑥

(2.3)

Trong đó, Ex là giá trị trung bình của các giá trị xi.
Ví dụ 2.3: Cho X = (4, 5, 6, 7, 8), Ex = 6, thì 𝑋̅ = (−2, −1, 0, 1, 2)
Sau khi chuẩn hóa chuỗi, dùng khoảng cách Euclide để đo độ tương đồng
giữa hai chuỗi tương ứng.
Nếu độ tương đồng chỉ dựa trên khoảng cách Euclide, gặp trường hợp giá trị


8

có biên độ dao động khác nhau thì kết quả sẽ không tương đồng.
2.2.3. Độ tương đồng dựa trên dãy con chung dài nhất
Cho hai chuỗi X = (x1, x2,…, xn) và Y = (y1, y2,…, yn)
Đặt X’ = (xi1, xi2,…, xil) và Y’ = (yj1, yj2,…, yjl) lần lượt là hai dãy con của X, Y.
X’ và Y’ được gọi là tương đồng nếu:
(a)

ik < ik+1, jk < jk+1

(b)


xik = yjk

Độ tương đồng của X và Y là số phần tử nằm trong cặp tương đồng X’ và Y’.
Ví dụ 2.4: Cho X = (3, 2, 4, 5, 9) và Y = (2, 7, 4, 9, 6)
Chuỗi con tương đồng dài nhất là (2, 4, 9)
Độ tương đồng là 3
Sử dụng một độ tương đồng phù hợp để xây dựng mối liên hệ giữa hai chuỗi.
2.3. Khám phá tri thức dựa trên cơ sở dữ liệu chuỗi
Hiện nay, khám phá tri thức dựa trên cơ sở dữ liệu chuỗi có nội dung phong
phú, các nhà khoa học bắt đầu khám phá các tính chất cục bộ, địa phương như: các
mẫu tuần hoàn, các mẫu tương đồng, luật kết hợp, hành vi,…
Đề tài sẽ tập trung khám phá luật kết hợp trên các mẫu đặc trưng được trích
ra từ cơ sở dữ liệu.
Quá trình khám phá tri thức bao gồm: làm sạch và lọc dữ liệu, nhận dạng các
thuộc tính quan trọng, trích ra các luật kết hợp để dự đoán tương lai, khám phá tri
thức để hỗ trợ cho quá trình ra quyết định.
Các giai đoạn thực hiện:
- Giai đoạn tiền xử lý:
 Làm sạch dữ liệu thô.


9

 Định danh các đặc điểm mô tả cơ sở dữ liệu.
 Xác định các mẫu đặc trưng trên các dãy con (gom cụm).
- Giai đoạn khai thác:
 Trích xuất các luật.
 Thu gọn các luật để được tập luật hoàn chỉnh, hữu dụng.
2.3.1. Tiền xử lý dữ liệu

Thực hiện gom cụm các dãy con trên cơ sở dữ liệu, khi các dãy con được
gom cụm, có thể áp dụng các phương pháp tìm luật từ các dãy. Nói cách khác, khi
chuyển dữ liệu sang dạng biểu diễn khác là cơ sở dữ liệu các mẫu đặc trưng, mỗi
record biểu diễn một chuỗi tương ứng. Các record trong cơ sở dữ liệu mới này chứa
một dãy các định danh nhóm tương ứng dãy con tại vị trí đó.
Các bước thực hiện:
- Chọn độ rộng của dãy con thích hợp.
- Ghi nhận các dãy con bằng cách duyệt qua toàn chuỗi, tại một vị trí xác
định một chuỗi con theo độ rộng đã chọn. Thực hiện gom cụm các dãy con thu được
này bằng một độ đo thích hợp.
- Mỗi nhóm được gán một định danh duy nhất, khi duyệt qua chuỗi, mỗi dãy
con tương ứng với một nhóm được gán định danh của nhóm tương ứng chứa dãy
con đó, các dãy con trông cùng nhóm gọi là cùng mẫu.
Ví dụ 2.5: Cho chuỗi X = (1, 2, 1, 2, 1, 2, 3, 2, 3, 4, 3, 4)
Chọn độ rộng là 3 và chọn độ tương đồng là phương pháp chuẩn hóa. Duyệt
chuỗi, tại mỗi vị trí đặt một định danh:
a1 = (1, 2, 1)
a2 = (2, 1, 2)
a3 = (1, 2, 3)


10

Chuỗi X trở thành dạng sau:
X = (a1, a2, a1, a2, a3, a1, a2, a3, a1, a2)
Dữ liệu ban đầu
X

1


2

1

2

1

2

3

2

3

4

3

4

Dữ liệu sau khi biến đổi
X

a1

a2

a1


a2

a3

a1

a2

a3

a1

a2

Hình 2.2 Minh họa biến đổi chuẩn hóa dữ liệu
2.3.2. Khám phá luật
Giai đoạn tiếp theo là khai thác các luật trên cơ sở dữ liệu đã được biến đổi
trong giai đoạn tiền xử lý, các luật thu được là các luật liên kết các mẫu.
Luật đơn giản nhất có dạng: “Nếu A xuất hiện thì B sẽ xuất hiện”. Trong
đó, A và B là các mẫu được xây dựng trên chuỗi. Các luật phải thỏa độ tin cậy chọn
trước. Trong nhiều trường hợp, người ta quan tâm đến thời điểm xuất hiện: “Nếu A
xuất hiện ở thời điểm t1 thì B sẽ xuất hiện ở thời điểm t2”.
Ví dụ 2.6: Cơ sở dữ liệu ghi nhận nhiệt độ tại nhiều vùng khác nhau, luật sau
đây thể hiện thời điểm xuất hiện: “Nếu nhiệt độ tại vùng A tăng liên tục trong 5
ngày thì nhiệt độ vùng B sẽ tăng sau đó 10 ngày”.
- Mở rộng luật đơn giản sang dạng phức tạp hơn: “Nếu A1, A2,…, Ak xuất
hiện thì B sẽ xuất hiện”.
- Một hướng khám phá khác: “Nếu A xuất hiện thì điều gì sẽ xảy ra?”.
2.4. Các kỹ thuật khám phá tri thức

2.4.1. Gom cụm trên cơ sở dữ liệu chuỗi
Gom cụm các chuỗi thành từng nhóm sao cho độ tương đồng của các chuỗi
trong cùng nhóm cao nhất và các chuỗi trong các nhóm khác nhau thì độ tương


11

đồng thấp. Nói cách khác, gom cụm dữ liệu là tạo ra một phép phân hoạch trên cơ
sở dữ liệu, mỗi một chuỗi chỉ thuộc về một nhóm duy nhất.
Cho X là một chuỗi và C1, C2,…, Ck là các nhóm thu được sau khi thực hiện
gom cụm thì các nhóm phải thỏa tính chất:
(a)

∀i, j € [1,…, k], Ci ∩ Cj = Ø

(b)

⋃𝑘𝑖=1 𝐶𝑖 = 𝑇

Duyệt qua toàn bộ cơ sở dữ liệu và sử dụng một độ đo tương đồng thích hợp
gom cụm các đối tượng. Có nhiều phương pháp gom cụm có thể thực hiện được
trên cơ sở dữ liệu và cho kết quả tốt.
Phương pháp gom cụm có thể chia làm 2 loại: phương pháp dựa trên độ
tương đồng và phương pháp dựa trên mô hình. Đề tài tập trung vào phương pháp
gom cụm dựa trên độ tương đồng, một phương pháp được xem là phù hợp với
ứng dụng.
Mỗi chuỗi được xem như là một điểm trong không gian n chiều, theo phương
pháp đo độ tương đồng, xác định một khoảng cách hay một hàm tương đồng giữa
mỗi cặp dữ liệu, sau đó sử dụng đến các kỹ thuật gom cụm. Độ đo tương đồng được
sử dụng nhiều nhất là khoảng cách Euclide.

Có nhiều thuật toán gom cụm khác nhau dựa trên độ đo tương đồng, đề tài
trình bày hai thuật toán gom cụm là Greedy và k-means.
2.4.1.1. Phương pháp k-means
Đây là phương pháp được sử dụng phổ biến. Ý tưởng của phương pháp này
là từ tập ban đầu tìm ra một phép phân hoạch vào trong k tập con (nhóm), trong đó
k là số nguyên dương cho trước. Trong mỗi nhóm có một phần tử đặc biệt đại diện
cho nhóm, gọi là trọng tâm của nhóm. Một phần tử được xem xét có thuộc nhóm
nào đó hay không, tùy thuộc vào khoảng cách từ nó đến phần tử trọng tâm.
Định nghĩa phần tử trọng tâm:


12

Phần tử trọng tâm (điểm trọng tâm) của một nhóm là phần tử có giá trị trung
bình cộng của tất cả các phần tử trong nhóm. Phần tử trọng tâm này có thể xem là
phần tử đại diện cho nhóm.
Điểm trọng tâm r của nhóm C được tính như sau:
r=

1
|𝐶|

∑𝑥 € 𝐶 𝑥

(2.4)

Trong phương pháp k-means, thay vì tính khoảng cách giữa các cặp phần tử
trong cùng nhóm với nhau, ta tính khoảng cách từ mỗi phần tử đến phần tử trọng tâm
của nhóm. Trong thuật toán, các phần tử trọng tâm ban đầu của k nhóm được chọn
ngẫu nhiên từ các điểm trong tập cần phân hoạch. Trong mỗi lần lặp, mỗi phần tử được

phân vào nhóm có trọng tâm gần nó nhất, sau đó trọng tâm của nhóm được tính lại.
Thuật toán k-means:
Gọi D là tập dữ liệu cần phân hoạch, k là số nguyên dương (số nhóm). Kết
quả thu được sẽ là danh sách k nhóm: C1, C2,…, Ck.
- Lặp i = 1 đến k: chọn ngẫu nhiên ri € D làm trọng tâm của Ci.
- Trong khi có sự thay đổi trong các nhóm Ci
 Với mỗi x € D
 Tính khoảng cách từ x đến ri gọi là d(x,ri), i = 1,…,k
 Đưa x vào nhóm Cj nếu d(x,rj) ≤ d(x,ri), i ≠ j
 Lặp i = 1 đến k: tính lại các trọng tâm ri
Một dạng cải tiến của thuật toán k-means là xét mỗi phần tử và tính lại phần
tử trọng tâm của nhóm bất cứ khi nào có một phần tử được thêm vào, lặp lại chu
trình qua các phần tử cho đến khi tình trạng các nhóm không còn thay đổi.
Việc tìm kiếm trong thuật toán k-means bị hạn chế trong không gian phân hoạch,
có thể bỏ qua giải pháp gom cụm tốt nhất. Người ta có thể khắc phục khuyết điểm này
bằng cách thực hiện nhiều lần thuật toán với các điểm trọng tâm ban đầu được chọn khác


13

nhau và chọn một kết quả tốt nhất. Thời gian thực hiện sẽ tăng lên rất nhiều.
2.4.1.2. Phương pháp Greedy
Phương pháp Greedy đặc biệt hiệu quả và thích hợp với trường hợp số lượng
nhóm k và bán kính nhóm d đã xác định trước. Ta cũng xem một chuỗi như một
điểm trong không gian Rn và sử dụng khoảng cách Euclide làm độ đo tương đồng.
Gọi D là tập dữ liệu cần phân hoạch, với mỗi điểm p trong D ta tìm trọng
tâm nhóm q sao cho d(p,q) nhỏ nhất.
- Với qi chưa gom cụm trong D:
Với mỗi p trong D \ {qi}: nếu d(p,qi) < d thì thêm p vào nhóm có trọng tâm qi
- Lặp lại bước trên với các điểm trong D \ {nhóm qi} cho đến khi tất cả các

điểm trong D đều được xét.
Xác định được một dãy các trọng tâm q1, q2,…, qk. Khoảng cách giữa hai
trọng tâm nhỏ nhất là d.
2.4.2. Thuật toán khai thác luật kết hợp
Để khám phá tri thức trên cơ sở dữ liệu, có thể vận dụng nhiều kỹ thuật khai
thác luật khác nhau trên cơ sở dữ liệu đã qua giai đoạn tiền xử lý. Chẳng hạn sử dụng
Information Theoretic Network trên cơ sở dữ liệu các sự kiện, thuật toán Apriori trên
dữ liệu đã phân nhóm,… Đề tài trình bày thuật toán quen thuộc là Apriori.
Luật kết hợp là dạng rất phổ biến trong việc biểu diễn tri thức, luật kết hợp
có ưu điểm dễ đọc, có thể bổ sung hoặc loại bỏ dễ dàng. Đây là một nội dung quan
trọng trong việc khám phá tri thức từ cơ sở dữ liệu lớn. Biểu diễn tri thức dưới dạng
luật kết hợp có thể thích ứng với nhiều ứng dụng khác nhau. Dạng tổng quát của
luật kết hợp là: “Nếu X thì Y”, trong đó X là giả thuyết và Y là kết luận. Các luật
kết hợp như vậy mô tả thật dễ hiểu, hỗ trợ tích cực cho các nhà quản lý trong việc ra
quyết định hay hoạch định chiến lược phát triển.


14

Thuật toán Apriori
Cho I = {i1, i2,…, im} là tập các mục dữ liệu (item). Một tập con của I gọi là
itemset, nếu itemset có k phần tử gọi là k-itemset.
Cho tập D chứa các giao tác (transaction), một giao tác d € D là một tập các
item con của I, d ⊆ I. Trong D, mỗi giao tác có một định danh duy nhất.
Cho hai tập con X, Y của I, X ∩ Y = Ø, luật kết hợp r là luật liên kết hai điều
kiện là hai tập X và Y, có dạng “Nếu X thì Y”.
Ký hiệu:

r: X → Y


Bài toán khai thác dữ liệu là tìm ra tất cả luật kết hợp có độ hỗ trợ và độ tin
cậy lần lượt lớn hơn độ hỗ trợ tối thiểu (minsupp) và độ tin cậy tối thiểu (minconf).
2.4.2.1. Các định nghĩa
Định nghĩa 2.4:
Cho itemset S € I, p(S) là tập các giao tác trong D có chứa S. Độ hỗ trợ của S
được định nghĩa là tỷ số giữa tổng số các giao tác trong D có chứa S và tổng số giao
tác trong D.
Độ hỗ trợ của S:

SP(S) =

|𝑝(𝑆)|
|𝐷|

(2.5)

Cho trước ngưỡng minsupp € (0, 1], S € I là tập phổ biến nếu SP(S) ≥
minsupp. Ký hiệu FS(minsupp) là tập tất cả các tập phổ biến ứng với minsupp.
Định nghĩa 2.5:
Cho M € FS(minsupp), M là tập phổ biến tối đại nếu không tồn tại S €
FS(minsupp), M ≠ S, M ⊆ S.
Định nghĩa 2.6:
Cho luật r: X → Y. Độ hỗ trợ SP(r) của luật r định nghĩa là độ hỗ trợ của tập
X ⋃ Y.


×