-
NGUYỄN HỒNG HẢI
GOM CỤM DỮ LIỆU CHUỖI THỜI GIAN VỚI GIẢI THUẬT K-MEDOIDS CẢI TIẾN VÀ ĐỘ ĐO XOẮN THỜI GIAN
ĐỘNG CẢI TIẾN PRUNEDDTW
Chuyên ngành : Khoa Học Máy Tính
Mã số : 60480101
LUẬN VĂN THẠC SĨ
TP HỒ CHÍ MINH, tháng 08 năm 2021
Trang 2Cá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: TS LÊ VĂN QUỐC ANH
Luận văn thạc sĩ được bảo vệ tại Trường Đại Học Bách Khoa, ĐHQG Tp.HCM ngày 05 tháng 08 năm 2021 (trực tuyến)
Thành phần Hội đồng đánh giá luận văn Thạc sĩ gồm:
1 PGS.TS Huỳnh Tường Nguyên Chủ tịch 2 TS Võ Thị Ngọc Châu Phản biện 1 3 TS Lê Văn Quốc Anh Phản biện 2 4 PGS.TS Nguyễn Thanh Hiên Ủy viên 5 TS Nguyễn Tiến Thịnh Thư ký
Xác nhận của Chủ tịch Hội đồng đánh giá luận văn và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa
Trang 3- - NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: NGUYỄN HỒNG HẢI MSHV: 1770471
Ngày, tháng, năm sinh: 28/08/1979 Nơi sinh: TÂY NINH
Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60480101 1 TÊN ĐỀ TÀI:
- Gom cụm dữ liệu chuỗi thời gian với giải thuật k-medoids cải tiến và độ đo xoắn thời gian động cải tiến PrunedDTW
2 NHIỆM VỤ VÀ NỘI DUNG:
- Tìm hiểu độ đo khoảng cách DTW cải tiến: PrunedDTW - Tìm hiểu về giải thuật gom cụm k-medoids cải tiến
- Phát triển giải thuật gom cụm k-medoids cải tiến với độ đo PrunedDTW để gom cụm
dữ liệu chuỗi thời gian
- Hiện thực và thử nghiệm giải thuật k-medoids cải tiến với độ đo PrunedDTW để gom
cụm dữ liệu chuỗi thời gian trên một số bộ dữ liệu mẫu
- So sánh hiệu quả của giải thuật k-medoids cải tiến với độ đo PrunedDTW và giải thuật k-means với độ đo Euclid
3 NGÀY GIAO NHIỆM VỤ: 20/1/2021 4 NGÀY HOÀN THÀNH NHIỆM VỤ: 20/6/2021
5 CÁN BỘ HƯỚNG DẪN: PGS TS DƯƠNG TUẤN ANH
Trang 4LỜI CẢM ƠN
Tôi xin gởi lời cám ơn chân thành và sâu sắc đến PGS TS Dương Tuấn Anh, người luôn thấu hiểu và thông cảm cho hoàn cảnh của cá nhân tôi Thầy luôn nhiệt tâm và tận tình hướng dẫn, chỉ bảo tôi từ cách đặt vấn đề, phương pháp nghiên cứu khoa học đến những công việc chi tiết, cụ thể để tôi có thể từng bước hoàn thành bài luận văn này
Xin chân thành cảm ơn tất cả quý Thầy Cô trong Khoa Khoa học và Kỹ Thuật Máy Tính đã tận tình truyền đạt những kiến thức quý báu cho tôi trong suốt quá trình học tập
Xin ghi nhận và cảm ơn đến bạn bè tôi, những người đã luôn cảm thông, chia sẻ và động viên tôi về mặt tinh thần những lúc khó khăn
Cuối cùng, xin được bày tỏ lòng biết ơn đến gia đình tôi đã luôn ủng hộ và luôn tạo điều kiện tốt nhất để tôi có thể tiếp tục con đường học tập và nghiên cứu của mình
Trang 5TÓM TẮT
Dữ liệu chuỗi thời gian ngày càng trở nên phổ biến trong hầu hết các lĩnh vực như chứng khoán, thời tiết, y tế, môi trường, giải trí, v.v …, và nhu cầu khám phá tri thức của con người từ những nguồn dữ liệu này ngày càng tăng Để phục vụ nhu cầu này, bài toán gom cụm dữ liệu chuỗi thời gian được đặt ra cấp thiết Đây là quá trình học không giám sát nhằm rút trích ra những đặc trưng, tính chất quan trọng của dữ liệu biến đổi chúng thành những thông tin có ích Như vậy, vấn đề đặt ra là, làm sao để gom cụm dữ liệu chuỗi thời gian được hiệu quả: chính xác về kết quả và giảm thiểu chi phí tính toán Các yếu tố quan trọng quyết định đến tính hiệu quả của việc giải quyết bài toán gom cụm chính là: độ đo khoảng cách, là phương pháp định lượng sự sai biệt của các đối tượng dữ liệu trong tập, và thuật toán gom cụm dữ liệu, quy định cách thức gom nhóm được thực hiện trên dữ liệu dựa vào độ đo được áp dụng
Trong thực tế có rất nhiều độ đo khoảng cách khác nhau thích hợp cho từng loại dữ liệu khác nhau Một trong những độ đo thông dụng nhất, thường được áp dụng để giải quyết bài toán gom cụm dữ liệu trên nhiều loại dữ liệu chính là độ đo Euclid
Tuy nhiên, để có thể làm việc được với một số thể loại dữ liệu chuỗi thời gian, thí dụ như dữ liệu đa phương tiện (multimedia), nhất thiết phải dùng độ đo khoảng cách xoắn thời gian động DTW, một phương pháp tính độ đo đặc thù cho dữ liệu chuỗi thời gian, dù biết rằng độ đo này gây ra chi phí tính toán cao Do đó, việc áp dụng các kỹ thuật tăng tốc cách tính độ đo DTW là rất quan trọng và cần thiết
Đề tài của chúng tôi sẽ giới thiệu một số cải tiến cho giải thuật gom cụm k-medoids cổ điển và minh họa một phương pháp tính độ đo DTW hữu hiệu hơn, gọi là độ đo xoắn thời gian động cải tiến-PrunedDTW, nhằm mục đích thu được ma trận khoảng cách ban đầu nhanh hơn cách tính độ đo DTW truyền thống TrueDTW
Cuối cùng, chúng tôi sẽ kết hợp giải thuật gom cụm k-medoids cải tiến này với độ đo PrunedDTW áp dụng trên một số bộ dữ liệu mẫu để đạt được kết quả gom cụm tốt hơn với chi phí về thời gian hợp lý Kết quả thực nghiệm cho thấy giải thuật gom cụm
Trang 6đề xuất thực thi nhanh hơn giải thuật k-medoid cải tiến với độ đo DTW trực tiếp và đem lại hiệu quả gom cụm tốt hơn giải thuật k-means với độ đo Euclid
Trang 7ABSTRACT
Nowaday, Time Series Data have become very common in several fields such as stock market, weather, health care, environment, entertainment, etc and the need of knowledge discovery from the time series data by human is increasing more and more In order to handle this trend, the problem of time series clustering is stated and this is an unsupervised learning process to extract the important features from data and then transform it into useful information for reseachers Thus, the problem is how to cluster time series data effectively, getting high quality and minimizing the computation cost
We have two the important factors that determine the effectiveness of this problem as follows: the distance measure, which is a method to quantify the difference of objects in the dataset, and the data clustering algorithm, which specifies how to group the dataset under the selected distance measure
Actually, there are many different distance measures that are appropriate for different types of data accordingly One of the distance measures which is widely-used in the clustering problem on many kinds of data, is the Euclid measure
However, in order to work with some special kinds of time series data, such as multimedia data, we should use the Dynamic Time Warping (DTW), a distance measure which is suitable with this kind of time series data, despite of its high computational cost Therefore, it is very important and necessary to apply the techniques which can accelerate the calculation of the DTW distance measure
In this thesis, we will introduce some improvements to the classical k-medoids clustering algorithm and utilize an efficient method of calculating DTW, called PrunedDTW, which can compute the initial distance matrix from the dataset faster than the traditional measure does
Finally, we will combine the improved k-medoids clustering algorithm with the PrunedDTW for time series clustering Experiment results on some benchmark time series datasets show that the proposed clustering method can run faster than improved
Trang 8k-medoids under true DTW and outperforms k-means with Euclidean measure in terms of clustering quality
Trang 9LỜI CAM ĐOAN
Tôi xin cam đoan các kết quả báo cáo trong luận văn này và chương trình là sản phẩm do công sức lao động của chính tôi thực hiện, không có sự sao chép từ những công trình nào khác, ngoại trừ những kết quả từ các công trình khác đã ghi rõ trong luận văn Tất cả các kiến thức tôi học hỏi được từ những tài liệu tham khảo đều được trích dẫn nguồn đầy đủ Nếu có bất cứ sai phạm nào so với lời cam đoan, tôi xin chịu các hình thức xử lý theo quy định
Học viên / Tác giả
Nguyễn Hồng Hải
Trang 10MỤC LỤC
CHƯƠNG 1 - GIỚI THIỆU ĐỀ TÀI 1
1.1 Giới thiệu vấn đề 1
1.2 Động cơ nghiên cứu 3
1.3 Mục tiêu nghiên cứu 4
1.4 Tóm lược kết quả đạt được 5
1.5 Cấu trúc của 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ơ sở lý thuyết 7
2.1.1 Độ đo khoảng cách cho dữ liệu chuỗi thời gian 7
2.1.1.1 Độ đo Euclid 8
2.1.1.2 Khoảng cách xoắn thời gian động (DTW) 8
2.1.2 Các kỹ thuật gom cụm dữ liệu thường dùng 16
2.1.2.1 Giải thuật k-means 16
2.1.2.2 Giải thuật k-medoids 17
2.2 Khảo sát các công trình liên quan 19
2.2.1 Phương pháp tính giá trị trung bình hình dạng dùng khoảng cách DTW 19
2.2.1.1 Phương pháp tính trung bình của Gupta và các đồng sự 19
2.2.1.2 Giải thuật tính trung bình cụm dữ liệu PSA 21
2.2.1.3 Giải thuật tính trung bình cụm dữ liệu DBA 23
2.2.2 Phương pháp gom cụm dữ liệu chuỗi thời gian k-medoids cải tiến kết hợp độ đo xoắn thời gian động cải tiến PrunedDTW 26
2.2.2.1 Giải thuật k-medoids cải tiến 27
2.2.2.2 Khoảng cách xoắn thời gian động cải tiến (PrunedDTW) 29
2.2.3 Giải thuật k-means cải tiến 35
Trang 113.1 Hiện thực bài toán 39
3.1.1 Đặt vấn đề 39
3.1.2 Hướng giải quyết 40
3.1.2.1 Kỹ thuật khởi tạo trung tâm cụm 40
3.1.3 Chi tiết hệ thống chương trình 41
3.2 Dữ liệu thực nghiệm và phương pháp đánh giá kết quả nghiên cứu 42
3.2.1 Dữ liệu thực nghiệm 42
3.2.2 Phương pháp đánh giá kết quả nghiên cứu 43
CHƯƠNG 4 – THỰC NGHIỆM 46
4.1 Giới thiệu tập dữ liệu mẫu 46
4.2 So sánh tính hữu hiệu của thuật toán k-medoids cải tiến dùng độ đo PrunedDTW với thuật toán k-medoids cải tiến dùng độ đo DTW trực tiếp 48
4.3 So sánh tính hiệu quả của thuật toán k-medoids cải tiến với độ đo PrunedDTW và thuật toán k-means cải tiến với độ đo Euclid 52
Trang 12DANH MỤC HÌNH
Hình 1.1: Ảnh hưởng của độ đo đối với kết quả gom cụm 2
Hình 2.1 Độ đo Euclid và độ đo DTW 8
Hình 2.2 Ma trận xoắn DTW và đường xoắn tối ưu True Warping Path 9
Hình 2.3 Đồ thị biểu diễn hai chuỗi thời gian 12
Hình 2.4 Ma trận xoắn DTW 12
Hình 2.5 Sakoe-Chiba Band và Itakura Paralelogram 14
Hình 2.6 Kỹ thuật chặn dưới của Kim 14
Hình 2.7 Kỹ thuật chặn dưới của Yi 15
Hình 2.8 Kỹ thuật chặn dưới của Keogh 15
Hình 2.9 Quá trình gom cụm dùng k-means 17
Hình 2.10 Các trường hợp thay thế của giải thuật k-medoids 18
Hình 2.11 Mô tả hai kỹ thuật tính trung bình của Gupta 21
Hình 2.12: Ví dụ minh họa mô hình PSA 23
Hình 2.13: Quá trình tính chuỗi trung bình dựa vào DBA 25
Hình 2.14: Minh họa quá trình rút ngắn độ dài của chuỗi 25
Hình 2.15 Ma trận DTW giữa hai chuỗi thời gian Màu sắc cho biết giá trị thu được trong mỗi ô của ma trận 30
Hình 2.16 Kỹ thuật cắt tỉa ở ma trận tam giác dưới 33
Hình 2.17 Kỹ thuật cắt tỉa ở ma trận tam giác trên 34
Hình 2.18 Phương sai của tất cả các cột dữ liệu 35
Hình 2.19 Chọn cột có giá trị phương sai lớn nhất và sắp xếp lại dữ liệu 36
Hình 2.20 Chia dữ liệu thành k tập con theo cột cvmax 36
Hình 2.21 Xác định median của các tập dữ liệu con 37
Trang 13Hình 4.2 Tính hữu hiệu của thuật toán Improved k-medoids
khi kết hợp với độ đo TrueDTW và PrunedDTW 49 Hình 4.3 Tính hữu hiệu của thuật toán Improved k-medoids khi kết hợp
với độ đo PrunedDTW và TrueDTW theo tỷ lệ phần trăm nhanh hơn (%) 50 Hình 4.4 Ma trận DTW của 3 cặp đối tượng dữ liệu trong tập Synthetic Control 51 Hình 4.5 Ma trận DTW của 2 cặp đối tượng dữ liệu trong tập Face Four 51 Hình 4.6 Tính hiệu quả của thuật toán k-medoids cải tiến và độ đo PrunedDTW so với k-means cải tiến và độ đo Euclid trên chỉ số Rand 52 Hình 4.7 Tính hiệu quả của thuật toán k-medoids cải tiến và độ đo PrunedDTW so với k-means cải tiến và độ đo Euclid trên chỉ số ARI 53 Hình 4.8 Tính hiệu quả của thuật toán k-medoids cải tiến và độ đo PrunedDTW so với k-means cải tiến và độ đo Euclid trên chỉ số Jaccard 53 Hình 4.9 Tính hiệu quả của thuật toán k-medoids cải tiến và độ đo PrunedDTW so với
k-means cải tiến và độ đo Euclid trên chỉ số FM 54
Trang 14CHƯƠNG 1 - GIỚI THIỆU ĐỀ TÀI
Chương này sẽ trình bày vấn đề mà đề tài tập trung nghiên cứu, động cơ để thực hiện đề tài này và mục tiêu của đề tài Ngoài ra, chúng tôi cũng trình bày sơ lược các kết quả đạt được cũng như là cấu trúc của luận văn
1.1 Giới thiệu vấn đề:
Ngày nay, cùng với sự bùng nổ của dữ liệu lớn (Big Data), một dạng dữ liệu thời
gian đã xuất hiện và đang dần trở nên phổ biến hơn trong hầu hết các lĩnh vực như chứng
khoán, thời tiết, y tế, môi trường … đó là dữ liệu chuỗi thời gian (time series data)
Trong khi đó nhu cầu khám phá tri thức của con người từ những nguồn dữ liệu này ngày
càng tăng đặt ra vấn đề phân tích dữ liệu dưới hình thức này mà tiêu biểu là bài toán gom cụm dữ liệu chuỗi thời gian, một quá trình học không giám sát (unsupervised learning)
với mục đích rút trích ra những đặc trưng và tính chất quan trọng của dữ liệu để gom
nhóm chúng thành những cụm (clusters) riêng biệt nhau nhằm phục vụ cho mục đích phân tích, rút trích ra các thông hữu ích Như chúng ta đã biết, một bài toán gom cụm dữ liệu (clustering) luôn bao gồm 2 thành phần quan trọng mang tính cốt lõi đó là thuật
toán gom cụm (clustering algorithm) và độ đo khoảng cách (measure distance
calculation), một phương pháp tính toán khoảng cách giữa các cặp đối tượng dữ liệu Trước hết, về vấn đề độ đo khoảng cách, có độ đo khoảng cách thường được sử dụng
nhất đó là độ đo khoảng cách Euclid (Euclidean distance) do tính đơn giản và dễ dùng
của nó Tuy nhiên, độ chính xác của các độ đo khoảng cách này còn tùy thuộc vào loại dữ liệu cần phân cụm Vì vậy, trên thực tế, nhiều độ đo khoảng cách khác nhau ra đời để
áp dụng tùy vào đặc điểm, tính chất của loại dữ liệu mà một trong số đó chính là độ đo xoắn thời gian động – DTW (Dynamic Time Warping) [1] Độ đo khoảng cách Euclid
Trang 15liệu chuỗi thời gian Mặt khác, trong nhiều bối cảnh ứng dụng, chúng ta lại quan tâm
đến yếu tố chất lượng gom cụm nhiều hơn là yếu tố thời gian thực thi việc gom cụm Do
đó, nhu cầu áp dụng khoảng cách DTW, cũng như các phương pháp tăng tốc cho chúng,
vào bài toán gom cụm là rất thiết thực vì độ phức tạp tính toán cao của khoảng cách này cùng với số lượng cũng như độ dài (length of data) của loại dữ liệu chuỗi thời gian có xu hướng càng tăng cao như hiện nay sẽ làm vấn đề chi phí cho việc gom cụm trên loại dữ liệu đặc thù này vốn đã tốn kém lại càng tốn kém hơn Hình 1.1 minh họa ảnh hưởng của độ đo khoảng cách với kết quả gom cụm
Hình 1.1: Ảnh hưởng của độ đo đối với kết quả gom cụm (Nguồn [23]).
Vấn đề còn lại là thuật toán gom cụm Như chúng ta đã biết, gom cụm là quá trình
gom nhóm các đối tượng dữ liệu (data object), lại với nhau trên tiêu chí các đối tượng
có đặc điểm, tính chất tương tự nhau thì sẽ được đặt vào cùng một nhóm và ngược lại các đối tượng khác nhau về đặc điểm và tính chất sẽ thuộc khác nhóm nhau Dựa vào điều này, không ít các giải thuật gom cụm hiệu quả đã xuất hiện và một trong số đó là
thuật toán k-means Thuật toán k-means dựa trên việc lặp lại việc cập nhật các điểm trung tâm được dẫn xuất (centroids) mới và tiến hành gom nhóm các đối tượng dựa
Trang 16trên khoảng cách từ những đối tượng đó đến các điểm trung tâm này Không may là,
thuật toán k-means lại rất nhạy cảm với các điểm dị biệt (outlier) Mặc khác, dù k-means
tỏ ra rất hiệu quả về mặt thời gian tính toán, nhưng khi áp dụng với một số loại dữ liệu,
như: đồ thị (graph), hình ảnh (image), quỹ đạo 3 chiều (3-D trajectories), dữ liệu biểu diễn gen (gene expression), thì việc xác định các điểm trung tâm (centroid) của chúng là vô cùng khó khăn Vì lý do này, thuật toán gom cụm dựa vào k-medoids (gọi vắn tắt là thuật toán k-medoids) đôi khi được sử dụng như một biện pháp thay thế Về nguyên tắc hoạt động, thuật toán phân cụm k-medoids cũng tương tự thuật toán k-means, nhưng k-medoids sử dụng các điểm dữ liệu thực làm trung tâm cụm Trong khi thuật toán k-means cố gắng giảm thiểu tổng sai số bình phương, thì k-medoids giảm thiểu tổng số điểm khác biệt giữa các điểm được phân cùng một cluster với một điểm được chỉ định làm trung tâm (điểm đại diện) của cụm đó Vì vậy nên thuật toán k-medoids ít bị ảnh hưởng bởi các điểm dị biệt (có thể là nhiễu dữ liệu – noise) hơn k-means Một trong số những thuật toán phân cụm sử dụng k-medoids mạnh là thuật toán phân hoạch dựa vào medoids (gọi tắt là PAM – Partitioning Around Medoids) Tuy nhiên, thuật toán PAM có một bất lợi đó là nó hoạt động không hiệu quả trên các bộ dữ
liệu lớn (large dataset), đồng nghĩa với thời gian chạy của thuật toán sẽ lâu Vì vậy, cần thiết nên có thuật toán khác hiệu quả hơn hoặc một số cải tiến cho giải thuật này
1.2 Động cơ nghiên cứu
Mặc dù sự ra đời DTW làm cho việc gom cụm dữ liệu chuỗi thời gian chính xác hơn, thậm chí DTW trở thành độ đo ưu việt hơn so với các độ đo khác cho loại dữ liệu chuỗi thời gian, nhưng với số lượng dữ liệu ngày càng lớn và việc tính khoảng cách DTW bằng phương pháp quy hoạch động là khá phức tạp làm cho việc gom cụm với khoảng cách DTW trở thành gánh nặng về mặt chi phí thời gian Vì vậy, việc phát triển
các kỹ thuật tính toán thay thế kỹ thuật tính DTW trực tiếp bằng các cách tính toán chặn
Trang 17đối với một số bài toán trong thực tế thì việc gom cụm với DTW vẫn mất thời gian khá lâu
Như vậy, nhu cầu cần có một độ đo khoảng cách và thuật toán phân cụm tốt hơn
luôn là mối quan tâm hàng đầu của các nhà nghiên cứu Trong phạm vi đề tài này, chúng
tôi sẽ giới thiệu một thuật toán gom cụm khác cũng dựa trên k-medoids với cách vận hành tương tự thuật toán k-means nhưng có sự cải tiến thêm để đạt được mục tiêu trước hết là sự đơn giản, hiệu quả, gọi là thuật toán k-medoids cải tiến (Park và Jun, 2009 [14]) và sử dụng độ đo khoảng cách xoắn thời gian động cải tiến (PrunedDTW)(Silva
and Batista, 2016 [2]) dùng thay cho khoảng cách DTW trực tiếp (TrueDTW)[1], vốn
có chi phí tính toán cao, đồng thời khảo sát sự kết hợp giữa chúng với nhau trong việc giải quyết bài toán gom cụm trên dữ liệu chuỗi thời gian Đặc điểm nổi bật của sự kết hợp chính là kỹ thuật gom cụm này đòi hỏi sự tính toán khoảng cách giữa các điểm dữ liệu chỉ một lần duy nhất lúc khởi tạo, cũng như cách áp dụng kỹ thuật khởi tạo trung
tâm cụm ban đầu cho giải thuật gom cụm k-medoids Kết quả thực nghiệm đã cho thấy
chất lượng gom cụm khá chính xác, thậm chí tốt hơn đối với một số bộ dữ liệu cụ thể,
so với giải thuật gom cụm k-means cải tiến [27] với độ đo Euclid Thêm nữa, việc áp dụng độ đo PrunedDTW vào thuật toán phân cụm trên càng đảm bảo sự chính xác hơn
cho kết quả đầu ra của bài toán phân cụm so với độ đo Euclid
1.3 Mục tiêu nghiên cứu
Đề tài tập trung nghiên cứu và giải quyết bài toán phân cụm trên dữ liệu chuỗi thời gian Các giải thuật được đề xuất trong nghiên cứu dùng để giải quyết các vấn đề của bài
toán giảm chi phí cho quá trình tính toán ma trận xoắn DTW, ma trận khoảng cách toàn cặp (all-pairwise distance matrix) ban đầu và đồng thời tăng chất lượng của kết quả gom cụm, tạo tiền đề cho các bài toán sau đó như bài toán phân lớp (classification), một hình thức học có giám sát (supervised learning) và bài toán dự báo (prediction)
làm việc hiệu quả hơn
Trang 18• Tìm hiểu cách tính ma trận DTW bằng phương pháp PrunedDTW: tuy ưu
điểm của DTW đó là cho độ chính xác cao so với các độ đo Euclid, nhưng cách tính của nó khá phức tạp, do đó phát sinh chi phí lớn làm chậm quá trình tính toán Do đó, đề tài sẽ tìm hiểu phương pháp PrunedDTW này
• Tìm hiểu giải thuật gom cụm k-medoids cải tiến: đây là thuật toán gom cụm dựa
trên medoid, có nhiều ưu điểm, như: ít bị ảnh hưởng bởi nhiễu (noise) và các điểm dị biệt (outlier) để cho kết quả phân cụm tốt hơn, nhưng được cải tiến để
có khả năng chạy nhanh xấp xỉ thuật toán k-means
• Hiện thực giải thuật gom cụm dữ liệu chuỗi thời gian k-medoids cải tiến • Hiện thực phương pháp tính độ đo khoảng cách PrunedDTW
• Phân tích, đánh giá độ hiệu quả của sự kết hợp của hai giải thuật k-medoids cải tiến và PrunedDTW bằng cách so sánh chất lượng phân cụm với phương pháp phân cụm k-means cải tiến [27] với độ đo Euclid trên các tập dữ liệu mẫu 1.4 Tóm lược kết quả đạt được:
Sau thời gian nghiên cứu cơ sở lý thuyết cũng như phương pháp hiện thực, chúng tôi đã hiện thực được các thuật toán, kết hợp chúng thành một framework và tiến hành thực nghiệm gom cụm dữ liệu chuỗi thời gian trên framework này, chúng tôi đã đạt được các kết quả tích cực đó là:
• Xây dựng được hệ thống framework gom cụm sử dụng giải thuật gom cụm medoids cải tiến dùng độ đo khoảng cách DTW cải tiến (PrunedDTW) nhằm mục đích đạt được chất lượng gom cụm tốt hơn so với k-means cải tiến với độ đo Euclid nhưng với thời gian thực thi ít hơn so với phương pháp gom cụm k-medoid cải tiến với độ đo DTW trực tiếp
k-• Đưa ra được các kết luận đánh giá chất lượng gom cụm cũng như so sánh độ hiệu quả của các phương pháp này qua sự thực nghiệm trên 5 bộ dữ liệu mẫu
Trang 19Như vậy, hệ thống này cơ bản đã đáp ứng được các yêu cầu của bài toán đặt ra mà, về chi tiết của các thuật toán, chúng tôi sẽ trình bày ở các phần sau trong tài liệu này
1.5 Cấu trúc của luận văn:
Tổ chức các phần còn lại của luận văn này bao gồm như sau:
Chương 2 là các cơ sở lý thuyết mà chúng tôi sử dụng trong việc nghiên cứu, bao
gồm các lý thuyết về độ đo khoảng cách của chuỗi thời gian, các kỹ thuật về ràng buộc toàn cục (global constraints) và tính chặn dưới cũng như các kỹ thuật về gom cụm dữ
liệu thường và dữ liệu chuỗi thời gian Đồng thời giới thiệu về các công trình nghiên cứu liên quan Những công trình này trình bày về các phương pháp tính giá trị trung bình dựa
trên khoảng cách DTW để áp dụng kỹ thuật gom cụm k-means như phương pháp của Gupta và các đồng sự, giải thuật PSA và giải thuật DBA Ngoài ra, chúng tôi còn giới thiệu về giải thuật k-medoids cải tiến và độ đo xoắn thời gian động cải tiến PrunedDTW
Chương 3 trình bày phương pháp giải quyết vấn đề đã nêu trên: kết hợp thuật toán
k-medoids cải tiến và độ đo PrunedDTW áp dụng vào phân cụm cho dữ liệu chuỗi thời
gian Nội dung chương sẽ bao gồm: vấn đề hiện thực các giải thuật đã chọn, cấu trúc hệ thống chương trình thực hiện, giới thiệu các bộ dữ liệu dành cho việc thực nghiệm và các tiêu chí đánh giá kết quả thử nghiệm này
Chương 4 trình bày các kết quả thực nghiệm đạt được, thông qua đó đánh giá chất lượng gom cụm của phương pháp đề xuất cũng như đánh giá thời gian thực thi của các phương pháp đề xuất
Chương 5 là một số kết luận, đóng góp của đề tài cũng như hướng phát triển trong tương lai của đề tài
Trang 20CHƯƠNG 2 – CƠ SỞ LÝ THUYẾT VÀ CÁC CÔNG TRÌNH LIÊN QUAN
Trong phần này chúng tôi sẽ trình bày sơ lược các khái niệm được sử dụng trong đề
tài như là giải thuật tính độ đo DTW trực tiếp (TrueDTW), kỹ thuật ràng buộc toàn cục,
các kỹ thuật tính chặn dưới, các giải thuật gom cụm dữ liệu thông thường và dữ liệu
chuỗi thời gian cũng như giới thiệu về cách xác định số cụm k tối ưu nhất trong giải thuật gom cụm k-medoids và các phương pháp đánh giá chất lượng gom cụm dữ liệu
Kế tiếp, chúng tôi sẽ trình bày các công trình nghiên cứu có liên quan đến vấn đề mà đề tài đang giải quyết đó là các phương pháp tính giá trị trung bình hình dạng dựa trên
khoảng cách DTW Cuối cùng là trình bày phương pháp mà đề tài sẽ tiến hành nghiên cứu và áp dụng đó là gom cụm dữ liệu chuỗi thời gian với giải thuật k-medoids cải tiến và độ đo xoắn thời gian động cải tiến PrunedDTW
2.1 Cơ sở lý thuyết:
Đề tài của chúng tôi tập trung vào việc tìm hiểu các vấn đề lý thuyết và các bài báo liên quan để làm cơ sở cho việc nghiên cứu đề tài như:
2.1.1 Độ đo khoảng cách cho dữ liệu chuỗi thời gian:
Các bài toán tìm kiếm mẫu, phân loại hay gom cụm dữ liệu chuỗi thời gian đều sử dụng kiểu dữ liệu mà ở đó được biểu diễn thành một chuỗi các số thực Vì vậy, để giải quyết các bài toán này ta phải sử dụng các độ đo khoảng cách giữa các cặp chuỗi thời
gian với nhau để đạt được kết quả chính xác hơn Giả sử, ta có hai chuỗi thời gian Q và C với các độ dài n và m tương ứng là 𝑄 = 𝑞1, 𝑞2, … , 𝑞𝑖, … , 𝑞𝑛 và 𝐶 = 𝑐1, 𝑐2, … , 𝑐𝑗, … , 𝑐𝑚
Ta cần phải xác định độ đo khoảng cách Dist(Q, C) của hai chuỗi thời gian này
Trang 212.1.1.1 Độ đo Euclid:
Hiện nay, có rất nhiều độ đo khoảng cách đã được sử dụng cho việc gom cụm dữ
liệu chuỗi thời gian tùy thuộc vào từng miền ứng dụng và trong đó độ đo Euclid là đủ
khả năng để giải quyết bài toán này Tuy nhiên, để có thể làm việc được với một số thể
loại dữ liệu chuỗi thời gian, thí dụ như dữ liệu đa phương tiện (multimedia), nhất thiết phải dùng độ đo khoảng cách DTW, dù biết rằng độ đo này gây ra chi phí tính toán cao Mặt khác, độ đo Euclid lại không đủ linh hoạt để áp dụng trong các kỹ thuật biến đổi như tịnh tiến (shifting), kéo dãn (stretching) hay co lại (contracting) trên trục thời gian nên các độ đo này ngày càng trở nên thiếu chính xác [1] và không được tin dùng như độ đo DTW
2.1.1.2 Khoảng cách xoắn thời gian động (DTW):
Việc sử dụng độ đo Euclid đối với dữ liệu chuỗi thời gian có hình dạng giống nhau
nhưng khác nhau về thời gian sẽ sinh ra kết quả tính toán không chính xác vì cách ánh xạ điểm 𝑖𝑡ℎ của chuỗi này với điểm 𝑖𝑡ℎ của chuỗi khác Vì vậy để khắc phục điểm yếu
này thì độ đo xoắn thời gian động đã ra đời
Hình 2.1 minh họa độ đo khoảng cách Euclid và độ đo DTW
Hình 2.1 Độ đo Euclid (trái) và độ đo DTW (phải), (Nguồn [10])
Kỹ thuật tính toán khoảng cách xoắn thời gian động là cách sắp xếp hai chuỗi
thời gian sao cho giá trị khoảng cách là nhỏ nhất (Berndt và Clifford, 1994[1]) Để sắp
xếp đươc hai chuỗi này, chúng ta phải xây dựng ma trận n×m nơi phần tử (𝑖𝑡ℎ, 𝑗𝑡ℎ) của ma trận là khoảng cách 𝐷𝑖𝑠𝑡(𝑞𝑖, 𝑐𝑗) của hai điểm 𝑞𝑖, 𝑐𝑗 và mỗi điểm (𝑖, 𝑗) này là sự sắp
Trang 22xếp giữa hai điểm 𝑞𝑖, 𝑐𝑗 Đường xoắn (warping path) W được định nghĩa là sự sắp xếp
của những phần tử trong hai chuỗi Q và C, tức là ánh xạ giữa Q và C Từ đó, chúng ta
Hình 2.2 Ma trận xoắn DTW và đường xoắn tối ưu True Warping Path (Nguồn
Trang 23Có thể tính toán được ma trận xoắn DTW bằng giải thuật quy hoạch động (dynamic programming) gồm biến giai đoạn, biến trạng thái và biến quyết định để
mô tả quá trình chuyển đổi trạng thái hợp lệ Trong đó, biến giai đoạn đơn giản chỉ là một sự tăng đơn điệu các sự kiện, biến trạng thái là các điểm (𝑖, 𝑗) trong ma trận và biến
quyết định để giới hạn những đường xoắn hợp lệ làm giảm không gian tìm kiếm Việc
giới hạn không gian tìm kiếm sẽ giúp tiết kiệm được chi phí tính toán và cải thiện được vấn đề hiệu suất, cho nên đường xoắn thời gian phải tuân theo một vài ràng buộc sau:
• Tính đơn điệu (monotonicity): những điểm phải được sắp thứ tự đơn điệu
tương ứng với thời gian, tức là cho 𝑤𝑘 = (𝑎, 𝑏) thì 𝑤𝑘−1 = (𝑎′, 𝑏′) với a – a' ≥ 0 và b – b' ≥ 0
• Tính liên tục (continuity): từng bước trong đường xoắn phải liền kề nhau, tức
là cho 𝑤𝑘 = (𝑎, 𝑏) thì 𝑤𝑘−1 = (𝑎′, 𝑏′) với a – a' ≤ 1 và b – b' ≤ 1
• Cửa sổ xoắn (warping window): những điểm hợp lệ phải rơi vào khoảng cửa
sổ xoắn cho trước 𝜔 > 0 với |𝑖𝑘 − 𝑗𝑘| ≤ 𝜔
• Ràng buộc độ dốc (slope constraint): những đường xoắn hợp lệ phải bị ràng
buộc về độ dốc, điều này giúp tránh trường hợp những bước di chuyển quá lớn theo một hướng
• Điều kiện biên (boundary conditions): 𝑤1 = (1,1) và 𝑤𝑘 = (𝑛, 𝑚) điều này giúp đường xoắn bắt đầu và kết thúc tại các điểm nằm ở góc trên đường chéo của ma trận
Ma trận khoảng cách DTW sẽ được tính bằng quy hoạch động dựa trên công thức
sau:
𝛾(𝑖, 𝑗) = 𝐷𝑖𝑠𝑡(𝑞𝑖, 𝑐𝑗) + 𝑚𝑖𝑛 {𝛾(𝑖 − 1, 𝑗 − 1), 𝛾(𝑖 − 1, 𝑗), 𝛾(𝑖, 𝑗 − 1)}
Trong đó, 𝛾(𝑖, 𝑗) là khoảng cách tích lũy của mỗi điểm thuộc ma trận DTW Chính
là tổng khoảng cách giữa 2 điểm hiện tại thuộc 2 chuỗi thời gian với khoảng cách tích
Trang 24lũy nhỏ nhất của các điểm xung quanh nó Độ đo Euclid có thể xem như trường hợp đặc biệt của DTW với ràng buộc 𝑤𝑘 = (𝑖, 𝑗)𝑘, 𝑖 = 𝑗 = 𝑘 và hai chuỗi có độ dài bằng nhau
Chi tiết giải thuật tính ma trận khoảng cách DTW như sau: Input:𝑄: 𝑎𝑟𝑟𝑎𝑦 [1 … 𝑛], 𝐶: 𝑎𝑟𝑟𝑎𝑦 [1 … 𝑚], 𝐷𝑇𝑊 ∶
𝑎𝑟𝑟𝑎𝑦 [1 … 𝑛, 1 … 𝑚]
1 for i = 1 : n 2 for j = 1 : m
3 𝐷𝑇𝑊[𝑖, 𝑗] = (𝑄[𝑖]– 𝐶[𝑗])2 + 𝑚𝑖𝑛(𝐷𝑇𝑊[𝑖 − 1, 𝑗], 𝐷𝑇𝑊[𝑖, 𝑗 −1], 𝐷𝑇𝑊[𝑖 − 1, 𝑗 − 1])
4 return 𝐷𝑇𝑊[𝑛, 𝑚]
Ví dụ sau đây sẽ minh họa cho giải thuật tính khoảng cách DTW Giả sử chúng ta
có 2 chuỗi thời gian:
𝑄 = (5, 6, 3, 2, 9, 5, 9, 4, 8, 5) 𝐶 = (3, 4, 1, 8, 3, 7, 4, 4, 8, 2) Hai chuỗi này được biểu diễn đồ thị bằng hình 2.3:
Trang 25Hình 2.3 Đồ thị biểu diễn hai chuỗi thời gian, (Nguồn [23])
Để tính khoảng cách DTW chúng ta xây dựng ma trận tính khoảng cách tích lũy
của hai chuỗi trên như hình dưới đây Mỗi ô trong ma trận sẽ chứa khoảng cách tích lũy tương ứng của cặp điểm đó, xem hình 2.4
Hình 2.4 Ma trận xoắn DTW, (Nguồn [23])
Trong ma trận xoắn DTW trên, các ô được tính toán như sau:
𝛾(1, 1) = (𝑄1− 𝐶1)2
𝛾(1, 𝑗) = 𝛾(1, 𝑗 − 1) + (𝑄1− 𝐶𝑗)2
Trang 26𝛾(𝑖, 1) = 𝛾(𝑖 − 1, 1 ) + (𝑄𝑖 − 𝐶1)2
𝛾(𝑖, 𝑗) = 𝑚𝑖𝑛{𝛾(𝑖 − 1, 𝑗 − 1), 𝛾(𝑖, 𝑗 − 1), 𝛾(𝑖 − 1, 𝑗)} + (𝑄𝑖− 𝐶𝑗)2
Sau khi đã tính tất cả giá trị tích lũy cho các ô, chúng ta được một đường xoắn tối ưu bao gồm các ô tham gia tích lũy cho ô (10,10) Trong hình 2.4 ở trên thì đường xoắn tối ưu là các ô được tô màu đậm
Vậy khoảng cách DTW của hai chuỗi trên là √28 ≈ 5,2915, trong khi khoảng cách
Euclid của hai chuỗi trên là √122 ≈ 11,0454
Ưu điểm: 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 có thể có chiều dài thời gian khác nhau DTW cũng cho ra kết quả về khoảng cách chính xác hơn các độ đo trong không gian Euclid
Khuyết điểm: thời gian tính toán lâu Độ phức tạp của DTW trong trường hợp này
là O(nm), với m, n lần lượt là chiều dài của 2 chuỗi thời gian tương ứng
Từ các ưu, khuyết điểm này, đã thúc đẩy rất nhiều công trình nghiên cứu nhằm mục
đích giảm thời gian tính toán của việc tính ma trận xoắn DTW Nhiều phương pháp, kỹ
thuật khác nhau ra đời:
• Kỹ thuật ràng buộc toàn cục: Dải Sakoe-Chiba (Sakoe-Chiba Band), hình bình hành Itakura (Itakura Paralelogram) được minh họa ở hình 2.5
Trang 27Hình 2.5 Sakoe-Chiba Band (trái) và Itakura Paralelogram (phải), (Nguồn [10])
• Kỹ thuật tính chặn dưới: Với ý đồ giảm bớt không gian tìm kiếm bằng cách
loại bỏ những chuỗi không phù hợp càng sớm càng tốt (similarity searching) Mục tiêu của kỹ thuật này là để tăng tốc độ tính toán và tạo một ràng buộc chặn
dưới tương đối chặt chẽ Đây là các phương pháp xấp xỉ khoảng cách DTW trực tiếp với những ưu và nhược điểm khác nhau:
o Phương pháp tính chặn dưới của Kim (Kim et al (2001) [11]), hình 2.6:
Hình 2.6 Kỹ thuật chặn dưới của Kim, (Nguồn [10])
o Phương pháp tính chặn dưới của Yi (Yi et al (1998) [12]), hình 2.7:
Trang 28Hình 2.7 Kỹ thuật chặn dưới của Yi, (Nguồn [10])
o Phương pháp tính chặn dưới của Keogh (Keogh và Ratanamahatana
(2002) [10]), hình 2.8:
Hình 2.8 Kỹ thuật chặn dưới của Keogh, (Nguồn [10])
Nhận xét: các phương pháp dựa trên việc tính cận dưới như vậy chỉ phù hợp cho bài
Trang 292.1.2 Các kỹ thuật gom cụm dữ liệu thường dùng:
Có nhiều giải thuật gom cụm dữ liệu được chia theo từng đặc trưng riêng biệt bao gồm phân hoạch, phân cấp, dựa trên mật độ, dựa trên lưới, dựa trên mô hình và các giải thuật khác Ở đây, chúng tôi chỉ đề cập đến các giải thuật phổ biến thuộc nhóm gom cụm phân hoạch Các giải thuật gom cụm phân hoạch được sử dụng rất phổ biến vì nó đơn giản và có thể gọi là phiên bản cơ bản nhất của việc giải quyết bài toán gom cụm Trước
hết, để vận hành loại giải thuật này, chúng ta cần ước lượng trước thông số k, tức số cụm
mà các đối tượng có thể được nhóm lại, mặc dù điều này, thực tế, không dễ dàng gì và có khả năng ảnh hưởng lớn đến kết quả của bài toán Kế đến, chúng ta tiến hành gom nhóm những đối tượng thoả các điều kiện tối ưu nào đó, như độ đo khoảng cách từ chúng
đến các trung tâm cụm là tối thiểu Các thuật toán như vậy là k-means và k-medoids,
như đã đề cập sơ lược ở phần giới thiệu, là những giải thuật được sử dụng rộng rãi cho việc phân cụm trên nhiều loại dữ liệu khác nhau trong đó có dữ liệu chuỗi thời gian
2.1.2.1 Giải thuật k-means:
Hoạt động dựa trên nguyên tắc trung tâm cụm, tức là đối tượng trung bình của cụm
đó Đầu tiên, chọn k đối tượng ngẫu nhiên làm trung tâm cụm, những đối tượng còn lại được gán vào các cụm mà độ tương tự (similarity distance) với trung tâm cụm là lớn
nhất hay là khoảng cách của chúng tới trung tâm cụm là nhỏ nhất Sau một lượt lặp, các cụm mới (có thể bao gồm các đối tượng mới từ cụm khác) sẽ được sinh ra và các trung tâm cụm sẽ được tính toán lại Cứ thế cho đến khi chất lượng gom cụm không đổi, tức không có sự luân chuyển qua lại giữa các phần tử đối tượng giữa các cụm hoặc giải thuật có thể dừng một cách chủ động sau một số lượt lặp cố định được định sẵn
Ưu điểm: độ phức tạp thấp 𝑂(𝑛𝑘𝑡) với n là số đối tượng, k là số cụm và t là số lần
lặp, do đó khả thi cho các tập dữ liệu lớn
Khuyết điểm: phải xác định trước tham số k Thêm nữa, việc giải thuật dựa trên việc
xác định đối tượng trung bình (centroid), nên dễ bị ảnh hưởng bởi nhiễu (noise), các
Trang 30phần tử dị biệt (outlier) và cực trị cục bộ nên kết quả là kích thước các cụm thường
đồng đều và có dạng siêu cầu Mặt khác, thuật toán k-means khi gom cụm trên loại dữ
liệu chuỗi thời gian thì không phù hợp với độ đo DTW vì việc tính centroid đối với độ đo DTW hết sức phức tạp
Hình 2.9 mô tả quá trình gom cụm của thuật toán k-means, trong hình, các trung
tâm cụm được biểu diễn bởi dấu “+”
Hình 2.9 Quá trình gom cụm dùng k-means, (Nguồn [13])
2.1.2.2 Giải thuật k-medoids:
Như đã đề cập, phiên bản tiêu biểu nhất của phân nhánh này là giải thuật phân hoạch dựa vào Medoids (PAM – Partitioning Around Medoids) Giải thuật hoạt động
bằng cách lấy một đối tượng làm đại diện cho mỗi cụm, là một điểm dữ liệu trong tập dữ liệu mẫu, những đối tượng còn lại sẽ được gán vào các cụm sao cho khoảng cách từ chúng tới đối tượng đại diện cụm đó là nhỏ nhất Sau đó, thuật toán tiến hành xác định
lại trung tâm cụm mới bằng cách tính giá trị E trong công thức dưới đây của từng đối
tượng 𝑝 với đối tượng đại diện (trung tâm cụm) hiện tại của cụm tương ứng như sau:
𝐸 = ∑ ∑ 𝑑(𝑝, 𝑜𝑖)
𝑖=1
Trang 31khác dựa trên hàm chi phí được lặp đi lặp lại cho tới khi kết quả gom cụm không đổi Ngoài ra, ta có thể dừng chương trình sau một số lần lặp đã được định trước
Hình 2.10 mô tả ngắn bốn trường hợp xem xét sự thay thế đối tượng đại diện bằng
các đối tượng khác dùng hàm chi phí E Các đối tượng 𝑜𝑖, 𝑜𝑗 là các đối tượng đại diện các cụm; 𝑜𝑟𝑎𝑛𝑑𝑜𝑚 là đối tượng đại diện mới, được chọn ngẫu nhiên; và p là một đối tượng không phải là đại diện nhóm
Hình 2.10(a): đối tượng p ban đầu được gán cho đối tượng đại diện 𝑜𝑗, sau đó được gán cho 𝑜𝑖 Việc gán lại này dựa trên giá trị hàm chi phí E ở trên
Hình 2.10(b): đối tượng p ban đầu được gán cho đối tượng đại diện 𝑜𝑗, sau đó được gán cho 𝑜𝑟𝑎𝑛𝑑𝑜𝑚
Hình 2.10(c): đối tượng p không thay đổi cụm mới
Hình 2.10(d): đối tượng p ban đầu được gán cho đối tượng đại diện 𝑜𝑖, sau đó được gán lại cho đối tượng đại diện 𝑜𝑟𝑎𝑛𝑑𝑜𝑚
Hình 2.10 Các trường hợp thay thế của giải thuật k-medoids, (Nguồn [13]) Ưu điểm: giảm thiểu sự ảnh hưởng của nhiễu vì mỗi cụm được đại diện bởi phần tử
chính giữa cụm, cũng là đối tượng dữ liệu
Trang 32Khuyết điểm: tương tự k-means, tham số k cũng phải được ước lượng trước và độ
phức tạp của giải thuật giải thuật k-medoids này là 𝑂(𝑘(𝑛 − 𝑘)2) nên hiển nhiên sẽ bị ảnh hưởng bởi kích thước tập dữ liệu đầu vào Và để khắc phục điểm yếu này, một kỹ
thuật dựa trên việc lấy mẫu gọi là CLARA đã được đề xuất sử dụng Theo đề xuất này,
thay vì phải xem xét toàn bộ các đối tượng không là đại diện của tập dữ liệu đầu vào, chúng ta chỉ xem xét trên một tập mẫu ngẫu nhiên nào đó được rút ra từ tập dữ liệu ban đầu và việc lấy mẫu sẽ được thực hiện nhiều lần để cho ra kết quả gom cụm tốt
2.2 Khảo sát các công trình liên quan:
2.2.1 Phương pháp tính giá trị trung bình hình dạng dùng khoảng cách DTW
Hiện nay, đã có một số phương pháp gom cụm dữ liệu chuỗi thời gian dùng khoảng cách DTW bằng giải thuật gom cụm k-means đã được phát triển Tuy nhiên, như đã đề
cập ở phần trước, nhược điểm của k-means đó là phải xác định số cụm k đồng thời phải
tính được giá trị trung tâm cụm thường là giá trị trung bình hình dạng của cụm Do đó, đối với khoảng cách DTW thì khó khăn hơn khi áp dụng cách tính giá trị trung tâm cụm như trong các độ đo không gian Euclid vì độ dài của các chuỗi thời gian khác nhau và khoảng cách DTW thì không tuân theo nguyên tắc bất đẳng thức tam giác Phần tiếp theo, chúng tôi sẽ giới thiệu ba công trình liên quan tới việc tính giá trị trung bình hình dạng dùng cho khoảng cách DTW
2.2.1.1 Phương pháp tính trung bình của Gupta và các đồng sự
Phương pháp này được Gupta và các đồng sự [24] đưa ra vào năm 1996 nhằm giải quyết vấn đề tính trung bình các tín hiệu của não mà được tạo ra bởi các tác động bên
ngoài Ý tưởng của phương pháp đó là cho hai chuỗi thời gian Q và C được định nghĩa như trên với độ dài n và m tương ứng sau khi được áp dụng khoảng cách DTW sẽ cho kết quả là một đường xoắn tối ưu gồm các cặp điểm của Q và C:
Trang 33Từ đó, ta có được hai chuỗi sắp xếp mới 𝑄[𝑖(𝑘)] và 𝐶[𝑗(𝑘)] với 𝑘 = 1,2, … , 𝐾 và
𝑖(𝑘) chỉ được ánh xạ với 𝑗(𝑘) tương ứng trong 𝑤(𝑘) Kế tiếp, ta sử dụng hai chuỗi này để tính giá trị chuỗi trung bình của hai chuỗi thời gian Q và C ban đầu Phương pháp của
Gupta được chia làm hai chiến lược phổ biến đó là cây phân cấp cân bằng (NLAAF1) và cây phân cấp tuần tự (NLAAF2)
Kỹ thuật NLAAF1: giả sử ta có L chuỗi thời gian với L là lũy thừa của 2 thì giá trị chuỗi trung bình của L chuỗi 𝑟𝐿(𝑘) được tính như sau:
𝑟𝐿(𝑘) = (1
2) [𝑟1,𝐿2
(𝑘) + 𝑟𝐿
2+1,𝐿(𝑘)] với 𝑟
1,𝐿2(𝑘) = [1𝐿2
] ∑ 𝑟𝑖(𝑘)
2+1,𝐿(𝑘) = [1𝐿2
] ∑ 𝑟𝑖(𝑘)
Tức là chia L chuỗi thời gian thành hai nửa tập con bằng nhau Cứ tiếp tục phân rã
cho đến khi còn lại hai chuỗi thời gian thì áp dụng giải thuật tính khoảng cách DTW để
tìm hai chuỗi sắp xếp mới và tính giá trị chuỗi trung bình dựa trên hai chuỗi đó rồi lại kết hợp với giá trị chuỗi trung bình của hai chuỗi kế tiếp
Hình 2.11 (a) sẽ minh họa cho quá trình xử lý của kỹ thuật NLAAF1
Kỹ thuật NLAAF2: kỹ thuật này có tính tổng quát cao hơn kỹ thuật NLAAF1 vì số
L chuỗi thời gian không bắt buộc là lũy thừa của 2 mà có thể bất kỳ số nào, lúc này giá trị chuỗi trung bình của L chuỗi là:
𝑟𝐿(𝑘) = (1
𝐿) [𝑟𝐿(𝑘)] + [𝐿−1
𝐿 ][𝑟𝐿−1(𝑘)] với 𝑟𝐿−1(𝑘) = [ 1
𝐿 − 1] ∑ 𝑟𝑖(𝑘)
𝐿−1𝑖=1
Trang 34Tức là giá trị chuỗi trung bình được tính tuần tự bằng cách tính giá trị chuỗi trung bình 𝑟2(𝑘) từ cặp 𝑟1(𝑘) và 𝑟2(𝑘) sau đó kết hợp với 𝑟3(𝑘) để tính được giá trị chuỗi trung bình 𝑟3(𝑘), tiếp tục như vậy cho tới khi tính được 𝑟𝐿(𝑘) từ cặp 𝑟𝐿−1(𝑘) và 𝑟𝐿(𝑘)
Hình 2.11 (b) mô tả quá trình tính toán của kỹ thuật NLAAF2
Hình 2.11: Mô tả hai kỹ thuật tính trung bình của Gupta (Nguồn [24]) Ưu điểm: dễ hiện thực và thời gian tính toán nhanh
Khuyết điểm: độ chính xác của chuỗi trung bình không cao
2.2.1.2 Giải thuật tính trung bình cụm dữ liệu PSA
Nhược điểm của phương pháp tính trung bình của Gupta đó là độ chính xác không
cao đã được chứng minh trong bài báo [25], trong đó đề cập đến việc ghép cặp ngẫu nhiên khi tính trung bình làm ảnh hưởng đến độ chính xác của kết quả Vì vậy,
Niennattrakul V và Ratanamahatana C.A đã đưa ra một phương pháp tính trung bình cải tiến gọi là Prioritized Shape Averaging (PSA) [25] vào năm 2009, giải thuật
này dựa vào gom cụm phân cấp để sắp thứ tự tính trung bình của các chuỗi Ngoài ra, kỹ
thuật này cũng giới thiệu một giải thuật tính trung bình DTW mới gọi là Scaled Dynamic Time Warping (SDTW) mà tăng cường sức mạnh trong việc tính trung bình ở miền
Trang 35Trước hết, chúng tôi sẽ giới thiệu về giải thuật tính trung bình SDTW Giải thuật này cơ bản là dựa vào cách tính trung bình của Gupta nhưng đã có những cải tiến trong
việc co dãn chuỗi thời gian sao cho chuỗi trung bình mong muốn sẽ có hình dạng tương tự với chuỗi có trọng số cao hơn Hàm tính trung bình được định nghĩa:
𝑧𝑘 =𝛼𝑄𝑞𝑖+ 𝛼𝐶𝑐𝑗𝛼𝑄 + 𝛼𝐶
Trong đó, 𝑧𝑘 là giá trị trung bình trong chuỗi trung bình Z, 𝑞𝑖 và 𝑐𝑗 là hai điểm thuộc
hai chuỗi Q và C, 𝛼𝑄 và 𝛼𝐶 là trọng số của hai chuỗi Q và C Giải thuật này hoạt động
dựa vào cơ chế tính trọng số cho mỗi phần tử 𝑤𝑘 trên đường xoắn tối ưu W Để tính trọng
số phù hợp thì các tác giả đã phân loại ra ba trường hợp đó là: khi 𝑤𝑘−1 là (𝑖 − 1, 𝑗)𝑘−1thì giải thuật sẽ sinh ra một trọng số 𝛼𝐶 cho (𝑖, 𝑗)𝑘 , khi 𝑤𝑘−1 là (𝑖, 𝑗 − 1)𝑘−1 thì giải thuật trung bình sẽ sinh ra một trọng số 𝛼𝑄 cho (𝑖, 𝑗)𝑘, ngược lại khi 𝑤𝑘−1 là (𝑖 − 1, 𝑗 − 1)𝑘−1 thì trọng số 𝛼𝑄+𝛼𝐶
2 sẽ được sinh ra cho phần tử (𝑖, 𝑗)𝑘 Sau đó, ta sẽ áp dụng hàm tính trung bình trên để tính chuỗi trung bình mới mà sẽ dài hơn chuỗi gốc cho nên ta phải áp dụng thêm việc thu giảm dữ liệu
Cuối cùng, chúng tôi giới thiệu về mô hình PSA Mô hình này hoạt động trên cơ sở
lấy việc gom cụm phân cấp làm một công cụ giúp sắp xếp thứ tự các chuỗi dữ liệu dùng để tính trung bình Tức là đầu tiên tập dữ liệu sẽ được gom cụm phân cấp theo kiểu từ
dưới lên và sau đó ta sẽ dùng giải thuật SDTW để tính trung bình từng cặp phần tử từ
dưới lên theo cây phân cấp Trọng số của chuỗi trung bình sẽ là số chuỗi mà hình thành nên chuỗi trung bình đó
Hình 2.12 minh họa cho việc áp dụng mô hình PSA Trong đó, giả sử ta có năm
chuỗi thời gian với trọng số ban đầu là 1 Ta tính trung bình chuỗi A và B được chuỗi F với trọng số là 2 Cứ tiếp tục như vậy theo cây phân cấp ta sẽ được chuỗi kết quả I với
trọng số là 5
Trang 36Hình 2.12: Ví dụ minh họa mô hình PSA (Nguồn [25]) Ưu điểm: có độ chính xác cao hơn so với giải thuật của Gupta
Khuyết điểm: độ phức tạp của phương pháp này cao hơn do phải tiến hành gom cụm
phân cấp và tính trọng số cho mỗi phần tử của mỗi chuỗi
2.2.1.3 Giải thuật tính trung bình cụm dữ liệu DBA
Phương pháp trung bình cụm dữ liệu DTW Barycenter Averaging (DBA) được Francois Petitjean và các đồng sự [26] giới thiệu vào năm 2011 trong bối cảnh các giải
pháp tính trung bình cụm trước đó gặp hai vấn đề quan trọng Thứ nhất là việc tính trung bình theo từng cặp chuỗi, bởi vì thứ tự lấy các cặp chuỗi sẽ ảnh hưởng tới kết quả chuỗi trung bình do không có hàm liên kết Đặc biệt khi áp dụng quá trình gom cụm lặp trên toàn bộ dữ liệu sẽ làm cho chất lượng của kết quả bị thay đổi rất nhiều Thứ hai là vấn đề tính giá trị trung bình của chuỗi kết quả, vì việc sử dụng những cách tính giá trị trung bình thô sơ sẽ dẫn đến chuỗi kết quả quá dài và quá chi tiết so với mong muốn Khi quá trình được lặp đi lặp lại nhiều lần sẽ làm cho chuỗi kết quả càng dài và việc tính khoảng
cách DTW càng phức tạp, dẫn đến những vòng lặp sau sẽ lâu hơn làm cho hiệu suất tính
toán bị giảm
Trang 37Từ những vấn đề đó, Francois Petitjean và các đồng sự đã giới thiệu một phương
pháp tính trung bình mới dựa trên cơ sở cung cấp một cách tính trung bình toàn cục, tức là các chuỗi sẽ được tính trung bình cùng với nhau và không cần quan tâm đến thứ tự
các chuỗi, bằng cách tính trọng tâm (barycenter) của tập các điểm trong không gian Euclid Sau đó, họ sẽ tối ưu hóa chuỗi trung bình bằng cách làm giảm độ dài của chuỗi
bằng các phương pháp thu giảm dễ thích nghi hơn
Trước hết, ta sẽ nói về phương pháp tính chuỗi trung bình dựa vào cách tính trọng
tâm các điểm Đầu tiên, với mỗi vòng lặp thì giải thuật DBA trải qua hai bước:
• Tính khoảng cách DTW giữa những chuỗi riêng biệt với chuỗi trung bình tạm thời (thường được khởi tạo một cách tùy ý) để tìm những cặp điểm liên kết của
chuỗi tạm thời đó với tập các chuỗi
• Cập nhật lại các điểm của chuỗi trung bình như là trọng tâm của các điểm trong tập các chuỗi dữ liệu mà liên kết đến điểm đó ở bước trên
Mục đích của việc tính trọng tâm này là để tối thiểu hóa tổng khoảng cách dùng
khoảng cách DTW từ chuỗi trung bình đến tập các chuỗi Tổng khoảng cách này được
tính bằng các khoảng cách đơn giữa điểm của chuỗi trung bình đến điểm của từng chuỗi
riêng biệt liên kết tới điểm đó, mà thực tế là khoảng cách trong không gian Euclid Do
đó, độ phức tạp của giải thuật này là 𝑂(𝐼𝑁𝑇2) với I là số lần lặp, N là tổng số chuỗi trong tập dữ liệu và T là chiều dài chuỗi sẽ nhỏ hơn nhiều so với hai phương pháp đã đề cập ở
trên
Cuối cùng, sau khi đã tính được chuỗi trung bình thì tác giả sẽ áp dụng phương pháp thu giảm cải tiến để tăng độ chính xác của chuỗi Ý tưởng của phương pháp này là hai điểm kế nhau với khoảng cách tối thiểu sẽ được nhập vào chung với nhau thành một điểm, do đó sẽ làm giảm chiều dài của chuỗi trung bình
Ưu điểm: phương pháp có độ chính xác cao hơn và độ phức tạp của giải thuật thấp
hơn so với hai phương pháp trên
Trang 38Khuyết điểm: việc xác định chuỗi trung bình tạm thời ban đầu là một khó khăn vì
chuỗi đó phải đảm bảo vừa đủ ngắn có thể mà vừa đủ dài để thể hiện được dữ liệu một cách hiệu quả
Hình 2.13 minh họa cho quá trình tính chuỗi trung bình C bằng cách điều chỉnh trọng tâm của các chuỗi, ở đây tập dữ liệu gồm hai chuỗi S1 và S2
Hình 2.13: Quá trình tính chuỗi trung bình dựa vào DBA (Nguồn [26])