Phức tạp của thuật toán khai phá luật kết hợp

Một phần của tài liệu Khai phá dữ liệu và thuật toán khai phá luật kết hợp (Trang 48)

Cho đến nay các nghiên cứu về luật kết hợp quan tâm đến việc xây dựng các thuật toán khá hiệu quả, nhưng ít quan tâm đến độ phức tạp của các thuật toán.

Đánh giá độ phức tạp của thuật toán khai phá luật kết hợp là một bài toán khó. Tuy nhiên, người ta đã chỉ ra rằng việc tìm tất cả các tập mục thường xuyên tương ứng 1-1 với bài toán Clique lưỡng phân (một đồ thị con đầy đủ được gọi là clique lưỡng phân) [10, 11]. Kết quả đánh giá độ phức tạp của thuật toán khai phá tập mục thường xuyên dựa trên mối quan hệ với bài toán clique lưỡng phân(bipartite cliques).

Định nghĩa 2.5 Đồ thị lưỡng phân là bộ 3 G=(U, V, E) trong đó U và V là hai tập đỉnh phân biệt (U V=), tập cạnh E = {(u,v) | u U, v V}. Một đồ thị con lưỡng phân đầy đủ IT được gọi là clique lưỡng phân và được kí hiệu là Ki,t với |I|=i, |T| = t và I U, T V.

Hình 2.2 a) Cơ sở dữ liệu sách b) Các tập mục thường xuyên và luật kết hợp

Cơ sở dữ liệu vào cho khai phá luật kết hợp được xem như đồ thị lưỡng phân rất lớn, với U là tập các mục, V là tập các định danh (TIDS) và mỗi cặp (item, tid) là một cạnh. Việc tìm tất cả các tập mục thường xuyên tương ứng với việc tìm tất cả các clique lưỡng phân Ki,t, với t  minSup. Như vậy bài toán tìm tất cả các tập mục thường xuyên tương đương với bài toán tìm tất cả các clique lưỡng phân trong đồ thị lai với ràng buộc t  minSup. Hình 2.3 biểu diễn đồ thị lưỡng phân của cơ sở dữ liệu hình 2.2a, với clique cực đại ACTWx135.

Tập mục

Janne Austen A

Agatha Christle C Sir Arthur Conan Doyle D

Mark Twain T P. G. Wodehouse W Cơ sở dữ liệu Giao tác Tập mục 1 A C T W 2 C D W 3 A C T W 4 A C D W 5 A C T D W 6 C D T

Các tập mục thường xuyên (minsupp = 50%) Độ hỗ trợ Tập mục

100% (6) C

83% (5) W, CW

67% (4) A, D, T, AC, AW, CD, CT, ACW

50% (3) AT, DW, TW, ACT, ATW, CDW, CTW, ACTW

Tập mục thường xuyên lớn nhất: CDW, ACTW Luật kết hợp với độ tin cậy = 100% A  C (4/4) AC  W (4/4), TW  C(3/3) A  W (4/4) AT  C (3/3), AT  CW(3/3) A  CW (4/4) AT  W (3/3), TW  AC(3/3) D  C (4/4) AW  C (4/4), ACT  W(3/3) T  C (4/4) DW  C (3/3), ATW  C(3/3) W  C (5/5) TW  A (3/3), CTW  A(3/3) Luật kết hợp với độ tin cậy >=80% W  A (4/5) C  W (5/6), W A C(4/5)

Hình 2.3 Clique lưỡng phân cực đại.

Hình 2.4 thể hiện kết quả đánh giá độ phức tạp của việc tìm các Clique lưỡng phân dựa trên giới hạn kích thước của tập mục |I| = i và |T| = t. Ví dụ: vấn đề xác định có tồn tại một Clique lưỡng phân cực đại mà I + T  K (với K là hằng số) là bài toán thuộc lớp P, lớp bài toán giải được trong thời gian đa thức. Mặc khác, vấn đề xác định có tồn tại một Clique lưỡng phân cực đại với I + T = K là một bài toán NP-đầy đủ, thuộc lớp bài toán khó không giải được trong thời gian đa thức.

<=K =K >=K

|I| P NP-đầy đủ P

|T| P NP-đầy đủ P

|I| + |T| NP-đầy đủ NP-đầy đủ P

Hình 2.4 Độ phức tạp của việc khai phá.

A C D T W

1 2 3 4 5 6

ACTW CDW ACTW ACDW ACDTW CDT Các giao tác

Vấn đề tìm các Clique cực đại trong đồ thị lưỡng phân là cực kỳ khó thể hiện qua định lý sau:

Định lý 2.1 [10] Xác định các Clique lưỡng phân cực đại trong đồ thị 2 phía là bài toán #NP-đầy đủ.

Kết luận tính toán độ phức tạp như trên là chưa thỏa đáng và được áp dụng để sinh các đồ thị lưỡng phân. Chúng ta nên tập trung vào trường hợp đặc biệt mà có thể tìm lời giải trong thời gian đa thức. Việc khai phá luật kết hợp trong thực tế đồ thị lưỡng phân là cơ sở dữ liệu rất thưa thì chúng có thể đạt được độ phức tạp tuyến tính theo kích thước của đồ thị.

Định lý 2.2 [11] Tất cả các Clique lưỡng phân cực đại có thể được liệt kê trong thời gian O(I.322I.(U+V)).

Điều này không thực tế đối với các cơ sở dữ liệu lớn vì chi phí quá lớn. Nếu cơ sở dữ liệu có I mục thì không gian tìm kiếm là 2I. Tìm tất cả các tập thường xuyên tương ứng với bài toán Clique lưỡng phân đầy đủ thuộc lớp bài toán NP-đầy đủ. Tuy nhiên, nếu chúng ta giả sử có giới hạn chiều dài của các giao tác thì nhiệm vụ tìm tất cả các tập mục thường xuyên về cơ bản là tuyến tính với kích thước của cơ sở dữ liệu, độ phức tạp là O(r.n.2l). Trong đó :

+ n là số giao tác trong cơ sở dữ liệu.

+ l là độ dài của tập mục thường xuyên dài nhất. + r là số tập mục thường xuyên cực đại.

Bước sinh luật: nếu tập mục thường xuyên có kích thước k thì sinh ra 2k-2 luật. Độ phức tạp của bước sinh luật là O(f.2l), với l là độ dài của tập mục thường xuyên dài nhất, f là số tập mục thường xuyên.

Kết quả phân tích cho thấy, với trường hợp cơ sở dữ liệu thưa, kích thước của giao tác nhỏ thì độ phức tạp là tuyến tính với kích thước của cơ sở dữ liệu. Còn trường hợp ngược lại thì thuộc lớp bài toán NP-đầy đủ.

Một phần của tài liệu Khai phá dữ liệu và thuật toán khai phá luật kết hợp (Trang 48)

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

(124 trang)