Cõy COFI-tree của mục D

Một phần của tài liệu Khai phá tập mục lợi ích cao dựa trên cấu trúc cây tiền tố (Trang 37)

- Khai phỏ cõy D-COFI-tree:

Xột lần lƣợt cỏc mục dữ liệu trong bảng đầu mục, bắt đầu từ mục cú độ hỗ trợ lớn nhất là C, cuối cựng đến mục cú độ hỗ trợ nhỏ nhất A. Mục C cú 2 nhỏnh trờn cõy là (C:2, B:3, D:5) và (C:2, D:5).

Nhỏnh thứ nhất tạo ra mẫu CBD với độ hỗ trợ là s – p = 2 – 0 = 2 (s và p là hai biến tại nỳt nhón C). Thuật toỏn tăng giỏ trị biến p của tất cả cỏc nỳt trờn đƣờng đi này lờn 2. Mẫu CBD: 2 và tất cả cỏc mẫu con cú chứa D của nú đƣợc cất vào danh sỏch ứng viờn của mục D là CBD:2, CD:2, BD:2 (bƣớc 1).

Nhỏnh thứ hai nhận đƣợc mẫu CD:2 và kết nạp nú vào danh sỏch ứng viờn. Trong danh sỏch ứng viờn đó cú mẫu CD:2 nờn chỉ điều chỉnh độ hỗ trợ của mẫu này thành CD:4 và danh sỏch ứng viờn trở thành CBD:2, CD:4, BD:2. Tăng biến p của cỏc nỳt trờn đƣờng đi này lờn 2 đơn vị (bƣớc 2).

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

Tƣơng tự, xột tiếp mục B, cú một nhỏnh là BD nờn sinh ra mẫu BD:1, kết nạp vào danh sỏch cỏc ứng viờn đƣợc CBD:2, CD:4, BD:3 (bƣớc 3).

Mục A cũn lại trong bảng đầu mục bỏ qua vỡ cú độ hỗ trợ nhỏ hơn minsup

(bƣớc 3).

Hỡnh 2.3: Minh họa cỏc bước khai phỏ cõy D-COFI-tree

Thuật toỏn duyệt qua cỏc mẫu trong danh sỏch ứng viờn, loại cỏc mẫu khụng thỏa món ngƣỡng hỗ trợ và nhận đƣợc cỏc mẫu thƣờng xuyờn là CD:4, BD:3. Cõy

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

D-COFI-tree đƣợc loại bỏ và tiếp tục xõy dựng cõy cho mục dữ liệu tiếp theo. Chi tiết về cõy COFI-tree cú thể tham khảo trong [8].

2.2 Bài toỏn Khai phỏ tập mục lợi ớch cao

2.2.1 Khỏi niệm về tập mục lợi ớch cao

Mụ hỡnh khai phỏ tập mục lợi ớch cao đƣợc Yao và cộng sự đề xuất (Hong Yao và Hamilton, 2006; H. Yao, Hamilton và Butz, 2004) [6] [12]. Trong mụ hỡnh khai phỏ tập mục lợi ớch cao, giỏ trị của mục dữ liệu trong giao tỏc là một số (nhƣ số lƣợng đó bỏn của mặt hàng, gọi là giỏ trị khỏch quan), ngoài ra cũn cú bảng lợi ớch cho biết lợi ớch mang lại khi bỏn một đơn vị hàng đú (gọi là giỏ trị chủ quan, do ngƣời quản lý kinh doanh xỏc định). Lợi ớch của một tập mục là số đo lợi nhuận của tập mục đú trong CSDL, nú cú thể là tổng lợi nhuận, là tổng chi phớ của tập mục.

Khai phỏ tập mục lợi ớch cao là khai phỏ tất cả cỏc tập mục X cú lợi ớch u X( ) , khụng nhỏ hơn ngƣỡng lợi ớch tối thiểu quy định bởi ngƣời sử dụng. Trong đú là ngƣỡng quy định bởi ngƣời sử dụng.

Cú thể coi bài toỏn cơ bản khai phỏ tập mục thƣờng xuyờn là trƣờng hợp đặc biệt của bài toỏn khai phỏ tập mục lợi ớch cao, trong đú tất cả cỏc mục đều cú giỏ trị khỏch quan bằng 0 hoặc 1 và giỏ trị chủ quan bằng 1.

Cỏc thuật toỏn khỏm phỏ tập mục thƣờng xuyờn đƣợc xõy dựng theo phƣơng phỏp tỡm kiếm từng bƣớc. Cơ sở của cỏc thuật toỏn này là tớnh chất Apriori hay cũn gọi là tớnh chất phản đơn điệu (anti monotone) của tập mục thƣờng xuyờn. Tớnh chất đú là “tập con khỏc rỗng của một tập mục thƣờng xuyờn phải là tập thƣờng xuyờn”. Điều này cú nghĩa cỏc (k+1)-tập mục thƣờng xuyờn chỉ cú thể sinh ra từ cỏc k-tập mục thƣờng xuyờn. Tớnh chất Apriori cho phộp loại bỏ đƣợc cỏc tổ hợp mục khụng thƣờng xuyờn ra khỏi khụng gian tỡm kiếm tại mỗi bƣớc. Đỏng tiếc là cỏc tập mục lợi ớch cao khụng thỏa món tớnh chất Apriori. Do đú, việc rỳt gọn khụng gian tỡm kiếm, phỏt hiện tập mục lợi ớch cao khụng thể thực hiện đƣợc nhƣ trong khai phỏ tập mục thƣờng xuyờn.

2.2.2 Một số bài toỏn khai phỏ tập mục lợi ớch cao

Phần này nờu một số định nghĩa và thuật ngữ mụ tả bài toỏn khai phỏ tập mục lợi ớch cao theo [7], [8],

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

Cho tập cỏc mục (item) I i i1, ,...2 in . Một giao tỏc (transaction) T là một tập con của I T, I. Cơ sở dữ liệu là một tập cỏc giao tỏc DB T T1, 2,...,Tm . Mỗi giao tỏc đƣợc gỏn một định danh TID. Một tập mục con X I, gồm k mục phõn biệt đƣợc gọi là một k-tập mục. Giao tỏc T gọi là chứa tập mục X nếu X T.

Định nghĩa 7

Ta gọi giỏ trị của mục ip trong giao tỏc Tq ( giỏ trị tại cột ip hàng Tq của cơ sở dữ liệu) là giỏ trị khỏch quan (objective value) của mục ip tại giao tỏc Tq, ký hiệu là

( ,p q).

o i T

Thụng thƣờng giỏ trị khỏch quan của mục dữ liệu là số tự nhiờn (nhƣ số lƣợng đó bỏn của một mặt hàng trong giao tỏc).

Định nghĩa 8

Ta gọi giỏ trị do nhà kinh doanh gỏn cho mục ip trong cơ sở dữ liệu, dựa trờn đỏnh giỏ lợi nhuận mà mỗi đơn vị mục dữ liệu cú thể đem lại, là giỏ trị chủ quan (subjective value) của mục ip và ký hiệu là s i( ).p

Giỏ trị chủ quan của cỏc mục thƣờng đƣợc cho trong một bảng kốm theo cơ sở dữ liệu và gọi là bảng lợi ớch (utility table). Chẳng hạn, cơ sở dữ liệu cỏc giao tỏc và bảng lợi ớch ở bảng 2.1 và bảng 2.2, giỏ trị khỏch quan của mục giao tỏc và bảng lợi ớch ở bảng 2.1 và bảng 2.2, giỏ trị khỏch quan của mục B tại giao tỏc T2 là o(B, T2) = 12, giỏ trị chủ quan của B là s(B) = 5.

Lợi ớch của mục dữ liệu trong giao tỏc đƣợc đỏnh giỏ thụng qua hàm 2 biến sau: (adsbygoogle = window.adsbygoogle || []).push({});

Định nghĩa 9

Ký hiệu x là giỏ trị khỏch quan, y là giỏ trị chủ quan của mụ . Một hàm 2 biến f(x,y):R R R, đơn điệu tăng theo x và theo y, đƣợc gọi là hàm lợi ớch.

Thụng thƣờng hàm lợi ớch đƣợc xỏc định nhƣ sau: f x y( , ) x y.

Định nghĩa 10

của hàm f(x,y) tại o(ip,Tq) và s(ip), tức là u i T( ,p q) f o i T( ( ,p q), ( )).s ip

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

Cho tập mục X chứa trong giao tỏc Tq . Lợi ớch của tập mục X tại giao tỏc Tq , ký hiệu u(X,Tq), là tổng lợi ớch của tất cả cỏc mục ip thuộc X tại giao tỏc Tq, tức là:

, , ( ) p p q i X q u i T u X T với X Tq

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/ Bảng 2.9. CSDL giao tỏc TID A B C D E T1 0 0 16 0 1 T2 0 12 0 2 1 T3 2 0 1 0 1 T4 1 0 0 2 1 T5 0 0 4 0 2 T6 1 2 0 0 0 T7 0 20 0 2 1 T8 3 0 25 6 1 T9 1 2 0 0 0 T10 0 12 2 0 2 Bảng 2.10 Bảng lợi ớch

Mục dữ liệu Lợi nhuận ($/đơn vị)

A 3 B 5 C 1 D 3 E 5 Định nghĩa 12

Lợi ớch của tập mục X trong CSDL DB, ký hiệu u( X ) , là tổng lợi ớch của tập mục X tại cỏc giao tỏc chứa X, tức là:

( ) ( , ) ( , ) q q p q p q T X T X i X u X u X T u i T Vớ dụ, trong CSDL bảng 2.9 và bảng 2.10, u(B,T2) =12.5=60,

u(BD,T2) = u(B,T2)+ u(D,T2)= 12.5 + 2.3 = 66, u(BD) = u(BD,T2) + u(BD,T7) = 66 + 106 = 172.

Định nghĩa 13

(Transaction utility) Lợi ớch của giao tỏc Tq , ký hiệu là tu(Tq), là tổng lợi ớch của tất cả cỏc mục dữ liệu trong giao tỏc, tức là :

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/ u( , ) ( , ) p q q q q p q i T u tu T T T i T Vớ dụ, trong CSDL bảng 2.9 và bảng 2.10, tu(T2)=12.5+2.3+1.5=71 Định nghĩa 14

Ngƣỡng lợi ớch tối thiể , là phần trăm của tổng lợi ớch của toàn bộ cơ sở dữ liệu.

ỡng lợi ớch tối thiểu ị lợi ớch tối thiểu minutil nhƣ

sau: . ( )

q

q

T DB

minutil tu T .

Vớ dụ, cơ sở dữ liệu bảng 2.9 và bảng 2.10 cú tổng lợi ớch là 398, nếu

= 30% thỡ giỏ trị lợi ớch tối thiểu là:

minutil= . ( ) 30%.398 119, 4

q

q T DB

tu T (adsbygoogle = window.adsbygoogle || []).push({});

ị lợi ớch tối thiểu minutil thay cho ngƣỡng phần trăm .

Định nghĩa 15

Cho ngƣỡng lợi ớch minutil (>0) và xột tập mục X. X đƣợc gọi là tập mục lợi ớch cao nếu u( X ) min util. Trƣờng hợp ngƣợc lại, X đƣợc gọi là tập mục lợi ớch thấp.

Định nghĩa 16

Cho cơ sở dữ liệu giao tỏc DB và ràng buộc lợi ớch minutil, khai phỏ tập mục

lợi ớch cao là tỡm tập HU (High Utility) ất cả cỏc tập mục lợi ớch cao, tức là tập HU X X| I u X, ( ) minutil .

Nhận xột :

- Ràng buộc lợi ớch khụng cú tớnh chất phản đơn điệu, vớ dụ trong CSDL bảng 2.1, ta cú u(BC)= 62 < 72 = u( BCE ), trong khi đú u(BC) = 62 > 0 = u( BCD).

- Về mặt ngữ nghĩa, tập mục lợi ớch cao khỏc với tập mục thƣờng xuyờn, dự cú khai phỏ trờn tập dữ liệu nhị phõn với ngƣỡng lợi ớch minutil bằng ngƣỡng độ hỗ trợ

minsup thỡ kết quả khai phỏ cũng khỏc nhau, cỏc tập mục tỡm đƣợc cú ý nghĩa khỏc

nhau. Nhƣ vậy, phỏt triển mở rộng bài toỏn khai phỏ tập mục thƣờng xuyờn thành bài toỏn khai phỏ tập mục lợi ớch cao khụng đơn thuần là mở rộng kiểu dữ liệu mà là thay đổi nhiệm vụ khai phỏ, khai phỏ với nhiệm vụ mới và kết quả cỏc tập mục

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

Tớnh chất toỏn học của ràng buộc lợi ớch (theo [11], [12], [13]) :

Ký hiệu : + k X là k-tập mục (tập mục cú k mục phõn biệt). + Lk 1 là tập tất cả cỏc tập con cú k-1 mục của tập X , k tức là : 1 1 1 | k k k k L X X X

Vớ dụ : với 4-tập mục X4 ABCD thỡ L3 ABC ABD ACD BCD, , , .

Định nghĩa 17

Hàm lợi ớch khụng õm f là hàm f x y( , ) : ( , )R R R , ở đú R là tập số thực,

R+ là tập số thực khụng õm.

Chỳ ý: hàm f x y1( , ) với miền giỏ trị [-n, m] với n 0,m 0 cú thể chuyển đổi thành hàm khụng õm bằng cỏch thờm n và tất cả cỏc giỏ trị của hàm. Cũng nhƣ vậy, hàm khụng dƣơng f x y2( , ) 0 cú thể chuyển đổi thành hàm khụng õm bằng cỏch lấy giỏ trị tuyệt đối của nú, f x y2( , ) 0. Do vậy, cỏc kết quả nhận đƣợc cho hàm khụng õm cũng cú thể ỏp dụng cho cỏc hàm f1 hoặc f2.

Định lý sau phỏt biểu về cận trờn của lợi ớch của k-tập mục k

X .

Định lý 2.1

(cận trờn của lợi ớch). Cho k-tập mục Xk, (u Xk) là lợi ớch của Xk tớnh trờn hàm lợi ớch khụng õm. Khi đú: 1 ) ( ) ( 1 1 1 k X u X u Xk Lk k k .

Vớ dụ : X4 ABCD,L3 {ABC,ABD,ACD,BCD}, theo định lý ta cú :

3 ) ( ) ( ) ( ) ( )

(ABCD u ABC u ABD u ACD u BCD

u

Định lý 2.1 này là một tớnh chất quan trọng của ràng buộc lợi ớch, nú cho biết lợi ớch của k-tập mục Xk đƣợc giới hạn bởi lợi ớch của tất cả cỏc tập mục con cú (k-1) mục của nú.

2.3 Khai phỏ tập mục lợi ớch cao dựa trờn cõy tiền tố

2.3.1 Định nghĩa cõy tiền tố (adsbygoogle = window.adsbygoogle || []).push({});

Trong cỏc phƣơng phỏp khai phỏ tập mục thƣờng xuyờn thỡ phƣơng phỏp nộn cỏc giao tỏc lờn cấu trỳc cõy rồi khai phỏ cõy đú là phƣơng phỏp cú nhiều ƣu điểm

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

và hiệu quả. Tiờu biểu cho hƣớng tiếp cận này là thuật toỏn FP-growth sử dụng cấu trỳc cõy tiền tố, gọi là cõy FP-Tree (frequent Pattern Tree) [4] và một cải tiến của nú là thuật toỏn COFI-tree [8] đó đƣợc trỡnh bày lại trong chƣơng 1.

Nhận thấy tớnh hiệu quả của cỏc thuật toỏn sử dụng cấu trỳc cõy FP-Tree và ràng buộc lợi ớch theo giao tỏc (TWU) của cỏc tập mục cũng cú tớnh chất phản đơn điệu, nhiều thuật toỏn hiệu quả khai phỏ tập mục lợi ớch cao sử dụng cỏch biểu diễn dữ liệu bằng cấu trỳc cõy FP-Tree đó đƣợc nghiờn cứu đề xuất.

2.3.2 Một số thuật toỏn khai phỏ tập mục lợi ớch cao dựa trờn cõy tiền tố

2.3.2.1 Thuật toỏn COUI-Mine

Phần này luận văn trỡnh bày thuật toỏn COUI-Mine (Co-Occurrence Utility Items Mine) cựng một số nhận xột theo [12].

Thuật toỏn COUI-Mine sử dụng khỏi niệm lợi ớch của một tập mục tớnh theo lợi ớch của cỏc giao tỏc chứa nú, gọi là lợi ớch TWU (Transaction Weighted Utility).

Định nghĩa 18

(Transaction Weighted Utility-TWU) Lợi ớch TWU của tập mục X, ký hiệu twu(X), là tổng lợi ớch của tất cả cỏc giao tỏc chứa X trong cơ sở dữ liệu, tức là

q q DB X T T q T tu X twu( ) ( ). Nhận xột: Vỡ u(X,Tq) tu(Tq)nờn q q DB X T q q T T DB X T q q tu T twu X T X u X u( ) ( , ) ( ) ( ).

Cú thể coi twu(X) nhƣ là cận trờn của u(X). Với ngƣỡng lợi ớch minutil, nếu X là tập mục lợi ớch cao thỡ X cũng là tập mục lợi ớch TWU cao vỡ

( ) ( )

twu X u X minutil, ngƣợc lại, nếu X là tập mục lợi ớch TWU thấp thỡ X cũng là tập mục lợi ớch thấp.

Trong [8], tỏc giả Y.Liu đó chứng minh:

(i) Ràng buộc lợi ớch TWU cú tớnh chất phản đơn điệu, tức là: Mọi tập mục cha

của tập mục lợi ớch TWU thấp cũng là tập mục lợi ớch TWU thấp. Do vậy, nếu X là

tập mục lợi ớch TWU thấp, twu X( ) minutil, thỡ tập X và mọi tập cha của X đều là tập mục lợi ớch thấp, cú thể loại bỏ chỳng trong quỏ trỡnh khai phỏ tập mục lợi ớch cao.

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

Điều này cú nghĩa là, nếu ta tỡm đƣợc tập cỏc tập mục lợi ớch TWU cao thỡ ta chỉ cần tỡm cỏc tập mục lợi ớch cao trong tập đú.

Dựa trờn ý tƣởng của thuật toỏn COFI-tree trong khai phỏ tập mục thƣờng xuyờn, tỏc giả tài liệu [1], [8] đó đề xuất thuật toỏn hiệu quả khai phỏ tập mục lợi ớch cao sử dụng biểu diễn dữ liệu bằng cấu trỳc cõy FP-Tree gọi là thuật toỏn COUI-Mine (Co-Occurrence Utility Items Mine).

Thuật toỏn COUI-Mine gồm 2 bước:

- Bƣớc thứ nhất tỡm cỏc tập mục lợi ớch TWU cao (tập này cú thể coi là tập cỏc tập mục ứng viờn).

- Bƣớc thứ hai, duyệt lại cơ sở dữ liệu để tớnh lợi ớch thực sự của mỗi tập mục ứng viờn, từ đú xỏc định đƣợc tập cỏc tập mục lợi ớch cao.

Để tỡm tập cỏc tập mục lợi ớch TWU cao, trong [1] đề xuất một cấu trỳc cõy mới gọi là cõy TWUI-tree (Transaction Weighted Utility Itemsets Tree) dựa trờn ý tƣởng cấu trỳc cõy FP-tree trong [4]. Cõy TWUI-tree chứa đủ thụng tin để khai phỏ tập mục lợi ớch TWU cao. Khai phỏ cõy TWUI-tree dựng một cấu trỳc dữ liệu phụ trợ gọi là cõy COUI-tree (Co-Occurrence Utility Items tree).

* Xõy dựng cõy TWUI-tree

Định nghĩa 19 (Cõy TWUI-tree): Cõy TWUI-tree là một cấu trỳc cõy tiền tố (prefix-tree) đƣợc định nghĩa nhƣ sau:

(1) Cõy bao gồm một nỳt gốc nhón Null, tập cỏc cõy con của nỳt gốc và một bảng đầu mục.

(2) Mỗi nỳt của cõy gồm ba trƣờng: tờn mục dữ liệu, giỏ trị twu của mục dữ liệu và con trỏ (trỏ đến nỳt tiếp theo cựng nhón trờn cõy hoặc là null nếu khụng cú).

(3) Mỗi mục của bảng đầu mục gồm hai trƣờng: tờn mục dữ liệu và con trỏ (trỏ đến nỳt đầu tiờn biểu diễn mục dữ liệu này trờn cõy). Cỏc mục dữ liệu trong bảng đầu mục sắp xếp giảm dần theo lợi ớch TWU của chỳng. (adsbygoogle = window.adsbygoogle || []).push({});

Thuật toỏn xõy dựng cõy TWUI-tree:

Input: Cơ sở dữ liệu giao tỏc DB, ngƣỡng lợi ớch minutil. Output: Cõy TWUI-tree.

(Cõy nộn cỏc giao tỏc của cơ sở dữ liệu DB để ợi ớch TWU cao).

Method: Cõy TWUI-tree xõy dựng nhƣ sau:

Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/

1.1. Tớnh lợi ớch cỏc giao tỏc, lợi ớch TWU của từng mục dữ liệu.

1.2. Chọn ra tập U cỏc mục dữ liệu cú lợi ớch TWU cao, sắp tập U theo thứ tự

giảm dần của lợi ớch TWU đƣợc danh sỏch UList và xõy dựng bảng đầu mục của cõy. 2. Tạo cõy:

2.1. Tạo nỳt gốc R của cõy.

2.2. Duyệt cơ sở dữ liệu lần thứ 2, với mỗi giao tỏc T trong DB, chọn ra cỏc

mục dữ liệu cú lợi ớch TWU cao, sắp cỏc mục này theo thứ tự của UList. Giả sử danh sỏch đó sắp của T là ([x | L]) , ở đú x là mục dữ liệu đầu và L là phần cũn lại của

Một phần của tài liệu Khai phá tập mục lợi ích cao dựa trên cấu trúc cây tiền tố (Trang 37)