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

Hcmute phát hiện bất thường trên chuỗi thời gian dựa vào kỹ thuật rời rạc hóa dữ liệu

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 (3.36 MB, 61 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

CƠNG TRÌNH NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG

PHÁT HIỆN BẤT THƯỜNG TRÊN
CHUỖI THỜI GIAN DỰA VÀO KỸ THUẬT
RỜI RẠC HÓA DỮ LIỆU

MÃ SỐ: T2019-30TĐ

SKC 0 0 6 9 3 8

Tp. Hồ Chí Minh, tháng 02/2020

Luan van


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

BÁO CÁO TỔNG KẾT

ĐỀ TÀI KH&CN CẤP TRƯỜNG TRỌNG ĐIỂM

PHÁT HIỆN BẤT THƯỜNG TRÊN CHUỖI THỜI GIAN
DỰA VÀO KỸ THUẬT RỜI RẠC HÓA DỮ LIỆU

Mã số: T2019-30TĐ



Chủ nhiệm đề tài: TS. Nguyễn Thành Sơn

TP. HCM, 2/2020

Luan van


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO TỔNG KẾT

ĐỀ TÀI KH&CN CẤP TRƯỜNG TRỌNG ĐIỂM

PHÁT HIỆN BẤT THƯỜNG TRÊN CHUỖI THỜI GIAN
DỰA VÀO KỸ THUẬT RỜI RẠC HÓA DỮ LIỆU

Mã số: T2019-30TĐ

Chủ nhiệm đề tài: Nguyễn Thành Sơn

TP. HCM, 2/2020

Luan van


MỤC LỤC
DANH MỤC CÁC HÌNH ẢNH .................................................................................. 1

DANH MỤC CÁC TỪ VIẾT TẮT .............................................................................. 4
PHẦN MỞ ĐẦU ......................................................................................................... 7
PHẦN NỘI DUNG .................................................................................................... 10
CHƯƠNG 1. Các kiến thức cơ sở............................................................................... 10
1.1

Tổng quan về đề tài. ...................................................................................... 10

1.2

Các kiến thức cơ bản. .................................................................................... 12

1.2.1 Các độ đo tương tự.................................................................................... 12


Độ đo Minkowski. .................................................................................... 12



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

1.2.2 Thu giảm số chiều chuỗi thời gian. ........................................................... 15


Điều kiện chặn dưới. ................................................................................. 15



Phương pháp biến đổi Fourier rời rạc. ....................................................... 17




Phương pháp biến đổi Wavelet rời rạc. ..................................................... 17



Phương pháp xấp xỉ gộp từng đoạn. .......................................................... 18



Phương pháp điểm cực trị. ........................................................................ 19



Phương pháp điểm PIP. ............................................................................. 19



Phương pháp xén dữ liệu........................................................................... 20

1.2.3 Rời rạc hóa chuỗi thời gian. ...................................................................... 21
1.2.4 R-tree ........................................................................................................ 22
1.2.5 Chỉ mục đường chân trời........................................................................... 23
1.3

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

1.3.1 Các khái niệm cơ bản. ............................................................................... 25
1.3.2 Giải thuật phát hiện bất thường theo kiểu vét cạn. ..................................... 26
1.3.3 Tổng quan về một số phương pháp phát hiện bất thường tiêu biểu. ........... 27

CHƯƠNG 2. Phương pháp đề xuất. ........................................................................... 30
2.1

Ý tưởng chính ............................................................................................... 30

2.2

Kỹ thuật từ bỏ sớm. ....................................................................................... 32

2.3

Thuật toán phát hiện bất thường dựa vào phương pháp rời rạc hóa. ............... 33

CHƯƠNG 3. Kết quả thực nghiệm. ............................................................................ 35
CHƯƠNG 4. Kết luận và hướng phát triển. ................................................................ 40


Đóng góp của đề tài. ..................................................................................... 40



Hạn chế của đề tài. ........................................................................................ 40
i

Luan van




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


TÀI LIỆU THAM KHẢO.......................................................................................... 41

ii

Luan van


DANH MỤC CÁC HÌNH ẢNH
Hình 1.1 Đường biểu diễn một chuỗi thời gian. ......................................................... 10
Hình 1.2 Ví dụ về chuỗi con bất thường trong chuỗi thời gian ECG........................... 11
Hình 1.3 Minh họa hai chuỗi thời gian giống nhau. .................................................... 13
Hình 1.4 Khoảng cách giữa hai đường biểu diễn rất giống nhau về hình dạng............ 14
Hình 1.5 Minh họa cách tính khoảng cách theo DTW. ............................................... 15
Hình 1.6 Minh họa phương pháp DFT ....................................................................... 17
Hình 1.7 Minh họa phương pháp Haar Wavelet ......................................................... 18
Hình 1.8 Minh họa phương pháp PAA ....................................................................... 18
Hình 1.9 Minh họa quá trình nhận dạng các điểm PIP ................................................ 20
Hình 1.10 Minh họa kỹ thuật xén dữ liệu một chuỗi thời gian có chiều dài là 64 ....... 21
Hình 1.11 Minh họa phương pháp SAX với a = 3 ( [28]). .......................................... 22
Hình 1.12 Minh họa các trường hợp MBR có phủ lấp và khơng phủ lấp ( [33]). ........ 23
Hình 1.13 Minh họa SBR và SBR xấp xỉ của ba chuỗi thời gian ( [33]) ...................... 24
Hình 1.14 Một ví dụ về các chuỗi tương tự tầm thường ............................................. 26
Hình 1.15 Giải thuật brute-force dùng phát hiện chuỗi con bất thường trên chuỗi thời
gian. .............................................................................................................. 27
Hình 2.1 Minh họa trực quan ý tưởng của kỹ thuật từ bỏ sớm ( [38]). ........................ 32
Hình 2.2 Thuật tốn phát hiện bất thường dựa vào phép rời rạc hóa. .......................... 33
Hình 3.1 Kết quả thực nghiệm về thời gian thực thi trên tập dữ liệu Stock với kích thước
tập dữ liệu là 8000 chuỗi và chiều dài bất thường thay đổi. ........................... 36
Hình 3.2 Kết quả thực nghiệm về thời gian thực thi trên tập dữ liệu EEG với kích thước

tập dữ liệu là 4000 chuỗi và chiều dài bất thường thay đổi. ........................... 36
Hình 3.3 Kết quả thực nghiệm về thời gian thực thi trên tập dữ liệu Federal với kích
thước tập dữ liệu là 10000 chuỗi và chiều dài bất thường thay đổi. ............... 36
Hình 3.4 Kết quả thực nghiệm về thời gian thực thi trên tập dữ liệu Stock với kích thước
tập dữ liệu khác nhau và chiều dài bất thường được cố định là 512. .............. 37
Hình 3.5 Kết quả thực nghiệm về thời gian thực thi trên tập dữ liệu EEG với kích thước
tập dữ liệu khác nhau và chiều dài bất thường được cố định là 512. .............. 37

1

Luan van


Hình 3.6 Kết quả thực nghiệm về thời gian thực thi trên tập dữ liệu Federal Fund với
kích thước tập dữ liệu khác nhau và chiều dài bất thường được cố định là 512.
...................................................................................................................... 38
Hình 3.7 Tập dữ liệu Stock (hình bên trên). Bất thường được phát hiện bởi thuật tốn
brute-force (hình dưới bên trái) và bất thường được phát hiện bởi thuật tốn của
Yankov (hình dưới ở giữa) và bất thường được phát hiện bởi thuật tốn đề xuất
(hình dưới bên phải). ..................................................................................... 38
Hình 3.8 Tập dữ liệu Stock (hình bên trên). Bất thường được phát hiện bởi thuật tốn
brute-force (hình dưới bên trái) và bất thường được phát hiện bởi thuật tốn của
Yankov (hình dưới ở giữa) và bất thường được phát hiện bởi thuật tốn đề xuất
(hình dưới bên phải). ..................................................................................... 39
Hình 3.9 Tập dữ liệu Stock (hình bên trên). Bất thường được phát hiện bởi thuật tốn
brute-force (hình dưới bên trái) và bất thường được phát hiện bởi thuật tốn của
Yankov (hình dưới ở giữa) và bất thường được phát hiện bởi thuật tốn đề xuất
(hình dưới bên phải). ..................................................................................... 39

2


Luan van


DANH MỤC BẢNG BIỂU
Bảng 2.1 Bảng tìm kiếm dùng để xác định vị trí các điểm ngắt với bộ ký tự a từ 3 đến 7.
................................................................................................................... 30
Bảng 2.2 Một bảng tìm kiếm trong trường hợp số ký tự sử dụng là 4 ......................... 31

3

Luan van


DANH MỤC CÁC CHỮ VIẾT TẮT
APCA

Adaptive Piecewise Constant Approximation

DTW

Dynamic Time Warping

DFT

Discrete Fourier Transform

ESAX

Extended Symbolic Aggregate approximation


iSAX

indexable SAX

MBR

Minimum Bounding Rectangle

MrMotif

Multi-resolution Motif

PAA

Piecewise Aggregate Approximation

PIP

Perceptually Important Point

SAX

Symbolic Aggregate approXimation

4

Luan van



TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ
THUẬT
THÀNH PHỐ HỒ CHÍ MINH

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

KHOA CNTT
Tp. HCM, Ngày 1 tháng 2 năm 2020

THƠNG TIN KẾT QUẢ NGHIÊN CỨU
1. Thơng tin chung:
- Tên đề tài: Phát hiện bất thường trên chuỗi thời gian dựa vào kỹ thuật rời rạc hóa
dữ liệu chuỗi thời gian.
- Mã số: T2019-30TĐ
- Chủ nhiệm: Nguyễn Thành Sơn
- Cơ quan chủ trì: Trường Đại học SPKT Tp. HCM
- Thời gian thực hiện: 12 tháng
2. Mục tiêu:
Đề xuất một phương pháp mới cho bài toán phát hiện bất thường trên chuỗi thời
gian dựa vào kỹ thuật rời rạc hóa dữ liệu chuỗi thời gian.
3. Tính mới và sáng tạo:
Phương pháp phát hiện bất thường dựa vào kỹ thuật rời rạc hóa dữ liệu sẽ giúp thực
hiện bài tốn phát hiện bất thường đạt hiệu quả về mặt thời gian lẫn khơng gian lưu trữ
vì nó chỉ cần tìm kiếm trong không gian thu giảm của chuỗi thời gian và chỉ cần một lần
quét qua toàn bộ dữ liệu chuỗi thời gian cùng một vài lần đọc dữ liệu trên đĩa để thẩm
định lại kết quả.
4. Kết quả nghiên cứu:
Đề xuất được một phương pháp mới cho bài toán phát hiện bất thường trên dữ liệu

chuỗi thời gian dựa vào kỹ thuật rời rạc hóa dữ liệu.
5. Thơng tin chi tiết sản phẩm:
- Sản phẩm khoa học:
+ Báo cáo khoa học: Một báo cáo khoa học trình bày phương pháp mới cho bài
toán phát hiện bất thường trên chuỗi thời gian dựa vào kỹ thuật rời rạc hóa dữ liệu.
+ Bài báo khoa học: Nguyen Thanh Son, Discovering Time Series Discord
Based On A Decrete Method. Journal of Technical Education Science, Ho Chi
Minh City University of Technology and Education, No.55 (01/2020)
6. Hiệu quả, phương thức chuyển giao kết quả nghiên cứu và khả năng áp dụng:
Có thể áp dụng trong giảng dạy sau đại học về chuyên đề chuỗi thời gian, sử dụng
làm cơ sở cho việc phát triển các ứng dụng trong các lĩnh vực liên quan khác.
Trưởng Đơn vị
Chủ nhiệm đề tài
(ký, họ và tên)
(ký, họ và tên)

5

Luan van


INFORMATION ON RESEARCH RESULTS

1. General information:
Project title: Time Series Discord Discovery based on the time series discretization
method.
Code number: T2019-30TĐ.
Coordinator: Nguyen Thanh Son
Implementing institution: HCM City University of Technology and Education.
Duration: 12 months

2. Objective(s):
Propose a new algorithm for time series discord discovery based on the time series
discretization method.
3. Creativeness and innovativeness:
A new method for discovering time series discord based on the time series discretization method. This approach is time and space efficient because it only finds in reduction space of data and needs a single scan over the entire time series database and a few
times to read the original disk data in order to validate the results.
4. Research results:
Scientific output: A new method for discovering time series discord with the support
of the time series discretization method.
5. Products:
A paper published in Vietnam Journal:
Nguyen Thanh Son, Discovering Time Series Discord Based On A Decrete
Method. Journal of Technical Education Science, Ho Chi Minh City University of
Technology and Education, No.55 (01/2020)
6. Effects, transfer alternatives of reserach results and applicability:
It can be used to lecture for the major course of time series at postgraduate level or
as a base for developing application softwares in some other relevant areas.

6

Luan van


PHẦN MỞ ĐẦU
1. Tình hình nghiên cứu trong và ngồi nước.
Nhiều phương pháp phát hiện bất thường đã được giới thiệu trong thời gian qua.
Chẳng hạn, trong [1] Keogh và các cộng sự giới thiệu thuật toán Heuristic Discord Discovery (HDD) để phát hiện chuỗi con bất thường trong chuỗi thời gian. Thuật toán này
được cải tiến từ thuật toán brute force bằng cách dùng hai cách tìm kiếm heuristic cho
hai vịng lặp ngồi và trong để xác định thứ tự tìm kiếm các chuỗi con tiềm năng từ cao
đến thấp. Để cải tiến hiệu quả của thuật toán HDD, Keogh và các cộng sự giới thiệu

thuật toán mới gọi là Hot SAX. Thuật tốn này sử dụng q trình rời rạc hóa SAX để
chuyển chuỗi thời gian thành chuỗi ký tự sau đó áp dụng thuật tốn Heuristic Discord
Discovery (HDD) đề phát hiện bất thường.
Fu và các cộng sự giới thiệu thuật toán phát hiện chuỗi con khác thường nhất trên
chuỗi thời gian dựa vào phép biến đổi Haar Wavelet [2]. Trong [3], Bu và các cộng sự
đề xuất một thuật toán mới được đặt tên là WAT (Wavelet and augmented trie). Thuật
toán này sử dụng biến đổi Haar Wavelet và cây gia tố (augmenter trie) để phát hiện bất
thường trên chuỗi thời gian. Trong [4] Chuah và các cộng sự đề xuất phương pháp phát
hiện bất thường dựa trên sự phân tích chuỗi thời gian. Sự phân tích này cho phép máy
tính xác định một dịng dữ liệu thời gian thực từ bộ cảm biến có chứa đựng bất kỳ sự co
thắt của cơ tim bất thường nào khơng. Nếu có, chuỗi con đó sẽ được gửi qua mạng đến
những chuyên gia để xác định vấn đề và đưa ra giải pháp thích hợp. Trong [5] Lin và
các cộng sự đề xuất thuật toán phát hiện bất thường trên chuỗi thời gian bằng cách tìm
mối quan hệ tương tự giữa các chuỗi con, sau đó bài tốn phát hiện bất thường được
chuyển thành bài toán lý thuyết đồ thị để giải bằng các thuật toán trong lý thuyết đồ thị.
Trong [6] Pavel Senin và các cộng sự giới thiệu thuật toán sử dụng phương pháp qui
nạp dựa vào qui tắc văn phạm để trợ giúp cho quá trình phát hiện bất thường. Đầu tiên
phương pháp này biến đổi chuỗi thời gian thành dạng chuỗi ký tự, tiếp theo sẽ suy luận
ra quy tắc văn phạm không phụ thuộc vào ngữ cảnh và sử dụng cấu trúc phân cấp của
nó để phát hiện ra các chuỗi ký tự con không tuân theo qui tắc. Năm 2019, Andrey
Polyakov và Mikhail Zymbler đề xuất một giải thuật song song cho bài toán phát hiện
bất thường trên chuỗi thời gian. Thuật toán này khai thác khả năng tính tốn khoảng
7

Luan van


cách Euclid một cách độc lập giữa các chuỗi con của chuỗi thời gian để thực hiện song
song chúng bằng cách sử dụng cơng nghệ OpenMP [7].
Cho đến nay có khá ít cơng trình nghiên cứu về bài tốn phát hiện bất thường trên

chuỗi thời gian được công bố trong nước. Chỉ có một vài cơng trình sau: năm 2011, Buu
và cộng sự giới thiệu thuật toán HOTiSAX [8]. Thuật toán này sử dụng phép biến đổi
iSAX thay cho SAX được sử dụng trong thuật toán Hot SAX. Năm 2012, Khanh và
cộng sự giới thiệu thuật toán mới WATiSAX cho bài toán phát hiện bất thường trên
chuỗi thời gian [9]. Thuật toán này sử dụng phép biến đổi iSAX kết hợp với thuật toán
WAT. Trong [10] Kha và cộng sự giới thiệu một cách tiếp cận mới cho bài toán phát
hiện bất thường. Cách tiếp cận này dựa vào viêc phát hiện đối tượng nằm ngoài xa bằng
phương pháp gom cụm. Theo cách tiếp cận này, đầu tiên các chuỗi con được trích từ
chuỗi thời gian bằng phương pháp phân đoạn, sau đó các chuỗi con được biến đổi sao
cho chúng có chiều dài bằng nhau rồi tiến hành gom cụm các chuỗi con này. Cuối cùng,
chuỗi con bất thường được phát hiện cách dùng độ đo được giới thiệu trong phương
pháp phát hiện đối tượng ngoài xa bằng gom cum do He và các cộng sự đề xuất năm
2003 [11]. Son và các cộng sự đã giới thiệu một cách tiếp cận sử dụng cấu trúc chỉ mục
đa chiều cho bài toán phát hiện bất thường trên chuỗi thời gian. Phương pháp này sử
dụng R*-tree để lưu trữ vùng bao các chuỗi con và sau đó sẽ tìm kiếm lân cận gần nhất
của các chuỗi con. Dựa vào lân cận gần nhất của các chuỗi con tìm được ta có thể dễ
dàng tìm ra chuỗi con bất thường trên chuỗi thời gian [12]. Trong [13] Chau và các cộng
sự đã đề xuất một phương pháp phát hiện bất thường trên chuỗi thời gian dạng luồng
(streaming time series). Phương pháp này dựa trên phương pháp HotSAX, trong đó các
tác giả sử dụng thuật toán gom cụm thay cho cây gia tố mà HotSAX sử dụng.
2. Tính cấp thiết của đề tài.
Bất thường trên chuỗi thời gian là chuỗi con khác biệt nhất với các chuỗi con khác
trong một chuỗi thời gian. Phát hiện bất thường trên chuỗi thời gian đã và đang nhận
được rất nhiều sự quan tâm trong cộng đồng nghiên cứu trong những năm qua. Nó đã
và đang được sử dụng để giải nhiều bài toán trong các lĩnh vực ứng dụng khác nhau như
các chẩn đoán lỗi, phát hiện các giao dịch lừa lọc, phát hiện sự xâm nhập mạng, các thay
đổi trong thói quen của khách hàng, làm sạch dữ liệu, v.v…. Vì vậy, việc nghiên cứu đề

8


Luan van


xuất ra các thuật toán mới hoặc cải tiến các thuật tốn đã có sao cho hiệu quả hơn vẫn
ln được các nhà nghiên cứu quan tâm thực hiện.
3. Ý nghĩa lý luận và thực tiễn.
3.1 Ý nghĩa lý luận.
Bài tốn phát hiện bất thường dựa trên bài tốn tìm kiếm tương tự. Việc thực hiện
tìm kiếm trong khơng gian thu giảm sẽ giúp giảm thiểu thời gian tìm kiếm tương tự.
3.2 Ý nghĩa thực tiễn.
Nghiên cứu này sẽ là nền tảng cho những nghiên cứu tiếp theo về các bài toán khác
trong khai phá dữ liệu chuỗi thời gian. Ngồi ra, cịn có thể áp dụng giảng dạy như một
chuyên đề cho sinh viên sau đại học.
4. Các đối tượng nghiên cứu.
Dữ liệu chuỗi thời gian, bất thường trên dữ liệu chuỗi thời gian và các kết quả
nghiên cứu đã công bố về phát hiện bất thường trên dữ liệu chuỗi thời gian.
5. Phạm vi và các phương pháp nghiên cứu.
5.1 Phạm vi nghiên cứu.
 Phương pháp thu giảm số chiều chuỗi thời gian và sử dụng cho bài tốn tìm kiếm
tương tự.
 Phương pháp phát hiện bất thường trên dữ liệu chuỗi thời gian.
5.2 Các phương pháp nghiên cứu.
 Tổng kết các kết quả nghiên cứu liên quan trước đây. Đánh giá hiệu quả của
các phương pháp. Thực nghiệm để kiểm tra kết quả.
 Nghiên cứu tài liệu, ứng dụng mơ hình lý thuyết và chứng minh bằng thực
nghiệm.

9

Luan van



PHẦN NỘI DUNG
CHƯƠNG 1.

Các kiến thức cơ sở.

1.1 Tổng quan về đề tài.
Một chuỗi thời gian (time series) là một chuỗi các điểm dữ liệu được đo theo từng
khoảng thời gian liền nhau theo một tần suất thời gian thống nhất. Hình 1.1 minh họa
một ví dụ về chuỗi thời gian biểu diễn tỉ giá chuyển đổi trung bình hàng tháng giữa đô
la Úc và đô la Mỹ (đơn vị đơ la Úc) từ 7/1969 đến 8/1995.

Hình 1.1 Đường biểu diễn một chuỗi thời gian.
Các bài toán thường được nghiên cứu trong khai phá dữ liệu chuỗi thời gian gồm
tìm kiếm tương tự (similarity search), gom cụm (clustering), phân lớp (classification),
phát hiện motif (motif discovery), khai phá luật (rule discovery), phát hiện bất thường
(anomaly detection), trực quan hóa (visualization), dự báo (forecast).
Những khó khăn và thách thức khi nghiên cứu về dữ liệu chuỗi thời gian [14]:
-

Dữ liệu thường rất lớn. Chẳng hạn, trong 1 giờ, dữ liệu điện tâm đồ (ECG) có thể
lên đến 1GB.

-

Phụ thuộc nhiều vào yếu tố chủ quan của người dùng và tập dữ liệu khi đánh giá
mức độ tương tự giữa các chuỗi thời gian.

10


Luan van


-

Dữ liệu không đồng nhất: định dạng của dữ liệu khác nhau, tần số lấy mẫu khác
nhau. Ngoài ra, dữ liệu có thể bị nhiễu, thiếu một vài giá trị hoặc khơng sạch.
Bài tốn tìm kiếm tương tự (so trùng) trong cơ sở dữ liệu chuỗi thời gian đã được

nhiều nhà nghiên cứu quan tâm trong những năm qua vì đây là bài toán cơ bản và là
một thành phần nền tảng của nhiều bài toán khác trong khai phá dữ liệu chuỗi thời gian.
Đây là bài tốn khó vì kích thước dữ liệu chuỗi thời gian thường lớn và vì chúng ta
khơng thể lập chỉ mục dữ liệu chuỗi thời gian một cách dễ dàng như trong hệ thống cơ
sở dữ liệu truyền thống. Một vài thí dụ về ứng dụng của tìm kiếm tương tự trên chuỗi
thời gian có thể nêu ra như sau:
-

Tìm trong q khứ, những giai đoạn mà số lượng sản phẩm bán được như tháng vừa
rồi.

-

Tìm những sản phẩm có chu kỳ doanh số giống nhau.

-

Tìm những đoạn nhạc trong một bài hát giống một đoạn nhạc đã có bản quyền.

-


Tìm những tháng trong quá khứ mà có lượng mưa giống như tháng vừa rồi.

-

Tìm những năm khơ hạn mà mực nước các sơng đều ở mức thấp.
Chuỗi con bất thường (unusual, abnormal, discord) là chuỗi con khác biệt nhất so

với các chuỗi con khác trong một chuỗi thời gian. Hình 1.2 minh họa ví dụ về chuỗi con
bất thường trong chuỗi thời gian về điện tậm đồ (ECG).

Hình 1.2 Ví dụ về chuỗi con bất thường trong chuỗi thời gian ECG
Phát hiện bất thường trên chuỗi thời gian đã và đang nhận được rất nhiều sự quan
tâm trong cộng đồng nghiên cứu trong những năm qua. Nó đã và đang được sử dụng để
giải nhiều bài toán trong các lĩnh vực ứng dụng khác nhau như các chẩn đoán lỗi, phát
hiện các giao dịch lừa lọc, phát hiện sự xâm nhập mạng, các thay đổi trong thói quen
của khách hàng, làm sạch dữ liệu, v.v… .
Nhiều thuật toán đã được giới thiệu để giải bài toán này như thuật toán Brute Force
Discord Discovery (BFDD), thuật toán Heuristic Discord Discovery (HDD), thuật toán

11

Luan van


Hot SAX, WAT, HotiSAX, WATiSAX, Disk Aware Discord Discovery, v.v…. Trong
các thuật toán đã được giới thiệu, nhiều thuật toán đi theo hướng tìm kiếm trong khơng
gian gốc. Hướng tiếp cận này có ưu điểm là khơng cần trải qua giai đoạn thu giảm số
chiều nhưng có thể thời gian thực thi sẽ cao. Trong trường hợp xấu nhất độ phức tạp
tính tốn sẽ là hàm mũ theo kích thước của tập dữ liệu. Vì vậy, việc nghiên cứu đề xuất

ra các thuật toán mới hoặc cải tiến các thuật tốn đã có sao cho hiệu quả hơn vẫn ln
được các nhà nghiên cứu quan tâm thực hiện.
1.2 Các kiến thức cơ bản.
Trong phần này, chúng tơi giới thiệu tóm tắt cơ sở lý thuyết về các độ đo tương tự,
các phương pháp thu giảm số chiều và cấu trúc chỉ mục được sử dụng trong đề tài.
1.2.1 Các độ đo tương tự.
Trong các bài toán về chuỗi thời gian, để so sánh 2 chuỗi người ta sử dụng các
độ đo tương tự. Hai đối tượng được xem là giống nhau khi độ đo tương tự giữa chúng
bằng 0, được xem là tương tự nếu độ đo tương tự giữa chúng nhỏ hơn một giá trị  được
qui ước trước đó. Để có thể tính tốn và so sánh, độ đo này được biểu diễn thành các số
thực và phải thỏa các tính chất sau:
-

D(x,y) = 0 nếu và chỉ nếu x = y

-

D(x, y) = D(y, x)

-

D(x, y)  0 với mọi x, y

-

D(x, y) < D(x, z) + D(y, z)

Dưới đây là các độ đo thường được sử dụng
 Độ đo Minkowski.
Ký hiệu là Sim(X,Y) (độ tương tự giữa hai chuỗi X và Y có chiều dài n) và được

định nghĩa như sau:
n

Sim( X , Y )  P  xi  yi 

P

, với xi  X, yi  Y, i = 1, …, n

(1.1)

i 1

Trong đó, p = 2 (Euclid) là độ đo thường được sử dụng.

(1.1)

(1.1)
Độ đo này có ưu điểm tính tốn dễ dàng. Tuy nhiên nó cũng có một số nhược điểm
là do phương pháp này tính tốn dựa trên các cặp giá trị tương ứng trong hai chuỗi nên

12

Luan van


đối với các trường hợp tính chất của hai mẫu là giống nhau nhưng giá trị khác nhau (có
đường căn bản khác nhau hay có biên độ dao động khác nhau) thì khoảng cách hai mẫu
sẽ rất khác nhau. Hình 1.3 minh họa trường hợp này.


(b)

(a)

Hình 1.3 Minh họa hai chuỗi thời gian giống nhau.
nhưng (a) đường cơ bản khác nhau và (b) biên độ giao động khác nhau ( [15]).
Để khắc phục trường hợp này trước khi áp dụng các giải thuật ta cần thực hiện
chuẩn hóa dữ liệu. Các phương pháp chuẩn hóa thường được dùng là:
- Chuẩn hóa trung bình zero (Zero-Mean normalization) [16]
Chuỗi Q được biến đổi thành chuỗi Q’ theo công thức
Q’[i] = (Q[i]- mean(Q)) / var(Q)

(1.2)

Với mean(Q) là giá trị trung bình của Q và var(Q) là độ lệch chuẩn của Q. (1.2)
- Chuẩn hóa nhỏ nhất-lớn nhất (Min-Max normalization) [16]
Chuỗi Q được biến đổi thành chuỗi Q’ theo công thức
Q'[i] 

Q[i]  Minold
( Maxnew  Minnew )  Minnew
Maxold  Minold

Với Minold và Maxold là giá trị nhỏ nhất và lớn nhất của chuỗi ban đầu.

(1.3)
(1.3)

Minnew và Maxnew là giá trị nhỏ nhất và lớn nhất của chuỗi sau khi được chuẩn hóa.
 Độ đo xoắn thời gian động.

Trong trường hợp hai mẫu cần so sánh có hai đường biểu diễn khơng hồn tồn
giống nhau nhưng hình dạng biến đổi rất giống nhau thì khi so sánh độ tương tự giữa
hai mẫu bằng cách so sánh từng cặp điểm 1-1 (so điểm thứ i của đường thứ nhất và điểm
thứ i của đường thứ hai) là khơng phù hợp. Hình 1.4 minh họa 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 hai đường
thì kết quả rất khác nhau và có thể dẫn đến kết quả cuối cùng không giống như mong

13

Luan van


muốn. Vì vậy để khắc phục nhược điểm này, một điểm có thể ánh xạ với nhiều điểm và
ánh xạ này không thẳng hàng. Phương pháp này gọi là xoắn thời gian động (Dynamic
Time Warping - DTW) [17].

Hình 1.4 Khoảng cách giữa 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.
(a) tính theo độ đo Euclid và (b) tính theo độ đo DTW ( [15]).
Cách tính DTW
Cách đơn giản nhất để tính DTW của hai đường X và Y là ta xây dựng ma trận
Dm x n với m = |X| và n= |Y|. Khi đó, Dij = d(xi , yj ).
Sau khi xây dựng ma trận D , ta tìm đường đi từ ô (0,0) đến ô (m,n) thỏa mãn những
ràng buộc sau:
-

Không được đi qua trái hay đi xuống

-


Đường đi phải liên tục

-

Ô (i,j) thuộc đường đi phải thỏa |i - j| <= w
Giả sử có L ơ đi từ ơ (0, 0) đến ô (m, n) thỏa mãn những điều kiện trên,

khi đó: DTW (Q, C )  min
W



L
k 1

d k ,W  w1 , w2 ,..., wL



(1.4)

trong đó dk = d(qi, cj) là khoảng cách được biểu diễn như wk = (i, j)k trên đường đi(1.4)
W.
Tuy nhiên, ta có thể dùng quy hoạch động để giải quyết bài toán này. Trong đó, cơng
thức truy hồi để tính D(i, j):

 (i, j )  d (qi , c j )  min{ (i  1, j  1), (i  1, j ), (i. j  1)}

(1.5)


(1.5)
Độ đo tương tự DTW có ưu điểm là cho kết quả chính xác hơn so với độ đo Euclid
và 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. Độ đo tương tự này có nhược điểm là thời gian chạy lâu, tuy
nhiên gần đây đã có những cơng trình tăng tốc độ tìm kiếm tương tự dùng độ đo DTW,

14

Luan van


tiêu biểu nhất là cơng trình của Keogh và các cộng sự, năm 2002 [18]. Hình 1.5 minh
họa cách tính khoảng cách theo DTW.

Hình 1.5 Minh họa cách tính khoảng cách theo DTW.
1.2.2

Thu giảm số chiều chuỗi thời gian.

Thu giảm số chiều là phương pháp biểu diễn chuỗi thời gian n chiều X = {x1, x2,
…, xn} thành chuỗi thời gian có N chiều Y = {y1, y2, …, yN} với N << n, nhưng vẫn phải
giữ được các đặc trưng của chuỗi thời gian ban đầu. Với N càng lớn thì sự khơi phục
càng chính xác.
Dữ liệu chuỗi thời gian thường rất lớn nên việc tìm kiếm trực tiếp trên dữ liệu
chuỗi thời gian gốc sẽ không hiệu quả. Để khắc phục vấn đề này, cách tiếp cận chung
thường được sử dụng bao gồm các bước sau:
1. Áp dụng một số phương pháp biến đổi xấp xỉ để thu giảm độ lớn của dữ liệu sao cho
vẫn giữ được các đặc trưng của dữ liệu. Các phương pháp biến đổi xấp xỉ này thường
được gọi là những phương pháp thu giảm số chiều (dimensionality reduction).

2. Thực hiện bài toán trên dữ liệu xấp xỉ, ta thu được tập kết quả xấp xỉ.
3. Dựa trên tập kết quả xấp xỉ này, thực hiện truy cập đĩa để thực hiện hậu kiểm trên dữ
liệu gốc nhằm loại bỏ các chuỗi tìm sai trong tập kết quả xấp xỉ.
 Điều kiện chặn dưới.
Do khi xấp xỉ dữ liệu sẽ gây ra mất mát thông tin, nên khi thực hiện trên dữ liệu
xấp xỉ có thể xảy ra lỗi tìm sót (false dismissal) và/hoặc tìm sai (false alarm). Để đảm
bảo có kết quả chính xác, lỗi tìm sót khơng được phép xảy ra. Mặt khác, lỗi tìm sai cũng
nên thấp để giảm chi phí trong q trình hậu kiểm.
15

Luan van


Một kết quả quan trọng đã được Faloutsos và các cộng sự chứng minh là để khơng
xảy ra lỗi tìm sót thì độ đo khoảng cách sử dụng trong khơng gian xấp xỉ (đặc trưng)
phải là chặn dưới của độ đo khoảng cách sử dụng trong không gian gốc [19]. Nghĩa là,
dfeature (X’, Y’) ≤ d(X, Y) với dfeature (X’, Y’) là độ đo khoảng cách giữa hai chuỗi xấp xỉ
của hai chuỗi ban đầu X, Y và d(X, Y) là độ đo khoảng cách giữa hai chuỗi X, Y. Điều
kiện này được gọi là bổ đề chặn dưới (lower bounding lemma).
 Bổ đề (Chặn dưới). Để đảm bảo không xảy ra lỗi tìm sót khi truy vấn tầm (range
query), phương pháp thu giảm số chiều (rút trích đặc trưng) phải thỏa mãn công thức
sau đây:
dfeature (Q’, O’) ≤ d(Q, O)
Chứng minh
Gọi Q là chuỗi truy vấn, O là một đối tượng tương tự với truy vấn Q, và Q’, O’ là
hai chuỗi thu giảm tương ứng của Q, O và  là dung sai. Chúng ta muốn chứng minh
rằng nếu đối tượng O thực sự khớp với truy vấn, thì O’ sẽ được trả về khi ta thực hiện
truy vấn tầm trên không gian đặc trưng. Tức là chúng ta mong muốn chứng minh rằng:
d(Q, O) ≤   dfeature (Q’, O’) ≤ 
Điều này sẽ hiển nhiên khi

dfeature (Q’, O’) ≤ d(Q, O) ≤ 
Do đó chúng ta bắt buộc phải có: dfeature (Q’, O’) ≤ d(Q, O)



Ngồi ra, nếu dfeature (Q’, O’) càng gần với d(Q, O) thì đảm bảo sự xấp xỉ càng ít
mất mát thơng tin và lỗi tìm sai sẽ càng ít. Khi đó tỉ số dfeature (Q’, O’)/ d(Q, O) sẽ càng
gần giá trị 1. Tỉ số này còn được gọi là độ chặt của chặn dưới (the tightness of lower
bound).
Có nhiều phương pháp thu giảm số chiều đã được đề xuất. Một số phương pháp
tiêu biểu như: phương pháp biến đổi Fourier rời rạc [20], phương pháp biến đổi Wavelet
rời rạc [21], phương pháp xấp xỉ gộp từng đoạn [22], phương pháp xấp xỉ hằng số từng
đoạn thích nghi (APCA – Adaptive Piecewise Constant Approximation) [23], phương
pháp điểm cực trị ( [24], [25]), phương pháp PIP (Perceptually Important Points) [26],
phương pháp xén dữ liệu (Clipping) [27].

16

Luan van


 Phương pháp biến đổi Fourier rời rạc.
Kỹ thuật thu giảm số chiều áp dụng phương pháp DFT do Agrawal và các cộng sự
đề xuất đầu tiên năm 1993 [20]. Ý tưởng cơ bản của phương pháp này là để thu giảm số
chiều một chuỗi thời gian X có chiều dài n vào không gian đặc trưng N chiều (N << n),
chuỗi thời gian ban đầu được biến đổi thành tập các hệ số (gọi là hệ số Fourier), các hệ
số này có dạng sóng hình sin (và/hoặc cosin) và được tính theo cơng thức sau:

1 n 1
xt e  j 2kt

(1.6)

n t 0
Trong đó, Ck là số phức với k = 0, …, n-1, xt là giá trị thứ t của chuỗi thời gian,
Ck 

t = 0, …, n-1 và j   1..
Sau đó tổ hợp tuyến tính các sóng này ta có được dạng biểu diễn mong muốn (Hình 1.6).
Một chuỗi thời gian được biến đổi theo cách này gọi là biến đổi vào miền tần số. Độ
phức tạp của phép biến đổi Fourier nhanh (Fast Fourier Transform-FFT) là O(nlogn)
với n là số lượng điểm và phương pháp này thích hợp với các loại đường biểu diễn dữ
liệu khác nhau, tuy nhiên chúng cũng có nhược điểm là khó giải quyết khi các chuỗi có
chiều dài khác nhau.

Hình 1.6 Minh họa phương pháp DFT
 Phương pháp biến đổi Wavelet rời rạc.
Phương pháp DWT do Chan và Fu đề xuất năm 1999 [21]. Phương pháp này giống
như DFT, tuy nhiên trong khi hàm cơ sở của phương pháp DFT có dạng hình sin và các
hệ số Fourier ln biểu diễn sự phân bố toàn cục của dữ liệu, thì hàm cơ sở thường được
dùng trong phương pháp DWT là hàm Haar như trong Hình 1.7 và các hệ số Wavelet là
những đoạn con cục bộ theo thời gian của dữ liệu được nghiên cứu. Ngoài sử dụng hàm
Haar, phương pháp DWT có thể sử dụng các hàm cơ sở khác như Daubechies, Coiflet,
17

Luan van


Symmlet, … . Tuy nhiên, Haar Wavalet đã được sử dụng rất nhiều trong khai phá dữ liệu
chuỗi thời gian.


Hình 1.7 Minh họa phương pháp Haar Wavelet
 Phương pháp xấp xỉ gộp từng đoạn.
Phương pháp xấp xỉ gộp từng đoạn (PAA) do Keogh và cộng sự đề xuất năm 2000
[22]. Theo phương pháp này, chuỗi thời gian ban đầu được chia thành N đoạn con có
kích thước bằng nhau, sau đó tính trung bình của các điểm dữ liệu nằm trong mỗi đoạn
con. Như vậy, chuỗi thời gian được xấp xỉ bằng N giá trị trung bình đó. Kết quả cuối
cùng là đường thẳng có dạng bậc thang.
Cho chuỗi dữ liệu thời gian X = (x1, x2,…, xn ), phương pháp PAA sẽ biến đổi chuỗi
này thành chuỗi X  ( x1 , x2 ,..., x N ) với (N<xi 

N
n

n
i
N



xj

n
j  ( i 1) 1
N

Hình 1.8 minh họa phương pháp này.

Hình 1.8 Minh họa phương pháp PAA
18


Luan van

(1.7)


Ưu điểm của phương pháp này là đơn giản, thời gian tính tốn rất nhanh và cách
biểu diễn của nó hỗ trợ nhiều phương pháp tính khoảng cách (Euclid, DTW). Nhưng
nhược điểm của nó là phương pháp có thể bỏ qua những điểm đặc biệt trong từng đoạn
xấp xỉ của chuỗi thời gian. Vì vậy, trong nhiều trường hợp các đoạn có giá trị trung bình
bằng nhau nhưng về khoảng cách Euclid rất khác nhau.
Năm 2001, Keogh và các cộng sự đưa ra một cách tiếp cận tổng quát hơn so với
PAA. Phương pháp này được gọi là xấp xỉ hằng số từng đoạn thích nghi (APCA –
Adaptive Piecewise Constant Approximation) [23], nó cho phép các đoạn con có chiều
dài khác nhau nhằm xấp xỉ tốt hơn chuỗi thời gian.
 Phương pháp điểm cực trị.
Năm 2003, Fink and Pratt đã đề xuất một kỹ thuật thu giảm số chiều dựa trên việc
trích các điểm quan trọng trong chuỗi thời gian ( [24], [25]). Các điểm quan trọng được
lấy là các điểm cực đại và cực tiểu quan trọng và bỏ qua các điểm biến đổi nhỏ. Tỉ số
nén được kiểm soát bằng tham số R > 1. Khi tăng R sẽ có ít điểm được lấy hơn.
Các điểm cực trị quan trọng được định nghĩa như sau:
Điểm am trong chuỗi a1,…, an được gọi là một cực tiểu quan trọng nếu có một cặp
chỉ số i, j sao cho i  m  j, mà: am là cực tiểu trong đoạn ai…aj và ai /am  R và
aj /am  R.
Tương tự, điểm am trong chuỗi a1,…, an được gọi là một cực đại quan trọng nếu
có một cặp chỉ số i, j sao cho i  m  j, mà: am là cực đại trong đoạn ai…aj và am /ai  R
và am /aj  R.
 Phương pháp điểm PIP.
Năm 2001, Chung và các cộng sự đưa ra kỹ thuật thu giảm số chiều dựa vào các
điểm PIP (Perceptually Important Points) [26]. Giải thuật xác định các điểm PIP như

sau:
Với một chuỗi thời gian T đã được chuẩn hóa, hai điểm PIP đầu tiên được chọn là
điểm đầu tiên và điểm cuối cùng của chuỗi T. Điểm PIP thứ ba được chọn là điểm trong
T có khoảng cách lớn nhất so với hai điểm PIP đầu tiên. Điểm PIP thứ tư được chọn là
điểm trong T có khoảng cách lớn nhất so với hai điểm PIP kế cận đã chọn (có thể là
điểm đầu và điểm thứ ba hoặc điểm thứ ba và điểm cuối). Tiến trình xác định các điểm
19

Luan van


PIP tiếp tục cho đến khi số điểm PIP đạt được số điểm yêu cầu. Khoảng cách giữa một
điểm trong T với hai điểm PIP kế cận đã chọn là khoảng cách thẳng đứng (Vertical
Distance) từ điểm cần tính tới đường nối hai điểm PIP kế cận đã chọn.
Những ưu điểm của phương pháp thu giảm số chiều dựa vào điểm quan trọng là
(1) phù hợp với trực giác, (2) các chuỗi thời gian có chiều dài khác nhau có thể so trùng
và (3) có thể thu giảm số chiều ở nhiều mức phân giải khác nhau. Thông qua thực nghiệm
các tác giả cho thấy rằng cách tiếp cận dựa vào các điểm quan trọng là hiệu quả. Tuy
nhiên, họ chưa chứng minh về mặt lý thuyết tính chính xác của phương pháp này, tức là
thỏa được điều kiện chặn dưới. Ngoài ra, các phương pháp thu giảm số chiều dựa vào
điểm quan trọng cịn có một nhược điểm khác là không đề xuất được cấu trúc chỉ mục
đa chiều nào hỗ trợ.
Hình 1.9 minh họa quá trình nhận dạng các điểm PIP trên một chuỗi thời gian.

Hình 1.9 Minh họa quá trình nhận dạng các điểm PIP
 Phương pháp xén dữ liệu.
Phương pháp xén dữ liệu (Clipping) do Ratanamahatana và các cộng sự đề xuất
năm 2005 [27]. Xén dữ liệu là một tiến trình biến đổi các giá trị số thực của một chuỗi
thời gian C = (c1, …, cn) thành một chuỗi bit b tùy thuộc giá trị đó nằm trên hay dưới
đường trung bình của chuỗi. Q trình biến đổi được thực hiện theo cơng thức sau:


1
bt  
0

nếu ct > 
ngược lại

(1.8)

trong đó,  là giá trị trung bình của chuỗi.
Khơng mất tính tổng qt, tác giả giả định rằng  = 0. Hình 1.10 minh họa kỹ thuật
xén dữ liệu một chuỗi thời gian có chiều dài là 64.
Ưu điểm của kỹ thuật xén dữ liệu là (1) giữ được đặc trưng về hình dạng xấp xỉ
của chuỗi thời gian, (2) có tỉ số nén cao tối thiểu là 32:1, (3) cho phép so sánh trực tiếp
20

Luan van


×