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

Tiểu luận môn khai phá dữ liệuTÍNH SỰ TƯƠNG ĐỒNG CỦA CHUỖI DỮ LIỆU THỜI GIAN

50 698 6

Đ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 50
Dung lượng 3,14 MB

Nội dung

ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINHĐẠI HỌC CÔNG NGHỆ THÔNG TIN Chuyên đề KHAI PHÁ DỮ LIỆU Tiểu Luận TÍNH SỰ TƯƠNG ĐỒNG CỦA CHUỖI DỮ LIỆU THỜI GIAN MỘT ỨNG DỤNG TRONG CHỨNG KHOÁN VỚI MÔ HÌNH

Trang 1

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

ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

Chuyên đề KHAI PHÁ DỮ LIỆU

Tiểu Luận

TÍNH SỰ TƯƠNG ĐỒNG CỦA CHUỖI DỮ LIỆU THỜI GIAN

MỘT ỨNG DỤNG TRONG CHỨNG KHOÁN

VỚI MÔ HÌNH PAIR-TRADING

Giảng viên: PGS.TS ĐỖ PHÚC Học viên : HUỲNH LÊ

Mã số : CH0901026 Lớp: CH CNTTQM K4

TP.HCM - 12/2014

Trang 2

LỜI NÓI ĐẦU

Sự phát triển vượt bậc của các thiết bị lưu trữ cho phép con người lưu trữ lại một lượngkhổng lồ dữ liệu mà họ đã tạo ra trong quá trình sử dụng các hệ thống ứng dụng trongthực tế Con người có thể truy xuất nguồn dữ liệu này để trích xuất các báo cáo, thống kêphục vụ nhu cầu của mình Bên cạnh đó, dữ liệu bản thân nó còn tìm ẩn những tri thức

mà các kỹ thuật trích xuất, thống kê truyền thống khó có thể tìm ra được Kỹ thuật khai

phá dữ liệu (Data Mining – DM) đã được nghiên cứu nhằm giúp con người phát hiện

những tri thức tìm ẩn bên trong đó Những kỹ thuật này có thể kể đến như : tìm luật kết

hợp (association rule), tìm mẫu (pattern), episode, phân lớp (classification), gom cụm (cluster analysis), dò tìm các phần tử dị biệt (outlier dection)…

Một trong số các bài toán liên quan đến khai phá dữ liệu thời gian (time series data) đó là vấn đề đo lường sự tương đồng (similarity) của các chuỗi dữ liệu Nhiều độ đo và giải

thuật đã được các nhà nghiên cứu đưa ra như : độ đo Eucliden, phương pháp xoắn thời

gian động (Dynamic Time Warping -DTW), chuỗi con chung dài nhất (Longest Common Subsequence – LCSS),…

Một vấn đề khi tính toán sự tương đồng theo các độ đo đó là sự phức tạp của các thuậttoán do phải xử lý trên một chuỗi số liệu rất lớn Nhiều giải thuật đã đưa ra nhằm khắcphục nhược điểm đó nhưng lại giảm bớt các tiêu chí khác như : độ chính xác, sai số dữliệu

Tiểu luận này giới thiệu một giải thuật mới : SparseDTW do tác giả Ghazi H Al-Naymat đưa ra năm 2009 [Gha08] nhằm đo lường sự tương đồng của dữ liệu theo độ đo DTW.

Đây là một giải thuật hiệu quả cả về không gian bộ nhớ xử lý và độ chính xác tuyệt đốicủa kết quả Trái ngược với các giải thuật nghiên cứu trước đó hi sinh bớt sự chính xáccủa kết quả để giảm bớt không gian xử lý Ý tưởng chính của giải thuật này tận dụng sựtương đồng nếu có giữ 2 chuỗi dữ liệu theo nguyên lý : nếu hai chuỗi dữ liệu càng tươngđồng thì càng ít thao tác tính toán và càng cần ít không gian tính toán Giải thuật nàyđược thử nghiệm cho thấy kết quả vượt trội hơn so với các giải thuật tính toán trước đó

cả về thời gian xử lý và độ chính xác của kết quả tìm được

Trang 3

Giải thuật này được ứng dụng vào việc tìm kiếm các cập chứng khoán tương đồng cho 50

mã chứng khoán được chọn ngẫu nhiên của sàn giao dịch chứng khoán TP.HCM

(HOSE) Dữ liệu tính toán là dữ liệu cuối ngày EOD (End of Day) của các chứng khoán

tính từ 5/2009 đến 12/2010 Tiểu luận cũng đưa ra một mô hình cho đầu tư chứng khoán

theo chiến lược Pair-Trading mà một phần trong mô hình này là module dò tìm các cập chứng khoán tương đồng theo giải thuật SparseDTW đã đưa ra.

Em xin gởi lời cảm ơn chân thành đến PGS.TS Đỗ Phúc đã giành thời gian quí báo củamình truyền đạt những kiến thức bổ ích cũng như truyền cảm hứng cho em trong lĩnh vựcnày

Tp.HCM, tháng 12 năm 2010

Trang 4

MỤC LỤC

CHƯƠNG 1 5

TỔNG QUAN 5

1 GIỚI THIỆU 5

1.1 Khai phá dữ liệu thời gian 5

1.2 Tìm kiếm mã chứng khoán tương đồng (pair trading) 6

1.3 Quá trình khai phá dữ liệu 7

2 DỮ LIỆU THỜI GIAN VÀ CÁC ĐỘ ĐO SỰ TƯƠNG ĐỒNG 8

2.1 Dữ liệu thời gian 8

2.2 Đo sự tương đồng 9

2.3 Các độ đo sự tương đồng 10

2.3.1 Độ đo Euclidean 10

2.3.2 Xoắn thời gian động (Dynamic Time Warping – DTW) 12

2.3.3 Phương pháp chuỗi con chung dài nhất (LCSS) 16

2.3.4 So sánh các độ đo 16

2.3.5 Một số độ đo khác 17

CHƯƠNG 2 19

TIẾP CẬN MỚI TRONG TÍNH TOÁN DTW VÀ ỨNG DỤNG TRONG CHỨNG KHOÁN 19

1 Giới thiệu 19

2 Ma trận sparse 20

2.1 Lưu trữ theo dòng (Compressed Row Storage – CRS) 21

2.2 Lưu trữ theo cột (Compressed Column Storage – CCS) 21

2.3 Lưu trữ theo khối (Block compressed row storage– BCRS) 22

3 Các khái niệm 22

4 Giải thuật SparseDTW 23

4.1 Mô hình Pair-Trading trong chứng khoán 26

4.1.1 Một số khái niệm 26

4.1.2 Pair-trading framework 26

4.1.3 Kết hợp DTW với phương pháp cận dưới 28

4.1.4 Phát hiện các cơ hội đầu tư 30

4.1.5 Tìm cập chứng khoán tương đồng của sàn HOSE 30

4.2 Thiết kế chương trình 36

4.2.1 Cơ sở dữ liệu 36

4.2.2 Các lớp 37

4.2.3 Giao diện & hướng dẫn sử dụng 38

4.2.4 Cài đặt 39

KẾT LUẬN 40

TÀI LIỆU THAM KHẢO 42

Trang 5

CHƯƠNG 1 TỔNG QUAN

1 GIỚI THIỆU

1.1 Khai phá dữ liệu thời gian

Một chuỗi dữ liệu thời gian (Time series) là một chuỗi các điểm dữ liệu thông thường

được đo lường ở một chu kỳ thời gian nhất định nào đó, trong đó mỗi điểm dữ liệu được

đặc trưng bởi một giá trị và vì vậy dữ liệu thời gian (TSD – time series data) là bao gồm

tập các chuỗi này Trong tiểu luận này, khi đề cập đến chuỗi dữ liệu tức là chuỗi dữ liệu

pháp DTW được chấp nhận nhiều hơn

DTW sử dụng mô hình lập trình động để tính toán sự so khớp giữ 2 chuỗi dữ liệu Giải

thuật DTW truyền thống có độ phức tạp là O(nm) với n, m là chiều dài của 2 chuỗi dữ

liệu cần tính toán

Để giảm thiểu độ phức tạp này, các nhà nghiên cứu đã đưa ra nhiều giải thuật để tăng tốctính toán DTW Về mặt tổng quan có thể nhóm các kỹ thuật này thành 3 loại :

- Phương pháp bổ sung thêm các ràng buộc để giảm bớt không gian tìm kiếm (công

trình của Sakoe & Chiba (1978), Itakura (1975)) Các phương pháp này giảm

thiểu không gian tìm kiếm nhưng lại không đảm bảo cho kết quả tốt nhất

- Phương pháp dựa trên việc biến đổi dữ liệu qua đó dữ liệu gốc được biến đổi và

tính toán trên đó, sau đó sẽ chuyển lại thành dữ liệu ban đầu (Salvador & Chan 2007) Phương pháp này cũng không đảm bảo cho ra kết quả tối ưu nhất.

- Phương pháp dựa vào kỹ thuật đánh chỉ mục (index) được đưa ra bởi Keogh & Ratanamahatana (2004) và Sakurai et (2005) Phương pháp này không trực tiếp

tăng tốc tính toán DTW nhưng nó giới hạn số lần tính DTW

Trang 6

Rất nhiều ứng dụng có thể thừa hưởng từ kết quả của việc nghiên cứu sự tương đồng củachuỗi dữ liệu như :

- Trong ứng dụng tài chính (chứng khoán, vàng,…) : qua đó nhà đầu tư sẽ tìm các

mã chứng khoán tương đồng Ứng với mỗi cập sẽ theo dõi sự thay đổi giá của một

mã để có quyết định đầu tư đúng đắn cho mã còn lại (gọi là kỹ thuật Pair-trading).Tiểu luận này ứng dụng để tìm các cập chứng khoán tương đồng của sàn giao dịchchứng khoán HCM (HOSE)

- Trong các ứng dụng nhận dạng giọng nói ví dụ : tìm các clips có chứa giọng nóicủa người nào đó, so sánh giọng nói trong các hệ thống bảo mật,

Hầu kết các nghiên cứu trước đây đều tập trung vào tăng tốc tính toán DTW bằng cáchhoặc giảm không gian tìm kiếm nhưng lại giảm độ chính xác của kết quả hay đưa ra kỹthuật đường biên dưới nhằm giảm tính toán trên những chuỗi không cần thiết nhưng lạikhông giảm được tính toán DTW

Để khắc phụ 2 nhược điểm đó, giải thuật SparseDTW được đưa ra nhằm giảm thiểu tính

toán DTW nhưng vẫn luôn cho được kết quả tối ưu nhất

1.2 Tìm kiếm mã chứng khoán tương đồng (pair trading)

Nhiều nhà nghiên cứu đã đưa ra các giải thuật cũng như mô hình tập trung vào vấn đề tìm

kiếm các mẫu (pattern) ứng dụng trong thị trường chứng khoán Tiểu luận này đưa ra mô

hình Pair-trading, đây là một chiến lượt đầu tư liên quan đến việc tìm kiếm các mã chứngkhoán tương đồng, theo dõi sự thay đổi giá của chúng để có quyết định đầu tư đúng đắn

qua kỹ thuật short-sell và long buying.

Luật kết hợp cũng đã được ứng dụng trong chứng khoán để dự đoán sự dịch chuyển giá

cổ phiếu dựa trên dữ liệu thu thập trước đó, giúp nhà đầu tư tìm ra được điểm hội tụ của

giá cổ phiếu (Lu et al., 1998 ; Ellatif, 2007) Tuy nhiên, luật kết hợp lại cho ra quá nhiều luật do vậy gây khó khăn cho nhà đầu tư khi quyết định Basalto et al.-2004 [bas04] đã đưa ra giải thuật gom cụm để tìm sự tương quan giữa các cổ phiếu Cao et al.-2006 đã đưa ra giải thuật di truyền mờ (fuzzy genetic) để tìm ra các cập có quan hệ và xếp hạng

các quan hệ đó

Trang 7

Các nhà đầu tư khi theo dõi bảng chứng khoán là nhằm quan sát sự thay đổi giá của cácchứng khoán mà họ nghĩ là sẽ đem lại lợi nhuận Như vậy, nếu ta xây dựng được một hệthống qua đó tự động dò tìm các cập chứng khoán tương đồng, sau đó tự động theo dõi sựthay đổi giá giữa chúng và tự động đưa ra các đề nghị (dựa vào các quy luật đầu tư chứngkhoán) cho nhà đầu tư thì đây là một hệ thống rất hữu ích.

1.3 Quá trình khai phá dữ liệu

Khai phá dữ liệu là quá trình trích xuất các thông tin quan tâm hay các mẫu trong CSDL

lớn (CSDL quan hệ, nhà kho dữ liệu – data warehouse, XML) (theo định nghĩa của Piatetsky-Shapiro & Frawley – 1991).

Tri thức Và Thông tin

Hình 1: Quá trình khai phá tri thức trong CSDL (KDD)

Mặc dù khai phá dữ liệu chỉ là một bước quan trong tiến trình khai phá tri thức trong

CSDL (knowledge discovery in databases - KDD) nhưng hầu như nó được ngằm hiểu

như quá trình KDD Quá trình KDD bao gồm 4 bước :

- Bước 1 (chọn lọc, tích hợp dữ liệu) : Công đoạn này bắt buộc phải thực hiện vì dữ

liệu có thể được thu thập từ nhiều nguồn khác nhau do đó có thể dư thừa, khôngđầy đủ hoặc nhiễu Quá trình này sẽ loại bỏ những thành phần không mong muốnđó

- Bước 2 (Tiền xử lý) : mặt dù dữ liệu sau khi qua bước 1 đã bị loại bỏ sự dư thừa,

nhiễu nhưng đây là dữ liệu thô và thực sự không cần thiết để khai phá Vì vậybước 2 là trích lọc ra các thông tin liên quan và chuyển đổi chúng về đúng địnhdạng phù hợp để có thể khai phá

Trang 8

- Bước 3 (khai phá) : sau khi dữ liệu đã sẵn sàn, rất nhiều kỹ thuật khai phá khác

nhau được áp dụng nằm tìm ra tri thức mong muốn Các kỹ thuật khác nhau chophép khai phá các tri thức khác nhau tùy thuộc từng ứng dụng

- Bước 4 (hậu xử lý) : tri thức sau khi tìm được cần được ước lượng, đánh giá, giải

thích cho người dùng Bên cạnh đó còn phải hiện thực (thể hiện trực quan) đểngười dùng dễ hiểu và nắm được tri thức trong nó

Hình sau mô tả quan hệ giữa các đối tượng liên quan trong khai phá dữ liệu và mức độ hỗtrợ tri thức :

Hình 2: Data Mining và BI

- DBA : người quản trị CSDL sẽ thu thập, tích hợp các hệ thống CSDL đã có để

hình thành kho dữ liệu phục vụ cho khai phá dữ liệu

- Data Analyst : nhân viên phân tích dữ liệu dựa vào nguồn dữ liệu do DBA cung

cấp để tiến hành các phân tích thống kê, truy vấn, thiết lập báo cáo và thực hiện tiến trình khai phá dữ liệu

- Tri thức có được sẽ đến nhân viên phân tích nghiệp vụ sẽ hiện thực, giải thích các kết quả đó và chuyển cho lãnh đạo để ra quyết định

2 DỮ LIỆU THỜI GIAN VÀ CÁC ĐỘ ĐO SỰ TƯƠNG ĐỒNG

Trang 9

2.1 Dữ liệu thời gian

Định nghĩa 1 : một chuỗi dữ liệu thời gian S được định nghĩa như sau :

s t N

Trang 10

,trong đó s t là điểm dữ liệu tại thời điểm t.

Định nghĩa 2 : một CSDL dữ liệu thời gian TSD là một tập các chuỗi được mô tả như

sau :

S i N

Trang 11

,trong đó Si là chuỗi thứ i trong tập các chuỗi dữ liệu.

Ví dụ một chuỗi dữ liệu thời gian như Hình 3 :

Hình 3:Hai chuỗi dữ liệu của mã chứng khoán DPM và GMD

- Đánh chỉ mục (indexing) hay truy vấn theo nội dung của dữ liệu (query by

content) : có 2 cách tiếp cận theo hướng này gồm :

(1) : Theo khoảng (by range) : tìm tất cả các chuỗi dữ liệu có khoảng cách

nhỏ hơn  với các chuỗi dữ liệu chỉ định

Trang 12

Định nghĩa 3 : cho D là không gian tìm kiếm được định nghĩa trên tập chuỗi dữ liệu thời

gian và 2 điểm x, y D, một hàm đo khoảng cách dist trên D được định nghĩa là :

R DxD

Trang 13

,trong đó R là tập số thực Hàm dist là hàm đối xứng nếu nó thỏa mãn các tính chất sau :

- Không âm (nonnegativity) :

0 ) , (x y

- Phản xạ (reflexivity) :

- Đối xứng (symmetry) :

- Bất đẳng thức tam giác (triangle inequality) :

Định nghĩa 4 : cho D là không gian tìm kiếm , 2 điểm x, y D, hàm dist và một ngưỡng

 thì : x, y được xem là tương đồng nếu dist(x,y)  và không tương đồng nếu

dist(x,y)>

Sự tương đồng của hai chuỗi được tính bằng cách so sánh từng cập điểm của hai chuỗi

bằng hàm khoảng cách dist Hàm đo khoảng cách trên là hàm độc lập dữ liệu do vậy cần

được thiết kê riêng, chuyên biệt cho từng loại dữ liệu và từng ứng dụng khác nhau

2.3.1 Độ đo Euclidean

Độ đo Euclidean là độ đo khoảng cách đầu tiên được sử dụng để đo sự tương đồng của chuỗi dữ liệu thời gian (các công trình của Agrawal et al 1993, Faloutsos et al 1994, Rafiei & Mendelzon 1998) Ta có 2 định nghĩa về đọ đo này tùy thuộc vào loại và chiều

x x x

s q

s EucDist

1

2 2

2 1

Trang 14

2.3.1.1 Giới hạn của độ đo Euclidean

Hai lợi điểm của độ đo này là dễ tính toán và chi phí tính toán là tuyến tính theo chiều dàichuỗi dữ liệu Tuy nhiên độ đo này lại có một giới hạn lớn đó là : hai chuỗi dữ liệu phải

có cùng chiều dài và như vậy nó không hỗ trợ phương pháp dịch chuyển điểm cục bộ

(local time shifting)

Local time shifting xảy ra khi một phần tử của một chuỗi được dịch chuyển theo trục thời

gian để so khớp với một điểm kia của chuỗi còn lại ở thời điểm khác (2 cập điểm có thểkhác vị trí trong chuỗi dữ liệu) Kỹ thuật này rất hữu ích khi đo lường hai chuỗi dữ liệugiống nhau nhưng lệch pha nhau Dịch chuyển này là cục bộ bởi vì không phải tất cả cácphần tử của chuỗi dữ liệu sẽ bị dịch chuyển và hơn nữa các phần tử bị dịch chuyển nàycòn có các độ dịch chuyển khác nhau

Global time shifting – dịch chuyển toàn cục : tất cả các phần tử trong chuỗi dữ liệu đều được dịch chuyển theo trục thời gian với cùng một độ dịch Hình 4 mô tả cách so khớp của đọ đo Euclidean :

Hình 4:Cách so khớp 2 chuỗi dữ liệu theo Euclidean 2.3.2 Xoắn thời gian động (Dynamic Time Warping – DTW)

Phương pháp xoắn thời gian động là một kỹ thuật lập trình động cho phép đo lường sựtương đồng của hai chuỗi dữ liệu có thể lệch pha nhau hay khác nhau về chiều dài Ví dụnhư đo lường sự tương đồng của hai đoạn video được quay bởi hai người với tốc độ di

chuyển khác nhau Hình 5 mô tả cách so khớp theo phương pháp DTW

Trang 15

Hình 5:Cách so khớp 2 chuỗi dữ liệu theo DTW

Đặc điểm quan trọng của DTW là : không yêu cầu hai chuỗi có cùng chiều dài và nó hỗ

trợ phương pháp local time shifting Tuy nhiên DTW không đối xứng vì nó không thỏa

mãn bất đẳng thức tam giác đã nêu trên

Định nghĩa 7 : DTW là một phương pháp lập trình động trong đó phân chia chuỗi ban

đầu thành các chuỗi con và tính toán độ đo trên các chuỗi con đó :

) 1 , 1 (

) , 1 ( min ) , ( ) , (

j i D

j i D

j i D j

i d j i

Trang 16

Ví dụ : cho S, Q có 10 điểm dữ liệu như sau :

S={3,4,5,3,3,2,3,4,2,3}

Q={1,2,2,1,0,1,1,2,1,2}

Hình sau mô tả các so khớp chuỗi S, Q

Và ma trận D được tạo ra theo công thức tính DTW như sau, các ô tô màu là đường sokhớp tối ưu giữa S và Q

Trang 17

Định nghĩa 8 : Công thức tính DTW của 2 chuổi S, Q có chiều dài M và N bất kỳ là :

) , (

0 0

0

0 0

) , (

' ' ' ' 1

1

Q S DTW

Q S DTW

Q S DTW q

s d

M and N

if

M or N if Q

S

Trang 18

2.3.2.3 Độ phức tạp của DTW

Độ phức tạp tính toán của DTW là O(MN) với M, N là chiều dài của hai chuỗi dữ liệu.

Do đó khi chiều dài của chuỗi dữ liệu tăng ta phải mất rất nhiều thời gian để tính toán Cóhai phương pháp khắc phục vấn đề này :

- Sử dụng phương pháp đánh chỉ mục (index) để giảm số lần tính toán.

- Cải tiến các kỹ thuật tính toán

2.3.2.4 Các phương pháp đẩy nhanh tính toán DTW

a) Bổ sung các ràng buộc

Nhiều phương pháp đã nghiên cứu theo hướng này nhưng nổi bậc là phương pháp của

Itakura 1975, Sakoe & Chiba 1978 nhằm giới hạn đường so khớp tối ưu phải nằm trong

cận trên và cận dưới Hình sau mô tả 2 phương pháp này

Với r là bán kính cho phép được định nghĩa trước Đường so sánh tối ưu được định nghĩa

là :

w w i j j r i j r

Wk | k  ( , ) ,    

b) Giới hạn cận dưới (Lower bound)

- Tính cận dưới theo phương pháp của Kim et al 2001 : chỉ tính 4 khoảng cách

gồm : khoảng cách ở điểm đầu A, điểm cuối D, Điểm lớn nhất C và nhỏ nhất B

Trang 19

) , , , max(

- Phương pháp của Keogh & Ratanamahatana 2004 :

) , min(

) , max(

r i r i i

r i r i i

q q L

q q U

i i i i

L c L c

U c U c C

Q Keogh LB

1

2 2

0

, ) (

, ) ( )

, ( _

(11)

Trang 20

2.3.3 Phương pháp chuỗi con chung dài nhất (LCSS)

Độ đo LCSS (longest common subsequence) được đưa ra nhằm đo lường sự tương đồng của chuỗi dữ liệu bị nhiễu cao (các công trình của Hirschberg 1975, Boreczky & Rewe 1996), và được tính theo công thức sau :

Với dist(s1,q1) là khoảng cách EucDist được tính theo công thức 8 đã nêu và S ’ và Q ’

phần còn lại của chuỗi S, Q ;  là ngưỡng cho trước

2.3.4 So sánh các độ đo

Bảng sau so sánh các độ đo đã nêu :

Độ đo Khác chiều dài ? Local time shifting Nhiễu ngưỡng e Thông số Độ phức tạp xứng Đối

EucDis

Trang 21

2.3.5 Một số độ đo khác

Độ đo dựa trên độ dốc (slope-based similarity)

Trong [Alt06], tác giả đã đưa ra một độ đo mới theo độ dốc giữa hai chuỗi dữ liệu nhằmkhai phá dữ liệu về các thử nghiệm lâm sàn Tác giả chia ra 5 độ dốc là : 0, 0.25, 0.5,

0.75 và 1 Cho a 1 và a 2 và b 1 , b 2 lần lượt là các điểm nằm trên hai chuỗi dữ liệu A, B thì

độ dốc SA và SB được tính như sau :

a a

a a SA

b b

b b SB

Sau đó 2 hệ số này sẽ so sánh với một ngưỡng ngằm xác định thuộc loại nào trong 5 loại

trên Gọi pt ký hiệu cho ngưỡng dương và nt ký hiệu cho ngưỡng âm và giả sửa SA<nt thì độ dốc của chúng được phân loại theo giá trị của SB như sau:

- nếu SB<nt, diff=0

- nếu SBnt, diff=0.25

- nếu SB<pt, diff=0.75

- nếu SBpt, diff=1

Envelope : phương pháp này sẽ phân chia chuỗi dữ liệu thành các đoạn gọi là các

envelope sau đó tính toán độ tương tự cho từng đoạn bằng cách xác định khoảngcách của từng điểm là lớn hơn hay nhỏ hơn một ngưỡng cho trước Nếu lớn hơn thìđánh Yes và ngược lại là No Sau đó đó đếm số lượng Yes trên toàn bộ các đoạn đểtính độ tương tự của chúng ([Agr96], [Bol97])

Các độ đo khác : dưới đây mô tả sơ lượt một số độ đo khác gồm :

- DISSIM [Fre07] : tính độ đo của 2 chuỗi dữ liệu với tần số lẫy mẫu của 2 chuỗi cóthể khác nhau

- EDR [Che05] : đưa ra khái niêm edit distance nhằm ước lượng khoảng cách của

hai chuỗi bằng cách sử dụng một ngưỡng để ước lượng độ đo là 0 hay 1

- ERP [Che04b] : một điểm tham chiếu cố định được sử dụng để đo khoảng cách các khoảng trống của hai chuỗi

Trang 22

- TQuEST [Aβf06]f06] : chuyển chuỗi dữ liệu gốc sang chuỗi khác theo một ngưỡng cho trước.

- SpADe [Che07] : tính độ tương đồng bằng cách tìm các mẫu tương tự trong 2 chuỗi

- Một số độ đo theo mô hình sác xuất

- Multivariate time series similarity measures

- Similarity of multiattribute motions

Trang 23

CHƯƠNG 2 TIẾP CẬN MỚI TRONG TÍNH TOÁN DTW VÀ

ỨNG DỤNG TRONG CHỨNG KHOÁN

1 Giới thiệu

Để đẩy nhanh tính toán DTW nhiều nghiên cứu đã đưa ra các phương pháp khác nhaunhưng các phương pháp đó lại có các nhược điểm như : tăng thời gian tính DTW nhưnglại không đảm bảo cho kết quả tối ưu

Phần này giới thiệu giải thuật SparseDTW được thiết kế nhằm đẩy nhanh tính toán DTW

nhưng vẫn luôn luôn cho kết quả tối ưu nhất Ý tưởng chính trong cách tiếp cận mới này

đó là tận dụng sự tương đồng (nếu có) của chuỗi dữ liệu để tính toán Hai chuỗi càngtương đồng thì càng ít tính toán và ngược lại Cách tiếp cận này tương tự như tiếp cận

theo phương pháp đánh chỉ số của [Sak78] nhưng có thêm 3 điểm nổi bậc sau :

- Vùng giới hạn (bands) của SparseDTW được tính toán tự động và xét về trung

bình thì nó nhỏ hơn nhiều so với cách tiếp cận truyền thống Ma trận sparse được

sử dụng để tính toán thay cho ma trận truyền thống do vậy giảm thiểu về yêu cầu

bộ nhớ cũng như độ phức tạp khi tính toán trên ma trận

- Giải thuật SparseDTW luôn luôn cho ra kết quả tối ưu nhất.

- Có thể kết hợp SparseDTW với cách tiếp cận về cận dưới (lower bounds) đã đề

cập phần trên nhằm giới hạn các chuỗi thực sự cần tính toán do vậy giảm thiểu số lượng chuỗi so sánh

Như đã nói trong phần 2.2.2.4 thì công thức tính đường so khớp là

|)

|

|, max(|S QKSQ

Mọi đường W phải thỏa mãn 3 đặc tính sau :

- Tăng đều : cho 2 phần tử bất kỳ w k =(w i , w j ) và w k-1 =(w i ’, w j ’) thì w i -w i ’ 0 và w j

-w ’ 0 Tức i và j là chính nó hoặc tăng chứ không được giảm.

Trang 24

- Liên tục : cho 2 phần tử bất kỳ w k =(w i , w j ) và w k-1 =(w i ’, w j ’) thì w i -w i ’ 1 và w j

-w j ’1 Tức i và j chỉ tăng 1 ở mỗi bước tính.

- Giới hạn : W phải bắt đầu từ phần tử đầu tiên w 1 =(1,1) và kết thúc ở phần tử cuối cùng w k (n,m).

Có thể có rất nhiều đường nằm trong kênh (bands) được xét nhưng chỉ có 1 đường có

khoảng cách nhỏ nhất được chọn theo công thức sau :

S DTW

K k k

1

min ) ,

Với K là tổng số phần tử của W

Các ý tưởng sau được sử dụng trong phương pháp SparseDTW :

- Định lượng chuỗi dữ liệu để tìm sự tương đồng giữa các điểm của 2 chuỗi

- Sử dụng ma trận sparse có kích thước k=m * n trong trường hợp xấu nhất Tuy nhiên nếu 2 chuỗi là tương đồng thì k<<n * m

- Tối ưu các giải thuật xử lý trên ma trận sparse về bộ nhớ lưu trữ cũng như các phép toán xử lý trên ma trận này theo các phương pháp như CRS, CCS, BCRS,…

2 Ma trận sparse

Ma trận sparse là một dạng ma trận đặc biệt với đa phần các phần tử của nó đều bằng 0

Do vậy, đối với dạng ma trận này cần yêu cầu các phương pháp tổ chức lưu trữ hiệu quảnhằm tối ưu không gian bộ nhớ và đặc biệt khi xử lý trên chuỗi dữ liệu lớn

Dưới đây mô tả một số phương pháp biểu diễn ma trận sparse, để thuận tiện trong cácphần trình bày sau ta xem xét một ma trận sparse như sau :

- Số hàng N=6

- Số cột M=6

Ngày đăng: 11/04/2015, 23:32

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w