Thế giới
Nga
Miền Bắc Miền Trung Miền Nam
Hà nội Đà nẵng HCM
Nhiều phân bậc khái niệm được ngầm định trong sơ đồ CSDL. Chẳng hạn
đối với chiều vị trí, giả sử rằng vị trí được mô tả bởi các thuộc tính như: so_nha, ten_pho, thanh_pho, ten_thi_xa, ten_vung, và ten_nuoc. Giả sử có quan hệ thứ tự toàn phần trên các thuộc tính này và khi đó sẽ hình thành phân bậc khái niệm, chẳng hạn: “so_nha<ten_pho<ten_thi_xa <thanh_pho<ten_vung<ten_nuoc”.
Nếu trên các thuộc tính của chiều chỉ tồn tại các quan hệ thứ tự từng phần, khi đó sẽ hình thành một cấu trúc dàn đối với các thuộc tính của chiều. Chẳng hạn so_nha< ten_pho<{thanh_pho; ten_thi_ xa}<ten_vung<ten_nuoc. Cấu trúc dàn này được minh hoạ trong hình 10 ở dưới.
Hình 10: Cấu trúc dàn của các thuộc tính đối với chiều vi_tri trong DW Bán hàng
Phân bậc khái niệm giữa các thuộc tính trong một CSDL được gọi là sơ đồ phân bậc. Phân bậc khái niệm cũng có thể được xác định bằng cách sử
dụng phương pháp rời rạc hoặc nhóm các giá trị đối với một chiều hoặc một thuộc tính cho trước. Nói chung là có nhiều phân bậc khái niệm đối với một thuộc tính hoặc một chiều cho trước. Điều đó phụ thuộc vào quan điểm của
Ten_nuoc
ten_thi_xa thanh_pho
Ten_pho
So_nha Ten_vung
người sử dụng. Các phân bậc khái niệm do người sử dụng hệ thống, chuyên gia xác định, nhưng cũng có thể được sinh ra một cách tựđộng dựa trên các phân tích thống kê của phân bố dữ liệu.
Kết luận
Trong chương 1 đã trình bày các vấn đề liên quan đến kho dữ liệu: Khái niệm kho dữ liệu (DW), bốn mục đích khi xây dựng kho dữ liệu, sáu đặc
điểm của kho dữ liệu.
Trong chương này cũng đưa ra mô hình của DW với khái niệm về khối dữ liệu, các mô hình 2-D, 3-D… biểu diễn cho dữ liệu 2 chiều, 3 chiều,… Cơ
sở dữ liệu nhiều chiều cũng được thể hiện bằng các sơ đồ: hình sao, bông tuyết, chòm sao sự kiện. Đây là cơ sở để biểu diễn dữ liệu trước khi phát hiện tri thức. Nó là tiền đề cho thuật toán phát hiện luật kết hợp ở chương sau. Các vấn đề về luật kết hợp sẽđược trình bày ở chương 2.
Cuối chương này cũng trình bày một loại kho DW là kho dữ liệu chủđề
gồm: kho dữ liệu chủ đềđộc lập và kho dữ liệu chủ đề phụ thuộc. Các thuộc tính chiều trong cơ sở dữ liệu có thể được thể hiện trong các mức của phân bậc khái niệm. Nói tóm lại, chương 1 cung cấp những khái niệm và các vấn
đề cơ bản làm tiền đề cho các chương tiếp sau.
Chương 2 PHÁT HIỆN LUẬT KẾT HỢP NHIỀU CHIỀU 2.1. Mô hình hình thức của phát hiện luật kết hợp
Kí hiệu I = {i1, i2, …, im} là tập các thuộc tính nhị phân (mỗi thuộc tính biểu thị một mặt hàng trong siêu thị và được gọi là một mục dữ liệu); tập X ⊂ I được gọi là tập mục dữ liệu; TID là tập định danh của các tác vụ (mỗi vụ mua hàng được xem là một tác vụ). Quan hệ nhị phân D ⊂ I x TID được gọi là cơ sở dữ liệu. Mỗi tác vụ t có thể được biểu diễn như một véc tơ nhị
phân, với t[k] = 1 nếu t mua mặt hàng ik, ngược lại t[k] = 0. Một tác vụ t
được gọi là chứa tập mục dữ liệu X nếu X ⊂ t. Chẳng hạn ở cơ sở dữ liệu D
được minh hoạ ở bảng 3, ta có I = { A, C, D, T, W } và TID = {1, 2, 3, 4, 5, 6}, tác vụ 1 chứa tập X = {A, C, T, W}.
Luật kết hợp biểu thị mối quan hệ giữa tập con của các tập mục dữ liệu. Một luật kết hợp ngầm định ở dạng X → Y, (X được gọi là tiền đề, Y được gọi là hệ quả) với X, Y là các tập mục dữ liệu (hay itemset) và X ∩Y = ∅. [2],[11]
Ở đây, tập mục dữ liệu X được nói là có độ hỗ trợ (hoặc tần suất) s trong cơ sở dữ liệu D nếu có s% của các tác vụ trong D chứa tập mục dữ liệu này[2],[5],[10],[14]
Luật kết hợp (X → Y) được nói là có độ tin cậy c trong D nếu có c% của các tác vụ chứa X cũng chứa Y.
Kí hiệu:
SuppX là độ hỗ trợ của X , Supp(X) = || t∈ D sao cho X ⊂ t|| / ||D||
Conf(X→ Y) là độ tin cậy của luật X→ Y, Conf(X → Y) =Supp(X∪Y)/Supp(X)
Luật (X → Y) có độ hỗ trợ Supp(X → Y) trong D với Supp(X→Y)=Supp(X∪Y).
Ví dụ: Cho CSDL tác vụ dưới đây, trong đó A, B, C, D là các mục dữ liệu; Ti
(Ti=1, 2, 3, 4, 5, 6 ) là các tác vụ. Tập các tác vụ Các mục dữ liệu 1 2 3 4 5 6 A C T W C D W A C T W A C D W A C D T W C D T Bảng 3: CSDL tác vụ tại một cửa hàng
Biểu diễn dưới dạng nhị phân: mỗi giá trị của mục dữ liệu (Item) thể
hiện thuộc tính xuất hiện, hay không xuất hiện (nhận giá trị 0) trong tác vụ.
TID A C D T W T1 1 1 0 1 1 T2 0 1 1 0 1 T3 1 1 0 1 1 T4 1 1 1 0 1 T5 1 1 1 1 1 T6 0 1 1 1 0
Bảng 4: Cơ sở dữ liệu tác vụ và được biểu diển dưới dạng bảng
Định nghĩa tập phổ biến: Tập X được gọi là phổ biến nếu Supp(X) ≥
minSupp, ở đây minSupp là giá trị nào đó do người sử dụng đưa vào và được gọi là độ hỗ trợ cực tiểu.
Định nghĩa độ tin cậy: Luật kết hợp r = X → Y được gọi là luật tin cậy hay luật mong muốn khi và chỉ khi Supp(r) ≥ minSupp và Conf(r) ≥ minConf, ở đây minSupp và minConf là ngưỡng cho trước của các độ hỗ trợ và độ tin cậy và tương ứng được gọi là độ hỗ trợ cực tiểu và độ tin cậy cực tiểu.
Luật kết hợp tin cậy r = X → Y được gọi là luật chính xác nếu Conf(r) = 1 và được gọi là xấp xỉ nếu Conf(r) < 1.
Ngữ nghĩa của luật kết hợp: Luật kết hợp r = X → Y có độ hỗ trợ α và độ
tin cậy β, qui ước viết gọn dưới dạng X → Y (α; β) có nghĩa là đối với cơ sở
dữ liệu đã cho có α% các tác vụ chứa cả hai tập mục dữ liệu X, Y; trong đó có β% các tác vụ chứa tập mục dữ liệu X cũng sẽ chứa tập mục dữ liệu Y.
Ví dụ: Xét luật AW→C trong ví dụ 2 thì tập mục dữ liệu ACW có độ hỗ trợ là 67% và luật này có độ tin cậy là 100% nên có thể viết luật này dưới dạng AW→C(0,67;1,0).
Trong lĩnh vực bán hàng có thể diễn giải như sau:
- Có 67% những vụ mua sắm mua cả 3 mặt hàng A, C, W. - 100% những vụ mua sắm có mua A, W cũng mua C.
Việc tìm ra các luật kết hợp kiểu như vậy sẽ tăng cường các chức năng truy vấn cơ sở dữ liệu và kết xuất thông tin, tri thức từ dữ liệu, chẳng hạn:
• Nhận diện được tất cả các luật có chứa mặt hàng C như là hệ quả. Các luật này giúp cửa hàng xây dựng nội dung và thực hiện kế hoạch quảng cáo cho việc bán mặt hàng C.
• Nhận diện được tất cả các luật có các mặt hàng A, W ở trong tiền đề. Các luật này giúp xác định được những mặt hàng nào sẽ bị ảnh hưởng và tồn
• Nhận được tất cả các luật có A, W trong phần tiền đề, C nằm trong phần hệ quả. Các luật này giúp cửa hàng xác định được những mặt hàng cần bổ
sung thêm để nó cùng được bán với các mặt hàng A, W trong khi vẫn tôn trọng mong muốn là mặt hàng C cũng sẽđược bán.
Nhận được tất cả các luật liên quan đến các mặt hàng bố trí ở mỗi gian hàng trong cửa hàng. Các luật này giúp bố trí sắp xếp cửa hàng sao cho việc bán các mặt hàng trong gian này tác dụng thúc đẩy việc bán các mặt hàng trong gian kia.
2.2. Phát hiện luật kết hợp nhiều chiều
2.2.1. Các khái niệm cơ bản a. CSDL tác vụ nhiều chiều a. CSDL tác vụ nhiều chiều
Trong phát hiện luật kết hợp truyền thống, CSDL được sử dụng để phát hiện được tổ chức thành một tập các bản ghi dựa vào mối quan hệ giữa các tập mục dữ liệu trong một tác vụ [6],[20]. Do đó, chỉ xem xét được các tập mục dữ liệu mà bỏ qua các thuộc tính khác được kết hợp với các tác vụ như: thời gian, điạ điểm, các khách hàng. Trong khi, các thuộc tính, các ngữ cảnh của các tác vụ cũng cần phải được quan tâm. Trong bảng 5, là ví dụ minh hoạ
một CSDL tác vụ về các mặt hàng tại các siêu thị (ID- chỉ số tác vụ xảy ra;
X,Y là các chiều đựoc thể hiện bằng các trục toạ độ; các mục dữ liệu). Mỗi bản ghi chứa một danh sách các tập mục dữ liệu a, b, c, d thể hiện cho các mặt hàng và các vị trí toạđộ x, y của các mục dữ liệu thể hiện cho các chiều như: thời gian, vị trí
ID X Y các mục dữ liệu t1 0 0 {a, b, c} t2 1 0 {b} t3 2 0 {b, c} t4 3 0 {d } t5 4 0 {b, c } t6 0 1 {b, c} t7 1 1 {d} t8 2 1 {a} t9 3 1 {b} t10 4 1 {a} t11 0 2 {a} t12 1 2 {b} t13 2 2 {b, c} t14 3 2 {b} t15 4 2 {b} t16 0 3 {b, c} t17 1 3 {d} t18 2 3 {a} t19 3 3 {b, c} t20 4 3 {a} Bảng 5:CSDL tác vụ tại một siêu thị
Mỗi mục dữ liệu được thể hiện như điểm tham chiếu theo các trục toạ độ
Trong phát hiện luật kết hợp nhiều chiều, một tác vụđược định nghĩa gồm hai phần thông tin: danh sách các tập mục dữ liệu và ngữ cảnh xem xét các tác vụ
[9,12]. Ở đây, các tập mục dữ liệu trong cơ sở dữ liệu tác vụ nhiều chiều có thể là các mặt hàng trong một siêu thị hoặc tên các của hàng đại lý của một hãng kinh doanh… Ngữ cảnh xem xét thường được định nghĩa bởi m thuộc tính: d1, d2,…, dm mà mỗi thuộc tính thể hiện cho một chiều. Các thuộc tính chiều có thể là: thời gian, khoảng cách, nhiệt độ, vị trí… Trong CSDL ở trên, ta có hai thuộc tính chiều là x và y thể hiện thời gian là ngày mua bán và vị
trí.
CSDL nhiều chiều sẽđược định nghĩa như sau:
Kí hiệu: Ι={i1,i2,...,iω } là tập hợp các mục dữ liệu } D ,..., D , {D1 2 m =
D là tập hợp các chiều của thuộc tính.
Khi đó, CSDL nhiều chiều là tập các tác vụ T = {t1, t2, …, tn}, với mỗi tác vụ
T có dạng: (d1, d2, . . . , dm, A) với di∈Di, 1 ≤ i ≤ m và A ⊂ I.[13]
Ví dụ, trong bảng 5 - CSDL nhiều chiều tại một siêu thị với I={a,b,c}, D={X,Y}. ta có: T={t1, t2,,t3,,t4,, …, t20}. Trong đó, t1=(0,0,{a,b,c}); t2=(1,0,{b}); t3=(2,0,{b,c}); t4=(3,0,{d}); t5=(4,0,{b,c}); t6=(0,1,{b,c});t7=(1,1,{d}); t8=(2,1,{a}); t9=(3,1,{b}); t10=(4,1,{a}); t11=(0,2,{a}); t12=(1,2,{b}); t13=(2,2,{b,c}); t14=(3,2,{b,c}); t15=(4,2,{b}); t16=(0,3,{b,c}); t17=(1,3,{d}); t18=(2,3,{a}); t19=(3,3,{b,c}); t20=(4,3,{a}); b. Ngữ cảnh điểm của các tác vụ
Tác vụ xảy ra trong ngữ cảnh nhiều chiều (d1, d2, . . . , dm), ngữ cảnh đó
được gọi là ngữ cảnh điểm của các tác vụ và kí hiệu là : ∆(d1, d2, ..., dm). Ví dụ, trong bảng 5- ngữ cảnh điểm tác vụ thứ nhất t1 là (0,0) và kí hiệu:
c. Tác vụ mở rộng
Tác vụ xảy ra trong ngữ cảnh điểm được gọi là tác vụ mở rộng, kí hiệu là: ∆(d1, d2, ..., dm) (t).
Ví dụ, theo 5- Kí hiệu ∆(0,0) (t1) là tác vụ mở rộng của t1.
d. Mục dữ liệu mở rộng:
Mục dữ liệu i∈I xuất hiện trong ngữ cảnh m -chiều ∆(d1, d2, ..., dm) được gọi là mục dữ liệu mở rộng, kí hiệu là: ∆(d1, d2, ..., dm) (i). Ví dụ: sử dụng các kí hiệu trên để biểu diễn dữ liệu bảng 5 thành dữ liệu trong bảng 6 như sau: Tác vụ (x,y,I) Tác vụ mở rộng Các mục dữ liệu mở rộng t1 (0,0,{a,b,c}) ∆(0,0)t1 ∆(0,0) (a),∆(0,0) (b),∆(0,0) (c) t2 (1,0,{b}) ∆(1,0)t2 ∆(1,0) (b) t3 (2,0,{b,c}) ∆(2,0)t3 ∆(2,0) (b),∆(2,0) (c) t4 (3,0,{d}) ∆(3,0)t4 ∆(3,0) (d) t5 (4,0,{b,c}) ∆(4,0)t5 ∆(4,0) (b), ∆(4,0) (c) t6 (0,1,{b,c}) ∆(0,1)t6 ∆(0,1) (b), ∆(0,1) (c) t7 (1,1,{d}) ∆(1,1)t7 ∆(1,1) (d) t8 (2,1,{a}) ∆(2,1)t8 ∆(2,1) (a) t9 (3,1,{b}) ∆(3,1)t9 ∆(3,1) (b) t10 (4,1,{a}) ∆(4,1)t10 ∆(4,1) (a) t11 (0,2,{a}) ∆(0,2)t11 ∆(0,2) (a) t12 (1,2,{b}) ∆(1,2)t12 ∆(1,2) (b) t13 (2,2,{b,c}) ∆(2,2)t13 ∆(2,2) (b), ∆(2,2) (c) t14 (3,2,{b}) ∆(3,2)t14 ∆(3,2) (b) t15 (4,2,{b}) ∆(4,2)t15 ∆(4,2) (b) t16 (0,3,{b,c}) ∆(0,3)t16 ∆(0,3) (b), ∆(0,3) (b) t17 (1,3,{d}) ∆(1,3)t17 ∆(1,3) (d) t18 (2,3,{a}) ∆(2,3)t18 ∆(2,3) (a) t19 (3,3,{b,c}) ∆(3,3)t19 ∆(3,3) (b), ∆(3,3) (c) t20 (4,3,{a}) ∆(4,3)t20 ∆(4,3) (a)
Nhận xét: một mục dữ liệu mở rộng hoàn toàn xác định được một điểm trong không gian m chiều.
e. Tập mục dữ liệu mở rộng Tập hợp các mục dữ liệu mở rộng được gọi là tập mục dữ liệu mở rộng, kí hiệu là: { (d ,d ,...,d )(i1), (d ,d ,...,d )(i2),..., (d ,d ,...,d )(ik)} m k, k,2 k,1 m 2, 2,2 2,1 m 1, 1,2 1,1 ∆ ∆ ∆ = e I
với )∀j(1≤ j≤k - thứ tự các mục dữ liệu, )∀i(1≤i≤m - số chiều trong không gian, dj,i : là giá trị toạđộ của tập mục dữ liệu thứ j trong chiều thứ i.
Trong CSDL bảng 6, Ie= {∆(0,0) (a), ∆(0,0) (b), ∆(0,0) (c)}; Ie' = {∆(0,0) (a), ∆(1,0)
(b)} là các tập mục dữ liệu mở rộng.
f. Khoảng cách tương đối giữa 2 điểm trong không gian
Giả sử: )ni =(ni.d1,ni.d2,...,ni.dm và nj =(nj.d1,nj.d2,...,nj.dm) là 2
điểm trong không gian m chiều và toạđộ của chúng trong không gian m chiều là: ni.d1,ni.d2,...,ni.dm và nj.d1,nj.d2,...,nj.dm Hai điểm ni và nj là trùng nhau nếu và chỉ nếu: ∀k(1 ≤ k ≤ m), (ni.dk = nj.dk). Ta có khoảng cách giữa 2 điểm ni và nj là: ) . . ,...., . . , . . ( ) , (ni nj = nj d1 −ni d1 nj d2 −ni d2 nj dm −ni dm Κ
Như vậy, nếu ta có điểm ni thì hoàn toàn xác định được giá trị toạ độ của nó trong không gian m chiều là ni.d1,ni.d2,...,ni.dm, và nó có thể được biểu diễn như một khoảng cách tương đối khi tham chiếu đến điểm n0 là: K(n0,ni). (với n0=(0,0,…,0))
g. Điểm tham chiếu lớn nhất
Cho N = {n1, n2, . . . , nu} là tập các điểm trong không gian m-chiều. Điểm tham chiếu lớn nhất của N là nθ thoả mãn với ∀k (1 ≤ k ≤ m)
) . ,...., . , . min( .dk n1 dk n2 dk nu dk nθ =
Ví dụ, Cho 2 điểm n1= (0,2), n2=(1,1) trong không gian 2 chiều, điểm tham chiếu lớn nhất của (n1, n2) là nθ = (0,1). Vì nθ.d1= min(n1.d1, n2.d1) = min(0,1)=0 và nθ.d2=min(n1.d2, n2 .d2) = min(2,1)=1
Như vậy, trong không gian m - chiều ta hoàn toàn xác định được điểm ni khi biết K(ni.a1 −nθ.a1,ni.a2 −nθ.a2,...,ni.am −nθ.am), ởđây nθ là tham chiếu nào đó được xác định trước.
h. Tập mục dữ liệu mở rộng chuẩn
Một tập mục dữ liệu mở rộng được gọi là tập mục dữ liệu mở rộng chuẩn nếu
điểm tham chiếu của tập mục dữ liệu mở rộng trong Ie là điểm tham chiếu lớn nhất, và với ∀j (1 ≤ j ≤ k), ∀i (1 ≤ i ≤ m) (min(dj, i) = 0) . Kí hiệu: INE là tập mục dữ liệu mở rộng chuẩn. Ví dụ, trong hình 11, ta có Ie={∆(0, 0) (a), ∆(0,1)(c), ∆(1,1) (d)}là tập mục dữ liệu mở rộng chuẩn vì mục dữ liệu mở rộng thứ nhất ∆(0, 0) (a) có d1,1=0, d1,2=0, mục dữ liệu mở rộng thứ hai ∆(0,1)(c) có d2,1=0, d2,2=1, tập mục dữ liệu mở rộng thứ ba ∆(1,1) (d) có d3,1=1, d3,2=1. Do đó, min(d1,1 , d2,1 , d3,1)=min(0,0,1)=0 và min(d1,2 ,d2,2, d3,2)= min(0,1,1)=0 có nghĩa là giá trị toạ độ nhỏ nhất của 3 mục dữ liệu a, c, d trong 2 chiều x và y trong Ie là 0.
i. Tập tác vụ mở rộng chuẩn
Kí hiệu: TNE: là tập tác vụ mở rộng chuẩn
Ví dụ: T1={U(0,0)(t1),U(0,1)(t6),U(1,1)(t7)}là tập tác vụ mở rộng chuẩn vì có chứa các tập mục dữ liệu mở rộng chuẩn như: Ie={∆(0, 0) (a), ∆(0,1)(c), ∆(1,1)
(d)}
Nhận xét:
- Bất kỳ tập mục dữ liệu không chuẩn nào đều có thể được chuyển thành một tập mục dữ liệu chuẩn thông qua một hàm chuẩn được gọi là Norm với mục đích là để chứa tất cả các tập mục dữ liệu mở rộng hoặc tác vụ mở rộng phức tạp dựa vào điểm tham chiếu lớn nhất của tập mục dữ liệu này.
Ví dụ: ta có tập Ie' ={∆(0,2)(a), ∆(0,3) (c), ∆(1,3) (d)} là tập mục dữ liệu không chuẩn vì giá trị nhỏ nhất của y trong Ie' là 2. Ta có thể chuẩn hoá tập mục dữ
liệu Ie' thành Ie"={∆(0, 0) (a), ∆(0,1)(c), ∆(1,1) (d)}, nó giống với Ie bằng cách tịnh tiến các điểm theo toạđộ (0,2).
- Tập mục dữ liệu mở rộng chuẩn dùng để tìm ra các mẫu giống nhau trong một không gian đa chiều.
Tính chất 1: Bất kỳ một tập lớn hơn tập mục dữ liệu mở rộng chuẩn (tập tác vụ mở rộng chuẩn) cũng là một tập mục dữ liệu mở rộng chuẩn (tập tác vụ
chuẩn). Chứng minh:
Giả sử INE là tập mục dữ liệu chuẩn tức là: Ie có điểm tham chiếu lớn nhất. Dựa vào định nghĩa: )} (i ),..., (i ), (i { (d ,d ,...,d ) 1 (d ,d ,...,d ) 2 (d ,d ,...,d ) k m k, k,2 k,1 m 2, 2,2 2,1 m 1, 1,2 1,1 ∆ ∆ ∆ = e I ∀j (1 ≤ j ≤ k), ∀i (1 ≤ i ≤ m) ta có (min(dj, i) = 0) .
Nếu A ⊃ INE tức là trong A cũng có một điểm tham chiếu lớn nhất