pY= yMin: 5 yMax: 10
Result:{10,{2,0,2,3,5,7,0,5}} rMax: 10 rMin: 3 P= 10 X: Y: Bitwise OR xMin: 3 xMax: 8
24
Chương 3: ĐỀ XUẤT THUẬT TỐN KHAI THÁC DÀN CÁC
TẬP PHỔ BIẾN ĐĨNG VÀ CẢI TIẾN
Trong phần này, giới thiệu phương pháp tiếp cận mới của luận văn áp dụng kỹ thuật Bit-Vector [24] trong việc khai thác các FCI với cấu trúc Dàn để tìm các luật kết hợp khơng dư thừa (NARs). Thơng qua việc sử dụng cĩ hiệu quả cấu trúc DSBV để lưu trữ thơng tin FCS của một tập phổ biến đĩng, xây dựng mối quan hệ giữa các tập hạng mục một cách hiệu quả trong Dàn.
Thuật tốn BVCL: Bit Vector oriented frequent Closed itemset Lattice mining.
1. Phát biểu bài tốn khai thác Dàn các tập phổ biến đĩng
Khai thác Dàn các tập phổ biến đĩng là đi tìm tất cả các tập phổ biến đĩng thõa ngưỡng minsup do người dùng đặt ra từ CSDL giao dịch, thiết lập mối quan hệ cha con của chúng tạo thành cây phân cấp mà các nút là các tập phổ biến đĩng vừa nêu.
Q trình này gồm 2 giai đoạn chính:
Giai đoạn 1: Cho cơ sở dữ liệu giao dịch D với ngưỡng minSup làm đầu vào, cơ sở
dữ liệu ngang (tid × itemset) được chuyển đổi thành dạng dọc (item x tidset) sau khi loại bỏ các item khơng phổ biến (cĩ hỗ trợ < minSup) để chuẩn bị trước cho thuật tốn. Xem
Bảng 2.3.
Giai đoạn 2: Cho C đại diện cho tập các tập phổ biến đĩng {C1, C2,. . . , Cm} và L đại
diện cho Dàn các tập phổ biến đĩng, bao gồm một tập các nút {N1, N2,. . . , Nm}. Thuật tốn của chúng ta liệt kê tất cả các tập phổ biến đĩng, mơ tả sự phụ thuộc của chúng trong Dàn.
Định nghĩa 1: Dàn FCIs và tập luật khơng dư thừa NARs
Cho CSDL D = {t1, t2,. . . , tn} của n giao dịch và {x1, x2,. . . , xm} của m item cĩ ngưỡng hỗ trợ tối thiểu (minSup) và độ tin cậy tối thiểu (minConf). Vấn đề cần là khai thác Dàn các tập phổ biến đĩng (FCIL) L = (N,R) và tập các luật khơng dư thừa là A.
25
Trong đĩ N = {N1, N2... Ni}, một tập các nút với Ni ∈ N chứa các tập phổ biến đĩng Ci ∈ C (tất cả các tập phổ biến đĩng thõa minSup) và:
R = { 𝑅𝑖𝑗 ∶ 𝑁𝑖 → 𝑁𝑗 |𝑁𝑖 , 𝑁𝑗 ∈ N and 𝑁𝑗 = minimal frequent closed superset( 𝑁𝑖 ), 1 ≤ 𝑖, 𝑗 ≤ 𝑙 } A = { 𝐴𝑘 ∶ 𝐶𝑝 ⇒ ( 𝐶𝑞 − 𝐶𝑝 ) | 𝐶𝑝 , 𝐶𝑞 ∈ C and 𝐶𝑝 ⊂ 𝐶𝑞 & 𝐶𝑜𝑛𝑓𝑖𝑑𝑒𝑛𝑐𝑒( 𝐴𝑘 ) ≥ 𝑚𝑖𝑛𝐶𝑜𝑛𝑓 , 1 ≤ 𝑝, 𝑞 ≤ 𝑙 }.
BVCL khai thác tất cả các tập phổ biến đĩng C thõa ngưỡng minSup từ một cơ sở dữ liệu D và trong quá trình khai thác tập phổ biến đĩng Ci ∈ C, tập các bao đĩng tối tiểu được xác định. BVCL kết nối mọi FCI với tập các bao đĩng tối tiểu của nĩ để thiết lập mối quan hệ cha – con giữa các nodes của Dàn, theo hướng bottom-up.
2. Thuật Tốn BVCL
Cách tiếp cận của thuật tốn là phát hiện ra tất cả các tập phổ biến đĩng theo hướng
depth first, bằng cách khai thác thơng tin tidset và superset. Đặc tả thơng tin tidset của một tập hạng mục bằng cách sử dụng cấu trúc dynamic bit-vector (DBV). Để lưu trữ thơng tin bao đĩng (closed superset) của 1 tập, luận văn đề xuất một cấu trúc dữ liệu mới gọi là DSBV. Các cấu trúc dữ liệu này được sử dụng để thiết lập mối quan hệ cha - con trên theo hướng bottom - up trong các tập phổ biến đĩng của Dàn, cho phép BVCL vượt trội hơn các phương pháp khai thác các tập phổ biến đĩng và khai thác Dàn khác.
BVCL bắt đầu quá trình khai thác bằng cách xác định tập các hạng mục phổ biến {x1, x2,. . . , xm}. Các hạng mục này được kết hợp với nhau dựa trên các thuộc tính subsuming như mơ tả trong Chương 2. Trong quá trình kết hợp này, chi phí cho tập con được hạn chế bằng cách duy trì 2 danh sách riêng biệt (subsuming and non-subsuming list). Các danh sách này được định nghĩa như sau:
Định nghĩa 2: Subsuming list (SL) and non-subsuming list (nSL):
Cho tập hạng mục X = {x1, x2, . . . ,xl}, và một item y.
Nếu X được subsumed bởi y thì y được gọi là subsuming item cho X. Ngược lại thì y gọi là non - subsuming với X.
26
Subsuming, non-subsuming items tương ứng được xây dựng với các danh sách là SLX và nSLX.
Xem xét Bảng 2.3. Item “A” được subsumed bởi item “P” theo bổ đề 1.
DBV“A" ⊆DBV“P" vì DBV“A" = DBV“A" ∩ DBV“P" DBV“A" = {0, {29}} and DBV“P" = {0, {31}}.
Tương tự, “A” được subsumed bởi item “N” và “L”. Vì vậy, subsuming List của A là SL“A" = {“P ”, “N ”, “L ”}. Non-subsuming List của A là nSL “A " = {“C ”, “M ”, “D
”}.
Cách tiếp cận của luận văn là sắp xếp theo thứ tự tăng dần hạng mục phổ biến dựa trên độ hỗ trợ của chúng. Với mỗi hạng mục phổ biến xi ∈ L = { x1 , x2 , . . . , xm }, 2 danh sách SLxi = { x’1 , x’2 , . . . , x’p } và nSLxi = { x”1 , x”2 , . . . , x”q } được thiết lập. Sau đĩ xi được sáp nhập với các hạng mục của Slxi theo bổ đề 2, kết quả là tập đĩng Ck (FCI thứ k của xi). Non-subsuming list nSLCk của Ck được khởi tạo với non-subsuming list của xi, nSLxi.
Bây giờ tập phổ biến đĩng Ck bắt đầu gọi đệ quy khai thác tập phổ biến đĩng mới là Ck+1 bằng cách kết hợp Ck với x”j bất kì ∈ nSLCk. Quá trình kết hợp theo sau quá trình kiểm tra subsume được lặp lại cho các hạng mục cịn lại { x"j+1 , . . . , x"q } của nSLCk và tiếp tục xây dựng các danh sách subsuming và non-subsuming theo cách tương tự. Tập Ck+1 được khai thác gần nhất với danh sách non-subsuming của nĩ tiếp tục quá trình khai thác các FCI theo cách depth first. Do đĩ, thuật tốn xây dựng quá trình kết hợp, tránh việc kiểm tra tập con bị lặp lại như thuật tốn DBV-Miner như sau:
Bổ đề 3:
SLCk và nSLCk đại diện cho danh sách subsuming và non-subsuming tương ứng
của tập phổ biến đĩng thứ k là Ck. Quá trình kết hợp yêu cầu khơng kiểm tra tập con (Subset) trong suốt quá trình phát sinh tập FCI thứ k+1 là Ck+1 từ Ck và xj ∈ nSLCk bất kì.
27 Chứng minh:
Tập phổ biến đĩng Ck+1 thu được từ việc kết hợp Ck với hạng mục x j ∈ nSLCk bất kì, hay Ck+1= Ck U xj. Ck+1 được tính bằng cách lặp lại quá trình kiểm tra subsume với các hạng mục cịn lại {xj+1, xj+2,. . . , xm } ∈ nSLCk dùng bổ đề 1 và bổ đề 2. Vì chỉ cĩ các mục xj ∈ nSLCk đĩng gĩp xây dựng Ck +1 bằng cách mở rộng Ck và 𝑥𝑗 ⊈ 𝐶𝑘, nên khơng cần thực hiện kiểm tra tập con để tránh tạo ra các tập thừa.
DBVCk+1 và DSBVCk+1 được xác định từ DBV và DSBV của Ck và xj. Tuy nhiên, cần xác định xem Ck+1 cĩ tạo ra tập khơng đĩng nào khơng sau khi kiểm tra sup(Ck+1) ≥ minSup. Tập S = {s1, s2,. . . , sl} là bao đĩng của Ck+1 được xác định từ DSBVCk+1 áp dụng các thuật tốn thảo luận trong Phần 5.2.1. Nếu độ hỗ trợ của bất kì bao đĩng si ∈ S = sup (Ck+1) thì Ck+1 sẽ bị loại bỏ như là tập khơng đĩng. Nếu khơng, quá trình subsuming được bắt đầu để tính tốn bao đĩng của Ck +1. Trong khi đĩ, DSBVCk +1 được cập nhật bởi DSBV của các hạng mục từ SLCk +1. Việc đệ qui của các tập đĩng trong các nhánh sẽ chấm dứt ngay sau khi danh sách non-subsuming của các hạng mục là rỗng.
Trong phương pháp này, mỗi tập đĩng Ck +1 truyền thơng tin FCS của nĩ thơng qua DSBVCk +1 ngược lên tập đĩng Ck, từ Ck mà nĩ đã được sinh ra và các tập hạng mục của SLCk+1. Kỹ thuật này đảm bảo rằng DSBV của một FCI sẽ chứa thơng tin FCS hồn chỉnh của nĩ sau khi phát sinh tất cả các tập con cháu FCI của nĩ. Vì vậy, chúng ta cĩ phần bổ đề sau đây.
Bổ đề 4:
Chiến lược dẫn xuất depth first và kỹ thuật kết hợp nhân bản cập nhật Ck+1 (từ Ck và non - subsuming list) đảm bảo tính hồn chỉnh của thơng tin FCS vào trong cấu
trúc DSBV của một tập FCI.
Chứng minh:
Một tập phổ biến đĩng C thừa hưởng thơng tin (FCS) vào cấu trúc DSBV của nĩ từ các FCIs Cha (phía trên trong cây đệ qui). Sau đĩ, C đệ qui phát sinh tất cả con cháu
28
subsuming (nSLC). Quá trình depth first khai thác các FCIs mới kết thúc ngay khi nSLC rỗng, cĩ nghĩa là FCIs cĩ thể được khai thác thêm từ C. Hơn nữa, DSBV của C (DSBVC)
được cập nhật bởi các DSBVs của các FCIs con cháu của nĩ là một quá trình truyền
thơng tin FCS dọc theo nhánh. Do đĩ, DSBVC hồn tất thu thập thơng tin FCS ngay khi
depth first thu được của tất cả các FCIs con cháu của C chấm dứt.
Vì cấu trúc DSBV của mỗi FCI chứa thơng tin FCS hồn chỉnh được nêu trong bổ đề
4, nĩ cĩ thể được sử dụng hiệu quả trong việc phát hiện các phát sinh tập khơng đĩng.
Sau khi depth first phát sinh tất cả con cháu FCIs, một tập đĩng đã khởi tạo nhánh, tiếp tục khai thác các tập phát sinh mới bằng cách kết hợp chính nĩ với các hạng mục non - subsuming cịn lại. Bổ đề sau đảm bảo quá trình loại bỏ việc phát sinh các tập thừa thơng qua thuộc tính DSBV của một Itemset.
Bổ đề 5:
Việc phát sinh các tập khơng đĩng cĩ thể được loại bỏ trước khi tính tốn bao đĩng các tập trong BVCL.
Chứng minh:
Cho X là tập phát sinh của tập ứng viên đĩng C= X U xj (xj subsumes X). X = C’ U xi, DSBVX = DSBVC’ ∩ DSBVxi (giả sử tập đĩng C’ đã khai thác) và DSBVC = DSBVX ∩
DSBVxj . Với : xi , xj nSLC’ (non-subsuminglist of C’ ), j > i. Các tập SX = { s’1 , s’2 , . . . , s’n } và SC = { s”1 , s”2 , . . . , s”m } đại diện thơng tin của X và C được xác định từ
DSBVX và DSBVC, trong đĩ SC ⊆ SX vì DSBVC ⊆ DSBVX.. Nếu vẫn cịn 1 bao đĩng s”∈ S
C mà sup (s”) = sup (C), thì C sẽ bị loại bỏ như một tập khơng đĩng. Tuy nhiên, Nếu C là
tập khơng đĩng thì nĩ cĩ thể được loại bỏ sớm bằng cách loại bỏ phát sinh X của nĩ trước khi tính tốn bao đĩng thơng qua q trình lặp subsuming vì s” SC ⊆ SX tức là s” SX và sup (X) = sup (C) = sup (s”).
BVCL tính tốn cấu trúc Dàn bằng cách mở rộng cây khai thác FCI. Nĩ xem xét tất cả các tập phổ biến đĩng Ci ∈ C của cây theo trật tự ngang trong suốt quá trình xây dựng từ dưới lên của cấu trúc Dàn L. Do đĩ, DSBV của Ci được tiếp tục sử dụng để khai thác bao
29
đĩng tối tiểu của nĩ kí hiệu bởi tập S’ = {s’1 , s’2 , . . . , s’l} Ci được liên kết với các nút bao gồm tất cả các tập đĩng của S' (đã được chèn vào mạng trước Ci) như một nút cha trong Dàn. Kết quả là, cách tiếp cận của luận văn xây dựng hiệu quả Dàn bằng cách thiết lập mối quan hệ giữa cha - con theo cách từ dưới lên. Hai định lý sau đảm bảo tính đúng đắn của phương pháp được đề xuất.
Định lý 1: BVCL liệt kê tất cả các tập phổ biến đĩng.
Chứng minh:
Giả thiết rằng một bộ các tập phổ biến đĩng (FCIs), C = {C1, C2,. . . , Cm} cĩ thể được khai thác từ cơ sở dữ liệu giao dịch với ngưỡng minSup. Một tập phổ biến đĩng Ci cĩ thể khơng được nằm trong C vì hai lý do:
(i) Ci đã bị cắt tỉa hoặc
(ii) Thuật tốn đã chấm dứt trước khi Ci được đưa vào C.
Thuật tốn thu được các FCIs bằng cách khai thác các thuộc tính (DBV) và (DSBV) của tập hạng mục. Nĩ khai thác các FCIs đại diện cho mỗi nhánh bằng cách khởi tạo subsuming của mỗi hạng mục. Sau đĩ, sẽ bắt đầu gọi đệ quy các FCIs của nhánh đĩ bằng cách mở rộng các FCIs đại diện (với các hạng mục của các danh sách non - subsuming tương ứng) sử dụng bổ đề 1 và bổ đề 2. Bổ đề 3 cũng đảm bảo hiệu quả của quá trình kết hợp.
Theo giả thiết chúng ta biết rằng sup(Ci) ≥ minSup và Ci khơng bị subsumed bởi các tập khác (Ci ∈ C). Tuy nhiên, trong cách tiếp cận được đề xuất, Ci chỉ bị cắt tỉa nếu nĩ khơng thõa độ hỗ trợ hoặc bị loại bỏ như là tập khơng đĩng phát sinh (theo bổ đề 5), nghĩa là nếu nĩ là tập đĩng thì nĩ phải nằm trong C, mâu thuẫn với giả thiết.
Hơn nữa, thuật tốn chỉ kết thúc khi nĩ hồn thành các FCIs cho tất cả các nhánh mà mỗi nhánh được khởi tạo bởi một FCI đại diện. Một nhánh hồn tất quá trình của nĩ khi các danh sách non - subsuming của FCI của nĩ là rỗng. Do đĩ, bất kỳ tập đĩng Ci ∈ C cĩ thể khơng được phát hiện theo cách tiếp cận được đề xuất chỉ khi độ hỗ trợ của các tập phát sinh của nĩ sup (cj) nằm dưới ngưỡng minSup, mâu thuẫn với giả thiết của chúng ta.
30
Định lý 2: BVCL xây dựng hồn thiện Dàn các tập phổ biến đĩng.
Chứng minh:
BVCL khởi tạo quá trình đệ quy để khai thác các tập đĩng sau khi tìm ra các tập đĩng đại diện thơng qua quá trình xử lý subsuming. Nĩ phát sinh tập tất cả các tập đĩng C bằng cách mở rộng các FCIs đại diện với các hạng mục trong các danh sách non -
subsuming tương ứng của chúng. Các hạng mục của danh sách non - subsuming khơng được sắp xếp dựa trên độ hỗ trợ và các tập đĩng được liệt kê dùng chiến lược depth first.
BVCL thiết lập mối quan hệ cha – con bằng cách xem xét tất cả các tập đĩng theo trật tự hàng ngang. Nĩ bảo đảm rằng với bất kỳ hai tập đĩng Ci và Cj, nếu Ci ⊂ Cj, thì Cj được chèn vào Dàn như là một nút mới Nj trước Ni. Ngược lại, trong quá trình chèn Ci như là một nút mới Ni vào Dàn L, Ni được liên kết với Nj trực tiếp bằng cách thỏa Ci = bao đĩng tối tiểu(Cj) hoặc gián tiếp qua một nút Nk (đã được chèn vào L) bằng cách thõa Ci ⊂ Cj = bao đĩng tối tiểu (Ck), trong đĩ Ck ∈ Nk. Như vậy, BVCL thành cơng xây dựng cấu trúc Dàn các tập phổ biến đĩng theo cách từ dưới lên bằng cách duy trì mối quan hệ cha - con cho mỗi cặp FCIs trong Dàn.
2.1 Lưu đồ tổng quát của thuật tốn
Quá trình tổng quát của BVCL được thể hiện trong Hình 2.2 sử dụng sơ đồ khối. Luận văn cũng minh họa cách tiếp cận sử dụng cơ sở dữ liệu book - store mẫu trong
31