1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phát hiện motif trên dữ liệu chuỗi thời gian dựa vào giải thuật sequitur

84 24 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 84
Dung lượng 2,68 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Luận văn cũng đề xuất sử dụng các độ dài motif tìm được từ cách tiếp cận này để làm tham số chiều dài cho các giải thuật phát hiện motif khác, đồng thời áp dụng các motif tìm được để phá

Trang 2

-

NGUYỄN NGỌC PHIÊN

PHÁT HIỆN MOTIF TRÊN DỮ LIỆU CHUỖI THỜI

GIAN DỰA VÀO GIẢI THUẬT SEQUITUR

CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH

MÃ SỐ: 60.48.01.01

LUẬN VĂN THẠC SĨ

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

Trang 3

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG TP 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: TS Phạm Văn Chung

Cán bộ chấm nhận xét 2: TS Lê Văn Quốc Anh

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 18 tháng 07 năm 2017

Thành phần hội đồng đánh giá luận văn thạc sỹ gồm:

1 PGS.TS Quản Thành Thơ – Chủ tịch

2 TS Nguyễn An Khương – Thư ký

3 TS Phạm Văn Chung – Phản biện 1

4 TS Lê Văn Quốc Anh – Phản biện 2

5 TS Trần Tuấn Anh – Ủy viên

Xác nhận của chủ tịch hội đồng đánh giá luận văn 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ó)

Trang 4

ĐẠ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 NGỌC PHIÊN MSHV: 1570010

Ngày, tháng, năm sinh: 16/11/1992 Nơi sinh:Quảng Ngãi Chuyên ngành: Khoa học máy tính Mã số : 60.48.01.01 I TÊN ĐỀ TÀI: Phát hiện motif trên dữ liệu chuỗi thời gian dựa vào giải thuật Sequitur

II NHIỆM VỤ VÀ NỘI DUNG:

………

… ………

III NGÀY GIAO NHIỆM VỤ : 16/01/2017

IV NGÀY HOÀN THÀNH NHIỆM VỤ : 18/06/2017

V CÁN BỘ HƯỚNG DẪN : PGS TS DƯƠNG TUẤN ANH

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

(Họ tên và chữ ký)

PGS TS Dương Tuấn Anh

Trang 5

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,

người Thầy đã tận tình chỉ bảo tôi trong suốt quá trình thực hiện luận văn và tạo

mọi điều kiện tốt nhất để tôi có thể hoàn thành luận văn này

Tôi xin cảm ơn quý thầy cô ở trường Đại học Bách Khoa đã truyền đạt các

kiến thức cần thiết trong quá trình học tập tại trường

Tôi xin cảm ơn gia đình, bạn bè và đồng nghiệp đã động viên và tạo mọi điều

kiện thuận lợi để tôi có thể tiếp tục theo đuổi việc học tập và nghiên cứu

Trang 6

TÓM TẮT LUẬN VĂN

Việc khai phá dữ liệu chuỗi thời gian đã và đang thu hút rất nhiều sự nghiên

cứu trên thế giới Trong đó việc nghiên cứu phát hiện motif rất hữu ích cho các

công việc khai phá dữ liệu chuỗi thời gian

Một trong những giải thuật phát hiện motif được dùng phổ biến là chiếu

ngẫu nhiên (Random Projection) Phương pháp này được thực hiện đơn giản, dễ

tiếp cận Tuy nhiên phương pháp này có nhược điểm chạy rất lâu với dữ liệu chuỗi

thời gian có kích thước lớn Ngoài ra, hầu hết các giải thuật phát hiện motif đòi hỏi phải cung cấp tham số chiều dài motif cho trước, đây chính là một trong những trở ngại lớn khi sử dụng các giải thuật phát hiện motif

Luận văn này sẽ dựa vào một tiếp cận mới để phát hiện motif mà không cần

xác định trước tham số chiều dài của motif Cách tiếp cận này dựa vào giải thuật Sequitur Luận văn cũng đề xuất sử dụng các độ dài motif tìm được từ cách tiếp cận này để làm tham số chiều dài cho các giải thuật phát hiện motif khác, đồng thời áp dụng các motif tìm được để phát hiện tính chu kì trên dữ liệu chuỗi thời gian

Trang 7

ABSTRACT

Time series data mining has been attracted a huge range of reseach in the world,

in which the invention and discovery of motifs are very useful for time series data mining

Random Projection is one of the most common methods that are used in the motif detection algorithms This method is simple and accessible However, this kind of work has some weaknesses such as processing time, and large size data cosumming Moreover, most of the algorithms require a given length parameter motif That is one of the major obstacles of motif detection algorithms

This thesis applies a new approach which is based on the Sequitur algorithm to detect motif without identifying pre-length parameter of the motif Besides, the use

of motif length delivered from this approach for other motif detection algorithms is suggested, and detects the period on time series data

Trang 8

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 là do chính tôi thực hiện và 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 07 tháng 06 năm 2017

Nguyễn Ngọc Phiên

Trang 9

MỤC LỤC

LỜI CẢM ƠN i

TÓM TẮT LUẬN VĂN ii

ABSTRACT iii

LỜI CAM ĐOAN iv

CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI 1

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

1.2 Khai phá thông tin trên dữ liệu chuỗi thời gian 1

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

1.4 Mục tiêu và giới hạn của đề tài 4

1.5 Những kết quả đạt được 5

1.6 Cấu trúc của luận văn 6

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 7

2.1 Một số khái niệm cơ bản 7

2.1.1 Chuỗi thời gian (Time series) 7

2.1.2 Chuỗi con (Subsequence) 7

2.1.3 Cửa sổ trượt (Slide window) 8

2.1.4 Trùng khớp (Match) 8

2.1.5 Trùng khớp không tầm thường (Non-Self Match) 8

2.1.6 K-motif 8

2.1.7 Chu kì 9

2.2 Các công trình về độ đo tương tự 10

2.2.1 Độ đo Minkowski 10

2.2.2 Độ đo xoắn thời gian động (Dynamic Time Warping- DTW) 11

2.3 Các công trình về biểu diễn chuỗi thời gian 13

2.3.1 Phương pháp xấp xỉ gộp từng đoạn (PAA) 14

2.3.2 Phương pháp xấp xỉ gộp từng đoạn mở rộng EPAA (Extended PAA) 16

2.3.3 Phép xấp xỉ gộp ký hiệu hóa SAX 17

Trang 10

2.3.4 Phương pháp xấp xỉ gộp ký hiệu hoá mở rộng ESAX (Extended

SAX) 22

2.4 Kết luận 24

CHƯƠNG 3: TỔNG THUẬT CÁC CÔNG TRÌNH LIÊN QUAN 25

3.1 Phát hiện 1-Motif dựa vào giải thuật Brute Force 25

3.2 Phát hiện Motif dựa vào giải thuật Random Projecttion 26

3.3 Phát hiện Motif dựa vào giải thuật Sequitur 28

3.3.1 Giải thuật Sequitur 28

3.3.2 Phát hiện motif dựa vào giải thuật Sequitur 31

CHƯƠNG 4: PHƯƠNG PHÁP GIẢI QUYẾT VẤN ĐỀ 33

4.1 Đặt vấn đề 33

4.2 Hướng giải quyết 34

4.2.1 Thu giảm số theo phép biến đổi EPAA 34

4.2.2 Rời rạc hoá dữ liệu theo phép biến đổi ESAX 34

4.2.3 Xây dựng phương pháp đề xuất dựa vào giải thuật Sequitur 34

4.2.4 Ước lượng chiều dài 1-motif 35

4.2.5 Phát hiện tính chu kì dựa vào motif 36

CHƯƠNG 5: THỰC NGHIỆM 39

5.1 Thực nghiệm 1: so sánh kết quả motif của giải thuật Sequitur trên phép biến đổi SAX và ESAX 40

5.1.1 Tập dữ liệu ECG 3500 điểm 40

5.1.2 Tập dữ liệu ECG 14000 điểm 41

5.1.3 Tập dữ liệu RIVER 7500 điểm 41

5.1.4 Tập dữ liệu WINGDING 2500 điểm 42

5.1.5 Dữ liệu ERP 10120 điểm 43

5.2 Thực nghiệm 2: ước lượng độ dài 1-motif và phát hiện 1-motif 44

5.2.1 Ước lượng độ dài 1-motif và phát hiện 1-motif 44

5.2.2 Chất lượng motif 54

5.2.3 Thời gian thực thi 58

5.2.4 Kết luận 60

5.3 Thực nghiệm 3: Ứng dụng phát hiện chu kì dựa vào motif 60

Trang 11

5.3.1 Dữ liệu điện tâm đồ ECG 14000 điểm 60

5.3.2 Dữ liệu điện tâm đồ ECG 7000 điểm 61

5.3.3 Dữ liệu dòng chảy RIVER 7500 điểm 61

5.3.4 Dữ liệu công nghiệp WINDING 5990 điểm 62

CHƯƠNG 6: KẾT LUẬN 63

6.1 Tổng kết 63

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

6.3 Hướng phát triển 64

TÀI LIỆU THAM KHẢO 65 PHỤ LỤC: BẢNG ĐỐI CHIẾU THUẬT NGỮ ANH-VIỆT A

LÝ LỊCH TRÍCH NGANG C

Trang 12

DANH SÁCH BẢNG VÀ HÌNH ẢNH

Hình 1.1 Dữ liệu điện tâm đồ 1

Bảng 1.1 Cách tiếp cận chung cho các nhiệm vụ khai phá dữ liệu 3

Hình 1.2 Một minh hoạ chuỗi con motif 4

Hình 1.3 Một minh hoạ chuỗi con bất thường 4

Hình 2.1 Một minh hoạ về chuỗi con 7

Hình 2.2 Chuỗi C và M khớp với nhau 8

Hình 2.3 Khoảng cách hai motif < 2R (A); Khoảng cách hai motif > 2R (B) ([8]) 9

Hình 2.4 Minh hoạ sự khác nhau giữa hai độ đo Euclid và DTW 12

Hình 2.5 Một ví dụ đường xoắn [5] 13

Hình 2.6 Phương pháp biểu diễn PAA với n = 128, w=8 ([7]) 15

Hình 2.7 Vài điểm quan trọng bị mất khi chỉ biểu diễn bằng PAA [1] 16

Hình 2.8 Minh hoạ các vị trí Pmin, Pmax, Pmid [1] 17

Hình 2.9 Phương pháp chuẩn hóa trung bình zero [12] 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 ([7]) 19

Hình 2.11 Minh họa về rời rạc hóa dữ liệu ([7]) 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 ([7]) 22

Hình 2.13 Dữ liệu tài chính được biểu diễn bằng ESAX ([1]) 23

Bảng 2.1 Trung bình kết quả tìm kiếm trên tập dữ liệu 5000, với kích thước tập ký tự alphabetsize = 6, số chiều thu giảm của SAX là 16 và số chiều thu giảm của ESAX là 48 [1] 24

Hình 2.14 Minh hoạ tìm kiếm bằng phép biến đổi SAX và ESAX, (a) chuỗi cần tìm kiếm, (b) (c) các kết quả được tìm thấy bởi ESAX, (d) (e) (f) (i) (j) các kết quả được tìm thấy bởi SAX [1] 24

Bảng 3.1 Giải thuật Brute Force phát hiện 1- Motif [8] 26

Hình 3.1 Bảng chứa tất cả các chuỗi con từ cửa sổ trượt 27

Hình 3.2 Minh họa việc chiếu ngẫu nhiên lên cột 1 và 2, cập nhật vào 28

Hình 3.3 Minh họa việc chiếu ngẫu nhiên lên cột 2 và 4, cập nhật vào 28

Bảng 3.2 Ví dụ về giải thuật Sequitur 30

Trang 13

Bảng 3.3 Giải thuật Sequitur [8] 30

Bảng 4.1 Ví dụ về giải thuật Sequitur 34

Bảng 4.2 Giải thuật phát hiện chu kì [15] 37

Bảng 4.3 Giải thuật tính chu kì dựa vào motif [15] 38

Hình 5.1 Biểu diễn motif của giải thuật Sequitur_SAX trên dữ liệu ECG 40

Hình 5.2 Biểu diễn motif của giải thuật Sequitur_ESAX trên dữ liệu ECG 40

Hình 5.3 Biểu diễn motif của giải thuật Sequitur_SAX trên dữ liệu ECG 41

Hình 5.4 Biểu diễn motif của giải thuật Sequitur_ESAX trên dữ liệu ECG 41

Hình 5.5 Biểu diễn motif của giải thuật Sequitur_SAX trên dữ liệu RIVER 42 Hình 5.6 Biểu diễn motif của giải thuật Sequitur_ESAX trên dữ liệu RIVER.42 Hình 5.7 Biểu diễn motif của giải thuật Sequitur_SAX trên dữ liệu WINDING 42

Hình 5.8 Biểu diễn motif của giải thuật Sequitur_ESAX trên dữ liệu WINDING 43

Hình 5.9 Biểu diễn motif của giải thuật Sequitur_SAX trên dữ liệu ERP 43

Hình 5.10 Biểu diễn motif của giải thuật Sequitur_ESAX trên dữ liệu ERP 44

Bảng 5.1 So sánh kết quả số lƣợng motif tìm thấy bởi Sequitur_SAX và Sequitur_ESAX 44

Hình 5.11 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu ECG 45

Bảng 5.2 Ví dụ một phần luật văn phạm thu đƣợc của dữ liệu ECG 3500 điểm 46

Hình 5.12 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu ECG46 Hình 5.13 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu ECG 47

Hình 5.14 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu ECG47 Hình 5.15 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu ECG 48

Hình 5.16 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu ECG48 Hình 5.17 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu ECG 48

Hình 5.18 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu ECG49 Hình 5.19 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu STOCK 49

Trang 14

Hình 5.20 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu STOCK 50Hình 5.21 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu STOCK 50Hình 5.22 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu STOCK 50Hình 5.23 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu WINDING 51Hình 5.24 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu WINDING 51Hình 5.25 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu ERP 52Hình 5.26 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu ERP 52Hình 5.27 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu EEG 53Hình 5.28 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu EEG53Hình 5.29 Kết quả mọi motif tìm thấy của giải thuật Sequitur_ESAX của dữ liệu RIVER 53Hình 5.30 Kết quả 1-motif tìm thấy của giải thuật RP_SAX của dữ liệu RIVER 54Hình 5.31 Motif tìm đƣợc với giải thuật Sequitur_ESAX trên dữ liệu ECG 54Hình 5.32 1-motif tìm đƣợc với giải thuật RP_SAX trên dữ liệu ECG 55Hình 5.33 Motif tìm đƣợc với giải thuật Sequitur_ESAX trên dữ liệu ERP 55Hình 5.34 1-motif tìm đƣợc với giải thuật RP_SAX trên dữ liệu ERP 56Hình 5.35 Motif tìm đƣợc với giải thuật Sequitur_ESAX trên dữ liệu RIVER.56Hình 5.36 1-motif tìm đƣợc với giải thuật RP_SAX trên dữ liệu RIVER 57Hình 5.37 Motif tìm đƣợc với giải thuật Sequitur_ESAX trên dữ liệu WINDING 57Hình 5.38 1-motif tìm đƣợc với giải thuật RP_SAX trên dữ liệu WINDING 58Bảng 5.3 Thời gian thực thi của giải pháp đề xuất và giải thuật RP 59Hình 5.39 Kết quả đánh giá thời gian thực thi (msec) trên các tập dữ liệu 59Hình 5.40 Kết quả phát hiện chu kì trên tập dữ liệu ECG 14000 điểm 60Hình 5.41 Kết quả phát hiện chu kì trên tập dữ liệu ECG 7000 điểm 61Hình 5.42 Kết quả phát hiện chu kì trên tập dữ liệu RIVER 7500 điểm 61

Trang 15

Hình 5.43 Kết quả phát hiện chu kì trên tập dữ liệu WINDING 5990 điểm 62

Trang 16

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 là dữ liệu đo đạc được một cách tuần tự theo thời gian Đối tượng dữ liệu có thể có hai hay nhiều chiều nhưng trong đó phải có một chiều

là thời gian Có rất nhiều dữ liệu có yếu tố thời gian như dữ liệu về giá chứng

khoán, điện tâm đồ (Hình 1.1), mực nước, lưu lượng truyền trên mạng, dữ liệu tài

chính, thiên văn, thời tiết, mức độ ô nhiễm môi trường, …

Hình 1.1 Dữ liệu điện tâm đồ

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 thường 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 thường có chi phí rất lớn về thời gian thực thi và tài nguyên bộ nhớ

Do đó việc nghiên cứu các phương pháp hiệu quả để khai phá các dữ liệu chuỗi thời gian rất quan trọng và thu hút rất nhiều sự quan tâm

1.2 Khai phá thông tin trên dữ liệu chuỗi thời gian

Việc khai phá dữ liệu chuỗi thời gian đã và hiện thu hút rất nhiều sự nghiên cứu trên thế giới Dữ liệu chuỗi thời gian xuất hiện rất nhiều trong các lĩnh vực trong công nghệ hiện nay, cụ thể là một số lĩnh vực nghiên cứu sau:

Trang 17

 Lập chỉ mục (Indexing): cho một chuỗi thời gian truy vấn Q, và một hàm tính

độ tương tự hoặc độ sai biệt D(Q,C), tìm những chuỗi thời gian tương tự nhất với Q trong cơ sở dữ liệu nào đó

 Gom cụm (Clustering): tìm những sự phân nhóm, gom cụm dữ liệu theo tự

nhiên của những chuỗi thời gian trong cơ sở dữ liệu thông qua một hàm tính

độ tương tự D(Q,C)

 Phân lớp (Classification): cho một dữ liệu chuỗi thời gian chưa gán nhóm Q,

gán nó vào một trong những nhóm dữ liệu đã được định nghĩa trước

 Tổng hợp (Summarization): cho chuỗi thời gian Q có n điểm dữ liệu trong

đó n là con số rất lớn, tạo một sự xấp xỉ của Q để vừa khít theo một giới hạn

nào đó (chẳng hạn màn hình máy tính, trang giấy…) sao cho vẫn duy trì những đặc trưng bản chất của nó

 Phát hiện bất thường (Abnormaly detection): cho một chuỗi thời gian Q,

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

 Phát hiện Motif (Motif detection) cho một chuỗi thời gian Q, motif là chuỗi

con chưa biết trước xuất hiện nhiều lần trong một chuỗi dữ liệu chuỗi thời

gian dài hơn Khái niệm này được tổng quát hóa thành bài toán tìm kiếm

k-motif, với kết quả cần tìm là k nhóm motif đầu tiên Phát hiện motif trong dữ

liệu chuỗi thời gian là một công việc quan trọng trong khai phá dữ liệu chuỗi thời gian

Vì dữ liệu chuỗi thời gian là rất lớn, không lưu trữ đủ trong bộ nhớ chính, do đó cần rất nhiều lần truy cập bộ nhớ ngoài, gây ra hiện tượng thắt cổ chai cho các nhiệm vụ khai phá dữ liệu (dù là hiện nay tốc độ truy xuất đĩa đã được cải thiện đáng kể, nhưng tốc độ gia tăng kích thước dữ liệu chuỗi thời gian là nhanh hơn rất nhiều lần) Để hạn chế tối đa số lần truy cập đĩa người ta thường dùng xấp xỉ các chuỗi dữ liệu sao cho vừa khớp với bộ nhớ chính Một khung chung để thực hiện

các tác vụ khai phá dữ liệu chuỗi thời gian được đề ra ở [1] Cách tiếp cận cơ bản này được chỉ ra trong Bảng 1.1 như sau:

Trang 18

1 Tạo một sự xấp xỉ dữ liệu để nó vừa khớp với bộ nhớ chính, nhưng vẫn duy trì các đặc trưng cần quan tâm

2 Giải quyết bài toán với dữ liệu xấp xỉ trong bộ nhớ chính

3 Truy cập dữ liệu gốc để sau đó kiểm lời giải ở bước 2, bổ sung lời giải sao cho chính xác với dữ liệu gốc

Bảng 1.1 Cách tiếp cận chung cho các nhiệm vụ khai phá dữ liệu

Hiệu quả của khung chung này phụ thuộc nhiều vào chất lượng của phương pháp mà ta xấp xỉ ở bước 1 Nếu ta xấp xỉ càng gần với dữ liệu gốc thì lời giải mà ta

có được trong bộ nhớ chính sẽ càng gần với lời giải có được với dữ liệu gốc và dẫn đến số lần truy cập đĩa ngoài ở bước 3 là càng ít Do vậy nên đã có nhiều nghiên cứu về việc xấp xỉ và để so sánh các phương pháp xấp xỉ

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

Phát hiện motif là tìm ra 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.2) Phát hiện bất thường (abnormaly) 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.3)

Trong khi phát hiện bất thường kết quả trả về đòi hỏi phải là kết quả chính xác

thì phát hiện motif kết quả trả về có thể là một kết quả xấp xỉ Hai hướng tiếp cận chính của các giải thuật phát hiện motif là:

 Phát hiện motif chính xác (exact motif): là việc ta thực hiện trực tiếp trên dữ

liệu thô thông qua giải thuật brute-force làm nền tảng từ đó có thể cải tiến giải thuật bằng cách áp dụng một số heuristic nhằm giảm độ phức tạp cho giải thuật cho giải thuật Hầu hết các giải thuật theo hướng này có tính đúng

và tính đầy đủ cao tuy nhiên tính hiệu quả không cao và chỉ phù hợp với dữ liệu có kích thước nhỏ

 Phát hiện motif xấp xỉ (approximate motif): dữ 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 dữ

Trang 19

liệu Trong quá trình khai phá dữ liệu có thể áp dụng một số tính chất dựa trên xác suất, tính ngẫu nhiên Hướng tiếp cận này giúp tăng tính hiệu quả của giải thuật trong khi tính đúng và tính đầy đủ vẫn có thể chấp nhận được đồng thời nó phù hợp với dữ liệu có kích thước lớn

Hình 1.2 Một minh hoạ chuỗi con motif

Hình 1.3 Một minh hoạ chuỗi con bất thường 1.4 Mục tiêu và giới hạn của đề tài

Mục tiêu chính của luận văn là nghiên cứu phương pháp phát hiện motif trên dữ

liệu chuỗi thời gian Đề tài này dựa trên nghiên cứu Yuan Li và Jessica Lin đề xuất năm 2010 và 2012 [11, 17] về cách sử dụng suy diễn văn phạm của giải thuật

Sequitur để phát hiện motif trên dữ liệu chuỗi thời gian Tuy nhiên nhóm tác giả bài báo trên chưa tiến hành thực nghiệm, so sánh với các giải thuật phát hiện motif

trước đó, cũng như nhóm tác giả chỉ tiến hành thực nghiệm trên 02 tập dữ liệu là ECG và WINDING Do đó, để có cái nhìn khách quan hơn về phương pháp phát

hiện motif này chúng tôi tiến hành thực hiện với các nội dung sau:

Trang 20

- Tìm hiểu về phép gộp xấp xỉ ký hiệu hóa SAX và phép gộp xấp xỉ kí hiệu hóa mở rộng ESAX

- Tìm hiểu về giải thuật Sequitur với phép biến đổi SAX và ESAX

- Đề xuất phương pháp phát hiện motif trên dữ liệu chuỗi thời gian dựa vào

giải thuật Sequitur và phép biến đổi ESAX

- Trực quan hóa kết quả phát hiện motif thu được

- Chúng tôi tiến hành thực nghiệm trên nhiều tập dữ liệu, so sánh giữa các

phương pháp phát hiện motif với nhau: giải thuật Sequitur với phép biến

đổi SAX và ESAX để lựa chọn ra phương pháp tiếp cận phù hợp Ứng

dụng kết quả độ dài motif thu được từ phương pháp đề xuất để xác định tham số độ dài motif cho các giải thuật phát hiện motif khác như giải

thuật chiếu ngẫu nhiên RP Sau đó chúng tôi so sánh, đánh giá kết quả đạt

được giữa giải thuật Sequitur với phép biến đổi ESAX và giải thuật chiếu

ngẫu nhiên RP

- Ứng dụng phát hiện motif tìm được để phát hiện tính chu kì trên dữ liệu

chuỗi thời gian

1.5 Những kết quả đạt được

Trong giới hạn thời gian làm luận văn, chúng tôi đã hiện thực hệ thống phát

hiện motif dữ liệu chuỗi thời gian, gồm 5 phần chính: phần tiền xử lý dữ liệu, phần rời rạc hoá chuỗi dữ liệu chuỗi thời gian, phần các giải thuật phát hiện motif, phần

trực quan hóa dữ liệu và phần ứng dụng để tìm tính chu kì trên dữ liệu chuỗi thời gian

Trong phần thứ nhất, dữ liệu gốc sau khi đã được chuẩn hoá và qua phép biến đổi thu giảm số chiều PAA, qua phép biến đổi thu giảm số chiều mở rộng EPAA chúng tôi trích ra các chuỗi con từ tập dữ liệu tập dữ liệu đã được thu giảm

đó và tạo thành tập dữ liệu các chuỗi con

Trong phần thứ hai, chúng tôi hiện thực hai phương pháp rời rạc hóa dữ liệu chuỗi thời gian là SAX và ESAX từ tập dữ liệu đã thu giảm số chiều PAA và thu giảm số chiều mở rộng EPAA

Trang 21

Phần thứ ba, chúng tôi hiện thực các giải thuật dùng để phát hiện motif giải

thuật Random Projection trên phép biến đổi SAX, phương pháp đề xuất dựa vào

giải thuật Sequitur trên phép biến đổi ESAX để phát hiện motif

Phần thứ tư, chúng tôi trực quan hóa kết quả thu được

Phần cuối cùng, chúng tôi ứng dụng kết quả phát hiện motif để hiện thực

việc phát hiện tính chu kì trên dữ liệu chuỗi thời gian

Hệ thống của chúng tôi chạy thực nghiệm với các bộ dữ liệu khác để đánh giá, so sánh độ hiệu quả giữa giải thuật chiếu ngẫu nhiên với phép biến đổi SAX,

giải thuật Sequitur với phép biến đổi SAX và phương pháp đề xuất dựa vào giải

thuật Sequitur trên phép biến đổi ESAX để áp dụng vào bài toán phát hiện motif

Qua thực nghiệm, chúng tôi thấy phương pháp đề xuất dựa vào giải thuật Sequitur

trên phép biến đổi ESAX cho kết quả motif với các độ dài khác nhau và nhanh hơn các giải thuật truyền thống, từ đó chúng tôi ứng dụng kết quả độ dài motif thu được

từ phương pháp đề xuất để làm tham số độ dài motif cho các giải thuật phát hiện

motif khác Cũng dựa vào việc phát hiện motif này, chúng tôi cũng đã ứng dụng để

phát hiện tính chu kì trên dữ liệu chuỗi thời gian với kết quả khá chính xác

1.6 Cấu trúc của luận văn

Chương 1, giới thiệu vấn đề, sự cần thiết và phương thức thực hiện trên dữ liệu chuỗi thời gian

Chương 2, trình bày tổng quan các khái niệm cơ bản về dữ liệu thời gian, các công trình liên quan về các hàm tính độ tương tự, các phương pháp thu giảm số chiều, các phương pháp rời rạc hóa dữ liệu chuỗi thời gian

Chương 3, làm rõ cơ sở lý thuyết nền tảng của các phương pháp biểu diễn và các giải thuật được chọn sau khi khảo sát các công trình có liên quan ở chương 2

Chương 4, trình bày hệ thống phát hiện motif trên dữ liệu chuỗi thời gian của

chúng tôi

Chương 5, các kết quả thực nghiệm được công bố, so sánh và chạy thực nghiệm

hệ thống trên các tập dữ liệu khác nhau

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

Trang 22

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

Chương này sẽ trình bày một số khái niệm cơ bản đựợc sử dụng trong việc phát

hiện motif

2.1 Một số khái niệm cơ bản

Dữ 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ột cá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éctơ các giá trị (véc tơ những con số thực), thì được gọi là chuỗi thời gian nhiều kênh (multi-chanel time series) Dữ liệu chuỗi thời gian một kênh ta có thể thấy trong dữ liệu chứng khoán, dữ liệu điện tim đồ, dữ liệu năng lượng 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ác nhau 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ột kênh, đồng thời 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ảng bằng nhau

2.1.1 Chuỗi thời gian (Time series)

Chuỗi thời gian (Time Series) T = t 1 , t 2 … t m 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

2.1.2 Chuỗi con (Subsequence)

Cho một dữ liệu chuỗi thời gian T có chiều dài là n, một chuỗi con C ( Hình 2.1) trong T có chiều dài w là một mẫu của những giá trị liên tục được trích từ T

Vậy C = t p ,….,t p+w-1 với 1 ≤ p ≤ n – w + 1

Hình 2.1 Một minh hoạ về chuỗi con

Trang 23

2.1.3 Cửa sổ trượt (Slide window)

Cho một dữ liệu chuỗi thời gian T có chiều dài 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á trị trên chuỗi T, kết quả là ta được một danh sách n-w+1 các chuỗi con có kích thước w được rút trích từ chuỗi T

2.1.4 Trùng 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 T chứa một chuỗi con C bắt đầu tại vị trí p và một chuỗi con M bắt đầu tại vị trí

q, 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 (Hình 2.2)

Hình 2.2 Chuỗi C và M khớp với nhau

2.1.5 Trùng khớp không tầm thường (Non-Self Match)

Cho chuỗi thời gian T chưa một chuỗi con C có chiều dài n bắt đầu tại vị trí p

và khớp với chuỗi con Mbắt đầu tại vị trí q, ta có thể nói M là một “trùng khớp không tầm thường” tại khoảng cách của Dist M C( , ) nếu | p q | n

mọi 1 ≤ i ≤ k (Hình 2.3B là minh họa)

Trang 24

Đị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 tách biệt nhau Điều này rất quan trọng vì nếu nhƣ hai motif mà có những chuỗi con chung thì nó nên đƣợc xem là một motif (Hình 2.3A là minh họa)

Hình 2.3 Khoảng cách hai motif < 2R (A); Khoảng cách hai motif > 2R (B)

([8])

2.1.7 Chu kì

Định nghĩa 1: Đặt S = t 0 , t 1 …t n-1 là một chuỗi đại diện của chuỗi dữ liệu thời

gian có độ dài n, kí hiệu |S|=n S đƣợc nói là có tính chu kì nếu S(t) = S(t+p), với t

N, t ≥ 0, t < n-p, T là một chuỗi con của S sao cho T = t 0 , t 1 …t p-1 , |T|=p, p ≥ 1 và

p ≤ n/2 Chuỗi con T nhỏ nhất đƣợc gọi là chu kì của S Nếu không tìm ra đƣợc chu

kì T nào trong S, ta nói S không có tính chu kì Ví dụ, nếu S = wxywxywxy, thì chu

kì T = wxy, p = 3

Để rõ ràng, chúng ta không xem xét những chuỗi con có độ dài (m*p) là một chu

kì của S với m bất kì sao cho m ≠ 1 [15]

Định nghĩa 2: Đặt S là chuỗi có độ dài n trên bảng kí tự ∑ Gọi r là hàm sai số

đƣợc định nghĩa trên các chuỗi S đƣợc gọi là có tính chu kì với sai số k trên T nếu

tồn tại một chuỗi T trên ∑ sao cho r(S, T)=k, r là đánh giá sai số T là chu kì của S

Chuỗi T làm cho giá trị k nhỏ nhất đƣợc gọi là chu kì xấp xỉ của S [15]

Trang 25

2.2 Các công trình về độ đo tương tự

Trong các bài toán về dữ liệu chuỗi thời gian, việc tính mức độ tương tự giữa 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ới nhau hay không ta phải dùng một phương pháp để tính mức độ tương tự giữa chúng gọi là 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 hai chuỗ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ài bằng nhau

2.2.1 Độ đo Minkowski

Hầu hết các công trình đều dựa trên độ đo khoảng cách này Khoảng cách Minkowski được định nghĩa như sau:

p n

i

p i

i y x

Y) (X,

Ưu điểm:

- Quá trình tính toán đơn giản và dễ dàng

- Phù hợp khi sử dụng các biến đổi DFT, DWT, PAA, APCA, SAX (các phương pháp biến đổi này sẽ được trình bày bên dưới của chương)

Nhược điểm:

- Nhạy cảm với nhiễu

- Không hiệu quả với dữ liệu được đo ở nhiều thang đo khácnhau

Trang 26

2.2.2 Độ đo xoắn thời gian động (Dynamic Time Warping- DTW)

Phương pháp DTW do Berndt và các cộng sự đề ra năm 1994 [5] Việc so trùng

2 đường biểu diễn dữ liệu bằng cách tính khoảng cách từ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) như phương pháp Minkowski

là không phù hợp trong trường hợp hai đường này không hoàn toàn giống nhau

nhưng hình dạng biến đổi rất giống nhau Như trong (Hình 2.4a), hai đườ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 này, nếu tính khoảng cách bằng cách ánh xạ 1-1 giữa 2 đường thì kết quả rất khác nhau và kết quả cuối cùng có thể không như mong muốn Để khắc phục, 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 (Hình 2.4b) Phương

pháp này gọi là xoắn thời gian động [5]

Để tìm DTW của S = s 1 , s 2 ,…,s n và T = t 1 , t 2 ,…,t m, ta sắp xếp 2 chuỗi thời gian

này lên mặt phẳng lưới n x m, trong đó mỗi điểm lưới (i ,j) tương ứng với một sự ánh xạ giữa s i và t j Đường đi xoắn W, ánh xạ các thành phần của S và T, để

“khoảng cách” giữa chúng là nhỏ nhất

W = w 1 , w 2 … w k

Trong đó w k tương ứng với điểm (i, j) k như trong Hình 2.5 bên dưới

Có rất nhiều cách tính khoảng cách giữa 2 thành phần s i và t j, có thể tính theo một trong hai cách sau:

δ(i, j) = |s i – t j | δ(i, j) = (s i – t j ) 2

Trang 27

 Tính liên tục (continuity): những bước chuyển trên lưới chỉ giới hạn ở những

điểm lân cận, i k – i k-1 ≤ 1 và j k – j k-1 ≤ 1

 Cửa sổ xoắn (warping window): những điểm cho phép ánh xạ phải nằm trong

cửa sổ xoắn cho trước, tức là |i k – j k | ≤ ω, trong đó ω là chiều rộng của cửa sổ

xoắn (số nguyên dương) (Hình 2.5)

Ngoài ra, còn một số ràng buộc khác cần thỏa mãn để việc tìm kiếm có hiệu quả

và nhanh hơn ta có thể tìm kiếm đường đi xoắn theo giải thuật quy hoạch động, dựa

trên công thức truy hồi định nghĩa khoảng cách tích lũy λ(i, j), của mỗi điểm

λ(i, j) = δ(i, j) + min[λ(i-1, j), λ(i-1, j-1), λ(i, j-1)]

Ưu điểm:

 Cho kết quả chính xác hơn độ đo Euclid

 Cho phép nhận dạng mẫu có hình dạng giống nhau nhưng chiều dài hình dạng

về thời gian có thể khác nhau

Nhược điểm: Thời gian chạy lâu Một số ràng buộc được đề ra để tăng tốc độ

tìm kiếm [5]

(a) Tính theo khoảng cách Euclid (b) Tính theo khoảng cách DTW

Hình 2.4 Minh hoạ sự khác nhau giữa hai độ đo Euclid và DTW

Trang 28

Hình 2.5 Một ví dụ đường xoắn [5]

2.3 Các công trình về biểu diễn chuỗi thời gian

Vì dữ liệu chuỗi thời gian là rất lớn, không thể xử lý trong bộ nhớ chính mà phải tốn nhiều lần truy cập đĩa ngoài, chi phí truy cập đĩa ngoài là rất đáng kể so với chi phí tính toán, thường gây ra hiện tượng thắt cổ chai khi thực hiện các nhiệm vụ khai phá dữ liệu Do đó, nhiều phương pháp xấp xỉ chuỗi thời gian được đề xuất để có thể dễ dàng xử lý trong bộ nhớ chính và giảm thiểu số lần truy cập đĩa ngoài

Những phương pháp này thường được gọi là những kỹ thuật thu giảm số chiều

(dimensionality reduction) Một số phương pháp vừa thu giảm số chiều vừa rời rạc

hóa dữ liệu chuỗi thời gian được gọi là phương pháp rời rạc hóa (discretization) và

phương pháp tổng quát để thu giảm số chiều có thể tóm tắt như sau:

 Thiết lập một độ đo tương tự d (hay còn gọi là hàm tính khoảng cách, thường

dùng là hàm tính khoảng cách Euclid)

 Thiết kế một kỹ thuật thu giảm số chiều để 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 k giá trị), 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 29

 Cung cấp một độ đo tương tự d k trên không gian đặc trưng k chiều trên và

chứng tỏ rằng nó thỏa điều kiện chặn dưới sau:

d k (X’, Y’) ≤ d(X, Y)

Điều kiện chặn dưới như trên có nghĩa là hàm khoảng cách tính trên không gian

đặc trưng (hay không gian thu giảm) của hai chuỗi thời gian đã được biến đổi X’, Y’

từ hai chuỗi ban đầu X, Y phải chặn dưới khoảng cách thật của chúng trên không gian nguyên thủy, điều này đảm bảo không xảy ra false dismissal (những đối tượng

thỏa điều kiện nhưng bị bỏ sót)

Sau đây là một số phương pháp biểu diễn cụ thể

2.3.1 Phương pháp xấp xỉ gộp từng đoạn (PAA)

Phương pháp PAA, do Keogh và các cộng sự đề xuất năm 2001[6], tuần tự xấp

xỉ k giá trị liền kề nhau thành một giá trị, là giá trị trung bình cộng của k giá trị đó

Quá trình bắt đầu từ đầu chuỗi thời gian đến cuối chuỗi Kết quả của phép biến đổi

là đường thẳng có dạng bậc thang (Hình 2.6) Cho (với j = 1,…,n) là một chuỗi dữ liệu thời gian sẽ được thu giảm về một chuỗi con ̅

̅ ̅ ̅̅̅ ( với i = 1,…,w), biết rằng w là số chiều thu giảm của nó được tính

theo công thức sau:

([7]) Phương pháp PAA rất trực quan và đơn giản trong tính toán nhưng nó đã được chứng minh là rất hữu hiệu, thích hợp và hỗ trợ các phương pháp tính khoảng cách khác như: khoảng cách Euclid, DTW, Minkowski Ngoài ra, một phương pháp đo khoảng cách được đề xuất như sau trên không gian thu giảm số chiều sau khi qua phép biến đổi PAA:

̅ ̅ √ √∑ ̅ ̅ ([7])

Trang 30

Hình 2.6 Phương pháp biểu diễn PAA với n = 128, w=8 ([7])

Trong đó ̅ ̅ ̅ ̅ là hai chuỗi biến đổi xấp xỉ của hai chuỗi

dữ liệu thời gian Phương pháp này không phụ thuộc vào cấu trúc chỉ mục cụ thể nào, có thể sử dụng F-index, R-tree…

Ưu điểm:

 Thời gian tính toán nhanh và dễ dàng

 Hỗ trợ câu truy vấn có chiều dài khác nhau

 Hàm khoảng cách được đề nghị có giá trị chặn dưới chặt so với dữ liệu gốc

Trang 31

2.3.2 Phương pháp xấp xỉ gộp từng đoạn mở rộng EPAA (Extended PAA)

Do phương pháp PAA chỉ giữ lại giá trị trung bình của một chuỗi dữ liệu nên có

thể làm mất đi các thông tin quan trọng trong đoạn dữ liệu đó Hình 2.7 sau đây là

một minh hoạ một số điểm quan trọng sẽ bị mất nếu chỉ biểu diễn bằng PAA

Hình 2.7 Vài điểm quan trọng bị mất khi chỉ biểu diễn bằng PAA [10]

Phương pháp Extended PAA (EPAA) được Lkhagva và các cộng sự đề nghị vào năm 2006 [10] Phương pháp này giống như PAA nhưng mỗi đoạn được minh hoạ bằng ba giá trị nhỏ nhất, trung bình và lớn nhất thay vì chỉ lưu giá trị trung bình như phương pháp PAA Thứ tự và vị trí của ba giá trị được biểu diễn như sau:

{

Trong đó: S k , E k là vị trí đầu và vị trí cuối của đoạn cần tính EPAA

Trang 32

Hình 2.8 Minh hoạ các vị trí Pmin, Pmax, Pmid [10]

Ưu điểm:

 Có tất cả các ưu điểm của PAA

 Hàm khoảng cách được đề nghị có giá trị chặn dưới chặt hơn so với hàm tính khoảng cách DR của phương pháp PAA (do lưu trữ ba giá trị trong một đoạn chuỗi dữ liệu điểm thay vì một điểm như PAA) nên kết quả sẽ chính xác hơn

Nhược điểm:

 Xây dựng lại chuỗi ban đầu khó và thường sinh lỗi lớn, trong khi các phương pháp trên có công thức để tái tạo lại chuỗi ban đầu với tỉ lệ lỗi nhỏ

 Làm tăng số chiều của dữ liệu thu giảm

2.3.3 Phép xấp xỉ gộp ký hiệu hóa SAX

Phương pháp SAX, do Lin và các cộng sự đề xuất năm 2003 [7], được xây dựng dựa trên phương pháp thu giảm số chiều PAA và giả sử dữ liệu thu giảm số chiều

đã được chuẩn hóa theo trung bình zero và độ lệch chuẩn một Dữ liệu ban đầu được chia thành từng đoạn dùng phương pháp PAA Sau đó, ánh xạ từng đoạn này thành các ký tự rời rạc Vì không gian thu giảm là không gian các ký tự, nên không thể sử dụng các hàm tính khoảng cách nhận đối số là các giá trị thực mà cần có cơ chế ánh xạ sự khác biệt giữa hai ký tự thành giá trị số Phương pháp SAX sử dụng hàm tính khoảng cách MINDIST [7] trên không gian thu giảm, thỏa điều kiện chặn

Trang 33

dưới Phương pháp lập chỉ mục được sử dụng là phương pháp tập tin xấp xỉ hóa vector (Vector Approximation File), ngoài ra có thể sử dụng R-tree và các kỹ thuật

lập chỉ mục cho chuỗi ký tự cổ điển như cây hậu tố (suffix tree) Để biến đổi theo

SAX, ta thực hiện các bước sau:

2.3.3.1 Chuẩn hóa dữ liệu

Ta chuẩn hóa dữ liệu về trung bình zero và độ lệch chuẩn một (Hình 2.9), vì

không có ý nghĩa khi so sánh các chuỗi thời gian có độ dịch chuyển (offset) và biên

độ (amplitude) khác nhau [12] Chuẩn hóa trung bình zero (Zero-Mean normalization) Chuỗi Q được biến đổi thành chuỗi Q’ dựa trên giá trị trung bình mean(Q) và độ lệch chuẩn var(Q) theo công thức sau:

) var(

/ )) ( ]

[ ( ] [ ' i Q i mean Q Q

Hình 2.9 Phương pháp chuẩn hóa trung bình zero [12]

2.3.3.2 Thu giảm số chiều qua PAA

(Xem 2.3.1)

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

Sau khi chuyển đổi dữ liệu chuỗi thời gian về dạng PAA, ta sẽ tiếp tục biến đổi

để rời rạc hóa dữ liệu.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ố Gauss và 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 cong Gauss Những điểm ngắt (Breakpoints) là một

danh sách có thứ tự B = β 1 ,…, β a-1 bên dưới mật độ phân bố xác suất của đường

Trang 34

cong Gauss, giá trị β i đến β i+1 = 1/a, β 0 = -∞ và β a = ∞ Các vùng đó sẽ được biểu

diễn thành một ký tự ta gọi là từ (word) như sau:

Khi đã xác định được tập các điểm ngắt, chuỗi thời gian sẽ được rời rạc hóa theo cách sau đây Tất cả các giá trị PAA nhỏ hơn giá trị điểm ngắt nhỏ nhất ánh xạ

thành ký tự “a”, tất cả giá trị PAA lớn hơn hoặc bằng giá trị điểm ngắt nhỏ nhất và nhỏ hơn giá trị điểm ngắt nhỏ thứ hai ánh xạ thành ký tự “b”, cứ tiếp tục như vậy cho đến hết chuỗi Hình 2.10 minh họa ý tưởng này Chúng ta gọi chuỗi các ký tự

này (theo thứ tự rời rạc hóa) là từ (word)

̂ ̅ và sau đó tra trong bảng Gauss

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 ([7])

Rời rạc hóa về chuỗi ký tự cho một chuỗi có chiều dài n = 128, w = 8, a = 3 và

ta được một tràng ký tự baabccbc mà ta gọi là một từ (word) hay một đặc trưng

(feature)

Trang 35

Hình 2.11 Minh họa về rời rạc hóa dữ liệu ([7])

(Hình 2.12C) cho ta khoảng cách giữa hai hệ số PAA [7] thông qua việc tra hàm

dist() theo bảng theo qui tắc sau:

{ | |

| | ư

Các giá trị trong bảng tra đƣợc tính từ các điểm ngắt (break points)

Trang 36

Với giá trị a cho trước, bảng tra cứu chỉ được tính một lần và lưu trữ lại để tra

cứu khoảng cách một cách nhanh chóng Hàm MINDIST được minh họa trực quan

như hình 2.12 bên dưới

Ưu điểm:

 Vì không gian được thu giảm là các ký tự và rời rạc nên có thể tận dụng được các giải thuật và cấu trúc dữ liệu xử lý trên dữ liệu chuỗi, dữ liệu rời rạc như

kỹ thuật băm, mô hình Markov, cây hậu tố

 Định nghĩa được hàm tính khoảng cách trên không gian thu giảm thỏa mãn chặn dưới, điều mà nhiều phương pháp rời rạc hóa khác không có được

 Bảng ánh xạ khoảng cách giữa 2 từ được tính toán trước một lần cho mỗi loại

dữ liệu, sau đó tính toán khoảng cách rất nhanh thông qua bảng này

Nhược điểm:

 Việc ánh xạ các giá trị thực thành các ký tự phụ thuộc từng loại dữ liệu cụ thể

Do đó, ta phải huấn luyện dữ liệu để tìm ra cách ánh xạ tốt nhất đối với mỗi loại dữ liệu

 Không quan tâm đến các điểm đặc biệt như điểm giá trị nhỏ nhất và lớn nhất của mỗi đoạn, giống như phương pháp PAA

Trang 37

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 ([7])

2.3.4 Phương pháp xấp xỉ gộp ký hiệu hoá mở rộng ESAX (Extended SAX)

Phương pháp rời rạc hoá ESAX (Extended Symbolic Aggregate approXimation) được Lkhagva và các cộng sự đề nghị vào năm 2006 [10] Đây là một cách tiếp cận mới về biểu diễn chuỗi thời gian Về cơ bản, phương pháp ESAX giống như phương pháp SAX Như đã trình bày ở mục 2.3.3, phương pháp SAX dựa trên phương pháp PAA để thu giảm số chiều xấp xỉ bằng giá trị trung bình của từng

đoạn con dẫn đến gây ra mất đi một số mẫu thức (pattern) quan trọng (Hình 2.7

minh họa trực quan những tình huống mất thông tin khi chỉ biễu diễn bằng phép biến đổi SAX) và trong dữ liệu kinh tế tài chính những điểm mất này nhiều lúc là

dữ liệu quan trọng Do đó phương pháp ESAX thêm vào hai điểm đặc biệt để bổ sung cho phương pháp SAX, điểm nhỏ nhất và điểm lớn nhất của từng đoạn để biểu

diễn chuỗi thời gian (Hình 2.13)

Trang 38

Hình 2.13 Dữ liệu tài chính được biểu diễn bằng ESAX ([10])

Như vậy, trong cách tiếp cận của ESAX, mỗi đoạn chuỗi dữ liệu con được biểu diễn bằng 3 ký tự tương ứng từ tập dữ liệu EPAA và công thức biểu diễn ESAX cũng dựa trên bảng Breakpoint như ở phương pháp rời rạc hoá dữ liệu SAX trên tập

dữ liệu PAA (xem 2.3.2)

Do sử dụng ba ký tự biểu diễn từng đoạn con thay vì một ký tự, nên ta định nghĩa hàm tính khoảng cách của ESAX tương tự như hàm tính khoảng cách của SAX dựa vào bảng Breakpoint ở phần độ đo MINDIST nhưng lúc này số chiều thu giảm sẽ tăng lên ba lần, công thức tính như sau:

√ √∑ ( )

Trong đó, <s 1 , s 2 ,… s k > và <r 1 , r 2 ,… r k > là chuỗi ký tự Q e và C e, kết quả biểu

diễn mở rộng bằng phép biến đổi ESAX trên chuỗi con Q và C

Phương pháp rời rạc hoá mở rộng ESAX cho kết quả tìm kiếm chặt và chính xác hơn phép rời rạc hoá SAX Bảng sau đây cho ta trung bình kết quả tìm kiếm bằng

hai phương pháp SAX và ESAX, và hình 2.14 minh hoạ cho ta thấy các chuỗi truy

vấn tìm kiếm được tìm thấy qua phép biến đổi SAX và ESAX

Trang 39

Bảng 2.1 Trung bình kết quả tìm kiếm trên tập dữ liệu 5000, với kích thước

tập ký tự alphabetsize = 6, số chiều thu giảm của SAX là 16 và số chiều thu giảm

của ESAX là 48 [10]

Hình 2.14 Minh hoạ tìm kiếm bằng phép biến đổi SAX và ESAX, (a) chuỗi cần

tìm kiếm, (b) (c) các kết quả được tìm thấy bởi ESAX, (d) (e) (f) (i) (j) các kết quả

được tìm thấy bởi SAX [10]

2.4 Kết luận

Sau khi tìm hiểu các phép biến đổi rời rạc, chúng tôi nhận thấy mỗi phép biến

đổi đều có những ưu và khuyết điểm riêng tuỳ thuộc vào mục đích và nhu cầu sử

dụng của người dùng mà vận dụng cho phù hợp Tuy nhiên, trong trường hợp dữ

liệu có nhiều đặc tính quan trọng cần tìm kiếm chính xác thì phép biến đổi EPAA và

phép rời rạc ký hiệu hoá mở rộng ESAX cho kết quả tìm kiếm chính xác hơn nhiều

so với các phép biến đổi PAA và phép rời rạc ký hiệu hoá SAX

Trang 40

CHƯƠNG 3: TỔNG THUẬT CÁC CÔNG TRÌNH

LIÊN QUAN

Ở chương 1, ta đã tìm hiểu các khái niệm về motif và chọn ra được hai khái niệm hỗ trợ tốt cho việc phát hiện motif Trong chương 2, chúng tôi đã giới thiệu

một số các phép thu giảm số chiều và rời rạc hóa dữ liệu Ở chương 3 này, chúng tôi

sẽ làm rõ lý thuyết của các phương pháp biểu diễn dữ liệu chuỗi thời gian và các

giải thuật áp dụng để phát hiện motif

3.1 Phát hiện 1-Motif dựa vào giải thuật Brute Force

Giải thuật phát hiện motif chân phương (Brute Force) (bảng 3.1) là một giải

thuật đơn giản và trực quan Giải thuật so sánh một chuỗi con với tất cả những chuỗi con khác trong tập dữ liệu để tìm láng giềng gần nhất của nó, và không trùng

khớp không tự thân do đó độ phức tạp tính toán cũng là O(m 2 ) với m là số chuỗi con

 Motif tìm thấy trong giải thuật Brute – Force là motif chính xác

Ngày đăng: 27/01/2021, 17:26

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2]. B. Chiu, E. Keogh, and S. Lonardi, (2003). Probabilistic Discovery of Time Series Motifs. Proceedings of the 9 th International Conference on Knowledge Discovery and Data Mining (KDD'03), pp. 493-498 Sách, tạp chí
Tiêu đề: Proceedings of the 9 th International Conference on Knowledge Discovery and Data Mining (KDD'03)
Tác giả: B. Chiu, E. Keogh, and S. Lonardi
Năm: 2003
[3]. C. Faloutsos, M. Ranganathan &amp; Y. Manolopoulos (1994). Fast Subsequence Matching in Time-Series Databases. In Proceedings of the ACM SIGMOD Int’l Conference on Management of Data. May 24-27, Minneapolis, MN, pp 419-429 Sách, tạp chí
Tiêu đề: In Proceedings of the ACM SIGMOD Int’l Conference on Management of Data
Tác giả: C. Faloutsos, M. Ranganathan &amp; Y. Manolopoulos
Năm: 1994
[4]. C.G. Nevill-Manning and I.H. Witten (1997). Identifying Hierarchical Structure in Sequences: A linear-time algorithm. Journal of Artificial Intelligence Research, 7, 67-82 Sách, tạp chí
Tiêu đề: Journal of Artificial Intelligence Research
Tác giả: C.G. Nevill-Manning and I.H. Witten
Năm: 1997
[5]. D. Berndt and J. Clifford (1994). Using dynamic time warping to find patterns in time series. In Proceedings of AAAI Workshop on Knowledge Discovery in Databases, KDD-94, Seattle, Washington, USA, pp. 359-370 Sách, tạp chí
Tiêu đề: In Proceedings of AAAI Workshop on Knowledge Discovery in Databases, KDD-94
Tác giả: D. Berndt and J. Clifford
Năm: 1994
[1]. B. Lkhagva, Y. Suzuki, K. Kawagoe, (2006). Extended SAX: Extension of Symbolic Aggregate Approximation for Financial Time SeriesData Representation. In Proceedings of DEWS Data Engineering Workshop, DNEWS2006, 4A-i8 Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm