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

Nghiên cứu phương pháp biểu diễn chuỗi thời gian isax và ứng dụng phương pháp này vào bài toán nhận dạng chuỗi con bất thường nhất trong dữ liệu chuỗi thời gian

117 19 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 117
Dung lượng 1,94 MB

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

Nội dung

Nghiên cứu so sánh hiệu quả của hai phương pháp rời rạc hóa SAX và iSAX khi áp dụng vào giải thuật nhận dạng chuỗi con bất ñồng nhất trên dữ liệu chuỗi thời gian.. Chúng tôi tận dụng tín

Trang 1

Đại Học Quốc Gia Tp Hồ Chí Minh

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

-

HUỲNH TRẦN QUỐC BỬU

NGHIÊN CỨU PHƯƠNG PHÁP BIỂU DIỄN CHUỖI THỜI GIAN iSAX VÀ ỨNG DỤNG PHƯƠNG PHÁP NÀY VÀO BÀI TOÁN NHẬN DẠNG CHUỖI CON BẤT THƯỜNG NHẤT TRONG DỮ LIỆU CHUỖI THỜI

GIAN

Chuyên ngành: KHOA HỌC MÁY TÍNH

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 07 năm 2010

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA

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

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: PGS TS Đỗ Phúc

Cán bộ chấm nhận xét 2: TS Quản Thành Thơ

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 30 tháng 8 năm 2010

Thành phần Hội ñồng ñánh giá luận văn thạc sĩ gồm:

Trang 3

TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HOÀ XÃ HỘI CHỦ NGHIÃ VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN Độc Lập - Tự Do - Hạnh Phúc

- -oOo -

Tp HCM, ngày tháng năm

NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: HUỲNH TRẦN QUỐC BỬU Phái: Nam

Ngày, tháng, năm sinh: 02 / 11 / 1985 Nơi sinh: Long Xuyên-An Giang Chuyên ngành: Khoa Học Máy Tính MSHV: 00708187

1- TÊN ĐỀ TÀI:

NGHIÊN CỨU PHƯƠNG PHÁP BIỂU DIỄN CHUỖI THỜI GIAN iSAX VÀ ỨNG DỤNG PHƯƠNG PHÁP NÀY VÀO BÀI TOÁN NHẬN DẠNG CHUỖI CON BẤT THƯỜNG NHẤT TRONG DỮ LIỆU CHUỖI THỜI GIAN

2- NHIỆM VỤ LUẬN VĂN:

Nghiên cứu so sánh hiệu quả của hai phương pháp rời rạc hóa SAX và iSAX khi áp dụng vào giải thuật nhận dạng chuỗi con bất ñồng nhất trên dữ liệu chuỗi thời gian

3- NGÀY GIAO NHIỆM VỤ:

4- NGÀY HOÀN THÀNH NHIỆM VỤ:

5- HỌ VÀ TÊN 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

(Họ tên và chữ ký) QUẢN LÝ CHUYÊN NGÀNH

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

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

Trang 4

i

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……….tháng…………năm…………

Huỳnh Trần Quốc Bửu

Trang 5

ii

LỜ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, người thầy ñã tận tình hướng dẫn tôi trong suốt quá trình học Cao học và tạo mọi

ñiều kiện ñể tôi có thể hoàn thành luận văn này

Tôi cũng xin cảm ơn gia ñình, bạn bè ñã ñộng viên và tạo mọi ñiều kiện tốt nhất

ñể tôi có thể tiếp tục theo ñuổi việc học tập và nghiên cứu Tôi trân trọng dành tặng

thành quả của luận văn này cho Cha Mẹ Nhờ công lao dưỡng dục của Người mà chúng con mới có ñược thành quả như ngày hôm nay Con xin hứa sẽ tiếp tục cố gắng phấn ñấu ñể vươn cao hơn nữa

Trang 6

iii

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

Biểu diễn dữ liệu chuỗi thời gian ngày càng ñóng vai trò quan trọng trong các bài toán khai phá dữ liệu chuỗi thời gian Vì dữ liệu chuỗi thời gian là rất lớn, các lĩnh vực ứng dụng của nó ngày càng phát triển, nên ñòi hỏi cần có một phương pháp biểu diễn chuỗi thời gian hợp lý cho từng loại dữ liệu cũng như từng loại ứng dụng

cụ thể nhằm cải thiện tốc ñộ cũng như ñộ chính xác khi hoàn thành bài toán

Đề tài này tìm hiểu phương pháp rời rạc hóa dữ liệu ở mức bit iSAX (phương

pháp xấp xỉ gộp ký hiệu hóa khả chỉ mục), qua ñó ñề ra một cách ứng dụng phương

pháp này vào bài toán tìm chuỗi con bất ñồng Thông qua hai giải thuật HOT SAX

và EHOT (hai giải thuật ñã rất thành công khi ứng dụng một phương pháp rời rạc

hóa dữ liệu khác, phương pháp xấp xỉ gộp ký hiệu hóa SAX), chúng tôi so sánh ñộ

hiệu quả của iSAX và SAX khi giải quyết bài toán tìm chuỗi con bất ñồng

Chúng tôi tận dụng tính ña mức phân giải của phương pháp iSAX (một ưu thế mà phương pháp SAX không có ñược) ñể lập chỉ mục các chuỗi con và rút ngắn thời gian tìm kiếm chuỗi con bất ñồng cũng như làm giảm số lần gọi hàm tính ñộ tương

tự giữa hai chuỗi con Qua thực nghiệm cho thấy, phương pháp iSAX hiệu quả hơn nhiều lần so với phương pháp SAX khi ứng dụng vào bài toán tìm kiếm chuỗi con bất ñồng

Trang 7

iv

ABSTRACT

The representation of time series plays more and more important role in time series data mining problems Since time series data has very big size, with many growing applications of time series data, it is necessary to have a suitable representation method for each kind of datasets and each kind of application which aims to improve the speed and the accuracy of the data mining solutions

This thesis studies a bit level representation of time series data iSAX (indexable

Symbolic Aggregate approXimation), then applies this representation to discord

discovery problem By applying iSAX to HOT SAX algorithm and EHOT algorithm

(which were successful with another representation SAX, Symbolic Aggregate

approXimation, for solving discord discovery problem), we compare the efficiency

of iSAX and SAX

We take advantage of multi-resolution feature of iSAX (which SAX does not have) to index time series and to shorten CPU time used for finding discords as well

as to decrease raw time series data retrieval times (distance function calls) Through experiments, we find out that iSAX is more effective than SAX

Trang 8

v

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

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

ABSTRACT iv

MỤC LỤC v

DANH MỤC HÌNH ix

DANH MỤC BẢNG xii

Chương 1: Phát biểu vấn ñề 1

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

1.2 Phát hiện bất thường 3

1.3 Mục tiêu và giới hạn của ñề tài 6

1.4 Tóm lược những kết quả ñạt ñược 7

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

Chương 2: Tổng thuật các công trình liên quan 9

2.1 Các công trình về ñộ ño tương tự 9

2.1.1 Độ ño Minkowski 10

2.1.2 Độ ño xoắn thời gian ñộng 11

2.1.3 Phương pháp chuỗi con chung dài nhất 14

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

2.2.1 Phương pháp biến ñổi Fourier rời rạc DFT 17

2.2.2 Phương pháp biến ñổi Wavelet rời rạc DWT 19

2.2.3 Phương pháp xấp xỉ gộp từng ñoạn PAA 20

2.2.4 Phương pháp xấp xỉ từng ñoạn thích nghi APCA 21

2.2.5 Phương pháp xấp xỉ tuyến tính từng ñoạn PLA 22

Trang 9

vi

2.2.6 Phương pháp xấp xỉ gộp ký hiệu hóa SAX 23

2.2.7 Phương pháp ESAX 24

2.2.8 Phương pháp xén dữ liệu 25

2.2.9 Phương pháp SAX khả chỉ mục iSAX 26

2.3 Các cấu trúc chỉ mục 27

2.3.1 Cấu trúc chỉ mục cây hậu tố 28

2.3.2 Cấu trúc chỉ mục R-tree 28

2.3.3 Framework GEMINI 29

2.4 Các giải thuật phát hiện bất thường 30

2.4.1 Giải thuật hệ miễn nhiễm nhân tạo IMM (Immunology) 30

2.4.2 Giải thuật dựa trên cây TSA (TSA-tree) 31

2.4.3 Giải thuật Tarzan 31

Chương 3: Những cơ sở lý thuyết nền tảng 34

3.1 Phương pháp SAX 34

3.1.1 Chuẩn hóa dữ liệu 34

3.1.2 Thu giảm số chiều bằng phương pháp PAA 35

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

3.1.4 Hàm tính ñộ tương tự 37

3.2 Phương pháp iSAX 38

3.2.1 Mã hóa các ký tự có ñược sau khi áp dụng phương pháp SAX 39

3.2.2 Hàm tính ñộ tương tự trên không gian thu giảm 39

3.2.3 Cấu trúc chỉ mục 40

3.2.4 Truy vấn dữ liệu 44

3.3 Giải thuật phát hiện chuỗi con bất ñồng BFDD 47

3.4 Giải thuật phát hiện chuỗi con bất ñồng dựa vào heuristic HDD 48

Trang 10

vii

3.5 Giải thuật phát hiện chuỗi con bất ñồng HOT SAX 50

3.5.1 Heuristic vòng lặp ngoài 52

3.5.2 Heuristic vòng lặp trong 52

3.6 Giải thuật phát hiện chuỗi con bất ñồng EHOT 53

3.6.1 Heuristic vòng lặp ngoài 53

3.6.2 Heuristic vòng lặp trong 56

Chương 4: Phương pháp giải quyết vấn ñề và hệ thống ứng dụng 58

4.1 Đặt vấn ñề 58

4.2 Phương pháp giải quyết vấn ñề 59

4.2.1 Giải thuật HOTiSAX 59

4.2.2 Giải thuật EHOTiSAX 69

4.3 Hệ thống phát hiện chuỗi con bất thường 69

4.3.1 Khối tạo dữ liệu 69

4.3.2 Khối tìm kiếm chuỗi con bất ñồng 71

4.3.3 Khối biểu diễn dữ liệu 72

4.3.4 Khối cấu trúc dữ liệu 72

Chương 5: Thực nghiệm 73

5.1 Tinh chỉnh thông số và xác ñịnh các heuristic 73

5.1.1 Tinh chỉnh thông số cho HOTiSAX 74

5.1.2 Tinh chỉnh thông số và xác ñịnh các heuristic cho EHOTiSAX 76

5.2 Kết quả thực nghiệm so sánh HOT SAX với HOTiSAX 79

5.2.1 Thực nghiệm trên tập dữ liệu dự báo sự kiện ERP 79

5.2.2 Thực nghiệm trên dữ liệu ñiện não ñồ EEG 80

Trang 11

viii

5.2.3 Thực nghiệm trên dữ liệu ñiện tâm ñồ KOSKI 81

5.2.4 Thực nghiệm trên dữ liệu năng lượng POWER 82

5.2.5 Thực nghiệm trên dữ liệu chứng khoán STOCK 83

5.3 Kết quả thực nghiệm so sánh EHOT với EHOTiSAX 85

5.3.1 Thực nghiệm trên dữ liệu dự báo sự kiện ERP 85

5.3.2 Thực nghiệm trên dữ liệu ñiện não ñồ EEG 86

5.3.3 Thực nghiệm trên dữ liệu ñiện tâm ñồ KOSKI 87

5.3.4 Thực nghiệm trên dữ liệu năng lượng POWER 88

5.3.5 Thực nghiệm trên dữ liệu chứng khoán STOCK 89

Chương 6: Kết luận 91

6.1 Tổng kết 91

6.2 Những ñóng góp của ñề tài 92

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

Tài liệu tham khảo 95 PHỤ LỤC A: BẢNG ĐỐI CHIẾU THUẬT NGỮ ANH - VIỆT A1 PHỤ LỤC B: LÝ LỊCH TRÍCH NGANG A3

Trang 12

ix

DANH MỤC HÌNH

Hình 1.1: Chuỗi thời gian ở trên cùng là ñiện tâm ñồ của một người khỏe mạnh bình thường với một ñường thằng cố tình ñược thêm vào Chuỗi bên dưới chỉ ra mức ñộ gây ngạc nhiên của những phần cục bộ của chuỗi bên trên theo ñịnh nghĩa của

Shahabi và các cộng sự (nguồn [22]) 4

Hình 2.1: Trường hợp 2 chuỗi có ñường cơ bản lệch nhau và biên ñộ dao ñộng khác nhau (nguồn [13]) 11

Hình 2.2: Minh họa sự khác nhau giữa 2 ñộ ño Euclid và DTW (nguồn [12]) 12

Hình 2.3: Một ví dụ ñường ñi xoắn (nguồn [10]) 13

Hình 2.4: Các phương pháp biểu diễn chuỗi thời gian (nguồn [13]) 17

Hình 2.5: Các dạng biểu diễn phổ biến nhất cho khai phá dữ liệu chuỗi thời gian (nguồn [13]) 18

Hình 2.6: Phương pháp biểu diễn PAA với n=128, N=8 (nguồn [18]) 20

Hình 2.7: Dữ liệu chuỗi thời gian trong lĩnh vực tài chính ñược biểu diễn bằng phương pháp SAX (nguồn [2]) 25

Hình 2.8: Dạng biểu diễn xén c của C (nguồn [8]) 26

Hình 2.9: Một chuỗi thời gian T ñược chuyển sang dạng biểu diễn SAX theo số ñoạn là 4 (bên trái) và 2 (bên phải) (nguồn [25]) 26

Hình 2.10: Cây hậu tố cho các chuỗi S 1 =babab, S 2 =aab, S 3 =baa (nguồn [35]) 28

Hình 2.11: Minh họa cấu trúc R-tree cho dữ liệu không gian (nguồn [1]) 29

Hình 2.12: Một so sánh của 3 giải thuật phát hiện bất thường A) Dữ liệu huấn luyện B) Chuỗi thời gian chứa bất thường nhân tạo, ñược tạo ra cùng thông số với dữ liệu huấn luyện C) Giải thuật IMM tìm kiếm bất thường với một vài false alarm D) Giải thuật cây TSA không thể phát hiện bất thường E) Giải thuật Tarzan chỉ ra ñược khoảng thời gian bất thường bằng một ñỉnh nhô cao (nguồn [21]) 32

Hình 3.1: Một chuỗi thời gian ñược biến ñổi PAA rồi mã hóa thành các ký tự SAX Chuỗi thời gian ñược mã hóa thành baabcabc (nguồn [24]) 36

Trang 13

x

Hình 3.2: 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 (nguồn [24]) 38

Hình 3.3: Cấu trúc chỉ mục trong iSAX (nguồn [25]) 41

Hình 3.4: Hai cấu trúc dữ liệu hỗ trợ cho heuristic vòng lặp ngoà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 [17]) 51

Hình 3.5: Tìm kiếm nhánh và cận cho vòng lặp trong, ñường ñi tô ñậm là ñường ñi ñược xem xét trong quá trình tìm kiếm (nguồn [28]) 56

Hình 4.1: Cấu trúc dữ liệu dãy: cột thứ 1 chứa vị trí của chuỗi con trong chuỗi lớn ban ñầu, cột thứ 2 chứa dạng biểu diễn iSAX của chuỗi con ở mức phân giải cơ bản, cột thứ 3 chứa dạng biểu diễn iSAX của chuỗi con ở mức phân giải cao nhất trong cây chỉ mục iSAX, cột thứ 4 chứa số lần xuất hiện của mỗi từ iSAX (ở mức phân giải cơ bản) trong cấu trúc dãy 62

Hình 4.2: Hệ thống phát hiện chuỗi con bất thường 70

Hình 5.1: Số lần gọi hàm tính khoảng cách của HOTiSAX 74

Hình 5.2: Thời gian chạy của giải thuật HOTiSAX thay ñổi theo giá trị w 75

Hình 5.3: Số lần gọi hàm tính khoảng cách của HOTiSAX thay ñổi theo giá trị α 75

Hình 5.4: Thời gian chạy của HOTiSAX thay ñổi theo giá trị α 76

Hình 5.5: Số lần gọi hàm tính khoảng cách của EHOTiSAX 77

Hình 5.6: Thời gian chạy của EHOTiSAX thay ñổi theo giá trị w 77

Hình 5.7: Số lần gọi hàm tính khoảng cách của EHOTiSAX thay ñổi theo giá trị α 78 Hình 5.8: Thời gian chạy của EHOTiSAX thay ñổi theo giá trị α 78

Hình 5.9: Số lần gọi hàm tính khoảng cách của HOT SAX và HOTiSAX trên dữ liệu ERP 79

Hình 5.10: Thời gian chạy của HOT SAX và HOTiSAX trên dữ liệu ERP 79

Trang 14

xi

Hình 5.11: Số lần gọi hàm tính khoảng cách của HOT SAX và HOTiSAX trên dữ

liệu EEG 80

Hình 5.12: Thời gian chạy của HOT SAX và HOTiSAX trên dữ liệu EEG 80

Hình 5.13: Số lần gọi hàm của HOT SAX và HOTiSAX trên dữ liệu KOSKI 81

Hình 5.14: Thời gian chạy của HOT SAX và HOTiSAX trên dữ liệu KOSKI 81

Hình 5.15: Số lần gọi hàm khoảng cách của HOT SAX và HOTiSAX trên dữ liệu POWER 82

Hình 5.16: Thời gian chạy của HOT SAX và HOTiSAX trên dữ liệu POWER 82

Hình 5.17: Số lần gọi hàm khoảng cách của HOT SAX và HOTiSAX trên dữ liệu STOCK 83

Hình 5.18: Thời gian chạy của HOT SAX và HOTiSAX trên dữ liệu STOCK 83

Hình 5.19: Số lần gọi hàm tính khoảng cách của EHOT và EHOTiSAX trên dữ liệu ERP 85

Hình 5.20: Thời gian chạy của EHOT và EHOTiSAX trên dữ liệu ERP 85

Hình 5.21: Số lần gọi hàm tính khoảng cách của EHOT và EHOTiSAX trên dữ liệu EEG 86

Hình 5.22: Thời gian chạy của EHOT và EHOTiSAX trên dữ liệu EEG 86

Hình 5.23: Số lần gọi hàm tính khoảng cách của EHOT và EHOTiSAX trên dữ liệu KOSKI 87

Hình 5.24: Thời gian chạy của EHOT và EHOTiSAX trên dữ liệu KOSKI 87

Hình 5.25: Số lần gọi hàm tính khoảng cách của EHOT và EHOTiSAX trên dữ liệu POWER 88

Hình 5.26: Thời gian chạy của EHOT và EHOTiSAX trên dữ liệu POWER 88

Hình 5.27: Số lần gọi hàm tính khoảng cách của EHOT và EHOTiSAX trên dữ liệu STOCK 89

Hình 5.28: Thời gian chạy của EHOT và EHOTiSAX trên dữ liệu STOCK 89

Trang 15

xii

DANH MỤC BẢNG

Bảng 1.1: Cách tiếp cận chung cho các nhiệm vụ khai phá dữ liệu (nguồn [14]) 2

Bảng 2.1: Mã giả giải thuật xây dựng chỉ mục GEMINI (nguồn [4]) 30

Bảng 3.1: Bảng tra tìm các giá trị β theo từng giá trị α tương ứng (nguồn [24]) 36

Bảng 3.2: Bảng tra cứu giá trị hàm dist giữa hai ký tự trường hợp α = 4 (nguồn [24]) 37

Bảng 3.3: Bảng tra cứu khoảng cách giữa các bit khi α = 4 ( nguồn [25]) 40

Bảng 3.4: Giải thuật chèn dữ liệu (nguồn [25]) 43

Bảng 3.5: Giải thuật tìm kiếm chính xác (nguồn [25]) 46

Bảng 3.6: Mã giả giải thuật BFDD (nguồn [17]) 48

Bảng 3.7: Mã giả giải thuật HDD (nguồn [17]) 50

Bảng 3.8: Bảng tần số ký tự (Symbol Frequency Table) (nguồn [28]) 54

Bảng 4.1: Hàm sắp xếp các chuỗi con trên cấu trúc chỉ mục iSAX 63

Bảng 4.2: Hàm tìm kiếm xấp xỉ so trùng không-tầm-thường 65

Bảng 4.3: Hàm tìm kiếm chính xác so trùng không-tầm-thường 67

Bảng 5.1: Kiểu sinh heuristic vòng lặp ngoài cho từng loại dữ liệu 76

Trang 16

1

Chương 1: Phát biểu vấn ñề

Dữ liệu ñược lưu trữ trong máy tính ngày càng nhiều và tốc ñộ tăng là khá nhanh Hầu hết dữ liệu ñược thu thập một cách tự ñộng theo thời gian bởi các ứng dụng sensor hoặc ứng dụng quan sát, theo dõi Những dữ liệu như vậy gọi là dữ liệu chuỗi thời gian Dữ liệu chuỗi thời gian tồn tại trong nhiều ứng dụng thực tế, từ các lĩnh vực khoa học kỹ thuật cho ñến kinh tế, tài chính Vì vậy, ñã có nhiều nghiên cứu nhằm mục ñích quản lý, xử lý một cách hiệu quả những yêu cầu có liên quan ñến dữ liệu chuỗi thời gian Tổng quát:

Định nghĩa 1.1: 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 Trong ñề tài này, ta chỉ xem xét với t i là các giá trị thực

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

ñồ, mực nước, lưu lượng truyền trên mạng, dữ liệu tài chính… Việc khai phá dữ liệu

chuỗi thời gian ñã thu hút rất nhiều sự nghiên cứu trên thế giới Cụ thể là một số lĩnh vực nghiên cứu sau:

ñộ 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 DB nào ñó

chuỗi thời gian trong cơ sở dữ liệu DB theo một hàm tính ñộ tương tự D(Q,C)

vào một trong những nhóm ñã ñược ñịnh nghĩa trước

Trang 17

2

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 (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 Ngoài ra còn có nhiều tên gọi khác cho lĩnh vực này như phát hiện những hành vi gây ngạc nhiên (surprising behavior), hành

vi quan tâm (interesting behavior), hành vi không mong ñợi (unexpected

behavior), hành vi lạ thường (novel behavior) Đồng thời có rất nhiều ñịnh

nghĩa như thế nào gọi là bất thường

Vì dữ liệu chuỗi thời gian là rất lớn, không lưu trữ ñủ trong bộ nhớ chính, nên khi

xử lý ta 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 (mặc dù tốc ñộ xuất nhập ñĩa ngày nay ñã ñượ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) Người ta nghĩ ngay ñến việc xấp xỉ những chuỗi dữ liệu ñể vừa khít với bộ nhớ chính (nhằm hạn chế số lần truy cập ñĩa) Một framework chung ñể thực hiện các nhiệm vụ khai phá dữ liệu chuỗi thời gian ñược ñề ra ở [6] Cách tiếp cận

cơ bản này ñược chỉ ra trong Bảng 1.1 sau:

duy trì các ñặc trưng cần quan tâm

ñúng 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 (nguồn [14])

Ta dễ dàng thấy rằng hiệu quả của framework này phụ thuộc nhiều vào chất lượng của phương pháp xấp xỉ ở bước 1 Nếu sự xấp xỉ càng gần với dữ liệu gốc thì

Trang 18

3

lời giải ñạt ñược trong bộ nhớ chính càng gần với lời giải ñạt ñược với dữ liệu gốc Dẫn ñến số lần truy cập ñĩa ngoài ở bước 3 là càng ít Chính vì vậy ñã có nhiều phương pháp xấp xỉ ñược nghiên cứu và so sánh mà chúng tôi sẽ trình bày ở các phần sau

Để so sánh các phương pháp xấp xỉ, người ta lần lượt kiểm tra ñộ hữu hiệu của chúng trong những nhiệm vụ khai phá dữ liệu chuỗi thời gian khác nhau Đề tài này chỉ gói gọn kiểm tra trong lĩnh vực phát hiện bất thường Ở phần tiếp theo, chúng tôi

sẽ trình bày rõ hơn về lĩnh vực này

Tập dữ liệu chuỗi thời gian có thể ñược tạo ra từ những chuỗi thời gian ñộc lập hoặc bằng cách rút trích các chuỗi con từ một chuỗi thời gian ban ñầu Với trường hợp thứ hai, sự tương quan về vị trí giữa các chuỗi con trong chuỗi thời gian ban ñầu là

rất quan trọng Do ñó, tồn tại hai ñịnh nghĩa khác nhau là ñịnh nghĩa chuỗi thời gian

bất thường và ñịnh nghĩa chuỗi con bất ñồng

Lĩnh vực phát hiện bất thường ñã xuất hiện dưới nhiều cái tên khác nhau Do ñó, cũng có nhiều ñịnh nghĩa khác nhau cho sự bất thường [34, 11, 7, 3, 36] Tuy nhiên,

ña số những ñịnh nghĩa này chỉ ñúng trong giới hạn của một công cụ khai phá dữ

liệu nào ñó Ví dụ, ta xem một ñịnh nghĩa do Shahabi và các cộng sự [11] ñề ra như

sau Họ ñịnh nghĩa chuỗi thời gian gây ngạc nhiên (surprising time series) như

“…những thay ñổi ñột ngột trong dữ liệu chuỗi thời gian gốc, ñược xác ñịnh bởi những ñiểm có giá trị cực ñại trong những giá trị tuyệt ñối của những hệ số wavelet” Và Hình 1.1 là một ví dụ cho thấy một trường hợp mà ñịnh nghĩa này không ñúng Trong ñó, ñịnh nghĩa này cho rằng mỗi một nhịp tim bình thường thì gây ngạc nhiên còn chỗ không có nhịp tim thì lại là phần ít gây ngạc nhiên nhất!

Trang 19

4

Hình 1.1: Chuỗi thời gian ở trên cùng là ñiện tâm ñồ của một người khỏe mạnh bình thường với một ñường thằng cố tình ñược thêm vào Chuỗi bên dưới chỉ

ra mức ñộ gây ngạc nhiên của những phần cục bộ của chuỗi bên trên theo ñịnh

nghĩa của Shahabi và các cộng sự (nguồn [22])

Một ñịnh nghĩa tổng quát do Keogh và các cộng sự [22] ñề ra như sau:

Định nghĩa 1.2: Một chuỗi thời gian P, ñược rút trích từ cơ sở dữ liệu X là gây

ngạc nhiên ñối với cơ sở dữ liệu R, nếu tần suất xuất hiện của nó trong X là khác

một cách ñáng kể so với mong ñợi trong R, với giả sử rằng X và R ñược tạo ra bởi

cùng một tiến trình

Định nghĩa 1.2 có ưu ñiểm là không phụ thuộc vào cấu trúc của chuỗi thời gian cần kiểm tra cũng như không phụ thuộc vào một lĩnh vực nào Thay vào ñó, người dùng chỉ cần cung cấp những dữ liệu ñã quan sát ñược cho là bình thường

Nhược ñiểm của nó là không tận dụng ñược những kiến thức từ các chuyên gia lĩnh vực, và các kỹ thuật trong cộng ñồng khai phá dữ liệu không hỗ trợ việc xác

ñịnh một cách hiệu quả tần suất xuất hiện của chuỗi thời gian

Những ñịnh nghĩa trên là những ñịnh nghĩa chuỗi thời gian bất thường trên tập dữ liệu ñược tạo ra từ những chuỗi thời gian ñộc lập Sau ñây, ta sẽ xem xét ñịnh nghĩa

chuỗi con bất ñồng dựa trên ý tưởng tìm kiếm tương tự (similarity search) cũng do

Keogh và các cộng sự ñề xuất [17]

Định nghĩa 1.3: 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)

Trang 20

5

Định nghĩa 1.4: So trùng không-tầm-thường (non-self 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 1.5: Chuỗi con bất ñồ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 ñồ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-

Định nghĩa 1.5 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 ñồ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 ở [17] Ngoài ra,

ñể tìm kiếm chuỗi con bất ñồ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 ñộ tương tự) thích hợp Cũng ñã có nhiều nghiên cứu phương pháp tính ñộ tương tự, nhưng mỗi phương pháp dường như chỉ thích hợp với một vài kiểu dữ liệu chuỗi thời gian nào ñó

Các giải thuật phát hiện bất thường dù dựa trên ñịnh nghĩa chuỗi thời gian bất thường hay ñịnh nghĩa chuỗi con bất ñồng ñều có thể ñược chỉnh sửa dễ dàng ñể áp dụng ñúng ñắn vào ñịnh nghĩa còn lại Chúng ta chỉ cần thêm hoặc bỏ bớt quá trình kiểm tra so trùng không-tầm-thường Tuy nhiên, ñề tài này chỉ xem xét bài toán tìm kiếm chuỗi con bất ñồng trong chuỗi thời gian cho trước

Chúng tôi sẽ trình bày các giải thuật tương ứng với hai ñịnh nghĩa trên (ñịnh nghĩa 1.2 và 1.5) và các phương pháp xấp xỉ dữ liệu thích hợp phục vụ cho các nhiệm vụ khai phá dữ liệu nói chung và phát hiện bất thường nói riêng trong chương

3

Trang 21

6

Mục tiêu chính của luận văn là tìm hiểu phương pháp rời rạc hóa chuỗi dữ liệu thời

gian ở dạng bit iSAX [25] Sau ñó, ñề xuất một cách ứng dụng iSAX vào bài toán tìm kiếm chuỗi con bất ñồng Cụ thể, ñề tài này chọn ra hai giải thuật tìm kiếm chuỗi con bất ñồng là HOT SAX [17] và EHOT [28] ñể so sánh ñộ hiệu quả giữa phương pháp iSAX và phương pháp SAX [24] Lý do chọn hai giải thuật này sẽ

ñược chúng tôi nêu rõ trong quá trình trình bày và chốt lại ở cuối chương 2

Sau khi khảo sát các phương pháp biểu diễn, hàm tính ñộ tương tự, tìm hiểu

phương pháp iSAX và các ñặc tính của nó, chúng tôi ñề xuất cách ứng dụng iSAX vào bài toán tìm kiếm chuỗi con bất ñồng như sau:

và cộng sự ñề nghị [20]

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 khả chỉ mục

iSAX do J Shieh và cộng sự ñề nghị [25]

MINDIST_PAA_iSAX [25] Hàm tính ñộ tương tự trong không gian nguyên thủy là Euclid

SAX [17] và EHOT [28]

• Tận dụng tính ña mức phân giải và cấu trúc chỉ mục của iSAX ñể tạo ra heuristic vòng lặp ngoài và heuristic vòng lặp trong hữu hiệu hơn

khác nhau, dựa trên tiêu chí: số lần gọi hàm tính ñộ tương tự trên không gian nguyên thủy, thời gian thực thi CPU của giải thuật

Trang 22

7

Trong giới hạn thời gian hiện thực, chúng tôi ñã hiện thực hệ thống tìm kiếm chuỗi con bất ñồng, gồm 4 môñun chính: môñun tạo tập dữ liệu thực nghiệm, môñun biểu diễn dữ liệu chuỗi thời gian, môñun cấu trúc dữ liệu và môñun tìm kiếm chuỗi con bất ñồng

Trong môñun thứ nhất, chúng tôi rút trích ngẫu nhiên các chuỗi con từ dữ liệu chuỗi thời gian gốc, tạo thành tập dữ liệu các chuỗi con dùng trong thực nghiệm Trong môñun thứ hai, chúng tôi hiện thực 2 phương pháp rời rạc hóa dữ liệu chuỗi thời gian là SAX và iSAX

Môñun thứ ba, chúng tôi tạo các cấu trúc dữ liệu tương ứng với từng phương

pháp rời rạc hóa dữ liệu chuỗi thời gian Cụ thể, cấu trúc dãy SAX và cây gia tố (Augmented Trie) cho phương pháp SAX, cấu trúc dãy iSAX và cấu trúc chỉ mục

iSAX (iSAX Index) cho phương pháp iSAX Các cấu trúc dữ liệu này dùng ñể tạo ra

heuristic vòng lặp ngoài và heuristic vòng lặp trong cho môñun tìm kiếm chuỗi con bất ñồng

Ở môñun tìm kiếm chuỗi con bất ñồng, chúng tôi hiện thực giải thuật HOT SAX, giải thuật EHOT, giải thuật HOTiSAX và giải thuật EHOTiSAX (hai giải thuật sau

do chúng tôi ñề xuất)

Hệ thống 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ả giữa phương pháp SAX và phương pháp iSAX khi áp dụng vào bài toán tìm chuỗi con bất ñồng Qua thực nghiệm, chúng tôi thấy phương pháp iSAX hữu hiệu hơn phương pháp SAX Như vậy, hệ thống của chúng tôi ñã ñáp ứng những yêu cầu và nhiệm vụ của ñề tài

Trang 23

8

Phần còn lại của luận văn ñược tổ chức như sau:

Chương 2 trình bày tổng quan 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, các cấu trúc chỉ mục phổ biến, cùng các giải thuật phát hiện bất thường 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 Cụ thể, những giải thuật tìm kiếm chuỗi con bất ñồng ñược chọn như giải thuật BFDD (Brute Force Discord Discovery) [17], giải thuật HDD (Heuristic Discord Discovery) [17], giải thuật HOT SAX và giải thuật EHOT

Chương 4, chúng tôi trình bày về phương pháp giải quyết vấn ñề, cách ứng dụng iSAX vào 2 giải thuật tìm kiếm chuỗi con bất ñồng là HOT SAX và EHOT Hệ thống hiện thực hóa phương pháp giải quyết vấn ñề cũng sẽ ñược giới thiệu trong chương 4

Chương 5, các kết quả thực nghiệm ñược công bố và so sánh Chúng tôi chạy thực nghiệm hệ thống trên các tập dữ liệu khác nhau Ứng với mỗi tập dữ liệu, chúng tôi kiểm tra với các thông số thiết lập khác nhau như: chiều dài chuỗi thời gian ban ñầu, chiều dài chuỗi con bất ñồng, số chiều trong không gian thu giảm, mức phân giải hay còn gọi là số ký tự mã hóa chuỗi thời gian

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

Trang 24

9

Chương 2: Tổng thuật các công trình liên quan

Chương 2 sẽ tổng thuật các công trình về ñộ ño tương tự, các phương pháp biểu diễn dữ liệu chuỗi thời gian (gồm các phương pháp thu giảm số chiều và các phương pháp rời rạc hóa dữ liệu chuỗi thời gian), các phương pháp lập chỉ mục, và các giải thuật phát hiện bất thường

Trong mọi bài toán về chuỗi thời gian nói chung hay bài toán tìm kiếm chuỗi con

khoảng cách của chúng bằng 0, là tương tự nhau khi khoảng cách của chúng nhỏ

hơn một giá trị ngưỡng nào ñó Và với một hàm tính ñộ tương tự D(x, y), các tính

chất sau cần ñược thỏa mãn:

Trang 25

Mặc dù có nhiều sự lựa chọn khác nhau cho p, nhưng người ta thường chọn p = 2 vì

những ưu ñiểm sau:

Ưu ñiểm:

tự Thích hợp cho nhiều phép biến biểu diễn xấp xỉ như DFT [5], DWT [26], PAA [20], hay APCA [30] …

Nhược ñiểm:

ñổi giống nhau nhưng lệch nhau về thời gian hoặc biên ñộ (amplitude) khác

nhau (xem Hình 2.1)

Để khắc phục nhược ñiểm này, trước khi tính khoảng cách, ta cần chuẩn hóa các

chuỗi thời gian Một cách chuẩn hóa ñược sử dụng phổ biến là ñưa về dạng trung

bình zero (zero-mean) và ñộ lệch chuẩn (deviation) là 1

Trang 26

11

(1) Đường cơ bản khác nhau (2) Biên ñộ dao ñộng khác nhau

Hình 2.1: Trường hợp 2 chuỗi có ñường cơ bản lệch nhau và biên ñộ dao ñộng

khác nhau (nguồn [13])

Ví dụ, cho Q có giá trị trung bình là mean(Q) và ñộ lệch chuẩn là var(Q), Q’ là chuỗi chuẩn hóa của Q ñược tính như sau:

Q’[i] = (Q[i] – mean(Q))/var(Q)

2.1.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 [10] 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.2a, 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.2b) Phương pháp này gọi là xoắn thời gian ñộng [10]

Trang 27

12

(a) Tính theo khoảng cách Euclid (b) Tính theo khoảng cách DTW Hình 2.2: Minh họa sự khác nhau giữa 2 ñộ ño Euclid và DTW (nguồn [12])

Để 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

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.3

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

Như vậy,

DTW(S, T) = minw[ ]

Trang 28

13

Hình 2.3: Một ví dụ ñường ñi xoắn (nguồn [10])

Để giới hạn không gian tìm kiếm ñường ñi xoắn, những ràng buộc sau phải ñược

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) (xem Hình 2.3)

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

Trang 29

14

Ưu ñiểm:

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

Nhược ñiểm:

2.1.3 Phương pháp chuỗi con chung dài nhất (Longest Common Subsequence – LCS)

Phương pháp LCS do Vlachos và các cộng sự ñề ra năm 2004 [27] Điểm nổi bật của phương pháp này là nó cho phép bỏ qua những ñiểm bất thường khi so sánh Ý tưởng chính của phương pháp này là tìm những chuỗi con chung Hai chuỗi có

chuỗi con chung càng dài thì càng giống nhau Ví dụ, cho 2 chuỗi X, Y:

• Cũng giống phương pháp Euclid, dữ liệu nên ñược chuẩn hóa trước khi áp

dụng phương pháp này, nhằm tránh hiện tượng tịnh tiến (shifting) ñường cơ bản hay co giãn (scaling) biên ñộ

Trang 30

15

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)

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

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

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)

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)

Hầu hết các phương pháp xấp xỉ ñều chỉ ra ñược hàm tính ñộ tương tự trên không gian thu giảm sao cho nó là chặn dưới của khoảng cách thực của dữ liệu gốc Chỉ một số phương pháp không thỏa mãn ñiều kiện chặn dưới này cho rằng phải hy sinh

Trang 31

16

ñộ chính xác của kết quả tìm ñược ñể tăng tốc ñộ tính toán và tìm kiếm (xem Hình

2.4, phương pháp Value-based và Slope-based) Sau khi có ñược sự xấp xỉ của dữ liệu gốc, ñể tăng tốc ñộ tìm kiếm và tính toán, cần thiết phải có cơ chế lập chỉ mục cho dữ liệu xấp xỉ này

Trước khi trình bày một số phương pháp biểu diễn cụ thể, ta sẽ tìm hiểu sơ qua các nhóm phương pháp biểu diễn phổ biến hiện nay Các phương pháp này ñược chia thành 4 nhóm:

Phương pháp này dùng những mô hình toán học nổi tiếng như mô hình Markov ẩn, mô hình thống kê… ñể xây dựng mô hình cho dữ liệu ñã ñược quan sát trước (hay còn gọi là dữ liệu huấn luyện) Sau ñó, sử dụng mô hình ñã xây dựng ñược ñể tính xác suất xuất hiện của các chuỗi con mới

Phương pháp này ñòi hỏi các thành phần thông số cần phải ñược thiết lập lại mỗi khi có dữ liệu mới thêm vào

Các thông số ñược thiết lập trước và không cần phải thiết lập lại mỗi khi có dữ liệu mới thêm vào

Các thông số ñược thiết lập bởi chính dữ liệu, người dùng không tự mình thiết lập ñược

Trang 32

17

Hình 2.4: Các phương pháp biểu diễn chuỗi thời gian (nguồn [13])

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

2.2.1 Phương pháp biến ñổi Fourier rời rạc DFT (Discrete Fourier Transform)

Phương pháp DFT, do Agrawal và các cộng sự ñề nghị năm 1993 [31], biến ñổi từ domain thời gian sang domain tần số Sau ñó, lập chỉ mục trên một vài tần số ñầu tiên, loại bỏ những tần số còn lại dựa trên nhận xét rằng năng lượng của hầu hết các chuỗi thời gian trong thực tế ñều tập trung ở một vài tần số ñầu tiên [31]

Chuỗi biến ñổi X f (f = 0,…,n-1) của chuỗi X t (t = 0,…,n-1) ñược ñịnh nghĩa như sau:

Trang 33

18

X f là các số phức Hàm tính ñộ tương tự ñược ñề nghị cho phương pháp này là phương pháp Euclid Phương pháp lập chỉ mục ñề nghị như F-Index [31], ST-index [5]

Ưu ñiểm:

do ñó thỏa mãn ñiều kiện chặn dưới của khoảng cách thực của dữ liệu gốc

Độ phức tạp tính toán O(nlogn) cho phương pháp Fast Fourier Transform (một

cải tiến của DFT)

Nhược ñiểm:

ñầu tiên (ñược ñịnh nghĩa là pink noise, brown noise) trong khi sẽ thiếu sót

thông tin quan trọng ñối với các loại dữ liệu có năng lượng phân bố ñều (white noise) hoặc năng lượng tập trung ở các tần số cuối (blue noise, violet noise) [9]

Hình 2.5: Các dạng biểu diễn phổ biến nhất cho khai phá dữ liệu chuỗi thời

gian (nguồn [13])

Trang 34

ñược sử dụng khá phổ biến bởi dễ tính toán và ñủ tốt cho bài toán khai phá dữ liệu

chuỗi thời gian

Ví dụ cho một chuỗi X = (9 7 3 5) Biến ñổi Haar Wavelet của chuỗi này như

Như vậy, chuỗi biến ñổi của X là X’ = (6 2 1 -1) Để thu giảm số chiều ta chỉ sử

dụng một vài hệ số ñầu Hàm tính ñộ tương tự ñề nghị là hàm khoảng cách Euclid Cấu trúc chỉ mục là R-tree [26]

Độ phức tạp O(n), nhanh hơn so với Fast Fourier Transform

Nhược ñiểm:

Fourier Transform)

Trang 35

20

2.2.3 Phương pháp xấp xỉ gộp từng ñoạn PAA (Piecewise Aggregate Approximation)

Phương pháp PAA, do Keogh và các cộng sự ñề xuất năm 2001 [18], 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ả biến ñổi là ñường thẳng có dạng bậc thang (Hình 2.6)

Ví dụ cho chuỗi x j (j = 1,…,n), chuỗi biến ñổi X i (i = 1,…,N) (N là số chiều thu

giảm) ñược tính theo công thức sau:

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

Hỗ trợ các phương pháp tính khoảng cách 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:

Trang 36

Nhược ñiểm:

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ỏ

nhất của mỗi ñoạn xấp xỉ Những ñiểm như thế này rất quan trọng ñối với những dữ liệu tài chính mà chúng ta sẽ thấy ở phần trình bày phương pháp ESAX

2.2.4 Phương pháp xấp xỉ từng ñoạn thích nghi APCA (Adaptive Piecewise Constant Approximation)

Phương pháp APCA do Keogh và các cộng sự ñề xuất năm 2001 [19] Phương pháp này giống với phương pháp PAA là nó xấp xỉ dữ liệu ban ñầu thành các ñoạn thẳng nằm ngang Nhưng nó khác ở chỗ các ñoạn thẳng này có chiều dài khác nhau (không như ở PAA, các ñoạn thẳng có chiều dài bằng nhau) Để xấp xỉ chính xác hơn, những vùng nào trên chuỗi thời gian có biến ñộng nhấp nhô nhiều thì ñược phân thành những ñoạn ngắn, còn những vùng nào ít biến ñộng thì ñược phân thành những ñoạn dài hơn

Cụ thể, cho chuỗi thời gian C = {c 1 ,…,c n }, thì chuỗi biến ñổi C’ có dạng:

Trang 37

22

C’ = {<cv 1 , cr 1 >,…,<cv m , cr m >} với cr 0 = 0

Trong ñó cv i là giá trị trung bình cộng của những ñiểm dữ liệu ở ñoạn thứ i, tức là

và cr i là ñiểm bên phải cùng của ñoạn thứ i (cho biết chiều dài của ñoạn thứ i)

Phương pháp APCA hỗ trợ hàm tính khoảng cách Minskowki, Euclid Ngoài ra còn có hai hàm tính khoảng cách ñược thiết kế riêng cho phương pháp này, một hàm xấp xỉ khoảng cách Euclid trên dữ liệu gốc nhưng không thỏa mãn chặn dưới (hỗ trợ tốt cho việc tìm kiếm xấp xỉ), một hàm còn lại thỏa mãn chặn dưới nhưng chặt hơn

so với dùng các khoảng cách Minskowki hoặc Euclid (hỗ trợ tốt cho việc tìm kiếm chính xác) Cấu trúc chỉ mục ñược sử dụng là R-tree [19]

Ưu ñiểm:

Nhược ñiểm:

Độ phức tạp biến ñổi O(nlogn)

2.2.5 Phương pháp xấp xỉ tuyến tính từng ñoạn PLA (Piecewise Linear Approximation)

Phương pháp PLA [14][16][30], do Morinaka và các cộng sự ñề nghị năm 2001, biểu diễn dữ liệu ban ñầu bằng chuỗi các ñoạn thẳng tuyến tính Dữ liệu ban ñầu

ñược chia thành các chuỗi con có chiều dài bằng nhau, mỗi chuỗi con sẽ ñược xấp

xỉ bằng một ñoạn thẳng tuyến tính Ví dụ, cho một chuỗi con S = {s 1 ,…,s n }, một

ñoạn thẳng tuyến tính xấp xỉ chuỗi con S này có dạng s t ’ = a.t + b (t Є [1, n]), trong

ñó hệ số a và b ñược tính toán sao cho lỗi tái tạo RecErr(S) của S là nhỏ nhất

(RecErr(S) chính bằng khoảng cách Euclid của S và ñoạn thẳng tuyến tính xấp xỉ)

[30]

Trang 38

23

Hàm tính khoảng cách ñược ñề xuất là khoảng cách PLA [30] thỏa ñiều kiện chặn dưới Cấu trúc chỉ mục là R-tree

Ưu ñiểm:

là ñoạn thẳng nằm ngang như APCA và do ñó lỗi tái tạo của PLA là thấp hơn APCA

Độ phức tạp biến ñổi O(n)

Nhược ñiểm:

2.2.6 Phương pháp xấp xỉ gộp ký hiệu hóa SAX (Symbolic Aggregate approXimation)

Phương pháp SAX, do Lin và các cộng sự ñề xuất năm 2003 [24], ñượ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 1 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 2 ký tự thành giá trị số

Phương pháp SAX sử dụng hàm tính khoảng cách MINDIST [24] trên không gian thu giảm, thỏa ñiều kiện chặn 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) [23], 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)

Ưu ñiểm:

Trang 39

24

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

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:

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

của mỗi ñoạn, giống như phương pháp PAA

2.2.7 Phương pháp ESAX (Extended SAX)

Một sự mở rộng của SAX, gọi là ESAX [2], do Lkhagva và các cộng sự ñề xuất năm 2006, ñem lại một cách rời rạc hóa dữ liệu hữu hiệu hơn SAX khi áp dụng vào

dữ liệu chuỗi thời gian trong lĩnh vực tài chính Phương pháp ESAX dựa trên quan sát rằng ñối với dữ liệu tài chính, các ñiểm có giá trị nhỏ nhất hay lớn nhất là rất quan trọng trong phân tích tài chính Mà phương pháp SAX chỉ quan tâm ñến giá trị trung bình, do ñó sẽ mất ñi thông tin quan trọng của dữ liệu ban ñầu (xem Hình 2.7)

Để khắc phục nhược ñiểm này, sau khi ñạt ñược giá trị trung bình của mỗi ñoạn bằng phương pháp PAA, cần thêm vào giá trị lớn nhất và giá trị nhỏ nhất của mỗi

ñoạn Như vậy mỗi phân ñoạn sẽ ñược thể hiện bằng một bộ ba <trị trung bình, trị

nhỏ nhất, trị lớn nhất> (thứ tự của 3 giá trị này tùy thuộc vào thứ tự thực tế theo thời gian của chúng), và sau ñó bộ ba này sẽ ñược mã hóa thành 3 ký tự thay vì chỉ một

ký tự như SAX Phương pháp ESAX sử dụng hàm tính khoảng cách và cấu trúc chỉ mục như SAX

Trang 40

25

Hình 2.7: Dữ liệu chuỗi thời gian trong lĩnh vực tài chính ñược biểu diễn bằng

phương pháp SAX (nguồn [2])

2.2.8 Phương pháp xén dữ liệu (Clipped data)

Trong phương pháp xén dữ liệu, do Ratanamahatana và các cộng sự ñề nghị năm

2005 [8], mỗi ñiểm giá trị thực ñược thay thế bằng một giá trị bit Cụ thể ta có thể

ñịnh nghĩa c, dạng biểu diễn xén của chuỗi thời gian C như sau:

Trong ñó µ là giá trị trung bình của C (xem Hình 2.8)

Ưu ñiểm:

trên cửa sổ trượt [8]… Do ñó khả năng nén dữ liệu rất cao

dưới

• Chuỗi dữ liệu truy vấn không cần chuyển ñổi về không gian thu giảm ñể so

Ngày đăng: 15/02/2021, 17:26

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

w