TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHỆ THÀNH PHO HO CHi MINH ĐÈ TÀI NGHIÊN CỨU KHOA HỌC KHAI THÁC CƠ SỞ DỮ LIỆU ĐIÊM SINH VIÊN TOAN TRƯỜNG TÌM RA PHƯƠNG ÁN HỖ... KHAI THÁC CƠ SỞ DỮ LIỆU ĐI
Trang 1
TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHỆ
THÀNH PHO HO CHi MINH
ĐÈ TÀI NGHIÊN CỨU KHOA HỌC
KHAI THÁC CƠ SỞ DỮ LIỆU ĐIÊM SINH VIÊN TOAN TRƯỜNG TÌM RA PHƯƠNG ÁN HỖ
Trang 2KHAI THÁC CƠ SỞ DỮ LIỆU ĐIỂM SINH VIÊN
TOÀN TRƯỜNG TÌM RA PHƯƠNG ÁN HỖ
TRỢ HỌC TẬP
Trang 3
Chương l GIỚI THIỆU VỀ KHAI THÁC DỮ 020553 3
L1: TÔM TẮT CÔNG VIỆC TRƯỚC ĐÂY 2S 3
2.1.1 Định nghĩa về đữ liệu giao địch 02c 5 2.1.2 Dinh nghia độ phổ biến 0011 5
2.1.3 Định nghĩa S33 6 2.1.4 Các tính chất của tập phổ biến 0 02h 6
Tả 6
2.2 TÌM TAP PHO BIEN ĐÓNG 3 0222222 7
2.2.1 Định nghĩa toán tử "` 7 2.2.2 Định nghĩa tập đỐng, Ho ti 8 2.2.3 Khai thác tập phổ biến đống, re 8
2.2.4 Thuật toán CHARM 102 re 10
1——— bẻ ˆˆ 10 2.2.4.2 Minh họa cua
Chương 3 KHAI THÁC CƠ SỞ DỮ LIỆU ĐIỀM SINH VIÊN 22222 17
3.1 TRÍCH CHỌN DỮ LIỆU 232222152 18
Trang 4
3.3 ÁNH XẠ DỮ LIỆU SANG DẠNG GIAO DỊCH t2 19
3.3.1 Chuyển Sang cơ sở dữ liệu giao địch reo 19
3.3.2 Ánh Xạ các cột thành các item (số “SMABđHg 20
3.4 QUÁ TRÌNH SINH TẬP PHỎ BIEN ĐÓNG 0t 21
3.5 QUA TRÌNH SINH LUẬT KHÔNG DƯ THỪA 222 22
23
Chương 4 KẾT QUÁ ĐẠT ĐƯỢC 0 2222 25
GIÁO DIỆN CHƯƠNG TRÌNH 5 2222 25 KET LUẬN «re
Trang 5
Chương 1 GIỚI THIỆU VỀ KHAI THÁC DỮ LIỆU
1.1 TOM TAT CONG VIEC TRUGC DAY
1.2
Trong đề tài trước, “Khai thác CSDL điểm sinh viên toàn trường tìm ra phương án hỗ trợ học tập”, chúng tôi đã trình bày cách khai thác tập phổ biến, khai thác luật kết hợp từ các tập phổ biến và ứng dụng vào việc khai thác CSDL điểm sinh viên Giới hạn của đề tài là chưa thu gọn tập luật khai thác dẫn đến còn chứa nhiều luật “dư thừa” Bên cạnh đó, việc ứng dụng tập luật sau khi khai thác cũng chưa được quan tâm Vì vậy, đề tài này là công việc tiếp theo của để tài trước nhăm hoàn thiện sản phẩm theo hướng ứng dụng vảo việc tiên đoán kết quả học tập của sinh viên,
LY DO PHAT TRIEN DE TA]
Thế mạnh của khai thác dữ liệu là tìm ra các qui luật tiềm an trong CSDL nhăm giúp cho người khai thác chúng hoạch định chiến lược trong tương lai
Chăng hạn: với các nhà kinh doanh, khai thác đữ liệu nhằm tìm kiếm thị
trường tiềm năng, khoanh vùng khu vực kinh doanh, khuyến mãi để thu hút khách hang, Đã có những đề tài mang tính ứng dụng cao được phát triển
từ các thuật toán khai thác đữ liệu:
I Khai thác cơ sở dữ liệu xuất nhập khẩu (Bộ Công an) [7]
2 Khai thác cơ sở dữ liệu cước viễn théng (Dac lac) [8]
3 Khai thác cơ sở dữ liệu chăn nuôi [9]
Dựa trên các yêu cầu khai thác, chúng tôi nhận thấy việc ứng dụng khai thác
dữ liệu vào bài toán khai thác kết quả điểm sinh viên rất cần thiết vì một số lý
do:
1 Sinh viên cần biết thông tin:
a Nếu học tốt môn nào sẽ học tôt môn nào khác trong tương lai?
Trang 6
b._ Chọn ngành nào là phù hợp nhất với mình khi biết kết quả của các
môn giai đoạn một?
2 Về phía nhà trường/ khoa:
a Chọn các sinh viên có năng lực để bồi dưỡng thi Olympic, nghiên
cứu khoa học, dựa vào điểm các môn giai đoạn đầu
b Bồi dưỡng cho sinh viên yếu kém
c Tư vân chọn chuyên ngành
13 TÓM LẠI
Đề tài nhằm tìm kiếm một giải pháp tư vấn học tập thích hợp cho sinh viên
dựa vào cơ sở dữ liệu điểm của các sinh viên (cùng khoa) trong quá khứ
Thực nghiệm cho thấy đề tài có thể áp dụng được vào thực tế
Báo cáo được tổ chức như sau:
Chương 2 trình bày tổng quan vẻ hệ thống lý thuyết
Chương 3 trình bày về cách thức áp dụng bài toán khai thác luật kết hợp để
khai thác cơ sở đữ liệu điểm thi sinh viên
Chương 4 trình bày các kết quả đạt được trên các cơ sở dữ liệu thử nghiệm
Chương § trình bày về kết luận và hướng phát triển
Trang 7
Chương2 CƠ SỞ LÝ THUYÉT
2.1 MOT SO ĐỊNH NGHĨA [16, 17]
2.1.1 Định nghĩa về dữ liệu giao dịch
Cho /= {ij, ig, ., in} là tập tất cả các mục đữ liệu (mặt hàng) 7 ={t\, ty,
+› tạ} là tập tất cả các giao dịch trong CSDL giao dich D CSDL duoc cho là quan hệ hai ngôi dc I x T Néu mục 7 € / xay ra trong giao dich ¢
e 7 thì ta viết là (, 2) eö, kí hiệu ¡ bt
Cho CSDL giao địch D và tập dữ liệu X C 1 Độ phổ biến của X trong
D, kí hiệu ø(X), được định nghĩa là số giao dịch mà X xuất hiện trong
D
Trang 8
1) Nếu X phổ biến thì mọi Y C X cũng phổ biến
2) Nếu X không phổ biến thì moi Y > X cũng không phổ biến
2.1.5 Kết nối Galois
Cho quan hệ hai ngôi ö C I x T chứa CSDL cần khai thác Đặt Ÿ C7
và ỨCT Tạ định nghĩa hai ánh xạ giữa P() và P(T) như sau:
8)!:Iœ 7, (X)={yeT|Vxe X,x6 y}
b)i:Ta 7, i(Y) ={xel|VyeY,x6 y}
Hình 2.1 mình họa hai ánh xạ này trong đó ánh xạ “(Ÿ) Ja tập tắt cả các
giao dịch có chứa itemset X (hay còn gọi là Tidset của Itemset X) va WD) 1a tập tat ca các mục dữ liệu có trong tất cả các giao dich trong Y
Kí hiệu itemset X và tập các glao dịch tương ứng với nó t(X) là
X x1 Ý) và được gọi là IT-pair Tương tự với tập giao dịch Y va i(Y)
là i(Y)x ¥
Vi du: {(ACW) = (A) 0 (C) AW) = 1345 9123456 012345 = 1345 1(245) = i(2) Ni(4) Ni(5) = CDW A ACDW A ACDTW = CDW
Trang 9
Kết nối Galois xác định các tính chất sau [17]:
Cho X,X,,X, eP(7) và Ÿ,Y,,Y, e P(T) Ta có:
l X.c#, = (X,) 2 (X,)
2.4 CY, >i(¥)Dil¥,)
3 XC/0(X)) và YG¿((Œ))
2.2 TIM TAP PHO BIEN DONG
2.2.1 Dinh nghia toan tir đóng Cho à €Ï và ánh xa © PW) > PD) vj (KX) =X) Anh xa c dinh nghĩa như trên được gọi là toán tử đóng (Closure Operator)
Vị dụ: xét CSDL được cho trong bang 2.1 ta cé
c(AW) = i(t(AW)) = i(1345) = ACW c(ACW) = i((ACW)) = i(1345) = ACW Toán tử đóng được định nghĩa như trên luôn thỏa các tính chất sau (Ganter và Wille 1999) [5], [8]:
1 Tính mở rộng: X c c(Y)
2 Tính đơn điệu: Nếu X cY thì e(X)c eŒ)
3 Tính không đổi: e(e(X)) = e(X)
Trang 10
2.2.2 Định nghĩa tập đóng Cho X c7 X được gọi là tập đóng khi và chỉ khi c(X) = X X được gọi
là tập phổ biến đóng néu XY phổ biến và X là tập đóng
Ví dụ: xét CSDL được cho trong bảng 2.1 ta có
Do c(AW) = /AW)) = 1345) = ACW > AW không phải là tập đóng
Do c(ACW) = i((ACW)) = 1345) = ACW = ACW là tập đóng
2.2.3 Khai thác tập phổ biến đóng 2.2.3.1 Các tính chất của IT-pair Định lý 3.1
Cho X,x/(Y,) và X,xI(X,) là hai thành viên tùy ý của lớp tương đương [PỊ Ta có 4 tính chất sau:
1 Nếu /(X,)=/(X,) thì e(Y,)= c((X,)=c(X,©X,)
2 Nếu /(Y,)c/(X,) thì e(Y,) zc(X,) nhưng e(X,)= e(Y,©X,)
3 Nếu /(Y,) 5/(Y,) thì e(Y,) # c(X,) nhưng c(X,)=e(X,UX,)
4 Nếu th an | oxy
X,) Pecx,) thi OK) # 0X) # (XU )
Trang 11
Tinh chat 1 Tinh chat 2
Tập dữ liệu Tap giao tác Tập dữ liệu Tập giao tác
i(tX, U X,) =i0(X,)) hay e(X,) = c(X, 2 #,) Mặt khác, (.X,) 1(X,) =>
i(X,)) #i(X,)) nên e(X,) # e(X,)
3, Ta có (X,) D(X) UX, OX, ) =X) 0X) =X) >
i(X,©2 X,)) =10(X,)) hay c(X,) = e(X, 2 Ý,) Mặt khác, /(X,) 2/(X,)=
i(X,)) #i(X,)) nên e(X,) # e(X,)
Trang 12
1 Tính chất I nói rằng, nếu phần giao của hai Tidset là bằng nhau thì rõ
ràng Ì(X,)|= ex, | = cx, UX, | mà X,c(Y,UX,)và X,c(X,UX,)
nên *,, X, không là tập đóng Hơn nữa, X,, X, và X,t2X, thuộc về cùng một tập đóng
2 Theo tính chất 2, ta cd c(X,)=c(X, UX )=> X, khong là tập đóng và X,, X,©XX, thuộc về cùng một tập đóng Bên cạnh đó, do !(X,)#0(X,) nên X, và X, thuộc về 2 tập đóng khác nhau
3 Tương tự tính chất 2
4 Theo tính chất 4, X,, X, và X,©X, sẽ thuộc về 3 tập đóng khác nhau
2.2.4 Thuật toán CHARM
CHARM dựa vào các tính chất của IT-pair để cải tiến thuật toán phát sinh tập
phổ biến thành thuật toán phát sinh tập phổ biến đóng Ý tưởng đơn giản
nhưng khá hiệu quả như sau: Cho 2 tập phổ biến X,Y c7, nếu ơ(Y)=ơ()
thì X và Y sẽ thuộc về cùng tập phổ biến đóng có tiền tố là X ‹2Y Như vậy
ta không cần xét bất cứ tập cha nào của cả X lẫn Y ngoài X +2Y Quá trình tiếp tục khám phá đệ qui bằng cách tiếp tục xét các tập cha của X27
2.2.4.1 Thuật toán Đầu vào: CSDL D và ngưỡng phổ biến mminSup
Kết quả : tập FCI gồm tất cả các tập phổ biến đóng của CSDL
Trang 1320 Add Xx¥Y to [P] // Theo thir tu f
21 else // Tinh chat 4
22 Add X x¥ to [P] // Theo thir tu f
Hình 2.3 Thuật toán tìm tập phố biến đóng thỏa ngưỡng minSup
Định nghĩa thứ tự tổng thể ƒ
Anh xa f:PU)a N là một đơn anh tir tép cdc itemset sang tap số
nguyên Với bất kì 2 itemset X; và X,, chúng ta nói rằng X, <,X, khi va
chi khi f(X,)< f(x ;)- Hàm ƒ định nghĩa một thứ tự tổng thể trên tập tất
cả các itemset Ví dụ: nếu ƒ chỉ thứ tự từ điển thì 4C < 4D nhưng nếu ƒ được sắp theo thứ tự tăng của độ phố biến các itemset thì 47 < 4C nếu
o(AC) < o(AD) Có 4 tính chất cơ bản của IT-pair (được minh họa trong
hình 3.1) làm don bay cho CHARM kham phá nhanh các tập đóng Giả sử
hiện tại chúng ta đang xử lý nút Px/(?) trong đó [P]= {,.!„, /„} là một
Trang 14
12
lớp tiền tố, gọi X, chỉ tập itemset của P/, thì mỗi thành viên của [P] là
mot cap IT-pair X, xt(X;)
Thuật toán bắt đầu bằng việc khởi tạo lớp tiền tổ [P], các nút được xét là
các item đơn phổ biến và Tidset của chúng (/,x/(,),!, <7) ở dòng 1 Giả
sử các phần tử trong [P] được sắp xếp theo thứ tự tổng thể ƒ Việc tính toán chính là thực thi hàm CHARM-EXTEND để trả về tập đóng các Itemset
PROPERTY Hàm này thay đổi lớp hiện hành [P] bằng cách xóa đi các IT-
pair da duoc gộp vào cặp khác Nó cũng thêm vào IT-pair mới trong lớp
mới [P] Nó cũng có thể thay đổi tiền tố P; trong trường hợp thỏa tính
chất 1 hoặc 2 Sau đó chúng thêm itemset P; vào tập itemset đóng C
(dòng 9) với điều kiện là P, không bị gộp bởi tập đóng được tìm thấy
trước đó Khi tất cả các ÿ đã được xử lý, chúng ta khám phá đệ qui các lớp mới LP,] sâu dan xuéng (deep-first search)
Tái sắp xếp tự động các phan tir (Dynamic element reordering)
Theo thuat toan, néu_X; va X; théa tinh chat 1 hoặc tính chất 2 thì ta sẽ
không thêm nút mới vào cây tìm kiếm Với tính chất 1, bao đóng
Trang 15
|
13
(closure) cua hai itemset là bằng nhau, vi vậy chúng ta có thể loại bỏ ÿ từ
[Pi] và thay thế P; với P; 2 J Với tính chất 2, chúng ta vẫn có thể thay thế
P; voi P; © j Trong cả hai trường hợp trên, chúng ta không thêm bất cứ
một lớp mới [P;] nào Vì vậy, càng xảy ra trường hợp | va 2 nhiều thì -
càng ít mức tìm kiếm được thực thi Ngược lại, trường hợp 3 và 4 phải
thêm vào nút mới đòi hỏi thêm mức xử lý trên cây IT-tree
Vì chúng ta muốn /(1) = /() (tính chất 1) hoặc /(1) c /(7) (tính chất 2) nên
chúng ta cần sắp xếp các itemset tăng dần theo độ phổ biến của chúng
Tại nút gốc, chúng ta sắp xếp các item tăng dần theo độ phổ biến của
chúng Với các mức còn lại, mỗi phần tử được thêm vào theo trật tự đã
sắp xếp theo độ phổ biến của mỗi lớp mới [P;] (dòng 20 & 22) Vì vậy,
việc tái sắp xếp được thực hiện đệ qui tại mỗi nút trên cây
2.2.4.2 Minh họa Hình 2.4 minh họa quá trình tìm kiếm tập FCI thỏa ngưỡng phổ biến
minSup = 50% trên cây IT-tree Đầu tiên, tập 7= {4,C,D,T, w} được sắp
xếp theo chiều tăng dần của độ phổ biến thành /= {D,T,A,W,C} Khi
=D, nd két hợp với các /e|7,4W,C} thành các nút con
LDT, DA, DW, DC}, do ơ(ĐT) = o(DA) =2 < minSup nén ca 2 khéng duoc
sinh ra ở mức kế Mặt khác, do /(Ð)m/(C) = 2456 =¿/(D) nên D không |
thể là tập đóng (theo tính chất 2) và ta thay tập D bing DUC Quá trình
tiếp tục khai thác đệ qui theo chiều sâu để tìm các tập FCI So sánh hình
3.3 và hình 2.4, có thể thấy mức tìm kiếm trong trường hợp tìm FCI giảm đáng kế so với tim FI (2 so với 4), điều này dẫn đến không gian bộ nhớ
yêu câu sẽ nhỏ hơn
Trang 16
luật còn g = Šup(X) gọi là độ phổ biến của luật Do X là phổ biến nên luật sinh
ra là phổ biến
2.3.2 Tính chất
l) Nếu X>Ƒ là luật kết hợp thì X\+z4->Y\4 cũng là luật kết hợp
VACY
2) Nếu X > là luật kết hợp thì X -> Y\4 cũng là luật két hop VACY
3) Nếu X->Y không là luật kết hợp thì X\ 4-> Y4 cũng không là luật kết hợp V4CY
Trang 17
con đóng của X có cùng độ phổ biến như X
Goi GX) la tap cac generator cua X Ta noi rang Xe GX) la mot mG nếu nó
không có tập con trong (4X) Đặt G(X) la tap tất cả các mG của X Theo định
nghĩa, ứ""{X) z Ø vì nếu nó không có generafor hoàn toàn thì chinh X la mG
Chăng hạn: xét tập đóng ACTW, cac generator la {AT, TW, ACT, ATW, CTW}
và G""(ACTW) = {AT, TW} G""(X) duge goi là tập sinh tối tiểu của X
Chúng tôi áp dụng thuật toán tìm nhanh tập sinh tối tiểu của các tập đóng được
trình bày [6]
2.3.4 Luật tổng quát
Cho Ri chỉ luật X,—##—>ÿY,; Ta nói luật R1 là tổng quát hơn luật R2, kí hiệu
RIxR2, nếu X, € X;, Y ¬Y, và XIY1 c X2L2Y2, nghĩa là R2 có thê được
sinh ra từ R1 băng cách thêm các item vào về trái hoặc giảm bớt các item ở về
phải của R1 đồng thời nó phải là luật chứa trong R1
2.3.5 Luật không dư thừa
Cho ® = {R\, Rạ, , Ra} có cùng độ phổ biến và độ tin cậy ( nghĩa là pị = p2
=.= pp Va gq; = G2 = qn) Luat Rj duge gọi là dư thừa nếu tồn tại luật R;
sao cho 1# J và R¡ x R