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

Kết chuỗi con trên dữ liệu chuỗi thời gian dùng độ đo xoắn thời gian động

88 20 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 88
Dung lượng 2,69 MB

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

Nội dung

Ngoài ra, trong quá trình so trùng chuỗi con, luận văn sử dụng độ đo xoắn thời gian động có bổ sung kỹ thuật từ bỏ sớm khi khoảng cách tính được hiện tại đã vượt quá ngưỡng tìm kiếm.. TỔ

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

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

-

VÕ ĐỨC VĨNH

KẾT CHUỖI CON TRÊN DỮ LIỆU CHUỖI THỜI GIAN DÙNG ĐỘ ĐO XOẮN THỜI GIAN ĐỘNG

Chuyên ngành: Khoa Học Máy Tính

Mã số: 60.48.01

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 12 năm 2014

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG - HCM Cán bộ hướng dẫn khoa học: PGS TS Dương Tuấn Anh

Cán bộ chấm nhận xét 1: TS Võ Thị Ngọc Châu

Cán bộ chấm nhận xét 2: PGS TS Đỗ Phúc

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 05 tháng 01 năm 2015

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

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

2 Phản biện 1: TS Võ Thị Ngọc Châu

3 Phản biện 2: PGS TS Đỗ Phúc

4 Ủy viên: GS TS Phan Thị Tươi

5 Thư ký: TS Lê Thanh Vân

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý

chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)

CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA

KH & KT MÁY TÍNH

Trang 3

ĐẠ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ọ và tên học viên: Võ Đức Vĩnh MSHV: 12073052

Ngày, tháng, năm sinh: 06/02/1989 Nơi sinh: An Giang

Chuyên ngành: Khoa Học Máy Tính Mã số: 60.48.01

I TÊN ĐỀ TÀI: KẾT CHUỖI CON TRÊN DỮ LIỆU CHUỖI THỜI GIAN DÙNG ĐỘ

ĐO XOẮN THỜI GIAN ĐỘNG

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

II NGÀY GIAO NHIỆM VỤ: 05/07/2014

III NGÀY HOÀN THÀNH NHIỆM VỤ: 08/12/2014

IV CÁN BỘ HƯỚNG DẪN: PGS TS Dương Tuấn Anh

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

CÁN BỘ HƯỚNG DẪN

PGS TS Dương Tuấn Anh

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

Trang 4

LỜI CẢM ƠN

Tôi trân trọng gửi lòng tri ân chân thành đến PGS TS Dương Tuấn Anh vì

Thầy đã hướng dẫn, động viên tôi trong quá trình học và làm việc với thái độ ân cần,

bao dung, tận tụy của một nhà giáo chân chính Không chỉ về mặt kiến thức chuyên

môn, mà Thầy còn gián tiếp truyền đạt cho tôi nhiều bài học bổ ích về cuộc sống

Tôi chân thành cảm ơn quí Thầy, quí Cô vì đã tận tình truyền đạt cho tôi

nhiều tri thức hay và quí Những tri thức này hữu ích với tôi trong suốt quá trình học

tập tại trường cũng như trong tương lai

Tôi chân thành tri ân gia đình vì đã độ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, nghiên cứu Tôi trân trọng dâng tặng

thành quả của luận văn này đến Cha Mẹ Nhờ công nuôi nấng, dạy dỗ của Người mà

con mới được thừa hưởng những lợi ích như ngày hôm nay

Qua đây, tôi cũng gửi lời cảm ơn chân thành đến các anh, các chị là bạn hữu,

đồng nghiệp vì đã tư vấn, và góp ý đến tôi trong quá trình thực hiện luận văn

Trang 5

cho bài toán bằng việc phân đoạn dựa vào các cực trị quan trọng

Về phân đoạn chuỗi thời gian, luận văn sử dụng kỹ thuật xác định các điểm cực trị quan trọng như đề cập trong công trình của Fink và Gandhi Độ phức tạp của thao tác này chỉ là 𝑂(𝑛), 𝑛 là chiều dài chuỗi thời gian Tuy nhiên, chúng tôi đề xuất thêm một cải tiến mới là mô hình xác định tham số 𝑅 - đại lượng quan trọng để đánh giá một điểm là cực trị hay không Các phân đoạn của chuỗi thời gian này đóng vai trò

là mẫu truy vấn 𝑄 trong quá trình tìm kiếm chuỗi con trên chuỗi thời gian còn lại

Về bài toán so trùng chuỗi con, luận văn sử dụng giải thuật cửa sổ trượt dịch

chuyển từng điểm Ưu điểm của hướng tiếp cận này là không mắc lỗi tìm sót ứng

viên Kết quả thực nghiệm cho thấy giải thuật này có thể chấp nhận được trên các bộ

dữ liệu lên đến hàng nghìn điểm với độ chính xác khá cao

Ngoài ra, trong quá trình so trùng chuỗi con, luận văn sử dụng độ đo xoắn thời gian động có bổ sung kỹ thuật từ bỏ sớm khi khoảng cách tính được hiện tại đã vượt

quá ngưỡng tìm kiếm Độ đo DTW có ưu điểm là thao tác kết được trên những chuỗi

thời gian “lệch pha” và chiều dài khác nhau mà độ đo Euclid không thể Đồng thời ứng dụng cũng sử dụng ràng buộc Sakoe-Chiba nhằm tăng tốc quá trình tính toán và loại bớt việc xác định những đường xoắn không có ý nghĩa

Trang 6

ABSTRACT

Time series exist in many practical applications, from scientific and technological

to economic and financial fields Time series data play an increasingly important role

in the work of data mining In particular, the subseries matching is a very basic

problem that is much concerned and studied The subseries join is the more general

one of the subseries matching problem

Most of the studies approach the problem by segmenting the time series, then

searching for the similar subseries based on the found segments However, many

authors suggest too complicated segmentation methods with a long computation time

In this thesis, we propose an approach to the problem by the segmentation based on

the importantly extreme points

Regarding the segmentation of time series, this thesis uses the technique to

determine the extreme points as proposed in the work of Fink and Gandhi The

complexity of this operation is only 𝑂(𝑛), where 𝑛 is the length of the time series

However, we propose an improved model to define parameter 𝑅 – an important

quantity to assess whether a point is an extreme point The segments of this time

series serve as query pattern 𝑄 in the search for subseries on the remaining time series

About problem of subseries matching, the thesis uses 1-point shifting sliding

window algorithm The advantage of this approach is that it can avoid false

dismissals Experiments show that this algorithm can be accepted on the thousands

of points with high accuracy

In addition, this thesis uses the Dynamic Time Warping with added early abandon

technique DTW has the advantage that it can calculate the distance on time series that

are out of phase and different in length whereas this cannot be achieved with the

employment of Euclid distance Also, it also uses Sakoe-Chiba constraint to speed up

the calculation process and eliminate the determination of undesired warping paths

Trang 7

LỜI CAM ĐOAN

Tôi cam đoan rằng, ngoại trừ các kết quả tham khảo từ các công trình khác như đã ghi rõ trong luận văn, các công việc trình bày trong luận văn này 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 08 tháng 12 năm 2014

Võ Đức Vĩnh

Trang 8

MỤC LỤC

LỜI CẢM ƠN iii

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

ABSTRACT v

LỜI CAM ĐOAN vi

MỤC LỤC vii

DANH MỤC HÌNH x

DANH MỤC GIẢI THUẬT xii

DANH MỤC BẢNG BIỂU xiii

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI 1

1.1 KHAI PHÁ DỮ LIỆU CHUỖI THỜI GIAN 1

1.1.1 Dữ liệu lớn 1

1.1.2 Dữ liệu chuỗi thời gian 2

1.2 CÁC BÀI TOÁN LIÊN QUAN ĐẾN DỮ LIỆU CHUỖI THỜI GIAN 5

1.3 BÀI TOÁN KẾT CHUỖI CON TRÊN DỮ LIỆU CHUỖI THỜI GIAN 9

1.4 Ý NGHĨA BÀI TOÁN KẾT CHUỖI CON 9

1.5 MỤC TIÊU VÀ NHIỆM VỤ CỦA ĐỀ TÀI 10

1.6 CÁC KẾT QUẢ ĐẠT ĐƯỢC 10

1.7 BỐ CỤC LUẬN VĂN 11

CHƯƠNG 2 CÁC CÔNG TRÌNH LIÊN QUAN 14

2.1 CÁC CÔNG TRÌNH LIÊN QUAN ĐẾN ĐỘ ĐO TƯƠNG TỰ 14

2.1.1 Độ đo Minkowski 15

2.1.2 Phương pháp xoắn thời gian động (Dynamic Time Warping) 17

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

2.2 CÁC CÔNG TRÌNH LIÊN QUAN ĐẾN KẾT CHUỖI CON 19

2.2.1 Phân đoạn chuỗi thời gian nhờ các điểm cực trị quan trọng 19

Trang 9

2.2.2 Phương pháp kết chuỗi con trực tiếp (nested loop join) 20

2.2.3 Phương pháp kết chuỗi con trên dữ liệu đã lập chỉ mục (indexing) 20

2.2.4 Phương pháp kết chuỗi con dựa trên các phân đoạn không đồng nhất (non-uniform segment) 21

2.2.5 Phương pháp đề nghị cho bài toán kết chuỗi con 23

CHƯƠNG 3 CƠ SỞ LÝ THUYẾT 24

3.1 ĐỘ ĐO XOẮN THỜI GIAN ĐỘNG 24

3.2 RÀNG BUỘC ĐƯỜNG XOẮN ĐỘ ĐO XOẮN THỜI GIAN ĐỘNG 28

3.2.1 Ràng buộc Sakoe-Chiba 28

3.2.2 Ràng buộc hình bình hành Itakura 29

3.3 KỸ THUẬT TỪ BỎ SỚM KHI TÍNH KHOẢNG CÁCH DTW 30

3.4 CÁC ĐIỂM CỰC TRỊ QUAN TRỌNG 31

3.4.1 Điểm cực trị thông thường (extreme points) 31

3.4.2 Điểm cực trị quan trọng (important extrema) 34

CHƯƠNG 4 PHƯƠNG PHÁP ĐỀ NGHỊ 38

4.1 KHÁI QUÁT BÀI TOÁN KẾT CHUỖI CON 38

4.2 HỆ THỐNG ĐỀ NGHỊ CHO BÀI TOÁN KẾT CHUỖI CON 40

4.3 QUÁ TRÌNH CHUẨN HÓA DỮ LIỆU 40

4.4 THAM SỐ R 44

4.5 QUÁ TRÌNH PHÂN ĐOẠN CHUỖI THỜI GIAN 46

4.6 QUÁ TRÌNH KẾT CHUỖI CON 47

CHƯƠNG 5 THỰC NGHIỆM 49

5.1 MÔI TRƯỜNG THỰC NGHIỆM 49

5.2 DỮ LIỆU THỰC NGHIỆM 49

5.3 CÁC THAM SỐ ƯỚC LƯỢNG 50

5.4 PHƯƠNG PHÁP THỰC NGHIỆM 51

5.5 THỰC NGHIỆM VỀ CÁC CỰC TRỊ QUAN TRỌNG 51

5.6 THỰC NGHIỆM VỀ BÀI TOÁN SO TRÙNG CHUỖI CON 56

5.7 THỰC NGHIỆM SO SÁNH GIẢI THUẬT KẾT CHUỖI CON DÙNG CỬA SỔ TRƯỢT TỪNG ĐIỂM VỚI CỬA SỔ TRƯỢT TỪNG ĐOẠN 60

Trang 10

5.8 THỰC NGHIỆM KIỂM CHỨNG TÍNH CHẤT GIAO HOÁN CỦA PHÉP

KẾT TRÊN DỮ LIỆU CHUỖI THỜI GIAN 61

CHƯƠNG 6 TỔNG KẾT 64

6.1 TỔNG KẾT NỘI DUNG CỦA LUẬN VĂN 64

6.2 NHỮNG ĐÓNG GÓP CỦA ĐỀ TÀI 65

6.3 HƯỚNG PHÁT TRIỂN 66

TÀI LIỆU THAM KHẢO 67 BẢNG THUẬT NGỮ ANH - VIỆT VÀ TỪ VIẾT TẮT A TÁC VỤ KẾT DÙNG ĐỘ ĐO EUCLID VÀ DTW C

Trang 11

DANH MỤC HÌNH

Hình 1.1 Dữ liệu chuỗi thời gian đơn biến ghi nhận giá chứng khoán 3

Hình 1.2 Dữ liệu chuỗi thời gian đa biến ghi nhận vị trí 3

Hình 1.3 So trùng toàn chuỗi 7

Hình 1.4 So trùng chuỗi con 7

Hình 1.5 Tìm kiếm vùng 8

Hình 1.6 Tìm kiếm k láng giềng gần nhất 8

Hình 2.1 Một số độ đo Minkowski phổ biến (nguồn [23]) 16

Hình 2.2 Cách ánh xạ cặp điểm trong độ đo Euclid và độ đo DTW (nguồn [9]) 17

Hình 2.3 Kỹ thuật từ bỏ sớm trong tính khoảng cách DTW (nguồn [28]) 18

Hình 2.4 Phương pháp chuỗi con chung dài nhất (nguồn [1]) 19

Hình 2.5 Các loại cực trị: nghiêm cách (hình bên trái), trái và phải (hình giữa), và cực trị phẳng (hình bên phải) 20

Hình 2.6 Tổng quan về công trình của Yi Lin Nhánh bên phải là mô hình kết chuỗi con dựa trên các phân đoạn không đồng nhất (nguồn [16]) 21

Hình 2.7 Cây thứ bậc của quá trình phân đoạn không đồng nhất (nguồn [16]) 22

Hình 3.1 Cách tính khoảng cách xoắn thời gian động A) Hai chuỗi thời gian 𝑄 và 𝐶 B) Ma trận tính DTW C) Kết quả ánh xạ điểm trong DTW (nguồn [7]) 25

Hình 3.2 Đồ thị biểu diễn hai chuỗi thời gian 26

Hình 3.3 Ma trận tính DTW cho hai chuỗi thời gian 27

Hình 3.4 Ràng buộc Sakoe-Chiba (nguồn [5]) 29

Hình 3.5 Ràng buộc Itakura (nguồn [8]) 29

Hình 3.6 Kỹ thuật từ bỏ sớm khi tính DTW hai chuỗi thời gian (nguồn [10]) 30

Hình 3.7 Từ bỏ sớm trong khoảng cách xoắn thời gian động (a) Tính bước đầu tiên và kiểm tra có vượt quá hay không; (b) Tính lề của ma trận; (c) Tính thân của ma trận sử dụng từ bỏ sớm; (d) So sánh kỹ thuật từ bỏ sớm với cách tính thông thường (# = Vượt quá, ## = Bỏ qua tính toán) (nguồn [10]) 31

Hình 3.8 Các loại cực trị: nghiêm cách (trái), trái và phải (giữa), và cực trị phẳng (phải) (nguồn [17][18]) 32

Hình 3.9 Các cực trị thông thường tìm được theo Mã giả 1 (nguồn [18]) 32

Hình 3.10 Khuyết điểm của điểm cực trị thông thường 34

Hình 3.11 Bốn loại cực tiểu quan trọng: nghiêm cách (hình phía trên bên trái), trái và phải (hình phía trên bên phải), phẳng (hình phía dưới) (nguồn [18]) 35

Hình 3.12: Các cực trị quan trọng được tìm thấy theo giải thuật (nguồn [18]) 37

Hình 4.1 Kiến trúc bài toán kết chuỗi con 40

Trang 12

Hình 4.2 Dữ liệu chưa chuẩn hóa có đường căn bản bất kỳ 42

Hình 4.3 Dữ liệu đã chuẩn hóa có đường căn bản 𝑥 = 0 42

Hình 4.4 Sơ đồ tổng hợp quá trình chuẩn hóa dữ liệu 43

Hình 4.5 Tham số 𝑅 giúp xác định các điểm cực trị quan trọng (nguồn [18]) 44

Hình 4.6 Điểm cực trị quan trọng tìm được trên dữ liệu Chromosome 45

Hình 4.7 Điểm cực trị quan trọng tìm được trên dữ liệu Stock 45

Hình 4.8 Các điểm cực trị quan trọng (nguồn [18]) 46

Hình 4.9 Cửa sổ trượt trong giai đoạn kết chuỗi con (nguồn [12]) 47

Hình 5.1 Các cực trị được xác định trên dữ liệu Chromosome độ dài 128 52

Hình 5.2 Các cực trị được xác định trên dữ liệu Runoff độ dài 204 52

Hình 5.3 Các cực trị được xác định trên dữ liệu Chromosome độ dài 1000 53

Hình 5.4 Các điểm cực trị được xác định trên dữ liệu Eeg độ dài 15000 53

Hình 5.5 Các điểm cực trị được xác định trên dữ liệu Stock độ dài 500 54

Hình 5.6 Các cực trị tìm được trên dữ liệu Power_Demand_Italy độ dài 10000 54

Hình 5.7 Các điểm cực trị được xác định trên dữ liệu Koski độ dài 120000 55

Hình 5.8 Các điểm cực trị được xác định trên dữ liệu Power độ dài 10000 55

Hình 5.9 Kết quả so trùng chuỗi con trên dữ liệu Stock 56

Hình 5.10 Kết quả so trùng chuỗi con trên dữ liệu Runoff chiều dài 204 56

Hình 5.11 Kết quả so trùng chuỗi con trên dữ liệu Memory 57

Hình 5.12 Kết quả so trùng chuỗi con trên dữ liệu Power_Demand_Italy 57

Hình 5.13 Kết quả so trùng chuỗi con trên dữ liệu Eeg độ dài 30000 57

Hình 5.14 Kết quả so trùng chuỗi con trên dữ liệu Chormosome độ dài 10000 58

Hình 5.15 Kết quả so trùng chuỗi con trên dữ liệu Power độ dài 10000 58

Hình 5.16 Kết quả so trùng chuỗi con trên dữ liệu Chromosome_1 độ dài 128 58

Hình 5.17 Kết quả so trùng chuỗi con trên dữ liệu Koski_ecg độ dài 10000 59

Hình 5.18 Kết quả kết chuỗi con trên dữ liệu Runoff 62

Hình 5.19 Kết quả kết chuỗi con trên dữ liệu Chromosome_1 chiều dài 128 62

Hình 5.20 Kết quả kết chuỗi con trên dữ liệu Power chiều dài 5000 63

Hình 6.1 Hệ thống kết chuỗi con 65

Trang 13

DANH MỤC GIẢI THUẬT

Mã giả 1 Giải thuật xác định các điểm cực trị thông thường (nguồn [18][17]) 33

Mã giả 2 Giải thuật xác định các điểm cực trị quan trọng (nguồn [18]) 37

Mã giả 3 Giải thuật xác định tham số R 44

Mã giả 5 Giải thuật so trùng chuỗi con đề xuất sử dụng độ đo DTW 48

Mã giả 4 Giải thuật kết chuỗi con được đề nghị 48

Trang 14

DANH MỤC BẢNG BIỂU

Bảng 1 Các loại dữ liệu thực nghiệm 49

Bảng 2 Giá trị tham số 𝑅 cho từng bộ dữ liệu 51

Bảng 3 Tổng hợp thời gian thực thi tìm kiếm chuỗi con 59

Bảng 4 So sánh giải thuật cửa sổ trượt từng điểm và cửa sổ trượt từng đoạn 60

Bảng 5 Tổng hợp tỷ lệ sai số giao hoán của phép kết chuỗi con 61

Trang 15

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI

Phần đầu của chương điểm qua một số khái niệm cơ bản liên quan đến đề tài như: dữ liệu chuỗi thời gian, các đặc điểm và các bài toán liên quan đến dữ liệu chuỗi thời gian, bài toán kết chuỗi con trên dữ liệu chuỗi thời gian

Phần thứ hai giới thiệu sơ lược về mục tiêu và nội dung của đề tài Bên cạnh

đó, phần này cũng nêu lên những nội dung chính trong nghiên cứu và các kết quả đạt được của luận văn

Phần cuối chương sẽ giới thiệu sơ lược về nội dung chính trong từng chương của toàn bộ luận văn

1.1 KHAI PHÁ DỮ LIỆU CHUỖI THỜI GIAN

1.1.1 Dữ liệu lớn

Trong thời đại ngày nay, với sự ra đời và phát triển của máy tính và các thiết

bị kỹ thuật số có hỗ trợ thu thập dữ liệu, những dữ liệu mà con người dùng để phục

vụ cuộc sống của mình gần như đã được số hóa toàn bộ Chúng được chuyển thành các đối tượng dữ liệu có nghĩa và lưu trữ trong máy tính mà con người có thể dễ dàng truy vấn khi cần thiết Tuy nhiên, các loại dữ liệu ngày càng tăng nhanh tạo nên khối

lượng dữ liệu lớn (big data) Do đó, công tác khai phá dữ liệu (data mining) càng trở

nên quan trọng và thu hút được nhiều nghiên cứu trên thế giới nhằm đáp ứng yêu cầu

truy hồi thông tin (information retrieval) đúng lúc và đầy đủ khi cần thiết.

“Lấy mẫu ngẫu nhiên 4000 bức hình từ 15 tờ báo và tạp chí trên thế giới xuất bản trong giai đoạn 1974 – 1989 cho thấy có hơn 75% là các hình biểu diễn dữ liệu chuỗi thời gian.”

Theo khảo sát của tác giả Tufte, E R [13]

Trang 16

Một trong những loại kể trên là dữ liệu chuỗi thời gian (time series data) Dữ

liệu chuỗi thời gian tồn tại trong nhiều ứng dụng thuộc nhiều lĩnh vực khác nhau như: kinh tế, tài chính, y tế, giáo dục, môi trường, địa lý, và sinh học, vân vân Việc hiểu

và dẫn xuất được thông tin ẩn trong các dữ liệu chuỗi thời gian có một ý nghĩa lớn

góp phần quyết định đến sự phát triển của lĩnh vực Do đó, khai phá dữ liệu chuỗi

thời gian (time series data mining) đóng vai trò quan trọng và nhận được sự quan tâm

từ rất nhiều nhà nghiên cứu trên thế giới Các bài toán liên quan đến dữ liệu chuỗi

thời gian có thể kể đến như: phân lớp, gom cụm, dự báo, phát hiện mô-típ, phát hiện

bất thường, khai phá luật kết hợp và nhiều bài toán cơ bản khác.

Trước khi giới thiệu đặc điểm và chi tiết về các bài toán phổ biến trên dữ liệu chuỗi thời gian, một số khái niệm quan trọng cần được định nghĩa

1.1.2 Dữ liệu chuỗi thời gian

Dữ liệu chuỗi thời gian1 𝑋 là một tập hợp nhiều mẫu dữ liệu (data samples), mỗi mẫu là một bộ (𝑇, 𝑉) biểu diễn các giá trị được ghi nhận từ một tín hiệu liên tục qua thời gian Trong đó, 𝑇 là thời điểm tiến hành quan sát, 𝑉 là giá trị quan sát Ký hiệu chuỗi thời gian có dạng:

𝑋 = ((𝑇1, 𝑉1), (𝑇2, 𝑉2), … , (𝑇𝑛, 𝑉𝑛)) Với 𝑛 là số lần đo đạt lấy mẫu, 𝑇𝑖+1 > 𝑇1, ∀𝑖 Phần tử 𝑋𝑖 là một véc-tơ trong không gian 𝑘 chiều có dạng:

𝑋𝑖 = (𝑥𝑖1, 𝑥𝑖2, … , 𝑥𝑖𝑘) Nếu 𝑘 = 1 thì 𝑋 được gọi là chuỗi thời gian đơn biến (uni-variate time

series) Dữ liệu loại này có thể là các giá trị về thị trường tài chính (giá chứng khoán,

tỷ giá hối đoái, tỷ lệ lãi suất), dữ liệu về y tế (tín hiệu điện tâm đồ hoặc điện não đồ của bệnh nhân), dữ liệu về giáo dục (số lượng sinh viên tốt nghiệp có việc làm qua các năm), thời tiết (lượng mưa, độ ẩm), năng lượng (nhu cầu điện năng), âm nhạc (tầng số âm thanh được tạo nên bởi các nốt nhạc), hoặc dữ liệu ghi nhận sự chuyển

động của một đối tượng qua thời gian Hình 1.1minh họa chuỗi thời gian đơn biến

1 Trong tài liệu này dữ liệu chuỗi thời gian được gọi ngắn gọn là chuỗi thời gian

Trang 17

về giá chứng khoán trên thị trường của công ty Apple Inc2 với khoảng thời gian quan sát hơn sáu năm

Hình 1.1 Dữ liệu chuỗi thời gian đơn biến ghi nhận giá chứng khoán

Nếu 𝑘 > 1 thì 𝑋 được gọi là chuỗi thời gian đa biến (multi-variate time series) Dữ liệu loại này có thể tồn tại trong các ứng dụng ghi nhận vị trí hoặc sự chuyển động

của một đối tượng trong không gian 3 chiều Hình 1.2là dữ liệu chuỗi thời gian ghi nhận vị trí sự di chuyển của một đối tượng trong không gian ba chiều

Hình 1.2 Dữ liệu chuỗi thời gian đa biến ghi nhận vị trí

đối tượng trong không gian ba chiều (nguồn [16])

2 Nguồn: http://www.google.com/finance , từ khóa: Apple Inc

Trang 18

Chuỗi thời gian đồng nhất

Nếu thời điểm xác định các giá trị 𝑉 trong 𝑋 là cách đều nhau thì chuỗi thời gian 𝑋 được gọi là đồng nhất (uniform) Khi đó, ứng dụng có thể không quan tâm

đến 𝑇 và xem 𝑋 như một véc-tơ giá trị (vector-valued) trong không gian 𝑘 ∗ 𝑛 chiều

và ký hiệu:

𝑇𝑖 = 𝑖 ∗ 𝑡 + 𝑇0Với 𝑇𝑜 là thời điểm bắt đầu lấy mẫu, 𝑡 là khoảng thời gian giữa hai lần lấy mẫu liền kề nhau Trong luận văn này, chúng tôi tập trung nghiên cứu chuỗi thời gian đơn biến đồng nhất Tức là, chuỗi thời gian 𝑋 được biểu diễn dưới dạng vec-tơ giá trị 𝑛 chiều (𝑘 = 1, 𝑡 cách đều nhau)

𝑋 = (𝑥1, 𝑥2, … , 𝑥𝑛)

Chuỗi con

Cho một chuỗi thời gian bất kỳ 𝑇 = (𝑡1, 𝑡2, … , 𝑡𝑛), chuỗi thời gian 𝑆 có độ dài

𝑚 ≤ 𝑛 được gọi là chuỗi con (subseries/subsequence) của 𝑇 nếu 𝑆 chứa những giá

trị liên tiếp sao cho:

𝑆 = (𝑡𝑘, 𝑡𝑘+1, … , 𝑡𝑘+𝑚−1), 1 ≤ 𝑘 ≤ 𝑛 − 𝑚 + 1 Tập hợp tất cả chuỗi con của 𝑇 có cùng độ dài 𝑚 được ký hiệu là 𝑆𝑇𝑚

Chuỗi đại diện

Với một chuỗi thời gian 𝑇 = (𝑡1, 𝑡2, … , 𝑡𝑛), một đại diện của chuỗi thời gian

𝑇 là mô hình 𝑇̅ thu giảm số chiều của 𝑇 từ 𝑛 về 𝑑 (𝑑 << 𝑛) sao cho 𝑇̅ là một xấp xỉ khít của 𝑇 [21]

Những vấn đề cần được quan tâm khi nghiên cứu về dữ liệu chuỗi thời gian:

 Dữ liệu rất lớn: dữ liệu điện tâm đồ trong một giờ có thể lên đến 1 Gigabyte, dữ

liệu ghi nhận các truy cập trên một website khoảng 5 Gigabyte/1 tuần, dữ liệu thu thập trên tàu con thoi trong không gian lên đến 158 Gigabyte Theo dự đoán của

Trang 19

công ty IBM dữ liệu sẽ tăng gấp 5 lần trong khoảng thời gian từ 2010 đến 20203, con số đó tại thời điểm 2020 xấp xỉ 35 ZB4

 Phụ thuộc cách đánh giá độ tương tự: việc định nghĩa độ tương tự phụ thuộc vào

người dùng, nghĩa là có rất nhiều cách tính toán độ tương tự giữa hai đối tượng dữ liệu được đề nghị Tùy từng ứng dụng cụ thể sẽ có cách đo độ tương tự phù hợp nhất Ví dụ với không gian hình ảnh thì cách đánh giá theo hàm tính độ tương tự

Hausdorff là hiệu quả, với không gian chuỗi ký tự thì độ đo tương tự Edit (Edit

distance) là hiệu quả, với không gian R n thì độ đo Euclid (Euclidean distance) hay

độ đo Manhattan (Manhattan distance) được đánh giá là hiệu quả

 Dữ liệu thường không đồng nhất: điều này là do các loại dữ liệu khác nhau về định

dạng, tần suất lấy mẫu khác nhau, dữ liệu bị nhiễu, thiếu một vài giá trị, dữ liệu không sạch

1.2 CÁC BÀI TOÁN LIÊN QUAN ĐẾN DỮ LIỆU CHUỖI THỜI GIAN

 Phân lớp (Classification)

Cho trước một chuỗi thời gian 𝑄 chưa gán nhãn (unlabeled) và 𝑀 lớp, mỗi lớp chứa 𝑘 chuỗi thời gian có cùng một số đặc trưng nhất định dựa trên độ đo khoảng cách đã định nghĩa trước Bài toán phân lớp tiến hành phân loại chuỗi thời gian 𝑄 vào một trong số 𝑀 lớp đó [12][21] Trong bài toán này, các ứng dụng chủ yếu sử dụng các chuỗi thời gian đã thống kê trong quá khứ để phân loại dữ liệu tương lai

3 Thông tin này tác giả thu thập trong một tài liệu tập huấn của IBM được bảo mật nên không thể trích dẫn

4 ZB là đơn vị đo dung lượng bộ nhớ trong máy tính, đọc là Zettabyte, 1 ZB = 10^9 Terabyte = 10^21 Bytes

Trang 20

 Phát hiện bất thường (novelty detection)

Bài toán này xác định các chuỗi con bất thường (unusual/ abnormal/

discord/novel) là chuỗi con khác nhất so với các chuỗi con khác trong chuỗi thời gian

 Phát hiện mô típ (motif detection)

Bài toán này xác định các mô típ (mẫu lặp) là chuỗi con thường lặp lại nhiều nhất trong chuỗi thời gian

Ngoài các bài toán kể trên, ứng dụng khai phá dữ liệu chuỗi thời gian còn tồn tại

một số bài toán khác như: khai phá luật kết hợp (association rules mining), truy vấn

dựa trên nội dung (query by content)

Các bài toán vừa liệt kê đa phần sử dụng kết quả của bài toán tìm kiếm tương tự

so trùng mẫu con (subseries matching) để làm đầu vào phục vụ quá trình tính toán

Chẳng hạn, bài toán phát hiện mô-típ và bất thường dựa trên việc kết chuỗi con mà

nền tảng chính là so trùng chuỗi con [19]. Bài toán kết chuỗi con (subseries join)

chính là dạng tổng quát hơn của bài toán so trùng chuỗi con

 So trùng toàn chuỗi (whole series matching)

Cho một chuỗi thời gian truy vấn 𝑄, một cơ sở dữ liệu chuỗi thời gian 𝑇, một độ

đo tương tự 𝐷(𝑄, 𝑇) Tập hợp tất cả chuỗi 𝑇𝑖 trong 𝑇 có cùng độ dài với 𝑄 thỏa điều kiện 𝐷(𝑇𝑖, 𝑄) ≤ 𝜀 thì 𝑇𝑖 và 𝑄 được gọi là so khớp toàn chuỗi Với 𝜀 là ngưỡng

(threshold) mà trong đó hai đối tượng dữ liệu được gọi là tương tự

 So trùng chuỗi con (subseries/subsequence matching)

Cho một chuỗi thời gian truy vấn 𝑄, cơ sở dữ liệu chuỗi thời gian 𝑇, và độ đo tương tự 𝐷(𝑄, 𝑇) Bài toán so trùng chuỗi con trả về tập hợp chứa tất cả các chuỗi

𝑇𝑖,𝑘 là chuỗi con của chuỗi 𝑇𝑘, ∀𝑇𝑘 ∈ 𝑇 thỏa điều kiện 𝐷(𝑇𝑖,𝑘, 𝑄) < 𝜀 và không tồn tại một chuỗi con 𝑇𝑖,𝑘′ nào sao cho 𝑇𝑖,𝑘 là chuỗi con của 𝑇𝑖,𝑘′ thỏa 𝐷(𝑇𝑖,𝑘′ , 𝑄) < 𝜀 Định nghĩa so trùng chuỗi con cũng đã loại bỏ các chuỗi con dư thừa 𝑇𝑖,𝑘′ là sự lặp lại dài hơn của 𝑇𝑖,𝑘 vì với một chuỗi truy vấn 𝑄 có thể tồn tại nhiều hơn một chuỗi con 𝑇𝑖,𝑘 của 𝑇𝑘 thỏa điều kiện 𝐷(𝑇𝑖,𝑘, 𝑄) < 𝜀 Hình 1.3 đến Hình 1.6 minh họa ý

tưởng của bài toán so trùng chuỗi con và tìm kiếm tương tự

Trang 21

Hình 1.3 So trùng toàn chuỗi

Hình 1.4 So trùng chuỗi con

Bài toán so trùng chuỗi thời gian dẫn đến thao tác tìm kiếm tương tự hai đối tượng

dữ liệu với độ đo tương tự (similarity measure) và ngưỡng tương tự cho trước

 Tìm kiếm tương tự (similarity searching)

Tìm kiếm tương tự giữa hai đối tượng dữ liệu là quá trình dò tìm và đánh giá độ sai khác của đối tượng dữ liệu này với đối tượng dữ liệu còn lại Độ sai khác này

được tính dựa trên một hàm gọi là hàm khoảng cách (distance measure) Hai dạng

tìm kiếm phổ biến là tìm kiếm vùng và tìm kiếm k láng giềng gần nhất

 Tìm kiếm vùng (range retrieval)

Với chuỗi thời truy vấn 𝑄 và bán kính truy vấn 𝑟 (r nguyên dương) Tìm kiếm

vùng duyệt trong cơ sở dữ liệu và trả về kết quả truy vấn chứa các đối tượng dữ liệu

𝑇𝑖 thỏa điều kiện 𝐷(𝑄, 𝑇𝑖) ≤ 𝑟 Với 𝐷 là hàm khoảng cách được định nghĩa trước

 Tìm kiếm 𝒌 láng giềng gần nhất (k-Nearest Neibor retrieval)

Với câu truy vấn Q và giá trị k bất kỳ (k là số nguyên lớn hơn hoặc bằng 1) Tìm kiếm k láng giềng gần nhất sẽ duyệt trong cơ sở dữ liệu và trả về k đối tượng dữ liệu

Trang 22

𝑇𝑖 có khoảng cách so với đối tượng truy vấn là bé nhất Với 𝐷 là hàm khoảng cách được định nghĩa trước

Hình 1.5 và Hình 1.6 minh họa ý tưởng tìm kiếm vùng và tìm kiếm k láng giềng

gần nhất Hai dạng tìm kiếm này có thể được chuyển đổi qua lại bằng cách điều chỉnh bán kính tìm kiếm 𝑟 hoặc chọn lựa nhiều giá trị 𝑘 khác nhau

Hình 1.5 Tìm kiếm vùng

Hình 1.6 Tìm kiếm k láng giềng gần nhất

Bài toán kết chuỗi con (subseries/ subsequence join) chính là dạng tổng quát

hơn của bài toán so trùng chuỗi con Luận văn này sẽ tập trung giải quyết bài toán kết chuỗi con thông qua thao tác căn bản là tìm kiếm tương tự so trùng chuỗi con

Trang 23

1.3 BÀI TOÁN KẾT CHUỖI CON TRÊN DỮ LIỆU CHUỖI THỜI GIAN

Cho trước hai cơ sở dữ liệu chuỗi thời gian 𝑋 và 𝑌 Bài toán kết chuỗi con trên dữ

liệu chuỗi thời gian trả về tập hợp chứa tất cả các cặp (𝑋𝑖,𝑘, 𝑌𝑗,𝑙) thỏa mãn đồng thời các điều kiện sau:

- 𝑋𝑖,𝑘 là chuỗi con của chuỗi 𝑋𝑘 với 𝑋𝑘 ∈ 𝑋 𝑌𝑗,𝑙 là chuỗi con của chuỗi 𝑌𝑙 với 𝑌𝑙 ∈ 𝑌 sao cho 𝐷(𝑋𝑖,𝑘, 𝑌𝑗,𝑙) < 𝜀

- Không tồn tại một chuỗi thời gian 𝑋𝑖,𝑘′ nào sao cho 𝑋𝑖,𝑘 là chuỗi con của 𝑋𝑖,𝑘′ , không tồn tại bất kỳ một chuỗi thời gian 𝑌𝑗,𝑙′ nào sao cho 𝑌𝑗,𝑙 là chuỗi con của 𝑌𝑗,𝑙′ thỏa mãn một trong các khoảng cách sau: 𝐷(𝑋𝑖,𝑘′ , 𝑌𝑗,𝑙′) < 𝜀, 𝐷(𝑋𝑖,𝑘′ , 𝑌𝑗,𝑙) < 𝜀, 𝐷(𝑋𝑖,𝑘, 𝑌𝑗,𝑙′) < 𝜀 Bài toán kết chuỗi con trên dữ liệu chuỗi thời gian đã ghi nhận nhiều nghiên cứu trong những năm gần đây Một trong những khó khăn lớn nhất khi giải quyết bài toán này là chi phí về không gian bộ nhớ lớn, và thời gian xử lý lâu nếu tiếp cận bằng

phương pháp cửa sổ trượt (sliding window) thuần túy

Hai cách tiếp cận phổ biến là thực hiện kết chuỗi con dựa trên dữ liệu đã được lập

chỉ mục (indexing) hoặc tiến hành kết trực tiếp bằng các giải thuật lặp lồng nhau (nested loop join) Hơn nữa, đa số các công trình nghiên cứu hiện nay chỉ giải quyết

trên dữ liệu ngoại tuyến (offline/static data) [16] Bài toán trở nên phức tạp hơn nếu

ứng dụng xử lý dữ liệu luồng (streaming data)

1.4 Ý NGHĨA BÀI TOÁN KẾT CHUỖI CON

Ý ngh̃a hhaa ḥc

- Bài toán kết chuỗi con là bài toán tổng quát hơn của so trùng chuỗi con Bài toán

so trùng chuỗi con là bài toán căn bản trong khai phá dữ liệu chuỗi thời gian nên

có nhiều ứng dụng có thể kể đến như gom cụm, phân lớp

- Thông qua thực nghiệm, ta có kết luận bài toán kết chuỗi con có tính giao hoán tương đối Việc này có ý nghĩa về mặt lý thuyết rằng: 𝑇1 ⋈ 𝑇2 = 𝑇2 ⋈ 𝑇1± 𝜀

Trang 24

Ý ngh̃a thực tĩn

- Phát hiện đạo nhạc: như trường hợp ứng dụng muốn kiểm tra bài hát “Chắc ai đó

sẽ sớm quay lại thôi” của Sơn Tùng MTP có đạo nhạc so với bài hát gốc từ Hàn Quốc hay không Ứng dụng có thể mô hình hai bài hát thành hai chuỗi thời gian

𝑋 và 𝑌 Ta sẽ định nghĩa một độ đo tương tự 𝑑 và ngưỡng tương tự 𝜀 Nếu ứng dụng tìm được một đoạn nhạc (hoặc toàn bộ bài hát) của Sơn Tùng tương tự với một đoạn nhạc (hoặc toàn bộ) của bài hát gốc thì có nguy cơ đạo nhạc xảy ra

- Lĩnh vực tài chính tồn tại rất nhiều ứng dụng Trong đó có một ứng dụng có thể

mô ta như sau: dựa vào tỉ giá hối đoái của hai đồng tiền bất kỳ so với đồng đô la

Mỹ người ta có thể phát hiện những thời đoạn nào đồng tiền của quốc gia đó phụ thuộc vào đồng đô la Mỹ như sau: mã hóa các ngoại tệ dạng tỉ giá hối đoái so với đồng đô la Mỹ ta thu được các chuỗi thời gian Ứng dụng tiến hành kết chuỗi con trên các dữ liệu chuỗi thời gian thì tìm được các thời đoạn mà đồng tiền đó phụ thuộc vào đô la Mỹ Từ đó, phản ánh lại thực tế các chính sách của quốc gia để

đề xuất các quyết sách phù hợp trong tương lai

1.5 MỤC TIÊU VÀ NHIỆM VỤ CỦA ĐỀ TÀI

Đề tài tập trung vào các vấn đề chính sau:

 Nghiên cứu độ đo xoắn thời gian động (Dynamic Time Warping) và các vấn đề có

liên quan đến độ đo này nhằm tăng tốc quá trình tính toán

 Nghiên cứu về phương pháp xác định các điểm cực trị quan trọng (important

extrema) để phân đoạn chuỗi thời gian phục vụ quá trình kết chuỗi con

 Kết hợp các nghiên cứu ở trên giải quyết bài toán kết chuỗi con trên dữ liệu chuỗi

thời gian (dạng ngoại tuyến - offline) dựa vào độ đo xoắn thời gian động với một

số cải tiến được đề xuất nhằm giảm độ phức tạp tính toán đồng thời tăng độ chính xác của tập dữ liệu kết quả sau khi kết chuỗi con

1.6 CÁC KẾT QUẢ ĐẠT ĐƯỢC

Tổng thuật về các công trình liên quan, đa phần các nghiên cứu tiếp cận bài

toán bằng cách phân đoạn (segmentating) chuỗi thời gian Sau đó, các công trình dựa

vào các đoạn tìm được thực hiện thao tác tìm kiếm chuỗi con tương tự Tuy nhiên,

Trang 25

nhiều tác giả đề nghị những phương pháp phân đoạn và kết chuỗi thời gian quá cầu

kỳ, phức tạp với thời gian tính toán lâu Trong đề tài này, chúng tôi đề nghị hướng

tiếp cận mới cho bài toán bằng việc phân đoạn dựa vào các cực trị quan trọng

(important extreme points)

Về vấn đề phân đoạn chuỗi thời gian, luận văn sử dụng kỹ thuật xác định các

điểm cực trị quan trọng như đề cập trong công trình của Fink và Gandhi [18] Tuy

nhiên, chúng tôi đề xuất thêm một cải tiến mới là mô hình xác định tham số 𝑅 - đại lượng quan trọng để đánh giá một điểm là cực trị hay không Tham số 𝑅 được tính bằng hai lần độ lệch chuẩn lấy mẫu trong thống kê Số lượng mẫu tùy thuộc từng loại

dữ liệu Thực nghiệm cho thấy cách xác định 𝑅 là chính xác thậm chí các điểm cực trị tìm được khá hoàn chỉnh đối với các bộ dữ liệu có biên độ dao động mạnh Kết quả của quá trình này là chuỗi thời gian được cắt thành nhiều đoạn Mỗi đoạn có hai đầu mút là hai điểm cực trị liền kề nhau Các phân đoạn của chuỗi thời gian này là mẫu truy vấn 𝑄 trong quá trình tìm kiếm chuỗi con trên chuỗi thời gian còn lại

Về bài toán tìm kiếm tương tự, luận văn sử dụng giải thuật cửa sổ trượt dịch chuyển từng đoạn Ưu điểm của hướng tiếp cận này là không mắc lỗi tìm sót ứng viên Mặc dù tốn nhiều thời gian thực thi nhưng các kết quả thực nghiệm cho thấy giải thuật này có thể chấp nhận được trên các bộ dữ liệu đến hàng nghìn điểm với độ chính xác khá cao (dữ liệu Power_Italy chiều dài 45000 điểm mất khoảng hơn 2 giờ)

Ngoài ra, trong quá trình so trùng chuỗi con, độ tương tự được sử dụng là độ

đo xoắn thời gian động có bổ sung thêm kỹ thuật từ bỏ sớm khi khoảng cách tính được hiện tại đã vượt quá ngưỡng cho phép Đồng thời, ứng dụng cũng sử dụng ràng buộc Sakoe-Chiba nhằm tăng tốc quá trình tính toán và loại bớt việc xác định những đường xoắn không có ý nghĩa

1.7 BỐ CỤC LUẬN VĂN

Luận văn được bố cục theo các nội dung chính trong từng chương như sau:

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

Trang 26

Chương này giới thiệu sợ lược các định nghĩa, các vấn đề có liên quan đến đề tài như: dữ liệu chuỗi thời gian (đặc điểm, ứng dụng, và các bài toán trên chuỗi thời gian), bài toán so trùng chuỗi con, bài toán kết chuỗi con, mục tiêu và giới hạn nghiên cứu của đề tài, tóm lược các kết quả đạt được, và phần cuối giới thiệu nội dung chính trong từng chương của toàn bộ luận văn

CHƯƠNG 2: CÁC CÔNG TRÌNH LIÊN QUAN

Chương này giới thiệu sơ lược một số nghiên cứu liên quan đến bài toán kết chuỗi con như: quá trình phân đoạn chuỗi thời gian, các điểm cực trị quan trọng, và một số nghiên cứu về độ đo tương tự Phần cuối chương giới thiệu phương pháp đề nghị kết chuỗi con dựa trên các cực trị quan trọng

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

Chương này trình bày chi tiết về các cơ sở lý thuyết được áp dụng trong đề tài như: độ đo xoắn thời gian động, các kỹ thuật từ bỏ sớm và ràng buộc Sakoe-Chiba trong độ đo xoắn thời gian động, các phương pháp xác định các điểm cực trị quan trọng giúp cho quá trình phân đoạn chuỗi thời gian

CHƯƠNG 4 : PHƯƠNG PHÁP ĐỀ NGHỊ

Chương này giới thiệu hướng tiếp cận của chúng tôi trong việc giải bài toán kết chuỗi con Đồng thời, chương này cũng giới thiệu tổng quan về ứng dụng, kiến trúc và các thành phần quan trọng của ứng dụng kết chuỗi con Một số giải thuật cũng được giới thiệu dưới dạng mã giả như: giải thuật xác định các điểm cực trị quan trọng, giải thuật kết chuỗi con sử dụng cửa sổ trượt dịch chuyển từng điểm, cửa sổ trượt dịch chuyển từng đoạn và giải thuật xác định tham số 𝑅 phục vụ cho quá trình xác định các cực trị quan trọng giúp phân đoạn chuỗi thời gian

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

Chương này tiến hành một số loại thực nghiệm như: thực nghiệm về tính chính xác của các điểm cực trị quan trọng, thực nghiệm về kết quả bài toán so trùng chuỗi con, thực nghiệm so sánh hai giải thuật kết chuỗi con dựa trên cửa sổ trượt dịch chuyển từng điểm và cửa sổ trượt dịch chuyển từng đoạn, thực nghiệm kiểm chứng

Trang 27

tính chất giao hoán tương đối của thao tác kết chuỗi con Một số kết luận và đề xuất của chúng tôi sẽ được nêu lên dựa trên các kết quả thực nghiệm

Trang 28

CHƯƠNG 2 CÁC CÔNG TRÌNH LIÊN QUAN

Chương này giới thiệu sơ lược một số nghiên cứu liên quan như: độ đo tương

tự, và các công trình liên quan đến kết chuỗi con

Phần đầu chương nêu lên định nghĩa dạng tổng quát và một số thể hiện cụ thể của không gian độ đo Các độ đo được đề cập là độ đo Minkowski, phương pháp xoắn thời gian động, và phương pháp chuỗi con chung dài nhất

Phần kế đến trình bày tổng lược các công trình liên quan như ý tưởng phân đoạn chuỗi thời gian nhờ các điểm cực trị quan trọng, giải thuật kết chuỗi con trực tiếp, giải thuật kết chuỗi con dựa trên các phân đoạn không đồng nhất

Phần cuối chương sẽ giới thiệu phương pháp mà chúng tôi đề nghị để giải quyết bài toán kết chuỗi con trên dữ liệu chuỗi thời gian

2.1 CÁC CÔNG TRÌNH LIÊN QUAN ĐẾN ĐỘ ĐO TƯƠNG TỰ

Độ tương tự (similarity measure) của hai đối tượng dữ liệu là mức độ sai khác của đối tượng dữ liệu này với đối tượng dữ liệu còn lại Độ sai khác này được

tính dựa trên một hàm gọi là hàm khoảng cách (distance function) Đề tài này sử dụng

một giá trị số để biểu diễn độ sai khác của hai đối tượng dữ liệu mà cụ thể là độ đo xoắn thời gian động Trong bài toán truy vấn thông tin trên dữ liệu chuỗi thời gian,

đối tượng dữ liệu trong cơ sở dữ liệu được lưu trữ có độ sai khác bé nhất so với dữ

liệu truy vấn (queried data) sẽ được trả về tương ứng theo thứ tự tăng dần tùy thuộc

vào phạm vi giới hạn của câu truy vấn Có rất nhiều tác giả đề nghị nhiều độ đo tương

tự dựa trên các hàm khoảng cách khác nhau như: khoảng cách Euclid, khoảng cách

Manhattan, khoảng cách Hausdorff, khoảng cách Edit [23].Tùy theo từng loại ứng

dụng mà một hàm khoảng cách phù hợp sẽ được sử dụng Phần này giới thiệu một số nghiên cứu liên quan đến cách đánh giá độ đo tương tự

Trang 29

Vấn đề quan trọng nhất của bài toán tìm kiếm tương tự là cách tính khoảng

cách của hai đối tượng O i , O j Trường hợp hai đối tượng giống nhau thì khoảng cách này sẽ là 0 và ngược lại chúng càng khác nhau thì khoảng cách càng lớn

Hàm khoảng cách giữa cách đối tượng nên thỏa các tính chất sau:

1 Tính phản xạ: 𝐷(𝑥, 𝑦) = 0 nếu và chỉ nếu 𝑥 = 𝑦

2 Tính đối xứng: 𝐷(𝑥, 𝑦) = 𝐷(𝑦, 𝑥)

3 Tính không âm: 𝐷(𝑥, 𝑦) ≥ 0, ∀ 𝑥, 𝑦

4 Tính bất đẳng thức trong tam giác: 𝐷(𝑥, 𝑦) < 𝐷(𝑥, 𝑧) + 𝐷(𝑦, 𝑧)

Độ đo tương tự giữ vai trò quan trọng trong bài toán so trùng trên dữ liệu chuỗi thời gian, đặc biệt là trong các mô hình có dùng trích xuất đặc trưng hay thu giảm số chiều Gọi 𝑋𝑓, 𝑌𝑓 là biểu diễn của 𝑋, 𝑌 sau khi trích xuất đặc trưng hay thu giảm số chiều, độ đo khoảng cách 𝐷 phải đảm bảo: 𝐷(𝑋𝑓, 𝑌𝑓) ≤ 𝐷(𝑋, 𝑌) Nghĩa là khoảng cách trên không gian đã rút trích đặc trưng hoặc thu giảm số chiều phải bé hơn khoảng cách giữa hai đối tượng dữ liệu ban đầu

Trong luận văn này, độ đo tương tự được định nghĩa trên hai chuỗi thời gian

có chiều dài không bằng nhau 𝑋, 𝑌 và được ký ℎ𝑖ệ𝑢 𝑆𝑖𝑚(𝑋, 𝑌) [1] Sau đây là những phương pháp đánh giá độ tương tự đã được một số tác giả đề nghị

2.1.1 Độ đo Minkowski

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

định nghĩa như sau:

Trang 30

với các giá trị 𝑝 khác nhau Mỗi hình là tập hợp tất cả những điểm có cùng khoảng

cách so với điểm trung tâm [23]

Hình 2.1 Một số độ đo Minkowski phổ biến (nguồn [23])

Một số ưu điểm và nhược điểm của phương pháp này:

 Ư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

 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ác nhau

Để khắc phục những nhược điểm trên, nhiều tác giả đã đưa ra những phương pháp sau đây:

 Das, G và các cộng sự (1997) [1] đề nghị nên chuẩn hóa dữ liệu chuỗi

thời gian trước khi áp dụng các giải thuật so trùng mẫu dựa trên giá trị trung bình và độ lệch chuẩn 𝑋’ = 𝑋 − 𝑚𝑒𝑎𝑛(𝑋) hoặc 𝑋’ = (𝑋 −

𝑚𝑒𝑎𝑛(𝑋)) / 𝑣𝑎𝑟(𝑋)

 Rafiei, D và Mendelzon, A O (1998) [2] đề nghị sử dụng phương pháp

trung bình di chuyển (moving average) để làm trơn các đường biểu diễn

dữ liệu chuỗi thời gian theo công thức sau:

Trang 31

𝑥𝑖 = ∑ 𝑥𝑗+𝑘⁄(2𝑘 + 1)

𝑘

𝑗= −𝑘

 Chan, K và Fu, A W (1999) [3] đề nghị cách tính độ tương tự có sự thay

đổi dựa trên khoảng cách Euclid như sau:

𝑆𝑖𝑚(𝑋, 𝑌) = √∑((𝑦𝑖− 𝑥𝑖) − (𝑦𝐴 − 𝑥𝐴))2

Với 𝑥𝐴 =1𝑛∑𝑛−1𝑖=0 𝑥𝑖 , 𝑦𝐴 =𝑛1∑𝑛−1𝑖=0 𝑦𝑖

2.1.2 Phương pháp xoắn thời gian động (Dynamic Time Warping)

Phương pháp xoắn thời gian động tương tự cách tính khoảng cách Minkowski

nhưng thay vì so trùng hai đườ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ứ 𝑖 của chuỗi thứ nhất so với điểm thứ 𝑖 của chuỗi thứ hai)

thì một điểm có thể ánh xạ với nhiều điểm và ánh xạ này không tuyến tính Hình 2.2

minh họa cách ánh xạ điểm trong độ đo xoắn thời gian động so với độ đo Euclid

Cách tính khoảng cách xoắn thời gian động sẽ được trình bày chi tiết trong phần 3.1

Hình 2.2 Cách ánh xạ cặp điểm trong độ đo Euclid và độ đo DTW (nguồn [9])

Một số ưu điểm và nhược điểm của phương pháp này:

 Ưu điểm

- Phương pháp DTW cho phép nhận dạng những mẫu có hình dạng giống

nhau nhưng chiều dài hình dạng về mặt thời gian có thể khác nhau

- Phương pháp DTW hiệu quả hơn rất nhiều so với phương pháp tính khoảng cách theo Euclid, đặc biệt trong bài toán phân lớp, gom cụm hay trong các các ứng dụng nhận dạng giọng nói (voice recognition)

Trang 32

 Nhược điểm

- Nhược điểm lớn nhất của DTW là thời gian thực thi rất lâu, độ phức tạp

là 𝑂(𝑤𝑛), với 𝑤 là chiều dài cửa sổ xoắn, 𝑛 là chiều dài chuỗi

Để khắc phục nhược điểm trên, một số tác giả đã đưa ra những phương pháp

làm tăng tốc quá trình tính khoảng cách DTW trong những hoàn cảnh cụ thể như sau:

 Sakoe, H và Chiba, S (1978) [7] đã đưa ra ràng buộc gọi là dải Chiaba Itakura, F (1975) [8] đã đưa ra ràng buộc hình bình hành Itakura,

Sakoe-đây là những ràng buộc đường xoắn khi tính khoảng cách xoắn thời gian

động Các ràng buộc này sẽ được trình bày chi tiết trong phần 3.2

 Keogh, E và các cộng sự (2002) [9] đề xuất phương pháp tính chặn dưới

gọi là chặn dưới LB_Keogh Phương pháp này nhằm giải quyết vấn đề so sánh độ tương tự trong quá trình tìm kiếm Nếu giá trị của chặn dưới lớn hơn khoảng cách tốt nhất hiện tại thì ta không cần tính khoảng cách thực

 Ratanamahatana, C A và Keogh, E (2012) [28] đề xuất kỹ thuật tăng tốc

độ tính khoảng cách xoắn thời gian động gọi là từ bỏ sớm (Early

Abandon) Trong quá trình tính khoảng cách xoắn thời gian động, nếu giá

trị đang tính đã lớn hơn khoảng cách tốt nhất hiện tại thì ứng dụng không

cần phải tính tiếp khoảng cách này Hình 2.3 minh họa việc từ bỏ sớm khi

tính khoảng cách xoắn thời gian động

Hình 2.3 Kỹ thuật từ bỏ sớm trong tính khoảng cách DTW (nguồn [28])

Kỹ thuật này sẽ được đề cập chi tiết hơn trong chương cơ sở lý thuyết

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

Trong phương pháp này, độ tương tự Sim(X, Y) được tính bằng chiều dài của

chuỗi con chung dài nhất (Longest Common Subsequence - LCS) Giải thuật chi tiết

Trang 33

cho việc tìm LCS có thể được tìm thấy trong [1][4] Hình 2.4 mô tả ý tưởng của phương pháp chuỗi con chung dài nhất

Hình 2.4 Phương pháp chuỗi con chung dài nhất (nguồn [1])

Một số ưu điểm và nhược điểm của phương pháp chuỗi con chung dài nhất:

 Ưu điểm: cho phép bỏ qua những điểm bất thường khi so sánh

 Nhược điểm: phương pháp này yêu cầu phải chuẩn hóa dữ liệu ban đầu

thông qua các phép biến đổi như: tịnh tiến (shifting) đường căn bản hay

giãn biên độ (amplitude scaling) trước khi thực hiện giải thuật

2.2 CÁC CÔNG TRÌNH LIÊN QUAN ĐẾN KẾT CHUỖI CON

2.2.1 Phân đoạn chuỗi thời gian nhờ các điểm cực trị quan trọng

Tác giả Fink và các cộng sự [18], đề xuất giải thuật phân đoạn chuỗi thời gian

dựa vào các điểm cực trị quan trọng (important extreme points) Theo đó, các tác giả

định nghĩa điểm cực trị quan trọng nhờ một hàm tính khoảng cách 𝑑 = |𝑎𝑖 − 𝑏𝑖|, giá trị 𝑅 - khoảng giới hạn mà trong phạm vi đó một điểm 𝑎𝑖 được gọi là cực trị Kết quả

của quá trình phân đoạn được các tác giả sử dụng để thực hiện thao tác nén chuỗi thời

gian (time series compressing) Luận văn này sẽ sử dụng ý tưởng các điểm cực trị

quan trọng để phân đoạn chuỗi thời gian phục vụ cho bài toán kết chuỗi con Hình

Trang 34

Hình 2.5 Các loại cực trị: nghiêm cách (hình bên trái), trái và phải (hình giữa),

và cực trị phẳng (hình bên phải) 2.2.2 Phương pháp kết chuỗi con trực tiếp (nested loop join)

Trong kỹ thuật này, chuỗi thời gian được kết trực tiếp bằng giải thuật lặp lồng nhau và thực hiện so trùng tất cả các chuỗi con có thể mà không thông qua bất kỳ giai đoạn lập chỉ mục hay một kỹ thuật nào khác Cách tiếp cận này bảo đảm tính đầy đủ

và tính đúng đắn của lời giải kết quả Tuy nhiên, khuyết điểm lớn nhất là giải thuật

kết trực tiếp đưa đến trường hợp vét cạn (brute-force) trên dữ liệu chuỗi thời gian

Do đó, phương pháp này, ngay cả trên dữ liệu ngoại tuyến, cũng không hiệu quả về

mặc không gian bộ nhớ cũng như về độ phức tạp tính toán [16]

2.2.3 Phương pháp kết chuỗi con trên dữ liệu đã lập chỉ mục (indexing)

Hướng tiếp cận này có thể kể đến các công trình liên quan như các phép kết

không gian (spatial join) [23][24][25][26][27] Trong đó, các nhóm tác giả đề xuất

lập chỉ mục không gian 𝑅 − 𝑇𝑟𝑒𝑒 và thực hiện thao tác kết chuỗi con hoặc thực hiện phép kết không gian trên dữ liệu đã được lập chỉ mục Tiếp tục phát triển hướng này,

tác giả Brinkhoff và cộng sự [24] đề xuất lập chỉ mục không gian R-Tree trên cơ sở

dữ liệu, sau đó tiến hành duyệt theo chiều sâu (depth-first-search) để tính khoảng

cách và nhận được các cặp đối tượng tương tự nhau tại nút lá của cây 𝑅 Tiếp sau đó,

trong công trình của mình, nhóm tác giả Huang và cộng sự [27] cũng đề xuất và chứng

minh được giải pháp cải tiến hiệu suất của phép kết không gian dựa trên kỹ thuật

duyệt theo chiều rộng (breadth-first-search) trên cây R Tuy nhiên, tất cả các hướng

tiếp cận lập chỉ mục dựa trên cây 𝑅 đều không thích ứng được với dữ liệu chuỗi thời

gian dạng luồng (streaming time series data) bởi vì chúng yêu cầu không gian bộ nhớ

lớn cho việc duy trì và xây dựng lại cấu trúc chỉ mục 𝑅 − 𝑇𝑟𝑒𝑒 Mà việc xây dựng lại cây 𝑅 tốn nhiều tài nguyên Do đó, chi phí truy vấn tốn kém trong ngữ cảnh này

Trang 35

2.2.4 Phương pháp kết chuỗi con dựa trên các phân đoạn không đồng nhất (non-uniform segment)

Phương pháp này được đề cập trong luận án tiến sĩ của tác giả Yi Lin, 2010

[16] Tác giả đề xuất mô hình kết chuỗi con trên dữ liệu chuỗi thời gian với sự hỗ trợ

của cấu trúc chỉ mục 𝑅 − 𝑇𝑟𝑒𝑒 sử dụng độ đo Euclid Đồng thời, tác giả kết hợp phương pháp phân đoạn và biểu diễn xấp xỉ chuỗi thời gian trước khi lập chỉ mục

Hình 2.6 mô tả tổng quan toàn bộ công trình của của Yi Lin.

Hình 2.6 Tổng quan về công trình của Yi Lin Nhánh bên phải là mô hình kết

chuỗi con dựa trên các phân đoạn không đồng nhất (nguồn [16])

Theo đó, chuỗi thời gian ban đầu sẽ được chuyển sang dạng mà tác giả gọi là

chuỗi đặc trưng có thứ bậc (hierarchial feature sequence) Để thu được chuỗi dạng

này, trước tiên chuỗi thời gian ban đầu phải thông qua một quá trình làm trơn để loại

bỏ nhiễu theo phương pháp Gauss Sau đó, dữ liệu đã được làm trơn sẽ được phân đoạn dựa vào các điểm gián đoạn được xác định thông qua việc giải phương trình 𝑓(𝑥) = 0 Trong đó, 𝑓(𝑥) là đạo hàm bậc hai của hàm 𝑔(𝑥) thu được từ quá trình làm mịn chuỗi thời gian bằng phương pháp Gauss Kết quả của quá trình này là những

phân đoạn có thứ bậc ổn định như Hình 2.7

Trang 36

Hình 2.7 Cây thứ bậc của quá trình phân đoạn không đồng nhất (nguồn [16])

Mỗi đoạn sẽ được biểu diễn xấp xỉ thông qua một đa thức bao nhỏ nhất

(minimal polynomial envelope) và có thể kèm theo một số tham số dẫn xuất được

thêm vào để phản ánh các đặc trưng của phân đoạn đó Tác giả gọi đây là đa thức đặc

trưng (featured polynomial)

Sau khi được phân đoạn, các dữ liệu sẽ được lập chỉ mục không gian 𝑅 −𝑇𝑟𝑒𝑒 Công đoạn cuối là tiến hành thao tác kết chuỗi con trên các dữ liệu đã lập chỉ mục Kết quả của thao tác kết là một tập hợp chứa tất cả các chuỗi con tương tự nhau

từ hai chuỗi thời gian ban đầu với khoảng cách nhỏ hơn một ngưỡng cho trước Trong giai đoạn tinh chỉnh kết quả để tìm được chuỗi con dài nhất, tác giả sử dụng kỹ thuật

quy hoạch động (dynamic programming) Ngoài ra, công trình còn nghiên cứu về bài

toán nén dữ liệu chuỗi thời gian nhưng việc đó ngoài phạm vi đề tài này nên sẽ không nêu lên ở đây

Trang 37

Tóm lại, hướng tiếp cận của Yi Lin làm cho các quá trình tính toán cầu kỳ, phức tạp dẫn đến khó khả thi cho các ứng dụng thực tế đặc biệt là ứng dụng về dữ liệu chuỗi thời gian với khối lượng dữ liệu lớn

2.2.5 Phương pháp đề nghị cho bài toán kết chuỗi con

Điểm qua các công trình liên quan, chúng tôi đề xuất hướng tiếp cận bài toán dùng kỹ thuật kết chuỗi con trên dữ liệu chuỗi thời gian dựa vào các phân đoạn là các điểm cực trị quan trọng Độ đo tương tự được sử dụng là độ đo xoắn thời gian động Theo đó, ứng dụng kết chuỗi con mà chúng tôi xây dựng thực hiện hai công đoạn lớn: phân đoạn chuỗi thời gian và kết chuỗi con nhờ vào bài toán so trùng chuỗi con trên các phân đoạn đã được xác định

Về phân đoạn chuỗi thời gian, luận văn sử dụng kỹ thuật xác định các điểm cực trị quan trọng như đề cập trong công trình của Fink và các cộng sự [17][18] Độ

phức tạp của thao tác này chỉ tốn 𝑂(𝑛), với 𝑛 là chiều dài chuỗi thời gian cần phân

đoạn Tuy nhiên, chúng tôi sẽ xuất thêm một cải tiến mới là mô hình xác định tham

số 𝑅 - đại lượng quan trọng để đánh giá một điểm là cực trị hay không Tham số 𝑅 được tính dựa vào đại lượng độ lệch chuẩn lấy mẫu trong lĩnh vực thống kê Số lượng mẫu tùy thuộc từng loại dữ liệu Thực nghiệm cho thấy cách xác định 𝑅 là chính xác

Kết quả của quá trình này là chuỗi thời gian được cắt thành nhiều đoạn (segment)

Mỗi đoạn có hai đầu mút là hai điểm cực trị liền kề nhau Các phân đoạn của chuỗi thời gian này giữ vai trò là mẫu truy vấn 𝑄 trong quá trình tìm kiếm chuỗi con tương

tự trên chuỗi thời gian còn lại

Về thao tác kết chuỗi con, chúng tôi giải quyết thông qua bài toán so trùng

chuỗi con Luận văn sử dụng giải thuật cửa sổ trượt (sliding Window) dịch chuyển

từng đoạn Ưu điểm của hướng tiếp cận này là không mắc lỗi tìm sót (false dismissal)

ứng viên Trong chương 4 chúng tôi sẽ giới thiệu chi tiết về hướng tiếp cận này Phần tiếp theo sẽ trình bày về cơ sở lý thuyết được sử dụng làm nền tảng của luận văn

Trang 38

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

Phần đầu chương giới thiệu chi tiết về độ đo xoắn thời gian động và phương pháp xác định độ đo này Những kỹ thuật tăng tốc trong việc tính độ đo xoắn thời gian động như: ràng buộc Sakoe-Chiba, ràng buộc hình bình hành Itakura, và kỹ thuật

từ bỏ sớm cũng được đề cập

Phần thứ hai giới thiệu hướng tiếp cận phân đoạn chuỗi thời gian dựa vào các cực trị quan trọng Nhiều giải thuật chi tiết cũng được đề cập đến

Phần cuối chương nên lên phương pháp đề nghị cho bài toán kết chuỗi con

3.1 ĐỘ ĐO XOẮN THỜI GIAN ĐỘNG

Độ đo xoắn thời gian động (Dynamic Time Warping – DTW) được giới thiệu

lần đầu tiên cho bài toán nhận dạng giọng nói (voice recognition) [7] Đặc điểm chính

của DTW là ánh xạ không tuyến tính khi tính khoảng cách giữa giữa hai chuỗi thời

gian có độ dài khác nhau

Giả sử có hai chuỗi thời gian 𝑄 và 𝐶 có chiều dài lần lượt là 𝑛 và 𝑚 với:

𝑄 = 𝑞1, 𝑞2, … , 𝑞𝑖, … , 𝑞𝑛

𝐶 = 𝑐1, 𝑐2, … , 𝑐𝑗, … , 𝑐𝑚

Để tính toán khoảng cách DTW giữa hai chuỗi trên, ta xây dựng một ma trận

𝐷 có kích thước 𝑚 × 𝑛 gọi là ma trận xoắn (warping matrix) Trong đó, phần tử

𝐷𝑖𝑗 = 𝑑(𝑞𝑖, 𝑐𝑗) là khoảng cách giữa hai điểm 𝑞𝑖𝑐𝑗 (với khoảng cách Euclid thì

𝑑(𝑞𝑖, 𝑐𝑗) = (𝑞𝑖– 𝑐𝑗)2) Ma trận này được minh họa trong Hình 3.1 Đường xoắn

(warping path) W là một tập các phần tử liên tục của ma trận định nghĩa một ánh xạ

giữa 𝑄 và 𝐶 Phần tử thứ 𝑘 của 𝑊 được định nghĩa là 𝑤𝑘 = (𝑖, 𝑗)𝑘, vì vậy ta có:

𝑊 = 𝑤1, 𝑤2, … , 𝑤3, … , 𝑤𝑘 với 𝑚𝑎𝑥(𝑛, 𝑚) ≤ 𝐾 ≤ 𝑚 + 𝑛– 1

Theo định nghĩa, đường xoắn tối ưu là đường xoắn cho giá trị chi phí xoắn (khoảng cách xoắn) nhỏ nhất:

Trang 39

Hình 3.1 Cách tính khoảng cách xoắn thời gian động A) Hai chuỗi thời gian 𝑸

𝑪 B) Ma trận tính DTW C) Kết quả ánh xạ điểm trong DTW (nguồn [7])

Đường xoắn tối ưu này có thể tìm được bằng cách sử dụng phương pháp quy

hoạch động (dynamic programming) Công thức truy hồi cho khoảng cách tích lũy

(cumulative distance) 𝛾(𝑖, 𝑗) được định nghĩa như sau:

𝛾(𝑖, 𝑗) = 𝑑(𝑑𝑖, 𝑐𝑗) + 𝑚𝑖𝑛 {

𝛾(𝑖 − 1, 𝑗)𝛾(𝑖, 𝑗 − 1)𝛾(𝑖 − 1, 𝑗 − 1)

Trong đó, khoảng cách tích lũy 𝛾(𝑖, 𝑗) tại ô (𝑖, 𝑗) của ma trận được tính bằng

khoảng cách 𝑑(𝑖, 𝑗) của ô tương ứng cộng với giá trị nhỏ nhất của khoảng cách tích lũy của các ô liền kề trước ô đó Khoảng cách xoắn thời gian động của hai chuỗi thời gian 𝑄 và 𝐶 là căn bậc hai của khoảng cách tích lũy tại ô có chỉ số là (𝑚, 𝑛)

Khoảng cách Euclid có thể được xem là trường hợp đặc biệt của khoảng cách

DTW, trong đó phần tử thứ 𝑘 của 𝑊 được ràng buộc sao cho 𝑤𝑘 = (𝑖, 𝑗)𝑘, 𝑖 = 𝑗 = 𝑘

Trường hợp đặc biệt này chỉ đúng khi hai chuỗi có chiều dài bằng nhau vì khoảng cách Euclid không thể tính được đối với hai chuỗi có chiều dài khác nhau

Trang 40

Trong thực tế, ta không cần phải tính tất cả đường xoắn vì nhiều đường xoắn trong số đó tương ứng với những đường xoắn không hợp lý (ví dụ, một điểm trong một chuỗi điện tâm đồ ánh xạ với toàn bộ các điểm trong một chuỗi điện tâm đồ khác

là không hợp lý) Thay vào đó, ta xem xét những ràng buộc sau để làm giảm số lượng đường xoắn cần phải xét trong quá trình so trùng

 Điều hiện biên: 𝑤1 = (1, 1) và 𝑤𝑘 = (𝑚, 𝑛), ràng buộc này yêu cầu

đường xoắn phải bắt đầu và kết thúc ở hai góc đối diện của ma trận xoắn

 Tính liên tục: cho 𝑤𝑘 = (𝑎, 𝑏), thì 𝑤𝑘−1 = (𝑎′, 𝑏′) trong đó 𝑎– 𝑎′ ≤ 1 và

𝑏 − 𝑏’ ≤ 1 Ràng buộc này yêu cầu đường xoắn phải di chuyển giữa những ô liền kề (kể cả những ô liền kề theo đường chéo)

 Tính đơn điệu tăng: cho 𝑤𝑘 = (𝑎, 𝑏), thì 𝑤𝑘−1 = (𝑎′, 𝑏′) với 𝑎– 𝑎′ ≥ 0

và 𝑏– 𝑏′ ≥ 0 Ràng buộc này yêu cầu các điểm trong 𝑊 phải tăng đơn điệu theo thời gian

Quá trình tính khoảng cách DTW được minh họa bằng ví dụ bên dưới Giả

sử ta có hai chuỗi thời gian như sau:

Q = (2, 3, 3, 6, 7, 5, 2, 1, 1, 2)

C = (1, 3, 3, 5, 8, 5, 1, 1, 1, 3)

Hai chuỗi này được biểu diễn thông qua đồ thị ở Hình 3.2

Hình 3.2 Đồ thị biểu diễn hai chuỗi thời gian

Ngày đăng: 27/01/2021, 00:09

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