Khai thác tập mục có lợi ích cao

Một phần của tài liệu khai thác dữ liệu phân tán bảo toàn tính riêng tư (Trang 83 - 89)

2.5.1. Đặt vấn đề

Khai thác tập mục có ích cao (High Utility Itemsets - HUIs) là dạng tổng quát của khai thác tập phổ biến (Frequent Itemsets - FIs). Mục đích của nó là nhằm tìm các tập mục có độ có ích cao từ cơ sở dữ liệu. Tính hữu ích của một tập mục đƣợc mô tả nhƣ là một ràng buộc về độ có ích. Nghĩa là, một tập mục đƣợc ngƣời dùng quan tâm chỉ khi độ có ích của nó thỏa ràng buộc độ có ích cho trƣớc. Tính hữu dụng của một tập mục đƣợc tính theo giá trị chủ quan và giá trị khách quan của các mục. Giá trị chủ quan của mục, gọi là xpq, là giá trị liên quan đến mục ip trong giao tác tq. Giá trị chủ quan của mục, gọi là yq, là giá trị thực tế do ngƣời dùng gán sao cho hai mục ip và iq bất kỳ. Bài toán khai thác tập mục dựa trên độ có ích khám phá tập HUIs là tập chứa tất cả các tập mục có độ có ích cao, nghĩa là, HUIs = { S | S

I

 , u(S)  minutil}. Trong đó:      S i t T p pq p q S y x f S

u( ) ( , ), với f(xpq,yp)xpqyp, và TS là tập giao tác có chứa S. Tuy nhiên, khơng giống nhƣ khai thác FIs, HUIs khơng thoả tính chất Apriori, nghĩa là tập con của một tập mục có ích cao khơng chắc là tập mục có ích cao. Vì vậy, ta khơng thể sử dụng hồn tồn các thuật tốn khai thác FIs để khai thác HUIs.

Trong [13], các tác giả đã đề xuất cấu trúc dữ liệu WIT-tree (Weighted Itemset- Tidset tree), một mở rộng của IT-tree, để tìm HUIs.

2.5.2. Khai thác tập mục có lợi ích cao

Lớp tƣơng đƣơng : Cho I là tập các items. p(X, k) = X[1:k] là hàm nhận kết quả gồm k phần tử đầu của X. Một quan hệ tƣơng đƣơng dựa vào tiền tố ktrên itemset đƣợc định nghĩa nhƣ sau: X, Y  I, X

k

 Y  p(X, k) = p(Y, k).

Đỉnh: Có 3 trƣờng : X: itemset; Tidset: Tập giao tác chứa X ; twu: Tổng độ có ích theo trọng số giao tác của X.

Biểu thị một đỉnh là

)

(X

twuTidset

X  .

Cung: Nối từ một đỉnh X ở mức k đến đỉnh Y ở mức (k+1)sao cho X k Y. Ví dụ 2.5: Xét cơ sở dữ liệu sau:

Bảng 2.15 Bảng giá trị khách quan Bảng 2.16 Bảng giá trị chủ quan

Ta có WIT-tree trong khai thác HUIs nhƣ sau:

item TID A B C D E Twu T1 0 0 16 0 1 21 T2 0 12 0 2 1 71 T3 2 0 1 0 1 12 T4 1 0 0 2 1 14 T5 0 0 4 0 2 14 T6 1 2 0 0 0 13 T7 0 20 0 2 1 111 T8 3 0 25 6 1 57 T9 1 2 0 0 0 13 T10 0 12 2 0 2 72 Item Benefit A 3 B 5 C 1 D 3 E 5

Chúng ta có thể thấy, giá trị twu(X) là tổng các giá trị twu của các giao tác mà tid của chúng chứa trong Tidset. Vì vậy, tính twu(X) và u(X) sẽ đƣợc thực hiện

nhanh chóng dựa vào Tidset.

Thuật tốn TWU-Mining dựa trên WIT-tree để khai thác HUIs. Có 2 giai đoạn trong thuật tốn:

Giai đoạn 1 tìm tất cả tập mục có độ có ích trọng số giao tác cao.

Giai đoạn 2 chọn tất cả tập mục có độ có ích cao. Thật ra, giai đoạn 2 tính các

giá trị có ích dựa trên Tidset.

Đầu vào : CSDL gồm 2 bảng: Khách quan và chủ quan, ngƣỡng minutil. Đầu ra: HUIs chứa tất cả tập mục có ích cao.

Hình 2.18 Thuật tốn TWU-Mining

Thuật tốn bắt đầu bằng cách khởi tạo lớp tƣơng đƣơng rỗng ([]) chứa các mục đơn i sao cho twu(i)  minutil, sau đó gọi hàm TWU-Mining-Extend, đầu vào của hàm này là lớp tƣơng đƣơng P ([P]): Xét mỗi đỉnh li với các đỉnh sau lj, với X =

li lj, tính Y = Tidset(X) = Tidset(li)  Tidset(lj) (chi tiết xin xem [29]), nếu twu(X)

TWU-Mining()

HUIs = 

[] = {it(i)| i  I  twu(i) minutil} TWU-Mining-Extend([], minutil)

TWU-Mining-Extend ([P], minutil)

// Phase 1

1. for all li  [P] do 2. [Pi] = 

3. for all lj  [P], with j > i do 4. X = li  lj

5. Y = Tidset(li)  Tidset(lj) 6. if twu(X)  minutil then

7. [Pi] = [Pi]  { ) (X twu Y X } 8. TWU-Mining-Extend([Pi], minutil) // Phase 2 9. foreach itemset s in [P] do 10. If u(s)  minutil then 11. HUIs = HUIs  s

(đƣợc tính thơng qua Tidset(X)) thoả minutil, thêm đỉnh mới

) (X twu Y

X vào lớp tƣơng đƣơng [Pi], thuật toán gọi đệ qui để tìm các lớp tƣơng đƣơng ở mức sau đến khi khơng cịn đỉnh nào đƣợc tạo ra. Với mỗi lớp tƣơng đƣơng [P], thuật tốn tính giá trị có ích của tập mục dựa trên Tidset, nếu u(s)  minutil, thêm nó vào HUIs.

Ví dụ 2.6 (Minh họa thuật tốn TWU-Mining)

Xét q trình khai thác HUIs dựa trên thuật tốn TWU-Mining với minutil = 130. Xét lớp tƣơng đƣơng [B],(hình 2.16)

Kết hợp với C, ta có itemset mới BC10 với twu(BC) = 72 < minutil, loại bỏ BC. Kết hợp với D, ta có itemset mới BD27 với twu(BD) = 71 + 111 = 182.

Kết hợp với E, ta có itemset mới BE2710 với twu(BE) = 71 + 111 + 72 = 254. Tiếp đó, tính u(BD) = 172, thoả minutil, vì vậy thêm vào HUIs, HUIs = {B, BC}. Ta tính u(BE) = 240, thoả minutil, và thêm vào HUIs, HUIs = {B, BC, BE}.

Tƣơng tự nhƣ vậy, xét lớp tƣơng đƣơng [BD]: kết hợp với BE, ta có itemset mới BDE27 với twu(BDE) = 71 + 111 = 182

Tiếp đó, tính u(BDE) = 182, thoả minutil, vì vậy thêm vào HUIs, HUIs = {B, BC,

BE, BDE}.

Làm tƣơng tự cho các bƣớc tiếp theo ta có kết quả chi tiết trong hình 2.18.

Nhận xét thuật toán:

Các tác giả trong [14] đã giới thiệu một phƣơng pháp mới để khai thác tập mục có ích cao từ CSDL và đƣa ra thuật tốn hiệu quả để khai thác HUIs. Nhƣ đã đƣợc đề cập ở trên, thuật toán dựa trên WIT-tree hiệu quả hơn các thuật toán dựa trên Apriori. Bằng kỹ thuật WIT-tree, thuật toán chỉ quét CSDL 1 lần dựa trên phần giao giữa các Tidset để tính nhanh giá trị có ích và giá trị trọng số giao tác của các tập mục. Trong phần thực nghiệm thuật toán cũng cho thấy thời gian thực thi của thuật toán TWU-Mining nhanh hơn Two-Phase. Ví dụ: Trong cơ sở dữ liệu MBS-POS với minutil = 1%, thời gian khai thác của Two-Phase khoảng 569 giây, trong khi thời gian khai thác của TWU-Mining khoảng 183 giây (bảng 2.18).

Thực nghiệm thuật toán:

Tất cả các thuật toán đƣợc viết bằng C# 2005. Cấu hình PC dùng cho thực nghiệm là CPU Intel 2.0 GHz Centrino, RAM 1 GB, Windows XP. CSDL thực nghiệm có đặc điểm nhƣ sau:

Database Trans Items

BMS-POS 515597 1656 Retail 88162 16469

Bảng 2.17 CSDL thực nghiệm

Chúng tôi bổ sung bằng cách thêm cột giá trị (ngẫu nhiên từ 1 đến 10) cho mỗi item tƣơng ứng với mỗi giao tác, và tạo thêm một bảng để lƣu giá trị lợi nhuận của các item (trong phạm vi từ 1 đến 10).

Do thuật toán Two-Phase [44] đƣợc so sánh là nhanh hơn các thuật tốn khác dựa vào biên trên có ích và đã đƣợc chứng minh trong [26],[27], vì vậy chúng tơi chỉ so sánh thuật tốn với Two-Phase.

Minutil(%) Two-Phase (s) TWU-Mining (s) HUIs

5 51.89 27.59 4

4 73.73 39.05 6

3 117.72 55.67 7

2 205.09 95.56 22

1 569.22 182.67 161

Minutil(%) Two-Phase (s) TWU-Mining (s) HUIs 1 7.67 7.46 20 0.8 11.38 11.31 29 0.6 24.63 23.23 45 0.4 60.25 57.69 64 0.2 210.78 178.19 239 0.1 546.03 426.27 800

Bảng 2.19 Bảng thực nghiệm 2 thuật toán trong CSDL Retail

Từ kết quả của bảng 2.17 và bảng 2.18, chúng ta thấy thời gian thực thi của thuật toán TWU-Mining nhanh hơn Two-Phase. Với ngƣỡng minutil càng nhỏ, khoảng cách thời gian khai thác của 2 thuật tốn càng lớn. Điều đó cho thấy thuật toán TWU-Mining hiệu quả hơn một số thuật toán khác. Tuy nhiên, vào năm 2009 các tát giả trong [16] đã đề xuất phƣơng pháp sử dụng thuật toán TWU-Mining trong khai thác CSDL phân tán dọc. Với giả sử ban đầu là dữ liệu đã đƣợc phân tán tại hai bên và tiến hành theo phƣơng pháp mới là tính tốn một bƣớc trƣớc khi thu tập dữ liệu vào bên khai thác (Master). Vì vậy, thời gian khai thác tại Master sẽ ít hơn khi sử dụng TWU-Mining trên CSDL tập trung. Kết quả thực nghiệm [16] cho thấy, thời gian khai thác trên CSDL Retail với ngƣỡng minutil là 0.8 thuật toán TWU- Mining chạy hết 11.31s trong khi TWU-Mining Distribute chay hết 8.16s.

2.6. Kết chƣơng

Nội dung chƣơng 2 đã trình bày về các vấn đề: khai thác trên cơ sở dữ liệu phân tán dọc và cơ sở dữ liệu phân tán ngang. Trong đó cũng đã trình bày một số thuật tốn do tác giả luận án đề xuất gồm: các thuật toán khai thác trên CSDL phân tán dọc với các phép kết ngoại khác nhau đƣợc phát triển từ phƣơng pháp IT-Tree, thuật toán khai thác tập mục lợi ích cao, thuật tốn khai thác song song trên CSDL phân tán dọc. Các thuật toán này đều hƣớng đến việc tăng tốc độ khai thác và tính khả thi khi khai thác trên CSDL phân tán và có kích thƣớc dữ liệu của các bên tham gia lớn. Trong chƣơng 3 luận án sẽ trình bày các kết quả nghiên cứu là các thuật toán khai thác trên cơ sở dữ liệu phân tán có quan tâm đến bảo tồn tính riêng tƣ

CHƢƠNG 3

Khai thác dữ liệu phân tán bảo đảm tính riêng tƣ

Một phần của tài liệu khai thác dữ liệu phân tán bảo toàn tính riêng tư (Trang 83 - 89)

Tải bản đầy đủ (PDF)

(127 trang)