- Đề xuất một số cải tiến khi hiện thực giải thuật gom cụm dữ liệu chuỗi thời gian với khoảng cách DTW dựa vào một kỹ thuật xấp xỉ và thử nghiệm độ hiệu quả của giải thuật trên một số tậ
Trang 1VĂN THẾ HUY
GOM CỤM DỮ LIỆU CHUỖI THỜI GIAN VỚI ĐỘ
ĐO XOẮN THỜI GIAN ĐỘNG DỰA VÀO MỘT KỸ
THUẬT XẤP XỈ
LUẬN VĂN THẠC SĨ
TP Hồ Chí Minh, tháng 06 năm 2015
Trang 2VĂN THẾ HUY
GOM CỤM DỮ LIỆU CHUỖI THỜI GIAN VỚI ĐỘ
ĐO XOẮN THỜI GIAN ĐỘNG DỰA VÀO MỘT KỸ
Trang 3CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
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 10 tháng 07 năm 2015 Thành phần Hội đồng đánh giá luận văn Thạc sĩ gồm: 1 GS TS CAO HOÀNG TRỤ (CT)………
2 TS VÕ THỊ NGỌC CHÂU (PB1)………
3 PGS TS ĐỖ PHÚC (PB2)………
4 TS HỒ BẢO QUỐC (UV)………
5 TS TRẦN MINH QUANG (TK)………
CHỦ TỊCH HỘI ĐỒNG
(Họ tên và chữ ký)
TRƯỞNG KHOA KH&KT MT
(Họ tên và chữ ký)
GS TS CAO HOÀNG TRỤ
Trang 4ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: VĂN THẾ HUY MSHV: 13070236… Ngày, tháng, năm sinh: 19/11/1990 Nơi sinh: TP.HCM… Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số : 604801……
- Tìm hiểu giải thuật gom cụm với thời gian thực thi tùy chọn
- Đề xuất một số cải tiến khi hiện thực giải thuật gom cụm dữ liệu chuỗi thời gian với khoảng cách DTW dựa vào một kỹ thuật xấp xỉ và thử nghiệm độ hiệu quả của giải thuật trên một số tập dữ liệu mẫu
III NGÀY GIAO NHIỆM VỤ: 19/01/2015
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 14/06/2015
V CÁN BỘ HƯỚNG DẪN: PGS TS DƯƠNG TUẤN ANH
TRƯỞNG KHOA KH&KT MT (Họ tên và chữ ký)
Trang 5LỜ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
Trang 6LỜ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, Thầy đã tận tình hướng dẫn, định hướng 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 cụ thể trong 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
Cuối cùng và trên hết, con cảm ơn gia đình đã động viên và tạo điều kiện tốt nhất để con có thể tiếp tục con đường học tập và 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 Ba Mẹ và cả gia đình
Trang 7TÓM TẮT
Dữ liệu chuỗi thời gian ngày càng 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…, 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 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 nhằm rút trích
ra những đặc trưng, tính chất quan trọng của dữ liệu thành những thông tin bổ ích
Từ nhu cầu đó chúng ta đã đặt ra bài toán làm sao để gom cụm dữ liệu chuỗi thời gian được kết quả chính xác và tốn ít thời gian nhất vì độ đo Euclid dùng để giải quyết bài toán gom cụm dữ liệu chuỗi thời gian thì thiếu sự linh hoạt đồng thời kết quả không chính xác Do đó, nhu cầu áp dụng khoảng cách xoắn thời gian động vào bài toán gom cụm là cấp thiết nhưng với độ phức tạp tính toán cao của khoảng cách này cùng với số lượng dữ liệu chuỗi thời gian ngày càng tăng trong thời đại dữ liệu lớn như hiện nay sẽ làm cho việc gom cụm mất rất nhiều thời gian
Đề 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 dữ liệu chuỗi thời gian với thời gian thực thi tùy chọn dùng khoảng cách xoắn thời gian động dựa trên một kỹ thuật xấp xỉ Chúng tôi sẽ trình bày những đặc điểm nổi bật của giải thuật này đó là đánh đổi giữa thời gian thực thi và kết quả đạt được, cũng như cách áp dụng kỹ thuật khởi tạo trung tâm cụm cho giải thuật gom cụm K-medoids và kỹ thuật lập trình đa luồng vào việc tính khoảng cách xoắn thời gian động vào trong hệ thống này Kết quả thực nghiệm đã cho thấy chất lượng gom cụm tương đối chính xác so với giải thuật gom cụm theo lô (batch algorithm) nhưng đã rút ngắn thời gian đáng kể
Trang 8ABSTRACT
Time series data is increasingly common in most areas such as stock, weather, health, environment ., while demand for knowledge discovery from these data sources is increasing, which is typical for clustering time series data, a process of unsupervised learning to identify valid, novel and potentially useful patterns in data From this need, we have a problem is how to cluster time series data to be more accurate results and take less time because Euclidean measure, which is commonly used to solve the problem of clustering time series data, is the lack of flexibility and gives inaccurate results Therefore, applying dynamic time warping measure into clustering problem is necessary but with the high computational complexity of this measure and the development of big data times make clustering take a lot of time Our thesis will introduce some improvements to anytime clustering algorithm
of time series datasets with dynamic time warping distance using an approximation technique We will present the features of this algorithm that trade execution time for quality of results, as well as how to apply the techniques of initializing the centroids of K-medoids algorithm and multithreaded programming into calculating dynamic time warping measure The experimental results showed that quality of clustering is relatively accurate versus batch algorithm but have significantly reduced execution time
Trang 9MỤ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ơ - 2
1.3 Mục tiêu - 3
1.4 Tóm lược kết quả đạt được - 3
1.5 Cấu trúc của luận văn - 4
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT - 6
2.1 Các độ đo khoảng cách chuỗi thời gian - 6
2.1.1 Các độ đo trong không gian Euclid - 6
2.1.2 Khoảng cách xoắn thời gian động - 7
2.2 Kỹ thuật ràng buộc toàn cục - 12
2.3 Kỹ thuật tính chặn dưới - 13
2.3.1 Phương pháp tính chặn dưới của Kim - 13
2.3.2 Phương pháp tính chặn dưới của Yi - 15
2.3.3 Phương pháp tính chặn dưới của Keogh - 16
2.4 Các giải thuật gom cụm dữ liệu thường sử dụng - 19
2.4.1 Giải thuật gom cụm phân cấp - 19
2.4.2 Giải thuật gom cụm phân hoạch - 21
2.5 Các giải thuật gom cụm dữ liệu chuỗi thời gian - 23
2.6 Các phương pháp chọn số cụm k tối ưu nhất - 25
2.7 Các phương pháp đánh giá chất lượng gom cụm dữ liệu - 25
Trang 10CHƯƠNG 3: CÁC CÔNG TRÌNH LIÊN QUAN - 29
3.1 Phương pháp tính giá trị trung bình hình dạng dùng khoảng cách DTW 29
3.1.1 Phương pháp tính trung bình của Gupta và các đồng sự - 29
3.1.2 Giải thuật tính trung bình cụm dữ liệu PSA - 31
3.1.3 Giải thuật tính trung bình cụm dữ liệu DBA - 33
3.2 Phương pháp gom cụm dữ liệu chuỗi thời gian dựa vào xấp xỉ độ đo xoắn thời gian động - 35
3.2.1 Các giả định - 36
3.2.2 Khung thức gom cụm với thời gian thực thi tùy chọn - 37
3.2.3 Phương pháp xấp xỉ ma trận khoảng cách DTW - 40
3.2.4 Heuristic sắp thứ tự - 44
CHƯƠNG 4: HỆ THỐNG GOM CỤM DỮ LIỆU CHUỖI THỜI GIAN VỚI THỜI GIAN THỰC THI TÙY CHỌN - 47
4.1 Đặt vấn đề - 47
4.2 Hướng giải quyết - 48
4.2.1 Kỹ thuật khởi tạo trung tâm cụm - 48
4.2.2 Kỹ thuật lập trình đa luồng để cải tiến DTW - 50
4.3 Kiến trúc chi tiết hệ thống - 53
CHƯƠNG 5: THỰC NGHIỆM - 58
5.1 Giới thiệu tập dữ liệu mẫu - 58
5.2 Đánh giá thời gian thực thi của kỹ thuật khởi tạo trung tâm cụm - 60
5.3 Đánh giá độ hiệu quả của các phương pháp xấp xỉ ma trận DTW - 63
5.4 Đánh giá thời gian thực thi của kỹ thuật lập trình đa luồng - 65
5.5 Đánh giá kết quả gom cụm và thời gian thực thi của hệ thống - 66
Trang 115.5.1 Đánh giá chất lượng gom cụm của hệ thống - 67
5.5.2 Đánh giá thời gian thực thi của hệ thống - 78
5.6 Kết luận - 78
CHƯƠNG 6: KẾT LUẬN - 80
6.1 Tổng kết - 80
6.2 Những đóng góp của đề tài - 80
6.3 Hướng phát triển - 81
TÀI LIỆU THAM KHẢO - 82 PHỤ LỤC A: BẢNG ĐỐI CHIẾU THUẬT NGỮ ANH – VIỆT - A1
PHỤ LỤC B: LÝ LỊCH TRÍCH NGANG - B1
Trang 12MỤC LỤ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: Sự khác nhau giữa hai độ đo Euclid và DTW - 7
Hình 2.2: Ma trận xoắn và đường xoắn tối ưu - 8
Hình 2.3: Đồ thị biểu diễn hai chuỗi thời gian - 10
Hình 2.4: Ma trận xoắn tính DTW cho hai chuỗi thời gian - 11
Hình 2.5: Ràng buộc toàn cục của độ đo xoắn thời gian động - 13
Hình 2.6: Mô tả kỹ thuật chặn dưới của Kim - 15
Hình 2.7: Mô tả kỹ thuật chặn dưới của Yi - 16
Hình 2.8: Mô tả đường bao U và L của chuỗi Q - 17
Hình 2.9: Mô tả kỹ thuật chặn dưới của Keogh - 18
Hình 2.10: Hai chiến lược gom cụm phân cấp - 19
Hình 2.11: Tiêu chí trộn các cụm - 20
Hình 2.12: Cấu trúc cây của giải thuật gom cụm phân cấp - 21
Hình 2.13: Các trường hợp thay thế của giải thuật K-medoids - 23
Hình 2.14: Quá trình gom cụm dùng K-means - 24
Hình 3.1: Mô tả hai kỹ thuật tính trung bình của Gupta - 31
Hình 3.2: Ví dụ minh họa mô hình PSA - 32
Hình 3.3: Quá trình tính chuỗi trung bình dựa vào DBA - 34
Hình 3.4: Minh họa quá trình rút ngắn độ dài của chuỗi - 35
Hình 3.5: Đánh giá kết quả gom cụm dùng ARI - 37
Hình 3.6: Minh họa giải thuật với thời gian thực thi tùy chọn - 38
Trang 13Hình 3.7: Khoảng cách DTW được bao bởi chặn trên và chặn dưới - 40
Hình 3.8: Các cách ước lượng bằng nhiều điểm - 42
Hình 3.9: Kết quả tính toán theo ba cách LB, DTW và ED - 43
Hình 3.10: Kết quả xác định sự ảnh hưởng của số nhóm - 43
Hình 4.1: Minh họa kỹ thuật cải tiến tốc độ tính toán DTW - 50
Hình 4.2: Kiến trúc hệ thống gom cụm dữ liệu chuỗi thời gian - 53
Hình 4.3: Trực quan hóa kết quả đồ thị - 57
Hình 5.1: Hình minh họa tập dữ liệu Heterogeneous - 59
Hình 5.2: Thời gian thực thi gom cụm trên tập Heterogeneous - 61
Hình 5.3: Thời gian thực thi gom cụm trên tập CC - 62
Hình 5.4: Thời gian thực thi gom cụm trên tập Trace - 63
Hình 5.5: So sánh thời gian tính toán ma trận khoảng cách DTW chính xác - 66
Hình 5.6: Chất lượng gom cụm trên tập CBF - 68
Hình 5.7: Hình minh họa tập dữ liệu CBF - 69
Hình 5.8: Chất lượng gom cụm trên tập FaceFour - 70
Hình 5.9: Chất lượng gom cụm trên tập Heterogeneous - 72
Hình 5.10: Chất lượng gom cụm tập Stock dựa trên hàm mục tiêu - 74
Hình 5.11: Chất lượng gom cụm trên tập CC - 75
Hình 5.12: Chất lượng gom cụm trên tập Trace - 76
Trang 14MỤC LỤC BẢNG
Bảng 5.1: Thời gian thực thi gom cụm trên tập Heterogeneous - 61
Bảng 5.2: Thời gian thực thi gom cụm trên tập CC - 62
Bảng 5.3: Thời gian thực thi gom cụm trên tập Trace - 63
Bảng 5.4: Kết quả NDAE đánh giá các phương pháp xấp xỉ ma trận DTW - 64
Bảng 5.5: Thời gian tính toán các phương pháp xấp xỉ ma trận DTW - 64
Bảng 5.6: So sánh thời gian tính toán ma trận khoảng cách DTW chính xác - 65
Bảng 5.7: Chất lượng gom cụm trên tập CBF - 67
Bảng 5.8: Chất lượng gom cụm trên tập FaceFour - 71
Bảng 5.9: Chất lượng gom cụm trên tập Heterogeneous - 73
Bảng 5.10: Chất lượng gom cụm tập Stock dựa trên hàm mục tiêu - 73
Bảng 5.11: Chất lượng gom cụm trên tập CC - 74
Bảng 5.12: Chất lượng gom cụm trên tập Trace - 77
Bảng 5.13: Kết quả thời gian thực thi trên năm tập dữ liệu - 78
Trang 15CHƯƠ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à nội dung của đề tài
1.1 Giới thiệu vấn đề
Ngày nay, khi các công nghệ máy tính ngày càng phát triển thì nhu cầu thông tin và dữ liệu của con người ngày càng cao Hầu hết các giao dịch kinh doanh, từ dữ liệu về chỉ số chứng khoán hay các giao dịch trong các siêu thị, đều được lưu trữ bằng máy tính Do đó, thách thức đặt ra đó là quá trình khám phá tri thức trong các
tập dữ liệu đó, mà một trong số đó là quá trình gom cụm dữ liệu Gom cụm dữ liệu
(data clustering) là quá trình nhóm các tập đối tượng dữ liệu lại thành các nhóm hay các cụm sao cho các đối tượng trong cùng một cụm có độ tương tự cao nhưng có độ tương tự thấp đối với các đối tượng trong các cụm khác Độ tương tự hay bất tương
tự đó có thể được đánh giá dựa trên các giá trị thuộc tính mô tả đối tượng và thường liên quan tới các độ đo khoảng cách
Mặt khác, các đối tượng dữ liệu hiện nay, như dữ liệu chứng khoán hay thời
tiết, đều vốn dĩ có thêm chiều thời gian đi kèm theo hay còn gọi là dữ liệu chuỗi thời gian (time series data) Việc gom cụm dữ liệu chuỗi thời gian trở thành vấn đề
thách thức cộng đồng khai phá dữ liệu bởi vì những giải thuật gom cụm hiện nay đều được thực hiện với các độ đo trong không gian Euclid Tuy nhiên, các độ đo này đã được chứng minh là ít chính xác và thường cho kết quả không mong muốn trong một số lĩnh vực ứng dụng như dữ liệu đa phương tiện Vì vậy, sự ra đời của
độ đo xoắn thời gian động (Dynamic Time Warping - DTW) đã góp phần giải quyết
vấn đề trên bằng cách cho phép ánh xạ các hình dạng tương tự nhau thậm chí khi các hình dạng đó không còn khớp về trục thời gian
Trang 16Hình 1.1: Ảnh hưởng của độ đo đối với kết quả gom cụm (Nguồn [12])
1.2 Động cơ
Mặc dù sự ra đời DTW đã góp phần giúp 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, nhưng với số lượng dữ liệu ngày càng lớn (hiện nay con người đang bước vào thời đại dữ liệu Big Data) và cách tính khoảng cách DTW bằng phương pháp quy hoạch động phức tạp đã làm cho việc gom cụm với khoảng cách DTW trở nên chậm hơn Chính vì vậy, việc phát triển các kỹ thuật thay thế phần lớn cách tính toán phức tạp của DTW bằng các
cách tính toán chặn dưới (lower bounding) đơn giản và tiết kiệm chi phí hơn đang
trở thành xu hướng hiện nay Tuy nhiên, các kỹ thuật chặn dưới này khó có thể được áp dụng trực tiếp vào gom cụm nên đối với một vài vấn đề thực tế thì gom cụm với DTW vẫn mất thời gian khá lâu
Do đó, trong nghiên cứu này chúng tôi nghiên cứu giải pháp tiến hành gom
cụm với DTW bằng giải thuật gom cụm với thời gian thực thi tùy chọn (anytime
clustering algorithm) tức là đánh đổi giữa thời gian thực thi và chất lượng của kết quả gom cụm, chất lượng gom cụm sẽ được cải thiện với thời gian thực thi
Giải thuật này ra đời trong bối cảnh cả thế giới bước vào thời đại dữ liệu lớn
mà độ phức tạp trong cách tính khoảng cách DTW sẽ là một trở ngại về mặt thời gian để chúng ta có thể đạt được kết quả mong muốn Sự phát triển của kiểu giải
Trang 17thuật này đã đáp ứng được tình hình nhu cầu thực tế đó và đem lại tính mềm dẻo và linh hoạt cho người dùng nhờ vào tính khả dừng của giải thuật, tức là giải thuật có thể dừng bất kỳ lúc nào và có thể cho ra kết quả tốt nhất nếu giải thuật này được phép thực thi lâu hơn hoặc cho đến khi hoàn tất Thời điểm dừng giải thuật sẽ do người dùng quyết định, tùy vào số lượng thời gian mà người dùng cho phép giải thuật thực thi mà kết quả đạt được sẽ đáp ứng được yêu cầu của người dùng
1.3 Mục tiêu
Mục tiêu nghiên cứu của đề tài này trên cơ sở dữ liệu chuỗi thời gian là xây dựng hệ thống gom cụm dữ liệu dựa vào giải thuật gom cụm K-medoids và giải thuật với thời gian thực thi tùy chọn, với các vấn đề chính sau:
Tìm hiểu cách tính xấp xỉ khoảng cách DTW: ưu điểm của DTW đó là
độ chính xác cao so với các độ đo Euclid, nhưng cách tính toán phức tạp và chậm Do đó, đề tài sẽ tìm hiểu các phương pháp tính xấp xỉ khoảng cách DTW
Tìm hiểu giải thuật gom cụm với thời gian thực thi tùy chọn: do việc áp dụng trực tiếp các cách tính xấp xỉ khoảng cách DTW vào giải thuật xử
lý theo lô còn gặp khó khăn vì có thể cho ra kết quả chậm so với mong muốn của người dùng nên đề tài sẽ áp dụng giải thuật gom cụm với thời gian thực thi tùy chọn để đánh đổi giữa chất lượng gom cụm với thời gian thực thi
Đề xuất một số cải tiến khi hiện thực giải thuật gom cụm dữ liệu chuỗi thời gian với khoảng cách DTW dựa vào một kỹ thuật xấp xỉ và thử nghiệm độ hiệu quả của giải thuật trên một số tập dữ liệu mẫu
1.4 Tóm lược kết quả đạt được
Sau một thời gian nghiên cứu và hiện thực, chúng tôi đã đạt được các kết quả tích cực đó là:
Xây dựng được hệ thống gom cụm sử dụng giải thuật gom cụm với thời gian thực thi tùy chọn dùng khoảng cách DTW dựa vào một kỹ thuật xấp xỉ, đánh đổi chất lượng gom cụm với thời gian thực thi, nhưng vẫn
Trang 18cho ra kết quả tương đối chính xác trong thời gian ngắn so với hệ thống gom cụm dữ liệu chuỗi thời gian mà không áp dụng hai phương pháp trên
Đưa vào một kỹ thuật khởi tạo trung tâm cụm cho giải thuật K-medoids nhằm rút ngắn thời gian tính toán
Đề xuất được kỹ thuật lập trình đa luồng kết hợp xử lý song song tác vụ
để giảm thời gian tính toán khoảng cách DTW nhưng vẫn cho kết quả chính xác như cách tính cổ điển
Đư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 khác nhau được áp dụng trong
đề tài này
Cho phép người dùng thực hiện gom cụm với các thông số k khác nhau
và đánh giá kết quả đạt được để chọn trị k tối ưu
Như 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à chúng tôi sẽ trình bày chi tiết ở các phần sau
1.5 Cấu trúc của luận văn
Tổ chức phần còn lại của luận văn gồm những phần như sau:
Chương 2 là các cơ sở lý thuyết mà chúng tôi sử dụng trong nghiên cứu này Chúng 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
Chương 3 để 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 một công trình gom cụm dữ liệu chuỗi thời gian với thời gian thực thi tùy chọn dựa vào cách xấp xỉ khoảng cách DTW
Chương 4 bao gồm nội dung chi tiết thiết kế và hiện thực hệ thống gom cụm với thời gian thực thi tùy chọn
Trang 19Chương 5 trình bày các kết quả thực nghiệm đạt được, qua đó đánh giá chất lượng gom cụm của hệ thống cũng như đánh giá thời gian chạy của giải thuật
Chương 6 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
Trong chương này chúng tôi sẽ trình bày các khái niệm được sử dụng trong đề tài này như là giải thuật tính độ đo xoắn thời gian động, 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
2.1 Các độ đo khoảng cách 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 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à và 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
2.1.1 Các độ đo trong không gian Euclid
Hiện nay, có rất nhiều độ đo khoảng cách đã được sử dụng cho 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 đó các độ đo trong không gian Euclid là đủ khả năng để giải quyết bài toán này Tuy nhiên, vì sự thiếu
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] Sau đây, chúng tôi sẽ giới thiệu một vài độ đo trong không gian Euclid
Trang 21Tùy thuộc vào từng miền ứng dụng mà chúng ta sử dụng độ đo phù hợp nhưng
thông thường độ đo Euclid là đủ tốt và có độ chính xác chấp nhận được để áp dụng
Ngoài ra, các độ đo trên phải thỏa mãn một số tính chất sau [5]:
: khoảng cách phải là số không âm
: khoảng cách từ một đối tượng với chính nó là 0
: khoảng cách là hàm đối xứng
: khoảng cách trực tiếp từ Q
đến C không lớn hơn khoảng cách đi qua các điểm trung gian T khác
Ưu điểm: thời gian tính toán nhanh, có thể áp dụng cho các bài toán khai phá
dữ liệu khác và các độ đo thỏa mãn bất đẳng thức tam giác nên có thể dễ dàng lập
chỉ mục, giảm thời gian tìm kiếm
Khuyết điểm: chỉ áp dụng khi những chuỗi có chiều dài bằng nhau [7], dễ bị
ảnh hưởng bởi nhiễu [24]
2.1.2 Khoảng cách xoắn thời gian động
Việc sử dụng độ đo trong không gian 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: Sự khác nhau giữa hai độ đo Euclid và DTW (Nguồn [12])
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 [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 xếp
giữa hai điểm Đường xoắn W (warping path) được định nghĩa là sự sắp xếp
Trang 22củ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
Hình 2.2: Ma trận xoắn và đường xoắn tối ưu (Nguồn [12])
Chúng ta có thể tính toán được 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:
Trang 23 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ì
với – và –
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ì với – và –
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 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): 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
Tiếp theo, chúng ta sẽ tính toán khoảng cách DTW bằng quy hoạch động dựa vào mối quan hệ đệ quy sau, mà định nghĩa khoảng cách tích lũy của mỗi điểm:
Khoảng cách đó là tổng khoảng cách giữa các phần tử hiện tại với khoảng cách tích lũy nhỏ nhất của các điểm xung quanh Độ đ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ó
Trang 24Hình 2.3: Đồ thị biểu diễn hai chuỗi thời gian
Để 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 2.4 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 đó
Trang 25Hình 2.4: Ma trận xoắn tính DTW cho hai chuỗi thời gian
Trong ma trận xoắn hình 2.4 ở trên thì các ô được tính toán như sau:
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 ô Trong hình trên thì đường xoắn tối ưu là các ô được tô màu
Vậy khoảng cách DTW của hai chuỗi trên là , trong khi khoảng cách Euclid của hai chuỗi trên là
Ư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 chiều dài thời gian khác nhau DTW cũng cho ra kết quả chính xác hơn các độ đo trong không gian Euclid
Trang 26Khuyết điểm: thời gian tính toán lâu và độ phức tạp của DTW là O(nm)
2.2 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 ở trên thì để đả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 thì 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) mà cho phép đường xoắn tiến hành di chuyển mở rộng và gọi là một cửa sổ xoắn (warping window)
Mục đích của ràng buộc toàn cục là tăng tốc độ tính toán khoảng cách DTW vì làm giảm không gian tìm kiếm đường xoắn và điều quan trọng là ngăn trường hợp một phần nhỏ của một chuỗi được ánh xạ vào phần lớn hơn tương ứng của chuỗi khác Hai ràng buộc toàn cục được dùng phổ biến nhất là dải Sakoe-Chiba [23] và hình bình hành Itakura [9]:
- Ràng buộc dải Sakoe-Chiba (Sakoe-Chiba Band)
Ràng buộc này được đề xuất bởi Sakoe và Chiba năm 1978 định nghĩa đường xoắn hợp lệ:
với max m,n m n – 1 và là tập các ô của ma trận xoắn của hai chuỗi thời gian với điều kiện với
là một số nguyên dương cho trước gọi là cửa sổ xoắn
Hình 2.5 bên trái mô tả cửa sổ xoắn ứng với ràng buộc dải Sakoe-Chiba
- Ràng buộc hình bình hành Itakura (Itakura Paralelogram)
Ràng buộc này được đề xuất bởi Itakura năm 1975 cũng định nghĩa đường xoắn hợp lệ được ràng buộc trong một tập con của ma trận xoắn của hai chuỗi thời gian theo hình dạng hình bình hành Cho điểm và điểm tương ứng của hai
chuỗi Q, C thì ràng buộc Itakura phát biểu rằng điểm phải được định nghĩa bởi một hàm biến thiên thời gian theo :
với các điều kiện ràng buộc biên: , và điều kiện liên tục:
–
Trang 27Hình 2.5 bên phải mô tả cửa sổ xoắn ứng với ràng buộc hình bình hành của Itakura
Hình 2.5: Ràng buộc toàn cục của độ đo xoắn thời gian động (Nguồn [12])
2.3 Kỹ thuật tính chặn dưới
Hiện nay, mặc dù việc tính toán DTW cho kết quả tính toán chính xác hơn so với độ đo Euclid nhưng nó đòi hỏi thời gian thực thi rất lớn Do đó, người ta đã phát triển kỹ thuật tính chặn dưới hiệu quả để có thể giảm tải 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
Mục tiêu của kỹ thuật tính chặn dưới đó 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ẽ, tức là một phương pháp có thể xấp xỉ khoảng cách DTW thật một cách gần nhất Phần tiếp theo, chúng tôi sẽ giới thiệu ba
kỹ thuật tính chặn dưới được sử dụng phổ biến là của Kim et al (2001) [14], Yi et
al (1998) [25] và Keogh et al (2002) [12]
2.3.1 Phương pháp tính chặn dưới của Kim
Đây là phương pháp đầu tiên mà hỗ trợ việc tìm kiếm tương tự cũng như lập chỉ mục chính xác mà áp dụng với khoảng cách DTW Mục đích cơ bản của Kim là phát triển một kỹ thuật mà tăng cường hiệu suất tìm kiếm trong một cơ sở dữ liệu lớn mà không cho phép xảy ra sự miễn sai Để thực hiện kỹ thuật này Kim và các đồng sự đã đưa ra một hàm tính khoảng cách mới mà xấp xỉ cận dưới đối với
Trang 28khoảng cách xoắn thời gian và nó thỏa điều kiện của bất đẳng thức tam giác Từ đó,
ta có thể áp dụng giải thuật cho việc lập chỉ mục cũng như tìm kiếm tương tự được
dễ dàng
Hàm tính cận dưới của Kim hoạt động bằng cách rút trích một vector đặc trưng gồm bốn hàng từ một chuỗi dữ liệu thời gian và nó không thay đổi theo thời gian Ngoài ra, Kim cũng sử dụng chuẩn mà có thể giúp người dùng xác định dễ dàng dung sai phù hợp mà không cần quan tâm tới độ dài và chuẩn này có thể tiết kiệm được chi phí tính toán của CPU hơn các chuẩn thông thường vì nó có thể loại
bỏ những chuỗi không đủ tiêu chuẩn sớm hơn Hàm chặn dưới của Kim do đó được định nghĩa như sau:
sự miễn sai so với các kỹ thuật lập chỉ mục thông thường
Khuyết điểm: phương pháp chỉ cho sự rút trích bốn đặc trưng nên không khả thi với việc đánh chỉ mục đa chiều Bên cạnh đó, chỉ một đặc trưng thật sự được dùng trong hàm chặn dưới cho nên chặn dưới ở đây rất là đơn sơ và sẽ xảy ra nhiều lỗi mà tốn nhiều thời gian để đánh giá hơn
Hình 2.6 mô tả kỹ thuật tính chặn dưới của Kim và đồng sự với điểm A và D
là điểm đầu và điểm cuối còn B và C là điểm nhỏ nhất và lớn nhất của chuỗi
Trang 29Hình 2.6: Mô tả kỹ thuật chặn dưới của Kim (Nguồn [12])
2.3.2 Phương pháp tính chặn dưới của Yi
Kỹ thuật chặn dưới của Yi và các đồng sự ra đời trong bối cảnh các kỹ thuật lập chỉ mục dữ liệu chuỗi thời gian bấy giờ chỉ thực hiện trong không gian Euclid với chuẩn nhưng khi áp dụng vào độ đo xoắn thời gian động thì xuất hiện vấn đề
đó là độ phức tạp tính toán lớn và nó không dẫn ra được bất kỳ đặc trưng tự nhiên nào Chính vì vậy, Yi đã phát triển một kỹ thuật đánh chỉ mục xấp xỉ với khoảng cách DTW dùng phương pháp FastMap Phương pháp này ánh xạ một chuỗi có độ
dài n sang một điểm k chiều, bằng một hàm rút trích đặc trưng, và xây dựng một cấu trúc chỉ mục đa chiều trên tập điểm k chiều này Ngoài ra, nó cũng giúp tiết
kiệm được chi phí CPU và truy cập đĩa bằng cách chấp nhận đánh đổi một tỉ lệ nhỏ
độ nhạy cảm
Vì vậy, để khắc phục nhược điểm từ FastMap nên Yi và đồng sự đã giới thiệu một kỹ thuật tính chặn dưới giúp loại bỏ nhanh những lỗi mà FastMap gây ra Hàm chặn dưới của Yi được định nghĩa như sau:
Trang 30
Hình 2.7 mô tả kỹ thuật tính chặn dưới của Yi với phần gạch dọc biểu diễn phần tối thiểu của những điểm tương ứng đóng góp vào khoảng cách DTW nên được xem như giá trị chặn dưới
Hình 2.7: Mô tả kỹ thuật chặn dưới của Yi (Nguồn [12])
Ưu điểm: có thể áp dụng để đánh chỉ mục đa chiều với khoảng cách DTW và tiết kiệm được nhiều chi phí CPU và thời gian truy cập đĩa
Khuyết điểm: kỹ thuật cho phép xảy ra sự miễn sai và độ phức tạp thực tế của
nó là với M là kích thước tập dữ liệu nên không thể áp dụng cho các tập dữ
liệu lớn và những chuỗi dài
2.3.3 Phương pháp tính chặn dưới của Keogh
Mặc dù hai phương pháp trên đã có những cải tiến so với trước nhưng vẫn có nhược điểm là tính chặn dưới của chúng vẫn chưa chặt Do đó, Keogh và các đồng
sự đã phát triển một kỹ thuật tính chặn dưới dựa trên ý tưởng ràng buộc toàn cục mà tiêu biểu là hai trường hợp ràng buộc dải Sakoe-Chiba và hình bình hành Itakura Ràng buộc toàn cục mà Keogh sử dụng đó là cho đường xoắn sao cho với được định nghĩa là phạm vi xoắn cho phép của một điểm trong một chuỗi Trong trường hợp dải Sakoe-Chiba thì độc lập với nhưng đối với hình bình hành Itakura thì là một hàm theo biến
Từ đó, Keogh định nghĩa hai chuỗi U và L tương ứng là chặn trên và chặn
dưới mới như sau:
Trang 31
Vì vậy, chuỗi Q được bao bởi hai đường chặn trên và chặn dưới Ngoài ra,
mặc dù dải Sakoe-Chiba với thông số là độ rộng không thay đổi nhưng khi áp dụng thì đường bao không phải là đường có chiều dày bằng nhau ở mọi thời điểm
Thực tế, đường bao trong trường hợp dải Sakoe-Chiba chỉ rộng hơn khi chuỗi Q có
sự thay đổi nhanh còn sẽ hẹp khi chuỗi Q càng phẳng Hình 2.8 mô tả đường bao U
và L tương ứng với chuỗi Q trong hai trường hợp ràng buộc toàn cục dải
Sakoe-Chiba (hình 2.8A) và hình bình hành Itakura (hình 2.8B)
Hình 2.8: Mô tả đường bao U và L của chuỗi Q (Nguồn [12])
Trước hết, ta quan sát thấy một tính chất quan trọng của hai đường chặn dưới
L và chặn trên U đó là: Từ đó, Keogh xây dựng nên một hàm tính chặn dưới với khoảng cách DTW mới được định nghĩa như sau:
Mục đích của hàm này là xác định khoảng cách Euclid những phần của chuỗi
C mà không nằm trong đường bao của hai đường chặn dưới L và chặn trên U với
Trang 32phần trực giao của đường bao Hình 2.9 sẽ mô tả cho hàm chặn dưới này tương ứng với trường hợp dải Sakoe-Chiba (Hình 2.9A) và hình bình hành Itakura (Hình 2.9B)
Hình 2.9: Mô tả kỹ thuật chặn dưới của Keogh (Nguồn [12])
Giá trị chặn dưới của kỹ thuật Keogh sẽ là tổng khoảng cách bình phương của những phần được gạch dọc trên hình Vì vậy, do độ chặt của đường bao tỷ lệ với số lượng và chiều dài của phần gạch dọc đó nên ta có thể thấy hàm tính chặn dưới trong trường hợp hình bình hành Itakura cho kết quả chặt hơn là dải Sakoe-Chiba và
cả hai trường hợp này cũng chặt hơn là hai kỹ thuật được đề xuất bởi Kim và Yi
Ưu điểm: có thể áp dụng hàm tính chặn dưới vào việc lập chỉ mục chính xác với khoảng cách DTW trong các tập dữ liệu lớn mà vẫn đảm bảo việc không xảy ra miễn sai, kỹ thuật này cho ra kết quả có độ chặt tốt hơn các kỹ thuật trước
Trang 33Khuyết điểm: công thức và quá trình tính toán phức tạp làm giảm tốc độ tính
toán do đó để khắc phục Keogh và các đồng sự đã áp dụng kỹ thuật xấp xỉ gộp từng đoạn (Piecewise aggregate approximation - PAA) mà thu giảm số chiều của các chuỗi U, L, Q, C trước khi tính
2.4 Các giải thuật gom cụm dữ liệu thường sử dụng
Các 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 sẽ đề cập đến các giải thuật phổ biến là gom cụm phân cấp và phân hoạch
2.4.1 Giải thuật gom cụm phân cấp
Mục đích của giải thuật này là nhóm các đối tượng lại với nhau theo từng mức khác nhau vào một cây phân cấp của các cụm Hai chiến lược gom cụm phân cấp phổ biến đó là tổng hợp và phân tách, tức là tổ chức các đối tượng theo kiểu từ dưới lên hay từ trên xuống, đại diện hai chiến lược này là hai giải thuật nổi tiếng AGNES
và DIANA tương ứng, được mô tả trong hình 2.10
Hình 2.10: Hai chiến lược gom cụm phân cấp (Nguồn [6])
Giải thuật AGNES: khởi đầu mỗi đối tượng tạo thành một cụm riêng biệt,
sau đó các cụm được trộn lại theo một tiêu chí nào đó chẳng hạn như liên kết đơn
(single-linkage) tức là hai cụm được trộn lại nếu khoảng cách giữa hai đối tượng từ
Trang 34hai cụm đó là ngắn nhất hay liên kết đầy đủ (complete-linkage) tức là trộn hai cụm
nếu khoảng cách giữa hai đối tượng xa nhất trong hai cụm so với khoảng cách xa nhất của điểm trong cụm đó với điểm của các cụm khác là ngắn nhất Quá trình đó được lặp lại cho đến khi tất cả đối tượng tạo thành một cụm duy nhất Hình 2.11 mô
tả tiêu chí trộn các cụm lại với nhau
Hình 2.11: Tiêu chí trộn các cụm
Giải thuật DIANA: ngược lại với AGNES, khởi đầu mọi đối tượng tạo thành
một cụm duy nhất Sau đó, các cụm được phân tách theo một tiêu chí nào đó đến khi mỗi cụm chỉ còn một đối tượng như khoảng cách lớn nhất giữa các đối tượng gần nhau nhất
Kết quả của giải thuật gom cụm phân cấp sẽ sinh ra một cấu trúc cây gọi là dendrogram Cấu trúc này sẽ cho thấy quá trình trộn hay tách của giải thuật từng bước một Ví dụ hình 2.12 mô tả việc nhóm các đối tượng với mô tả 5 đối tượng ở mức 0 và khi thì đối tượng a và b nhóm lại với nhau, tiếp tục như vậy cho đến khi 5 đối tượng hợp thành một nhóm duy nhất
Trang 35Hình 2.12: Cấu trúc cây của giải thuật gom cụm phân cấp (Nguồn [6])
Ưu điểm: không yêu cầu thông số nhập k (số cụm), có thể tích hợp những kỹ
thuật gom cụm khác vào gom cụm phân cấp (gom cụm nhiều giai đoạn)
Khuyết điểm: phải chọn điểm trộn hay phân tách phù hợp nếu không sẽ làm chất lượng gom cum thấp trong khi không thể quay lui hay hoán đổi đối tượng giữa các cụm Ngoài ra, phương pháp không có khả năng co giãn tốt vì mỗi quyết định trộn hay tách phải kiểm tra đánh giá trên nhiều đối tượng hay cụm
2.4.2 Giải thuật 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à là phiên bản cơ bản nhất của phân tích gom cụm Giải thuật này hoạt động được trước hết phải giả sử số cụm mà các đối tượng có thể được nhóm lại, tức là thông số
k Những cụm được hợp thành từ các đối tượng thỏa điều kiện tối ưu hóa các tiêu
chuẩn phân hoạch mục tiêu như độ đo tương tự dựa vào khoảng cách Giải thuật này gồm hai phương pháp cổ điển nhất là K-means và K-medoids Ở phần này, chúng tôi sẽ chỉ giới thiệu giải thuật K-medoids còn giải thuật K-means chúng tôi sẽ mô tả
ở phần kế tiếp vì hiện nay giải thuật K-means được sử dụng phổ biến với dữ liệu chuỗi thời gian hơn
Giải thuật K-medoids: phiên bản tiêu biểu nhất đó là giải thuật PAM 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, những đối tượng còn lại được gán vào cụm mà khoảng cách từ chúng tới đối tượng đại diện là nhỏ nhất Sau đó, sự phân hoạch được thực hiện bằng cách tối thiểu hóa khoảng cách của một đối tượng với đối tượng đại diện tương ứng bằng công thức sau:
Trang 36
trong đó E là hàm chi phí của tất cả đối tượng trong tập dữ liệu, là đối tượng đại diện tương ứng với cụm Quá trình thay thế đối tượng đại diện bằng đối tượng khá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
Chi tiết giải thuật gom cụm K-medoids (PAM) như sau:
Input: k: số cụm, D: tập dữ liệu gồm n đối tượng
Output: tập đối tượng thuộc k cụm
1 Chọn k đối tượng ngẫu nhiên từ tập D làm đối tượng đại diện
2 repeat
3 Gán các đối tượng còn lại vào cụm có đối tượng đại diện gần
nó nhất
4 Chọn ngẫu nhiên một đối tượng không là đại diện
5 Tính tổng chi phí S cho việc thay thế đối tượng đại diện bởi
đối tượng bằng hàm chi phí E đã đề cập ở trên
6 Nếu thì thay thế đối tượng bằng đối tượng
để tạo nên tập k đối tượng đại diện mới
7 until không thể tối thiểu hóa S được nữa
Hình 2.13 mô tả 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ụ thể, ta giả sử là k đối tượng đại
diện hiện tại, để xác định đối tượng là một sự thay thế tốt cho đối tượng ( thì ta tính khoảng cách từ mọi đối tượng p đến đối tượng đại diện gần nhất của tập và dùng khoảng cách này để cập nhật hàm chi phí
Hình 2.13a và 2.13b cho thấy đối tượng p đang được gán cho đối tượng đại
diện , ta xét xem đối tượng này có thể được gán lại cho đối tượng khác được
Trang 37không miễn là gần nó nhất Vì vậy, hình 2.13a và 2.13b cho thấy đối tượng p được
gán lại cho đối tượng và tương ứng vì nó gần hơn so với đối tượng
Ngoài ra, hình 2.13c và hình 2.13d cho thấy đối tượng p đang được gán cho
đối tượng đại diện trong khi ta đang xem xét thay thế đối tượng đại diện bằng đối tượng đại diện Hình 2.13c thể hiện đối tượng p vẫn được gán cho vì
nó vẫn gần hơn Trong khi đó hình 2.13d thì ngược lại vì đối tượng p
gần hơn
Hình 2.13: Các trường hợp thay thế của giải thuật K-medoids (Nguồn [6])
Ư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
Khuyết điểm: số cụm k phải được xác định trước và độ phức tạp của giải thuật
là nên giải thuật bị ảnh hưởng bởi kích thước tập dữ liệu Để khắc phục điểm yếu về độ phức tạp, người ta đã phát triển một kỹ thuật dựa trên việc lấy mẫu gọi là CLARA Giải thuật này thay thế việc phải xem xét toàn bộ các đối tượng không là đại diện bằng việc chỉ phải xem xét trên một tập mẫu ngẫu nhiên được rút
ra từ tập dữ liệu ban đầu và việc lấy mẫu được thực hiện nhiều lần sau đó cho ra kết quả gom cụm tốt nhất
2.5 Các giải thuật gom cụm dữ liệu chuỗi thời gian
Hiện nay, có rất nhiều giải thuật và phương pháp để gom cụm dữ liệu chuỗi thời gian như áp dụng phương pháp PCA thu giảm chiều và kết hợp giải thuật gom cụm phân cấp để gom cụm dữ liệu [3] hay gom cụm dữ liệu dựa trên các đặc trưng
Trang 38[26], nhưng giải thuật K-means hay những giải thuật cải tiến của nó [15] vẫn được
sử dụng rộng rãi và phổ biến nhờ tính đơn giản của nó
Giải thuật K-means: giải thuật này 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 đó Tương tự K-medoids, đầu tiên chọn lấy 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ự 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 Với mỗi đối tượng được gán thêm vào cụm thì trung tâm cụm mới sẽ được tính lại bằng các đối tượng đã được gán cho cụm đó và sử dụng trung tâm cụm mới đó cho đối tượng tiếp theo Giải thuật tiếp tục cho đến khi hết tập dữ liệu và sau đó gán lại các đối tượng với trung tâm cụm mới Cứ như thế cho đến khi chất lượng gom cụm không đổi hoặc ta có thể dừng sau một số lần lặp
Ưu điểm: độ phức tạp nhỏ với n là số đối tượng, k là số cụm và t là số lần lặp, do đó thích hợp với các tập dữ liệu lớn
Khuyết điểm: phải xác định số cụm k trước, việc xác định đối tượng trung
bình cũng phức tạp hơn đối với khoảng cách DTW Ngoài ra, giải thuật bị ảnh hưởng bởi nhiễu 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
Hình 2.14 mô tả quá trình thực hiện giải thuật K-means để gom cụm dữ liệu với trung tâm cụm được biểu diễn bởi một dấu “+”
Hình 2.14: Quá trình gom cụm dùng K-means (Nguồn [6])
Trang 392.6 Các phương pháp chọn số cụm k tối ưu nhất
Các giải thuật gom cụm phân hoạch như K-means hay K-medoids thường phải
xác định trước số cụm k Do đó, chất lượng của kết quả gom cụm sẽ bị ảnh hưởng lớn bởi hằng số k này Vì vậy, Oliveira J.V và Pedrycz W [18] đã khảo sát các phương pháp chọn số cụm k sao cho hiệu quả thường được sử dụng nhất
Phương pháp thứ nhất: tiến hành gom cụm với các giá trị k khác nhau Sau đó,
ta sử dụng các độ đo chất lượng để đánh giá kết quả đạt được từ các giá trị k đó và chọn ra trị k tối ưu nhất Phương pháp này có thể tiến hành theo hai hướng sau:
Định nghĩa trước một hàm đánh giá chất lượng để đánh giá một gom
cụm Ước lượng một cận trên max k của số cụm, tiến hành gom cụm lần
lượt các giá trị Với mỗi kết quả gom cụm, hàm
đánh giá sẽ cho ra kết quả và lựa chọn giá trị k tối ưu nhất
Định nghĩa trước một hàm đánh giá chất lượng để đánh giá các cụm
riêng biệt của một gom cụm Ước lượng max k và tiến hành gom cụm với số cụm là max k Các cụm kết quả được so sánh với nhau, nếu
tương tự nhau sẽ được hợp lại, loại bỏ các cụm kém chất lượng Tiến trình cắt giảm số cụm sẽ được lặp lại cho đến khi không còn cụm kém chất lượng nào
Phương pháp thứ hai: đầu tiên gom cụm với số cụm đủ lớn, sau đó tiến hành trộn các cụm tương tự lại dựa theo các tiêu chí đã định nghĩa trước
Tuy nhiên, gom cụm dữ liệu chuỗi thời gian thường có độ phức tạp tính toán cao và việc tính độ tương tự giữa các cụm tốn kém nên cách thứ nhất của phương
pháp đầu tiên thường được áp dụng, gom cụm theo một dãy giá trị k và dùng các độ
đo chất lượng để đánh giá kết quả đạt được
2.7 Các phương pháp đánh giá chất lượng gom cụm dữ liệu
Đánh giá chất lượng gom cụm dữ liệu là một công việc quan trọng nhằm xác định chất lượng của kết quả gom cụm mang lại để từ đó tiến hành điều chỉnh và lựa chọn vì gom cụm là một quá trình học không giám sát Thông thường ta hay sử dụng hai phương pháp đánh giá phổ biến là đánh giá nội và đánh giá ngoại Ngoài
ra, ta còn có cách đánh giá tương đối đó là đánh giá kết quả gom cụm bằng việc so
Trang 40sánh các kết quả gom cụm khác ứng với các bộ trị thông số khác nhau Các phương
pháp này đều dựa trên hai tiêu chí đó là độ nén (compactness) các đối tượng trong cụm nên gần nhau và độ phân tách (separation) các cụm nên xa nhau
Đánh giá nội (internal validation): đánh giá kết quả gom cụm theo chính tập
dữ liệu, dùng cho các dữ liệu hoàn toàn ngẫu nhiên và ta không biết một đối tượng
thuộc cụm nào Ta thường dùng một hàm mục tiêu (objective function) để đánh giá
chất lượng và hàm mục tiêu thường sử dụng đó là tổng sai khác các phần tử trong cụm đến trung tâm cụm đó đối với tất cả các cụm [15] Cực tiểu của hàm này sẽ cho phương pháp gom cụm tốt nhất có thể
Đánh giá ngoại (external validation): đánh giá kết quả gom cụm dựa vào cấu
trúc được chỉ định trước cho tập dữ liệu Trong đề tài này, ta sẽ sử dụng các phương
pháp đánh giá như chỉ số Rand, Adjusted Rand Index (ARI), Jaccard, Fowlkes và Mallow (FM), Cluster Similarity Measure (CSM), Normalized Mutual Information
(NMI)
Giả sử dữ liệu có M cụm Gọi là các cụm thực sự mà ta đã biết trước và là các cụm kết quả do giải thuật sinh ra Gọi D là tập dữ liệu ban đầu và với mọi cặp dữ liệu trong D ta tính các thông số sau:
a: là số cặp dữ liệu đồng thời thuộc một cụm trong G và cũng thuộc một cụm trong A
b: là số cặp dữ liệu đồng thời thuộc một cụm trong G nhưng khác cụm trong A
c: là số cặp dữ liệu đồng thời thuộc một cụm trong A nhưng khác cụm trong G
d: là số cặp dữ liệu đồng thời không thuộc cụm trong A và G
Dưới đây là các công thức đánh giá của các phương pháp trên và có giá trị trong đoạn , càng đến gần 1 thì A và G càng giống nhau, giải thuật cho kết quả gom cụm tốt và ngược lại