- Thực nghiệm trên các tập dữ liệu thực để so sánh các giải thuật k-Means, I-k-Means, I-k-Means có khởi tạo trung tâm cum ban đâu dựa trên kd-tree, I-k-Means có khởi tạo trung tâm cụm ba
Trang 1VƯƠNG BÁ THỊNH
CẢI TIEN GIẢI THUẬT K-MEANS CHO BÀI TOÁN
GOM CUM DU LIEU CHUOI THỜI GIAN
Chuyén nganh: Khoa hoc May tinh
LUAN VAN THAC SI
Trang 2Cán bộ hướng dẫn khoa học : PGS TS Dương Tuấn Anh - + szscexezxe:
Cán bộ cham nhận xét 1 : PGS TS Đỗ Phúc c2 se SE SE SE SE SE eEteEsErereerees
Cán bộ chấm nhận xét 2 : TS Bùi Hoài Thăng - + + xxx xe cxzxsxcxd
Luận văn thạc sĩ được bảo vệ tại:Trường Đại học Bách Khoa, DHQG Tp.HCM ngày 7 tháng 01 năm 2012
Thanh phan Hội đồng đánh giá luận văn thạc sĩ gồm:
1 TS Võ Thị Ngọc Chau (CTT) -<<<<<<<<+
2 PGS.TS Đỗ Phúc (PBL) 5 xxx Sex keeerersrsed3 TS Bùi Hoài Thắng (PB2) - 6 ke evekeeererd4 PGS.TS Dương Tuan Anh (UV ) -s-skx+xeeEexsesrsreresee
5 TS Phạm Văn Chung (TR) - - 55-5 <<<< << sss2
Chi tịch hội đồng đánh giá LV Khoa quản lý chuyên ngành
(Họ tên và chữ ký) (Họ tên và chữ ký)
TS Võ Thị Ngọc Châu
Trang 3Tp HCM, ngay thang nam 2011.
-0Q0 -NHIEM VU LUAN VAN THAC SI
Ho và tên học viên : Vuong Ba Thịnh Giới tính : Nam M/ Nữ LÏ
-Ngày, tháng, năm sinh : 26/02/1986 - Nơi sinh : Sóc Chuyên ngành : Khoa học Máy tinh - MSHV : 09070465 -Khoa : 2009 - 222222222 -n nn nnn nnn nn nn nnn nnn nnn nnn nn nnn nnnne nnn =e
Trang -1- TEN DE TAT:Cải tiễn giải thuật k-Means cho bai toán gom cum đữ liệu chuỗi thời gian
2- NHIEM VỤ LUẬN VAN:- Nghiên cứu đề xuất phương pháp thu giảm số chiều PLA đa mức phân giải.- Tích hợp phương pháp thu giảm số chiều PLA da mức phân giải vào giải thuật I-k-Means.- Ap dụng phương pháp khởi tạo trung tâm cụm ban dau dựa trên kd-tree cho giải thuật I -k-
Mean.
- Ap dụng phương pháp khởi tạo trung tâm cụm ban dau dựa trên phương sai có cải tiến cho giải
thuật I-k-Means.
- Thực nghiệm trên các tập dữ liệu thực để so sánh các giải thuật k-Means, I-k-Means, I-k-Means
có khởi tạo trung tâm cum ban đâu dựa trên kd-tree, I-k-Means có khởi tạo trung tâm cụm banđâu dựa trên phương sai có cải tiên.
3- NGÀY GIAO NHIEM VU : -~ ~ ~ ~-~-=~==========================r===r====mr4- NGÀY HOÀN THÀNH NHIEM VU : -~-~ ~ ~-~=~==~=======================m==r5- HO VÀ TÊN CÁN BỘ HƯỚNG DAN : PGS TS Dương Tuan Anh -Nội dung và đề cương Luận văn thạc sĩ đã được Hội Đông Chuyên Ngành thông qua.CÁN BO HUONG DAN CHU NHIỆM BO MON KHOA QL CHUYEN NGANH
(Họ tên và ch ky) QUAN LÝ CHUYEN NGANH (Ho tén va chit ky)
(Ho tên và chữ ky)
PGS TS Dương Tuấn Anh
Trang 4LỜI CAM ĐOANTô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ư đãchi rõ trong luận văn, các công việc trình bày trong luận văn này là 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 dé lây một bang cap ở trườngnày hoặc trường khác.
Ngày 27 tháng 11 năm 2011
Vương Bá Thịnh
VƯƠNG BÁ THỊNH - 09070465 i
Trang 5LỜI CẢM ƠN
Tôi xin gởi lời cảm ơn chân thành và sâu sắc đến PGS TS Dương Tuấn Anh,Thây đã tận tình hướng dẫn, định hướng tôi từ cách đặt vẫn đề, phương pháp nghiên cứukhoa học đến những công việc cụ thể trong luận văn này
Xin chân thành cảm ơn tất cả quý Thầy Cô trong Khoa Khoa học và Kỹ thuật Máytinh đã tận tình truyền đạt những kiến thức quý báu cho tôi trong suốt quá trình học tập
Cuối cùng, con xin cảm ơn Ba Mẹ đã tạo mọi điều kiện để con có thể tiếp tục học
tập và nghiên cứu Con tran trọng dành tặng thành quả của luận văn này cho Ba Me và cảgia đình, những người đã luôn bên con.
Trang 6TÓM TÁT
Dữ liệu chuỗi thời gian ton tại rất nhiều trong các lĩnh vực của đời sống Nhucầu khai phá dữ liệu chuỗi thời gian ngày càng tăng, trong đó gom cum đữ liệu chuỗi thờigian cũng là một lĩnh vực rất được quan tâm Đề tài này sẽ đi sâu về vấn đề gom cụm dữliệu chuỗi thời gian Giải thuật gom cụm pho biến nhất hiện nay là k-Means, tuy nhiêngiải thuật vẫn còn nhiều hạn chế và không dé sử dụng đối với dir liệu chuỗi thời gian.Chúng tôi đã đề xuất một phương pháp thu giảm số chiều xấp xỉ tuyến tính từng đoạnPLA đa mức phân giải cũng như tích hợp phương pháp thu giảm số chiều này vao giảithuật I-k-Means để cải tiễn chất lượng lời giải và thời gian thực thi việc gom cụm Ngoàira đề tài cũng nghiên cứu ứng dụng cấu trúc kd-tree vào vẫn đề khởi tạo trung tâm cụmban đầu (đây là một nhược điểm chính của giải thuật k-Means), đồng thời ứng dụng kỹthuật khởi tạo trung tâm cụm dựa trên phương sai có cải tién để nâng cao hiệu quả củagiải thuật I-k-Means Thực nghiệm cho thấy kết quả về chất lượng lời giải của giải thuậtI-k-Means có khởi tạo trung tâm cụm ban đầu bang cả 2 phương pháp đều khá tốt
VƯƠNG BÁ THỊNH - 09070465 iii
Trang 7Time series data exist in many areas of life The demand for data mining timeseries is increasing, which cluster the time series data is also a very interesting field Thisresearch will delve on the issue clustering time series data Clustering algorithm iscurrently the most popular k-Means, but many algorithms are still limited and not easy touse for time series data We have proposed a method of reducing the dimensionalitylinear approximations PLA segment resolution as well as multi-level integrated approachto reduce this dimension Ik-Means algorithm to improve solution quality and run time Inaddition the project also applied research kd-tree structure on the problem started theinitial cluster centers (this is a major drawback of k-Means algorithm), and engineeringapplications initialized cluster centers variance is based on enhancements to improve theefficiency of Ik-Means algorithm Experimental results show that the solution quality ofIk-Means algorithm have created the initial cluster centers by the two methods are quitegood.
Trang 8MỤC LỤC
LOL CAM DOAN iLOL CAM ON 0 ii¡90.000 ÔỎ iii
ABSTRACT ooo 3đH.:5 ốc 1V109080 — aAaAai4 V
M.9)58)/00/005)) 0n XDANH MUC BANG 61 xiiiCHƯƠNG 1: PHÁT BIEU VAN ĐP - c5: S222 2 2112121121212 |1.1 Dữ liệu chuỗi thời ð1aH: G21 S13 E11 KT ng THy HT HH nh net |
1.2 Bài toán gom cụm dữ liệu (data Clustering) - «<< << {2s 33311 ++xssssssss 2
1.3 Những yêu cau đòi hỏi cho gom cụm dữ liệu chuỗi thời gian - 55: 31.4 Mục tiêu nghiên cứu của để tải -á- c1 1 cv 1T HT TH ng TH ng ru 41.5 Tóm lược những kết Qua da dat Quoc 00757 51.6 Cau trúc luận văn +: tt St 2t t2 2 12121.21.11.111111121121.1.1 1 5CHƯƠNG 2: TONG QUAN CÁC CONG TRINH LIEN QUAN - 5 55552 5s: 7
2.1 DO dO tuONg 1 0015 72.1.1 Độ đo MinkOwSK ou cece ceeccceeccceeccecccesscecsscceescceescceesccscesesssesceeeseeseseees 8
2.1.2 Phương pháp xoắn thời gian động (Dynamic Time Warping - DTW) 102.2 Các phương pháp thu giảm số chiỀU - 6= SE SE E#ESEEEsEeEgEserkexesecee 132.2.1 Phương pháp biến đổi Fourier rời rac (Discrete Fourier Transform - DFT) 14
VƯƠNG BÁ THỊNH - 09070465 V
Trang 92.2.2 Phương pháp biến đôi Wavelet rời rac (Discrete Wavelet Transform - DWT)
ẮẲa ố.ố.ốốốố 15
2.2.3 Phương pháp xấp xỉ gộp từng đoạn (Piecewise Aggregate Approximation
-v0 ma an ăn 15
2.2.4 Phương pháp xấp xi hang số từng đoạn thích nghỉ (Adaptive Piecewise
Constant Approximation - AP(CCA) c c1 11.11111010 10010 2 11 11111111111 1 vớ 16
2.2.5 Phương pháp xấp xi tuyến tinh từng đoạn (Piecewise Linear Approximation
a Tìm đường thăng tốt nhất qua một tập điỂm ¿2 x2 + £sE+E£xe£sxexei 18
b €71;18101)12:109)114)1)1230))/61)1919À5 S6baiÝẢÝỔỐỔỐỔỐẦỔỔẦ 19c Giải thuật TOp-IOWT 0000112000110 1010 1 11111111110 10 3 11 tt nu 20d Giải thuật Bottom-p - - + + 5c 2221311801133 1311111111103 1111111155 8111 tre 22
e Nhận xét về giải thuật Sliding Window, Top-Down, và Boftom-Up 23
f Kỹ thuật lập chỉ mục STB-IindexIng - + + << << + Ỳ Y3 xxreess 26g Lập chỉ mục dựa trên cây Ï-fr€€ - + c 2c 11111010002 111111111111 111 11111112 27
2.3 Gom cụm dit liệu chuỗi thời giann G- + S2 1E E33 SE Sky rkp 30
2.3.1 Gom cụm đữ liệu thường - << c2 0011101110110 111111111111 1111 11x ke 30a Phương pháp phân hoạch (Partitioning method) - - + -<<<<<<<<s+ 30
b Phương pháp phân cấp (Hierarchical metho d) 2-2 s5 +e+e£sEsxseesesed 32
c Các phương pháp gom cụm khác - << << 2+3 +1 1133333111111 55311554 35
2.3.2 Gom cụm dit liệu chuỗi thời gian 2 s3 3E EE# EeEeEsEreekrseed 35a Tong quan về gom cụm dif liệu chuỗi thời gian + 6xx £sesees 36b Gom cụm dit liệu chuỗi thời gian chứng khoán 2 + + £+s£++sEzscs 36c Gom cụm dữ liệu chuỗi thời gian băng Haar wavelet và k-Means 37
d Giải thuật I-k-Means - - - - ccc CC 321111 SH Hy vn kh cv ra 38
Trang 102.4 Các cải tiến cho giải thuật k-Means cv E1 g ng ng 392.4.1 Ung dụng kd-tree dé cải tiễn giải thuật k-Means 6c sec se scsed 39Me 0c 39
eee cece G AẠA tEaGEEEEE ESSE EEE 4]
c Giai thuat khoi tao trung tam cum ban đầu dựa trên kd-tree - -¿ 43
2.4.2 Các phương pháp khởi tạo trung tâm cụm khác - -s+<<<<<<+ 44
a Bốn phương pháp khởi tạo lời giải ban đầu pho biến 5s scs xe: 44b Giải thuật mô phỏng luyện kim (SA), giải thuật di truyền (GA) và việc khởi tạo
A trung tâm ban đâu - - + + <1 13131310111013 111111111050 1111111110 10 3 1 119v vớ 45
c Giải thuật tỉnh chẾ ¿5c tt 222222222 E2 1 46
d Giải thuật dựa trên phương Sa1 - c5 c 2222111011011 1111111111111 551111152 47
2.5 Trực quan hóa dữ liệu chuỗi thời gian G2 2 3E *E 3E E*E SE vkrxcrerski 47
2.5.1 TimeSearche ốa A1.” sa“ 472.5.2 Cluster and Calendar-Based VisualiZzafIOTi -Ă Ăn ve see 48
2.5.3 Spiral — đường xoắn ỐC - - cv HE 1T TT HH HT Hưng ưyn 49
“h4 7 5 49
CHƯƠNG 3: CƠ SỞ LY THUYET ou eseesecssssessesseeseeseeseseesncsncenccueeneeusenecneeaeaneaneeneeneens 52
3.1 Giải thuật K-MEans ice ceeccceeeccceeeceeccceecccecccessceesessesssceeceeesceseseseeseesesseeesss 523.2 Haar Wavelet đa mức phân giải và giải thuật I-k-Means - - 533.3 PLA đa mức phân gIảI + + - c c2 0031110110111 3 11111111101 111111111111 1 nnrrrrh 58
3.4 Phuong pháp đo khoảng cách giữa 2 chuỗi thời gian đã tuyến tinh hóa 593.5 Giai thuật sử dụng kd-tree để khởi tạo trung tâm cụm ban đầu -. cccccce: 623.5.1 Cau trúc Kđ-iTee tt tt t2 HE 2111121111 62VƯƠNG BÁ THỊNH - 09070465 vii
Trang 113.5.2 Giải thuật khởi tạo trung tâm cụm bang kd-tree or 643.6 Kỹ thuật khởi tao trung tâm cụm ban dau dựa trên phương sai có cải tién 673.7 Vẫn đề chọn giá tri & COL UU 01 ăăằằ ii 703.8 Đánh giá chất lượng lời giải gom €ụm c- - - ssxkxExkE SE cv ven 71CHUONG 4: HE THONG GOM CUM DU LIEU CHUOI THỜI GIAN 74NA on ố ẽ ố ốố 744.2 Cách giải quyết vấn đề - -á- - k1 TT TT ng HH HT HH ngư 744.2.1 Chuẩn hóa dit liệu :- + +2 2 2 2 tre 764.2.2 Thu giảm số chiều bằng PLA đa mức phân giải - - 6s + £+x+xse£sed 764.2.3 Xây dựng kd-tree và khởi tạo trung tâm cụm ban đầu dựa trên kd-tree 774.2.4 Khởi tạo trung tâm cụm ban đầu dựa trên phương sai có cải tiến 784.2.5 Gom cụm bang giải thuật k-Means c1 về vn ve rred 784.2.6 Gom cụm bang giải thuật I-k-ÌMeanns G-c- 56s SE SE EsEsEekeEsksereesed 784.2.7 Đánh giá chất lượng lời giải gom €Ụm - s- 5c s E3 Eekekgeeskeeeeesed 794.2.8 Trực quan hóa kẾt Quả - - k9 S191 1E 1S HE vn ng ưkg 79xAcn na 80
CHƯƠNG 5: THUC NGHIỆM - 2G S2 223 S1 E213 21% 11 1 91 2 1 11 Hy 1 vn nến 83
5.1 Kết quả thực nghiệm - - - x11 111 1E H1 H1 11v 1g ng ru 83
5.1.1 Dữ liệu Heterogeneous (Phức hợp) - - + + << << YYSxsssrsea 835.1.2 Tập dữ liệu chứng khoán - - c c2 2111010211 111111 1111011 111111111113 1£ rrrg 88
“con 90CHUONG 6: KET LUAN 001 926.1 TOng Kete.ccccccecccsccscsscescsssccssscescscsescsvscsessvssssesvscsavscesavscusssvavscsevavacavsceavavseeaees 92
Trang 126.2 Những đóng góp của dé tài - - c1 1T 1n HT TH HH ưyn 936.3 Hướng phát triỂn k9 1 5 111 1 911 1 HT 11T ng ng 93BÀI BAO KHOA HỌC CÔNG BÓ - ST HH 1 1 111110101110 110101010 101011111 94TÀI LIEU THAM KHHẢO -G- E311 111323E8 E3 5111112115111 1113 1111111111151 111111 te 95PHU LUC 1: BANG DOI CHIEU THUAT NGU ANH - VIỆT -5-s 2 sx+scs¿ APHU LUC 2: LY LICH TRÍCH NGANG 2+ 2 S22 E2 E113 1515111111111 te C
VƯƠNG BÁ THỊNH - 09070465 ix
Trang 13DANH MỤC HÌNH
Hình 1.1 Đường biểu diễn dit liệu chuỗi thời gian ¿2 + 2s E+E+E*EeEeEreEsrsrrkeerees 2Hình 1.2 Kết quả gom cụm của dit liệu 2 chiễu - - =2 k+s SE E+E+E£E£E+EEeEsrerrerees 3Hình 2.1 Minh họa 2 đường giống nhau, nhưng đường cơ bản khác nhau [17] 9Hình 2.2 Minh họa 2 đường giống nhau, nhưng biên độ dao động khác nhau [17] 9
Hình 2.3 Hai phương pháp độ đo tương tự (a) Euclid và (b) DTW [18] IIHình 2.4 Cách tính khoảng cách theo DTW Q1 HH ng ng ng nghe hen 12
Hình 2.5 Phép biến đôi DFT và DWT [6 ], c-< SE SE SE SE vs cecko l6Hình 2.6 Minh họa phép biến đổi APCA, PAA và PLA [16]| s- «se scsesxe: 17Hình 2.7 Minh họa 2 dạng đoạn thang trong biến đối PLA [8] - 5 2 + <se: 18
Hình 2.8 Giải thuật Sliding Window [8] - - - << 0211111011133 1111111111115 1111111 s2 21Hình 2.9 Giải thuật Top-Down [§] - c1 2113111110110 1 11111111 1111 ra 22Hình 2.10 Giải thuật Bottom-Up [8] - - + - << c2 12213111111 1311111111111 23Hình 2.11 Minh hoa cho việc tạo một bin [ Ï2 | -.- - - << << << << c‡‡‡**+*esssssseess 27
Hình 2.12 Mô tả khoảng cách giữa các chuỗi con trong Bin 1011 [12] - 28
Hình 2.13 Sự phan chia các MBR và cay R-tree tương ứng [32] - - << 29Hình 2.14 Giải thuật k-ÌMeans - - c5 c5 E221 11033 1131 1113 11 1 1v ng cv vn 3]Hình 2.15 Giải thuật k-Medo1ds - - ¿<< cc << c2 E102 E111 1111 1111113 1113 11x sceẻ 32
Hình 2.16 Minh hoa quá trình gom cum phân cấp [24] - - + s s + £+x+e£e£sxsezecse 34Hình 2.17 Phương pháp phân cấp theo hướng từ đưới lên (HAC) 5-2 55+: 34Hình 2.18 Ba hướng tiếp cận gom cụm dit liệu chuỗi thời gian [14], - 37
Trang 14Hình 2.20 Dữ liệu 2 chiều được lưu trữ trên 2-d tree (biểu diễn dạng box) [15] 40
Hình 2.21 Biéu diễn dữ liệu 2 chiều dạng cây nhị phân [1 5] - 5s +s£s£zxe: 40Hình 2.22 Giải thuật duyệt cây [3 ] - c1 1111311111991 1111 1 1 vn ng 11 kg 42Hình 2.23 Giải thuật tia cây (Pruning) [ ÏỐ | - << << + + 2< EYEYESSSSsssessresss 44Hình 2.24 Phương pháp khởi tạo trung tam cụm KA [20]| - << + <<<<<<<sss2 46Hình 2.25 Minh họa về TimeSearcher [29] ¿óc E2 E SE S38 ESESEESESEESEseEskserseseees 48Hình 2.26 Minh họa về hệ thông trực quan hóa các cụm và dựa trên lịch [10] 49
Hình 2.27 Giá cô phiếu của công ty Microsoft (màu vàng) và Sun Microsystems (màudO) trong 8:7iii06)0 77 ố.ố ằa 50
Hình 2.28 Minh họa Viztree [3 Ï | - - << 3+2 1122111130101 111111013 11105 1111115553 re 50Hình 2.29 Minh họa phương pháp SAX [31] - 5c S332 sssssseseeeske 51Hình 3.1 Giải thuật k-Means - - - - c c5 c2 1211110111101 11330 11 11v 1v ng cv ven 53Hình 3.2 Minh họa các bước chạy giải thuật k-Means với 3 cum [3Š] 54
Hình 3.3 Sự phân cấp của chuỗi dir liệu x có chiều dai n (lũy thừa của 2) [11] 55
Hình 3.4 Áp dung k-Means ở các mức phân giải khác nhau [1 I] - 5-5 2 5 57Hình 3.5 Giải thuật I-k-Means [ Ï Ï | - << < +2 <5 131315 31131113 111111 111115 6 x2 58Hình 3.6 Quá trình cat slice [2] - - G2 k3 S33 1838 S18 SE E111 xe cư: 60Hình 3.7 Lat cắt và các đường thắng ảo [2] c- 6 + 1E SE Ek SE seeererea 61Hình 3.8 Giải thuật xây dựng cây kd-tree cân băng [36] occ ccceccsecesesscesesseseessceseeeees 63Hình 3.9 Cây kd-tree được xây dựng từ giải thuật trong hình 3.8 [36] 64
Hình 3.10 Giải thuật khởi tạo các trung tâm cụm ban đầu dựa trên kd-tree [21]: 65
Hình 3.11 Giải thuật khởi tạo trung tâm cụm ban dau dựa trên phương sai [26] 67
Hình 3.12 Minh họa giải thuật khởi tạo trung tam cụm của Al-Daoud [26] 68
Hình 3.13 Giải thuật khởi tạo trung tâm cụm ban đầu dựa trên phương sai có cải tiễn 69VƯƠNG BÁ THỊNH - 09070465 xi
Trang 15Hình 3.14 Minh họa giải thuật khởi tạo trung tâm cụm dựa trên phương sai có cải tiễn 70Hình 4.1 Quá trình gom cụm dữ liệu chuỗi thời gian - 2 5 se se sec rees 75Hình 4.2 Kiến trúc tong quát của mô hình ¿6k xxx SE xxx vs ro 76
Hình 4.3 Giải thuật tạo cây kd-free cc c c9 0101101 1010 11111111111 111111 va 77
Hình 4.4 Trực quan hóa kết quả gom cụm ở mức Ì ¿+ sE+k£sEsEek+e£exserecse 80Hình 4.5 Trực quan hóa kết quả gom cụm ở mức 2 2 2 + 2x2 +E+E+E+EEEeEsrerreeeee 81
Hình 5.1 Tap dữ liệu HeterogeneouS cccccccceceseeeeeecceceeeeeeeaeseeesenseseseeeeeeseeeseeeaeeees 84
Hình 5.2 Kết qua đánh giá dựa trên hàm mục tiêu (tập dữ liệu Heterogeneous) 86Hình 5.3 Kết quả đánh giá dựa trên thời gian thực thi (tinh bang s) (tập dit liệu
Heterogeneous) k-Means vs I-k-Means - - - 22213101 10110133 1111111111111 1 1111152 87
Hình 5.4 Kết quả đánh giá dựa trên thời gian thực thi (tinh bang s) (tập dit liệu
Heterogeneous) k-Means vs I-k-Means + kd-free -c c3 311111 13 11x 87
Hình 5.5 Kết quả đánh giá dựa trên thời gian thực thi (tinh bang s) (tập dit liệu
Heterogeneous) k-Means vs I-k-Means + Varlance «<< << na 88
Hình 5.6 Kết quả đánh giá dựa trên số lần lặp (tap dữ liệu Heterogeneous) - 89Hình 5.7 Kết qua đánh giá dựa trên hàm mục tiêu (tập dữ liệu Chứng khoán) 89Hình 5.8 Kết quả đánh giá dựa trên thời gian thực thi (tính bang s) (tập dữ liệu Chứng
1007 //‹‹‹‹4 90
Trang 16DANH MỤC BANGBang 3.1 Các mức phân giải của phương pháp PLA đa mức phân giải - 59
Bảng 5.1 Các tiêu chí đánh giá gom cụm với 1000 mau sir liệu (tập dữ liệu
l§[0i3xU5332i119)0727777 = ddaaallạyạT na he
Bảng 5.2 Kết quả đánh giá dựa trên hàm mục tiêu (tập dữ liệu Heterogeneous)Bảng 5.3 Kết quả đánh giá dựa trên thời gian thực thi (tính băng s) (tập dữ liệu
l§[0i3xU5332i119)0727777 = ddaaallạyạT na he
Bảng 5.4 Kết quả đánh giá dựa trên số lần lặp (tập dữ liệu Heterogeneous)
Trang 17CHƯƠNG 1: PHAT BIEU VAN DE
Chương nay giới thiệu về yêu cau, mục tiêu của dé tai và giới thiệu co sở lý thuyếtcủa dé tài Đồng thời lý luận trên tính cấp thiết trong nghiên cứu và thực tiễn, đòi hỏi phảithực hiện đề tài
1.1 Dữ liệu chuỗi thời gian:
Có nhiều định nghĩa về đữ liệu chuối thời gian (Time Series):VY Dữ liệu chuỗi thời gian là tập hợp các dữ liệu được quan sát tuần tự theo
Những khó khăn và thách thức khi nghiên cứu dữ liệu chuỗi thời gian:Y Dữ liệu rất lớn: dữ liệu điện tâm đồ trong một gid có thé lên đến 1
Gigabyte, dữ liệu truy cập trên một website khoảng 5 Gigabyte/1 tuần
Trang 18Y Phụ thuộc nhiều vào cách đánh giá độ tương tự: định nghĩa độ tương tự phụ
thuộc vào người dung, tập dữ liệu, miên bài toán
Y Dữ liệu thường không đồng nhất: định dạng của các loại dữ liệu khác nhau,tan số lấy mẫu khác nhau, bị nhiễu, thiếu một vai giá trị, dữ liệu không
øom cụm đữ liệu trên không gian 2 chiêu.
Giải thuật gom cum pho biến nhất hiện nay là giải thuật Means, do giải thuật Means dễ hiện thực và có thời gian thực thi khá nhanh Y tưởng của giải thuật này chotrước một số nguyên dương #, với # là số cụm cần gom Đầu tiên, ta chọn ngẫu nhiên &đối tượng trong không gian dữ liệu làm các trung tâm cụm ban đâu, sau đó duyệt qua cácVƯƠNG BÁ THỊNH - 09070465 2
Trang 19k-đôi tượng dữ liệu còn lại và dựa trên một hàm tính khoảng cách đê gán các k-đôi tượng nàyvào cụm có trung tâm cụm gân nó nhât, sau đó tính toán lại trung tâm cụm và duyệt quatat cả các đôi tượng dữ liệu đề gan lại vào cụm hợp ly cho đên khi không có phép gan nàođược thực hiện nữa thì giải thuật dừng.
Hình 1.2 Kết quả gom cum cua dữ liệu 2 chiều
1.3 Những yêu cau đòi hỏi cho gom cụm dé liệu chuỗi thời gian
Bài toán gom cum di liệu chuỗi thời gian tập trung xây dựng một phương phápgom cụm nhanh chóng và tin cậy trên một tap dữ liệu chuỗi thời gian lớn Có thể nói việcgom cụm là một hoạt động quan trọng Như chúng ta đã biết, ngay từ lúc còn nhỏ chúngta đã học cách để phân biệt sự khác nhau giữa con mèo và con chó, giữa thực vật và độngvật Thi ngày nay bang việc gom cum một cách tự động và tận dung những phương tiệnsan có, cho chúng ta thay duoc tam anh hưởng của việc gom cum dữ liệu như thế nảo
Gom cụm đữ liệu được sử dụng rộng rãi trong nhiêu lĩnh vực như:
vx Lĩnh vực tài chính: phân tích thị trường chứng khoán, nhận diện mẫu, phân
tích dữ liệu.
* Lĩnh vực máy tính: nhận diện anh, thống kê dữ liệu
Trang 20Y Trong kinh doanh, việc gom cụm đã giúp những nhà tiếp thị khám phá ra
những khách hàng tiềm năng dựa vào những đặc điểm của họ
vx Lĩnh vực sinh học: phân loại động vật và thực vật, gom những gen có chức
năng tương tự nhau vào một cụm.Gom cụm đữ liệu là một thử thách trong lĩnh vực nghiên cứu, do đó nó phải tuân
theo một số yều cầu, chang hạn như: kha năng mở rộng, lam việc trên nhiều loại dữliệu Ngoài ra các giải thuật gom cụm pho biến (như giải thuật k-Means) khi áp dụng
vào dt liệu chuỗi thời gian gap phải hai van đề khó khăn sau:
Y Số chiều hay đặc trưng của dữ liệu chuỗi thời gian là rất lớn nên việc gomcụm bằng phương pháp thông thường sẽ tốn rất nhiều thời gian và tải
nguyên.
* Với việc chọn ngẫu nhiên # trung tâm như giải thuật k-Means dẫn đến vandé là chất lượng lời giải cũng như thời gian thực thi thường phụ thuộc vaokết quả của việc chọn các trung tâm cụm ban đầu này
1.4 Mục tiêu nghiên cứu của đề tài
Mục tiêu nghiên cứu của dé tài trên cơ sở dữ liệu chuôi thời gian tập trung vào cácnội dung sau:
Y Nghiên cứu cải tiến phương pháp thu giảm số chiều xấp xỉ tuyến tính từng
đoạn PLA (piecewise linear approximation) thành PLA đa mức phân giải
(multi-resolution), sau đó áp dụng giải thuật I-k-Means để gom cum dit liệu
chuôi thời gian.
Y Nghiên cứu ứng dụng kd-tree để khởi tạo trung tâm cum ban đầu cho giảithuật I-k-Means gom cụm đữ liệu chuỗi thời gian
VƯƠNG BÁ THỊNH - 09070465 4
Trang 21* Ứng dụng giải thuật khởi tạo trung tâm cụm dựa trên phương sai dé cải tiến
giải thuật I-k-Means.
Y Truc quan hóa kết quả gom cum dữ liệu chuỗi thời gian
1.5 Tóm lược những kết quả đã đạt được
Chúng tôi đã sử dụng cau trúc kd-tree để khởi tạo trung tâm cụm ban đầu cho giảithuật I-k-Means, đồng thời áp dụng phương pháp khởi tạo trung tâm cụm ban đầu dựatrên phương sai cho giải thuật I-k-Means, và dé xuất một phương pháp thu giảm số chiềuPLA đa mức phân giải để có thể áp dụng giải thuật I-k-Means, kết quả thu được là chấtlượng lời giải khi khởi tạo trung tâm cụm có sử dụng cấu trúc kd-tree và phương phápkhởi tạo trung tâm cụm dựa trên phương sai tốt hơn về chất lượng lời giải lẫn thời gianthực thi so với giải thuật k-Means và I-k-Means khởi tạo trung tâm cụm ban đầu mộtcách ngẫu nhiên, trong đó phương pháp khởi tạo trung tâm cụm ban đầu dựa trên phươngsai có thời gian thực thi nhanh nhất Xây dựng được một phương pháp trực quan hóa kết
quả gom cụm phù hợp với tập dữ liệu lớn.
1.6 Cau trúc luận văn
Tổ chức của phần còn lại của luận văn như sau:
Chương 2 là tong quan ve các công trình liên quan Phân này trình bày về các độđo tương tự, các kỹ thuật thu giảm sô chiêu giới thiệu về các giải thuật gom cụm dữ liệuchuôi thời gian, các cải tiên cho giải thuật k-Means, các cách trực quan hóa dữ liệu chuôithời gian.
Chương 3 trình bay cơ sở lý thuyết dé thực hiện dé tài, trong phan nay sẽ trình bàyvề giải thuật k-Means, giải thuật I-k-Means, phương pháp thu giảm số chiều PLA đa mứcphân giải, cách đo khoảng cách giữa 2 chuỗi thời gian đã tuyến tính hóa, cấu trúc kd-tree,giải thuật sử dụng kd-tree dé khởi tao trung tam cum, giai thuat khoi tao trung tam cum
Trang 22dựa trên phương sai có cải tiên, van dé chọn & (sô lượng cụm) tôi ưu, và cách đánh giá
chất lượng lời giải gom cụm
Chương 4 trình bày về hệ thong gom cum dé liệu chuỗi thời gian của chúng tôi.Chương 5 trình bày các kết quả thực nghiệm
Chương 6 trình bày kết luận và hướng mở rộng của đề tài
VƯƠNG BÁ THỊNH - 09070465 6
Trang 23CHƯƠNG 2: TONG QUAN CÁC CÔNG TRÌNH LIÊN QUANChương này trình bày về các công trình liên quan đã được nghiên cứu bao gomcác công trình vê độ đo tương tự, các phương pháp thu giảm sô chiêu, và các phươngpháp gom cụm dữ liệu chuôi thời gian, các cải tiên cho giải thuật k-Means, và các cách
trực quan hóa dữ liệu chuỗi thời gian
2.1 Độ đo tương tự
Dé giải bài toán tìm kiếm gom cum và các bài toán khác thì việc tính khoảng cácđể đánh giá độ tương tự của hai đối tượng X, Y là rất quan trọng Trong trường hợp 2 đốitượng nay giống nhau thì khoảng cách này sẽ là 0 và ngược lại càng khác nhau thìkhoảng cách càng lớn Gọi D(X, Y) là khoảng cách giữa hai đối tượng X, Y, ta có các tínhchất sau:
1 +,y) =0 nếu và chỉ néu x = y
2 D(x,„y) = D(,x)3 D(x,y) >= 0 với moi x, y4 D(x,y) < D(x,z) + D(w,z)
Trong 4 tính chat trên, ta thay tính chat 1 va 2 là rất trực quan Tinh chat 3 cũng ratcần thiết Nếu khoảng cách có thể nhỏ hon 0 thì hai đối tượng khác nhau gồm nhiềuthành phần nhưng tong khoảng cách của các thành phan có thé bằng 0 Điều nay là tráivới tính chất 1 Tính chất còn lại - tính chất 4 - không phải là tính chất bắt buộc nhưngcũng rất hợp lý
Trang 24Cho hai chuỗi dữ liệu thời gian Y= <x) x; x,> và Y = <y; y; y„> độ tương tựcủa X và Y được kí hiệu là Sim(X, Y) Sau đây là một số phương pháp dùng để xác địnhđộ tương tự của hai chuỗi thời gian.
gom cum Đặc biệt, cách tinh này rất phù hợp khi ta sử dung các phépbiến đổi Fourier rời rac (Discrete Fourier Transform - DFT) hay phép biếnđổi Wavelet roi rac (Discrete Wavelet Transform - DWT)
Nhược điểm:Vv Nhạy cảm với nhiễu
Y Không thích hợp khi dữ liệu có đường căn bản (base line) khác nhau (Hình
2.1): ví dụ như giá chứng khoáng của A và B thay đổi rất giống nhau nhưngVƯƠNG BÁ THỊNH - 09070465 8
Trang 25A giao động ở 100 còn B giao động ở mức 40 Như vậy 4 và B là rất khácnhau mặc dù hình dáng rất giống nhau.
Y Không thích hợp khi dữ liệu có biên độ dao động khác nhau (Hình 2.2):
Trong trường hop giá chứng khoán của 2 công ty A và B thay đôi rất giỗng
nhau nhưng mà biên độ giao động của 41 là 20 va 80 còn biên độ giao động
của B là 30 và 50 thì độ tương tự của A và B là rất khác nhau
2 | D(Q,C)
N
œ
Hình 2.1 Minh họa 2 đường giống nhau, nhưng đường cơ bản khác nhau [17]
Hình 2.2 Minh hoa 2 đường giống nhau, nhưng biên độ dao động khác nhau [17]
Trang 26Đề khắc phục những nhược điểm trên, nhiều phương pháp khắc phục đã được đề
nghị:
Y Phương pháp chuẩn hóa dir liệu chuỗi thời gian [1] trước khi áp dụng cácgiải thuật so trùng mẫu dựa trên giá trị trung bình và phương sai Trong đó,biến đổi dữ liệu O thành dữ liệu O’ có cùng đường căn bản theo công thứcsau: O’ = O—mean(Q), với mean(O) là giá trị trung bình của QO Dé các dữliệu có cùng biên độ dao động thì ta dùng phép biến đổi sau: O’ = (Ó-
mean(Q)) / var(Q), với mean(Q) là giả trị trung bình cua QO và var(Q) làphương sai của Q.
Y Phương pháp trung bình di chuyển (moving average) [2] để làm trơn cácđường biểu diễn dữ liệu chuỗi thời gian Với phương pháp này thi O đượcbiến doi thành QO’ - trong đó điểm ở vị trí i bang trung bình cộng giá trị tạiđiểm i và k điểm lân cận Vi dụ trong trường hợp k = 3 thì
XÌ¡# (Xj) † Xi ở X41) 3
2.1.2 Phương pháp xoắn thời gian động (Dynamic Time Warping - DTW)
Tuy nhiên, việc so trùng 2 đường biểu diễn dữ liệu bang cách tính khoảng cáchtừng cặp điểm 1-1 (điểm thứ i của đường thứ I so với điểm thứ i của đường thứ II) làkhông phù hop trong trường hợp 2 đường nay không hoản toàn giống nhau nhưng hìnhdạng biến đôi rất giống nhau Như trong Hình 2.3, 2 đường biểu diễn rất giống nhau vềhình dạng nhưng lệch nhau về thời gian Trong trường hợp nay, nếu tính khoảng cáchbằng cách ánh xa 1-1 giữa 2 đường thì kết qua rất khác nhau và có thé dẫn đến kết quacuối cùng không giống như mong muốn Vì vậy dé khắc phục nhược điểm nay, thì mộtđiểm có thể ánh xạ với nhiều điểm và ánh xạ này không thăng hàng Phương pháp nàygọi là xoắn thời gian động (Dynamic Time Warping - DTW) [4]
VƯƠNG BÁ THỊNH - 09070465 10
Trang 27Dữ liệu vào của phương pháp DTW là 2 đường dữ liệu chuỗi thời gian và thông sốw — khung cửa số xoắn (warping window) ràng buộc 2 điểm i và 7 có thé ánh xạ nhau nếu
I7—7| <w Dữ liệu ra là tông khoảng cách của các diém được ánh xa với nhau.
(a)
Hình 2.3 Hai phương pháp độ đo tương tự (a) Euclid và (b) DTW [18]Cách tính DTW:
Cách đơn giản nhất để tính DTW của 2 đường X và Y là ta xây dựng ma trận D(m
xn) với m = |X| van = |Y[ Khi đó, Dy = d(x, yj (Hình 2.4)
Sau khi xây dựng ma trận D, ta tìm đường di từ 6 (0, 0) đến 6 (m, n) thỏa mãn
những ràng buộc sau:
VY Không được đi qua trái hay đi xuống
Y Đường đi phải liên tục.
Y Ô (7) thuộc đường đi phải thỏa |i - j| <= w.Giả sử có K 6 đi từ ô (0, 0) đến 6 (m, n) thỏa mãn những điều kiện trên, khi đó
DTW(O,C) = min( xo )
Trang 28Tuy nhiên, ta có thể dùng quy hoạch động để giải quyết bài toán này Trong đó,công thức truy hồi dé tính D(i, j):
D (i, j) —|3¡i—3j| + mm (D([~ l,J), Da-1,j-)), Dự, Jj~ 1) }
Hình 2.4 Cach tính khoảng cách theo DTW
Ưu điểm:* Phương pháp DTW thì hiểu qua hơn rất nhiều so với phương pháp tính
khoảng cách theo Euclid Đặc biệt trong các bài toán phân lớp(classfication), gom cum (clustering) hay trong các các ứng dụng nhận dạnggiong nói
* Phương pháp DTW cho phép nhận dạng những mẫu có hình dạng giốngnhau nhưng chiêu dài hình dạng về mặt thời gian có thé khác nhau
Nhược điểm:
VƯƠNG BÁ THỊNH - 09070465 12
Trang 29Y Nhược điểm lớn nhất của DTW là thời gian chạy rất lâu, gap hang trăm đếnhàng nghìn lần so với phương pháp tính khoảng cách theo Euclid Ban đầuđưa ra giải thuật DTW thì w = 7 (n là chiều dai của dit liệu) Khi đó, độphức tạp là O(n’) Do đó, ta đưa ra thông số cửa số xoắn w (w <n) dé giảm
2.2 Các phương pháp thu giảm số chiều
Dữ liệu chuỗi thời gian thường cực kỳ lớn Khai phá (cụ thể hơn trong bài toáncủa chúng ta là gom cụm) trực tiếp trên những dữ liệu nay sẽ rất phức tap và không hữuhiệu Dé khắc phục van dé nay, ta nên áp dụng một số phương pháp biến doi để thu giảmđộ lớn của dữ liệu Những phương pháp biến đổi nay thường được gọi là những ky thudtthu giảm số chiêu (dimensionality reduction) Phương pháp tổng quát để thu giảm sốchiều có thé tóm tắt như sau:
1 Thiết lập một độ đo tương tự đ.2 Thiết kế một kỹ thuật thu giảm số chiều dé rút trích một đặc trưng có chiều
dài k (tức là một đặc trưng gồm # giá tri), với k có thé được xử lý một cách
hữu hiệu nhờ một câu trúc chỉ mục không gian (đa chiêu).
Trang 303 Cung cấp một độ đo tương tự d trên một không gian đặc trưng # chiều vàchứng tỏ rằng nó tuân thủ điều kiện sau đây:
A(X’, Y) < d(x, Y) (1)Điều kiện (1) có nghĩa là hàm khoảng cách tính trên không gian đặc trưng (haykhông gian thu giảm) của hai chuỗi thời gian đã được biến đổi X, Y’ từ hai chuỗi thờigian ban đầu X, Y phải chặn dưới khoảng cách thật giữa chúng trên không gian nguyên
k=1
Trong đó C(t) là chuỗi dữ liệu ban dau, A; và B; là các hệ số biến đổi được xem làđặc trưng của chuỗi dữ liệu ban dau Độ phức tap của phép biến đổi nay là Ó/gn) với n
là so diém của chuối dt liệu.
Ngoài khả năng nén dt liệu, thì với cách tính khoảng cách dựa trên Euclid, phép
biến đổi Fourier cho phép so sánh gián tiếp 2 chuỗi X, Y thông qua 2 chuỗi X; ïr đã đượcbiến đôi Phép biến đổi Fourier có tính chất trên vì:
D(X, Y) >a DOF, Yƒ) trong đó a là hang sốƯu điểm của phương pháp này là thích hợp với các đường biểu diễn khác nhau,giải thuật biến đối có độ phức tạp là O(nlgn) — với n là số chiều của dữ liệu chuỗi thờiVƯƠNG BÁ THỊNH - 09070465 14
Trang 31gian Tuy nhiên, nhược điểm lớn nhất của phương pháp nảy là rất khó giải quyết cácđường biểu diễn có chiều dài khác nhau.
2.2.2 Phương pháp biến đổi Wavelet rời rac (Discrete Wavelet
Transform - DWT)
Phương pháp thu giảm số chiều bằng bién đổi Wavelet rời rac do K Chan và W.Fu dé nghị [3] Phương pháp này biến đổi chuỗi dữ liệu ban đầu thành các đường Haarcơ bản Ngoài đường Haar còn có thé sử dụng các đường khác như Daubechies, Coiflet,Swmmier Tuy nhiên đường Haar thì đơn giản hon cho nên đã được sử dụng rất nhiềutrong khai phá dữ liệu chuỗi thời gian Đường Haar được định nghĩa theo công thức như
2.2.3 Phương pháp xấp xỉ gộp từng đoạn (Piecewise Aggregate
Approximation - PAA)
Phương pháp xấp xỉ gộp từng đoạn (Piecewise Aggregate Approximation — PAA)do E Keogh và các cộng sự đề nghị [7] Phương pháp này tuần tự xấp xỉ & giá trị liền kê
Trang 32nhau thành cùng một giá trị bằng trung bình cộng của & điểm đó Quá trình cứ tiếp tụcnhư vậy từ trái sang phải Kết quả cuối cùng là đường thăng có dạng bậc thang.
Hinh 2.5 Phép bién đổi DFT va DWT [16]
2.2.4 Phương pháp xấp xỉ hang số từng đoạn thích nghi (Adaptive
Piecewise Constant Approximation - APCA)
Phương pháp xdp xi hang số từng đoạn thích nghi (Adaptive Piecewise ConstantApproximation - APCA) do E Keogh và các cộng sự dé nghị [28] Phuong pháp nay khágiống phương pháp PAA, tuy nhiên các đoạn thang nam ngang nay có chiều dai khácnhau Những khoảng thời gian mà dir liệu dao động nhiều thì sẽ được biểu diễn bằng cácVƯƠNG BÁ THỊNH - 09070465 16
Trang 33đoạn thăng ngắn, còn nhưng khoảng thời gian ma dữ liệu dao động ít sẽ được biểu diễnbăng những đoạn dài, đây chính là tính “thích nghỉ” của giải thuật Độ phức tạp của phép
biên đôi là O(nlgn), với n là sô chiêu của dữ liệu chuôi thời gian
“XN
n m
APCA PAA PLA
Hình 2.6 Minh họa phép biến đổi APCA, PAA va PLA [16]
2.2.5 Phuong pháp xap xỉ tuyến tính từng đoạn (Piecewise Linear
Approximation - PLA)
Phương pháp xấp xi tuyến tinh từng đoạn (PLA) bién đôi chuỗi dữ liệu ban dauthành chuỗi các đoạn thăng tuyến tính Các đoạn thăng này có thể rời nhau (LinearRegression) hoặc liên tục (Linear Interpolation) Hình 2.7 minh họa về 2 dạng đoạn thăngLinear Regression và Linear Interpolation Hiện nay có 3 giải thuật biến doi PLA phobiến: Sliding Window, Top-Down, và Bottom-Up [8] Ngoài ra, cũng đã có các côngtrình liên quan đến lập chỉ mục giúp cải tiến hiệu quả của việc tìm kiếm tương tự trên dữliệu chuỗi thời gian [9] [12]
Phương pháp biến đổi PLA được dùng pho biến là do [8]:VY H6 trợ tìm kiếm tương tự chính xác
Trang 34Y Hỗ trợ nhiều độ đo khoảng cách.VY Hỗ trợ đồng thời khai phá văn bản và khai phá dữ liệu chuỗi thời gian.* Hỗ trợ các giải thuật gom cum và giải thuật phân loại.
VY Hỗ trợ phát hiện điểm thay đổi
Linear LinearInterpolation egression
Hình 2.7 Minh hoa 2 dạng đoạn thẳng trong biến đổi PLA [8]Sau đây chúng ta đi vào chỉ tiết của phương pháp
a Tìm đường thắng tốt nhất qua một tập điểmBài toán tìm đường thăng đi qua ø điểm đã được đặt ra rất nhiều Đường thang nàygọi là đường thang tốt nhất (best fit line) Có nhiều loại đường thăng tốt nhất, tùy theotừng cách định nghĩa Để đơn giản, chúng ta có thể xem đường thăng tốt nhất là đườngthăng đi qua ø điểm và tổng bình phương khoảng cách Euclid của các điểm so với đườngthăng này là nhỏ nhất
Với tập n điểm (x), yị) (x„ y„) thì đường thang tốt nhất có dạng y = ax+b, với
hệ sô a, b sao cho cực tiều tông sau:
Yb, -(ax +f
VUONG BA THINH - 09070465 18
Trang 35Dé thỏa mãn yêu câu trên, giá tri cua a, b được xác định theo công thức sau:
b Giai thuat Sliding Window
Giải thuật Sliding Window (cửa số trượt) sử dung một cửa số trượt với cạnh tráiđược neo tại điểm đầu tiên chưa được xấp xỉ tuyến tính Quá trình xấp xỉ là một quá trìnhtuần tự, lặp lại việc tuyến tính hóa đoạn dữ liệu được chứa trong cửa số với chiều dài cửasố tăng dan (bang cách trượt cạnh phải cửa số trên đoạn dữ liệu cần xấp xi) cho đến khinào sai số tuyến tính hóa của nó vượt quá một ngưỡng được chỉ định trước Đoạn đữ liệu
nam trong cửa số sẽ được xap xi thanh mot doan thang Sau đó quá trình được tiếp tục
với cạnh trái cửa số bây giờ được neo tại điểm ngay sau điểm cuối cùng vừa được tuyếntính hoá Quá trình sẽ được lặp đi lặp lại cho đến khi toàn bộ chuỗi dir liệu được chuyểnthành các đoạn thăng Hình 2.8 minh họa cho giải thuật này
Sliding Window là một giải thuật đơn giản, trực quan và đặc biệt là trực tuyến Mã
giả trên đây được trình bày ở dạng ban đầu của nó Đã có một số những điều chỉnh, tối ưu
được dé xuât nhăm cải tiên giải thuật ở dạng ban dau này.
Y Nhóm Koski với việc tăng biến i lên những khoảng & > 1 đối với dữ liệuECG dé tang tốc giải thuật Chăng hạn với & = 15 (tai tần số 400Hz), tốc độ
Trang 36giải thuật có thé tăng 15 lần với chỉ một hiệu ứng nhỏ ảnh hưởng lên kết
quả đâu ra.
Y Nhóm Vulling dựa trên nhận xét sai sỐ tuyến tính là một gia tri đơn điệukhông giảm đã đề xuất giản lược quá trình tính toán bằng cách thay vì kiểmtra mọi giá trỊ của 7 từ 2 cho đến giá tri sẽ được chon, ta sẽ chọn giá tri banđầu băng s, với s là chiều dai trung bình của các đoạn đã được chuyển thànhđoạn thăng trước đó Nếu sai số tuyến tính của đoạn đó vẫn nhỏ hơnmax error thì giải thuật tiếp tục tăng 7 như trong giải thuật ban đầu Ngượclại, nếu sai số tuyến tính của nó lớn hơn max error thì giải thuật sẽ giảm icho tới khi sai số của nó nhỏ hơn max error Sự điều chỉnh này có thé giúpgiải thuật cải tiến đáng kế tốc độ thực thi trong trường hợp độ dài trungbình của các đoạn thăng lớn so với độ lệch chuẩn của nó Nhóm Keogh tiénthêm một bước với dé nghị sử dung tìm kiếm nhị phân cho chiều dài của
segment.
Sliding Window là một giải thuật trực tuyến, có tac dung trong những trường hopmà chúng ta cần những kết quả nhanh chóng mà không cần phải có đầy đủ dữ liệu Tuynhiên, đây cũng chính là nhược điểm của Sliding Window khi nó không thể nhìn trước,thiếu cái nhìn toàn cục nên kết quả xấp xỉ thường không tốt lắm Một nhược điểm nữa làkhả năng kháng nhiễu yếu
c Giải thuật Top-Down
Giải thuật Top-Down xem xét mọi phân hoạch có thể của dữ liệu chuỗi thời giandé tìm ra điểm chia tốt nhất Sau đó sai số xấp xi của cả hai phan sẽ lần lượt được đem sosánh với một ngưỡng lỗi cho phép quy định trước Nếu phần nào có sai số lớn hơn giá trịngưỡng đó giải thuật Top-Down sẽ được gọi đệ quy trên phần đó cho đến khi mọi đoạnthăng đều có sai số xấp xỉ trong ngưỡng cho phép Hình 2.9 minh họa cho giải thuật này
VƯƠNG BÁ THỊNH - 09070465 20
Trang 37Cũng như Sliding Window, đã có nhiều nhà khoa học, nhóm nghiên cứu quan tamTop-Down đã đề xuât ra một sô những điêu chỉnh, tôi ưu đề cải tiên tôc độ, hiệu quả của
thuật toán, chang han nhu:
*x Nhóm Park va các cộng su dé nghị trước khi thực hiên giải thuật nên quéttrước để xác định những vùng lỗi, lõm Những điểm cực trị này sẽ được sửdụng để tạo nên bộ đoạn thăng ban đầu và sau đó giải thuật Top-Down mớiđược gọi trên những đoạn thắng này Sự điều chỉnh này mang đến hiệu quảđáng kề trên những bộ dữ liệu nhân tạo Tuy nhiên đối với bộ đữ liệu thậtvới lượng nhiều bat kì thì nó lại cho 1 kết quả rất tệ
vx Nhóm Smyth-Ge sử dụng thuật toán để tạo ra dạng biểu diễn đữ liệu có thểhỗ trợ cho mô hinh Markov an đối với bài toán tìm điểm dị thường và so
Seg TS = concat(Seg TS, create segment(T[anchor: anchor +
(i-DỊ):
anchor = anchor + 1;end;
Hình 2.8 Giải thuật Sliding Window [8]
Trang 38Algorithm Seg TS = Top Down(T , max_error)best_so_ far = inf;
for i =2 to length(T) - 2 // Tìm điểm tốt nhất dé phân chia chuỗi thời gian
improvement in approximation = improvement_splitting here(T,1);
if improvement_in_approximation < best_so_far
breakpoint = 1;best_so_far = improvement_in_approximation;end;
end;
// Đệ quy dé phan chia phân mảnh trái nếu can
if calculate_ error(T[1:breakpoint]) > max_ error
Seg TS = Top Down(T[1: breakpoint]):end;
// Đệ quy dé phân chia phân mảnh trái nếu can
if calculate_error( T[ breakpoint + 1:length(T)| ) > max_error
Seg TS = Top_Down(T[breakpoint + 1: length(T)]):end;
Hình 2.9 Giải thuật Top-Down [8]
d Giải thuật Bottom-Up
Ngược lại với Top-Down, giải thuật Bottom-Up bắt đầu với phân hoạch thô nhấtcủa dữ liệu chuỗi thời gian (z⁄2 đoạn thăng được dùng dé xấp xỉ ø điểm của chuỗi thờigian) Sau đó, chi phí (sai số) xấp xỉ được tính trên từng cặp đoạn thăng liền kề nhau.Giải thuật sẽ tiến hành lặp đi lặp lại quá trình hợp cặp đoạn thăng nào có chỉ phí xấp xỉthấp nhất lại với nhau, sau đó tính toán lại chi phí xấp xỉ của những cặp liên quan Quá
VƯƠNG BÁ THỊNH - 09070465 22
Trang 39trình lặp chỉ dừng khi nào chỉ phí xấp xỉ của cặp nhỏ nhất thoả mãn điều kiện dừng của
thuật toán Hình 2.10 minh họa cho giải thuật này.
Algorithm Seg TS = Bottom Up(T', max_error)
for i= 1 : 2 : length(T) // Khởi tao một xấp xi tốt
Seg TS = concat(Seg TS, create segment(T[i: 1+ 1 ]));end;
for i = 1: length(Seg TS) — 1 // Tinh chi phí của việc nối 2 segment lại
với nhau
merge cost(i) = calculate error([merge(Seg TS(1), Seg TS(i+1))]);end;
while min(merge_cost) < max_error // While not finished.
index = min(merge_cost); // Tim cặp có chi phí thấp nhất dé nói lạiSeg TS(index) = merge(Seg TS(ndex), SegTS(index+1))); // Nối
Hình 2.10 Giải thuật Bottom-Up [8]
e Nhận xét về giải thuật Sliding Window, Top-Down, va Bottom-UpĐầu tiên chúng ta phân tích độ phức tạp của 3 giải thuật Sliding Window, Top-Down và Bottom-Up trong cả 2 trường hợp tốt nhất và xấu nhất
Y Một số quy ước:
o So điêm dt liệu là ø.
Trang 40o Số đoạn thăng dự định tạo ra là K.o Chiều dài trung bình của các đoạn thang là L = n/K, điều nay dễ thay
từ hai quy ước trên.
o Chiều dài của đoạn thang / là L; L; được quy ước giới hạn là bội sốcủa L vì một thực tế là các thuật toán (ngoại trừ Top-Down) đều chokết quả rất tệ khi LZ; trở nên rat lớn (chăng hạn n/4)
o Độ phức tạp của thủ tục xap xi tao doan thang bang giai thuat hồiquy tuyến tính là 6(n) đối với tập S bất kì có n điểm
o Ching ta sẽ đánh giá cả trường hop tốt nhất và trường xấu nhất dé
rút ra cận dưới và cận trên tương ứng cho môi giải thuật.
Y Top-Down:
o Trường hợp tốt nhất xảy ra khi các điểm chia là các điểm giữa củamỗi chuỗi dữ liệu Khi đó tại vòng lặp dau tiên, đối với mỗi điểmchia i, giải thuật phải tiễn hành xấp xi hồi quy tuyến tinh lần lượt chochuỗi con /7, i] và chuỗi con /i+/, nj Do đó, chi phí thời gian tongcộng cho mỗi điểm chia tại vòng lặp đầu tiên là Øz), cho tất cả cácđiểm chia là Ø2) Sau đó, vòng lặp thứ hai tiến hành tìm điểm chiacho chuỗi [7, z⁄2] và chuỗi [z⁄2+1, n] Quá trình thực thi nay cho tacông thức đệ quy 7ø) = 27⁄2) + O(n’) với T(2) = c Do đó độphức tap trong trường hop tốt nhất là Ó/)
o Trường hợp xấu nhất xảy ra khi điểm chia luôn nằm về một phía (chỉđể lại hai điểm ở phía còn lại) Công thức lúc này trở thanh
Tín)=T (n-2)+0(/) Vì cần K đoạn thăng được tạo ra, do đó độ phức
tạp trong trường hợp xấu nhất là Ó/ø“K)
VƯƠNG BÁ THỊNH - 09070465 24