Tải bản đầy đủ (.pdf) (83 trang)

Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.52 MB, 83 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA
------------------------------------

NGUYỄN HUY KHA

PHÁT HIỆN BẤT THƯỜNG
TRÊN DỮ LIỆU CHUỖI THỜI GIAN
DỰA VÀO ĐIỂM CỰC TRỊ QUAN TRỌNG
CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH
MÃ SỐ CHUYÊN NGÀNH: 60.48.01

LUẬN VĂN THẠC SĨ

Tp.HCM, tháng 6 năm 2014


ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA
------------------------------------

NGUYỄN HUY KHA
PHÁT HIỆN BẤT THƯỜNG
TRÊN DỮ LIỆU CHUỖI THỜI GIAN
DỰA VÀO ĐIỂM CỰC TRỊ QUAN TRỌNG
CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH
MÃ SỐ CHUYÊN NGÀNH: 60.48.01

LUẬN VĂN THẠC SĨ


NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS. DƯƠNG TUẤN ANH

Tp.HCM, tháng 6 năm 2014

i


CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG – HCM
Cán bộ hướng dẫn khoa học : PGS.TS. DƯƠNG TUẤN ANH ................

Cán bộ chấm nhận xét 1 : ...........................................................................

Cán bộ chấm nhận xét 2 : ...........................................................................

Luận văn Thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp.
HCM ngày . . . . . tháng . . . . năm . . . . .

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
1. ..............................................................
2. ..............................................................
3. ..............................................................
4. ..............................................................
5. ..............................................................
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên
ngành sau khi luận văn đã được sửa chữa (nếu có).
CHỦ TỊCH HỘI ĐỒNG

TRƯỞNG KHOA KH&KT MÁY TÍNH


ii


ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: NGUYỄN HUY KHA ....................................MSHV:12070514 ............
Ngày, tháng, năm sinh: 01/7/1989..............................................Nơi sinh: Quảng Ngãi .....
Chuyên ngành: Khoa học Máy tính ............................................Mã số : 604801 ...............
I. TÊN ĐỀ TÀI: .................................................................................................................
PHÁT HIỆN BẤT THƯỜNG TRÊN DỮ LIỆU CHUỖI THỜI GIAN DỰA VÀO
ĐIỂM CỰC TRỊ QUAN TRỌNG....................................................................................
.............................................................................................................................................
II. NHIỆM VỤ VÀ NỘI DUNG: ....................................................................................
.............................................................................................................................................
.............................................................................................................................................
III. NGÀY GIAO NHIỆM VỤ : ....................................................................................
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: .....................................................................
V. CÁN BỘ HƯỚNG DẪN: PGS.TS. DƯƠNG TUẤN 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.

Tp. HCM, ngày . . . . tháng .. . . năm 2014
CÁN BỘ HƯỚNG DẪN
(Họ tên và chữ ký)


PGS.TS. DƯƠNG TUẤN ANH
TRƯỞNG KHOA KH&KT MÁY TÍNH
(Họ tên và chữ ký)

iii


LỜI CÁM ƠN
Tôi xin gửi lời cám ơn chân thành và sâu sắc nhất đến PGS.TS. Dương Tuấn Anh,
người Thầy đã ln tận tình chỉ bảo, hướng dẫn tơi trong suốt thời gian thực hiện đề
tài, giúp tôi rút ra nhiều bài học kinh nghiệm quý báu khi gặp phải những khó khăn và
tạo mọi điều kiện tốt nhất để tơi hồn thành luận văn này.
Tơi xin cám ơn các quý Thầy Cô, các anh chị và các bạn – những người đã giúp
đỡ và góp ý cho tơi có những kiến thức cần thiết để thực hiện luận văn. Con trân trọng
cám ơn đến gia đình, Ba Mẹ vì đã luôn là nguồn động viên to lớn, ủng hộ con vượt qua
những khó khăn trong suốt q trình học tập và làm việc.
Một lần nữa, tôi xin chân thành cảm ơn tất cả!

iv


TĨM TẮT LUẬN VĂN
Tìm kiếm bất thường là một trong những lĩnh vực nghiên cứu quan trọng trong
khai phá dữ liệu. Bất thường trong một tập dữ liệu, được định nghĩa đơn giản, như là
một kết quả quan sát khác biệt so với phần còn lại của tập dữ liệu. Tìm kiếm bất
thường được áp dụng trong nhiều ứng dụng như phát hiện thẻ tín dụng giả mạo, những
hoạt động phi pháp trong thương mại điện tử, dự báo thời tiết...
Trong đề tài này, chúng tơi trình bày cách tiếp cận mới trong việc tìm kiếm
chuỗi con bất thường trong tập chuỗi dữ liệu thời gian. Bước đầu phương pháp sẽ xác
định các ứng viên dựa vào điểm cực trị quan trọng, sau đó đồng nhất chiều dài các ứng

viên bằng phép biến hình vị tự, rời rạc hóa chúng và đưa vào giải thuật gom cụm phù
hợp. Cuối cùng chúng tơi tính tốn độ đo hệ số bất thường cục bộ theo cụm (CBLDF)
để xác định ứng viên bất thường.
Từ những kết quả đạt được và bằng thực nghiệm trên nhiều tập dữ liệu khác
nhau, chúng tôi đã thu được kết quả có độ hiệu quả cao về thời gian, mức độ chính xác
khả quan so với phương pháp HOT SAX.

v


ABSTRACT
Searching for anomalies is an important area of research in the world of data
mining. An anomaly in a dataset is defined informally as an observation that is
considerably different from the remainders. Anomaly detection has many uses in
numerous applications, including credit card fraud detection, discovery of criminal
activities in electronic commerce, weather prediction...

In this work, we present a new approach of finding anomalies in time series
dataset. First of all, so-called time series candidates, which represent characteristic
subsequences of the time series, are extracted from the time series using important
extreme points. These candidates afterwards are transformed into the same length by
using homothetic transformation. After being discretized by SAX method, they
become input for the appropriate clustering algorithm. Finally, we identify discords by
a measure, which is called cluster-based local discord factor (CBLDF).

We evaluate our work with a comprehensive set of experiments. The
experimental results show that our approach produces better time efficiency and the
same accuracy as HOT SAX algorithm.

vi



LỜI CAM ĐOAN
Tô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 này do chính tơi thực
hiện và chưa có phần nội dụng 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 20 tháng 6 năm 2014

Nguyễn Huy Kha

vii


MỤC LỤC
LỜI CÁM ƠN ................................................................................................................iv
TÓM TẮT LUẬN VĂN..................................................................................................v
ABSTRACT ...................................................................................................................vi
LỜI CAM ĐOAN ......................................................................................................... vii
MỤC LỤC ................................................................................................................... viii
DANH MỤC HÌNH ........................................................................................................x
DANH MỤC BẢNG .................................................................................................... xii
Chương 1. GIỚI THIỆU ĐỀ TÀI .................................................................................1
1.1.

Dữ liệu chuỗi thời gian ......................................................................................1

1.2.


Phát hiện bất thường trên dữ liệu chuỗi thời gian .............................................3

1.3.

Mục tiêu và giới hạn đề tài ................................................................................5

1.4.

Tóm lược những kết quả đạt được .....................................................................5

1.5.

Cấu trúc luận văn ...............................................................................................6

Chương 2. TỔNG THUẬT CÁC CƠNG TRÌNH LIÊN QUAN .................................7
2.1.

Độ đo tương tự ...................................................................................................7

2.1.1.

Độ đo Minkowski........................................................................................7

2.1.2.

Độ đo xoắn thời gian động ..........................................................................9

2.2.

Các phương pháp thu giảm số chiều ................................................................12


2.2.1.

Phương pháp khơng thích nghi dữ liệu .....................................................12

2.2.2.

Phương pháp thích nghi dữ liệu ................................................................15

2.3.

Rời rạc hóa dữ liệu bằng phương pháp xấp xỉ gộp ký hiệu hóa SAX .............17

2.3.1.

Chuẩn hóa dữ liệu .....................................................................................18

2.3.2.

Thu giảm số chiều qua PAA (Mục 2.2.1) .................................................19

2.3.3.

Ký hiệu hóa chuỗi thời gian ......................................................................19

2.3.4.

Hàm tính độ đo tương tự ...........................................................................20

2.4.


Phát hiện motif trên dữ liệu chuỗi thời gian ....................................................22

2.5.

Giải thuật phát hiện bất thường HOT SAX và các giải thuật liên quan ..........23

2.5.1.

Giải thuật BFDD (Brute Force Discord Discovery) .................................23

2.5.2.

Giải thuật HDD (Heuristic Discord Discovery)........................................25

2.5.3.

Giải thuật HOT SAX.................................................................................26

viii


2.6.

Kết luận ............................................................................................................29

Chương 3. CƠ SỞ LÝ THUYẾT VÀ PHƯƠNG PHÁP GIẢI QUYẾT VẤN ĐỀ....30
3.1.

Điểm cực trị quan trọng (Important Extreme Points) ......................................30


3.2. Phương pháp phát hiện motif và chuỗi con bất thường dựa vào điểm cực trị
quan trọng ..................................................................................................................33
3.3.

Phương pháp biến hình vị tự trên các ứng viên ...............................................34

3.3.1.

Khái niệm phép biến hình vị tự .................................................................36

3.3.2.

Lấy mẫu các ứng viên bằng phép vị tự .....................................................37

3.4.

Phát hiện điểm ngoại biên cục bộ theo cụm ....................................................38

3.4.1.

Điểm ngoại biên cục bộ theo cụm (cluster-based local outlier) ...............39

3.4.2.

Giải thuật phát hiện điểm ngoại biên cục bộ theo cụm .............................41

3.5. Từ giải thuật FindCBLOF đến giải thuật phát hiện chuỗi con bất thường cục
bộ theo cụm ................................................................................................................45
3.6.


Kết luận ............................................................................................................48

Chương 4. HIỆN THỰC VÀ THỬ NGHIỆM ............................................................49
4.1.

Kết quả thực nghiệm ........................................................................................49

4.1.1.

Dữ liệu ECG ..............................................................................................49

4.1.2.

Dữ liệu AEM .............................................................................................52

4.1.3.

Dữ liệu ERP ..............................................................................................54

4.1.4.

Dữ liệu STOCK ........................................................................................56

4.1.5.

Dữ liệu POWER........................................................................................58

4.2.


Bảng tổng kết và nhận xét................................................................................61

Chương 5. KẾT LUẬN ...............................................................................................63
5.1.

Tổng kết ...........................................................................................................63

5.2.

Những đóng góp của đề tài ..............................................................................64

5.3.

Những hạn chế của đề tài .................................................................................64

5.4.

Hướng phát triển ..............................................................................................65

TÀI LIỆU THAM KHẢO .............................................................................................66
PHỤ LỤC ....................................................................................................................... A
LÝ LỊCH TRÍCH NGANG ............................................................................................ C

ix


DANH MỤC HÌNH
Hình 1 - 1. Minh họa về dữ liệu chuỗi thời gian theo dõi doanh thu của một tập đồn..1
Hình 1 - 2. Đồ thị biểu diễn dữ liệu chuỗi thời gian điện tâm đồ (ECG) ........................2
Hình 1 - 3. Minh họa bất thường của dữ liệu chuỗi thời gian điện tâm đồ ECG ............3

Hình 2 - 1. Minh họa hình dạng dữ liệu chuỗi thời gian có hai đường giống nhau,
nhưng đường cơ bản khác nhau.......................................................................................9
Hình 2 - 2. Minh họa hình dạng dữ liệu chuỗi thời gian có hai đường giống nhau,
nhưng biên độ dao động khác nhau .................................................................................9
Hình 2 - 3. (a) Tính khoảng cách dựa vào phương pháp Euclid, (b) Tính khoảng cách
dựa vào phương pháp DWT ..........................................................................................10
Hình 2 - 4. Minh họa cách tính khoảng cách theo DWT ..............................................11
Hình 2 - 5. Minh họa biễu diễn dữ liệu chuỗi thời gian theo phương pháp PAA .........13
Hình 2 - 6. Minh họa phương pháp biểu diễn dữ liệu chuỗi thời gian theo phương pháp
DFT, DWT và PAA.......................................................................................................15
Hình 2 - 7. Minh họa cách biến đổi chuỗi thời gian theo phương pháp SVD, PACA và
PLA................................................................................................................................17
Hình 2 - 8. Minh họa phương pháp rời rạc hóa dữ liệu chuỗi thời gian bằng phương
pháp SAX. Kết quả thu được ta có chuỗi ký tự ffffffeeeddcbaabceedcbaaaaacddee. ..17
Hình 2 - 9. Phương pháp chuẩn hóa trung bình zero [15] .............................................18
Hình 2 - 10. Bảng thống kê dùng để tra những điểm ngắt theo phân bố Gauss với số
vùng phân bố từ 3 đến 10 ..............................................................................................19
Hình 2 - 11. Minh họa về rời rạc hóa dữ liệu ................................................................20
Hình 2 - 12. Minh họa 3 dạng biểu diễn chuỗi thời gian và các hàm tính khoảng cách
tương ứng. A) Chuỗi thời gian ban đầu và hàm tính khoảng cách Euclid. B) Dạng biểu
diễn PAA của chuỗi thời gian và hàm tính khoảng cách DR. C) Dạng biểu diễn SAX
và hàm tính khoảng cách MINDIST .............................................................................22
Hình 2 - 13. Hai cấu trúc dữ liệu hỗ trợ cho heuristic vịng lặp ngồi và heuristic vòng
lặp trong. Bên trái, một dãy các từ SAX, cột cuối cùng chứa số lần xuất hiện của mỗi
từ trong dãy. Bên phải, một cây gia tố (Augmented Trie) có nút lá chứa những chỉ mục
(vị trí) của từ SAX tương ứng trong dãy (nguồn [7])....................................................27
Hình 3 - 1. Điểm quan trọng với hệ số nén lần lượt là 91% và 94%. ...........................31
Hình 3 - 2. Điểm cực đại và điểm cực tiểu quan trọng .................................................31
Hình 3 - 3. Chuỗi dữ liệu ban đầu có chiều dài 470 điểm .............................................34
Hình 3 – 4. Chuỗi dữ liệu sau khi lấy mẫu có chiều dài 400 dùng phương pháp nội suy

spline bậc I .....................................................................................................................35
Hình 3 – 5. Chuỗi dữ liệu sau khi lấy mẫu có chiều dài 300 dùng phương pháp nội suy
spline bậc I .....................................................................................................................35
Hình 3 - 6. Minh họa phép vị tự tâm O, hệ số vị tự k = 1/2 ..........................................36
x


Hình 3 - 7. Chuỗi dữ liệu sau khi lấy mẫu có chiều dài 150 điểm dùng phép vị tự ......37
Hình 3 - 8. Chuỗi dữ liệu sau khi lấy mẫu có chiều dài 2000 điểm dùng phép vị tự ....38
Hình 3 - 9. Minh họa tập dữ liệu 2 chiều gồm 4 cụm ...................................................39
Hình 3 - 10. Phương pháp FindCBLDF ........................................................................46
Hình 4 - 1. Dữ liệu ECG 20000 điểm............................................................................50
Hình 4 - 2. Kết quả phương pháp FindCBLDF chạy với dữ liệu ECG 20000 điểm.....50
Hình 4 - 3. Kết quả giải thuật HOTSAX chạy với dữ liệu ECG 20000 điểm ...............51
Hình 4 - 4. Dữ liệu AEM 20000 điểm...........................................................................52
Hình 4 - 5. Kết quả phương pháp FindCBLDF chạy với dữ liệu AEM 20000 điểm ....53
Hình 4 - 6. Kết quả giải thuật HOTSAX chạy với dữ liệu AEM 20000 điểm ..............53
Hình 4 - 7. Dữ liệu ERP 25000 điểm ............................................................................54
Hình 4 - 8. Kết quả phương pháp FindCBLDF chạy với dữ liệu ERP 25000 điểm .....55
Hình 4 - 9. Kết quả giải thuật HOTSAX chạy với dữ liệu ERP 25000 điểm ...............56
Hình 4 - 10. Dữ liệu STOCK 20000 điểm ....................................................................56
Hình 4 - 11. Kết quả phương pháp FindCBLDF chạy với dữ liệu STOCK 20000 điểm
.......................................................................................................................................57
Hình 4 - 12. Kết quả giải thuật HOTSAX chạy với dữ liệu STOCK 20000 điểm........58
Hình 4 - 13. Dữ liệu POWER 20000 điểm ...................................................................59
Hình 4 - 14. Kết quả phương pháp FindCBLDF chạy với dữ liệu POWER 20000 điểm
.......................................................................................................................................59
Hình 4 - 15. Kết quả giải thuật HOTSAX chạy với dữ liệu POWER 20000 điểm .......60
Hình 4 - 16. Biểu đồ so sánh thời gian thực thi của 2 phương pháp trên 5 tập dữ liệu
khác nhau .......................................................................................................................62


xi


DANH MỤC BẢNG
Bảng 2 - 1. Mã giả giải thuật BFDD (nguồn [7]) ..........................................................24
Bảng 2 - 2. Mã giả giải thuật HDD (nguồn [7]) ............................................................26
Bảng 3 - 1. Giải thuật Find_First_Two tìm điểm cực trị quan trọng ............................32
Bảng 3 - 2. Giải thuật lấy ra các ứng viên motif / chuỗi con bất thường ......................33
Bảng 3 - 3. Giải thuật Squeezer .....................................................................................43
Bảng 3 - 4. Giải thuật FindCBLOF ...............................................................................44
Bảng 3 - 5. So sánh khung thức giữa 2 phương pháp FindCBLOF và FindCBLDF ....45
Bảng 4 - 1. Bảng thông số phương pháp FindCBLDF với dữ liệu ECG 20000 điểm ..50
Bảng 4 - 2. Bảng thông số giải thuật HOTSAX với dữ liệu ECG 20000 điểm ............51
Bảng 4 - 3. Bảng thông số phương pháp FindCBLDF với dữ liệu AEM 20000 điểm .52
Bảng 4 - 4. Bảng thông số giải thuật HOTSAX với dữ liệu AEM 20000 điểm ...........53
Bảng 4 - 5. Bảng thông số phương pháp FindCBLDF với dữ liệu ERP 25000 điểm ...54
Bảng 4 - 6. Bảng thông số giải thuật HOTSAX với dữ liệu ERP 25000 điểm .............55
Bảng 4 - 7. Bảng thông số phương pháp FindCBLDF với dữ liệu STOCK 20000 điểm
.......................................................................................................................................57
Bảng 4 - 8. Bảng thông số giải thuật HOTSAX với dữ liệu STOCK 20000 điểm .......58
Bảng 4 - 9. Bảng thông số phương pháp FindCBLDF với dữ liệu POWER 20000 điểm
.......................................................................................................................................59
Bảng 4 - 10. Bảng thông số giải thuật HOTSAX với dữ liệu POWER 20000 điểm ....60
Bảng 4 - 11. Bảng tổng kết thời gian thực thi của 2 phương pháp ...............................61

xii


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng


Chương 1.

GIỚI THIỆU ĐỀ TÀI

1.1. Dữ liệu chuỗi thời gian
Dữ liệu chuỗi thời gian hay chuỗi thời gian là sự quan sát các dữ liệu theo thời
gian tuần tự. Đối với loại dữ liệu này, cấu trúc dữ liệu có thể là hai hay nhiều chiều
trong đó có chiều thời gian, tức là dữ liệu được theo dõi và ghi lại tại một thời điểm
nhất định. Tuy nhiên, trong hầu hết các ứng dụng thực tế, dữ liệu được đo các cách
khác nhau trong một khoảng thời gian cố định nên để đơn giản hóa q trình lưu trữ
cũng như độ phức tạp của dữ liệu, người ta chỉ lưu lại thứ tự các giá trị dữ liệu theo
một trình tự thời gian nhất định.
Định nghĩa:
Chuỗi thời gian (Time Series) T = <t1, t2, …tn> là tập hợp có thứ tự các quan
sát đơn biến hoặc đa biến được đo sau những khoảng thời gian bằng nhau theo thời
gian. Trong đề tài này, chúng ta chỉ xem xét với ti là các giá trị thực.
Ví dụ chúng ta có chuỗi thời gian theo doanh thu hàng tháng của một tập đồn
như hình 1-1 bên dưới:
X = <7.5, 7.9, 9.6, 8.3, 8.1, 11.2, 12.8, 14, 13.4, 10.7, 11.5, 11, 10.6, 11.2, 13>
16

Doanh thu (tỷ VNĐ)

14
12
10
8
6
4

2
0
8/07

11/07

2/08

6/08

9/08

12/08

3/09

Tháng / Năm

Hình 1 - 1. Minh họa về dữ liệu chuỗi thời gian theo dõi doanh thu của một tập đoàn

Nguyễn Huy Kha - 12070514

-1-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

Trong các ứng dụng thực tế, có rất nhiều loại dữ liệu chuỗi thời gian như sự
theo dõi biến đổi giá của chứng khoán, dữ liệu đo điện tim đồ, dữ liệu theo dõi mực
nước sông hay là sự ghi lại việc truy cập các trang web của người dùng. Thông

thường, các loại dữ liệu chuỗi thời gian này là rất lớn, được đo và lưu trữ lại trong
một khoảng thời gian dài cho nên việc lưu trữ và khai phá dữ liệu này thường tốn
kém chi phí thời gian. Do đó việc sử dụng các cơng cụ khai phá dữ liệu trên máy
tính đã thu hút sự quan tâm, nghiên cứu và ứng dụng trong rất nhiều các lĩnh vực
trong những năm gần đây.

Hình 1 - 2. Đồ thị biểu diễn dữ liệu chuỗi thời gian điện tâm đồ (ECG)

Hình 1-2 mơ tả quá trình đo điện tâm đồ và được biểu diễn bằng đồ thị dữ liệu
chuỗi thời gian ECG.
Một số vấn đề khi nghiên cứu dữ liệu chuỗi thời gian:
-

Khối lượng dữ liệu:

Nguyễn Huy Kha - 12070514

-2-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

Một trong những đặc trưng của chuỗi thời gian là dữ liệu rất lớn. Ví
dụ khi đo đạc dữ liệu điện tâm đồ trong 1 giờ khoảng 1 Gigabyte. Đây là
một trong những vấn đề thách thức trong q trình phân tích, tính tốn và xử
lý dữ liệu chuỗi thời gian trong việc tạo ra kết quả được chính xác trong thời
gian hợp lý.
-

Phụ thuộc yếu tố chủ quan:

Trong thực tế, các kết quả dữ liệu chuỗi thời gian thu được chịu ảnh
hưởng yếu tố chủ quan của người đo dữ liệu, điều kiện và các cơng cụ đo…

-

Dữ liệu khơng đồng nhất:
Q trình thu thập dữ liệu chuỗi thời gian được đo trên những định
dạng khác nhau, số lượng và tần số lấy mẫu khơng đồng nhất cũng ảnh
hưởng đến tính tồn vẹn của dữ liệu. Thêm vào đó q trình đo đạc khơng
chính xác do nhiễu, thiếu một vài giá trị hay dữ liệu không sạch.

1.2. Phát hiện bất thường trên dữ liệu chuỗi thời gian
Một trong những vấn đề được quan tâm trong việc khai phá dữ liệu chuỗi thời
gian là phát hiện bất thường (Anomaly Detection): cho một chuỗi thời gian Q, và
một vài mơ hình hành vi bình thường (normal behavior), tìm tất cả những phần
thuộc Q có chứa bất thường, hay chứa những chuỗi con bất thường (những phần tử
ngoại biên – outliers).
Hình 1-3 bên dưới mơ tả chuỗi con bất thường, được tô đậm, trong dữ liệu
chuỗi thời gian điện tâm đồ ECG. Bằng việc quan sát biểu đồ, có thể nhận thấy sự
khác biệt của chuỗi dữ liệu thời gian được tô đậm so với phần cịn lại. Việc tìm
kiếm và nhận diện bất thường sẽ dựa trên những cơ sở lý thuyết được trình bày ở
những phần tiếp theo trong đề tài.

Hình 1 - 3. Minh họa bất thường của dữ liệu chuỗi thời gian điện tâm đồ ECG

Nguyễn Huy Kha - 12070514

-3-



Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

Chúng ta sẽ xem xét định nghĩa chuỗi con bất thường dựa trên ý tưởng tìm kiếm
tương tự (similarity search) do Keogh và các cộng sự đề xuất [7].
Định nghĩa 1: Khoảng cách (Distance): Dist là hàm tính khoảng cách của hai
đối số C và M, có tính đối xứng, tức là Dist(C, M) = Dist(M, C).
Định nghĩa 2: So trùng không-tầm-thường (Non-trivial Match): Cho một chuỗi
thời gian T, chứa chuỗi con C chiều dài n bắt đầu ở vị trí p và chuỗi con so trùng M
bắt đầu vị trí q, ta nói M và C là so trùng không-tầm-thường ở khoảng cách Dist(C,
M) nếu |p-q| ≥ n.
Định nghĩa 3: Chuỗi con bất thường (Time Series Discord)
Cho một chuỗi thời gian T, chuỗi con D chiều dài n bắt đầu ở vị trí l được gọi là
chuỗi con bất thường của T nếu D có khoảng cách lớn nhất đến chuỗi con so trùng
khơng-tầm-thường gần nhất của nó. Tức là, ∀ chuỗi con C của T, chuỗi con so trùng
không-tầm-thường MD của D, và chuỗi con so trùng không-tầm-thường MC của C,
min(Dist(D,MD)) > min(Dist(C,MC)).
Định nghĩa 3 có ưu điểm là người dùng chỉ việc cung cấp một đối số duy nhất
là chiều dài n của chuỗi con bất thường nhưng nhược điểm là nó khơng tận dụng
được những giải thuật dựa trên mật độ phân bố, và các giải thuật chia nhỏ vấn đề
như quy hoạch động, chia để trị, bottom-up,…do những nhận xét thu được ở [7].
Ngồi ra, để tìm kiếm chuỗi con bất thường theo định nghĩa này thì ta cần phải có
một hàm tính khoảng cách (hay cịn gọi là hàm tính độ đo tương tự) thích hợp. (chi
tiết ở phần sau của đề tài).
Vì vậy, chúng tơi sẽ đưa ra hướng tiếp cận và giải quyết cho bài toán này với sự
kết hợp: phương pháp nhận diện motif do Gruber và các cộng sự đưa ra năm 2006
[2] – dựa vào điểm cực trị quan trọng và phương pháp nhận diện bất thường dựa
theo độ đo hệ-số-bất-thường-cục-bộ-theo-cụm (CBLDF) do He và các cộng sự đưa
ra năm 2003 [6]:

Nguyễn Huy Kha - 12070514


-4-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

-

Trích lược các điểm cực trị quan trọng của chuỗi dữ liệu thời gian, từ đó
chọn ra các ứng viên motif / chuỗi con bất thường.

-

Vận dụng phép biến hình vị tự (homothetic transformation) [1] (mục 3.3) để
đồng nhất chiều dài các ứng viên. Sau đó chúng tơi sẽ rời rạc hóa các ứng
viên theo phương pháp xấp xỉ gộp ký hiệu hóa SAX [4].

-

Gom cụm tập các ứng viên bằng giải thuật gom cụm Squeezer – giải thuật
hoạt động trên tập dữ liệu có thuộc tính rời rạc (categorical dataset) [6].

-

Tính tốn các giá trị hệ-số-bất-thường-cục-bộ-theo-cụm CBLDF cho mỗi
ứng viên. Từ đó nhận diện chuỗi con bất thường (các phần tử ngoại biên)
theo độ đo đánh giá [6].

1.3. Mục tiêu và giới hạn đề tài
Mục tiêu chính của đề tài là nghiên cứu phương pháp phát hiện bất thường trên

dữ liệu chuỗi thời gian. Đề tài dựa trên nghiên cứu của Gruber và các cộng sự kết
hợp với nghiên cứu của He và các cộng sự. Phương pháp này dựa vào ý tưởng phân
đoạn những chuỗi dữ liệu thời gian nhờ vào những điểm cực trị quan trọng (mục
3.1), gom cụm các phân đoạn và tính tốn độ đo bất thường các ứng viên (mục 3.4
và 3.5) để tìm ra chuỗi con bất thường của chuỗi dữ liệu thời gian đó.
Kết quả thu được sẽ so sánh với giải thuật phát hiện bất thường HOT SAX [7]
(mục 2.5) về hai phương diện: độ hữu hiệu (thời gian chạy), độ chính xác của giải
thuật.
Chúng tơi chọn HOT SAX bởi vì phương pháp này được sử dụng rộng rãi để so
sánh với các giải thuật khác và có độ chính xác cao.

1.4. Tóm lược những kết quả đạt được
Trong giới hạn thời gian hiện thực, chúng tơi đã hiện thực chương trình tìm
kiếm chuỗi con bất thường có sự kết hợp của nhiều phương pháp: nhận diện các
ứng viên motif / chuỗi con bất thường, gom cụm dựa vào các điểm cực trị quan

Nguyễn Huy Kha - 12070514

-5-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

trọng, rời rạc hóa dữ liệu SAX các ứng viên, gom cụm và tính tốn hệ số đánh giá
bất thường để nhận diện.
Chương trình của chúng tôi chạy thực nghiệm với các thông số khác nhau cho
từng loại dữ liệu khác nhau để đánh giá, so sánh độ hiệu quả so với giải thuật HOT
SAX khi áp dụng vào bài tốn tìm kiếm chuỗi con bất thường. Qua thực nghiệm
chúng tôi thấy được những ưu điểm của cách tiếp cận mới: đem lại độ hiệu quả rõ
rệt về thời gian tính tốn và độ chính xác khả quan so với HOT SAX. Như vậy,

chương trình đã đáp ứng những yêu cầu và nhiệm vụ của đề tài.

1.5. Cấu trúc luận văn
-

Chương 2 chúng tôi sẽ giới thiệu qua các cơng trình liên quan đến luận văn
bao gồm giới thiệu về các phương pháp về độ đo tương tự giữa hai chuỗi
thời gian, các phương pháp về thu giảm số chiều trên chuỗi thời gian ban
đầu. Đồng thời chúng tôi cũng giới thiệu về phương pháp phát hiện motif
trên dữ liệu chuỗi thời gian, giải thuật phát hiện bất thường HOT SAX và
các giải thuật liên quan.

-

Chương 3 chúng tôi sẽ tập trung vào cơ sở lý thuyết và phương pháp giải
quyết vấn đề của đề tài bao gồm: định nghĩa các điểm cực trị quan trọng,
phương pháp xác định các ứng viên motif / chuỗi con bất thường do Gruber
và cộng sự giới thiệu, phép biến hình vị tự được áp dụng trên các ứng viên
để đồng nhất chiều dài, rời rạc hóa dữ liệu bằng phương pháp xấp xỉ gộp ký
hiệu hóa SAX, phương pháp FindCBLDF để tìm kiếm và đánh giá bất
thường trên dữ liệu chuỗi thời gian.

-

Chương 4 chúng tôi tiến hành thực nghiệm hệ thống phát hiện bất thường
trên các tập dữ liệu khác nhau. So sánh kết quả thu được với giải thuật HOT
SAX về thời gian chạy, độ chính xác trong kết quả tìm được.

-


Chương 5 là một số kết luận và hướng mở rộng của đề tài.

Nguyễn Huy Kha - 12070514

-6-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

Chương 2.

TỔNG THUẬT CÁC CƠNG TRÌNH
LIÊN QUAN

Chương này sẽ giới thiệu tổng quan các cơng trình liên quan đã được nghiên cứu
bao gồm các cơng trình về độ đo tương tự, phương pháp thu giảm số chiều, phương
pháp SAX rời rạc hóa dữ liệu, phát hiện motif trên dữ liệu chuỗi thời gian và giải
thuật phát hiện chuỗi con bất thường HOT SAX.

2.1. Độ đo tương tự
Trong hầu hết các bài toán về chuỗi thời gian, bài tốn tìm độ tương tự là một
trong những bài toán quan trọng nhất. Cho hai đối tượng O1 và O2, khoảng cách
giữa hai đối tượng này bằng 0 thì chúng được xem là giống nhau. Nếu khoảng cách
giữa chúng nhỏ hơn một giá trị r cho trước thì khoảng cách giữa chúng là tương tự
nhau. Gọi D(X,Y) là khoảng cách giữa hai đối tượng X và Y, ta có các tính chất sau:
a) D(X,Y) = 0 nếu và chỉ nếu X=Y.
b) D(X,Y) = D(Y,X).
c) D(X,Y) ≥ 0 với mọi X,Y.
d) D(X,Y) < D(X,Z) + D(Z,Y).
Cho hai chuỗi thời gian X và Y có dạng X=<x1, x2, …, xn> và Y=<y1, y2, …, yn>.

Độ tương tự giữa X và Y 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ự giữa hai chuỗi thời gian.

2.1.1. Độ đo Minkowski
Độ đo tương tự giữa hai chuỗi thời gian X và Y được xác định bằng công
thức Minkowski như sau:
𝑛

𝑝

𝑆𝑖𝑚(𝑋, 𝑌) = √∑

(𝑥𝑖 − 𝑦𝑖 )2

𝑖=1

Với:
a) p = 1: Độ đo Manhattan

Nguyễn Huy Kha - 12070514

-7-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

b) p = 2: Độ đo Euclid
c) p = 3: Độ đo Max
Ưu điểm:
o Tính tốn dễ dàng

o Có khả năng mở rộng cho nhiều bài toán khác như gom cụm
(clustering) và phân loại (classification) dữ liệu… và phù hợp với các
phép biến đổi thu giảm số chiều như: PAA [3], DFT [10], DWT
[11]…
Nhược điểm:
o Nhạy cảm với nhiễu
o Khơng thích hợp khi dữ liệu có đường cơ bản khác nhau (hình 2-1)
o Khơng thích hợp với dữ liệu có biên độ dao động khác nhau (hình 22)
Phương pháp khắc phục:
o Chuẩn hóa dữ liệu chuỗi thời gian trước khi áp dụng so trùng mẫu
trên dữ liệu dựa trên giá trị trung bình và độ lệch chuẩn X’=Xmean(X) hay X’=(X-mean(X))/Var(X) [8].
o Áp dụng phương pháp trung bình di chuyển để làm trơn các đường
biểu diễn chuỗi thời gian nghĩa là giá trị của chuỗi thời gian tại thời
điểm i được tính như sau:
𝑘

𝑋𝑖 = ∑
𝑗=−𝑘

𝑋𝑗+𝑘
2𝑘 + 1

o Áp dụng độ đo tương tự có sửa đổi dựa trên khoảng cách Euclid như
sau:
1
2
𝑆𝑖𝑚(𝑋, 𝑌) = √ ∑((𝑦𝑖 − 𝑥𝑖 ) − (𝑦𝐴 − 𝑥𝐴𝑖 ))
𝑛
1


1

𝑛

𝑛

𝑛−1
Trong đó:𝑥𝐴 = ∑𝑛−1
𝑖=0 𝑥𝑖 , 𝑦𝐴 = ∑𝑖=0 𝑦𝑖

Nguyễn Huy Kha - 12070514

-8-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

Hình 2 - 1. Minh họa hình dạng dữ liệu chuỗi thời gian có hai đường giống nhau,
nhưng đường cơ bản khác nhau

Hình 2 - 2. Minh họa hình dạng dữ liệu chuỗi thời gian có hai đường giống nhau,
nhưng biên độ dao động khác nhau

2.1.2. Độ đo xoắn thời gian động
Trong trường hợp so trùng giữa hai chuỗi thời gian X và Y. Đường biểu diễn
của chúng rất giống nhau nhưng chúng lệch nhau về thời gian. Nếu trong

Nguyễn Huy Kha - 12070514

-9-



Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

trường hợp này ta so sánh phần tử thứ i của hai chuỗi thời gian sẽ cho ra kết quả
không mong muốn. Để giải quyết vấn đề này ta có thể dùng phương pháp ánh
xạ một điểm đến nhiều điểm. Phương pháp này được gọi là phương pháp xoắn
thời gian động (Dynamic Time Warping - DTW) [9].

Hình 2 - 3. (a) Tính khoảng cách dựa vào phương pháp Euclid, (b) Tính khoảng cách dựa
vào phương pháp DWT

Hình 2-3.a và 2-3.b minh họa cho chúng ta cách tính khoảng cách dựa vào
phương pháp Euclid và DTW của hai chuỗi dữ liệu thời gian. Rõ ràng cách tính
ở hình 2-3.b giúp chúng ta loại bỏ được độ lệch pha của hai chuỗi dữ liệu thời
gian.
Cách tính khoảng cách dựa vào phương pháp DTW
Cho hai chuỗi thời gian X và Y và một thông số khung w gọi là khung cửa sổ
xoắn (warping window) với điều kiện là hai điểm i và j có thể ánh xạ với nhau
nếu |i - j| ≤ w. Dữ liệu ra là tổng khoảng cách của các điểm được ánh xạ với
nhau.
Cách tính đơn giản DTW là xây dựng một ma trận Dmxn với m=|X| và
n=|Y|.Khi đó Dij = d(xi, yi). Từ ma trận D ta duyệt qua ma trận từ ô (0, 0) đến ô
(m, n) thỏa mãn ràng buộc sau:
o Không được đi qua trái hay đi xuống
o Đường đi phải liên tục
o Ơ tại vị trí (i, j) thuộc đường đi phải thỏa |i – j| ≤ w

Nguyễn Huy Kha - 12070514


-10-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

o Giả sử có K ô đi từ ô (0,0) đến ô (m,n) thỏa mãn những điều kiện
trên, khi đó: 𝐷𝑇𝑊 (𝑄, 𝐶 ) =

𝑚𝑖𝑛⁡{√∑𝐾
𝑘−1 𝑤𝑘 }
𝐾

Hình 2-4 minh họa phương pháp tính khoảng cách theo DTW.

Hình 2 - 4. Minh họa cách tính khoảng cách theo DWT

Ngồi ra, có thể dùng qui hoạch động để giải quyết bài tốn này. Ta có thể áp
dụng cơng thức truy hồi tuyến tính để tính D(i, j).
D(i, j) = |xi+yi| + min {D(i-1, j),D(i-1, j-1),D(i, j-1)}
Ưu điểm:
o Phương pháp DTW phù hợp cho việc xác định độ tương tự giữa hai
chuỗi thời gian có hình dạng giống nhau nhưng chiều dài hình dạng
về mặt thời gian khác nhau.
o Cho kết quả chính xác hơn phương pháp tính khoảng cách bằng
phương pháp tính khoảng cách Euclid, đặc biệt trong các bài tốn có
dữ liệu nhỏ, bài tốn phân loại (classification) hay các bài toán gom
cụm (clustering)…
Nhược điểm:

Nguyễn Huy Kha - 12070514


-11-


Phát hiện bất thường trên dữ liệu chuỗi thời gian dựa vào điểm cực trị quan trọng

o Nhược điểm lớn nhất của phương pháp tính khoảng cách DTW là
thời gian chạy, có thể gấp hàng trăm hoặc nghìn lần phương pháp độ
đo Euclid. Giải thuật DTW lúc đầu đưa ra thơng số w = n (chiều dài
dữ liệu), khi đó độ phức tạp thuật tốn là O(n2). Do đó, người ta thay
đổi thông số w << n để độ phức tạp của thuật tốn giảm xuống cịn
O(wn).

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ó kích thước rất lớn. Trên cơ sở đó, người ta
dùng một số phương pháp chuẩn hóa lại dữ liệu thu thập thành một tập dữ liệu nhỏ
hơn đặc trưng cho dữ liệu đó. Bằng phương pháp này, thay vì thao tác truy vấn trên
dữ liệu chuỗi thời gian ban đầu, ta có thể thao tác trên dữ liệu chuỗi thời gian được
chuẩn hóa để giảm chi phí thời gian thao tác và khi cần ta cũng có thể chuyển dữ
liệu chuỗi thời gian đã chuẩn hóa này thành chuỗi thời gian ban đầu. Phương pháp
này gọi là phương pháp thu giảm số chiều dữ liệu. Cụ thể phương pháp này như
sau:
Cho chuỗi thời gian X = <x1, x2, …, xn> có n chiều, ta thu giảm chiều dữ liệu
xuống cịn k chiều Y = <y1, y2, …, yn> với k < n là hệ số đường cơ bản. Nếu k càng
lớn thì đường phục hồi dữ liệu chuỗi thời gian ban đầu càng chính xác. Như vậy
thay vì tính tốn trên dữ liệu chuỗi thời gian ban đầu, ta có thể tính tốn trên dữ liệu
chuỗi thời gian mới có số chiều nhỏ hơn.
Các phương pháp thu giảm số chiều được chia làm 2 nhóm chính:

2.2.1. Phương pháp khơng thích nghi dữ liệu

Đặc trưng của phương pháp khơng thích nghi dữ liệu là các đường cơ bản là
những đường được định nghĩa trước không phụ thuộc vào dữ liệu như đường
hình sin, cosin hay đường haar…
Các phương pháp đề nghị cho đường khơng thích nghi dữ liệu bao gồm một
số phương pháp như: xấp xỉ gộp từng đoạn (Piecewise Aggregate
Approximation - PAA) [3], biến đổi Fourier rời rạc (Discrete Fourier Transform

Nguyễn Huy Kha - 12070514

-12-


×