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

Tìm hiểu các giải thuật data mining tìm kiếm các ứng dụng trên kết quả học tập của sinh viên khoa công nghệ thông tin

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.03 MB, 101 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA
PHỊNG ĐÀO TẠO SĐH
-----------------------

CỘNG HỒ XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC
---------------------------Tp. HCM, ngày ……tháng ……năm 2005

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên

: BÀNH THU THẢO

Giới tính

: Nữ

Ngày tháng năm sinh

: 24/05/1979

Nơi sinh

: Tây Ninh

Chuyên ngành

: Công nghệ thơng tin

MSHV


: 00703187

I. TÊN ĐỀ TÀI: Tìm hiểu các giải thuật data mining, tìm kiếm các ứng dụng trên
kết quả học tập của sinh viên khoa Công nghệ thông tin
II. NHIỆM VỤ VÀ NỘI DUNG:
-

Tìm hiểu cơ sở lý thuyết về kỹ thuật máy học và khai phá dữ liệu.

-

Tìm hiểu các giải thuật máy học và khai phá dữ liệu cơ bản.

-

Tìm hiểu cơng cụ hiện thực kỹ thuật khai phá dữ liệu Weka.

-

Tìm hiểu cơ sở dữ liệu điểm của sinh viên khoa Công nghệ thông tin, trường
Đại học Bách Khoa Tp.HCM.

-

Xây dựng các ứng dụng phù hợp với thực tế

III. NGÀY GIAO NHIỆM VỤ (Ngày ký Quyết định giao đề tài) :
IV. NGÀY HOÀN THÀNH NHIỆM VỤ

:


V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: Tiến sĩ NGUYỄN ĐỨC CƯỜNG

CÁN BỘ HƯỚNG DẪN

CHỦ NHIỆM BỘ MÔN
QUẢN LÝ CHUYÊN NGÀNH

Nội dung và đề cương luận văn thạc sĩ đã được Hội Đồng Chun Ngành thơng qua.
TRƯỞNG PHỊNG ĐT - SĐH

Ngày…….tháng …….năm …….
TRƯỞNG KHOA QL NGÀNH

i


MỤC LỤC
CHƯƠNG 1......................................................................................................................... 1
GIỚI THIỆU ....................................................................................................................... 1
1.1. Đặt vấn đề ................................................................................................................. 1
1.2. Mục tiêu của đề tài................................................................................................... 2
1.3. Cấu trúc bài báo cáo................................................................................................ 2
CHƯƠNG 2......................................................................................................................... 4
CƠ SỞ LÝ THUYẾT ......................................................................................................... 4
2.1. Máy học và khai phá dữ liệu................................................................................... 4
2.1.1. Giới thiệu máy học ............................................................................................ 4
2.1.2. Khai phá dữ liệu................................................................................................ 5
2.2. Quá trình khai phá dữ liệu ..................................................................................... 6
2.2.1. Tìm hiểu nghiệp vụ (Business Understanding) .............................................. 6

2.2.2. Tìm hiểu dữ liệu (Data Understanding).......................................................... 7
2.2.3. Chuẩn bị dữ liệu (Data Preparation) .............................................................. 9
2.2.4. Mơ hình hố dữ liệu (Data Modeling)............................................................. 9
2.2.5. Đánh giá (Evaluation)....................................................................................... 9
2.2.6. Triển khai (Deployment) ................................................................................ 10
2.3. Các giải thuật khai phá dữ liệu cơ bản ................................................................ 10
2.3.1. Luật kết hợp (Association rule) ..................................................................... 10
2.3.1.1. Định nghĩa................................................................................................. 10
2.3.1.2. Giải thuật Apriori .................................................................................... 11
2.3.2. Data clustering ................................................................................................ 14
2.3.2.1. Hierarchical clustering ............................................................................ 15
2.3.2.2. Partitioning clustering ............................................................................. 17
2.3.2.3. K-means .................................................................................................... 17
2.4. Giới thiệu công cụ WEKA .................................................................................... 19
2.5. Tổng kết .................................................................................................................. 21
CHƯƠNG 3....................................................................................................................... 22
MƠ TẢ BÀI TỐN .......................................................................................................... 22
3.1. Đặt vấn đề ............................................................................................................... 22
3.2. Giải quyết vấn đề ................................................................................................... 22
ii


3.2.1. Mơ tả bài tốn ................................................................................................. 22
3.2.2. Phân tích bài toán ........................................................................................... 23
3.2.2.1. Bài toán đánh giá mối quan hệ giữa các mơn học................................. 24
3.2.2.2. Bài tốn tìm kiếm các vấn đề bất thường trong các môn học.............. 25
3.2.3. Xác định độ đo................................................................................................. 31
3.2.4. Mô tả dữ liệu.................................................................................................... 32
3.3. Kết luận................................................................................................................... 35
CHƯƠNG 4....................................................................................................................... 36

ĐÁNH GIÁ MỐI QUAN HỆ GIỮA CÁC MƠN HỌC ................................................ 36
4.1. Giới thiệu bài tốn ................................................................................................. 36
4.2. Bổ sung thực nghiệm ............................................................................................. 39
4.2.1. Xét mối quan hệ giữa cặp môn học M1 và M2............................................. 39
4.2.2. Xét mối quan hệ giữa cặp môn học M3 và M4............................................. 51
4.2.3. Sử dụng cơng cụ hỗ trợ để tìm kiếm các luật liên kết.................................. 58
4.3. Kết luận................................................................................................................... 61
CHƯƠNG 5....................................................................................................................... 62
TÌM KIẾM CÁC VẤN ĐỀ BẤT THƯỜNG CỦA CÁC MÔN HỌC ......................... 62
5.1. Giới thiệu bài tốn ................................................................................................. 62
5.2. Phân tích bài toán .................................................................................................. 62
5.3. Bổ sung thực nghiệm ............................................................................................. 67
5.4. Quy trình hóa q trình tìm kiếm các vấn đề bất thường trong các môn học 71
5.4.1. Mô tả dữ liệu.................................................................................................... 71
5.4.2. Đánh giá kết quả của các môn học thuộc Khoa Công nghệ thông tin ....... 71
5.4.2.1. Chuẩn bị dữ liệu đưa vào mơ hình phân nhóm..................................... 71
5.4.2.2. Mơ hình hóa dữ liệu ................................................................................. 74
5.4.2.3. Đánh giá kết quả ...................................................................................... 78
5.4.3. Đánh giá kết quả của tất cả các môn học...................................................... 78
5.4.3.1. Chuẩn bị dữ liệu....................................................................................... 78
5.4.3.2. Mơ hình hóa dữ liệu ................................................................................. 81
5.4.3.3. Đánh giá kết quả ...................................................................................... 84
5.4.4. Đánh giá kết quả thu được từ việc phân nhóm dữ liệu của các mơn học .. 84
5.4.4.1. Phân tích kết quả...................................................................................... 84

iii


5.4.4.2. Tìm kiếm các mơn học thuộc nhóm dữ liệu đột biến............................ 86
5.5. Tổng kết .................................................................................................................. 88

CHƯƠNG 6....................................................................................................................... 89
TỔNG KẾT - HƯỚNG PHÁT TRIỂN .......................................................................... 89
6.1. Tổng kết .................................................................................................................. 89
6.2. Hướng phát triển ................................................................................................... 90
TÀI LIỆU THAM KHẢO................................................................................................ 91
PHỤ LỤC .......................................................................................................................... 95

iv


DANH MỤC HÌNH
Hình 2.1 - Q trình khai phá dữ liệu [15] ........................................................................... 8
Hình 2.2 - Giải thuật tìm các luật liên kết .......................................................................... 13
Hình 2.3 - Giải thuật Apriori ................................................................................................ 13
Hình 2.4 - Giải thuật để tạo các tập k phần tử từ tập frequent k-1 itemset ..................... 13
Hình 2.5 - Khoảng cách Euclidean giữa hai điểm .............................................................. 16
Hình 2.6 - Dendrogram ......................................................................................................... 16
Hình 2.7 - Giải thuật K-means ............................................................................................. 18
Hình 2.8 - WEKA Explorer .................................................................................................. 20
Hình 3.1- Sự tương tác giữa các yếu tố ảnh hưởng tới hiệu quả mơn học ....................... 28
Hình 4.1 - Kết quả đánh môn học M1 và M2 ở HK1 năm học 1999-2000 ...................... 40
Hình 4.2 - Kết quả đánh giá của tất cả sinh viên ở môn học M1 và M2 ........................... 48
Hình 4.3 - Kết quả đánh giá M3 và M4 (chọn M3 ở học kỳ 1 năm 1998) ........................ 54
Hình 4.4 - Kết quả đánh giá M3 và M4 (chọn M3 ở học kỳ 2 năm 1998) ........................ 54
Hình 4.5 - Kết quả đánh giá M3 và M4 qua tất cả các học kỳ .......................................... 56
Hình 4.6 - Quá trình xử lý dữ liệu kết quả môn học M3 và M4 ........................................ 60
Hình 4.7 - Kết quả xử lý dữ liệu kết quả mơn học M3 và M4 ........................................... 60
Hình 5.1 - Biểu đồ thống kê kết quả môn C1 – Học kỳ 2 năm 1998 ................................. 64
Hình 5.2 - Biểu đồ thống kê kết quả môn C1 qua các học kỳ ............................................ 64
Hình 5.3 - Tập tin dữ liệu nhập cntt.arff ............................................................................. 73

Hình 5.4 - Quá trình đưa tập tin dữ liệu nhập cntt.arff vào WEKA ................................ 73
Hình 5.5 - Q trình phân nhóm tập dữ liệu cntt.arff ....................................................... 75
Hình 5.6 - Kết quả thu được từ quá trình phân nhóm dữ liệu trong tập tin cntt.arff .... 76
Hình 5.7 - Biểu đồ các nhóm dữ liệu của khoa Cơng nghệ thơng tin ................................ 77
Hình 5.8 - Tập tin all_subjects.arff ...................................................................................... 79
Hình 5.9 - Quá trình đưa tập tin dữ liệu nhập all_subjects.arff vào WEKA ................... 80
Hình 5.10 - Q trình phân nhóm tập dữ liệu all_subjects.arff ........................................ 82
Hình 5.11 - Biểu đồ các nhóm dữ liệu của các khoa khác .................................................. 83
Hình 5.12 - Kết quả các mơn học thuộc nhóm 1 và 2 ......................................................... 87
Hình 5.13 - Kết quả các mơn học thuộc nhóm 3 ................................................................. 87

v


DANH MỤC BẢNG
Bảng 3.1 - Độ ảnh hưởng của các nhân tố ảnh hưởng tới môn học .................................. 28
Bảng 3.2 - Phân loại điểm sinh viên dựa trên thang định danh ........................................ 34
Bảng 3.3 - Một số bảng dữ liệu sử dụng trong đề tài ......................................................... 34
Bảng 4.1 - Bảng đánh giá kết quả mối quan hệ giữa hai môn học .................................... 38
Bảng 4.2 - Kết quả đánh giá môn học M1 và M2 ở HK1 năm học 1999-2000 ................. 40
Bảng 4.3 - Kết quả học tập của sinh viên trong trường hợp A1 qua các học kỳ ............. 41
Bảng 4.4 - Kết quả học tập của sinh viên trong trường hợp C1 qua các học kỳ ............ 43
Bảng 4.5 - Kết quả học tập của các sinh viên trong trường hợp A2 ................................. 45
Bảng 4.6 - Kết quả học tập của các sinh viên trong trường hợp C2 ................................. 45
Bảng 4.7 - Kết quả học tập của tất cả sinh viên ở môn học M1 và M2 ............................. 48
Bảng 4.8 - Tỉ lệ đột biến trong trường hợp A1 ................................................................... 49
Bảng 4.9 - Tỉ lệ đột biến trong trường hợp A2 ................................................................... 49
Bảng 4.10 - Tỉ lệ đột biến trong trường hợp C2 ................................................................. 49
Bảng 4.11 - Kết quả đánh giá mối quan hệ giữa M3 và M4 (chọn M3 ở học kỳ 1-1998) 52
Bảng 4.12 - Kết quả đánh giá mối quan hệ giữa M3 và M4 (chọn M3 ở học kỳ 2-1998) 52

Bảng 4.13 - Kết quả đánh giá mối quan hệ giữa M3 và M4 (chọn M3 ở học kỳ 1-1999) 52
Bảng 4.14 - Kết quả đánh giá mối quan hệ giữa M3 và M4 (chọn M3 ở học kỳ 2-1999) 53
Bảng 4.15 - Kết quả đánh giá mối quan hệ M3 và M4 qua tất cả các học kỳ .................. 56
Bảng 4.16 - Dữ liệu nhập dùng để đánh giá mối quan hệ giữa M3 và M4 ....................... 59
Bảng 5.1 - Thống kê điểm môn học C1 ................................................................................ 63
Bảng 5.2 - Kết quả môn học trong học kỳ 1 năm học 1998 ................................................ 68
Bảng 5.3 - Kết quả môn học C1 trong các học kỳ ............................................................... 70
Bảng 5.4 - Thông tin chi tiết của các nhóm dữ liệu của khoa Cơng nghệ thơng tin ........ 77
Bảng 5.5 - Thơng tin chi tiết của các nhóm dữ liệu của các khoa khác ............................ 83

vi


CHƯƠNG 1
GIỚI THIỆU
1.1. Đặt vấn đề
Chất lượng giáo dục đại học đã và đang là chủ đề được dư luận quan tâm. Trước
hết là do sự mở rộng quy mô, nhiều cơ sở giáo dục đại học chưa đủ các điều kiện
về đội ngũ, cơ sở vật chất, thiết bị đảm bảo chất lượng đào tạo. Thứ hai, những
điều kiện bảo đảm chất lượng và trình độ người tốt nghiệp đại học nước ta còn
thấp so với các chuẩn mực quốc tế. Để củng cố niềm tin và khẳng định vị trí trong
xã hội, mỗi tổ chức giáo dục địi hỏi cần phải có một cơ chế quản lý chất lượng
giáo dục tốt. Trường Đại học Bách khoa Tp.Hồ Chí Minh nhìn chung được đánh
giá cao về chất lượng dạy và học. Tuy nhiên, nhà trường cần phải liên duy trì và
hồn thiện chất lượng giáo dục. Để thực hiện tốt điều này, nhà trường cần rất
nhiều nguồn thông tin về quá trình tổ chức và thực hiện giảng dạy. Với mong
muốn được góp phần cung cấp thêm thơng tin hữu ích cho cơng việc quản lý chất
lượng đào tạo của nhà trường, đề tài này nghiên cứu một kỹ thuật còn khá mới đối
với nước ta là kỹ thuật khai phá dữ liệu, tìm hiểu và ứng dụng kỹ thuật này trên cơ
sở dữ liệu điểm của sinh viên, cụ thể là sinh viên Khoa Công nghệ thông tin, nhằm

phát hiện ra các thông tin hữu dụng.
Hiện tại trên thế giới, các cơng trình nghiên cứu cũng như các ứng dụng của khai
phá dữ liệu đã được phát triển khá rộng rãi và cũng đạt được các kết quả rất khả
quan. Các ứng dụng này phần lớn được áp dụng trong các lĩnh vực thương mại
(phân tích dữ liệu tài chính, xây dựng các hệ thống hỗ trợ ra quyết định, định
hướng kinh doanh,…), khoa học (phân tích hình ảnh). Riêng đối với giáo dục trên
thế giới, các nghiên cứu và các ứng dụng có liên quan đến khai phá dữ liệu cịn
khá ít, nhưng kết quả đạt được cũng rất tốt.
Đầu tiên phải kể đến là ứng dụng “Data mining applications in higher education”
của TS.Jing Luan [22]. Mục tiêu chính của ứng dụng này là thơng qua q trình
1


phân tích và biểu diễn dữ liệu của các tổ chức giáo dục sẽ tìm ra các phương pháp
để phân phối tài nguyên, nhân lực đạt hiệu quả cao nhất, đưa ra các giải pháp góp
phần cải tiến kết quả học tập của sinh viên. Bài báo chỉ trình bày dạng ý tưởng chứ
không đưa ra phương pháp cụ thể.
Kế đến là ứng dụng LON-CAPA (Behrouz Minaei-Bigdoli, Deborah A.Kashy,
Gred Kortemeyer, William F.Punch - Michigan State University) [23]. Mục tiêu
chính của ứng dụng này là tìm hiểu thơng tin về tình hình sinh viên tham gia học
tập qua mạng, họ đã học như thế nào, sau đó đưa ra các giải pháp để giúp họ học
tập thành công.
Đối với Việt Nam thì đây là một đề tài rất mới trong tất cả các lĩnh vực kể cả trong
lĩnh vực giáo dục. Mục đích chính của đề tài là nghiên cứu kỹ thuật mới này, tìm
hiểu các giải thuật cơ bản được sử dụng để thực hiện khai phá dữ liệu. Ngoài ra, đề
tài cịn có một nhiệm vụ quan trọng khác là nghiên cứu khả năng vận dụng của
khai phá dữ liệu vào lĩnh vực giáo dục, cụ thể là tìm kiếm các ứng dụng phù hợp
với thực tế của môi trường đào tạo khoa Công nghệ thông tin, trường Đại học
Bách khoa Tp.Hồ Chí Minh.


1.2. Mục tiêu của đề tài
Mục tiêu chính của đề tài nghiên cứu là:
-

Tìm hiểu cơ sở lý thuyết về kỹ thuật máy học và khai phá dữ liệu.

-

Tìm hiểu các giải thuật máy học và khai phá dữ liệu cơ bản.

-

Tìm hiểu cơng cụ hiện thực kỹ thuật khai phá dữ liệu Weka.

-

Tìm hiểu cơ sở dữ liệu điểm của sinh viên khoa Công nghệ thông tin, trường
Đại học Bách Khoa Tp.HCM.

-

Xây dựng các ứng dụng phù hợp với thực tế

1.3. Cấu trúc bài báo cáo
Nội dung báo cáo bao gồm 6 chương, được tổ chức như sau:
Chương 1: Đặt vấn đề, xác định mục tiêu của đề tài

2



Chương 2: Giới thiệu về đề tài, trình bày tổng quan về kỹ thuật máy học, khai phá
dữ liệu và cơng cụ hiện thực Weka. Trình bày nội dung 2 giải thuật học cơ bản là
Luật liên kết và Phân nhóm dữ liệu.
Chương 3: Mơ tả 2 bài tốn chính được xem xét trong đề tài. Bài toán thứ nhất là
đánh giá mối quan hệ giữa các môn học. Bài toán thứ hai là phát hiện các vấn đề
bất thường trong một số mơn học
Chương 4: Bài tốn mối quan hệ giữa các mơn học.
Chương 5: Bài tốn các vấn đề bất thường trong một số môn học.
Chương 6: Tổng kết, đánh giá và nêu các hướng phát triển.

3


CHƯƠNG 2
CƠ SỞ LÝ THUYẾT
2.1. Máy học và khai phá dữ liệu
2.1.1. Giới thiệu máy học
Một trong những mục tiêu quan trọng của các nghiên cứu trong lĩnh vực trí tuệ nhân
tạo (Artificial Intelligent) là tạo ra sự thông minh cho máy. Nếu máy tính có trí thơng
minh, nó sẽ có khả năng học được những tri thức mới để cải thiện hiệu suất của chính
nó. Những tri thức được học từ máy thậm chí cịn có thể mở mang thêm kiến thức cho
con người. Chính vì thế kỹ thuật máy học (Machine learning) là chìa khóa quan trọng
trong lĩnh vực trí tuệ nhân tạo.
Máy học bao gồm các kỹ thuật thu thập, học hỏi các khái niệm, kinh nghiệm, chiến
lược giải quyết vấn đề thông qua các mẫu thông tin theo một cách thức gần giống như
con người học. Thông qua việc tương tác với môi trường, một máy tính thơng minh sẽ
có khả năng quan sát, nhận định, sau đó rút trích ra các tri thức hữu ích.
Có 2 phương pháp học:
-


Học có điều khiển (Supervised learning): phương pháp học này được sử dụng khi
đã biết trước những tri thức đích, việc học sẽ tìm ra phương cách để dẫn đến tri
thức đích.

-

Học khơng có điều khiển (Unsupervised learning): đây là quá trình phát hiện các
mẫu (pattern) mới từ dữ liệu quá khứ. Các mẫu mới giúp ta hiểu rõ thêm các
thông tin về dữ liệu và các thơng tin này là rất hữu ích. Phương pháp học này
thường được dùng trong các trường hợp ta cần trả lời cho các câu hỏi: Thơng tin
gì có trong dữ liệu? Có mẫu thơng tin nào bất thường khơng?...

Thơng thường thì phương pháp học khơng có điều khiển cần phải có sự tương tác với
người sử dụng, vì các giải thuật chỉ tìm ra các mẫu thơng tin có trong dữ liệu và chỉ

4


có con người mới có khả năng nhận định mức độ quan trọng hay ý nghĩa các mẫu
thơng tin đó.
Kỹ thuật phân loại (Classification) là một trong những công việc chính trong q trình
học có điều khiển. Phân loại dữ liệu là q trình kiểm tra các thuộc tính của dữ liệu và
gán cho nó vào các loại, các nhóm đã được định nghĩa trước.
Kỹ thuật phân nhóm (Data clustering) là một loại phương pháp học khơng có điều
khiển. Phân nhóm là chia một nhóm dữ liệu thành nhiều nhóm con tương tự nhau. Các
đối tượng trong cùng một nhóm là tương tự với tất cả các đối tượng khác trong nhóm.
Kỹ thuật phân nhóm dữ liệu thường được dùng để phát hiên các nguyên lý, các quy tắc
tiềm ẩn tồn tại trong dữ liệu.
2.1.2. Khai phá dữ liệu
Thời gian gần đây, với tốc độ phát triển nhanh chóng của công nghệ thông tin, các hệ

thống thông tin mỗi ngày lưu trữ thêm một khối lượng dữ liệu rất lớn, nhưng đa phần
dữ liệu được lưu trữ lại đơn thuần là để theo dõi hoạt động có liên quan của các tổ
chức đó mà thơi. Cụ thể, trong thương mại, dữ liệu lưu trữ thường là các dữ liệu về sản
phẩm, thị trường, khách hàng, đối thủ cạnh tranh, đơn đặt hàng, hợp đồng mua bán,…
còn trong lĩnh vực sản xuất thì dữ liệu lưu trữ thường là các thơng tin về sản phẩm, số
lượng, chất lượng, giá cả. Trong số các dữ liệu này, chỉ một phần rất nhỏ (khoảng 5% 10%) được xem xét, phân tích để tìm kiếm các thơng tin hữu ích, thơng tin góp phần
cải thiện tình hình kinh doanh, tăng lợi nhuận, nâng cao hiệu quả sản xuất.
Xem xét về mặt bản chất, phần thông tin quá khứ chưa được xem xét cũng rất có thể
chứa đựng một số tri thức mặc dù người sử dụng không biết nhưng lại rất hữu dụng,
hoặc là họ có thể biết nhưng khơng có khả năng phân tích vì lý do nó q lớn về kích
thước và quá nhiều chiều. Một vấn đề được đặt ra ở đây là vậy phải làm thế nào để
phân tích khối lượng dữ liệu q lớn này. Chính vì thế, một lĩnh vực mới của ngành
khoa học máy tính ra đời nhằm đáp ứng yêu cầu này là kỹ thuật khai phá dữ liệu (Data
mining).

5


Khai phá dữ liệu có thể được xem là sự phát triển tự nhiên của ngành công nghệ thông
tin nhằm góp phần giải quyết vấn đề “Dư thừa dữ liệu nhưng thiếu thơng tin”, vì lí do
là lượng dữ liệu lớn được thu thập trong cơ sở dữ liệu đã vượt quá khả năng phân tích
của con người.
Các định nghĩa về khai phá dữ liệu [16]:
- Khai phá dữ liệu là khoa học rút trích các thơng tin hữu ích từ các dữ liệu quá khứ
với mục đích giúp cải tiến các quyết định trong tương lai.
- Một định nghĩa khác, khai phá dữ liệu cịn là một q trình truy xuất các thông tin
ngầm, thông tin quá khứ chưa được biết đến, thơng tin hữu ích tiềm ẩn như các quy
luật (rules), quy tắc, các ràng buộc của các dữ liệu được chứa trong cơ sở dữ liệu.
Khai phá dữ liệu có cùng mục tiêu với kỹ thuật máy học là “learning from data” nên
các giải thuật máy học đóng vai trị trung tâm q trình khai phá dữ liệu. Tuy nhiên,

thơng thường thì tập hợp dữ liệu cần khai phá thường lớn hơn từ 10 đến 100 lần so với
tập hợp dữ liệu của máy học về cả số lượng thuộc tính lẫn số lượng đối tượng. Do vậy,
thường thì thời gian cần để khai phá dữ liệu là rất dài. Thêm vào đó, mặc dù kích
thước bộ nhớ của máy tính gần đây đã tăng rất nhanh, tuy nhiên trong một vài trường
hợp vẫn không thể đáp ứng được mức độ tăng của dữ liệu, nên việc ứng dụng các kỹ
thuật probabilistic, sampling, buffering, parallel,… vào trong các giải thuật máy học là
rất cần thiết.

2.2. Quá trình khai phá dữ liệu
Theo tài liệu CRISP-DM (CRoss-Industry Standard Process for Data Mining) [15],
chu kỳ sống của một dự án khai phá dữ liệu nói chung bao gồm 6 giai đoạn (Hình 2.1)
thứ tự diễn ra giữa các giai đoạn thường không cần thiết phải qui định 1 cách cứng
nhắc.
2.2.1. Tìm hiểu nghiệp vụ (Business Understanding)
Giai đoạn khởi đầu là tập trung tìm hiểu các đối tượng và yêu cầu dự án từ góc nhìn
nghiệp vụ. Từ đó định nghĩa các vấn đề cần khai phá dữ liệu. Để có thể phát biểu một
vấn đề một cách đầy đủ và chi tiết thì kinh nghiệm và tri thức thực tế trong lĩnh vực
6


nghiệp vụ liên quan là rất cần thiết, do vậy cần phải có sự phối hợp 1 cách chặt chẽ
giữa các chuyên gia nghiệp vụ và các chuyên gia khai phá dữ liệu. Trong trường hợp
không thể xác định được các vấn đề cụ thể cần tìm kiếm thì ít nhất cũng xây dựng
được tập hợp các giả thuyết ban đầu diễn đạt các vấn đề này.
2.2.2. Tìm hiểu dữ liệu (Data Understanding)
Người phát triển ứng dụng có nhiệm vụ phải tìm hiểu dữ liệu, làm quen với dữ liệu,
tìm hiểu các kiến thức về cấu trúc, ngữ nghĩa các thực thể của dữ liệu… và phải tập
hợp được các dữ liệu cần thiết, những kiến thức ban đầu này rất có ích cho giai đoạn
mơ hình qua dữ liệu và đánh giá kết quả cuối cùng.


7


Hình 2.1 - Quá trình khai phá dữ liệu [15]

8


2.2.3. Chuẩn bị dữ liệu (Data Preparation)
Quá trình chuẩn bị dữ liệu là xác định các kỹ thuật cần dùng để xử lý trước dữ liệu
nhằm biến đổi, cải tiến chất lượng dữ liệu sao cho phù hợp với yêu cầu của giải thuật
dùng để khai phá dữ liệu.
Đa số các giải thuật khai phá dữ liệu chỉ có thể làm việc với các tập hợp đơn và phẳng.
Tất cả các cơ sở dữ liệu quan hệ, phân bố hay hướng đối tượng đều phải được chuyển
sang cơ sở dữ liệu với 1 bảng duy nhất. Trong thực tế, hầu hết các dữ liệu đều chứa 1
số dữ liệu không bình thường tức mang các giá trị khơng thơng dụng, không nhất quán
hoặc mang các giá trị rỗng… do bị lỗi trong q trình tính tốn, xử lý hoặc ghi xuống
cơ sở dữ liệu.
Một số kỹ thuật xử lý trước bao gồm:
-

Xử lý các giá trị bị mất/ khuyết.

-

Loại bỏ sự trùng lấp thơng tin.

-

Chuẩn hố dữ liệu.


-

Rời rạc hố dữ liệu.

-

Loại bỏ dữ liệu phức tạp…

Quá trình chuẩn bị dữ liệu ngồi các cơng việc xử lý trước dữ liệu như đã nêu trên còn
phải bao gồm cả quá trình giảm số chiều dữ liệu.
2.2.4. Mơ hình hố dữ liệu (Data Modeling)
Các vấn đề được xác định ở giai đoạn 1 chủ yếu được phân tích và xử lý ở giai đoạn
này, giai đoạn xử lý dữ liệu để tìm ra nguyên tắc ẩn hoặc chưa biết. Nhiệm vụ quan
trọng ở giai đoạn này là xác định các giải thuật thích hợp cho vấn đề đã được xác định
ở trên. Thực tế, tuơng ứng với một loại vấn đề khai phá dữ liệu thường có nhiều giải
thuật khác nhau có thể áp dụng được, và mỗi giải thuật thường có u cầu đặc trưng về
thơng số, hình thức của dữ liệu. Do vậy vấn đề quay lui về giai đoạn tiền xử lý dữ liệu
thường rất cần thiết.
2.2.5. Đánh giá (Evaluation)
9


Các kết quả có được từ giai đoạn mơ hình hố nói trên phải được trao đổi với người sử
dụng để họ đánh giá, đóng góp ý kiến. Hầu hết các kỹ thuật đều cần được người phát
triển ứng dụng giải thích cho người sử dụng hiểu, một số kỹ thuật cần phải được
chuyển sang dạng thức khác dễ hiểu hơn như dùng hình ảnh, đồ thị, biểu đồ,… Tuy
nhiên, khơng phải mơ hình khai phá dữ liệu nào cũng luôn cho ra được kết quả hoặc
cho kết quả với độ chính xác mong muốn. Vì thế sau khi kết quả được đánh giá, nếu
không thỏa mãn hoặc không phù hợp với yêu cầu của người sử dụng thì quá trình khai

phá dữ liệu cần thiết phải được thực hiện lại.
2.2.6. Triển khai (Deployment)
Đa số các mơ hình khai phá dữ liệu được sử dụng để hỗ trợ quá trình ra quyết định.
Nếu các tri thức mang lại từ các giai đoạn được chấp nhận thì các kết quả đó cần thiết
phải được tổ chức, biểu diễn lại ở các hình thức khác. Khách hàng khơng cần hàng
trăm trang số liệu đánh giá kết quả vì họ thực sự khơng hiểu, khơng thể vận dụng
chúng, họ chỉ mong muốn có được kết quả ở đinh dạng có thể sử dụng được, đơn giản
và tiện lợi. Thơng thường thì kết quả của khai phá dữ liệu có thể triển khai trên các
trang Web, hoặc 1 hình thức báo cáo mà khách hàng yêu cầu.

2.3. Các giải thuật khai phá dữ liệu cơ bản
2.3.1. Luật kết hợp (Association rule)
2.3.1.1. Định nghĩa
Luật kết hợp (Associatin rule) là kỹ thuật khai mỏ dữ liệu dùng để phát hiện các mối
quan hệ giữa các đối tượng trong cơ sở dữ liệu và đặc trưng của dữ liệu được áp dụng
cho kỹ thuật học này thường là dữ liệu ở dạng nhị phân 0,1 và dữ liệu rải rác. Luật kết
hợp là một trong những kỹ thuật thông dụng dùng trong các hệ thống học không có
điều khiển dùng để tìm kiếm mẫu thơng tin cục bộ [25].
Sau các ứng dụng đầu tiên của luật kết hợp được áp dụng trong lĩnh vực thương mại,
luật kết hợp trở thành một đề tài nghiên cứu được quan tâm nhiều và được ứng dụng
trên nhiều lĩnh vực khác nhau, và giải thuật Apriori được xem như là giải thuật cơ bản
nhất.

10


Định nghĩa luật kết hợp [25]:
Cho:
-


I: là một tập các item, thường là ở dạng nhị phân

-

Transaction T, T cũng là một tập các item, được gọi là itemset (T là một vector nhị
phân), T ⊂ I

-

Toàn bộ tập dữ liệu D, D là một tập hợp các T. Một tập itemset chứa k items sẽ
được gọi là k-itemset

Luật kết hợp giữa hai itemset A và B có dạng A => B, trong đó A ∩ B = ∅
Mỗi luật kết hợp được đánh giá dựa trên 2 thông số support và confidence:
-

Support: chỉ phạm vi của một luật kết hợp, là số lượng mẫu dữ liệu áp dụng đúng
luật kết hợp này, chính là phần trăm tập dữ liệu D chứa A ∪ B

-

Confidence: độ chính xác của luật kết hợp, chính là phần trăm transaction chứa
đồng thời A và B so với transaction chứa A.

2.3.1.2. Giải thuật Apriori
Giải thuật Apriori nhận dữ liệu nhập là một tập các dữ liệu, giới hạn minimum support
min_sup và minimum confidence min_conf, và trả về kết quả cuối cùng là các luật kết
hợp có support lớn hơn min_sup và confidence lớn hơn min_conf
Quá trình tìm kiếm các luật kết hợp được chia thành 2 giai đoạn:
Giai đoạn 1: Tìm tất cả các tập các items có support lớn hơn giới hạn min_sup, các tập

này được gọi là frequent itemsets.
Giai đoạn 2: Sử dụng các frequent itemsets để tìm ra các luật có confidence lớn hơn
giới hạn min_conf được trình bảy trong Hình 2.2
Giải thuật Apriori được trình bày trong Hình 2.3
Giải thuật để tạo Ck từ tập frequent k-1 itemset Lk-1 từ Hình 2.4

11


Ưu điểm của kỹ thuật luật kết hợp:
o Kết quả tạo ra rất rõ ràng và dễ hiểu
o Không cần xác định trước mục tiêu của quá trình khai phá dữ liệu
o Giải thuật được áp dụng rất đơn giản
Hạn chế của kỹ thuật luật kết hợp:
o Độ phức tạp tính tốn của giải thuật tăng theo hàm mũ
Nếu dữ liệu có n thuộc tính thì tổng số itemsets được tạo ra là 2n – 1.

12


Với mỗi frequent itemset, F, tạo ra tất cả các tập con khác rỗng
của F
Với mỗi

tập con khác rỗng s của F thì

Tạo ra luật (F-s) => s, nếu support(F-s)/support (s) >=
min_conf
Kết thúc


Hình 2.2 - Giải thuật tìm các luật liên kết

Ck: Ck: Set of candidates k-itemsets
Lk : Set of frequent k-itemsets
L1 = {frequent 1-itemsets};
for (k = 2; Lk-1 !=∅; k++) do

begin

Ck = New candidates generated from

Lk-1;

foreach transaction t trong cơ sở dữ liệu do
tăng số đếm của tất cả các candidates in Ck nếu nó
có trong t
Lk

= candidates in Ck with min. support

end
return ∪k Lk;

Hình 2.3 - Giải thuật Apriori

Join: Kết Lk-1 với Lk-1, điều kiện kết là k-1 items đầu tiên là
giống nhau
Prune: Xóa tẫt cả các candidates có support nhỏ hơn min-support
được xác định trước


Hình 2.4 - Giải thuật để tạo các tập k phần tử từ tập frequent k-1 itemset

13


2.3.2. Data clustering

Theo các quan điểm đã nêu, phân nhóm dữ liệu mà một kỹ thuật phân tích dữ liệu
quan trọng trong việc phân nhóm các đối tượng tự nhiên hoặc trừu tượng. Phương
pháp này cho phép những đối tượng với những đặc tính phổ biến chung được gộp lại
với nhau thành một nhóm để thuận tiện cho q trình xử lý sau này. Kỹ thuật phân
nhóm dữ liệu là kỹ thuật học không điều khiển, tức không cần xác định trước mục tiêu,
không cần xác định biến mục tiêu nào đang cần được tiên đốn, khơng có sự phân biệt
giữa biến phụ thuộc hay biến độc lập. Chính điều này làm cho nó trở thành một cơng
cụ xử lý hữu hiệu được sử dụng rộng rãi trong nhiều lĩnh vực khác nhau.
Các khái niệm cơ bản
(a) Phép đo tính tương tự:
Để xác định xem các đối tượng có tương tự nhau hay khơng là dựa trên các thuộc tính
biểu diễn cho đối tượng đó, kỹ thuật phân nhóm sẽ sử dụng đơn vị đo lường khoảng
cách để đo lường sự tương tự giữa 2 đối tượng. Trong số các đơn vị đo lường được sử
dụng thì đơn vị đo
khoảng cách Euclidean là phổ biến nhất.
Giả sử ta có 2 đối tượng C1 và C2, các đối tượng được biểu diễn bởi 2 giá trị x và y,
C1(x1,y1) và C2(x2,y2). Hai đối tượng được biểu diễn trên hệ trục tọa độ xy (Hình
2.5).
Theo lý thuyết Pythagorus thì khoảng cách Euclidean giữa C1 và C2 được xác định
theo công thức:
d12 = ( x2 − x1 ) 2 + ( y2 − y1 ) 2

Mở rộng cho các đối tượng có p thuộc tính, ta có cơng thức sau:

d12 =

p

∑ ( x (2) − x (1))
i =1

i

2

i

(b) Định nghĩa nhóm: là xác định các đặc trưng của nhóm, cụ thể xác định hình dạng
của nó (lồi hay tùy ý), đường viền của nhóm (đường thẳng hay cong, rõ hay mờ). Và

14


đơn vị đo sự tương tự cũng như mối quan hệ giữa các nhóm cũng cần phải được xác
định, các nhóm là phân biệt nhau (disjoint) hay trùng lắp (overlapping).
(c) Tiêu chuẩn của nhóm: là xác định tiêu chuẩn để phân nhóm, có thể 1 hoặc nhiều
tiêu chuẩn. Đồng thời cũng phải xác định cấu trúc để xây dựng nhóm (dạng cây, dạng
đồ thị hay dạng danh sách).
(d) Số nhóm: tùy theo phương pháp phân nhóm và đặc tính của dữ liệu, ta phải xác
định số nhóm cần được phân ra sao cho hợp lý.
Trên đây là một số thông số cơ bản dùng để xác định các nhóm dữ liệu, do việc xác
định các thơng số có thể khác nhau dẫn đến việc tiếp cận kỹ thuật phân nhóm cũng
khác nhau, có nhiều hơn 10 cách [12]. Trong đó kỹ thuật phân nhóm truyền thống chia
thành 2 loại: hierarchical clustering và partitioning clustering.

2.3.2.1. Hierarchical clustering
Hierarchical clustering xây dựng sự phân cấp cho các nhóm hay nói cách khác là tạo ra
một cây các nhóm, được gọi là dendrogram (Hình 2.6). Mỗi node sẽ chứa các nhóm
con, các nút lá sẽ là các đối tượng dữ liệu. Hình dạng của các nhóm khơng được xác
định trước. Và các nhóm là phân biệt nhau.
Tiêu chuẩn để xây dựng dendrogram là cực tiểu hóa sự tương tự giữa các node anh em.
Kỹ thuật hierarchical clustering được phân thành 2 loại chính: agglomerative (bottomup) và divisive (top-down). Giải thuật agglomerative bắt đầu với tất cả các đối tượng
dữ liệu, mỗi đối tượng được xem là một nhóm, sau đó liên kết đệ quy với nhau để tạo
thành các nhóm gần giống nhau nhất. Giải thuật divisive bắt đầu với 1 nhóm duy nhất
chứa tất cả các dữ liệu, sau đó phân chia đệ quy thành các nhóm gần giống nhau nhất.
Các giải thuật cứ tiếp tục được thực hiện cho đến khi thỏa mãn điều kiện dừng, thơng
thường đó chính là số nhóm được xác định trước.

15


y

d12
C2(x2, y2)

C1(x1, y1)

x

Hình 2.5 - Khoảng cách Euclidean giữa hai điểm

Hình 2.6 - Dendrogram

16



2.3.2.2. Partitioning clustering
Mỗi nhóm là một nhóm các dữ liệu, được đại diện bằng tâm của nhóm. Một đối tượng
sẽ thuộc vào nhóm mà khoảng cách từ nó đến tâm của nhóm là gần nhất. Hình dạng
của nhóm là một đa giác lồi. Các nhóm là phân biệt nhau.
Kỹ thuật partitioning clustering tiêu biểu là giải thuật K-means.
Giải thuật K-means là cơng cụ phân nhóm thơng dụng nhất được sử dụng trong các
ứng dụng khoa học, ứng dụng công nghiệp bởi tính chất đơn giản và hiệu quả tính tốn
cao.
Trong đề tài này, tôi cũng đã sử dụng giải thuật K-means để phân tích dữ liệu nhằm
tìm kiếm các vấn đề bất thường tiềm ẩn trong kết quả học tập của sinh viên.
Phần tiếp sau đây là một số chi tiết cơ bản về giải thuật K-means.
2.3.2.3. K-means
Theo tài liệu tham khảo [14], giải thuật K-means rất đơn giản (Hình 2.7). Mỗi nhóm
(clusters) được đại diện bởi tâm của nó. Số nhóm là thơng số được định nghĩa trước.
Tiêu chuẩn phân nhóm của giải thuật K-means là cực tiểu hóa sự chênh lệch giữa các
đối tượng với các tâm, khoảng cách được sử dụng ở đây là khoảng cách Euclidean. Kmeans nhận dữ liệu nhập là các dữ liệu có thuộc tính dạng số học. Có rất nhiều cách để
hiện thực giải thuật này, nhưng kết quả cơ bản vẫn giống nhau.
Tóm lại, việc giới thiệu tổng quan q trình khai phá dữ liệu và các giải thuật học cơ
bản trên đây đã chứng minh được rằng quá trình khai phá dữ liệu phụ thuộc vào rất
nhiều yếu tố khác nhau. Việc chọn lựa giải thuật học cho phù hợp với dữ liệu cần phân
tích và phù hợp với yêu cầu thực tế là vấn đề rất khó khăn. Bất kỳ một giai đoạn nào
trong quá trình khai phá dữ liệu bị thực hiện khơng chính xác cũng có thể dẫn đến kết
quả bị sai lệch.
Để giải quyết các vấn đề được nêu ra, đề tài sử dụng công cụ WEKA, để hỗ trợ một
phần trong giai đoạn mơ hình hóa dữ liệu. Phần tiếp theo đây sẽ giới thiệu tổng quan
về công cụ WEKA.

17



Step 1: Chọn các đối tượng bất kỳ làm tâm cho K nhóm
Step 2: Với mỗi đối tượng trong tập huấn luyện, gán vào nhóm gần
nhất và cập nhật lại tâm của các nhóm
Step 3: Nếu tiêu chuẩn gom nhóm đã thõa (tức là tâm các nhóm
khơng thay đối) thì giải thuật dừng.
Ngược lại, quay lại bước 2.

Hình 2.7 - Giải thuật K-means

18


2.4. Giới thiệu công cụ WEKA
WEKA (Waikato Environment for Knowleged Analysis) [31]: là phần mềm máy
học/khai phá dữ liệu được thực hiện bằng ngôn ngữ Java, bởi Witten và Frank.
WEKA đã được kiểm tra trên hệ điều hành Unix, Windows và Macintosh. Phần mềm
được cung cấp bởi GNU License với mục đích phục vụ cho nghiên cứu, học tập và
ứng dụng

.

Phần mềm có

thể được

tải

về


miễn phí từ địa

chỉ

http:/ww.cs.waikato.ac.nz/~ml/WEKA.
WEKA cung cấp giao diện thống nhất cho từng giải thuật học khác nhau hỗ trợ cho
các quá trình xử lý trước dữ liệu, xử lý sau và đánh giá kết quả. Các công việc có thể
thực hiện khi sử dụng WEKA là: chúng ta có thể xử lý trước dữ liệu, đưa dữ liệu vào
1 lược đồ học, phân tích kết quả thu được từ q trình phân loại (classification) mà
khơng cần viết 1 mã chương trình nào cả. Hơn thế nữa WEKA còn cho phép chúng ta
truy xuất vào thư viện này từ chương trình Java riêng của mình, hoặc cho phép bổ
sung và kiểm tra một lược đồ học mà tự ta xây dựng…
Chúng ta có thể tương tác với WEKA theo cách gõ lệnh trực tiếp hoặc tưong tác qua
giao diện trực quan do WEKA cung cấp gọi là Explorer (hình 2.8) .

19


×