
167
TP CHÍ KHOA HC, ði hc Hu, S 65, 2011
MT THUT TOÁN KHAI PHÁ TP M#C L%I ÍCH CAO
TRONG CƠ S) D+ LI,U
Nguyn Phúc Xuân Quỳnh
Trưng ði hc Sư Phm, ði hc Hu
TÓM T.T
Khai phá t"p m#c l%i ích cao (high)utility itemset) là m.t m/ r.ng c0a bài toán khai
phá t"p m#c ph3 bin, ñã ñư%c nhi6u tác gi7 quan tâm v:i m#c ñích ñánh giá ý nghĩa c0a các
t"p m#c trong khai phá lu"t kt h%p. Thu"t toán hai pha (Two)Phase) là m.t trong các thu"t
toán khai phá t"p m#c l%i ích cao. Bài báo này ñ6 xuAt m.t c7i tin c0a thu"t toán Two)Phase.
ViCc c7i tin ñư%c thDc hiCn thông qua chin lư%c tFa hiCu qu7 hơn các t"p m#c Hng cI, c7i tin
bư:c sinh t"p Hng viên, nh ñó gi7m b:t ñư%c thi gian thDc hiCn thu"t toán khai phá.
1. ð0t v3n ñ6
Khai phá tri thc t d liu là mt trong nhng vn ñ nhn ñư!c nhiu s# quan
tâm c&a các nhà nghiên cu. Trong lĩnh v#c này, bài toán khai phá lut k/t h!p ñư!c
nghiên cu rng rãi. Mt hư2ng m3 rng bài toán là quan tâm ñ/n các tp m4c ñem l6i
l!i ích cao, quan tâm ñ/n mc ñ quan tr8ng khác nhau c&a các m4c d liu.
Mô hình khai phá tp m4c l!i ích cao ñã ñư!c Yao và cng s# ñ xut [7]), t ñó
ñã có mt s@ thut toán khai phá tp m4c l!i ích cao ñư!c ñưa ra trong [1, 2, 5, 6].
Y.Liu, Liao, Choudhary, 2005 [5] ñã ñưa ra khái nim l!i ích c&a giao tác và l!i
ích c&a tp m4c tính theo l!i ích c&a giao tác cha nó (l!i ích twu), t ñó ñ xut thut
toán Two)Phase [5] khai phá tt cE các tp m4c l!i ích cao, tuy nhiên mt nhiu thFi
gian trong vic sinh ng viên v2i cơ s3 d liu l2n.
Vn ñ c&a các thut toán khai phá tp m4c l!i ích cao là giEm thiIu kích thư2c
c&a tp ng viên và ñơn giEn hóa quá trình tính toán l!i ích các tp m4c. NhKm giEm s@
lư!ng ng viên cho tp m4c l!i ích cao, giEm thFi gian khai phá, bài báo ñ xut thut
toán Im)Two)Phase trên cơ s3 cEi ti/n bư2c sinh tp ng viên và tính giá trL twu.
2. Các khái ni9m và ñ<nh nghĩa cơ bBn
PhNn này trình bày các ñLnh nghĩa, tính cht cơ bEn v tp m4c l!i ích cao t [5,
6, 7].
ð<nh nghĩa 2.1: Giá tr< khách quan cFa mGc ti mHt giao tác
MOi m4c i
p
trong giao tác T
q
, ñư!c ñPt tương ng v2i mt giá trL ñư!c g8i là giá
trL khách quan (objective value) c&a m4c i
p
t6i giao tác T
q
, ký hiu o(i
p
, T
q
). ChSng h6n,

168
giá trL khách quan c&a m4c i
p
trong giao tác T
q
có thI ly là s@ ñơn vL m4c i
p
bán ñư!c
trong giao tác T
q
(Giá trL xác ñLnh b3i ct cha m4c i
p
và hàng T
q
trong CSDL giao tác).
BBng 1. CSDL giao tác
A B C D E F G
T1 0 0 0 4 1 0 0
T2 0 5 0 5 1 0 0
T3 1 0 0 6 0 8 0
T4 10 0 5 0 1 0 0
T5 0 4 17 5 1 1 0
T6 0 0 0 0 0 0 72
ð<nh nghĩa 2.2: Giá tr< chF quan cFa mHt mGc
MOi m4c i
p
trong CSDL ñư!c ñPt tương ng v2i mt giá trL, ñư!c g8i là giá trL
ch& quan (subjective value) c&a m4c ñó, ký hiu s(i
p
). Giá trL này ñư!c cho trong mt
bEng kèm theo v2i CSDL giao tác g8i là bEng l!i ích. ChSng h6n, giá trL ch& quan c&a
m4c i
p
d#a trên ñánh giá l!i nhun c&a mOi ñơn vL m4c d liu ñem l6i.
BBng 2. B7ng l%i ích
MGc A B C D E F G
LMi nhuNn ($/ñơn v<) 1 3 1 4 7 2 1
L!i ích c&a mt tp m4c ñư!c ñánh giá qua hàm 2 bi/n như sau:
ð<nh nghĩa 2.3: Hàm lMi ích
G8i x là giá trL khách quan c&a mt m4c trong mt giao tác và y là giá trL ch&
quan c&a mt m4c. Mt hàm 2 bi/n
),( yxf
= R x R R ñơn ñiu tăng theo x và y g8i
là hàm l!i ích, thông thưFng hàm l!i ích ñư!c xác ñLnh yxyxf
×
=
),( .
ð<nh nghĩa 2.4: LMi ích cFa mHt mGc ti mHt giao tác
Cho hàm l!i ích ),( yxf . L!i ích c&a m4c
p
i
t6i giao tác
q
T
, ký hiu u(
p
i
,
q
T
)
là giá trL c&a hàm ),( yxf t6i
),(
qp
Tio
và
)(
p
is
, tc là:
),(
qp
Tiu
= f (
),(
qp
Tio
,
)(
p
is
).
ð<nh nghĩa 2.5: LMi ích cFa mHt tNp mGc ti giao tác
Cho tp m4c X
⊆
q
T
. L!i ích c&a tp m4c X t6i giao tác
q
T
, ký hiu
),(
q
TXu
,
là teng l!i ích c&a tt cE các m4c
p
i
thuc X t6i giao tác
q
T
:
),(),(
∑
∈
=
Xi
qpq
p
TiuTXu
v2i
X
⊆
q
T
.

169
Ký hiu
{
}
DBTTXTdb
qqqX
∈⊆= ,|
là tp các giao tác cha tp m4c X trong
CSDL DB.
ð<nh nghĩa 2.6: LMi ích cFa mHt tNp mGc trong CSDL
L!i ích (hay còn g8i là l!i ích th#c s#) c&a tp m4c X trong CSDL DB, ký hiu
u(X), là teng l!i ích c&a tp m4c X t6i các giao tác thuc
x
db :
∑
∑
∑
∈ ∈∈
=
=
Xq pXq
dbT Xi qp
dbT qTiuTXuXu ),(),()(
ð<nh nghĩa 2.7: LMi ích cFa mHt giao tác
L!i ích c&a giao tác
q
T
, ký hiu tu(
q
T
), là teng l!i ích c&a tt cE các m4c d liu
trong giao tác: tu(
q
T
)=
),(
∑
∈
qp
Ti qp
Tiu
.
ð<nh nghĩa 2.8: Giá tr< lMi ích ti thiZu
Giá trL l!i ích t@i thiIu (minutil) là tích c&a ngưing l!i ích t@i thiIu
δ
v2i teng
l!i ích c&a toàn b CSDL.
ð<nh nghĩa 2.9: TNp mGc lMi ích cao
Tp m4c X là tp m4c l!i ích cao n/u u(X)
≥
minutil (minutil>0).
ð<nh nghĩa 2.10: Bài toán khai phá tNp mGc lMi ích cao
Bài toán khai phá tp m4c l!i ích cao là bài toán tìm tp tt cE các tp m4c l!i
ích cao HU =
{
}
utilXuIXX min)(,|
≥
⊆
v2i CSDL giao tác DB và ràng buc
minutil cho trư2c.
ð<nh nghĩa 2.11: LMi ích kéo theo cFa tNp mGc
(Transaction Weighted Utility – TWU)
Cho tp m4c X và db
X
là tp tt cE các giao tác cha X. Ta g8i teng l!i ích c&a tt
cE các giao tác trong db
X
là l!i ích kéo theo (l%i ích twu) c&a X.
Ký hiu l!i ích kéo theo c&a X là twu(X), ta có:
twu(X)=tu(db
X
)=
)(
∑
∈
Xq
dbT q
Ttu
=
∑
∑
∈ ∈
Xq qp
dbT Ti qp
Tiu ),(
Ví d#: Trong ví d4 3 bEng 2.1 và bEng 2.2, X={B, D, E}. Có 2 giao tác cha X là
T
2
và T
5
.
twu(BDE)= tu(T
2
)+tu(T
5
)=
(o(B,T
2
)*s(B,T
2
)+o(D,T
2
)*s(D,T
2
)+o(E,T
2
)*s(E,T
2
))+
(o(B,T
5
)*s(B,T
5
)+o(C,T
5
)*s(C,T
5
)+o(D,T
5
)*s(D,T
5
)+o(E,T
5
)*s(E,T
5
))+o(F,T
5
)*s

170
(F,T
5
)) = (5.3+5.4+1.7)+(4.3+17.1+5.4+1.7+1.2)=42+58=100.
ð<nh nghĩa 2.12: TNp mGc có lMi ích kéo theo cao
Cho giá trL l!i ích t@i thiIu minutil>0, tp m4c X là tp m4c có l!i ích kéo theo
cao (hay còn gi là kéo theo cao) n/u twu(X)
≥
minutil.
ð<nh lý 2.1: Tính ch3t phBn ñơn ñi9u cFa lMi ích kéo theo
Cho X
k
là mt kmtp m4c, X
k)1
là mt (km1)mtp m4c con c&a X
k
(X
k)1
⊂
X
k
). N/u
X
k
có l!i ích kéo theo cao thì X
k)1
cũng có l!i ích kéo theo cao.
ChHng minh:
Vì X
k)1
⊂
X
k
, nên db
Xk
⊆
db
Xk)1
. Theo công thc tính twu 3 ñLnh nghĩa 2.11:
twu(X
k)1
)=
)(
1
∑
−
∈
k
Xq
dbT q
Ttu
≥
)(
∑
∈
k
Xq
dbT q
Ttu
=twu(X
k
)
Do ñó n/u twu(X
k
)
≥
minutil thì twu(X
k)1
)
≥
minutil.
Nh"n xét: Tính cht phEn ñơn ñiu c&a l!i ích kéo theo có nghĩa là n/u mt km
tp m4c X
k
có cha tp m4c con X
k)1
mà X
k)1
là tp m4c có l!i ích kéo theo thp thì X
k
cũng là tp m4c có l!i ích kéo theo thp. Các ng viên kmtp m4c l!i ích kéo theo cao
cho có thI có ñư!c t các k/t n@i c&a các (km1)mtp m4c có l!i ích kéo theo cao. D#a vào
nhn xét này, có thI sp d4ng các phương pháp khai phá tp m4c phe bi/n ñI tìm các tp
m4c l!i ích twu cao.
ð<nh lý 2.2: N/u X là tp m4c l!i ích cao thì X cũng là tp m4c có l!i ích kéo
theo cao.
ChHng minh:
Vì u(X, T
q
)
≤
tu(T
q
) nên u(X) =
),(
∑
∈
Xq
dbT q
TXu
≤
)(
∑
∈
Xq
dbT q
Ttu
= twu(X)
Vy, n/u u(X)
≥
minutil thì twu(X)
≥
minutil.
3. ThuNt toán Im`Two`Phase
3.1. Cơ s lý thuyt
Trong thut toán Two)Phase [5], giá trL twu ñư!c so v2i minutil ñI sinh tp ng
viên cho tp m4c l!i ích cao. Tuy nhiên, trong bư2c tìm ra các 1mtp m4c có l!i ích twu
cao, nhn xét rKng các 1mtp m4c có l!i ích twu thp không tham gia vào quá trình sinh
tp ng viên cho tp m4c l!i ích cao (theo ñfnh lý 2.1 và 2.2) nên có thI bq ñi các 1mtp
m4c này trong tng giao tác. T ñó, giá trL tu sr tr ñi các giá trL l!i ích c&a 1mtp m4c
l!i ích thp, làm giá trL twu giEm ñi so v2i giá trL twu ban ñNu, thu g8n các ng viên hơn
khi so v2i minutil.
C4 thI, sau khi ñã có tp WHU
1
như trong thut toán Two)Phase, sau khi ñã có

171
tp WHU
1
, duyt CSDL lNn na ñI bq ñi các 1mtp m4c l!i ích thp trong tng giao tác
và cp nht l!i ích tu c&a tng giao tác:
for mOi giao tác T
∈
DB
Bq ñi các m4c X
∈
T \WHU
1
;
Cp nht l!i ích tu(T):=tu(T) )
∑
∈WHUTX
TXu
\
1
),(
;
Thut toán gi l6i các câu lnh còn l6i như c&a thut toán Two)Phase, tuy nhiên
cEi ti/n bư2c n@i trong quá trình sinh ng viên cho tp C
k
t tp WHU
k)1
:
Thay vì n@i
hai (km1)mtp m4c trong WHU
k)1
v2i
nhau ñI t6o ng viên cho tp C
k
như trong thut
toán Two)Phase, thì thut toán Im)Two)Phase sr n@i mt (km1)mtp m4c trong WHU
k)1
v2i 1mtp m4c trong WHU
1
giúp
thFi gian th#c hin c&a thut bư2c n@i ñư!c giEm
xu@ng.
Mnh ñ 2.1: ð phc t6p c&a bư2c n@i trong bư2c sinh ng viên C
k
trong thut
toán Two)Phase là O(
21
)(
−k
m
Ck ).
ChHng minh:
Trong thut toán Two)Phase, n@i hai (k)1))tp m4c trong WHU
km1
: s@ tp m4c
trong WHU
km1
t@i ña là
1−k
m
C
, v2i m là s@ m4c. S@ khE năng ch8n 2 tp m4c ra t
WHU
km1
là
2
1−k
m
C
C
. Khi xét hai (k)1))tp m4c này cNn t@i ña (k)1) phép so sánh, do ñó
teng s@ phép tính là: (km1)
2
1−k
m
C
C
. Ta có:
(km1).
2
1−k
m
C
C
= (km1). )!2(!2
!
1
1
−
−
−
k
m
k
m
C
C= (km1).
2
)1( 11 −
−− k
m
k
mCC
21
).(
−
≈
k
m
Ck
Mnh ñ 2.2: ð phc t6p c&a bư2c n@i c&a hàm Im_Gen_Ck trong thut toán
Im)Two)Phase là O(m.
1−k
m
C
).
ChHng minh:
Trong thut toán Im)Two)Phase, n@i mt (k)1))tp m4c trong WHU
km1
v2i 1mtp
m4c trong WHU
1
: WHU
1
có t@i ña m tp m4c, WHU
km1
có t@i ña
1−k
m
C
phNn tp, thut
toán ch8n mt (k)1))tp m4c trong WHU
km1
v2i 1mtp m4c trong WHU
1
, khi n@i cNn 1
phép so sánh, nên teng s@ phép tính: 1.m.
1−k
m
C, do ñó ñ phc t6p c&a thut toán này
là: O(m.
1−k
m
C
).
Như vy, thut toán Im)Two)Phase ñã giEm thFi gian bư2c n@i sinh tp ng viên

