Khai thác chuỗi tuần tự
KHAI THÁC D LI U & NG D NG (DATA MINING) GV : NGUY N HOÀNG TÚ ANH BÀ I KHAI THÁC CHU I TU N T N I DUNG Gi i thi u Khái ni m b n Thu t toán GSP khai thác chu i tu n t GI I THI U Th t (theo th i gian): quan tr ng CSDL chu i th i gian (time-series DB) , CSDL chu i (sequence DB) T p (m u) ph bi n → M u tu n t ph bi n (sequental pattern) ng d ng c a khai thác m u tu n t Chu i m t hàng : Mua máy tính, sau ó mua CD-ROM, sau ó mua máy camera k thu t s vòng tháng Chăm sóc b nh nhân, t i h a t nhiên ( ng t), qui trình k thu t, th trư ng ti p th ,… Cu c g i i n tho i, Weblog Chu i DNA c u trúc gen VÍ D D CSDL chu i LI U CHU I Chu i Ph n t (giao d ch) S ki n (h ng m c) Khách hàng Quá trình mua hàng c a khách hàng T p m t hàng c Sách, s tay, CD, … khách hàng mua vào th i i m t D li u Web Ho t ng t web c a ngư i s d ng T p file ã xem ( sau nh p chu t ) Trang ch , trang index , thông tin liên l c, … Chu i gen Chu i DNA Ph n t c a chu i DNA T h p c a A,T,G,C Ph n t (Giao d ch) E1 E2 E1 E3 Chu i E2 E2 E3 E4 S ki n (H ng m c) N I DUNG Gi i thi u Khái ni m b n Thu t toán GSP khai thác chu i tu n t KHÁI NI M CƠ B N CHU I (Sequence) Chu i danh sách ph th t M i ph n t c a chu i : t m c) Các s ki n m t ph (thư ng vi t theo b ng ch Ký hi u : n t ( giao d ch) có p s ki n (h ng n t khơng có th t cái) Chu i s = < s1 s2 … sn > v i sj t p s ki n sj - g i ph n t c a chu i s có d ng (x1x2 … xm ) v i xj m t s ki n (h ng m c) VD : < C (M,P) (S,T) > m t chu i có chi u dài =5 có ph n t KHÁI NI M CƠ B N CHU I (tt) Chu i si = < a1 a2 … an > chu i c a chu i sj = < b1 b2 … bm > n u : n≤m ∃ s nguyên i1 < i2 Có < {1,2} {3,4} > < {1} {2} > Không < {2,4} {2,4} {2,5} > < {2} {4} > Có KHÁI NI M CƠ B N CSDL CHU I Cho CSDL D Ví d : SID Sequence 100 200 300 400 Mã KH Mã hàng Ngày mua 100 100 100 100 100 a a, b, c a, c d c, f 10 15 20 25 30 200 200 200 200 a, d c b, c a, e 15 20 25 30 300 e, f … 20 400 e, g … 10 KHÁI NI M CƠ B N CSDL CHU I (tt) Cho CSDL chu i D ={ d1, d2, …, dn} ph bi n c a chu i s CSDL D t l gi a s chu i ch a s t ng s chu i D Supp(s)= |{di ∈ D | s chu i c a di }| / |D| Ví d : s = SID Sequence Supp(s) = 2/4 = 50% 100 s1 = 200 s2 = s3 = Supp(s1) =? Supp(s2) =? Supp(s3) =? 300 400 10 KHÁI NI M CƠ B N BÀI TOÁN KHAI THÁC CHU I TU N T Cho CSDL chu i ngư ng minsupp, c n tìm tồn b chu i ph bi n th a mãn minsupp ã cho Ví d : CSDL chu i D minsupp = 50% = 2/4 SID Sequence 100 200 300 400 • Chu i s = chu i tu n t ph bi n • Các chu i s1 = , s2 = , s3 = có ph i chu i ph bi n ? 11 KHÁI NI M CƠ B N THÁCH TH C T n t i m t s lư ng l n chu i tu n t ph bi n b d u CSDL Thu t tốn khai thác c n Tìm tồn b m u th a mãn ngư ng minsupp Hi u qu , co dãn, s l n t CSDL nh Có th k t h p v i nhi u lo i ràng bu c c a ngư i dùng 12 KHÁI NI M CƠ B N NGHIÊN C U nh nghĩa khái ni m thu t toán gi ng thu t toán Apriori ( Apriori-All) - 1995 GSP – Phương pháp khai thác d a tính ch t Apriori - 1996 Phương pháp phát tri n m u : PrefixSpan - 2001 13 KHÁI NI M CƠ B N Tính ch t b n c a chu i tu n t Tính ch t Apriori : N u S chu i khơng ph bi n khơng có chu i bao (super-sequence) c a S ph bi n Ví d : Trong CSDL dư i, n u chu i không ph bi n → , không ph bi n Seq ID 10 20 30 40 50 Sequence minsupp = 14 N I DUNG Gi i thi u Khái ni m b n Thu t toán GSP khai thác chu i tu n t 15 THU T TOÁN GSP B N CH T GSP : Generalized Sequential Pattern- Agrawal & Srikant, EDBT’96 Duy t CSDL tìm chu i ph bi n có dài For m i c p ( chu i có dài k) T o chu i ng viên có dài (k+1) t chu i ph bi n chi u dài k (s d ng Apriori) Duy t CSDL m ph bi n c a t ng chu i ng viên lo i ng viên không th a mãn ngư ng minsupp L p l i n khơng cịn chu i ph ng viên S d ng tính ch t Apriori bi n ho c khơng cịn c t b t ng viên 16 VÍ D THU T TỐN GSP Các ng viên C1 Seq ID 10 20 30 40 50 Sequence Sup , , , , , , , Duy t CSDL tính ph bi n c a t ng ng viên tìm F1 -> F1 = , , , , , Cand u tiên C1 : minsupp =2 17 VÍ D THU T TỐN GSP T o ng viên C2 : = phép k t Các chu i chi u dài = có ph n t 18 VÍ D THU T TỐN GSP T o ng viên C2 (tt) Các chu i chi u dài = có ph n t T ng c ng có 51 chu i ng viên chi u dài =2 19 VÍ D THU T TỐN GSP Xác nh t p chu i ph bi n F2 Duy t CSDL xác nh ph bi n c a t ng chu i ng viên chi u dài = Có 19 ng viên có ph bi n ≥ minsupp (=2) > T p chu i ph bi n F2 g m có 19 chu i 20 10 VÍ D THU T TOÁN GSP Supp=2 21 VÍ D THU T TOÁN GSP Supp=0 22 11 VÍ D THU T TỐN GSP T o t p ng viên C3 Dùng phép k t : F2 v i F2 Ví d : , : chu i ph bi n chi u dài = , , , , - ng viên chi u dài = , chu i ph bi n chi u dài=2 , , , , - ng viên chi u dài = Phép lo i b : d a tính ch t Apriori Có 46 ng viên chi u dài = 23 VÍ D THU T TỐN GSP Tìm t p chu i ph bi n F3 Duy t CSDL xác nh ph bi n c a t ng chu i ng viên chi u dài = Có 19 ng viên có ph bi n ≥ minsupp > T p chu i ph chu i bi n F3 g m 19 24 12 VÍ D THU T TỐN GSP 5th scan: cand length-5 seq pat 4th scan: cand length-4 seq pat Supp(Cand.)< minsupp < … 3rd scan: 46 cand 19 length-3 seq pat 20 cand not in DB at all 2nd scan: 51 cand 19 length-2 seq pat 10 cand not in DB at all 1st scan: cand length-1 seq pat minsupp =2 Cand ∉ CSDL … … … … Seq ID 10 20 30 40 50 Sequence 25 THU T TOÁN GSP Pseudo-Code Input : CSDL chu i D, minsupp Output : F - chu i tu n t ph bi n D Ck : T p chu i ng viên chi u dài k Fk : T p chu i ph bi n chi u dài k F1 = Tìm_chu i_ph _bi n_chi u dài 1(D); // có d ng for (k = 1; Fk ≠∅; k++) { Ck+1 = apriori_gen(Lk); // T o t p chu i ng viên chi u dài (k+1) if Ck+1 ≠∅ then { Duy t CSDL tính Fk+1 = { s ∈ Ck+1 | supp(s)≥ minsupp } } } 26 return F = ∪k Fk; 13 THU T TOÁN GSP T o t p chu i ng viên chi u dài (k+1) Hàm apriori_gen nh n Fk tr v t p chu i (k+1) G m bư c : k t c t b Bư c k t : Chu i s1 k t v i chu i s2 n u ng viên chi u dài Chu i s1 sau b b t i h ng m c u tiên gi ng Chu i s2 b b t h ng m c cu i K t qu phép k t = chu i s1 m r ng thêm h ng m c cu i c a chu i s2 H ng m c thêm có th t o thành m t ph n t m i s1 n u ph n t riêng bi t thu c s2, ngư c l i m t thành viên c a ph n t cu i c a s1 Bư c c t b : lo i chu i không ph bi n ng viên có ch a chu i VÍ D T O T P CHU I 27 NG VIÊN Gi s F3 = {, , , , , } Sau bư c k t : C4 = {, } không k t c v i chu i khác khơng t n t i chu i có d ng ho c Sau bư c lo i b t : C4 = {} ∉ F3 nên b lo i 28 14 BÀI T P XD T P CHU I NG VIÊN • Th i gian : 7’ • Gi s chu i • Xác F3 t p g m nh t p ng viên C4 • Trình bày k t qu trư c l p F3 < {1} {2} {3} > < {1} {2 5} > < {1} {5} {3} > < {2} {3} {4} > < {2 5} {3} > < {3} {4} {5} > < {5} {3 4} > 29 ÁP ÁN BÀI T P XD T P CHU I NG VIÊN F3 < {1} {2} {3} > < {1} {2 5} > < {1} {5} {3} > < {2} {3} {4} > < {2 5} {3} > < {3} {4} {5} > < {5} {3 4} > 30 15 H N CH C A GSP S lư ng kh ng l t p chu i ng viên ( c bi t chu i có chi u dài = 2) Duy t CSDL nhi u l n Không hi u qu khai thác chu i dài -> M t cách gi i quy t : PrefixSpan (t c tài li u tham kh o) 31 BÀI T P T I L P Th i gian : 10’ Cho CSDL chu i minsupp = Tìm t p ng viên t p chu i ph bi n Seq ID Sequence 10 20 30 40 50 32 16 ÁP ÁN BÀI T P T I L P 33 BÀI T P Cho CSDL chu i D minsupp = 50% Xác nh t p chu i ph bi n D Có th áp d ng ý tư ng thu t toán FP-Growth vào toán tìm chu i ph bi n khơng th ? Mã KH Mã hàng Ngày mua 10 10 10 10 a, d a, b, c a, b,f a,c,d,f 10 15 20 25 20 20 a, b,f e 15 20 30 a,b, f 10 40 40 40 d,g,h b,f a,g,h 10 20 25 34 17 TÀI LI U THAM KH O R Srikant, R Agrawal Mining sequential patterns : Generalizations and perfomance improvements EDBT’96 J Han J Pei Pattern Growth Methods for Sequential Pattern Mining : Principles and Extensions, ACM SIGKDD 2001, USA http://illimine.cs.uiuc.edu/demo/ : Demo m t s thu t tốn tìm t p ph bi n chu i ph bi n http://wwwusers.cs.umn.edu/~kumar/dmbook/resources.htm : Chương trình m t s thu t tốn ph n m m b n c a toán khai thác d li u 35 Q&A 36 18 ... = có ph i chu i ph bi n ? 11 KHÁI NI M CƠ B N THÁCH TH C T n t i m t s lư ng l n chu i tu n t ph bi n b d u CSDL Thu t tốn khai thác c n Tìm tồn b m u th a mãn ngư ng minsupp Hi u qu... CSDL chu i (sequence DB) T p (m u) ph bi n → M u tu n t ph bi n (sequental pattern) ng d ng c a khai thác m u tu n t Chu i m t hàng : Mua máy tính, sau ó mua CD-ROM, sau ó mua máy camera k thu t... E2 E1 E3 Chu i E2 E2 E3 E4 S ki n (H ng m c) N I DUNG Gi i thi u Khái ni m b n Thu t toán GSP khai thác chu i tu n t KHÁI NI M CƠ B N CHU I (Sequence) Chu i danh sách ph th t M i ph n t c a chu