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

Time series classification using SAX transform and vector space model

65 13 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 65
Dung lượng 1,65 MB

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

Nội dung

Trong đề tài này, chúng tôi khảo sát một hướng tiếp cận cho bài toán bằng việc phân lớp dữ liệu chuỗi thời gian sử dụng phương pháp xấp xỉ gộp ký hiệu hóa Symbolic Aggregate approXimatio

Trang 1

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

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

Chuyên 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 8 năm 2020

Trang 2

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

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

Chuyên 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 8 năm 2020

Trang 3

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: PGS TS Dương Tuấn Anh

Cán bộ chấm nhận xét 1: TS Phạm Văn Chung

Cán bộ chấm nhận xét 2: PGS.TS Nguyễn Thanh Hiên

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 24 tháng 8 năm 2020

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 Phạm Văn Chung

3 Phản biện 2: PGS.TS Nguyễn Thanh Hiên

4 Ủy viên: PGS.TS Dương Tuấn Anh

5 Thư ký: TS Nguyễn Tiến Thịnh

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ó)

KH & KT MÁY TÍNH

Trang 4

LỜI CẢM ƠN

Để có thể hoàn thành đề tài luận văn thạc sĩ một cách hoàn chỉnh, bên cạnh

sự nỗ lực cố gắng của bản thân còn có sự hướng dẫn nhiệt tình của quý Thầy Cô, cũng như sự động viên ủng hộ của gia đình và bạn bè trong suốt thời gian học tập nghiên cứu và thực hiện luận văn thạc sĩ

Xin chân thành bày tỏ lòng biết ơn đế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ể hoàn thành luận văn thạc sĩ

Tôi xin cảm ơn quí 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 quí báu trong suốt quá trình học tập

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

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 quá trình thực hiện luận văn

Trang 5

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 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 (classification) đóng vai trò quan trọng

vì đó là quá trình trích xuất các thuộc tính thống kê có ý nghĩa, qua đó ta có thể dự đoá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, chúng tôi khảo sát một hướng tiếp cận cho bài toán bằng

việc phân lớp dữ liệu chuỗi thời gian sử dụng phương pháp xấp xỉ gộp ký hiệu hóa (Symbolic Aggregate approXimation-SAX) kết hợp với mô hình không gian vector

(Vector Space Model-VSM)

Cơ sở của phương pháp này dựa trên việc chuyển chuỗi thời gian thành

những từ (word) sau khi đã giảm số chiều của chuỗi dữ liệu ban đầu và sử dụng mô

hình không gian vector để phân lớp Làm như vậy, ta có thể chuyển dữ liệu chuỗi thời gian ban đầu thành một tập dữ liệu mới gọn hơn, qua đó giảm đáng kể thời gian phân lớp nhưng vẫn đảm bảo được những thông tin cần thiết

Đề tài sẽ từng bước áp dụng việc phân lớp chuỗi dữ liệu thời gian dựa vào phép biến đổi SAX và mô hình không gian vector Đồng thời cũng áp dụng việc

phân lớp với một số phương pháp khác như láng giềng gần nhất sử dụng độ đo xoắn thời gian động (1 Nearest Neighbor Dynamic Time Warping -1NN-DTW), túi đựng mẫu (Bag of patterns) Cuối cùng rút ra kết luận về tính hiệu quả của việc

phân lớp chuỗi dữ liệu thời gian dựa vào phép biến đổi SAX và mô hình không gian vector với giải thuật 1NN-DTW và giải thuật Bag of patterns

Trang 6

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 helping human predictevents 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 for the problem of classifying time series data using the Symbolic Aggregate approXimation (SAX) and the Vector space model (VSM)

SAX-VSM is based on two well-known techniques The first technique is Symbolic Aggregate approXimation to transforms real-valued time series into combined collections of SAX words after reduction of the time series

dimensionality The second technique is the Vector Space Model based on tf∗idf

weighting scheme to classify By doing this, we can convert the original time series data into a more compact new dataset, thereby significantly reducing the time to classify but still ensuring the necessary information

In this paper, we will gradually apply the classification of time series based on Symbolic approximation and vector spatial models At the same time, the classification with some other methods such as one-nearest neighbor using dynamic time warping (1NN-DTW), Bag of patterns (BOP) Finally, draw conclusions about the effectiveness of time series classification based on Symbolic Aggregate approXimation and Vector space models in comparison with the 1NN-DTW algorithm and the Bag of patterns algorithm

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 03 tháng 08 năm 2020

Lương Phụng Tiên

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 ix

DANH MỤC BẢNG BIỂU xi

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 4

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

1.5 CÁC KẾT QUẢ ĐẠT ĐƯỢC 5

1.6 BỐ CỤC LUẬN VĂN 6

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VÀ CÁC CÔNG TRÌNH LIÊN QUAN 7

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

2.1.1 Độ đo khoảng cách Euclid (ED) 7

2.1.2 Độ đo xoắn thời gian động (Dynamic Time Warping – DTW) 7

2.1.3 Kỹ thuật ràng buộc toàn cục 11

2.2 TÌM KIẾM TƯƠNG TỰ TRÊN DỮ LIỆU CHUỖI THỜI GIAN 13

2.3 CHUẨN HÓA DỮ LIỆU (Z-SCORE NORMALIZATION) 14

2.4 RỜI RẠC HÓA CHUỖI THỜI GIAN 15

2.4.1 Thu giảm số chiều bằng phương pháp xấp xỉ gộp từng đoạn (Piecewise Aggregate Approximation - PAA) 15

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

2.5 PHÂN LỚP DỮ LIỆU THƯỜNG 18

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

2.6.1 Phân lớp chuỗi thời gian bằng giải thuật láng giềng gần nhất (1 Nearest

Trang 9

2.6.2 Phân lớp chuỗi thời gian bằng phương pháp Bag of patternss (BOP): 23

CHƯƠNG 3 PHƯƠNG PHÁP GIẢI QUYẾT 27

3.1 PHƯƠNG PHÁP ĐỀ NGHỊ 27

3.1.1 Phân lớp chuỗi thời gian bằng phương pháp SAX-VSM: 27

3.1.2 Hệ thống đề nghị 30

3.2 MỘT SỐ QUY ƯỚC 31

CHƯƠNG 4 HIỆN THỰC VÀ THỰC NGHIỆM 32

4.1 MÔI TRƯỜNG THỰC NGHIỆM 32

4.2 PHƯƠNG PHÁP THỰC NGHIỆM 32

4.3 DỮ LIỆU THỰC NGHIỆM 32

4.3.1 Bộ dữ liệu Gun Point 34

4.3.2 Bộ dữ liệu CBF 35

4.3.3 Bộ dữ liệu Trace 36

4.3.4 Bộ dữ liệu Fish 37

4.3.5 Bộ dữ liệu OSU Leaf 38

4.4 XÁC ĐỊNH THÔNG SỐ CHỌN CHO TẬP DỮ LIỆU 39

4.5 THỰC NGHIỆM SO SÁNH TÍNH CHÍNH XÁC GIỮA CÁC PHƯƠNG PHÁP PHÂN LỚP 41

4.6 THỜI GIAN THỰC THI GIỮA CÁC PHƯƠNG PHÁP PHÂN LỚP 43

CHƯƠNG 5 TỔNG KẾT 45

5.1 NHỮNG KẾT LUẬN CỦA LUẬN VĂN 45

5.2 NHỮNG KẾT QUẢ ĐẠT ĐƯỢC 45

5.3 HƯỚNG PHÁT TRIỂN 46

TÀI LIỆU THAM KHẢO 47 BẢNG TỪ VIẾT TẮT A1 BẢNG THUẬT NGỮ ANH - VIỆT A2

Trang 10

DANH MỤC HÌNH

Hình 1.1 Kết quả bán rượu đỏ ở Australia từ tháng 1-1980 đến tháng 10-1991 3

Hình 2.1 Cách tính khoảng cách độ đo xoắn thời gian động 8

Hình 2.2 Hai chuỗi thời gian Q và C 10

Hình 2.3 Ma trận biểu diễn cách tính DTW cho hai chuỗi thời gian 10

Hình 2.4 Ràng buộc dải Sakoe-Chiba 12

Hình 2.5 Ràng buộc hình bình hành Itakura 13

Hình 2.6 Chuỗi thời gian T, có độ dài 16 và xấp xỉ PAA của T, với 4 đoạn 16

Hình 2.7 Bảng tra cứu có chứa các điểm dừng có giá trị từ 3 đến 10 17

Hình 2.8 Một chuỗi dữ liệu thời gian được biến đổi PAA rồi mã hóa thành các ký hiệu SAX Chuỗi thời gian được mã hóa thành baabccbc 18

Hình 2.9 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 2.10 Quá trình phân lớp dữ liệu – Ước lượng độ chính xác 20

Hình 2.11 Quá trình phân lớp dữ liệu – Phân lớp dữ liệu mới 21

Hình 2.12 Một lân cận gần nhất của mẫu thử X 23

Hình 2.13 Một chuỗi thời gian có giá trị thực sự được phân tích thành từ SAX: GTTGACCA 24

Hình 2.14 Một ví dụ trực quan về đại diện túi mẫu cho chuỗi thời gian Mỗi hàng biểu thị một từ SAX và mỗi cột biểu thị một tập dữ liệu chuỗi thời gian 25

Hình 3.1: Tổng quan về thuật toán SAX-VSM: lúc đầu, chuỗi thời gian được gắn nhãn được chuyển đổi thành các túi từ bằng SAX; Thứ hai, thống kê tf ∗ idf được tính toán dẫn đến một vectơ trọng lượng duy nhất cho mỗi lớp đào tạo Dành cho phân loại, một chuỗi thời gian không nhãn được chuyển đổi thành tần số hạn vectơ và gán nhãn của vectơ trọng lượng mang lại cosin tối đa giá trị tương tự 29

Hình 3.2 Hệ thống đề nghị 30

Trang 11

Hình 4.1 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 34 Hình 4.2 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) 35 Hình 4.3 Ba đường cong biểu diễn ba lớp hàm Cylinder, Bell và Funnel 36 Hình 4.4 Bốn nhóm đường cong biểu thị cho bốn lớp trong bộ dữ liệu Trace 37 Hình 4.5 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 38 Hình 4.6 Phía trên là hình chụp 3 loại lá: hình dạng hơi thùy và đầu lá cấp tính của Acer Circinatum, thô rìa lá răng cưa của Acer Glabrum và cấu trúc lá thùy nhọn của Quercus Garryana 39 Hình 4.7 Biểu đồ thể hiện độ chính xác của ba phương pháp phân lớp 1NN-DTW, Bag of patterns và SAX-VSM trên 19 bộ dữ liệu 42 Hình 4.8 Biểu đồ thể hiện thời gian thực thi giữa ba phương pháp 1NN-DTW, Bag

of patterns và SAX-VSM a) phương pháp 1NN-DTW và Bag of patterns b)

phương pháp Bag of patterns và SAX-VSM c) 1NN-DTW và SAX-VSM 44

Trang 12

DANH MỤC BẢNG BIỂU

Bảng 4.1 Các bộ dữ liệu thực nghiệm 33 Bảng 4.2 Bảng thông số cho tập dữ liệu khi sử dụng phương pháp SAX-VSM 39 Bảng 4.3 Bảng thông số cho tập dữ liệu khi sử dụng phương pháp Bag of patterns 40 Bảng 4.4 Độ chính xác phân lớp của các phương pháp khi phân lớp trên 19 bộ dữ liệu 41 Bảng 4.5 Thời gian thực thi giữa các phương pháp phân lớp trên 19 bộ dữ liệu 42

Trang 13

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

Phần đầu của chương này đ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

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

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 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ý,… Việc hiểu và rút trích đượ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ụ đứng trước 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

Trang 14

Đề tài sẽ tập trung vào bài toán phân lớp dữ liệu chuỗi thời gian 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 𝑋 là một tập hợp nhiều mẫu dữ liệu (data samples), mỗi mẫu là một bộ (𝑇, 𝑉) Trong đó 𝑇 là thời điểm tiến hành quan sát, 𝑉 là giá trị quan sát, 𝑛 là số lần đo đạt lấy mẫu Ký hiệu chuỗi thời gian có dạng:

𝑋 = ((𝑇1, 𝑉1), (𝑇2, 𝑉2), … , (𝑇𝑛, 𝑉𝑛)) Chuỗi thời gian 𝑋𝑖 là một véc-tơ trong không gian 𝑘 chiều có dạng:

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

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 đó, ta có thể không quan tâm đến 𝑇

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, … , 𝑥𝑛)

Trang 15

Hình 1.1 Kết quả bán rượu đỏ ở Australia từ tháng 1-1980

đến tháng 10-1991 [13]

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)

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ự đoá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 toá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 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

Trang 16

• Dự báo (predicting/forcasting)

Cho trước một chuỗi thời gian 𝑄 có 𝑛 điểm dữ liệu Bài toán sẽ dự báo giá trị của chuỗi thời gian liên tiếp từ thời điểm 𝑛 + 1 đế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 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)… Tuy nhiên đề tài này chỉ tập trung vào công

tác phân lớp

1.3 Ý NGHĨA CỦA ĐỀ TÀI

• Ý nghĩa khoa học

Phương pháp SAX-VSM cho chúng ta một cái nhìn triển vọng trong bài toán phân lớp dữ liệu chuỗi thời gian Trong khi các giải thuật phân lớp cổ điển gặp vấn đề về dữ liệu nhiễu hoặc chi phí cao như giải thuật 1-NN rất nhạy cảm với

dữ liệu nhiễu và nếu chuỗi thời gian dài thì chi phí của 1-NN sẽ rất cao thì

SAX-VSM lại có độ phức tạp là tuyến tính, cũng giống phương pháp túi đựng mẫu (Bag of patterns - BOP) là chuyển đổi tất cả các chuỗi thời gian huấn

luyện thành túi từ và sử dụng mô hình không gian vector để phân lớp Tuy

nhiên, thay vì BOP xây dựng n túi cho chuỗi thời gian tập huấn luyện,

SAX-SVM xây dựng một túi từ duy nhất cho các lớp, cung cấp một cách hiệu quả

một vectơ trọng lượng N (N là số lượng lớp) và thời gian phân loại nhanh

• Ý nghĩa thực tiễn

Thông qua thực nghiệm, chúng tôi sẽ đưa ra kết luận về tính chính xác của việc phân lớp khi sử dụng phương pháp SAX-VSM, cũng như so sánh độ chính xác

phân lớp với hai giải thuật 1NN-DTW và túi đựng mẫu (Bag of patterns)

Trang 17

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ân lớp dữ liệu chuỗi thời gian sử

dụng phương pháp xấp xỉ gộp ký hiệu hóa (SymbolicAggregate SAX) kết hợp với mô hình không gian vector (Vector Space Model-VSM)

approXimation-Các công việc được thực hiện trong đề tài gồm có :

• Nghiên cứu thu giảm số chiều bằng phương pháp xấp xỉ gộp từng đoạn (Piecewise Aggregate Approximation - PAA) và cách thực hiện tính toán với chuỗi dữ liệu

• Nghiên cứu về phương pháp xấp xỉ gộp ký hiệu hóa (Symbolic Aggregate

approXimation - SAX) biến đổi chuỗi thời gian thành một chuỗi các ký tự

• Nghiên cứu về việc sử dụng mô hình không gian vector (Vector Space

Model-VSM) để phân lớp

• Hiện thực chương trình phần mềm và thử nghiệm trên các bộ dữ liệu mẫu để so sánh hiệu suất giữa phương pháp phân lớp SAX-VSM với phương pháp 1NN-DTW và Bag of patterns

• 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

- Giảm số chiều cho chuỗi thời gian, qua thực nghiệm với các giải thuật phân lớp khác nhau và nhiều bộ dữ liệu khác nhau, chúng tôi nhận thấy rằng việc thu giảm số chiều thực sự hiệu quả và cải thiện tốc độ tính

- Về giải thuật phân lớp 1NN-DTW kết quả mang lại với độ chính xác khá cao tuy nhiên đối với chuỗi thời gian dài thời gian thực thi thì lại mất nhiều thời gian hơn so với Bag of patterns và SAX-VSM

- Bag of patterns, SAX-VSM qua thực nghiệm mang lại kết quả khá tốt tuy nhiên

so với việc tạo ra n túi như giải thuật Bag of patterns thì giải thuật SAX-VSM gộp các lớp chung vào một túi mang đến thời gian thực thi tốt hơn

Trang 18

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à nhiệm vụ 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Ơ SỞ LÝ THUYẾT VÀ CÁC CÔNG TRÌNH LIÊN QUAN

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 giảm số chiều sử dụng phương pháp xấp xỉ gộp từng đoạn (PAA), xấp

xỉ gộp ký hiệu hóa (SAX), mô hình không gian vector (VSM) và giới thiệu một số công trình nghiên cứu liên quan đến đề tài

CHƯƠNG 3 : PHƯƠNG PHÁP TIẾP CẬN

Chương này giới thiệu hướng tiếp cận của chúng tôi để thực hiện đề tài

CHƯƠNG 4: HIỆN THỰC VÀ 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 phân lớp và so sánh với phương pháp phân lớp khác 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 sẽ được nêu lên dựa trên các kết quả thực nghiệm

Trang 19

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VÀ 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 độ đo khoảng cách và phương pháp phân lớp

Khi phân lớp dữ liệu chuỗi thời gian, một trong những mối quan tâm cần được

nhắc đến là độ đo khoảng cách (distance measure) sao cho phù hợp với kiểu dữ liệu

chuỗi thời gian Hai độ đo phổ biến được xét đến trong báo cáo này là độ đo khoảng cách Euclid và độ đo xoắn thời gian động DTW

2.1.1 Độ đo khoảng cách Euclid (ED)

Độ đo khoảng cách Euclid được dùng để đo độ khác biệt giữa hai chuỗi thời gian Đây là độ đo khoảng cách đơn giản nhất và dễ tính toán nhất

Cho hai chuỗi thời gian C ={c 1 , c 2 , …, c n } và Q = {q 1 , q 2 , …,q n }, khoảng cách Euclid giữa hai chuỗi thời gian C và Q được tính bằng công thức sau:

Độ đo khoảng cách Euclid có ưu thế là đơn giản, dễ hiện thực và thời gian thực thi thấp Tuy nhiên độ đo Euclid có nhược điểm là nhạy cảm với nhiễu và kém tính linh hoạt vì độ đo này yêu cầu hai chuỗi thời gian có chiều dài bằng nhau

2.1.2 Độ đo xoắn thời gian động (Dynamic Time Warping – DTW)

Độ đo xoắn thời gian động (Dynamic Time Warping – DTW) được đề xuất bởi

Bernt và Clifford, 1994 [4] có đặc điểm chính là việc ánh xạ không tuyến tính khi

so sánh giữa hai chuỗi thời gian Công thức tính toán như sau:

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, … , 𝑐𝑗, … , 𝑐𝑚

Trang 20

Để 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) Đường xoắn W (warping path)

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ó:

Hình 2.1 Cách tính khoảng cách độ đo xoắn thời gian động [6]

(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)

Đườ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:

Trang 21

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

𝛾(𝑖 − 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à

(𝑚, 𝑛) Hình 2.1 minh họa cách tính khoảng cách của độ đo xoắn thời gian động

Để hạn chế số lượng đường xoắn (warping path) trong quá trình tìm tương

tự, đường xoắn W phải có đủ 3 yếu tố sau đây:

• Điều kiệ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

Giải thuật được thực hiện như sau:

Input: Q: array [1 … n], C: array [1 m], DTW: array [1 … n, 1 … m]

Trang 22

Sau đây sẽ là ví dụ cho việc tính khoảng cách DTW, giả sử ta có hai chuỗi thời gian như sau:

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

C = (3, 1, 2, 5, 7, 7, 1, 1, 2, 2) Hình 2.2 trình bày đường cong biểu diễn hai chuỗi thời gian Q và C

Hình 2.2 Hai chuỗi thời gian Q và C

Để tính khoảng cách DTW giữa hai chuỗi thời gian trên, ta xây dựng ma trận xoắn lưu khoảng cách tích lũy như hình 2.3 Mỗi ô trong ma trận này chứa khoảng cách tích lũy của từng cặp điểm tương ứng

Hình 2.3 Ma trận biểu diễn cách tính DTW cho hai chuỗi thời gian

Trang 23

Trong ma trận trên, giá trị của các ô được tính như sau:

tô đỏ Vậy khoảng cách DTW của hai chuỗi 𝑄 và 𝐶 là √10 ≈ 3.16

Ưu điểm: Độ đo DTW phù hợp với các dữ liệu chuỗi thời gian có hình dạng tương tự nhau nhưng độ dài thời gian khác nhau hoặc “lệch nhau” về mặt thời gian

Nhược điểm: Nhược điểm lớn nhất của khoảng cách DTW là độ phức tạp

tính toán lớn Với hai chuỗi Q và C có chiều dài lần lượt là m và n, để tính khoảng cách DTW của hai chuỗi này, ta phải xây dựng ma trận D có kích thước m × n và tính khoảng cách tích lũy tương ứng với hàm γ cho mọi ô trong ma trận đó Như vậy

độ phức tạp tính toán của giải thuật tính DTW sử dụng phương pháp quy hoạch

động là O(mn)

Việc tính độ đo xoắn thời gian động có chi phí lớn vì phải tìm đường xoắn đạt giá trị nhỏ nhất trong ma trận bằng phương pháp quy hoạch động Độ phức tạp

của giải thuật này là O(mn) Tuy nhiên, dựa trên ý tưởng cơ bản là giới hạn đường

xoắn bằng cách thêm vào các giới hạn cục bộ trên tập hợp các bước sẽ xem xét, đã

có hai ràng buộc về đường xoắn phổ biến là ràng buộc Sakoe-Chiba và ràng buộc hình bình hành Itakura

2.1.3 Kỹ thuật ràng buộc toàn cục

Bên cạnh những ràng buộc đối với đường xoắn thời gian động đã đề cập ở phần trước, để đảm bảo đường xoắn không đi chệch hướng quá xa so với đường chéo của ma trận, người ta đã đề ra thêm những ràng buộc mang ý nghĩa toàn cục

Ràng buộc này định nghĩa một tập con của ma trận xoắn (warping matrix) cho phép đường xoắn tiến hành di chuyển mở rộng gọi là cửa sổ xoắn (warping window)

Mục đích chính của ràng buộc toàn cục là tăng tốc độ tính toán DTW thông qua

Trang 24

việc giảm không gian tìm kiếm đường xoắn, đồng thời ngăn trường hợp một phần nhỏ của một chuỗi ánh xạ vào phần lớn tương ứng của một chuỗi khác

Trong các kỹ thuật ràng buộc toàn cục, phổ biến nhất là kỹ thuật ràng buộc dải Sakoe – Chiba và hình bình hành Itakura

• Ràng buộc dải Sakoe – Chiba: được đề xuất bởi hai Sakoe và Chiba (1978)[11], ràng buộc này được mô tả như sau:

Gọi đường xoắn tối ưu là tập các ô trong ma trận của hai chuỗi thời gian:

W = w1, w2,…, w k , …, w K , với max(n, m) ≤ K ≤ m + n – 1 Trong đó w k = (i, j) k Ràng buộc Sakoe-Chiba yêu cầu |i – j| ≤ r, trong

đó 𝑟 là một số nguyên dương cho trước được gọi là cửa sổ xoắn (Xem hình 2.4)

Hình 2.4 Ràng buộc dải Sakoe-Chiba

Ràng buộc hình bình hành Itakura (Itakura Paralelogram): được đề xuất bởi Itakura (1975) [8] Ràng buộc này cũng định nghĩa đường xoắn cũng bao gồm một tập các

ô trong ma trận của hai chuỗi thời gian:

W = w1, w2,…, w k , …, w K với max(n, m) ≤ K ≤ m + n – 1 Trong đó w k = (i, j) k Ràng buộc hình bình hành Itakura yêu cầu |i – j| ≤ r,

trong đó 𝑟 là một hàm biến thiên theo thời gian (Xem hình 2.5)

Trang 25

Hình 2.5 Ràng buộc hình bình hành Itakura 2.2 TÌM KIẾM TƯƠNG TỰ TRÊN DỮ LIỆU CHUỖI THỜI GIAN

Một chuỗi thời gian (time series) là chuỗi trị số thực, mỗi trị biểu diễn một

giá trị đo tại những thời điểm cách đều nhau Những tập dữ liệu chuỗi thời gian rất lớn xuất hiện trong nhiều lĩnh vực khác nhau như y khoa, kỹ thuật, kinh tế, tài

chính, v.v…Tìm kiếm tương tự (similarity search) là công tác căn bản nhất để khai

thác những cơ sở dữ liệu chuỗi thời gian

Theo bài báo [5], để thực hiện tìm kiếm tương tự trên dữ liệu chuỗi thời gian,

phương pháp lập chỉ mục (indexing) có khả năng hỗ trợ hiệu quả việc lấy và ghép

cặp dữ liệu chuỗi thời gian được yêu cầu Hầu hết các phương pháp lập chỉ mục

ngày nay cho dữ liệu đa chiều như R-tree và R* -tree lại giảm dần hiệu suất ở các

chiều lớn hơn (từ 8-10 chiều) và hoạt động như thuật toán quét tuần tự ở bộ dữ liệu lớn hơn 10 chiều Vì vậy, để sử dụng kỹ thuật lập chỉ mục dữ liệu đa chiều, điều cần thực hiện đầu tiên là giảm số chiều trên dữ liệu chuỗi thời gian, giúp cho các dữ liệu các chiều cao hơn ánh xạ về không gian chiều thấp hơn Sau đó, dùng một số biện pháp đo khoảng cách như Euclid để tính toán khoảng cách và suy ra sự giống nhau giữa hai bộ dữ liệu chuỗi thời gian

Hầu hết các phương pháp tiếp cận phát triển cho đến nay để thực hiện tìm kiếm tương tự trong dữ liệu chuỗi thời gian dựa trên việc giảm số chiều Giảm số chiều có thể được thực hiện bằng nhiều cách Một số phương pháp thường được sử

dụng để thực hiện việc giảm số chiều bao gồm Discrete Fourier Transform (DFT), Discrete Wavelet Transform (DWT) [12], Singular Value Decomposition (SVD)

Trang 26

Phương pháp thường được sử dụng nhất để giảm số chiều là dựa trên DFT DFT khá phù hợp cho dữ liệu tự nhiên theo dạng hình sin nhưng nó không thích hợp để tính tín hiệu bị gián đoạn Kế đến, phương pháp biến đổi Wavelet dạng Haar

là phương pháp phổ biến nhất được sử dụng để biến đổi các gợn sóng trong dữ liệu,

từ đó giảm kích thước của bộ dữ liệu Tuy nhiên về cơ bản phương pháp Haar hoạt động không được trơn tru lắm, do đó phương pháp Haar biến đổi xấp xỉ tất cả tín hiệu thông qua cấu trúc giống một cái thang Các hệ số cần được thêm vào khá nhiều, việc tìm kiếm các gợn sóng dẫn xuất liên tục trong dữ liệu vẫn còn là vấn đề đang được nghiên cứu

Kỹ thuật phân rã trị kì dị (Singular Value Decomposition – SVD) là một kỹ

thuật giảm số chiều dữ liệu Các thông số được sử dụng để tính toán vectơ cơ sở, vì vậy bất cứ khi nào các cơ sở dữ liệu được cập nhật, các vectơ cơ sở cần phải được tính toán lại Thời gian tính toán lại có thể trở nên không khả thi cho mục đích thực

tế đặc biệt là khi các cơ sở dữ liệu quá lớn

Trong khi đó, phương pháp xấp xỉ gộp từng đoạn (PAA) thực hiện giảm số

chiều bằng cách chia các trình tự thời gian thành các đoạn dài bằng nhau, và tính toán các giá trị trung bình của từng phân khúc và được sử dụng khá phổ biến vì sự đơn giản

2.3 CHUẨN HÓA DỮ LIỆU (Z-SCORE NORMALIZATION)

Phép chuẩn hóa dữ liệu Z-Score là quy trình đảm bảo rằng tất cả các phần tử của vectơ đầu vào được chuyển thành vectơ đầu ra có giá trị trung bình xấp xỉ 0 trong khi độ lệch chuẩn nằm trong phạm vi gần 1 Công thức biến đổi:

𝑥𝑖′ =𝑥𝑖 −𝜇

𝜎 , 𝑖 ∈ 𝑁 Trong đó:

𝑥𝑖′: phần tử thứ i sau khi chuẩn hóa

𝑥𝑖: phần tử thứ i của chuỗi dữ liệu ban đầu

𝜇: giá trị trung bình của chuỗi dữ liệu

𝜎: độ lệch chuẩn

Trang 27

* Giá trị trung bình : 𝜇 = 1

𝑛∑𝑛𝑖=1𝑥𝑖, n là chiều dài của chuỗi

Độ lệch chuẩn : 𝜎 = √(𝑛−1)1 ∑𝑛 (𝑥𝑖− 𝜇)2

𝑖=1

2.4 RỜI RẠC HÓA CHUỖI THỜI GIAN

Rời rạc hóa (discretization) chuỗi thời gian là quá trình biến đổi chuỗi thời gian thành một chuỗi các ký tự Phương pháp rời rạc hóa tiêu biểu là phương pháp xấp xỉ gộp ký hiệu hóa (Symbolic Aggregate approXimation - SAX) [10]

Phương pháp xấp xỉ gộp ký hiệu hóa (SAX) biểu diễn dữ liệu chuỗi thời gian

qua hai bước Trước hết, SAX sử dụng phương pháp xấp xỉ gộp từng đoạn

(Piecewise Aggregate Approximation - PAA ) để thu giảm số chiều dữ liệu ban đầu,

và sau đó các hệ số thu được từ PAA được chuyển thành các chuỗi chữ ký tự

2.4.1 Thu giảm số chiều bằng phương pháp xấp xỉ gộp từng đoạn (Piecewise Aggregate Approximation - PAA)

2.4.1.1 Thu giảm số chiều

Dữ liệu chuỗi thời gian thường rất lớn nên việc tìm kiếm trực tiếp trên dữ liệu chuỗi thời gian gốc thường không hiệu quả Để khắc phục vấn đề này, cách tiếp cận chung thường được sử dụng bao gồm các bước sau:

- Áp dụng một số phương pháp biến đổi xấp xỉ để thu giảm độ lớn của dữ liệu sao cho vẫn giữ được các đặt trưng của dữ liệu Các phương pháp biến đổi này

thường được gọi là phương pháp thu giảm số chiều (demensionality reduction)

- Thực hiện bài toán trên dữ liệu xấp xỉ, ta thu được tập kết quả xấp xỉ

- Dựa trên kết quả xấp xỉ này, thực hiện truy cập đĩa để thực hiện hậu kiểm trên dữ liệu gốc nhằm loại bỏ các chuỗi tìm sai trong tập kết quả xấp xỉ

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

Do khi xấp xỉ dữ liệu sẽ gây ra mất mát thông tin, nên khi thực hiện trên dữ

liệu xấp xỉ có thể tìm ra lỗi tìm sót (false dismissal) hoặc lỗi tìm sai (false alarm)

Để đảm bảo có kết quả chính xác, lỗi tìm sót không được phép xảy ra Mặt khác, lỗi tìm sai cũng nên thấp để giảm chi phí trong quá trình hậu kiểm

Trang 28

Lỗi tìm sót xảy ra khi một chuỗi S trong cơ sở dữ liệu tương tự với chuỗi cần tìm nhưng kết quả tìm kiếm không có chuỗi S Lỗi tìm sai xảy ra khi một chuỗi S

trong cơ sở dữ liệu khác với chuỗi cần tìm nhưng kết quả tìm kiếm lại có chuỗi S

Hậu kiểm là quá trình kiểm tra lại trên dữ liệu gốc các chuỗi tìm được trong không

gian thu giảm tương tự với chuỗi cần tìm nhằm loại bỏ các chuỗi tìm sai

Một kết quả quan trọng đã được Faloutsos và các cộng sự chứng minh là để không xảy ra lỗi tìm xót thì độ đo khoảng cách sử dụng trong không gian xấp xỉ (đặc trưng) phải là chặn dưới của độ đo khoảng cách sử dụng trong không gian gốc [3] Nghĩa là, Dfeature(X’,Y’) ≤ D(X,Y) với Dfeature(X’,Y’) là độ đo khoảng cách giữa

hai chuỗi X, Y Điều kiện này được gọi là bổ đề chặn dưới (lower bouding lemma) 2.4.1.2 Phương pháp xấp xỉ gộp từng đoạn (PAA)

Để giảm kích thước chuỗi thời gian từ n xuống w chiều, trước tiên chúng ta chia chuỗi thời gian ban đầu thành các khung (w) có kích thước bằng nhau và tính

toán lần lượt các giá trị trung bình cho mỗi khung Tập hợp từ các giá trị trung bình

là một vectơ của các giá trị biểu diễn giảm dữ liệu của chuỗi thời gian ban đầu

Một chuỗi thời gian C có độ dài n có thể được biểu diễn trong không gian w

chiều bằng một vectơ 𝐶 = 𝑐1, … , 𝑐𝑤 Phần tử thứ i của 𝐶 được tính bởi công thức:

Trang 29

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

Sau khi sử dụng PAA để thu giảm số chiều của dữ liệu chuỗi thời gian ban đầu, chúng ta có thể áp dụng một chuyển đổi tiếp theo để có được một biểu diễn rời rạc bằng cách ánh xạ biểu diễn PAA của chuỗi thời gian thành một chuỗi ký tự rời rạc dựa vào việc xác định các điểm ngắt trên phạm vi tạo ra các vùng có kích thước bằng nhau dưới đường cong Gauss

Định nghĩa 1 Điểm ngắt (Breakpoints): là danh sách các số được sắp xếp

𝐵 = 𝛽1, … , 𝛽𝛼−1 sao cho diện tích dưới một đường cong Gauss N (0,1) từ β i đến

Trang 30

Hình 2.8 Một chuỗi dữ liệu thời gian có chiều dài 128 được biến đổi PAA với chiều dài 8 rồi mã hóa thành các ký hiệu SAX Chuỗi thời

gian được mã hóa thành baabccbc [14]

Định nghĩa 2 Từ (Word): Một chuỗi con C có độ dài n có thể được biểu diễn

dưới dạng một từ 𝐶̂ = 𝑐̂ , … , 𝑐1 ̂ Đặt alpha𝑤 i biểu thị thành phần thứ i của bảng chữ cái, tức là alpha 1 = a và alpha 2 = b Sau đó, ánh xạ từ xấp xỉ PAA chuỗi C sang

một từ 𝐶̂ thu được như sau:

𝑐̂ = 𝑎𝑙𝑝ℎ𝑎𝑗, 𝑖𝑖𝑓 𝛽𝑗−1 ≤ 𝑐𝑖 < 𝛽𝑗

2.5 PHÂN LỚP DỮ LIỆU THƯỜNG

Phân lớp dữ liệu là một trong những hướng nghiên cứu chính của khai phá

dữ liệu Thực tế đặt ra nhu cầu là từ một dữ liệu với nhiều thông tin ẩn con người có thể trích rút ra các quyết định nghiệp vụ thông minh Phân lớp và dự đoán là hai dạng của phân tích dữ liệu nhằm rút ra một mô hình mô tả các lớp dữ liệu quan trọng hay dự đoán xu hướng dữ liệu tương lai

Phân lớp dự đoán giá trị của những nhãn phân loại (categorical label) hay những giá trị rời rạc (discrete value), có nghĩa là phân lớp thao tác với những đối

tượng dữ liệu mà có bộ giá trị là biết trước Trong khi đó, dự đoán lại xây dựng mô hình với các hàm nhận giá trị liên tục Ví dụ mô hình phân lớp dự báo thời tiết có thể cho biết thời tiết ngày mai là mưa, hay nắng dựa vào những thông số về độ ẩm, sức gió, nhiệt độ,… của ngày hôm nay và các ngày trước đó Hay nhờ các luật về xu hướng mua hàng của khách hàng trong siêu thị, các nhân viên kinh doanh có thể ra những quyết sách đúng đắn về lượng mặt hàng cũng như chủng loại bày bán… Một

Trang 31

mô hình dự đoán có thể dự đoán được lượng tiền tiêu dùng của các khách hàng tiềm năng dựa trên những thông tin về thu nhập và nghề nghiệp của khách hàng

Hình 2.9 minh họa một ví dụ về phân lớp dữ liệu hình ảnh trong lĩnh vực sinh học

Hình 2.9 Ví dụ về phân lớp dữ liệu hình ảnh áp dụng trong lĩnh

vực sinh học

Quá trình phân lớp dữ liệu gồm hai bước:

Bước thứ nhất (learning): Quá trình học nhằm xây dựng một mô hình mô tả

một tập các lớp dữ liệu hay các khái niệm định trước Đầu vào của quá trình này là một tập dữ liệu có cấu trúc được mô tả bằng các thuộc tính và được tạo ra từ tập các

bộ giá trị của các thuộc tính đó Mỗi bộ giá trị được gọi chung là một phần tử dữ

liệu (data tuple), có thể là các mẫu (sample), đối tượng (object), bản ghi (record) hay trường hợp (case) Trong tập dữ liệu này, mỗi phần tử dữ liệu được giả sử

thuộc về một lớp định trước, lớp ở đây là giá trị của một thuộc tính được chọn làm

thuộc tính gán nhãn lớp hay thuộc tính phân lớp (class label attribute)

Bước thứ hai (classification): Bước thứ hai dùng mô hình đã xây dựng ở

bước trước để phân lớp dữ liệu mới Trước tiên độ chính xác mang tính chất dự

đoán của mô hình phân lớp vừa tạo ra được ước lượng Holdout là một kỹ thuật

đơn giản để ước lượng độ chính xác đó Kỹ thuật này sử dụng một tập dữ liệu kiểm tra với các mẫu đã được gán nhãn lớp Các mẫu này được chọn ngẫu nhiên và độc

Trang 32

lập với các mẫu trong tập dữ liệu huấn luyện Độ chính xác của mô hình trên tập dữ

liệu kiểm tra đã đưa là tỉ lệ phần trăm các các mẫu trong tập dữ liệu kiểm tra được

mô hình phân lớp đúng (so với thực tế) Nếu độ chính xác của mô hình được ước lượng dựa trên tập dữ liệu huấn luyện thì kết quả thu được là rất khả quan vì mô hình luôn có xu hướng “quá khớp” với dữ liệu Quá khớp dữ liệu là hiện tượng kết quả phân lớp trùng khít với dữ liệu thực tế vì quá trình xây dựng mô hình phân lớp

từ tập dữ liệu huấn luyện có thể đã kết hợp những đặc điểm riêng biệt của tập dữ liệu đó Do vậy cần sử dụng một tập dữ liệu kiểm tra độc lập với tập dữ liệu huấn luyện Nếu độ chính xác của mô hình là chấp nhận được, thì mô hình được sử dụng

để phân lớp những dữ liệu tương lai, hoặc những dữ liệu mà giá trị của thuộc tính phân lớp là chưa biết

Hình 2.10 Quá trình phân lớp dữ liệu – Ước lượng độ chính xác

Ngày đăng: 02/03/2021, 20:40

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] A. Bagnall, A. Bostrom, J. Large, J. Lines (2017),” The Great Time Series Classifification Bake Off: An Experimental Evaluation of Recently Proposed Algorithms. Extended Version”, Data Mining and Knowledge Discovery, vol.31, pp.606-660 Sách, tạp chí
Tiêu đề: The Great Time Series Classification Bake Off: An Experimental Evaluation of Recently Proposed Algorithms. Extended Version
Tác giả: A. Bagnall, A. Bostrom, J. Large, J. Lines
Nhà XB: Data Mining and Knowledge Discovery
Năm: 2017
[2] A. Abanda, U. Mori, J. A. Lozano (2019), “A review on distance based time series classification”, Data Mining and Knowledge Discovery, vol. 33, pp. 378- 412 Sách, tạp chí
Tiêu đề: A review on distance based time series classification
Tác giả: A. Abanda, U. Mori, J. A. Lozano
Nhà XB: Data Mining and Knowledge Discovery
Năm: 2019
[3] C. Faloutsos, M. Ranganathan, Y. Manolopoulos (1994), "Fast Subsequence Matching in Time Series Databases" in Proceedings of the ACM SIGMOD International Conference on Management of Data, Minneapolis, NM, pp. 419-429 Sách, tạp chí
Tiêu đề: Fast Subsequence Matching in Time Series Databases
Tác giả: C. Faloutsos, M. Ranganathan, Y. Manolopoulos
Năm: 1994
[4] D. Berndt and J. Clifford (1994), “Using dynamic time warping to find patterns in time series”, in Proceedings of AAAI Workshop on Knowledge Discovery in Databases, KDD-94, Seattle, Washington, USA, pp. 359-370 Sách, tạp chí
Tiêu đề: Using dynamic time warping to find patterns in time series
Tác giả: D. Berndt, J. Clifford
Nhà XB: Proceedings of AAAI Workshop on Knowledge Discovery in Databases, KDD-94
Năm: 1994
[5] D. Toshniwal and R. Joshi (2005), “Similarity Search in Time Series Data Using Time Weighted Slopes”, Informatica 29, 2005, pp.79-88. [5] Sách, tạp chí
Tiêu đề: Similarity Search in Time Series Data Using Time Weighted Slopes"”, Informatica
Tác giả: D. Toshniwal and R. Joshi
Năm: 2005
[6] E. Keogh and C. A. Ratanamahatana, (2005), “Exact indexing of dynamic time warping”, Knowledge and information systems, 7(3), pp.358-386 Sách, tạp chí
Tiêu đề: “"Exact indexing of dynamic time warping"”, Knowledge and information systems, 7
Tác giả: E. Keogh and C. A. Ratanamahatana
Năm: 2005
[7] E. Keogh, Q. Zhu, B. Hu, Y. Hao, X. Xi, L. Wei, C. Ratanamahatana: The UCR Time Series Classifification/Clustering Homepage:http://www. cs.ucr.edu/∼eamonn/time series data/ Sách, tạp chí
Tiêu đề: The UCR Time Series Classifification/Clustering Homepage
Tác giả: E. Keogh, Q. Zhu, B. Hu, Y. Hao, X. Xi, L. Wei, C. Ratanamahatana
[8] F. Itakura (1975), “Minimum prediction residual principle applied to speech recognition”. In IEEE Transactions on Acoustics, Speech, and Signal Processing, Vol. ASSP-23, No.1, pp. 67-72 Sách, tạp chí
Tiêu đề: Minimum prediction residual principle applied to speech recognition
Tác giả: F. Itakura
Nhà XB: IEEE Transactions on Acoustics, Speech, and Signal Processing
Năm: 1975
[9] J. Lin, R. Khade, Y. Li (2012), “Rotation-invariant similarity in time series using bag-of-patterns representation”, J. Intell. Inf. Syst. 39, 2, 287–315 Sách, tạp chí
Tiêu đề: Rotation-invariant similarity in time series using bag-of-patterns representation
Tác giả: J. Lin, R. Khade, Y. Li
Năm: 2012
[11] H. Sakoe and S. Chiba (1978), “Dynamic programming algorithm optimization for spoken word recognition”. In IEEE Transactions on Acoustics, Speech, and Signal Processing, Vol. 26, pp. 43-49 Sách, tạp chí
Tiêu đề: Dynamic programming algorithm optimization for spoken word recognition
Tác giả: H. Sakoe, S. Chiba
Nhà XB: IEEE Transactions on Acoustics, Speech, and Signal Processing
Năm: 1978
[12] K. Chan and W. Fu (1999), “Efficient time series matching by wavelets”. In Proceedings of the 15 th IEEE International Conference on Data Engineering, March 23-26, Sydney, Australia, pp. 126-133 Sách, tạp chí
Tiêu đề: Efficient time series matching by wavelets
Tác giả: K. Chan, W. Fu
Nhà XB: Proceedings of the 15 th IEEE International Conference on Data Engineering
Năm: 1999
[13] P. J. Brockwell and R. A . Davis (2016) ,“Introduction to Time Series and Forecasting”, Springer International Publishing Switzerland Sách, tạp chí
Tiêu đề: Introduction to Time Series and Forecasting
Tác giả: P. J. Brockwell, R. A. Davis
Nhà XB: Springer International Publishing Switzerland
Năm: 2016
[14] P. K. Polyák (2018), “Time Series Classification: Evaluating Random Shapelet Forests with SAX representation”, Thesis for: Master of Science in Information Systems Management, Advisor: Panagiotis Papapetrou Sách, tạp chí
Tiêu đề: Time Series Classification: Evaluating Random Shapelet Forests with SAX representation
Tác giả: P. K. Polyák
Năm: 2018
[15] P. Senin and S. Malinchik (2013), “SAX-VSM: Interpretable Time Series Classification Using SAX and Vector Space Model“, IEEE 13th International Conference on Data Mining Sách, tạp chí
Tiêu đề: SAX-VSM: Interpretable Time Series Classification Using SAX and Vector Space Model
Tác giả: P. Senin, S. Malinchik
Nhà XB: IEEE 13th International Conference on Data Mining
Năm: 2013

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN