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

Cải tiến phân lớp dữ liệu chuỗi thời gian dựa vào sự sàng lọc tập huấn luyện và độ đo bất biến độ phức tạp

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 (2.37 MB, 83 trang )

ĐẠI HỌC QUỐC GIA TP. HCM
TRƢỜNG ĐẠI HỌC BÁCH KHOA
--------------------

HUỲNH TẤN LỘC

CẢI TIẾN PHÂN LỚP DỮ LIỆU CHUỖI THỜI GIAN
DỰA VÀO SỰ SÀNG LỌC TẬP HUẤN LUYỆN
VÀ ĐỘ ĐO BẤT BIẾN ĐỘ PHỨC TẠP
Ngành: Khoa Học Máy Tính
Mã số: 60.48.01.01

LUẬN VĂN THẠC SĨ

TP. HỒ CHÍ MINH, tháng 08 năm 2016


CƠNG TRÌNH ĐƢỢC HỒ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 19 tháng 07 năm 2016.
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
1. Chủ tịch:

TS. Nguyễn Thanh Bình

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:

TS. Lƣơng Thế Nhân

5. Thƣ ký:

TS. Trƣơng Tuấn Anh

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

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


ĐẠI HỌC QUỐC GIA TP.HCM
CỘNG HÕA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƢỜNG ĐẠI HỌC BÁCH KHOA
Độc lập - Tự do - Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Huỳnh Tấn Lộc................................................ MSHV: 13070245
Ngày, tháng, năm sinh: 05/05/1990 ............................................ Nơi sinh: TP.Hồ Chí Minh

Ngành:
I.

Khoa Học Máy Tính ................................................. Mã số: 60.48.01.01

TÊN ĐỀ TÀI: Cải tiến phân lớp dữ liệu chuỗi thời gian dựa vào sự sàng lọc tập huấn
luyện và độ đo bất biến độ phức tạp

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

Nghiên cứu phân lớp dữ liệu chuỗi thời gian bằng giải thuật k-lân cận gần nhất với
độ đo xoắn thời gian động (DTW).

-

Nghiên cứu cải tiến phƣơng pháp phân lớp nêu trên dựa vào sự sàng lọc tập huấn
luyện bằng giải thuật Naive Rank Reduction của Xi và các cộng sự.

-

Nghiên cứu độ đo độ dốc tích lũy có trọng số và độ đo bất biến độ phức tạp (CID).

-

Hiện thực và thử nghiệm phƣơng pháp phân lớp cải tiến dựa vào sự sàng lọc tập
huấn luyện với các độ đo khoảng cách khác nhau để so sánh hiệu quả của chúng.

III. NGÀY GIAO NHIỆM VỤ:


20/1/2016

IV. NGÀY HOÀN THÀNH NHIỆM VỤ:
V. CÁN BỘ HƢỚNG DẪN:

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

PGS. TS. Dƣơng Tuấn Anh

20/6/2016

PGS. TS. Dƣơng Tuấn Anh
TP.HCM, ngày 31 tháng 08. năm 2016
KT. TRƢỞNG KHOA KH & KTMT


LỜI CẢM ƠN
Tôi xin chân thành cảm ơn PGS. TS. Dƣơng Tuấn Anh, ngƣời Thầy đã tận
tình dìu dắt tơi trong suốt quá trình học tập tại trƣờng Đại học Bách Khoa – TP Hồ
Chí Minh. Thầy cũng là ngƣời hƣớng dẫn và tạo điều kiện tốt nhất để tôi có thể
hồn thành luận văn thạc sĩ.
Tơi xin cảm ơn q Thầy Cơ, những ngƣời đã tận tình hƣớng dẫn và truyền
đạt cho tôi và biết bao thế hệ sinh viên những kiến thức q báu trong suốt q trình
học tập. Tôi đặc biệt gửi lời cám ơn đến cô Võ Thị Ngọc Châu, cô đã cho tôi nhiều
lời khuyên bổ ích về lịng can đảm và sự trƣởng thành.
Tơi xin cảm ơn gia đình đã độ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.
Con trân trọng dành tặng thành quả của luận văn này cho Cha Mẹ. Nhờ
cơng lao dƣỡng dục của Ngƣời mà con mới có đƣợc thành quả nhƣ ngày hôm nay.
Qua đây, tôi cũng xin chân thành cảm ơn các anh chị và các bạn đã giúp

đỡ, góp ý cho tơi trong q trình thực hiện luận văn.

iii


TÓM TẮT LUẬN VĂN
Dữ liệu chuỗi thời thời gian (time series data) là một chuỗi dữ liệu dạng
điểm, đƣợc đo theo từng khoảng khắc thời gian liền nhau theo một tần suất nhất
định, đã và đang đƣợc ứng dụng trong nhiều ngành nghề, lĩnh vực khác nhau. Việc
phân tích dữ liệu chuỗi thời gian thơng qua phân lớp đóng vai trị quan trọng vì đó
là q trình trích xuất các thuộc tính thống kê có ý nghĩa, qua đó ta có thể dự đốn
các điểm dữ liệu trƣớc khi nó xảy ra, hoặc thống kê xu hƣớng dữ liệu hiện tại và
đƣa ra quyết định tốt hơn phục vụ đời sống con ngƣời.
Trong nhiều thập niên qua, các nhà nghiên cứu đã cố gắng cải tiến việc phân
lớp chủ yếu dựa vào cải tiến quá trình tìm kiếm tƣơng tự trên chuỗi dữ liệu thời
gian. Trong đề tài này, tôi khảo sát một hƣớng tiếp cận cho bài toán bằng việc cải
tiến phân lớp dữ liệu chuỗi thời gian thông qua sàng lọc tập huấn luyện.
Cơ sở của việc cải tiến dựa trên việc chúng ta cẩn thận chọn lựa các đối
tƣợng trong tập huấn luyện và loại chúng ra nếu cần. Làm nhƣ vậy, ta có thể tinh
lọc từ tập huấn luyện ban đầu thành một tập huấn luyện mới nhỏ hơn, gọn hơn, qua
đó giảm đáng kể thời gian phân loại nhƣng vẫn đảm bảo đƣợc những thông tin cần
thiết với độ chính xác cao, trong một số trƣờng hợp thực nghiệm cho thấy độ chính
xác thậm chí tốt hơn tập huấn luyện ban đầu, qua đó rút giảm chi phí tính tốn.
Đề tài sẽ từng bƣớc áp dụng sàng lọc tập huấn luyện dựa vào độ đo xoắn thời
gian động và so sánh hiệu suất trƣớc / sau khi áp dụng việc sàng lọc tập huấn luyện.
Đồng thời cũng áp dụng việc sàng lọc tập huấn luyện với một số độ đo khác là độ
dốc tích lũy có trọng số, độ đo bất biến phức tạp và so sánh với độ đo xoắn thời gian
động. Cuối cùng rút ra kết luận về hiệu suất của các độ đo khoảng cách và tính hiệu
quả của việc sàng lọc tập huấn luyện.


iv


ABSTRACT
A time series is a series of data points listed (or graphed) in time order. Most
commonly, a time series is a sequence taken at successive equally spaced points in
time. It has been applied in many different domains such as industries, health,
weather and finance. Time series analysis plays an important role because it
comprises methods for analyzing time series data in order to extract meaningful
statistics and other characteristics of the data, thus help human predict events before
it happen, or do some statical reporting and have better decision making.
In recent years, time series classification has attracted the attention of many
researchers, many algorithms have been proposed to improve the performance of
similar searching process of time series data. In this project, we investigated an
approach to improve time series data classification through enhancing training set.
Basiscally, the improvement based on careful selection of instances in the
training set and filter out when necessary. By doing that, we can refine the initial
training set into a smaller and compact training set, thereby significantly reducing
calculation time but still ensuring high accuracy.
In this paper, I will gradually apply reducing training set, use it in some
distance measurement such as Dynamic Time Warping and compare performance
before/ after reducing training set. Along with Dynamic Time Warping are some
different distance measurement methods such as cumulative weighted slope,
complex invariant distance and euclid distance, I will compare them all to see the
performance and effectiveness of reducing training set on different distance
measurement methods.

v



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

Huỳnh Tấn Lộc

vi


MỤC LỤC
LỜI CẢM ƠN ................................................................................................................. ii
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 BẢNG BIỂU ........................................................................................... xi
BẢNG THUẬT NGỮ ANH - VIỆT VÀ TỪ VIẾT TẮT............................................... 2
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. Tầm quan trọng của khai phá dữ liệu chuỗi thời gian ................................1
1.1.2. Dữ liệu chuỗi thời gian ...............................................................................2
1.2. MỘT SỐ KHÁI NIỆM LIÊN QUAN DỮ LIỆU CHUỖI THỜI GIAN ..........3
1.3.

NGH A CỦA ĐỀ TÀI ..................................................................................5


1.4. MỤC TIÊU VÀ NHIỆM VỤ CỦA ĐỀ TÀI ....................................................6
1.5. CÁC KẾT QUẢ ĐẠT ĐƢỢC ..........................................................................6
1.6. BỐ CỤC LUẬN VĂN ......................................................................................7
CHƢƠNG 2. CÁC CƠNG TRÌNH LIÊN QUAN .......................................................... 9
2.1

CÁC ĐỘ ĐO KHOẢNG CÁCH LIÊN QUAN ............................................9

2.1.1. Độ đo Minkowski .......................................................................................9
2.1.2. Độ đo xoắn thời gian động (Dynamic Time Warping – DTW) ...............10
2.1.3. Độ đo độ dốc tích lũy có trọng số (Weighted Slope) ...............................11
2.1.4. Độ đo bất biến phức tạp (Complexity Invariance) ...................................11
2.2. TÌM KIẾM TƢƠNG TỰ TRÊN DỮ LIỆU CHUỖI THỜI GIAN ................12
2.3. CÁC CƠNG TRÌNH NGHIÊN CỨU LIÊN QUAN ......................................14
2.3.1. Phân lớp dữ liệu chuỗi thời gian dựa vào thu giảm tập huấn luyện .........14
2.3.2. Lập chỉ mục chính xác cho độ đo xoắn thời gian động............................15
vii


2.3.3. Tìm kiếm tƣơng tự trong dữ liệu chuỗi thời gian dựa trên độ dốc tích lũy
có trọng số ..........................................................................................................16
CHƢƠNG 3. CƠ SỞ LÝ THUYẾT ............................................................................. 18
3.1

PHÂN LỚP DỮ LIỆU THƢỜNG ..............................................................18

3.2

PHÂN LỚP DỮ LIỆU CHUỖI THỜI GIAN .............................................20


3.3 THUẬT TOÁN K-LÁNG GIỀNG GẦN NHẤT (K-NEAREST
NEIGHBORS) .......................................................................................................21
3.1. ĐỘ ĐO XOẮN THỜI GIAN ĐỘNG .............................................................22
3.1.1. Cách tính của độ đo xoắn thời gian động .................................................22
3.1.2. Kỹ thuật ràng buộc toàn cục .....................................................................26
3.4 SÀNG LỌC TẬP HUẤN LUYỆN BẰNG GIẢI THUẬT XẾP HẠNG
NẠVE RANK .......................................................................................................28
3.4.1

Giải thuật xếp hạng Nạve Rank: ......................................................28

3.4.2

Giảm khối lƣợng dữ liệu dựa trên sự thay đổi cửa sổ xoắn ..............30

3.5

CÁCH TÍNH CỦA ĐỘ ĐO ĐỘ DỐC TÍCH LŨY CĨ TRỌNG SỐ .........30

3.2. CÁCH TÍNH ĐỘ ĐO BẤT BIẾN PHỨC TẠP .............................................33
CHƢƠNG 4. PHƢƠNG PHÁP GIẢI QUYẾT ............................................................ 36
4.1. PHƢƠNG PHÁP ĐỀ NGHỊ ...........................................................................36
4.2. MỘT SỐ QUY ƢỚC ......................................................................................38
CHƢƠNG 5. KẾT QUẢ THỰC NGHIỆM .................................................................. 40
5.1. MÔI TRƢỜNG THỰC NGHIỆM..................................................................40
5.2. PHƢƠNG PHÁP THỰC NGHIỆM ...............................................................41
5.3. DỮ LIỆU THỰC NGHIỆM ...........................................................................41
5.3.1. Bộ dữ liệu Gun Point ................................................................................42
5.3.2. Bộ dữ liệu CBF.........................................................................................43

5.3.3. Bộ dữ liệu Trace .......................................................................................45
5.3.4. Bộ dữ liệu Fish .........................................................................................46
5.4. THỰC NGHIỆM SO SÁNH ĐỘ CHÍNH XÁC PHÂN LỚP TRƢỚC VÀ
SAU KHI SÀNG LỌC TẬP HUẤN LUYỆN.......................................................47
5.5. THỰC NGHIỆM SO SÁNH ĐỘ CHÍNH XÁC PHÂN LỚP THAY ĐỔI
THEO TỈ LỆ PHẦN TRĂM SỐ THỂ HIỆN GIỮ LẠI TRONG TẬP HUẤN
LUYỆN ..................................................................................................................50
viii


5.6. THỰC NGHIỆM SO SÁNH TÍNH CHÍNH XÁC KHI PHÂN LỚP CỦA
CÁC ĐỘ ĐO ..........................................................................................................58
5.7. THỰC NGHIỆM SO SÁNH THỜI GIAN THỰC THI CỦA CÁC ĐỘ ĐO 59
CHƢƠNG 6. TỔNG KẾT............................................................................................. 61
6.1. NHỮNG KẾT LUẬN CỦA LUẬN VĂN .....................................................61
6.2. NHỮNG KẾT QUẢ ĐẠT ĐƢỢC .................................................................63
6.3. HƢỚNG PHÁT TRIỂN .................................................................................64
TÀI LIỆU THAM KHẢO ............................................................................................. 65

ix


DANH MỤC HÌNH
Hình 1.1. Tình hình tài chính cơng ty Amazon từ năm 2012 đến nay ........................3
Hình 2.1. Độ đo khoảng cách Euclid và DTW .........................................................15
Hình 3.1. Ví dụ về phân lớp dữ liệu hình ảnh áp dụng trong lĩnh vực sinh học .......19
Hình 3.2. Minh họa thuật tốn k-Nearest Neighbors ................................................22
Hình 3.3. Cách tính khoảng cách độ đo xoắn thời gian động. ..................................23
Hình 3.4. Hai chuỗi thời gian Q và C .......................................................................25
Hình 3.5. Ma trận biểu diễn cách tính DTW cho hai chuỗi thời gian .......................25

Hình 3.6. Ràng buộc dải Sakoe-Chiba ......................................................................27
Hình 3.7. Ràng buộc hình bình hành Itakura ............................................................27
Hình 3.8. Độ đo độ dốc tích lũy có trọng số với 2 chuỗi thời gian Q, C ..................31
Hình 3.9. Đánh giá độ phức tạp thông qua độ dài chuỗi thời gian khi kéo giãn ......34
Hình 4.1. Hệ thống đề nghị .......................................................................................36
Hình 5.1. Giao diện chƣơng trình thực nghiệm ........................................................40
Hình 5.2. Vài ảnh rời trích từ video Gun-Draw: theo dõi hành vi của tay phải và
chuyển thành một chuỗi cử động. .............................................................................42
Hình 5.3. Dạng chuỗi thời gian thuộc lớp Point (phía trên) và dạng chuỗi thời gian
thuộc lớp Gun-Draw (phía dƣới)...............................................................................43
Hình 5.4. Ba đƣờng cong biểu diễn ba lớp hàm Cylinder, Bell và Funnel. ..............44
Hình 5.5. Bốn nhóm đƣờng cong biểu thị cho bốn lớp trong bộ dữ liệu Trace. .......45
Hình 5.6. Phía trên là hình chụp của một con cá. Từ hình dạng đƣờng biên của cá,
một chuỗi thời gian đơn biến đƣợc tạo ra ở phía dƣới. .............................................46
Hình 5.7. Thời gian thực thi tính tốn thay đổi khi thu giảm số phần tử trong tập
huấn luyện. ................................................................................................................50
Hình 5.8. Các đƣờng cong biểu diễn độ chính xác thay đổi theo số phần tử giữ lại
trong tập huấn luyện với độ đo DTW .......................................................................52
Hình 5.9. Các đƣờng cong biểu diễn độ chính xác thay đổi theo số phần tử giữ lại
trong tập huấn luyện với độ đo Euclid ......................................................................54
Hình 5.10. Các đƣờng cong biểu diễn độ chính xác thay đổi theo số phần tử giữ lại
trong tập huấn luyện với độ đo CID..........................................................................55
Hình 5.11. Các đƣờng cong biểu diễn độ chính xác thay đổi theo số phần tử giữ lại
trong tập huấn luyện với độ đo WS ..........................................................................57

x


DANH MỤC BẢNG BIỂU
Bảng 5.1 Các bộ dữ liệu thực nghiệm .......................................................................41

Bảng 5.2 Kết quả thực nghiệm thu giảm tập huấn luyện với độ đo DTW................47
Bảng 5.3 Kết quả thực nghiệm thu giảm tập huấn luyện với độ đo Euclid ..............48
Bảng 5.4 Kết quả thực nghiệm thu giảm tập huấn luyện với độ đo CID ..................48
Bảng 5.5 Kết quả thực nghiệm thu giảm tập huấn luyện với độ đo Weighted Slope
...................................................................................................................................49
Bảng 5.6 Kết quả thực nghiệm của các bộ dữ liệu với độ đo DTW (phần 1) ...........51
Bảng 5.7 Kết quả thực nghiệm của các bộ dữ liệu với độ đo DTW (phần 2) ...........52
Bảng 5.8 Kết quả thực nghiệm của các bộ dữ liệu với độ đo Euclid (phần 1) .........53
Bảng 5.9 Kết quả thực nghiệm của các bộ dữ liệu với độ đo Euclid (phần 2) .........53
Bảng 5.10 Kết quả thực nghiệm của các bộ dữ liệu với độ đo CID (phần 1) ...........54
Bảng 5.11 Kết quả thực nghiệm của các bộ dữ liệu với độ đo CID (phần 2) ...........55
Bảng 5.12 Kết quả thực nghiệm của các bộ dữ liệu với độ đo WS (phần 1) ............56
Bảng 5.13 Kết quả thực nghiệm của các bộ dữ liệu với độ đo WS (phần 2) ............57
Bảng 5.14 Độ chính xác phân lớp trên 15 bộ dữ liệu của các độ đo khoảng cách
khác nhau...................................................................................................................58
Bảng 5.15 Thời gian thực thi phân lớp của các độ đo khoảng cách khác nhau ........59

xi


BẢNG THUẬT NGỮ ANH - VIỆT VÀ TỪ VIẾT TẮT
Thuật ngữ tiếng Anh

Thuật ngữ tiếng Việt

Big Data

Dữ liệu lớn

Accuracy


Độ chính xác

Acc

Adaptive Warping Window

Adaptive warping window

AWARD

Association Rules Mining

Khai phá luật kết hợp

Bayesian Classifier

Phân lớp Bayes

Cache

Bộ nhớ đệm

Categorical Label

Nhãn xác định

Classification

Phân lớp


Clustering

Gom cụm

Complex Invariance

Bất biến phức tạp

Complex Invariance Distance

Độ đo bất biến phức tạp

Data Mining

Khai phá dữ liệu

Data Normalization

Chuẩn hóa dữ liệu

Data Sample

Mẫu dữ liệu

Decision Tree Classification

Phân lớp bằng cây quyết định

Discrete Fourier Transform


Discrete Fourier Transform

Discrete Value

Trị rời rạc

Distance measure

Độ đo khoảng cách

Dynamic Programming

Quy hoạch động

Dynamic Time Warping

Xoắn thời gian động

DTW

Early Abandon

Từ bỏ sớm

EA

A2

Viết tắt


CID

DFT


Euclidean Distance

Khoảng cách Euclid

Indexing

Lập chỉ mục

Information Retrieval

Truy hồi thông tin

Itakura Paralelogram

Hình bình hành Itakura

K-Nearest Neighbor

k-láng giềng gần nhất

Learning

Học / quá trình học


Lookup Table

bảng tra cứu

Motif Detection

Phát hiện mơ típ

Moving Average

Trung bình di chuyển

Multi-Variate Time Series

Chuỗi thời gian đa biến

Novelty Detection

Phát hiện bất thƣờng

Parameters

Thông số đầu vào

Piecewise Aggregate Approximation

Xấp xỉ gộp từng đoạn

Predicting / Forcasting


Dự báo

Pruning Power

Giảm thiểu tính tốn

Query By Content

Truy vấn dựa trên nội dung

Rough Set Approach

Tiếp cận tập dữ liệu thơ

Scale / Scaling

Co dãn biên độ

Shifting

Tịnh tiến

Similarity Search

Tìm kiếm tƣơng tự

Singular Value Decomposition

Phân rã trị kì dị


Space

Khơng gian lƣu trữ

Strip

Phân đoạn

Support Vector Machine

Máy vector hỗ trợ
A3

ED

k-NN

PAA

SVD


Testing Set

Tập kiểm tra / tập thử

Threshold / Thresholding

Ngƣỡng / Đặt ngƣỡng


Time

Thời gian / thời gian thực thi

Time Series Data

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

Time Warping

Xoắn trục thời gian

Time-Warped Queries

Truy vấn xoắn thời gian động

Training Set

Tập huấn luyện

Uniform

Đồng nhất

Uni-Variate Time Series

Chuỗi thời gian đơn biến

Warping Matrix


Ma trận xoắn

Warping Path

Đƣờng xoắn

Warping Path Constraint

Ràng buộc về đƣờng xoắn

Warping Window

Của sổ xoắn

Weighted Slope

Độ dốc tích lũy có trọng số

A4

WS


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 tốn về độ đo độ dốc tích lũy.
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. Tầm quan trọng của khai phá dữ liệu chuỗi thời gian
Ngày nay, với sự phát triển của khoa học máy tính, dữ liệu dùng để phục vụ
cuộc sống của con ngƣời dần đƣợc số hóa, lƣu trữ và xử lý trên máy tính hay mạng
Internet, giúp ta 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). Điều này thúc đẩy
ta phải tìm cách để khai phá dữ liệu (data mining) nhanh và hiệu quả không chỉ đối
với doanh nghiệp mà còn đối với cá nhân. Việc khai phá dữ liệu giờ đây 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 (2001)
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 đã và đang đƣợc sử dụng hàng ngày, mang tính ứng dụng cao và đóng vai trị vơ cùng quan trọng trong các công việc cần xử lý thông tin, tín hiệu
1


theo thời gian nhƣ các ngà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. Ví
dụ tiêu biểu gần đây nhất (3/2016), đứng trƣớc việc sinh vật biển chết hàng loạt ở
nhiều nƣớc, hay việc ngập lụt, xâm nhập mặn, hạn hán kéo dài, dữ liệu chuỗi thời
gian cũng đƣợc áp dụng để phân tích mơi trƣờng, phân tích và dự báo tình hình thời
tiết, nhằm chỉ ra nguyên nhân và hƣớng khắc phục.
Đề tài sẽ tập trung vào bài toán cải tiến phân lớp dữ liệu chuỗi thời gian và

độ đo độ dốc tích lũy có trọng số, lấy độ đo Euclid làm thƣớc đo chính. tuy nhiên
trƣớc khi đi sâu vào đặc điểm và chi tiết về bài toán phân lớp ta cần làm rõ một số
khái niệm liên quan.
1.1.2. Dữ liệu chuỗi thời gian
Dữ liệu chuỗi thời gian
mỗi mẫu là một bộ (
quan sát,

là một tập hợp nhiều mẫu dữ liệu (data samples),

) Trong đó

là thời điểm tiến hành quan sát,

là giá trị

là số lần đo đạt lấy mẫu. Ký hiệu chuỗi thời gian có dạng:
((

Chuỗi thời gian

)(

(

))

là một véc-tơ trong khơng gian
(


Trong đó giá trị

)

chiều có dạng:

)

đƣợc sử dụng rộng rãi nhất, với k=1 thì

đƣợc gọi là

chuỗi thời gian đơn biến (uni-variate time series). Ví dụ nhƣ giá chứng khốn, tín
hiệu điện tâm đồ, số lƣợng sinh viên tốt nghiệp qua các năm, lƣợng mƣa, độ ẩm...
Hình 1.1 minh họa dữ liệu chuỗi thời gian về tình hình tài chính của cơng ty
Amazon từ năm 2012 đến nay.
Nếu

thì

đƣợc gọi là chuỗi thời gian đa biến (multi-variate time

series), đƣợc dùng để mơ hình hóa và giải thích sự tƣơng tác và liên quan lẫn nhau
của một nhóm các dữ liệu chuỗi thời gian, ví dụ tiêu biểu nhƣ dữ liệu về tiêu dùng
và thu nhập; giá cổ phiếu và cổ tức; lãi suất, tăng trƣởng và lạm phát.

2


Nếu thời điểm xác định các giá trị


là cách đều nhau thì chuỗi thời

trong

đƣợc gọi là đồng nhất (uniform). Khi đó, ta có thể khơng quan tâm đến .

gian

Trong luận văn này, 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 (

,

cách đều nhau).
(

)

Hình 1.1. Tình hình tài chính cơng ty Amazon1 từ năm 2012 đến nay
Do tính đặc thù của dữ liệu chuỗi thời gian là biến động và có thể xảy ra sai
sót của công cụ đo, đối với đề tài này, giả sử khơng có trƣờng hợp dữ liệu sai hay
dữ liệu bất thƣờng. Ngoài ra đề tài chỉ tập trung vào việc giải quyết vấn đề cải tiến
quá trình sàng lọc tập huấn luyện và so sánh hiệu quả giữa độ đo xoắn thời gian
động và độ đo độ dốc tích lũy có trọng số, khơng đề cập đến các vấn đề và cách giải
quyết khác mà phƣơng pháp phân tích dữ liệu chuỗi thời gian đang gặp phải, cũng

nhƣ các phƣơng pháp phân tích dữ liệu khác nhƣ dựa vào độ đo khoảng cách
Euclid.
Về mặt dữ liệu đề tài giả định dữ liệu chuỗi thời gian trong các bộ dữ liệu
xem xét có độ dài bằng nhau và khơng có dữ liệu lỗi hay dữ liệu bất thƣờng.
1.2. MỘT SỐ KHÁI NIỆM LIÊN QUAN DỮ LIỆU CHUỖI THỜI GIAN
Khái niệm chính sử dụng trong đề tài :
 Tập huấn luyện (training set)
1

Nguồn: từ khóa: Amazon

3


Là tập các dữ liệu đã đƣợc phân lớp để phục vụ cho việc xây dựng mơ hình dự
đốn nhãn.
 Phân lớp (Classification)
Cho trƣớc một chuỗi thời gian Q chƣa gán nhãn (unlabeled) và M lớp, mỗi
lớp chứa k 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 Q vào một trong số M lớp đó.
 Độ đo khoảng cách (Distance measure)
Là phƣơng pháp tính tốn khoảng cách giữa 2 chuỗi thời gian Q và C. Hai
chuỗi thời gian đƣợc xem là tƣơng tự nhau khi khoảng cách giữa chúng tiến về 0.
Chi tiết về các độ đo khoảng cách sử dụng trong đề tài sẽ đƣợc trình bày ở các
chƣơng sau.
Một số khái niệm khác liên quan :
 Gom cụm (clustering)
Gom cụm là phân hoạch dữ liệu chuỗi thời gian thành các nhóm sao cho các
thành phần trong cụm là tƣơng tự nhau còn các thành phần khác cụm là rất khác

nhau.
 Dự báo (predicting/forcasting)
Cho trƣớc một chuỗi thời gian



của chuỗi thời gian liên tiếp từ thời điểm

điểm dữ liệu. Bài toán sẽ dự báo giá trị
đến

.

 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 tố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.

4


Ngồi các bài tố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)…
Tuy nhiên đề tài này sẽ không đi sâu vào các bài tốn này mà tập trung chính
vào việc cải tiến cơng tác phân lớp bằng việc sàng lọc tập huấn luyện và so sánh
thời gian thực thi cũng nhƣ độ chính xác trƣớc và sau khi áp dụng sàng lọc tập huấn
luyện.

NGHĨA CỦA ĐỀ TÀI

1.3.

-

h

kho h

Việc lựa chọn độ đo khoảng cách dùng trong giải thuật phân lớp k-láng giềng
gần nhất có ảnh hƣởng đáng kể đến độ chính xác và thời gian thực thi của
phƣơng pháp này.

-

Độ đo xoắn thời gian động (Dynamic Time Warping - DTW) tỏ ra khá hiệu quả
nhƣng phức tạp và thời gian tính tốn lâu, hơn nữa độ đo gần nhƣ đạt đến giới
hạn về mặt hiệu suất, không thể cải tiến thêm đƣợc nữa. Việc cải tiến gián tiếp
thông qua sàng lọc tập huấn luyện có thể áp dụng khơng chỉ với độ đo xoắn
thời gian động, mà cịn có thể áp dụng đối với các độ đo khác.

-

Độ đo độ dốc tích lũy có trọng số (weighted slope distance) là một độ đo khác,
độc lập với độ đo xoắn thời gian động. Thông qua độ đo này ta có thể tìm đƣợc
một độ đo tiết kiệm hơn, sử dụng linh hoạt tùy yêu cầu của ngƣời sử dụng để
thay thế độ đo xoắn thời gian động trong một số trƣờng hợp.

-


Ngoài ra độ đo Euclid (Euclid Distance - ED), độ đo phức tạp bất biến
(Complex Invariance Distance - CID) cũng đƣợc đƣa vào làm nền tảng nhằm
so sánh hiệu suất với các độ đo trên. Lý do là độ đo Euclid và độ đo phức tạp
bất biến có cách tính đơn giản, dễ dàng, dễ thực hiện và khá thông dụng.


-

h

thự t

Thông qua thực nghiệm, tơi sẽ đƣa ra kết luận về tính chính xác của việc phân
lớp trƣớc và sau khi thu giảm tập huấn luyện, cũng nhƣ so sánh độ chính xác
phân lớp thay đổi theo tỉ lệ phần trăm số thể hiện đƣợc giữ lại trong tập huấn

5


luyện, từ đó làm cơ sở hỗ trợ cho việc lựa chọn ngƣỡng phù hợp tùy theo các bộ
dữ liệu và nhu cầu của ngƣời dùng.
-

Cũng thông qua thực nghiệm, tơi sẽ so sánh tính hiệu quả của các độ đo khoảng
cách qua nhiều bộ dữ liệu khác nhau, từ đó rút ra các kết luận liên quan làm cơ
sở cho ngƣời dùng sử dụng các độ đo khoảng cách một cách linh hoạt tùy tình
huống và lĩnh vực cụ thể.

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

Mục tiêu chính của đề tài là tìm hiểu phƣơng pháp cải tiến việc phân lớp dữ
liệu chuỗi thời gian, trong đó sẽ tập trung chính yếu vào q trình sàng lọc tập huấn
luyện trong khâu phân lớp dữ liệu. Ngoài ra đề tài cũng mở rộng tìm hiểu một độ đo
khoảng cách mới với cách tính tốn đơn giản hơn: độ đo độ dốc tích lũy có trọng số.
Các cơng việc đƣợc thực hiện trong đề tài gồm có :
 Nghiên cứu độ đo xoắn thời gian động (Dynamic Time Warping - DTW) và cách
thực hiện tính tốn với độ đo xoắn thời gian động.
 Nghiên cứu về phƣơng pháp cải thiện tập huấn luyện để đƣa ra tập huấn luyện
gọn nhẹ, làm giảm thời gian tính tốn và áp dụng vào độ đo xoắn thời gian động.
 Nghiên cứu về độ đo độ dốc tích lũy có trọng số (Weighted Slope - WS) và so
sánh hiệu suất với độ đo xoắn thời gian động DTW nhằm tìm ra độ đo thay thế
DTW với độ phức tạp và thời gian tính toán tốt hơn.
 Trong trƣờng hợp độ đo độ dốc tích lũy có trọng số có hiệu quả khơng mong đợi,
tìm kiếm một độ đo khác và so sánh hiệu suất với DTW.
 Hiện thực chƣơng trình phần mềm để so sánh hiệu suất giữa các độ đo khoảng
cách trong bài toán phân lớp dữ liệu chuỗi thời gian.
 Báo cáo kết quả đạt đƣợc thông qua thực nghiệm với nhiều bộ dữ liệu khác nhau.
1.5. CÁC KẾT QUẢ ĐẠT ĐƢỢC
-

Về việc thu giảm tập huấn luyện, qua thực nghiệm với các độ đo khoảng cách
khác nhau và nhiều bộ dữ liệu khác nhau, tôi nhận thấy rằng việc thu giảm tập
huấn luyện thực sự hiệu quả và cải thiện tốc độ tính tốn, đặc biệt là đối với các
6


độ đo khoảng cách có độ phức tạp cao nhƣ độ đo xoắn thời gian động, tuy nhiên
việc cải tiến không thực sự cần thiết với các độ đo khoảng cách có cách tính đơn
giản nhƣ Euclid. Trong một số trƣờng hợp, việc thu giảm tập huấn luyện làm
tăng độ chính xác lên rất nhiều vì đã loại đƣợc các phần tử gây nhầm lẫn trong

quá trình phân lớp.
-

Về độ đo độ dốc tích lũy có trọng số, độ đo này mang tính mềm dẻo và có thể co
giãn để so sánh các chuỗi thời gian có độ dài ngắn khác nhau. Tuy nhiên thông
qua thực nghiệm, độ đo này khơng mang kết quả nhƣ mong đợi khi độ chính xác
của quá trình phân lớp khá thấp so với các độ đo khác nhƣ Euclid, DTW, CID.

-

Bất ngờ nhất là độ đo bất biến phức tạp (CID) lại tỏ ra khá hiệu quả trong việc
phân lớp những chuỗi thời gian có độ dài bằng nhau. Cùng với thời gian thực thi
khá nhanh và độ chính xác khá cao, độ đo khoảng cách CID là độ đo đầy tiềm
năng với độ chính xác tƣơng đƣơng độ đo DTW mà thời gian thực thi nhanh hơn
rất nhiều so với độ đo DTW (khi so sánh trên những chuỗi thời gian bằng nhau).

1.6. 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
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, 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à
bố cục 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 các độ đo khoảng cách liên quan và một số
cơng trình nghiên cứu liên quan đến đề tài.
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ƣ: thuật tốn k-láng giềng gần nhất, cách tính của độ đo xoắn thời gian động,
giải thuật xếp hạng Naive Rank, hệ số tùy chỉnh độ bất biến phức tạp.
CHƢƠNG 4 : PHƢƠNG PHÁP TIẾP CẬN

7


Chƣơng này giới thiệu hƣớng tiếp cận của tôi để thực hiện đề tài.
CHƢƠNG 5: THỰC NGHIỆM
Chƣơng này tiến hành thực nghiệm trên nhiều bộ dữ liệu khác nhau cho quá
trình thu giảm tập huấn luyện và so sánh hiệu suất các độ đo khoảng cách dựa trên
thời gian thực thi và độ chính xác. Một số kết luận và đề xuất của tôi sẽ đƣợc nêu
lên dựa trên các kết quả thực nghiệm.
CHƢƠNG 6: TỔNG KẾT
Chƣơng này trình bày tổng lƣợc lại toàn bộ nội dung quan trọng của luận
văn, các đóng góp chính của đề tài, và hƣớng phát triển.
PHẦN TÀI LIỆU THAM KHẢO
PHẦN PHỤ LỤC

8


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ƣ các độ đo
khoảng cách đƣợc sử dụng trong đề tài và các cơng trình nghiên cứu liên quan.
2.1

CÁC ĐỘ ĐO KHOẢNG CÁCH LIÊN QUAN

2.1.1. Độ đo Minkowski
Khoảng cách Minkowski đƣợc định nghĩa nhƣ sau:
Sim(X, Y) = √∑

(


) trong đó p = 1 …

Trong đó Sim(X,Y) là độ đo tƣơng tự đƣợc định nghĩa trên hai chuỗi có chiều
dài bằng nhau X, Y. Trong nghiên cứu, p thƣờng nhận các giá trị 1 (khoảng cách
(khoảng cách tối đa). Giá trị p = 2 đƣợc

Manhattan), 2 (khoảng cách Euclid),

dùng phổ biến nhất. Trong đề tài này ta chỉ sử dụng p = 2 (Độ đo Euclid).
Ƣu điểm

 Đơn giản, dễ tính tốn, độ
phức tạp O(n).

Khuyết điểm

 Thiếu mềm dẻo, nhạy cảm với nhiễu.
 Khơng thích nghi đƣợc với những phép
biến đổi nhƣ tịnh tiến (shifting), co giãn
biên độ (scaling) hay xoắn trục thời gian
(time warping).

Để khắc phục những nhƣợc điểm trên, nhiều nhà nghiên cứu đã đƣa ra những
phƣơng pháp sau đây:
 Das, G. và các cộng sự (1997) [22] đề nghị nên chuẩn hóa (normalization)
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.
 Rafiei, D. và Mendelzon, A. O. (1998) [23] đề 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
9


 Chan, K. và Fu, A. W. (1999) [24] đề nghị cách tính độ tƣơng tự có sự thay
đổi dựa trên khoảng cách Euclid.
2.1.2. Độ đo xoắn thời gian động (Dynamic Time Warping – DTW)
Độ đo này đƣợc đề xuất bởi Bernt và Clifford, 1994 [1]. Phƣơng pháp này
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ứ i của chuỗi
thứ nhất so với điểm thứ i 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.
Ƣu điểm

Khuyết điểm

 Nhận dạng những mẫu có hình dạng

 Thời gian tính tốn lâu, độ

giống nhau nhƣng chiều dài hình dạng

phức tạp là O(wn), trong đó

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

w là chiều rộng cửa sổ xoắn,

 Do tính mềm dẻo nên DTW hiệu quả


n là chiều dài chuỗi.

hơn rất nhiều so với độ đo Euclid. Đặc
biệt trong các bài toán phân lớp
(classfication), gom cụm (clustering).

Để khắc phục những nhƣợc điểm trên, nhiều nhà nghiên cứu đã đƣa ra những
phƣơng pháp sau đây:
 Sakoe, H. và Chiba, S. (1978) [20] đã đƣa ra ràng buộc gọi là dải SakoeChiaba. Itakura, F. (1975) [21] đã đƣa ra ràng buộc hình bình hành Itakura,
đây là những ràng buộc đƣờng xoắn khi tính khoảng cách xoắn thời gian
động.
 Keogh, E. và các cộng sự (2002) [2] đề 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) [19] đề 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
10


×