1-TÊN DE TÀI:NHAN DANG MOTIF VÀ BAT THUONG TREN DU LIEU CHUOI THỜI GIAN DUA VAO KY THUAT BAM 2-NHIEM VU LUAN VAN:— Để xuất một phương pháp hiệu quả vừa khai pha motif vừa khai phá bat th
Trang 1PHAM THANH XUAN
NHAN DANG MOTIF VA BAT THUONG
TREN DU LIEU CHUOI THOI GIANDUA VAO KY THUAT BAM
CHUYEN NGANH: Khoa học máy tính
MÃ SỐ: 60.48.01
LUẬN VÁN THẠC SĨ
Trang 2PHAM THANH XUAN
NHAN DANG MOTIF VA BAT THUONG
TREN DU LIEU CHUOI THOI GIANDUA VAO KY THUAT BAM
CHUYEN NGANH: Khoa học máy tính
MÃ SỐ: 60.48.01
LUẬN VÁN THẠC SĨ
Trang 3Cán bộ hướng dẫn khoa học : PGS.TS Dương Tuan Anh
Cán bộ cham nhận xét 1: TS Võ Dinh Bảy 5- 52 5c scsccee
Vân -CHỦ TỊCH HỘI ĐÔNG TRƯỞNG KHOA
Trang 4Tp HCM, ngay 22 thang 07 nam 2013.
NHIEM VU LUẬN VAN THAC SĨHọ và tên học viên: Pham Thanh Xuân Giới tính: Nam ¡ '/ Nữ L¡
Ngày, tháng, năm sinh: 21/06/19&%3 - 2 1222221111221 11k xseg Nơi sinh: Long An
Chuyên ngành: Khoa học máytính ne bee cà c2 ee Sàn anes
Khoá: 2011 cò c2 2 n2 vee vee vee vat ves evs visser Hà te nà nà Hà nà nà nh H h Hà.
1-TÊN DE TÀI:NHAN DANG MOTIF VÀ BAT THUONG TREN DU LIEU CHUOI THỜI GIAN
DUA VAO KY THUAT BAM
2-NHIEM VU LUAN VAN:— Để xuất một phương pháp hiệu quả vừa khai pha motif vừa khai phá bat thường trên dữ
liệu chuỗi thời gian dựa vào kỹ thuật băm.— Hiện thực và thử nghiệm trên phương pháp đã dé xuất.
3-NGÀY GIAO NHIỆM VỤ:
21/01/2013
4-NGÀY HOÀN THÀNH NHIỆM VỤ:
21/06/2013
5-HỌ VA TÊN CÁN BỘ HƯỚNG DAN: PGS.TS Dương Tuấn Anh
Nội dung va dé cương Luận Văn Thạc Sĩ đã được Hội Đồng Chuyên Ngành thông qua.
CAN BO HUONG DAN CHU NHIEM BO MON(Ho tên và chữ ki) QUAN LÝ CHUYÊN NGANH
(Họ tên và chữ kí)
PGS.TS.Dương Tuan Anh
Trang 5Tôi cam đoan răng, ngoại trừ các kêt quả tham khảo từ các công trình khác như đãghi rõ trong luận văn, các công việc trình bày trong luận văn nay do chính tôi thực hiệnvà chưa có phân nội dung nào của luận văn này được nộp đê lầy một băng câp ởtrường này hoặc trường khác.
Ngày 22/07/2013
Phạm Thanh Xuân
Trang 6Đề có thể hoàn thành tốt luận văn này, trước tiên tôi xin chân thành gửi lời cảm ơnđến PGS.TS.Dương Tuấn Anh, người Thây đã luôn tận tâm chỉ bảo và hướng dẫn tôitrong suốt thời gian tôi thực hiện luận văn này.
Tôi xin cảm ơn các quí thầy cô, những người đã gián tiếp và trực tiếp chỉ bảo vàgiảng dạy giúp tôi có những kiến thức cần thiết dé thực hiện luận văn này
Tôi cũng xin cảm ơn gia đình va bạn bè đã quan tâm giúp đỡ và tạo điều kiện dé tôihoàn thành tốt luận văn này
Tôi xin gửi lời cam ơn chân thành dén tat cả mọi người.
Trang 7Motif trong dit liệu chuỗi thời gian là những chuỗi con (Subsequense) tương tự xuất
hiện lặp đi lặp lại nhiều lần trong tập dữ liệu Bat thường trong đữ liệu chuỗi thời gian
là một chuỗi con chỉ xuất hiện duy nhất một lần và khác biệt nhất với tất cả các chuỗicon còn lại trong tập dữ liệu Kích thước cua dữ liệu chuỗi thời gian thường rất lớn vàngày càng gia tăng là van dé gây khó khăn cho các giải thuật khai phá motif cũng nhưcác giải thuật khai phá bất thường
Trong luận văn nay, chúng tôi đề xuất một giải thuật mới, giải thuật FMG (FeatureMatch Grouping) có thé vừa phát hiện motif vừa phát hiện bat thường trên tập dữ liệuchuỗi thời gian có kích thước rất lớn Từ dữ liệu thô (raw data) ban đầu sau khi thựchiện bước chuẩn hóa (normalization) sẽ tiếp tục thực hiện thu giảm số chiều
(dimensionality reduction) và rời rac hóa (discretization) vé dang chuỗi ký tự Sử dụng
cửa số trượt (sliding window) có kích thước w (w do người dùng định nghĩa) trượt quatất cả các ký tự trong chuỗi dữ liệu Các chuỗi con sinh ra từ cửa số trượt gọi là các từ
(word), mỗi từ được xem như một đặc trưng (feature) Một bảng băm (hash table)
được dùng để chứa các đặc trưng này, hai đặc trưng khớp (match) với nhau sẽ đượcchứa trong cùng một thùng băm (bucket) Tìm thùng băm có kích thước lớn nhất, khóatương ứng của thing băm này sé là ứng viên motif Các thùng băm chỉ chứa duy nhấtmột đặc trưng thì những đặc trưng này là những ứng viên bất thường Thực hiện tìmcác thể hiện motif từ ứng viên motif và ngưỡng không tương tự tối đa Ra (Rimax do
người dùng định nghĩa) dựa trên hàm tính khoảng cach Euclid Một ứng viên batthuong vẫn có thé là một thé hiện motif với ngưỡng Rạax, nếu một ung viên bất thường
là một thé hiện motif thì ứng viên đó được loại khỏi danh sách những ứng viên batthường Bấy giờ, các ứng viên bất thường còn lại sẽ được loại trừ dân bằng giải thuật
tiễn_ lài (forward_backward) dé nhận diện ứng viên bất thường thật sự
Giải thuật FMG giải quyết bài toán vừa khai phá motif vừa khai phá bất thườngtrong thời gian tuyến tính với kích thước tập dữ liệu, không gian sử dụng bộ nhớ làhăng số Qua kết quả thực nghiệm cho thấy giải thuật FMG tốt hơn rất nhiều so vớigiải thuật khai phá motif chiéu ngẫu nhiên (Random Projection) và giải thuật khai phabất thường HOTSAX
Trang 8times in the data set Anomaly in time series data is that a subsequence appears onlyonce and is most different from the rest of subsequence in the data set Usually, thesize of the time series data is very large and growing more and more This is thechallenge that makes it difficult for the motif discovery algorithms as well as theanomaly discovery algorithms.
In this thesis, we propose a new algorithm, FMG (Feature Match Grouping)algorithm which can find motif as well anomaly on the very large time series data.From the initial raw data, after executing normalization step, we will performdimensionality reduction and discretization Using the sliding window of size w (wdefined by the user), it slides through all the symbols in the string The subsequencegenerated by the sliding window are called the word, each word is considered as afeature A hash table is used to contain these features, two match features will bestored together in the same bucket Finding bucket with the largest size, thecorresponding key of this bucket will be the motif candidate For the bucketscontaining only a single feature, these features are anomaly candidates We can findmotif instances from the motif candidate and basing on the dissimilarity maximumthreshold R„max (Rimax defined by user based on Euclid distance function) An anomalycandidate still can be any motif instance with the threshold R„ax, if an anomalycandidate is also an motif instance, it will be eliminated from the anomaly candidatelist Then, the remaining candidates will be excluded by forward_backward algorithmto identify the real anomaly subsequence.
FMG algorithm solves the motif discovery and anomaly discovery problem inlinear time with the size of the data set, using memory space is a constant Theexperimental results show that the FMG algorithm is much better than the RandomProjection algorithm in motif discovery and much better than HOTSAX algorithm inanomaly discovery.
Trang 9CHUONG 1: GIỚI THIEU DE TÀII 22552 S5 2E‡EE2EEEE‡EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEkrkrrkerrrkerrree 11.1 Dữ liệu chuỗi thời gian 5-55 22 3Sề 2v ch HT H11 1x xttrrrrrrrrrrio 1
1.2 Truy xuất thông tin trên dữ liệu chuỗi thời gian - ¿5-5 5S cxcrrxersrrrrvree 113 Khai phá motif và bất thường trên dữ liệu chuỗi thời gian 55c cc sec 2
1.4 Hướng (iếp cận của luận văn -¿- 5: - 5625 St SE 2E E111 1111210112111 111111111 xe 3
l5 Ý nghĩa của luận văn - - HH HH HH 41.6 Cấu trúc của luận văn - ¿S55 S SE SEx 2E E1 E23917111111111111171111111111111 111.0 4
CHUONG 2: TONG THUẬT NHỮNG CONG TRÌNH LIEN QUAN ¿ 525ccccccccsccrea 52.1 Một số khái niệm cơ bản ¿S6 St SE E1 E111 210171111 11111111111 1x11 krrkd 5
2.2 Các phương pháp tính độ đo tương ự ch HH 82.2.1 Độ Go MinkowSki LH HH HH kh 82.2.2 Độ do Dynamic Time Warping (D TW) HH HH HH ke 9
2.3 Các phương pháp biểu diễn dữ liệu chuỗi thời gian - ¿5-5-5 5< c*cercrxcxez 102.3.1 Các phương pháp thu giảm số chiều - - 5-5555 S*+EeEzEerxrrerxrrerree 11
2.3.2 Phương pháp rời rac hóa dữ liệu - - Ă- - Ă ES< 1n ST ng re 152.4 Giải thuật khai phá motif chính xác - - - SH HH HH HH, 162.5 Giải thuật khai phá motif XẤp XỈ ce Sàn tt TH HE H111 11111111 17
2.6 Giải thuật khai phá bất thường ¿5 5c esseseseseessscessssessssesssssseeesseestaneees 192.7 Giải thuật kết hợp khai phá motif và khai phá bat thường ¿55-55555552 23
2.8 Kết luận : cà tì HT THHHHHHHH1 TT 111 1H11 1g 24CHƯƠNG 3: PHƯƠNG PHÁP GIẢI QUYẾT VAN Đ - ch HE krrrrrrki 25
3.1 Thu giảm số chiều với phương pháp PAA cccccceccscsessssesssscesssscsesssseessssestsseseseeeseeeee 25
3.2 Ròi rạc hóa dữ liệu với phương pháp SAX - Ăn HH HH, 26
3.3 Độ đo tương tự MINDISTT ccc HH TH HH HH nh 28TT 5 n6 ::::::ŒAăĂăAỐố 303.5 Giải thuật REÌMG - nh ch HH TH 111111111 Eerrrrrrrrrrree 38
3.6 So sánh phương pháp thực hiện của các giải thuật đo trước - -‹ ¿5< «+ <<<+ 393.7 Kếtluận - SG Sàn nh TH TH 1111 11g11 go 41CHƯƠNG 4: HIỆN THỰC VÀ THU NGHIỆMA ¿5-52 ScSt+E‡2x+EEExEEekeEekerkekerkerkrrerrerees 42
4.1 Mô hình hiện thực các giải thuật Gà HH ng ngư, 43
Trang 104.1.3 Giải thuật vừa khai phá motif vừa khai phá bat thường EMG - 45
4.1.4 Giải thuật khai phá motif REIMG 5 + SE rvggxergrg 464.2 Thực nghiệm các giải thuật đã hiện thực - - - Ă 1c HS SH, 47
4.2.1 Dữ liệu điện tim đồ (ECG) 100.000 điểm 5-5-5 5c 52 SESxxerererxrrered 494.2.2 Dữ liệu điện tim đồ (ECG) 300.000 điểm 5-5 5 5c 222 Sverererkrrrred 52
4.2.3 Dữ liệu điện não đồ (EEG) 10.750 điểm 5-5-5 tterrrrrkrrrred 54
4.2.4 Dữ liệu doanh nghiệp (ERP) 198.400 điểm À . 5-5 55c c2 cterrxrrrrerrees 574.2.5 Dữ liệu MEMORY 6.875 điểm 5-5 5S tt SE 2111211111111 rrrkd 59
4.2.6 Dữ liệu năng lượng (POWER) 35.040 điểm - - Sàn tt rrrkererrrrea 62
4.2.7 Dữ liệu chứng khoán (STOCK) 12.640 điểm 2-5 5552 ScccxvEcxererxees 63
4.3 So sánh các giải thuật dựa trên kết quả thực nghiệm -.- 2-5 5555 cesses 66
CHƯƠNG 5: KẾT LUẬN - 5-5: 2t St 3E 2111112191 211111 7111111111111 T111 TL 695.1 Tổng kết - 5.5 tk THE TH HH H111 1 1111111111111 re 69
5.2 Những đóng góp của luận văn eee eneceeeeeeeeeeeeeaaeeeeeeaeeeesesaaaeesesaaeeeeseaaaeeeeeeaaees 69
5.3 Hướng phát triển của luận văn ¿- - 6-5 SE EEEEEEEEEEEEEEEEEEEEEEEEEkrkrrkrrrrkrrkrkee 70
TÀI LIEU THAM KHHẢO 6-5: 2552392523 2EE2E91921 2311 211111111111111111E1111.T.T 1xx 71PHU LUC A: BANG DOI CHIEU THUẬT NGỮ ANH-VIỆTT + 25c S2x+EEzxererxrrrrrrsrree APHU LUC B: LY LICH TRÍCH NGANG ¿E255 StSESt‡x#ESEEEEEEEEEEEEEEEEEEEErkkrkrkrrrrrrerrrrrrrrris B
Trang 11Hình 1.2: (a) Một minh hoa motif (b) Một minh hoa bat thường [2| - - « «5+ << £++xeeessessxs 2Hình 2.1: Chuỗi con C và M sinh ra từ cửa số trượt và M khớp được với C [Š] - «««<c<<«5 6Hình 2.2: Chuỗi con C khớp tầm thường với chuỗi con ngay chính vị trí của nó dịch sang trái hay sangphải một vài điểm giá trị [5] - ¿ ¿6 5£ S2 2 SE2E+EEEE#EEEEEEEEEEEEEEEEEEEEEEEEEEEEEETEEEEEEEEEEETEEEEEETEEEEEETkrrrrkrrr 7
Hình 2.3: Khoảng cách hai motif < 2R (A) ; Khoảng cach hai motif > 2R (B) |6] «5-5 7
Hình 2.4: Độ do Minkowski giữa hai chuỗi con [9] ¿- ¿5 52 E232 E2EEE*EEEEEESEEEeEeErkrkrkrrrerrrrrrerrred 9Hình 2.5: Độ đo Dynamic Time Warping giữa hai chuỗi con [O| + + +c+c+s+c+zcecersrezerscses 10Hình 2.6: Phép biến đổi DFT [19] ¿ ¿6+ 5£2E+E£EE+x9EEEE‡EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEETEEEEEETErrkrkrrrrees 11Hình 2.7: Phép biến đổi DWT [ 1Đ| ¿ 5:6 52+ EE+x9EEEE2EEEEEEEEEEEEEEEEEEEEEEETEEEEEEEEEEETEEEEEETETrkTkrrrrers 12Hình 2.8: Phép biến đổi PAA [1Ø] ¿ ¿655223 EE+x9EEEE2EE E29 EEXEEEEE2E11111.2111111T1 1x T.LyLg 13Hình 2.9: Phép biến đổi APCA [19] - ¿6 522222 EE2x9EEEE2EEEE2EEEEEXEEEEE2EEE1111.7111111.1 1E crvLg 14Hình 2.10: Phép biến đổi PLA [19] - ¿6-5 252 SE *9EEEE‡EEEEEEEEEEEEEEEEEEEESEEEEEEEEEEEEEETkEErrkrkrrkrkrrrrees 15Hình 2.11: Phép biến đổi rời rac hóa SAX [19] - 5: ¿25c S2 SESEE‡E#EEEEEESEEEEEEEEEEEEEErkrkrrrrkrrrrkrrrrees 16Hình 2.12: Giải thuật Brute-Force tìm 1-Motif trên dữ liệu chuỗi thời gian [6] 5-5-5: 17Hình 2.13: Ma trận S chứa tất cả các chuỗi con từ cửa số trượt [5] ¿ - 5s s3 £sEeEersreserseea 18Hình 2.14: Chiếu trên cột 1 và 2, cập nhật ma trận vuông |S | |S] [S -. . .< <-<<<<.<<.<<.<<x++ 18Hình 2.15: Chiếu trên cột 3 và 4, cập nhật ma trận vuông |S | |S] [S -. . .< <-<<<<.<<.<<.<<x++ 19Hình 2.16: Giải thuật Brute-Force nhận dạng chuỗi con bất thường [21] - - «<< <<<<xc+<e<<s2 20Hình 2.17: Giải thuật HOTSAX nhận dạng chuỗi con bất thường [2 Ï] - - «<< sx+<eeess 21Hình 2.18: Hai cấu trúc dữ liệu hỗ trợ giải thuật HOTSAX [2l | - <5 Ă SE S 6 ksseeeses 22Hình 2.19: Hai tập dữ liệu chuỗi thời gian sau khi chia đoạn không đồng đều [2] - 23Hình 2.20: Hai tập dữ liệu chuỗi thời gian sau khi khớp từng cụm hai[2] - 2 + s+c+ss<e<s552 24Hình 3.1: Phương pháp PAA thu giảm chuỗi dữ liệu có chiều dài n = 128 về w = 8 [19] 25Hình 3.2: Mẫu đữ liệu được vẽ có tính chất tuyến tính cho thấy dữ liệu tuân theo phân bố Gauss [19126Hình 3.3: Bảng thông kê dùng dé tra những điểm ngắt theo phân bố Gauss với số vùng phân bồ từ 3101105 0 ăằ 27Hình 3.4: Rời rạc hóa về chuỗi ký tự cho một chuỗi có chiều dài n = 128, ¿-¿ c++e+e+xccsecee: 27
`ˆ 1 1ñ h ẽ 27
Hình 3.5: Khoảng cách Euclid giữa hai chuỗi nguyên thủy (A), hai chuỗi khi đã thu giảm số chiều (B)và hai chuỗi khi đã rời rac hóa (C) [1 ] «¿5£ kkkzE*EkEkEEEEEkEkEEEEkEk SE 1E TT HT HH, 29Hình 3.6: Phương pháp tính khoảng cách giứa hai ký tự bằng cách tra bảng [19] -5- 29Hình 3.7: Độ chặt chặn dưới của hàm khoảng cách MINDIST với hệ SỐ đ Và w tương ứng [19] 30Hình 3.8: Giải thuật Build_FM_ HashTable xây dựng bảng băm từ chuỗi dữ liệu đã rời rac hóa 32
Hình 3.9: Minh họa quá trình rút trích các đặc trưng, lưu vào bảng băm và tìm ứng viên motif và ứng
viên bat thường từ các thùng băm với 7 = aacbaccacbc, cửa $6 trượt w = 3 -¿-scccccc+cccccsa 33
Hình 3.10: Giải thuật Get_ Motif_ Candidate chon ứng viên motif tt bang băm - - 34
Hình 3.11: Giải thuật Find_Motif tìm tat cả những thể hiện motif từ motif ứng viên và ngưỡng khoảngCACH Oi da Royyay nằana :.2Ÿ2ä21qạ HH 35
Hình 3.12: Giải thuật Forward_Backward nhận dạng đặc trưng bất thường nhất :cccccccsxce2 37
Hình 4.1: Mô hình hiện thực của giải thuật RP 2G G Q30 1H họ HH HH kh 43Hình 4.2: Mô hình hiện thực giải thuật HƠI SA X 2 - Qui 44
Trang 12Bang 1: Chức năng của các thành phan giao diện của chương trình - +55 z+s+x+zszx+see: 48Bảng 2: Thông số đầu vào cho các tập dữ liệu dùng trong thực nghiệm - ¿2 + +cs>s+ 55c: 49Hình 4.6: Kết qua của giải thuật RP trên dit liệu ECG 100.000 điểm - 2552 22s+c+zs>ssec: 49Hình 4.7: Kết qua của giải thuật RFMG trên dữ liệu ECG 100.000 điểm -. .- ¿52-5 5555255: 50Hình 4.8: Kết qua của giải thuật FMG tim motif trên dữ liệu ECG 100.000 điểm - 50Hình 4.9: Kết qua của giải thuật FMG tìm bat thường trên dữ liệu ECG 100.000 điểm 51Hình 4.10: Kết qua của giải thuật HOTSAX khai phá bất thường trên dữ liệu ECG 100.000 điểm 51Hình 4.11: Kết qua của giải thuật RP trên dữ liệu ECG 300.000 điểm ¿5+5 22s+cvcxcssec: 52Hình 4.12: Kết quả của giải thuật REMG trên dữ liệu ECG 300.000 điểm -. 2-: 75555255: 52Hình 4.13: Kết quả của giải thuật FMG tìm motif trên dữ liệu ECG 300.000 điểm - 53Hình 4.14: Kết quả của giải thuật FMG tìm bat thường trên dữ liệu ECG 300.000 điểm 53Hình 4.15: Kết quả của giải thuật HOTSAX khai phá bat thường trên dữ liệu ECG 300.000 điểm 54Hình 4.16: Kết quả của giải thuật RP trên dit liệu EEG 10.750 điểm -¿-5- 5252252 5z>s+cvrxzrsseei 54Hình 4.17: Kết qua của giải thuật REMG trên dữ liệu EEG 10.750 điểm -. .- 2-5-5555 55c: 55Hình 4.18: Kết qua của giải thuật FMG tim motif trên dữ liệu EEG 10.750 điểm - 55Hình 4.19: Kết quả của giải thuật FMG tìm bat thường trên dữ liệu EEG 10.750 điểm 56Hình 4.20: Kết quả của giải thuật HOTSAX khai phá bat thường trên dữ liệu EEG 10.750 diém 56Hình 4.21: Kết quả của giải thuật RP trên dữ liệu ERP 198.400 điểm - ¿55+ 52 52cc+csrxcsseei 57Hình 4.22: Kết quả của giải thuật REMG trên dữ liệu ERP 198.400 điểm .- 5-55-5555 55c: 57Hình 4.23: Kết quả của giải thuật FMG tìm motif trên dữ liệu ERP 198.400 điểm - 58Hình 4.24: Kết quả của giải thuật FMG tìm bat thường trên dữ liệu ERP 198.400 điểm 58Hình 4.25: Kết qua của giải thuật HOTSAX khai phá bất thường trên dữ liệu ERP 198.400 điểm 59Hình 4.26: Kết quả của giải thuật RP trên dữ liệu MEMORY 6.875 điểm -. 755cc 55c: 59Hình 4.27: Kết quả của giải thuật REMG trên dữ liệu MEMORY 6.875 điểm - 25-555: 60Hình 4.28: Kết quả của giải thuật FMG tìm motif trên dữ liệu MEMORY 6.875 điểm 60Hình 4.29: Kết quả của giải thuật FMG tìm bat thường trên dữ liệu MEMORY 6.875 điểm 61Hình 4.30: Kết quả của giải thuật HOTSAX khai phá bất thường trên dữ liệu MEMORY 6.875 điểm 61Hình 4.31: Kết quả của giải thuật RP trên dữ liệu POWER 35.040 điểm - 5-55-5555 55c: 62Hình 4.32: Kết quả của giải thuật REMG trên dữ liệu POWER 35.040 điểm - 2555555: 62Hình 4.33: Kết quả của giải thuật FMG tìm motif trên dữ liệu POWER 35.040 điểm 63Hình 4.34: Kết quả của giải thuật RP trên dit liệu STOCK 12.640 điểm ¿5c -5255+cscscc+ sec: 63Hình 4.35: Kết quả của giải thuật REMG trên dữ liệu STOCK 12.640 điểm -. - 525555255: 64Hình 4.36: Kết quả của giải thuật FMG tìm motif trên dữ liệu STOCK 12.640 điểm 64Hình 4.37: Kết quả của giải thuật FMG tìm bat thường trên dữ liệu STOCK 12.640 điểm 65Hình 4.38: Kết quả của giải thuật HOTSAX khai phá bat thường trên dữ liệu STOCK 12.640 điểm 65Bang 3: Tổng kết kết quả khai phá motif của các giải thuật ¿5 S623 S2t‡EvEcxekerrrsrrsrrrrees 66Bang 4: Tổng kết các kết quả khai phá bat thường của các giải thuật - ¿5-52 z+s+c+zscxsec: G7
Hình 4.39: So sánh thời gian thực thi khai phá motif của các giải thuật - 55555 S< <2 68
Hình 4.40: So sánh thời gian thực thi khai phá bất thường của các giải thuật - 5-5-5: 68
Trang 13CHUONG 1: GIOI THIEU DE TAI1.1 Dữ liệu chuỗi thời gian
Dữ liệu chuỗi thời gian là dữ liệu đo đạc được một cách tuần tự theo thời gian Đốitượng dit liệu có thé có hai hay nhiều chiều trong đó phải có một chiéu là chiều thờigian Dữ liệu chuỗi thời gian xuất hiện rất nhiều trong các lĩnh vực như : tài chính(Hình 1.1), y tế, âm nhạc, thiên văn v.v
3000
2500 +
2000
-1500 +1000 +
500 +
8 99 nữ 01 02 03 04
Year
Hình 1.1: Dữ liệu chuỗi thời gian biếu diễn giá cỗ phiếu [1]
Dữ liệu chuỗi thời gian thường được đo đạc liên tục trong thời gian dài nên có kích
thước rất lớn và gia tăng nhanh Các giải thuật khai phá dữ liệu chuỗi thời gian phảiđối mặt với chi phí rất lớn vé thời gian thực thi cũng như tài nguyên bộ nhớ Do đó,việc nghiên cứu các phương pháp hiệu quả để khai phá dữ liệu chuỗi thời gian ngàycàng quan trọng và thu hút rất nhiều sự quan tâm
1.2 Truy xuất thông tin trên dữ liệu chuỗi thời gianTruy xuất thông tin trên dữ liệu chuỗi thời gian là việc xác định và rút trích thông tinthỏa mãn nhu cầu của người dùng Giải thuật truy xuất thông tin sẽ tìm trên tập dữ liệunhững mau thông tin thích hợp cho người dùng Có hai phương thức truy xuất thôngtin là: truy xuất theo mẫu và truy xuất theo nội dung
Truy xuất theo mẫu (pattern-base retrieval): là cho trước một mẫu (pattern) mô tảthông tin cần tìm, giải thuật sẽ tìm trong tập dữ liệu những mẫu thông tin thỏa điềukiện trùng khớp với mẫu mô tả đã cho Mẫu cho trước có thể được mô tả dưới dạngngôn ngữ câp cao hoặc có thê chuyên đôi về dạng mô tả toán học đề máy tính có thê
Trang 14hiểu Một vi dụ truy xuất theo mẫu cho trước đó là mẫu ngôn ngữ truy van có cau trúc(Structured Query Language hay SOL) Một s6 ứng dụng dạng truy xuất này là nhữngứng dụng trong nhận dạng giọng nói, hệ thông truy xuất âm thanh, nhận dạng hình ảnh.Truy xuất theo nội dung (content-base retrieval): là truy xuất tat cả các mẫu thôngtin chưa hè biết trước trong tập dữ liệu thỏa mãn một mô tả vật lý, hay một tiêu chí so
sánh, hoặc là một mức độ tương tự nào đó của những mẫu thông tin trong tập dữ liệu
Một ví dụ cho truy xuất theo dạng này là người dùng muốn theo dõi những công ty cógiá cô phiếu thay doi một cách tương tự
Đề đánh giá một giải thuật chúng ta dựa vào ba tiêu chí đánh giá:Y Tính đúng: kết quả trả về không có lỗi tìm sai (dữ liệu không nên có trong
kêt qua trả về mà lại có trong két qua trả vê).Y Tính day đủ: kết quả trả về không có lỗi tìm sót (dữ liệu nên có trong kết qua
trả về nhưng lại không có trong kết quả trả về)
vx Tính hữu hiệu: thời gian đáp ứng và không gian bộ nhớ của giải thuật phải
chấp nhận được
Tuy nhiên, ba tiêu chí trên luôn luôn đánh đôi qua lại, để đạt được tính hữu hiệu
cao thì tính đúng và tính chính xác phải bị giảm đi và ngược lại.1.3 Khai pha motif và bất thường trên dữ liệu chuỗi thời gianKhai phá motif là tìm những chuỗi con tương tự nhau xuất hiện lặp đi lặp lại trong dữ
liệu chuỗi thời gian (Hình 1.2a) Khai phá bất thường (anomaly) là tìm một chuỗi con
khác biệt nhất với tất cả các chuỗi con khác trong dữ liệu chuỗi thời gian (Hình 1.2b)
<.==<===—_—<ae<<
(a) (b)
Hình 1.2: (a) Một minh hoa motif (b) Một minh hoa bat thường [2]
Trang 15Trong khai phá bat thường kết qua tra về đòi hỏi phải là kết quả chính xác trong khikhai phá motif kết quả trả về có thé là một kết quả xấp xi Hai hướng tiếp cận chính củagiải thuật khai phá motif là:
Y Khai phá motif chính xác (exact motif): là làm việc trực tiếp trên dữ liệu thô dựavào giải thuật brute-force làm co sở từ đó có thé cải tiễn giải thuật bang cách ápdụng một số heuristic nhằm tăng tốc cho giải thuật Các giải thuật theo hướngtiếp cận này có tính đúng và tính đầy đủ cao tuy nhiên tính hữu hiệu không cao,phù hợp với dữ liệu có kích thước nhỏ.
Y Khai phá motif xâp xi (approximate motif): dt liệu chuỗi thời gian sẽ được xử lýtrước khi thực hiện việc khai phá như thu giảm số chiều, rời rạc hóa Trong quátrình khai phá có thể áp dụng một số tính chất dựa trên xác suất, tính ngẫunhiên Hướng tiếp cận này giúp tăng tính hữu hiệu của giải thuật trong khi tínhđúng và tính chính xác vẫn có thể chấp nhận được, phù hợp với dữ liệu có kíchthước lớn.
1.4 Hướng tiếp cận của luận vănDựa trên ý tưởng vừa khai phá motif vừa khai phá bất thường của tác giả Yi Lin cùngcác cộng sự dé xuất năm 2010 [2] Chúng tôi đề xuất một giải thuật mới, giải thuật
FMG vừa khai pha motif xấp xỉ vừa nhận diện chính xác đối tượng bất thường dựa trên
hệ quả của quá trình khai phá motif Giải thuật EMG thích ứng tốt với dữ liệu có kíchthước lớn Y tưởng của giải thuật FMG là:
Từ dữ liệu thô (raw data) ban đầu sau khi thực hiện bước chuẩn hóa(normalization) sẽ tiếp tục thực hiện thu giảm số chiều (dimensionality reduction) varời rac hóa (discretization) về dạng chuỗi các ký tự Sử dụng cửa số trượt (slidingwindow) có kích thước w (w do người dùng định nghĩa) trượt qua tat cả các ky tự trongchuỗi dữ liệu Các chuỗi con sinh ra từ cửa số trượt gọi là các từ (word), mỗi từ đượcxem như một đặc trưng (feature) Một bảng băm (hash table) được dùng dé chứa cácđặc trưng này, hai đặc trưng khớp (match) với nhau sẽ được chứa trong cùng mộtthùng băm (burket) Tìm thùng băm có kích thước lớn nhất, khóa tương ứng của thùngbăm nay sẽ là ứng viên motif Các thùng băm chỉ chứa duy nhất một đặc trưng thìnhững đặc trưng này là những ứng viên bất thường
Trang 16Thực hiện tim các thé hiện motif từ ứng viên motif và ngưỡng không tương tự tối đaRimax (Rmax do người dùng định nghĩa) dựa trên ham tính khoảng cách Euclid Một ứngviên bất thường vẫn có thể là một thể hiện motif với ngưỡng Rinax, nếu một ứng viênbat thường là một thé hiện motif thì ứng viên đó được loại khỏi danh sách những ứngviên bất thường Bấy giờ, các ứng viên bất thường còn lại sẽ được loại trừ dần băng
giải thuật tiến_ lùi (forward_backward) dé nhận diện ứng viên bat thường that sự
1.5 Y nghĩa của luận vănGiả thuật FMG mà chúng tôi đề xuất giúp giải quyết được vấn đề bùng nỗ dữ liệu hiệnnay Y tưởng vừa khai phá motif vừa khai phá bat thường là một ý tưởng mới giúp tiếtkiệm chi phí của các giải thuật khai phá motif và khai phá bất thường riêng lẻ Từ kếtquả thực nghiệm cho thấy giải thuật EMG tìm thay motif chính xác hơn giải thuật chiếungẫu nhiên với thời gian thực thi nhanh hơn gấp nhiều lần Trong khai phá bất thường
giải thuật FMG nhận diện chính xác đói tượng bất thường với thời gian nhanh hơn gấp
nhiều lần so với giải thuật HOTSAX
1.6 Cau trúc cua luận văn
Phân tiép theo của luận văn có bô cục như sau:Y Chương II: nhắc lại một số khái niệm nên tảng về khai phá motif và bất thường
trên dữ liệu chuỗi thời gian, tong thuật lại những phương pháp biểu diễn dữ liệu,phương pháp rời rạc hóa dữ liệu, các phương pháp tính độ đo thông dụng trêndữ liệu chuỗi thời gian Phan cuối chương hai sẽ tong thuật một số công trìnhkhai phá motif và khai phá bat thường tiêu biểu có liên quan đến hướng tiếp cậncủa luận văn.
Y Chương III: chi tiết hóa tuần tự các bước thực hiện theo hướng tiếp cận của củaluận văn, phương pháp thu giảm số chiều PAA, phương pháp rời rac hóa SAX,hàm tính khoảng cách Euclid trên dữ liệu đã rời rạc hóa, giới thiệu giải thuậtFMG vừa khai phá motif vừa khai phá bất thường mà chúng tôi đã dé cập.Y Chương IV: hiện thực và thử nghiệm giải thuật FMG và một SỐ giải thuật khác
dé so sánh Kết quả khai phá motif được so sánh với gai thuật chiếu ngẫu nhiên(RP) và kết quả khai phá bất thường được so sánh với giải thuật nhận dạng bấtthường HOTSAX.
Y Chương V: những kết luận sau khi thực hiện luận văn, hướng phát triển của luận
văn.
Trang 17CHUONG 2: TONG THUAT NHUNG CONG TRINH
LIEN QUANChương này nhắc lại một số khái niệm cơ ban được sử dung trong khai phá motif vàkhai phá bất thường, sau đó giới thiệu một số công trình tiêu biểu về khai phá motif vàbât thường có liên quan đền luận văn này.
2.1 Mật số khái niệm cơ bảnDữ liệu chuỗi thời gian là một tổ hợp tuần tự của những mẫu dữ liệu đo đạc được mộtcách liên tục theo thời gian Một mẫu dữ liệu chuỗi thời gian có thé là một giá trị đơn(là một con số thực), thì ta gọi là chuỗi thời gian một kênh (single-chanel time series)hoặc có thể là một véc tơ các giá tri (véc tơ những con số thực), thì được gọi là chuỗithời gian nhiều kênh (multi-chanel time series) [4] Dữ liệu chuỗi thời gian một kênh tacó thé thay trong dữ liệu chứng khoán, dữ liệu điện tim đô, dữ liệu năng lượng v.v Dữliệu nhiều kênh ta thé thấy trong dữ liệu motion capture ghi nhận nhiều góc độ khácnhau của một hành động Trong luận văn này chúng tôi chỉ làm việc trên dữ liệu mộtkênh Và giả sử răng tất cả những mẫu giá trị được đo đạc liên tục tại các thời khoảngbang nhau
Định nghĩa 1 Dữ liệu chuối thời gian (Time series): Một dit liệu chuỗi thời gian 7 =f¡ f„ là một tập hợp có thứ tự của n mẫu giá trị thực được đo đạc tại những thờikhoảng liên tục bằng nhau [7]
Định nghĩa 2 Chudi con (Subsequense): Cho một dit liệu chuỗi thời gian 7 có chiềudài là n, một chuỗi con C trong 7 có chiều dài m là một mẫu của những giá trị liên tụctrích từ 7, C = í,„ ,f,„„¡ VỚI 1< p<nm—m + 1 [6].
Dinh nghĩa 3 Co so đữ liệu chuối thời gian (Time series database): là một tập khôngcó thứ tự của nhiều dữ liệu chuỗi thời gian Ký hiệu D = (T; , T;} [7]
Vì tất cả những chuỗi con đều có khả năng là ứng viên motif hoặc ứng viên bấtthường nên bat kỳ giải thuật nào cũng phải rút trích tất cả những chuỗi con có thé cótrong dữ liệu chuỗi thời gian Điều này có thể đạt được bằng cách sử dụng một cửa sốtrượt (Sliding Window).
Trang 18Dinh nghĩa 4 Ca SỐ truot (Sliding Window): Cho một dữ liệu chuỗi thời gian 7 cóchiều dai n, một cửa số có kích thước w do người dùng định nghĩa (thường w << n) sẽtrượt qua từng điểm giá tri trên chuỗi 7, kết quả là ta được một danh sách n-w+/ cácchuỗi con có kích thước w được rút trích từ chuỗi 7 [5].
Một chuỗi con được sinh ra từ cửa sô trượt cân được kiêm tra xem có tương tự vớimột chuôi con khác trong tat cả những chuôi con còn lại hay không dựa vào một hamtính khoảng cách Y tưởng này được gọi là khớp (match)
Định nghĩa 5 Khóp (Match): Cho một số thực R (thường do người dùng định nghĩa)và một dữ liệu chuỗi thời gian 7 chứa một chuỗi con C bắt đầu tại vị trí p và một chuỗicon M bắt dau tại vị trí g, néu hàm tính khoảng cách từ C đến M ký hiệu D/C,M) < R
thì ta nói là chuỗi con M khớp được với chuỗi con C [5] (Hình 2.1)
Định nghĩa 6 Khớp tam thường (Trivial match): Cho một dit liệu chuỗi thời gian 7 vamột chuỗi con C bắt đầu tại vị tri p và một chuỗi con M khớp được với C bắt đầu tại vịtrí g Chúng ta nói chuỗi con M là khớp tầm thường với chuỗi con C nếu p = g hoặckhông tôn tại một chuỗi MW’ nào bat đầu tại vị trí g’ sao cho D(C, M’?) > Rvag <q’ <phoặc ø < gq’ < q [5] (Hình 2.2).
Trang 19Khớp tam
thường
Hình 2.2: Chuỗi con C khớp tầm thường với chuỗi con ngay chính vị trí của nó
dịch sang trái hay sang phải một vài điểm giá trị [5]Định nghĩa 7 K-Motifs: Cho một dữ liệu chuỗi thời gian 7 có chiều dài n, và một sốthực R, motif quan trọng nhất trong 7 (còn được gọi là 1-Motif) là chuỗi con C; nào đótrong 7 có số lượng chuỗi con khớp không tầm thường với nó cao nhất Motif quantrọng bậc K (còn gọi là K-Motif) là chuỗi con C¿ nào đó trong 7 có số lượng chuỗi conkhớp không tầm thường với nó cao thứ K và phải thỏa mãn điều kiện D(C;, C;) > 2R,với mọi / < i < K [6] (Hình 2.3B).
Định nghĩa này muôn nhân mạnh răng các chuỗi con trong tập các motif phải tachbiệt nhau Điêu nay rat quan trọng vì nêu như hai motif mà có những chuôi con chungthì nó nên được xem là một motif (Hình 2.3A).
Trang 20Định nghĩa 8 Bat thiedng(Anomaly): Cho một đữ liệu chuỗi thời gian 7 có chiều dài n,một chuỗi con C trong 7 là bất thường nếu khoảng cách từ C đến chuỗi con láng giénggan nhất của nó là lớn nhất Nói cách khác chuỗi con C là chuỗi con khác biệt nhấttrong 7 [21].
2.2 Các phương pháp tính độ đo tương tựTrong các vấn đề liên quan đến dữ liệu chuỗi thời gian, việc tính mức độ tương tự giữhai chuỗi con đóng vai trò rất quan trọng Khi so sánh hai chuỗi con có tương tự vớinhau hay không ta phải dùng một phương pháp dé tính mức độ tương tự giữ chúng gọilà hàm khoảng cách Nếu như khoảng cách giữa hai chuỗi con bằng không, ta nói haichuỗi con là giống hệt nhau Nếu như khoảng cách giữa hai chuỗi con càng lớn (càng
xa) thì mức độ khác biệt của hai chuỗi con càng cao Phương pháp tính độ đo trong
luận văn này chỉ đề cập những phương pháp tính độ đo trên hai chuỗi con có chiều dàibang nhau
Cho các chuỗi con x, y và z, D gọi là hàm khoảng cách giữa hai chuỗi con thì D
phải thỏa các tính chất sau:I Tính không âm
Hau hết các công trình nghiên cứu trên dữ liệu chuỗi thời gian dựa trên độ doMinkowski dé tính khoảng cach (hay mức độ tương tự) giữa hai chuỗi con (Hình 2.4).Hàm tính khoảng cach Minkowski được định nghĩa theo công thức sau:
D(X, Y) = “VERO — y¡)P (2.1)
Khi p = 7 ta có khoảng cách Manhattan.Khi p = 2 ta có khoảng cach Euclid.Khi p = œ ta có khoảng cách Max.
Trang 21Hình 2.4: Độ do Minkowski giữa hai chuỗi con [9]
Uu điểm:
e Dễ tính toán
e Sử dụng được cho nhiều bài toán khác như phân loại, gom cum Đặc biệt larất thích hợp khi ta sử dụng các phép biến đổi và rời rạc hóa dữ liệu DFT,DWT, PAA, APCA, SAX,
Nhược điểm:e Nhạy cảm với dữ liệu nhiễu
e Không hiệu quả khi dữ liệu có đường cơ bản khác nhau, ví dụ như hai chuỗi giá
chứng khoán A và B thay đổi rất giống nhau nhưng A giao động ở mức 100 cònB giao động ở mức 40 như vậy độ tương tự của A và B rất khác nhau mặc dùhình dạng rat giỗng nhau
e Khong thích hợp với dữ liệu có biên độ dao động khác nhau, giá chứng khoáncủa A và B thay đổi rất giống nhau nhưng biên độ giao động của A là 20-80 còncủa B là 30-50 thì độ tương tự của A và B rất khác nhau mặc dù hình dạng rấtgiống nhau
2.2.2 Độ do Dynamic Time Warping (DTW)Với phương pháp Minkowski so sánh từng cặp điểm là không thé trong trường hop haichuỗi này sẽ rất giống nhau nếu như ta kéo giãn hoặc thu hẹp một khoảng nào đó theotrục thời gian thì kết quả của phương pháp Minkowski sẽ là rất lớn (hai chuỗi rất khácnhau) Dé khắc phục nhược điểm này của phương pháp Minkowski bang cách từ một
Trang 22điểm trong chuỗi này có thé ánh xa tới nhiều điểm trong chuỗi kia va những ánh xanày là không thăng hàng (Hình 2.5) Độ đo này gọi là độ đo xoắn thời gian động(Dynamic Time Warping) do Bernt Clifford đề xuất năm 1994.
Hinh 2.5: D6 do Dynamic Time Warping giira hai chudi con [9]
Uu diém:e Cho kết quả chính xác hơn so với độ đo Minkovski.e_ Cho phép nhận dạng những mẫu có hình dạng giống nhau nhưng có chiêu dài
khác nhau.Nhược điểm:e Độ phức tap tính toán cao, chạy lâu gấp nhiều lần so với phương pháp
Minkovski Với một chuỗi có chiều dài n thi độ phức tạp tính toán là O(n’).
2.3 Các phương pháp biểu diễn dữ liệu chuỗi thời gianKích thước của dữ liệu chuỗi thời thường rất lớn cho nên chi phí truy xuất, tính toántrên dữ liệu thô là rất cao Do đó, để giảm kích thước dữ liệu người ta dùng phươngpháp thu giảm số chiều (dimensionality reduction) giúp nâng cao hiệu suất truy xuất vàtính toán Các phương pháp rời rac hóa (discretization) dữ liệu dưới dạng chuỗi bit haychuỗi ký tự nhằm khai thác các kỹ thuật nén dữ liệu cũng như kỹ thuật khai phá dữ liệuvan bản (text mining) Ngoài ra chúng ta cũng can chuẩn hóa dữ liệu (normalization)trước khi bat đầu biểu diễn nhăm tránh những van dé dữ liệu có đường cơ bản khácnhau hoặc biên độ dao động khác nhau.
Trang 232.3.1 Các phương pháp thu giảm số chiềuThu giảm số chiêu là ta biểu diễn dữ liệu chuỗi thời gian n chiều X = (x;x:, ,x„) thànhnhững đường co bản k chiều Y = (y;/y›, ,¿) Y gọi là đường cơ bản và k là hệ số củađường cơ bản Từ đường cơ bản Y ta hoàn toàn có thé phục hồi lại dữ liệu X ban dau.Như vậy thay vì truy xuất, tính toán trên dữ liệu gốc ø chiêu thì ta chỉ cần truy xuất,tính toán trên dữ liệu & chiều (k << n) Tuy nhiên nếu k quá nhỏ so với n thì dữ liệuphục hôi sẽ không còn được chính xác như dt liệu ban dau và ngược lại.
a Phương pháp biến đối Fourier (Discrete Fourier Transform - DFT)Phuong pháp DFT do R.Agrawal va cộng sự dé nghị xuất năm 1993 [10] Trongphương pháp này, đường dữ liệu ban đầu được biểu diễn bởi các đường cơ ban là
đường sin và đường cosin (Hình 2.6).
X= YEG x, (2.2)
ie te TƯỜNG TƯỜNG
0 50 100Hình 2.6: Phép biến đối DFT [19]Ưu điểm:
e Có khả năng nén dữ liệu và chịu nhiễu tốt.e Cho phép so sánh gián tiếp hai chuỗi X,Y thông qua khoảng cách của hai
chuỗi X;, Y; đã được biến đổi, vì D(X, Y) > œD(ŒX;, Y;), ơ là một hang só.Nhược điểm:
e_ Đối với phép biến đổi Fourier nhanh (Fast Fourier Transform - FFT) có độphức tạp khá cao O(nlogn).
e Khó giải quyết khi các đường biểu diễn có chiều dài khác nhau
Trang 24b Phuong phap Wavelet (Discrete Wavelet Transform - DWT)Phương pháp DWT do K.Chan và cộng sự dé xuất năm 1999 [11] Phương phápDWT biểu diễn dữ liệu chuỗi thời gian thành các đường Haar (Hình 2.7).
e D6 phức tạp của DWT là O(n).e Có khả năng khử nhiễu cao, thích hợp với loại dữ liệu tĩnh ít thay đổi vì
đường Harr cũng không thay đổi liên tục.Nhược điểm:
e_ Chiều dài của chuỗi dữ liệu gốc và chuỗi dữ liệu sau khi biến đổi phải là mộtcon số lũy thừa của 2
c Phương pháp gộp từng đoạn xấp xi (Piecewise Aggregate Approximation PAA)
-Phương pháp gộp từng đoạn xấp xi (PAA) do E Keogh và cộng sự dé xuất năm2000 [12] Phương pháp PAA tuần tự xap xi k điểm giá trị liền kề nhau thành cùngmột gia tri trung bình cộng của k điểm đó Quá trình được thực hiện từ trái sangphải và kết quả cuối cùng ta được một đường dạng bậc thang (Hình 2.8)
Trang 25Hinh 2.8: Phép bién doi PAA [19]Ưu điểm:
e Thời gian tính toán rất nhanh.e Hỗ trợ nhiều phương pháp tính khoảng cách.e Hồ trợ truy van với chiêu dai khác nhau.
Nhược điểm:e Xây dựng lại chuỗi ban dau là rất khó, thường sinh lỗi.e Không quan tâm đến những điểm đặc biệt (điểm cực tri) trong từng đoạn xấp
xỉ vì tính giá tri trung bình.d Phương pháp xấp xỉ từng đoạn thích nghỉ (Adaptive Piecewise Constant
Approximation - APCA)Phương pháp xap xi từng đoạn thích nghi do E Keogh và các cộng sự dé xuất năm2001 [13] Tương tự như PAA, APCA xấp xi hóa dữ liệu ban đầu thành nhữngđoạn thăng nằm ngang Tuy nhiên trong PAA thì các đoạn thăng xấp xi là bằngnhau (bằng k) còn trong APCA thì các đoạn thắng này có kích thước không bangnhau (Hình 2.9) Tại những thời điểm mà giá trị dữ liệu dao động nhiều thì cácđoạn thăng xấp xi có kích thước ngắn (phân đoạn dữ liệu ngắn — short segment),Thời điểm giá trị dữ liệu ít dao động thì các đoạn thăng xấp xi có kích thước dàihơn (phan đoạn dữ liệu dài — long segment).
Trang 26Nhược điểm:e Độ phức tạp của giải thuật biến đồi là O(nlogn).e Phương pháp xấp xỉ tuyến tính từng đoạn (Piecewise Linear
Approximation - PLA)Phuong phap xấp xi tuyén tinh tung doan (PLA) do E Keogh va cong su dé xuấtnăm 1999 [14, 15] Trong phương pháp nay, dữ liệu ban đầu được biểu diễn lạibang các đoạn thắng tuyến tính (Hình 2.10) Mỗi đoạn thăng tuyến tính nỗi cặpđiểm của hai đầu đoạn thăng xấp xỉ tốt nhất những điểm có trong phân đoạn dữ liệuchuỗi thời gian đó Các đoạn thăng này có thé rời nhau hoặc liên tục
Trang 270 50 100Hình 2.10: Phép biến đổi PLA [19]Uu điểm:
e Trực quan và tỷ lệ lỗi thấp trong quá trình xây dựng lại chuỗi dữ liệu gốc.e Giải thuật tìm các chuỗi đoạn thăng được thực hiện trong thời gian tuyến
tính.Nhược điểm:e Độ phức tạp tính khoảng cách trong cấu trúc chỉ mục cao.2.3.2 Phương pháp rời rac hóa dữ liệu
Từ dữ liệu chuỗi thời gian nguyên thủy, sau khi thực hiện phép biến đối dé thu giảm sốchiều tiếp theo đó ta thực hiện rời rac hóa dữ liệu đã được biến đổi trước khi sử dụngđể truy xuất dữ liệu Rời rạc hóa là một quá trình ánh xạ từng đoạn trong dữ liệu đã
biến đôi vào một bit hoặc một ký tự Kết quả của quá trình rời rạc hóa là ta chuyển một
dữ liệu chuỗi thời gian nguyên thủy về một chuỗi bi hoặc chuỗi ký tự Phương pháprời rac hóa được dùng nhiều nhất là phương pháp thu gdp xấp xi ký tự (SymbolicAggrigate approXimation - SAX) chuyển dữ liệu chuỗi thời gian về chuỗi các ký tự.Phương pháp nay do J Lin dé xuất năm 2003 [19], di liệu ban đầu được rời rac hóabăng phương pháp PAA, mỗi đoạn xấp xi trong chuỗi PAA sẽ được ánh xạ với một kýtự tương ứng dựa trên phan bố chuẩn (Gauss) (Hình 2.11) Bay giờ bai toán so trùngchuôi trên dữ liệu chuỗi thời gian được chuyên về bài toán so trùng ky tự.
Trang 28e Các điểm ngất được xác định dựa trên phân bố chuẩn (Gauss), không thé thích
hợp với mọi loại dữ liệu.2.4 Giải thuật khai phá motif chính xácGiải thuật khai phá motif một cách chân phương (brute-force) cho kết qua của giảithuật là 1-Motif bang cách kiểm tra tuần tự một chuỗi con với tất cả các chuỗi con kháctrong tập dữ liệu (Hình 2.12), do đó độ phức tạp của giải thuật tối đa là O(m’) với m làsố chuỗi con có trong tập dữ liệu Khi dữ liệu có kích thước lớn, số chuỗi con tăng thìđộ phức tạp của giải thuật brute-force sẽ tăng rất nhanh
Trang 29Giải thuật Find_1_Motif_Brute_Force (T, n, R)
best_motif_count_so_far = 0;best_motif_location_so_far = null;for i = | to length (T)—n+1
count = 0;1.
2.3.4.5 pointers = null;6 for j = | to length (T)-n+17 if non_trivial_match( Cj j+n-1], Cy: j+n-1], R )8 count = count + 1;
9 pointers = append(pointers , j);10 end;
II end;12 if count> best_motif_count_so_far13 best_motif_count_so_far = count;
14 best_motif_location_so_far =1;15 motif_matches = pointers;
16 end;17 end;
Hình 2.12: Giải thuật Brute-Force tìm 1-Motif trên dữ liệu chuỗi thời gian [6]
Nhân xét:Y Với dữ liệu có kích thước lớn, số chuỗi con tăng thì giải thuật Brute_Force là
không khả thi.
Y Tuy nhiên Brute_Force là giải thuật nên cho nhiêu giải thuật cải tiên với một số
heuristic giúp cho độ phức tạp giảm đi đáng kể tiêu biểu nhất là giải thuật MKdo Mueen, Keogh cùng các cộng sự dé xuất năm 2009 [7] sử dụng tính chất bấtđăng thức tam giác, tính không âm của hàm khoảng cách nhăm kết thúc sớmquá trình tính toán không cân thiết
Y Motif tim thay là motif chính xác.2.5 Giai thuật khai phá motif xấp xiTừ những han chế của các giải thuật khai phá motif chính xác, nhiễu công trình nghiêncứu khai phá motif xấp xi đã được biết đến vì tính hiệu quả của nó Các giải thuật khaiphá motif xấp xi thường cải thiện tốc độ một cách đáng ké và có khả năng làm việc trêntập dữ liệu lớn nhưng vẫn cho kết quả khá tốt Tiêu biểu và rất nỗi tiếng là giải thuậtchiếu ngẫu nhiên (Random Projection) do Buhler và Tompa dua ra năm 2001 [16]
Trang 30được biết như là một giải thuật rất hiệu quả trong khai phá motif xấp xi Y tưởng củagiải thuật chiều ngẫu nhiên là dữ liệu sau khi đã được xử lý rời rạc hóa, tất cả các chuỗicon (words) sẽ được lay ra bởi cửa số trượt và lưu vào ma trận Š (Hình 2.13).
trận IS|x |SI, chỉ sô hàng va chỉ sô cột tương ứng với 6 này chính là chỉ sô của motif
Trang 31Y Giải thuật cần mĩ (với m là số chuỗi con) các số nguyên cho ma trận xung độtIS|x |S], với dữ liệu kích thước lớn m tăng nhanh thì không gian lưu trữ là rấtlớn nên không khả thi.
Y Trong mỗi lần lặp, tại mỗi lần lặp chi phí dé tổ chức cau trúc dữ liệu bảng bămvà cập nhật ma trận xung đột là (f * m) + ((m/Д / 2)) với f là số khóa trungbình trong bang băm Do đó nếu i lớn chi phí này sé tăng đáng kê
Y Hơn nữa, chi phí duyệt qua ma trận xung đột dé tìm motif ứng viên là (mˆ/2).2.6 Giải thuật khai phá bat thường
Cũng giống như khai phá motif, giải thuật khai phá bất thường chân phương force) cần so sánh một chuỗi con với tat cả những chuỗi con khác trong tập dữ liệu détìm láng giéng gần nhất của nó (Hình 2.16), do đó độ phức tạp tính toán cũng là O(m')với m là sô chuôi con trong tập dt liệu.
(brute-Tuy nhiên, có thé nhận thay ở vòng lặp ngoài nếu như tại một lần lặp, chuỗi con batthường thực sự đã được xét thì giá tri best_so_far_dist sẽ được gan với giá tri cực đại,những lần lặp sau đó sẽ không mang lại kết quả mới (1) Ở vòng lặp trong, nếu như tạimột lần lặp mà ta có khoảng cách dist nhỏ hơn best_so_far_dist thì ta có thé thoát khỏivòng lặp này ngay vì chắc chắn là điều kiện ở dòng 14 sẽ luôn luôn sai (2)
Trang 32Giải thuật Find_Anomaly_Brute_Force (T, n)1 best_ so far dist = 0;
2 besf_ so far loc = NaN;
3 fori= I to length(T)—n+ //Bat đầu vòng lặp ngoài
10 end;
II end; /IKết thúc vòng lặp trong
12 if nearest_neighbor_dist > best_so_far_dist13 best_so_far_dist = nearest_neighbor_dist;
14 best_ so_far_loc =1;
I5 end;
16 end; //Két thúc vòng lặp ngoài
17 return [best_so_far_dist, best_ so_far_loc]
Hình 2.16: Giải thuật Brute-Force nhận dang chuỗi con bat thường [21]Từ đặc điểm (1) và (2) của giải thuật Brute-Force, E Keogh cùng các cộng sự déxuất giải thuật HOTSAX (Hình 2.17) cải tiễn từ giải thuật Brute-Force bằng cách ápdụng hai heuristic cho vòng lặp ngoài và vòng lặp trong với mong muốn là:
Y Ở vòng lặp ngoài những chuỗi con có khả năng là bat thường thực sự cao sẽđược ưu tiên xem xét trước.
Y Ở vòng lặp trong những chuỗi con là láng giéng gần nhất của của chuỗi đangxét ở vòng lặp ngoài sẽ được ưu tiên xem xét trước.
Điều này giúp cho giá trị best_so_far_dist đạt giá trị lớn ngay từ những lần lặp dau,giúp tăng khả năng điều kiện dòng 9 (Hình 2.17) luôn luôn đúng cho phép kết thúcsớm vòng lặp trong.
Trang 33Giải thuật HOTSAX (T, n, Outer_heuristic, Inner_heuristic)1 best_ so far dist = 0;
2 besf_ so far loc = NaN;
3 foreachiin T ordered by Outer_heuristic //Bat dau vong lap ngoai
19 end; //Két thúc vòng lặp ngoài
20 return [best so far dist, best_ so far loc]
Hình 2.17: Giải thuật HOTSAX nhận dạng chuỗi con bất thường [21]Dé hiện thực hai heuristic này giải thuật HOTSAX can sự hỗ trợ của hai cau trúc
dữ liệu (Hình 2.18) Dữ liệu sau khi đã rời rạc hóa, các chuỗi con sẽ được rút trích bởi
cửa số trượt sẽ được lưu trong một dãy (array) Cột ngoài cùng bên trái là chỉ số vị trícủa chuỗi con Cột ngoài cùng bên phải là số lần xuất hiện của chuỗi con đó trong tậpdữ liệu đã rời rac hóa Một cau trúc cây Trie có chiều cao bang với kích thước chuỗicon, mỗi cạnh tương ứng với một ký tự trong các chuỗi con Mỗi đường đi từ nút gốcđến nút lá tương ứng với một chuỗi con Mỗi nút lá của 7rie chứa một danh sách cácchuỗi con tương ứng với đường đi từ nút sốc đến nút lá đó ở dạng các chỉ mục (vj fríbắt dau cua các chuỗi con) Sỗ lượng các chỉ mục ở nút lá sẽ được cập nhật ngược lạicột ngoài cùng bên phải cua câu trúc day các chuôi con.
Trang 34Chèn vào câu trúc mang Loon
Câu trúc cây Trie
tự ngẫu nhiên Tương ứng với mỗi chuỗi con ở vòng lặp ngoài giải thuật sẽ tìm trên
Trie dé lay danh sách các chuỗi con giống với nó, các chuỗi con này sẽ được ưu tiênxét trước ở vòng lặp trong, các chuỗi còn lại có thê chọn theo thứ tự ngâu nhiên.
Nhân xét:Y Không có khái niệm xấp xi cho chuỗi con bat thường nên các giải thuật khai phá
bất thường phải cho kết quả chính xác.Y Giải thuật HOTSAX cải tiễn giải thuật Brute-Force bởi heuristic xếp thứ tự các
chuỗi con từ đó giải thuật có thé kết thúc sớm ở vòng lặp trong giúp tăng tốcgiải thuật đáng kế [21]
Trang 352.7 Giải thuật kết hợp khai phá motif và khai phá bat thườngNăm 2010, Yi Lin và các cộng sự đề xuất một phương pháp vừa khai phá motif vừakhai phá bất thường băng cách kết các chuỗi con tương tự nhau [2] Từ dữ liệu nguyênthủy, một giải thuật làm trơn dữ liệu bởi một hàm khuếch tán dị hướng [17] sẽ được ápdụng để loại bỏ những dao động nhỏ trên chuỗi di liệu Sau đó chuỗi dữ liệu đã đượclàm trơn sẽ được phân đoạn không đồng đều (Hình 2.19) bởi giải thuật do cạnh Canny(Canny edge defefor)[18] Những đoạn có được lúc bay giờ sẽ được thu giảm số chiềubăng cách sử dụng ham đa thức để biểu diễn Kết quả sau cùng đạt được là các đặctrưng của những đoạn Các đặc trưng này sẽ được lưu vào trong một cây R, những capđặc trưng tương tự nhau sẽ được tìm thay bang phép kết trên cây R [20] hình thành cáccụm hai (Hình 2.20) Từ các cụm hai đã có, thực hiện việc mở rộng cụm để có đượccác cụm lớn hơn, sau đó đưa bài toán về bài toán đồ thị và sử dụng các giải thuật lýthuyết đồ thị dé tìm những cụm có kích thước lớn thứ K (K-clique) sẽ tương ứng vớiK-Motif, những đồ thị con chỉ có một đỉnh duy nhất sẽ là những ứng viên bất thường.
All *+‹'
Wwvad Dịnftxr
Hình 2.19: Hai tập dữ liệu chuỗi thời gian sau khi chia đoạn không đồng đều [2]
Trang 36* Tuy nhiên phải qua nhiều giai đoạn phức tạp để có được những đặc trưng Quátrình mở rộng cụm và tìm cụm tối đa K-clique lại là bài toán thuộc lớp NP-Complete.
2.8 Kết luậnCác phép biến đổi dữ liệu, rời rạc hóa dữ liệu và phương pháp tính khoảng cách lànhững kỹ thuật nên tảng trong khai phá dữ liệu chuỗi thời gian Có rất nhiều công trìnhnghiên cứu các giải thuật khai phá trên dữ liệu chuỗi thời gian theo nhiễu hướng tiếpcận khác nhau Tuy nhiên luôn luôn có sự đánh đối giữa tính đúng, tính day du va tinhhữu hiệu của một giải thuật Với xu hướng ngày càng gia tăng về kích thước của dữliệu ngày nay thì việc tìm ra một giải thuật đáp ứng được tính hữu hiệu với tập dữ liệulớn mà vẫn đảm bảo tính đúng và tinh day đủ khá tốt là rất quan trọng, van dé này luônnhận được nhiêu sự quan tâm.
Trang 37CHUONG 3: PHUONG PHAP GIAI QUYET VAN DE
Với ý tưởng ma chúng tôi đã giới thiệu ở chương một, trong chương này chúng tôi sẽchi tiết hóa từng bước của giải thuật FMG (Feature Match Grouping) vừa khai phámotif vừa khai phá bat thường dựa trên hệ quả của quá trình khai phá motif Chi tiết cácbước thực hiện của giải thuật như sau.
3.1 Thu giảm số chiều với phương pháp PAANhư đã đề cập trong chương hai, một chuỗi con C = (€¿, ,c„) COn chiều có thể đượcthu giảm về chuỗi con C = (ẽi Gy) có w chiều , dữ liệu chuỗi ban đầu được chiathành w khung có kích thước băng nhau (Hình 3.1b) Giá trị c; được tính băng trung
bình cộng của các giá trị trong chuỗi C rơi vào khung thứ 7 theo công thức (Hình
3.1a):
Ƒ ——T''t =
Trang 38Phuong pháp PAA rất trực quan và don giản trong tinh toán nhưng nó đã đượcchứng minh là rất hữu hiệu, thích hợp với các phương pháp tính khoảng cách khácnhau như Minkowski, DTW, v.v.
3.2 Roi rac hóa dữ liệu với phương pháp SAX
Dữ liệu chuỗi thời gian sau khi đã thu giảm số chiều băng phương pháp PAA, dữ liệusẽ tiếp tục được xử lý rời rạc hóa về chuỗi những ký tự rời rạc bằng phương phápSAX Với dữ liệu chuỗi thời gian đã chuẩn hóa thường tuân theo một xác suất phân bốchuẩn (Gaussian distribution) (Hình 3.2)
0.9990.9970.99
0.98
0.950.90
-10 0 10
Hình 3.2: Mẫu dữ liệu được vẽ có tính chất tuyến tính cho thấy dữ liệu tuân theo
phân bố Gauss [19]
Khi dữ liệu đã tuân theo phân bố Gauss ta cần xác định những điểm ngắt (break
point), cái mà sẽ sinh ra a những vùng có diện tích băng nhau bên dưới đường congGauss.
Định nghĩa 9 Những điểm ngắt (Breakpoints): những điểm ngắt là một danh sách cóthứ tự B = ÿ¡ , Bạ¡ bên dưới mật độ phan bố xác suất N(0,1) của đường cong Gauss,giá trị B, đến B41 = 1/a, Bo = -œ và Bạ = œ [19] (Hình 3.3)
Trang 393 4 3 6 7 8 9 10B,
B, | -043 | -0.67 | -084 | -0.97 | -107 | -1.15 | -1.22 | -1.28Bo 0.43 0 | -0.25 | -0.43 | -0.57 | -067 | -0.76 | -0.84Ba 0.67 | 0.25 0 | -0.18 | -0.32 | -0.43 | -0.52Ba 084 | 043 | 0.18 0 | -0.14 | -0.25B; 097 | 0.57 | 0.32 | 0.14 0Bg 1.07 | 0.67 | 0.43 | 0.25By 1.15 | 0.76 | 0.52Bg 1.22 | 0.84
Bo 1.28Hình 3.3: Bang thống kê dùng để tra những điểm ngắt theo phan bố Gauss với số
vùng phân bồ từ 3 đến 10 [19]
Tất cả các hệ số PAA hiện có sẽ được ánh xạ vào danh sách những điểm ngắt theo
cơ chế như sau: nếu như hệ số PAA đang xét mà thấp hơn giá trị điểm ngắt nhỏ nhất
thì nó sẽ được ánh xạ với ký tự “a”, nếu nó lớn hơn gia tri dém ngắt nhỏ nhất nhưng béhơn giá tri điểm ngắt nhỏ thứ nhì thì sẽ được ánh xạ với ký tự “b”, và tương tự như
Trang 40Định nghĩa 10 7ờ (Word): một chuỗi con C có chiều dài n có thé được biểu diễn bangmột từ có w ký tự Ê = ê¡ ,Ê„ theo cách như sau: gọi alpha; là ký tự thứ i trongbảng ký tự alphabet (alpha, = a, alpha» = b, ) Dé ánh xạ từ đường xấp xi PAA C vàomột ti tương ứng C ta sử dụng công thức sau [19]:
C, = alpha, © Bj.1 < G < Bị (3.2)3.3 Độ do tương tự MINDIST
Sau khi dữ liệu chuỗi thời gian nguyên thủy được biểu diễn dưới dang chuỗi những ky
tự rời rạc, bấy giờ chúng ta cần định nghĩa hàm tính khoảng cách trên nó Hàm tínhkhoảng cách Euclid được dùng pho biến nhất dé khai phá motif có chiều dai bằng nhau
Khoảng cách Euclid trên hai chuỗi dữ liệu nguyên thủy Q và C (Hình 3.5A) được
tính theo công thức sau:
D(Q.C)= fda — €)“ (3.3)
Khi hai chuỗi Q và C được thu giảm số chiều với phương pháp PAA thì hàm
khoảng cách trên hai chuỗi mới Q và C (Hình 3.5B) được định nghĩa lại theo công
thức sau:
D(Q, C) = TP N>r-¡(8¡ — 6)? (3.4)
Khoảng cách D(Q, C) đã được chứng minh là cận dưới của khoảng cách thực sự
của D(Q, C) [13] Khi dữ liệu được rời rac hóa về chuỗi các ký tự thì khoảng cách giữhai từ 0 và Ê tương ứng (Hình 3.5C) sẽ được tính theo công thức sau:
MINDIST(Q, C) = h V37-¡(đist(ậi ,ê¡))? (3.5)
Ham dist() được tinh băng phương pháp tra bảng (Hình 3.6a), giá trị trong mỗi 6trong bảng được tinh theo công thức cei„„ (Hình 3.6b).