thực hiện tốt vai trò của các mệnh đề chọn (σ) của các truy vấn hỗ trợ. Chúng tôi giả định rằng tid danh sách itemsets (danh sách tuples J nơi xảy ra các itemsets) có thể truy cập cho chúng tôi. Cuối cùng, các danh sách tid được dịch để danh sách KeyID thích hợp của họ. Dịch một danh sách tid T vào một danh sách KeyID đến
xuống để thực hiện phép chiếu πK (J ✶ T) cho mỗi phím
K. Điều này có thể được thực hiện một cách hiệu quả bằng sử dụng tra cứu các bảng mà
có thể được tạo ra trong việc xây dựng J. Ở cuối, ngưỡng hỗ trợ tương đối tối thiểu áp dụng cho mỗi itemset KeyID danh sách, và itemsets thường xuyên được báo cáo. Lợi thế của các thuật toán ngây thơ là rằng nó có thể được thực hiện như là một wrapper quanh một thuật toán min-ing itemset sẵn có. Tuy nhiên, tính toán tham gia đầy đủ bên ngoài có thể tốn kém trong cả thời gian và bộ nhớ, làm cho nó infeasible để sử dụng trên cơ sở dữ liệu lớn hơn. Hơn nữa, quá nhiều ứng cử viên được tạo ra. Chúng tôi có thể chỉ prune itemsets mà
thuật toán 2 Keyclat: tính toán itemsets' KeyID danh sách
đầu vào: thiết lập của k-itemsets LP có chung một tiền tố P;
tương đối hỗ trợ ngưỡng minsup
đầu ra: Thiết lập F itemsets thường xuyên tôi với tiền tố P
1: cho tôi 0 trong LP làm
2: cho tôi giờ LP với tôi 00 > tôi 0 làm
3: tôi: = tôi 0 u tôi 00
4: E1, E2: = thực thể các hậu tố tôi 0 P, tôi 00 P này
5: cho tôi ∈ {1, 2} làm
6: Ki: = phím (Ei)
7: KeyIDs (IKi): = KeyIDs (tôi 0 00
Ki) ∩ KeyIDs (IKi)
8: pKeyIDsi (I): = Propagate (KeyIDs (IKi))
9: cho E ∈ E {E1, E2} làm
10: K: = phím (E)
11: KeyIDs (IK):= pKeyIDs1 (IK) ∩ pKeyIDs2 (IK)
∩ KeyIDs (I 0) ∩ KeyIDs (I 00)
là không thường xuyên đối với abssup, nhưng nhiều ứng cử viên
12: supp (IK
K K
KeyIDs (IK) |
bộ có thường xuyên trong J có thể bật ra được không thường xuyên cho
tất cả phím K đối với minsup ngưỡng.
The SMuRFIG thuật toán (xem thuật toán 1) không ảnh hưởng từ những bất lợi, tức là đó là hiệu quả trong thời gian và bộ nhớ. Nó sử dụng các khái niệm về KeyID danh sách tuyên truyền. Trước tiên, các danh sách KeyID của tất cả các mục được lấy từ các dữ liệu trong các tổ chức tương ứng của họ (dòng 3), và sau đó các danh sách KeyID được truyền đến tất cả các thực thể khác (dòng 5). Tuyên truyền
13: nếu supp (IK) ≥ minsup × |E| sau đó
14: FI 0: = FI 0 u IK
15: F: = F u FI 0 u Keyclat (FI 0, minsup)
16: trở về F
phức tạp thời gian của SMuRFIG là như sau. Mỗi itemset tối đa ba nút giao thông được yêu cầu cho mỗi
đệ quy chức năng dịch một danh sách KeyID từ một thực thể
thực thể E, dùng O (P
E|), nơi |E| laø soá
Ei cho các cơ quan lân cận Ej, cho đến khi đạt được tất cả các thực thể.
của tuples trong E. Các
E∈E |
tuyên truyền chức năng được thi hành tại
Dịch một danh sách KeyID Ti từ Ei để Ej via Ri, j là equiv-alent để thực hiện truy vấn quan hệ πkey (Ej) (Ti ✶ Ri, j).
nó rất dễ dàng để xác minh rằng chúng tôi bây giờ có các danh sách KeyID của tất cả
đặt hai lần và sử dụng mỗi quan hệ R một lần, chiếm
O(P |R|). Do đó, sự phức tạp thời gian của SMuRFIG là
O (|F | • size(DB)), nơi |F | là tổng số thường xuyên
mục cho tất cả các phím K, và do đó của họ hỗ trợ.
tiếp theo, itemsets (thường xuyên) singleton được kết hợp thành
itemsets và size(DB) = P |E|
R∈R |R| là kích thước
bộ lớn hơn của các chức năng Keyclat (thuật toán 2), là cốt lõi của SMuRFIG. Không gian tìm kiếm ngang sâu đầu tiên. Trong mỗi đệ quy, hai k-itemsets tôi 0 và tôi 00 với một phổ biến tiền tố P (ban đầu trống) được hợp nhất để lập một
ứng cử viên mới thiết lập tôi = tôi 0 u tôi 00 của kích thước k 1. Để tính toán các
của cơ sở dữ liệu. SMuRFIG chỉ đòi hỏi một số tiền nhỏ của
mẫu sẽ được lưu trong bộ nhớ cùng một lúc. Khi một itemset chiều dài k được tạo ra, chúng tôi có (k2 k) / 2 trước itemsets trong bộ nhớ do traversal sâu đầu tiên. Đối với mỗi của những itemsets, danh sách KeyID được lưu trữ cho tất cả các phím. Các
tối đa tổng kích thước của các danh sách cho một itemset là P E.
hỗ trợ của tôi, chúng tôi đầu tiên xác định rằng các bảng tổ chức các
bên cạnh này, chúng tôi cũng giữ tất cả quan hệ R trong bản ghi nhớ
E∈E | |
c
hậu tố của tôi 0 và tôi 00 là E1 và E2 (dòng 4). Chúng tôi giao nhau các
KeyID danh sách của tôi 0 và tôi 00 trong E1 và E2, để có được sự hỗ trợ của tôi trong E1, E2 (tuyến 7), và sau đó các danh sách KeyID
ry, whi h
là cần thiết trong các chức năng tuyên truyền. Tổng kết, nếu l là kích thước lớn nhất itemset thường xuyên, sau đó SMuRFIG's tồi tệ nhất
tiêu thụ bộ nhớ trường hợp là O ' l2 • P P ´
truyền đến tất cả các thực thể khác (Line 8). Đối với những còn lại
thực thể E với phím K, nó không nhất thiết phải giữ mà
KeyIDs (I 0) ∩ KeyIDs (I 00) kết quả trong KeyIDs (IK). Chúng ta phải
E∈E |E|
R∈R |R| .
đang được dịch, vui lòng đợi..
