- Đề xuất mô hình gom cụm dữ liệu chuỗi thời gian dựa trên giải thuật Density Peak với độ đo Euclid và tăng tốc độ thông qua việc cắt tỉa tính toán lân cận gần nhất từ danh sách mật độ c
TỔNG QUAN VỀ ĐỀ TÀI
Đ ỐI TƢỢNG NGHIÊN CỨU
Dữ liệu chuỗi thời gian (Time Series) là một dãy các điểm dữ liệu đƣợc liệt kê theo thứ tự thời gian Thông thường, mỗi điểm dữ liệu được thu thập tại những thời điểm cách đều nhau
Dữ liệu chuỗi thời gian có thể đƣợc biểu diễn nhƣ sau: Một chuỗi thời gian T là chuỗi trị số thực, mỗi trị số biểu diễn một giá trị đo tại những thời điểm cách đều nhau: T = t 1 , t 2 , , t n Hơn nữa, một chuỗi thời gian có thể đƣợc xem nhƣ là một đối tƣợng nhiều chiều trong không gian metric
Dữ liệu chuỗi thời gian phổ biến ở rất nhiều lĩnh vực nhƣ kỹ thuật, tài chính, kinh tế, y khoa, sinh học, địa lý, khí tƣợng thủy văn, Ví dụ: giá đóng cửa hàng ngày của một cổ phiếu trên thị trường chứng khoán, dữ liệu về lượng mưa hàng tháng tại một khu vực, Hình 1.1 dưới đây trình bày đường biểu diễn một chuỗi thời gian
Hình 1.1 Đường biểu diễn một chuỗi thời gian ECG
1.1.2 Khai phá dữ liệu chuỗi thời gian
Việc khai phá dữ liệu chuỗi thời gian đã và hiện thu hút rất nhiều sự nghiên cứu trên thế giới Dữ liệu chuỗi thời gian xuất hiện rất nhiều trong các lĩnh vực trong công nghệ hiện nay, cụ thể là một số lĩnh vực nghiên cứu sau:
Lập chỉ mục (Indexing): cho một chuỗi thời gian truy vấn Q, và một hàm tính độ tương tự hoặc độ sai biệt D(Q,C), tìm những chuỗi thời gian tương tự nhất với Q trong cơ sở dữ liệu nào đó
Gom cụm (Clustering): tìm những sự phân nhóm, gom cụm dữ liệu theo tự nhiên của những chuỗi thời gian trong cơ sở dữ liệu thông qua một hàm tính độ tương tự D(Q,C)
Phân lớp (Classification): cho một dữ liệu chuỗi thời gian chƣa gán nhóm Q, gán nó vào một trong những nhóm dữ liệu đã được định nghĩa trước
Tổng hợp (Summarization): cho chuỗi thời gian Q có n điểm dữ liệu trong đó n là con số rất lớn, tạo một sự xấp xỉ của Q để vừa khít theo một giới hạn nào đó (chẳng hạn màn hình máy tính, trang giấy…) sao cho vẫn duy trì những đặc trƣng bản chất của nó
Phát hiện bất thường (Abnormaly detection): cho một chuỗi thời gian Q,
Khai phá bất thường (anomaly) là tìm một chuỗi con khác biệt nhất với tất cả các chuỗi con khác trong dữ liệu chuỗi thời gian
Phát hiện Motif ( Motif detection ) cho một chuỗi thời gian Q, Motif là chuỗi con chưa biết trước xuất hiện nhiều lần trong một chuỗi dữ liệu chuỗi thời gian dài hơn Khái niệm này đƣợc tổng quát hóa thành bài toán tìm kiếm k- motif, với kết quả cần tìm là k nhóm motif đầu tiên Phát hiện motif trong dữ liệu chuỗi thời gian là một công việc quan trọng trong khai phá dữ liệu chuỗi thời gian
Gom cụm (clustering) là một kỹ thuật trong lĩnh vực khai phá dữ liệu, nhằm tìm kiếm, phát hiện các cụm, các mẫu dữ liệu tự nhiên, tiềm ẩn và quan trọng trong tập dữ liệu lớn để từ đó cung cấp thông tin, tri thức cho việc ra quyết định
3 Có rất nhiều định nghĩa khác nhau về kỹ thuật gom cụm, nhƣng về bản chất, đó là một quá trình tìm cách gom, nhóm các đối tƣợng, các loại dữ liệu không có nhãn (unlabelled data) đã cho vào các cụm (cluster), sao cho các đối tƣợng trong cùng một cụm thì tương tự nhau (similar) và các đối tƣợng khác cụm thì không tương tự (dissimilar) hay sai biệt nhau [25], nhƣ hình 1.2
Hình 1.2 Quá trình gom cụm
B ÀI TOÁN GOM CỤM TRONG DỮ LIỆU CHUỖI THỜI GIAN
Việc gom cụm dữ liệu chuỗi thời gian cũng có cách thức và mục tiêu tương tự nhƣ bài toán gom cụm dữ liệu tổng quát bên trên, tức là: phân nhóm dữ liệu chuỗi thời gian dựa vào một độ đo tương tự hay độ đo khoảng cách nào đó Đầu tiên, lựa chọn một độ đo tương tự thích hợp, rồi dùng các kỹ thuật như K-means, gom cụm phân cấp, v.v để tìm các cấu trúc cụm
Mặc dù đã và đang có rất nhiều nghiên cứu về gom cụm nói chung, tuy nhiên hầu hết các giải thuật khai phá dữ liệu và máy học cổ điển đều không làm việc tốt trên chuỗi thời gian do bởi cấu trúc độc đáo của chúng Đặc biệt: số chiều nhiều, độ tương quan giữa các đặc tính rất cao, và số lượng nhiễu lớn, góp phần làm cho việc khai phá chuỗi thời gian là một thách thức khó khăn
Đ ỘNG CƠ
Bài toán gom cụm dữ liệu chuỗi thời gian đã và đang đƣợc sự quan tâm rất lớn trong cộng đồng nghiên cứu, rất nhiều bài báo nghiên cứu, các phương pháp thực hiện đã được đề xuất Các phương pháp này rất hữu ích trong việc tóm lược và trực quan hóa các tập dữ liệu lớn Ngoài ra, gom cụm thường được dùng như là một quá trình phụ trong các các giải thuật khai phá dữ liệu khác như là tìm kiếm tương tự, phân lớp và khai phá luật kết hợp
Dựa trên ý tưởng của Rodriguez và Laio [1] được đề xuất năm 2014 về việc gom cụm dữ liệu dựa vào các điểm cực đại mật độ (density peaks) để áp dụng vào bài toán gọm cụm dữ liệu trên chuỗi thời gian Thuật giải gom cụm dựa vào các điểm cực đại mật độ đƣợc áp dụng để bỏ qua các dữ liệu bằng cách xử lý các bộ dữ liệu theo cụm với hình dạng tùy ý Nhiều thuật giải gom cụm yêu cầu người sử dụng thiết lập nhiều thông số nhƣng thuật giải gom cụm dựa vào điểm cực đại mật độ chỉ cần hai tham số Hơn nữa giải thuật lại mang tính trực quan và đặc biệt không khó sử dụng
Gom cụm dữ liệu dựa vào các điểm cực đại mật độ cho kết quả cụm với hình dạng tùy ý mà các giải thuật nổi tiếng nhƣ K-means và K-mediods không giải quyết đƣợc.
M ỤC TIÊU
Mục tiêu nghiên cứu của đề tài trên cơ sở dữ liệu chuỗi thời gian là nghiên cứu giải pháp gom cụm dữ liệu chuỗi thời gian dựa trên các điểm cực đại mật độ với các nội dung sau:
Tìm hiểu giải thuật gom cụm dựa vào các điểm cực đại mật độ áp dụng trong việc gom cụm dữ liệu chuỗi thời gian
Đề xuất mô hình gom cụm dựa trên các điểm cực đại mật độ với độ đo Euclid, cách ƣớc lƣợng điểm mật độ và tăng tốc độ thực thi thông qua việc cắt tỉa tính toán lân cận gần nhất từ danh sách mật độ cao hơn
Trực quan hóa kết quả gom cụm dữ liệu chuỗi thời gian.
P HƯƠNG PHÁP NGHIÊN CỨU
- Tìm hiểu về giải thuật gom cụm dựa vào các điểm cực đại mật độ, sau đó áp dụng giải thuật này lên đối tƣợng dữ liệu chuỗi thời gian
5 - Tìm hiểu độ đo Euclid để áp dụng vào giải thuật gom cụm dựa vào các điểm cực đại mật độ
- Tìm hiểu các phương pháp tính toán mật độ và thực nghiệm việc gom cụm dựa vào các điểm cực đại mật độ trên các bộ dữ liệu mẫu.
Ý NGHĨA CỦA ĐỀ TÀI
Giải thuật gom cụm dựa vào các điểm cực đại mật độ ra đời năm 2014, mở đầu cho bước đột phá mới trong lĩnh vực khai phá dữ liệu Đề tài vận dụng các kiến thức cơ bản và những vấn đề cần lưu ý trong giải thuật này, đặc biệt việc áp dụng giải thuật trực tiếp trên dữ liệu chuỗi thời gian mang lại tính thực tế cao cho đề tài.
N HỮNG KẾT QUẢ ĐẠT ĐƢỢC CỦA LUẬN VĂN
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 dữ liệu chuỗi thời gian dựa vào các điểm cực đại mật độ với độ đo Euclid
- Tính khoảng cách giới hạn d c dùng làm tham số đầu vào của giải thuật gom cụm các điểm mật độ cực đại
- Tăng tốc độ thực thi thông qua việc cắt tỉa tính toán khoảng cách lân cận gần nhất từ danh sách mật độ cao hơn
- Kết quả của toàn bộ quá trình này, các cụm dữ liệu đƣợc tạo ra một cách ổn định, các tiêu chí đánh giá chất lƣợng gom cụm cho thấy các chỉ số đánh giá khá tốt so với với các phương pháp gom cụm truyền thống.
C ẤU TRÚC LUẬN VĂN
Tổ chức của phần còn lại của luận văn gồm những phần 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 Phần này sẽ trình bày lý thuyết về độ đo khoảng cách, các tiêu chí đánh giá kết quả gom cụm
Chương 3 là tổng quan về các công trình có liên quan Phần này trình bày về các nghiên cứu về gom cụm chuỗi thời gian
6 Chương 4 trình bày về hệ thống gom cụm dữ liệu chuỗi thời gian của chúng tôi
Chương 5 trình bày các kết quả thực nghiệm trên các tập dữ liệu chuỗi thời gian, qua đó đánh giá kết quả đạt đƣợc so với giải thuật k-Means truyền thống
Chương 6 gồm một số kết luận, đóng góp của đề tài và hướng phát triển
CƠ SỞ LÝ THUYẾT
C ÁC ĐỘ ĐO KHOẢNG CÁCH CHUỖI THỜI GIAN
Để giải quyết 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 mà kiểu dữ liệu đƣợc biểu diễn thành một chuỗi các số thực, chúng 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ử hai chuỗi thời gian và với các độ dài n và m tương ứng là và Chúng ta cần xác định độ đo khoảng cách ( ) của hai chuỗi thời gian này
2.1.1 Các độ đo trong không gian Euclid Độ đo trong không gian Euclid đƣợc sử dụng phổ biến trong gom cụm dữ liệu vì tính dễ hiểu, hiện thực đơn giản, tốc độ hội tụ nhanh và khả năng đáp ứng với dữ liệu thƣa thớt 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, trong đó độ đo trong không gian Euclid là đủ khả năng để giải quyết bài toán này Sau đây, chúng tôi sẽ giới thiệu một vài độ đo trong không gian Euclid Độ đo Euclid: ( ) √∑ (| |) Độ đo Manhattan: ( ) ∑ (| |) Độ đo Minkowski: ( ) √∑ (| |) Độ đo Chebyshev:
Tù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 [10]:
8 - ( ) : khoảng cách phải là số không âm
- ( ) : khoảng cách từ một đối tƣợng tớ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ừ tới không lớn hơn khoảng cách đi qua các điểm trung gian 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 [11], dễ bị ảnh hưởng bởi nhiễu [12]
2.1.2 Độ đo xoắn thời gian động
Trong trường hợp 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, độ đo xoắn thời gian động sẽ cho kết quả chính xác hơn độ đo Euclid vì cách ánh xạ điểm thứ của chuỗi này với điểm thứ của chuỗi khác sẽ cho kết quả khác nhau (hình 2.1)
Hình 2.1 (a) Tính khoảng cách theo Euclid (b) tính khoảng cách theo DTW
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 [22] Để sắp xếp đươc hai chuỗi này, chúng ta phải xây dựng ma trận 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 (warping path) đƣợc định nghĩa là sự sắp xếp của những phần tử trong hai chuỗi và , tức là ánh xạ giữa và Từ đó, chúng ta có với ( ) và ( ) (hình 2.2)
Do đó, chúng ta sẽ tìm được nhiều đường xoắn khác nhau nhưng chúng ta chỉ quan tâm tới đường xoắn mà làm tối thiểu hóa chi phí xoắn nhất:
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:
- 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:
Hình 2.2 Ma trận xoắn và đường xoắn tối ưu [16]
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ó độ dài bằng nhau
Chi tiết giải thuật tính khoảng cách DTW nhƣ sau:
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 (đƣợc biểu diễn đồ thị bằng hình 2.3):
Hì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 đó
Trong ma trận xoắn hình 2.4 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: Phương pháp DTW có ưu điểm là cho kết quả chính xác hơn so với độ đo Euclid và cho phép nhận dạng mẫu có hình dạng giống nhau nhƣng chiều dài hình dạng về thời gian có thể khác nhau
B ÀI TOÁN GOM CỤM TRONG DỮ LIỆU CHUỖI THỜI GIAN
Gom cụm dữ liệu chuỗi thời gian là một tiến trình rất quan trọng trong quá trình cô đọng và tổng quát hóa dữ liệu Gom cụm tương tự như phân lớp ở chỗ phân loại dữ liệu vào các nhóm Tuy nhiên, các nhóm này không được định nghĩa trước, mà được định nghĩa bằng bản thân dữ liệu, dựa trên sự tương tự giữa các chuỗi thời gian Gom cụm thường được xem như việc học không giám sát, dựa trên việc quyết định sự tương tự giữa các dữ liệu ở một số thuộc tính định nghĩa trước Những dữ liệu tương tự nhau nhất được nhóm vào các cụm, nhưng các cụm đó phải rất khác biệt nhau
Nhu cầu sử dụng kỹ thuật thu giảm số chiều xuất phát từ việc dữ liệu chuỗi thời gian thường cực kỳ lớn và do đó tìm kiếm trực tiếp trên những dữ liệu này sẽ rất phức tạp và không hữu hiệu Việc thu giảm số chiều của dữ liệu dẫn tới biểu diễn dữ liệu chuỗi thời gian thành các dạng khác Sau đó, ta sẽ xây dựng các giải thuật tính toán, phân tích trên các dạng biểu diễn này
Hình 2.5 Minh họa gom cụm dữ liệu chuỗi thời gian
Mục tiêu của gom cụm dữ liệu là để xác định các nhóm nội tại bên trong một bộ dữ liệu không có nhãn Tuy nhiên, không thể xác định tiêu chí nào đƣợc xem là tốt nhất để đánh giá hiệu quả của việc gom cụm Có thể thấy, người thực hiện cần xác định tiêu chí theo mục đích của việc gom cụm để cho kết quả cuối cùng phù hợp với nhu cầu của họ Ví dụ: cần tìm các đại diện cho các nhóm đồng dạng trong bài toán thu giảm dữ liệu, hay tìm các đối tượng dữ liệu khác thường trong bài toán phát hiện đối tƣợng ngoại biên
Trong quá trình gom cụm, ta quan tâm đến việc nên tạo ra bao nhiêu cụm, mỗi cụm nên có bao nhiêu phần tử Số lƣợng cụm và số lƣợng phần tử trong cụm phụ thuộc vào quan điểm gom cụm và tiêu chí so sánh độ tương tự của các đối tượng trong nhóm (hình 2.6)
Hình 2.6 Ví dụ gom cụm nhìn từ nhiều tiêu chí khác nhau
Gom cụm dữ liệu có thể ứng dụng trong nhiều lĩnh vực nhƣ:
14 - Thương mại: tìm kiếm nhóm các khách hàng quan trọng dựa vào các đặc trưng tương đồng và những đặc tả của họ trong các bản ghi mua bán của cơ sở dữ liệu;
- Sinh học: phân loại động, thực vật qua các chức năng gen tương đồng của chúng;
- Thư viện: phân loại các cụm sách có nội dung và ý nghĩa tương đồng nhau để cung cấp cho độc giả, cũng nhƣ đặt hàng với nhà cung cấp;
- Bảo hiểm: nhận dạng nhóm tham gia bảo hiểm có chi phí yêu cầu bồi thường trung bình cao, xác định gian lận trong bảo hiểm thông qua các mẫu cá biệt;
- Quy hoạch đô thị: nhận dạng các nhóm nhà theo kiểu, vị trí địa lí, giá trị nhằm cung cấp thông tin cho quy hoạch đô thị;
- Nghiên cứu địa chấn: gom cụm để theo dõi các tâm động đất nhằm cung cấp thông tin cho việc nhận dạng các vùng nguy hiểm;
- WWW: tài liệu phân loại, gom cụm dữ liệu weblog để khám phá các cụm về các hình thức tiếp cận tương tự, trợ giúp cho việc khai phá thông tin từ dữ liệu
Một số yêu cầu tiêu biểu đối với kỹ thuật gom cụm dữ liệu [10]:
- Khả năng thích nghi với quy mô dữ liệu (scalability)
- Khả năng xử lý nhiều kiểu thuộc tính khác nhau (different types of attributes)
- Khả năng khám phá các cụm với hình dạng tùy ý (clusters with arbitrary shape)
- Tối thiểu hóa yêu cầu về tri thức miền ứng dụng trong việc xác định các thông số nhập (domain knowledge for input parameters)
- Khả năng xử lý dữ liệu có nhiễu (noisy data)
- Khả năng gom cụm gia tăng và độc lập với thứ tự của dữ liệu nhập (incremental clustering and insensitivity to the order of input records)
- Khả năng xử lý dữ liệu có số chiều cao (high dimensionality)
- Khả năng gom cụm dựa trên ràng buộc (constraint-based clustering)
- Khả diễn giải và khả dụng (interpretability and usability)
Các kỹ thuật gom cụm có rất nhiều cách tiếp cận và các ứng dụng trong thực tế, nó đều hướng tới hai mục tiêu chung đó là chất lượng của các cụm khám phá được và tốc độ thực hiện của thuật toán Hiện nay, các kỹ thuật gom cụm có thể phân loại
15 theo các phương pháp tiếp cận chính như sau: gom cụm phân họach (Partitioning
Methods); gom cụm phân cấp (Hierarchical Methods); gom cụm dựa trên mô hình (Model-Based Clustering Methods), gom cụm dựa trên mật độ (Density-Based
Methods); gom cụm dựa trên lưới (Grid-Based Methods); và gom cụm có dữ liệu ràng buộc (Binding data Clustering Methods)
Các phương pháp gom cụm truyền thống, hầu hết làm việc với loại dữ liệu thông thường (ordinary data), là loại dữ liệu có các giá trị thuộc tính không thay đổi theo thời gian hoặc thay đổi không đáng kể Không giống nhƣ các loại dữ liệu thông thường, dữ liệu chuỗi thời gian có các đặc trưng mang các giá trị thay đổi theo thời gian Các giải thuật gom cụm thực hiện trên dữ liệu chuỗi thời gian, về cơ bản cũng đòi hỏi các thành phần chính: giải thuật thực hiện gom cụm dữ liệu; độ đo tương tự trên dữ liệu cần gom cụm; tiêu chí đánh giá hiệu quả quá trình gom cụm.
C ÁC TIÊU CHÍ ĐÁNH GIÁ GOM CỤM
Gom cụm dữ liệu là quá trình học không giám sát thường trong điều kiện thiếu thông tin vì vậy cần phải thực hiện thao tác đánh giá kết quả gom cụm, đánh giá kết quả gom cụm đƣợc xem là một nhiệm vụ quan trọng về các phân hoạch thực sự của dữ liệu [15] Phương pháp đánh giá có thể phân loại: đánh giá ngoại, đánh giá nội
Phương pháp đánh giá ngoại là phương pháp được sử dụng phổ biến nhất, sử dụng các tập dữ liệu đã được phân lớp và so sánh mức độ tương thích của các kết quả gom cụm với các nhãn lớp đã có của dữ liệu Một số tiêu chí đánh giá chất lượng có thể sử dụng: Jaccard, Rand, FM, CSM, NMI, sẽ được định nghĩa dưới đây
Xét G = G 1 , G 2 , , G M là các cụm từ một tập dữ liệu đã đƣợc phân lớp, và A =
A 1 , A 2 , , A M là các kết quả gom cụm từ một giải thuật gom cụm nào đó mà ta cần đánh giá Gọi D là tập dữ liệu của các mẫu dữ liệu cần xử lý Đối với tất cả các cặp mẫu (D i ,D j ) trong D, chúng ta thực hiện đếm các giá trị mô tả nhƣ sau:
- a là số lƣợng các cặp, trong đó mỗi mẫu đều thuộc về một cụm trong G, và cũng đều thuộc về một cụm trong A
- b là số lƣợng các cặp, trong đó mỗi mẫu đều thuộc về một cụm trong G, nhƣng không thuộc về cùng một cụm trong A
- c là số lƣợng các cặp, trong đó mỗi mẫu đều thuộc về một cụm trong A, nhƣng không thuộc về cùng một cụm trong G
- d là số lƣợng các cặp, trong đó các mẫu không thuộc về cùng một cụm trong A, cũng không thuộc về một cụm trong G
16 Tiêu chí đánh giá kết quả gom cụm, dùng các thông số trên, đƣợc định nghĩa theo sau:
Jaccard score (Jaccard): do Jaccard năm 1912 [18] giới thiệu nhằm đo độ tương tự giữa hai tập hợp hữu hạn, được định nghĩa là tỷ số giữa kích thước của giao với kích thước của hợp của hai tập hợp
Rand statistic (Rand): đƣợc Rand đề xuất vào năm 1971 [19] dựa trên hai chỉ số a và d thể hiện sự giống nhau và hai chỉ số b và c thể hiện sự khác nhau
ARI: đƣợc Hubert và Arabie (1985) [8] đƣa ra nhằm cải tiến chỉ số Rand, đây là phương pháp cho cơ hội sửa chữa đối với chỉ số Rand Vì vậy, ARI có thể cho ra giá trị âm nên làm tăng độ nhạy của chỉ số hơn là Rand
Folkes and Mallow index (FM): do Fowlkes và Mallow 1983 [20] đề xuất nhằm so sánh độ tương tự giữa hai tập hợp mà không liên quan với nhau, khắc phục nhƣợc điểm chỉ dùng cho các tập hợp có liên quan của chỉ số Rand Ngoài ra, chỉ số
FM còn cho ra kết quả tốt khi có sự ảnh hưởng của nhiễu
Normalized Mutual Information (NMI): phương pháp này được Strehl và
Ghosh đề xuất năm 2002 [21], kết hợp nhiều cụm thành một cụm mà không cần phải truy xuất vào các đặc trƣng gốc hoặc sử dụng giải thuật để xác định các cụm này
N là số lƣợng mẫu trong tập dữ liệu,
|A i | là số lƣợng các mẫu trong cụm A i ,
|G i | là số lƣợng các mẫu trong cụm G i , Và | |
Tất cả các tiêu chí đánh giá có giá trị trong khoảng từ 0 đến 1 Giá trị 1 tương ứng với trường hợp khi tập G và A giống nhau Giá trị của tiêu chí đánh giá càng lớn thì chất lƣợng gom cụm càng tốt Đối với trường hợp tập dữ liệu gom cụm dùng để đánh giá không được phân lớp, chúng ta có thể dùng phương pháp đánh giá nội, hàm mục tiêu là [17]:
Trong đó: k: số lƣợng cụm c m : trung tâm cụm thứ m x i : mẫu dữ liệu thứ i trong tập dữ liệu Chất lƣợng gom cụm tốt khi hàm F có giá trị nhỏ.
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.7
Hình 2.7: Hai chiến lƣợc gom cụm phân cấp (Nguồn [26])
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ừ hai 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.8 mô tả tiêu chí trộn các cụm lại với nhau
Hình 2.8: 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.9 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
Hình 2.9: Cấu trúc cây của giải thuật gom cụm phân cấp (Nguồn [26])
20 Ƣ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 Chúng tôi sẽ giới thiệu giải thuật K-means ở phần 3.2
TỔNG THUẬT CÁC CÔNG TRÌNH LIÊN QUAN
G OM CỤM DỮ LIỆU CHUỖI THỜI GIAN
Các công trình nghiên cứu giải thuật gom cụm dữ liệu chuỗi thời gian đƣợc tổng kết và trình bày bởi T W Liao, năm 2005 [13] Theo đó, mục đích của gom cụm là để xác định cấu trúc của một tập dữ liệu không đƣợc gán nhãn, thực hiện bằng cách tổ chức dữ liệu thành các nhóm đồng nhất một cách khách quan, trong đó, độ tƣợng tự của các đối tƣợng trong cùng nhóm đƣợc tối thiểu hóa và độ sai biệt của các đối tƣợng khác nhóm đƣợc tối đa hóa
Các phương pháp gom cụm truyền thống, hầu hết làm việc với loại dữ liệu thường (ordinary data), là loại dữ liệu có các giá trị thuộc tính không thay đổi theo thời gian hoặc thay đổi không đáng kể Đối với các kỹ thuật gom cụm dữ liệu, có thể chia thành năm loại chính: gom cụm phân hoạch (partitioning methods), gom cụm phân cấp (hierarchical methods), gom cụm dựa vào mật độ (density-based method), gom cụm dựa vào lưới (grid-based methods) và các phương pháp gom cụm dựa vào mô hình (model-based methods)
Không giống như các loại dữ liệu thường, dữ liệu chuỗi thời gian có các đặc trƣng mang các giá trị thay đổi theo thời gian Các giải thuật gom cụm thực hiện trên dữ liệu chuỗi thời gian, về cơ bản cũng đòi hỏi các thành phần chính: giải thuật thực hiện gom cụm dữ liệu; độ đo tương tự trên dữ liệu cần gom cụm; tiêu chí đánh giá hiệu quả quá trình gom cụm
Một số giải thuật gom cụm chuỗi thời gian đã đƣợc phát triển để gom cụm các loại dữ liệu chuỗi thời gian khác nhau Tinh thần của các giải thuật này có thể tóm lƣợc nhƣ sau:
- Điều chỉnh, cải tiến các giải thuật hiện có để chúng thích ứng với loại dữ liệu chuỗi thời gian, hoặc biến đổi, chuẩn hóa dữ liệu chuỗi thời gian để có thể thực hiện các giải thuật gom cụm một cách phù hợp
- Cải tiến, tìm ra các độ đo tương tự thích hợp với dữ liệu chuỗi thời gian
22 Với nhận xét trên, cùng với cơ sở về sự lựa chọn giải thuật gom cụm phụ thuộc vào hai vấn đề: loại dữ liệu cần khai phá; mục đích và ứng dụng cụ thể, tác giả Liao diễn tả ba cách tiếp cận gom cụm dữ liệu chuỗi thời gian theo hình 3.1
Hình 3.1 Ba cách tiếp cận gom cụm chuỗi thời gian
(a) là các nghiên cứu làm việc trực tiếp với các dữ liệu chuỗi thời gian thô, sự sửa đổi, cải tiến chính nằm ở việc thay thế độ đo tương tự dùng cho dữ liệu thường bằng một độ đo thích hợp cho dữ liệu chuỗi thời gian Đối với hai cách tiếp cận (b), (c), đầu tiên, chuyển dữ liệu thô thành một vectơ đặc trƣng của số chiều thấp hơn hay một số các tham số mô hình, rồi áp dụng một giải thuật gom cụm truyền thống nào đó lên các vectơ đặc trƣng đã đƣợc rút trích hay các tham số mô hình
Trong năm loại kỹ thuật gom cụm thường dùng cho dữ liệu thường đã được nhắc đến bên trên, ba phương pháp: gom cụm phân hoạch, gom cụm phân cấp và các phương pháp gom cụm dựa vào mô hình, được dùng trực tiếp hay cải tiến để thực hiện gom cụm chuỗi thời gian
Mặc dù đã có rất nhiều nghiên cứu gom cụm chuỗi thời gian đã đƣợc công bố, tựu chung lại, chìa khóa vẫn là cần hiểu đƣợc các đặc tính độc nhất nào đó của dữ liệu đang nghiên cứu, thiết kế, áp dụng độ đo tương tự thích hợp trên các đối tượng
23 dữ liệu đó Ngoài ra, cũng còn có rất nhiều phương hướng để có thể tìm hiểu, nghiên cứu thêm, chẳng hạn nhƣ:
- Áp dụng các giải thuật xấp xỉ, các giải thuật tìm kiếm cục bộ: mô phỏng luyện kim, tìm kiếm tabu, giải thuật di truyền… trong gom cụm chuỗi thời gian
- Giải pháp kết hợp nhiều giải thuật gom cụm để đạt đƣợc một kết quả tốt hơn.
G IẢI THUẬT K- MEANS
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 đó Đầ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 ( ) với n là số đối tƣợng, k là số cụm và t là số lần lặp, d là số chiều, tốc độ nhanh
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 3.2 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 3.2: Quá trình gom cụm dùng K-means (Nguồn [26]).
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 [27] đã 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
25 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.
G IẢI THUẬT GOM CỤM DỮ LIỆU DỰA VÀO CÁC ĐIỂM CỰC ĐẠI MẬT ĐỘ TRÊN DỮ LIỆU CHUỖI THỜI GIAN
Thuật giải gom cụm dựa vào các điểm cực đại mật độ do Rodriquez và Laio đề xuất [1] giả định rằng các trung tâm cụm đƣợc bao quanh bởi nơi có mật độ thấp và có mức tương đối cao hơn với khoảng cách bất kỳ điểm nào đó có mật độ cục bộ cao hơn Vì vậy, đối với mỗi điểm i trong tập dữ liệu thuật giải gom cụm dữ liệu dựa vào điểm cực đại mật độ cần đƣợc tính hai giá trị là mật độ cục bộ và khoảng cách từ điểm có mật độ địa phương cao hơn với mật độ cục bộ i của điểm i là số điểm gần với nó nhất hay khoảng cách từ những điểm có mật độ cao hơn là khoảng cách tối thiểu di sao cho từ điểm i đến đến tất cả các tỉ trọng Với trường hợp đặc biệt của điểm có mật độ cao nhất thì khoảng cách là khoảng cách tối đa của tất cả các điểm tính từ điểm có mật độ cao
Dựa vào các giả định cơ sở của các cụm trung tâm đƣợc bao quanh bởi các điểm lân cận có điểm cực đại mật độ cục bộ thấp hơn và chúng có liên quan đến khoảng cách xa nhất từ bất kỳ điểm nào đến điểm có cực đại mật độ cục bộ cao hơn Với điểm dữ liệu i sẽ có hai giá trị cần đƣợc tính: giá trị mật độ cục bộ i và khoảng cách i từ những điểm dữ liệu này đến cực đại mật độ Cả hai giá trị này phụ thuộc vào khoảng cách d ịj giữa các điểm dữ liệu phải thỏa bất đẳng thức tam giác Giá trị mật độ cục bộ i của điểm dữ liệu i đƣợc tính theo công thức [1]:
Với (x) = 1 nếu x < 0 ngƣợc lại (x) = 0, d c là khoảng cách giới hạn (cutoff)
Về cơ bản i bằng số điểm mà nó gần hơn d c tới điểm dữ liệu i
i đƣợc đo bằng cách tính toán khoảng cách tối thiểu giữa điểm dữ liệu i và các điểm còn lại với mật độ cao hơn:
26 Đối với điểm có cực đại mật độ cao nhất, i = max j (d ij )
Lưu ý i có giá trị lớn hơn nhiều so với khoảng cách lân cận của các điểm dữ liệu cục bộ hoặc toàn bộ trong mật độ Do vậy mà các cụm trung tâm đƣợc công nhận là điểm có giá trị i bất thường lớn
Giải thuật gom cụm dựa vào các điểm cực đại mật độ cho kết quả gom cụm tốt hơn K-means và K-mediods trong trường hợp cụm đó có hình dạng đặc biệt, đa dạng [1]
Hình 3.3 Hình dạng các cụm dựa vào giải thuật cực đại mật độ
Các ƣu điểm của giải thuật gom cụm dựa vào các điểm cực đại mật độ khi áp dụng vào dữ liệu chuỗi thời gian:
- Bỏ qua các điểm dữ liệu bất thường vì sự hiện diện của các điểm này có thể ảnh hưởng đến nhãn của các đối tượng được gom cụm [2]
- Gom cụm dữ liệu với hình dạng tùy ý khác với K-means và các giải thuật gom cụm dạng hình cầu trong không gian
- Nhiều giải thuật gom cụm yêu cầu nhiều tham số, nhƣng với giải thuật gom cụm dựa vào các cực đại mật độ chỉ yêu cầu 2 tham số và tương đối dễ ước lượng đối so với người sử dụng
27 Hình 3.4 mình họa 28 điểm dữ liệu đƣợc đánh giá trị mật độ i đƣợc sắp xếp giảm dần ở hình A, những điểm 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 là những điểm đƣợc xem là có đặc điểm làm cụm trung tâm, theo quan sát ở hình 9.A thì các điểm từ 1 đến 10 là các điểm nằm ở trung tâm và có có nhiều điểm nằm xung quanh nhất, có giá trị cao Hình 3.4.B dựa vào giá trị (trục hoành) và (trục tung) để vẽ phát họa các giá trị mật độ, nhận thấy rằng các điểm 26, 27 và 28 bị cô lập, chúng có giá trị cao và thấp, đƣợc xem là giá trị nhiễu hoặc ngoại biên
Hình 3.4 Biểu diễn điểm mật độ
Vì vậy, dựa vào việc sử dụng biểu đồ quyết định nhƣ hình 3.4.B để dò ra các cụm trung tâm sẽ trở nên dễ dàng
Tuy nhiên đối với bộ dữ liệu lớn, kết quả phân tích phụ thuộc vào việc lựa chọn d c , do đó để đạt được kết quả gom cụm tốt thì người ta phải tính toán tham số d c sao cho phù hợp vì vậy phần sau sẽ trình bày hai phương pháp được sử dụng để ước lƣợng tham số này
3.5 Ƣớc lƣợng mật độ kernel kiểu Gauss
Nhƣ trình bày ở phần 3.4, giải thuật gom cụm dựa vào các điểm cực đại mật độ giúp phát hiện ra các trung tâm của cụm bằng cách tìm các điểm cực đại mật độ Độ chính xác phụ thuộc vào dự đoán chính xác mật độ cục bộ cho một tập dữ liệu nhất định cũng nhƣ dựa vào lựa chọn khoảng cắt d c , trong đó d c đƣợc sử dụng để tính mật độ của mỗi điểm dữ liệu và xác định biên giới trong các cụm Giải thuật gom cụm dựa vào các cực đại mật độ yêu cầu phương pháp ước lượng mật độ của các bộ dữ liệu khác nhau và ƣớc lƣợng d c mà nó phụ thuộc vào kinh nghiệm chủ quan Đây chính là hạn chế của giải thuật gom cụm dựa vào điểm cực đại mật độ Để khắc
28 phục hạn chế này, Mehmood và các cộng sự, 2016, đã cải tiến giải thuật gom cụm dựa vào các điểm cực đại mật độ bằng cách đưa ra phương pháp để ước lượng tham số d c và sự điều chỉnh biên ƣớc lƣợng mật độ [3]
Phương pháp ước lượng mật độ kernel (kernel density estimation – KDE) được áp dụng phổ biến nhất bằng cách tối ƣu việc ƣớc lƣợng mật độ kernel hẹp kiểu Gauss tại mỗi điểm dữ liệu d i và tính tích phân tất cả các giá trị kernel trên toàn bộ dữ liệu [4][5] Phương pháp ước lượng mật độ kernel để xác định tập điểm dữ liệu đồng nhất và độc lập {d 1 , d 2 , d 3 , …, d n } đƣợc rút ra với hàm mật độ xác suất chƣa xác định (probability density function – PDF) nhƣ sau: ̂ ( ) ∑ ( ) ( )
Hàm Gaussian kernel, K (d, d j ; h) đƣợc dùng để ƣớc tính mật độ:
Với K là hàm kernel đƣợc thu nhỏ bởi 1 / h , h là băng thông (bandwith) của hàm kernel
Phương pháp ước lượng mật độ kernel kiểu Gauss có một hạn chế là tham số h khó chọn, sai lệch giới hạn cận trên và dưới Vì vậy Mehmood và các cộng sự đã cải tiến giải thuật gom cụm dựa vào các điểm cực đại mật độ bằng cách áp dụng phương pháp truyền nhiệt (heat diffusion – HD) dựa trên nền tảng của phương pháp ƣớc lƣợng mật độ kernel kiểu Gauss, nó phát triển trong khoảng thời gian t tỷ lệ thuận với băng thông kernel h [6][7][8], đó là quá trình Weiner tính thời gian liên tục trong đó giai đoạn tiếp theo được tính trực tiếp bởi trạng thái trước đó nên xác suất chuẩn bị đƣợc phân bố đều bằng dữ liệu d chiều điểm {d 1 , d 2 , d 3 , …, d n }
Phương pháp ước lượng kernel Gauss được sử dụng để ước lượng xác suất chuyển đổi từ điểm d i đến điểm d j
Phương pháp ước lượng mật độ kernel kiểu Gauss được hiểu là hàm phân phối xác suất cho quá trình này tại thời điểm t, tương tự như phương trình băng thông h:
Phương trình (6) là một quá trình lặp đi lặp lại, do đó quá trình chuyển đổi thỏa phương trình vi phân riêng phần khuếch tán (partial differential equation – PDE): ̂( ) ̂( ) ( ) Phương pháp ước lượng này giúp chọn giá trị d c phù hợp hơn giúp tạo ra các cụm chính xác hơn, áp dụng trên 11 bộ số liệu cho kết quả chính xác hơn CFSFD, AP, mean shift và K-means [3] Đặc biệt khi áp dụng thuật toán Sheather-Jones (ISJ) [14] đƣợc cải tiến sử dụng để tính toán băng thông tối ưu như là một giải pháp độc đáo của phương trình phi tuyến:
3.6 Ƣớc lƣợng mật độ dựa trên k-nearest neighbors
Mặc dù giải thuật gom cụm bằng điểm cực đại mật độ có nhiều ƣu điểm đƣợc trình bày ở phần 3.4 nhƣ không cần nhiều tham số và khả năng gom cụm có hình dạng tùy ý nhƣng giải thuật chỉ tính đến cấu trúc dữ liệu toàn cục nên dẫn đến mất nhiều cụm, ngoài ra nó hoạt động không tốt khi các dữ liệu có số chiều tương đối lớn Đặc biệt, gom cụm dựa vào điểm cực đại mật độ tạo ra số lƣợng sai các cụm dữ liệu trong thế giới thực, để khắc phục vấn đề này đã có một giải pháp ra đời đó là tính mật độ tập trung dựa trên k – lân cận gần nhất (DPC-KNN) [9], do Du và các cộng sự đƣa ra năm 2016
Cho x i X, d là khoảng cách đƣợc tính bằng độ đo Euclid và kNN (x i ) là điểm lân cận thứ k của điểm x i đƣợc tính theo công thức:
( ) { | ( ) ( ( ))} ( ) kNN(x i ) đƣợc sử dụng để tính giá trị mật độ cục bộ Giá trị mật độ cục bộ mới này sẽ đƣợc tính bằng khoảng cách trung bình đến đến k – lân cận gần nhất nhƣ sau:
30 Trong đó k đƣợc tính theo tỷ lệ phần trăm () của số điểm N, vì vậy k = × N
PHƯƠNG PHÁP GIẢI QUYẾT VẤN ĐỀ
Đ ẶT VẤN ĐỀ
Nhƣ đã trình bày bên trên, việc gom cụm dữ liệu chuỗi thời gian dựa trên các giải thuật truyền thống theo hướng tiếp cận gom cụm phân hoạch tiêu biểu như K-means, gặp phải vấn đề về việc khởi tạo trung tâm cụm, dẫn đến kết quả lời giải không ổn định Giải thuật K-means gặp vấn đề cực trị cục bộ sẽ cho ra kết quả gom cụm không chính xác, thường có dạng siêu cầu và kích thước các cụm kết quả thường đồng đều
Trong các phương pháp K-means và K-medoids, các cụm là các nhóm dữ liệu có đặc điểm biểu thị bằng khoảng cách nhỏ tới trung tâm cụm Một hàm mục tiêu, điển hình là tổng khoảng cách tới một tập đƣợc cho là trung tâm cụm, đƣợc tối ƣu hóa cho tới khi các trung tâm cụm tốt nhất đƣợc tìm thấy Tuy nhiên, vì các điểm dữ liệu luôn đƣợc gán cho các trung tâm gần nhất, cách tiếp cận này không thể phát hiện ra các cụm không có dạng cầu Trong các giải thuật dựa vào phân bố, người ta cố gắng mô phỏng các điểm dữ liệu quan sát đƣợc nhƣ là hỗn hợp các hàm phân bố xác suất đã định nghĩa trước Độ chính xác của các phương pháp như vậy phụ thuộc vào khả năng của xác suất phép thử thể hiện cho dữ liệu
Cách tiếp cận của giải thuật gom cụm dựa vào các điểm cực đại mật độ đối với bài toán gom cụm dựa trên ý tưởng: đặc tính của các trung tâm cụm là chúng có mật độ cao hơn mật độ của các đối tƣợng lân cận, và có khoảng cách khá lớn đến các đối tượng có mật độ lớn hơn Ý tưởng này tạo nên cơ sở cho thủ tục gom cụm trong đó số cụm xuất hiện một cách tự nhiên, các phần tử ngoại biên tự động đƣợc nhận diện và loại khỏi phép phân tích, và các cụm đƣợc nhận diện bất kể hình dạng của chúng và bất kể chiều không gian chúng bao lấy Ngoài ra chúng tôi tăng tốc độ thông qua việc cắt tỉa tính toán lân cận gần nhất từ danh sách mật độ cao hơn.
H ƢỚNG GIẢI QUYẾT
4.2.1 Tính toán mật độ cục bộ Mật độ cục bộ i của điểm dữ liệu i đƣợc định nghĩa:
i theo hàm kernel kiểu Gauss đƣợc định nghĩa nhƣ sau:
+ , - trong đó d c giá trị khoảng cách giới hạn (cutoff), d(x, y) là khoảng cách Euclid giữa hai điểm Về cơ bản, i bằng với số điểm nằm trong phạm vi d c tới điểm i Giải thuật chỉ nhạy với độ lớn tương đối i của các điểm khác, nghĩa là với tập dữ liệu lớn, kết quả của phép phân tích linh hoạt theo d c Do đó chúng tôi tính d c thông qua ƣớc lƣợng mật độ kernel kiểu Gauss phần 3.5
Trong bảng 4.1, sử dụng mật độ cục bộ từ 4.2.1, với mỗi điểm i, danh sách các điểm có mật độ cao hơn đƣợc tính toán (dòng 2) Ở dòng 4, danh sách này đƣợc sắp theo thứ tự giảm dần Dòng 5-7, với mỗi điểm theo thứ tự đƣợc sắp xếp, ta tính khoảng cách từ các điểm mật độ cao hơn
Input D,all-pair distance matrix ρ,the local density vector
Output δ,NN distance vector of higher density points 1
[sorted_δ_list, sortIndex] = sort(δ_list,’descend’) for j = 2:n δ(sortIndex(j)) = NNDist(sorted_δ_list(j)) end δ(sortIndex(1)) = max(δ(2:n))
Bảng 4.1 Giải thuật tính khoảng cách đến điểm có mật độ cao hơn [12]
34 Đối với trường hợp đặc biệt của điểm mật độ cao nhất (theo định nghĩa không có mật độ hàng xóm cao hơn), khoảng cách này đƣợc tính ở dòng 8
Chúng ta có thể cải tiến giải thuật này thông qua cắt tỉa tính toán khoảng cách lân cận gần nhất từ danh sách mật độ cao hơn qua 2 giai đoạn: giai đoạn thứ nhất, với mỗi giá trị chúng ta tìm thấy một giới hạn trên của khoảng cách lân cận gần nhất từ danh sách mật độ cao hơn của nó Trong giai đoạn thứ hai, chúng ta thực hiện cắt tỉa dựa trên các giới hạn trên
Giai đoạn 1: Tính toán giới hạn trên
UB Matrix , full computed upper bound matrix Data, the dataset
D Sparse , partially filled distance matrix δ_list, list of the points with higher densities
Output ub, upper bound vector of NN distances from higher density points 1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 ub = inf(size(Data)) for i = 1:size(Data) for j = 1:size(δ_listi) highDensityItem = δ_listi(j) if DSparse(i, highDensityItem)≠ empty if ub i > DSparse(i, highDensityItem) ub i = DSparse(i, highDensityItem) end if else if ub i > UB Matrix (i,highDensityItem) ub i = UB Matrix (i,highDensityItem) end if end if end for end for Bảng 4.2 Giải thuật tính giới hạn trên từ danh sách mật độ cao hơn [12]
Giải thuật tính giới hạn trên từ danh sách mật độ cao hơn đƣợc trình bày trong bảng 4.2 Chúng tôi khởi tạo vectơ giới hạn trên từ khoảng cách lân cận gần nhất của các đối tƣợng từ danh sách mật độ cao hơn (dòng 1) Tiếp theo, xem xét từng giá trị trong danh sách mật độ cao hơn của đối tƣợng i, δ_list i (j), chúng tôi kiểm tra xem liệu giới hạn trên của điểm i hiện tại có thể đƣợc siết chặt (dòng 5 -13) hay không
Từ dòng 5-8 chúng ta thấy nếu khoảng cách thực tế giữa i và δ_list i (j) đã đƣợc tính toán rồi, thì khoảng cách này có thể thắt chặt ub i Nếu khoảng cách chƣa đƣợc tính
35 toán, thì trong các dòng 10-12 chúng ta kiểm tra xem có thể siết chặt ub i bằng cách thay thế nó bằng khoảng cách giới hạn trên giữa i và δ_list i (j)
Giải thuật cắt tỉa trong quá trình tính toán khoảng cách lân cận gần nhất từ danh sách mật độ cao hơn của tất cả các đối tƣợng đƣợc trình bày trong bảng 4.3
LBMatrix, full computed lower bound matrix Data, the dataset
D Sparse , partially filled distance matrix δ_list, list of the points with higher densities ub, upper bound vector of NN distances from higher density points Output δ,NN distance vector of higher density points 1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 for i = 1:size(Data) temp_δ = empty for j = 1:size(δ_listi) highDensityItem = δ_listi(j) if LBMatrix(i,highDensityItem)> ub i continue //prune distance computation else if DSparse(i, highDensityItem)≠ empty temp_δ = [temp_δ DSparse(i, highDensityItem] else // calculate distance
D Sparse (i, highDensityItem) calculateDist(Data(i),Data(highDensityItem)) temp_δ = [temp_δ DSparse(i, highDensityItem] end if end if end for δ(i) = min(temp_δ) end for
Bảng 4.3 Giải thuật cắt tỉa trong quá trình tính toán khoảng cách lân cận gần nhất từ danh sách mật độ cao hơn của tất cả các đối tƣợng [12]
Ta bắt đầu bằng cách quét lại danh sách mật độ cao hơn của từng đối tƣợng một lần nữa Trong dòng 5 của bảng 4.3, đối với một đối tƣợng i, chúng tôi kiểm tra xem
LB Matrix (i, δ_list i (j)) có lớn hơn ub i chúng tôi đã tính toán trong Bảng 4.2 hay không, nếu đúng, chúng tôi sẽ tính toán khoảng cách cho δ_list i (j) (dòng 6) Ngƣợc lại, nếu khoảng cách thực sự giữa i và δ_list i (j) đã đƣợc tính toán, thì chúng tôi xem khoảng cách này là một trong những khoảng cách tiềm năng của lân cận gần nhất từ danh sách mật độ cao hơn (dòng 9) Nếu khoảng cách thực sự chƣa đƣợc biết, chúng ta tính toán nó (dòng 11-12) Cuối cùng, chúng tôi tính vectơ khoảng cách
36 lân cận gần nhất cho tất cả các đối tƣợng từ các danh sách mật độ cao hơn (dòng 17)
Kết thúc quá trình này, với mỗi giá trị i ta có khoảng cách lân cận gần nhất từ các điểm có mật độ cục bộ cao hơn (δ i ) và ρ i
4.2.3 Lựa chọn trung tâm cụm
Ta chọn một heuristic để lựa chọn trung tâm cụm, trong đó trung tâm cụm sẽ là các đối tượng có tích số lớn nhất Các đối tượng này được phân bổ tương ứng vào các cụm
4.2.4 Gán các đối tƣợng vào các cụm Đối tượng i sẽ huộc về cụm của đối tượng kề cận nó – đã được lưu lại ở bước cuối cùng nhƣ trong bảng 4.4
Input χ, cluster centers δ,NN distance vector of higher density points sortIndex, sorted index of items based on descending ρ
C(χ(i)) = i //assign cluster labels for centers end for j = 1:n if C(sortIndex(j)) == empty //no cluster label yet
C(sortIndex(j)) = C(NN(sortIndex(j))) end if end
Bảng 4.4 Giải thuật gán đối tƣợng vào các cụm
THỰC NGHIỆM
M ÔI TRƯỜNG THỰC NGHIỆM
Các giải thuật phục vụ cho đề tài này tất cả đều đƣợc hiện thực bằng ngôn ngữ lập trình MATLAB 2016a Cấu hình hệ thống chạy thực nghiệm chương trình như sau:
- Operating System: Windows 10 Pro 64-bit
- Processor: Intel® Core™ i7-4510U CPU @ 2.00GHz (4 CPUs), ~2.6GHz - Memory: 8192MB RAM
T ẬP DỮ LIỆU MẪU
Các tập dữ liệu đƣợc sử dụng gồm: Symbol, Cylinder-Bell-Funnel (CBF), Trace, FaceFour, Inline Skate, Italy Power Demand Các tập dữ liệu này đƣợc lấy từ website của trường UCR, Time Series Data Mining Archive [28] Các bộ dữ liệu đƣợc mô tả tóm tắt nhƣ sau:
- Tập dữ liệu Symbol: là tập dữ liệu gồm 6 cụm bao gồm 998 chuỗi dữ liệu thời gian, mỗi chuỗi có độ dài 398
- Tập dữ liệu Cylinder-Bell-Funnel (CBF): chứa ba loại dữ liệu chuỗi thời gian là: cylinder (c), bell (b) và funnel (f) Đây là tập dữ liệu nhân tạo đƣợc Saito (1994) giới thiệu và các chuỗi dữ liệu đƣợc sinh ra theo công thức:
38 , - { và , ( ) là các hàm tạo các giá trị phân bố chuẩn ( ), a là số nguyên nằm trong khoảng , - và b – a là số nguyên trong khoảng , - Chúng tôi đã tạo ra 50 chuỗi dữ liệu có chiều dài là 128 cho mỗi cụm
- Tập dữ liệu Trace: đây là tập dữ liệu 4 cụm gồm 100 chuỗi, mỗi cụm có 25 chuỗi, chiều dài của chuỗi dữ liệu là 275
- Tập dữ liệu FaceFour: là tập dữ liệu gồm 4 cụm, mỗi cụm có 22 chuỗi dữ liệu và có chiều dài là 350
- Tập dữ liệu Inline Skate: là tập dữ liệu gồm 7 cụm với tổng cộng 100 chuỗi có độ dài 1882
- Tập dữ liệu Italy Power Demand: là tập dữ liệu gồm 2 cụm với tổng cộng
K ẾT QUẢ THỰC NGHIỆM
Đây là phần thực nghiệm quan trọng của đề tài nhằm đánh giá độ chính xác và hiệu quả của phương pháp gom cụm dữ liệu chuỗi thời gian trên tập dữ liệu đã được giới thiệu Trong phần này, chúng tôi sẽ tiến hành đánh giá trên tất cả các tập dữ liệu mẫu với các thông số cấu hình hệ thống sẽ đƣợc đề cập riêng cho mỗi tập Các con số trong bảng kết quả của mỗi tập đƣợc tính toán nhƣ là trung bình cộng của 100 lần chạy liên tiếp của giải thuật chúng tôi đề xuất và giải thuật K-means Chúng tôi sử dụng các chỉ số Rand, Adjusted Rand Index (ARI), Jaccard, Fowlkes và Mallow
(FM) đã được mô tả ở phần trước để đánh giá chất lượng gom cụm của hệ thống
Hình minh họa của tập dữ liệu Symbol
Hình 5.1 Hình minh họa tập dữ liệu Symbol
Bảng 5.1 và hình 5.2 thể hiện kết quả gom cụm của tập Symbol với số cụm k=6
Phương pháp Phương pháp đề xuất K-means
Bảng 5.1 Chất lƣợng gom cụm trên tập dữ liệu Symbol
Hình 5.2 Biểu đồ chất lƣợng gom cụm trên tập dữ liệu Symbol
Phương pháp đề xuất K-means
40 Hình minh họa sau khi gom cụm:
Hình 5.3 Kết quả gom cụm của phương pháp đề xuất trên tập dữ liệu Symbol
Hình 5.4 Kết quả gom cụm của giải thuật K-means trên tập dữ liệu Symbol
Nhận xét: Chúng ta thấy kết quả gom cụm của tập Symbol với cả bốn chỉ số đánh giá thì giải thuật đề xuất tốt hơn giải thuật K-means Ngoài ra, hình dạng cụm thu đƣợc của giải thuật K-means có sự nhập nhằng giữa cụm 1 hình 5.4 so với giải thuật đề xuất ở hình 5.3 cụm 1, 2 và 6
Hình minh họa của tập dữ liệu CBF
Hình 5.5 Hình minh họa tập dữ liệu CBF
Bảng 5.2 và hình 5.6 thể hiện kết quả gom cụm của tập CBF với số cụm k =3
Phương pháp Phương pháp đề xuất K-means
Bảng 5.2 Chất lƣợng gom cụm trên tập dữ liệu CBF
Hình 5.6 Biểu đồ chất lƣợng gom cụm trên tập dữ liệu CBF
Hình minh họa sau khi gom cụm:
Hình 5.7 Kết quả gom cụm của phương pháp đề xuất trên tập dữ liệu CBF
Phương pháp đề xuất K-means
Hình 5.8 Kết quả gom cụm của giải thuật K-means trên tập dữ liệu CBF
Nhận xét: Chúng ta thấy kết quả gom cụm của tập CBF với cả bốn chỉ số đánh giá thì giải thuật đề xuất tốt hơn giải thuật K-means Ngoài ra, kết quả gom cụm ở cụm 2 trong hình 5.7 và hình 5.8 cho thấy giải thuật K-means không cho kết quả tốt với những cụm có hình dạng đặc biệt
Hình minh họa tập dữ liệu Trace
Hình 5.9 Hình minh họa tập dữ liệu Trace
Bảng 5.3 và hình 5.10 thể hiện kết quả gom cụm của tập Trace với số cụm k =4
Phương pháp Phương pháp đề xuất K-means
Bảng 5.3 Chất lƣợng gom cụm trên tập dữ liệu Trace
Hình 5.10 Biểu đồ chất lƣợng gom cụm trên tập dữ liệu Trace
Hình minh họa sau khi gom cụm:
Phương pháp đề xuất K-means
Hình 5.11 Kết quả gom cụm của phương pháp đề xuất trên tập dữ liệu Trace
Hình 5.12 Kết quả gom cụm của giải thuật K-means trên tập dữ liệu Trace
47 Nhận xét: Chúng ta thấy kết quả gom cụm của tập Trace với cả bốn chỉ số đánh giá thì giải thuật đề xuất tốt hơn giải thuật K-means Dựa vào trực quan, ta dễ thấy trong kết quả gom cụm của giải thuật K-means còn nhập nhằng khi phân loại giữa cụm 1 và 2, cụm 3 và 4 so với giải thuật đề xuất Điều này có thể giải thích do nhƣợc điểm K-means không thích hợp phân loại với những cụm có hình dạng đặc biệt
Hình 5.13 Hình minh họa tập dữ liệu FaceFour
Bảng 5.4 và hình 5.14 thể hiện kết quả gom cụm của tập FaceFour với số cụm k =4
Phương pháp Phương pháp đề xuất K-means
Bảng 5.4 Chất lƣợng gom cụm trên tập dữ liệu FaceFour
Hình 5.14 Biểu đồ chất lƣợng gom cụm trên tập dữ liệu FaceFour
Hình minh họa sau khi gom cụm:
Hình 5.15 Kết quả gom cụm của phương pháp đề xuất trên tập dữ liệu FaceFour
Phương pháp đề xuất K-means
Hình 5.16 Kết quả gom cụm của giải thuật K-means trên tập dữ liệu FaceFour
Nhận xét: Chúng ta thấy kết quả gom cụm của tập FaceFour với cả bốn chỉ số đánh giá thì giải thuật đề xuất tốt hơn giải thuật K-means Dựa vào trực quan ta thấy kết quả gom cụm của giải thuật K-means còn nhập nhằng khi phân loại giữa cụm 1 và 3, cụm 2 và 4 so với giải thuật đề xuất
5.3.5 Tập dữ liệu Inline Skate
Hình minh họa tập dữ liệu Inline Skate:
Hình 5.17 Hình minh họa tập dữ liệu Inline Skate
Bảng 5.5 và hình 5.18 thể hiện kết quả gom cụm của tập Inline Skate với số cụm k=7
Phương pháp Phương pháp đề xuất K-means
Bảng 5.5 Chất lƣợng gom cụm trên tập dữ liệu Inline Skate
Hình 5.18 Biểu đồ chất lƣợng gom cụm trên tập dữ liệu Inline Skate
Phương pháp đề xuất K-means
51 Hình minh họa sau khi gom cụm:
Hình 5.19 Kết quả gom cụm của phương pháp đề xuất trên tập dữ liệu Inline
Hình 5.20 Kết quả gom cụm của giải thuật K-means trên tập dữ liệu Inline Skate
54 Nhận xét: Chúng ta thấy kết quả gom cụm của tập Inline Skate với cả bốn chỉ số đánh giá thì giải thuật đề xuất tốt hơn giải thuật K-means Dựa vào trực quan, dễ thấy số lƣợng chuỗi thời gian trong cụm 2, 3, 4 trong hình 5.20 của giải thuật K- means ít hơn so với kết quả của giải thuật đề xuất rất nhiều
5.3.6 Tập dữ liệu Italy Power Demand
Hình minh họa tập dữ liệu Italy Power Demand
Hình 5.21 Hình minh họa tập dữ liệu Italy Power Demand
Bảng và Hình thể hiện kết quả gom cụm của tập Italy Power Demand với số cụm k=2
Phương pháp Phương pháp đề xuất K-means
Bảng 5.6 Chất lƣợng gom cụm trên tập dữ liệu Italy Power Demand
Hình 5.22 Biểu đồ chất lƣợng gom cụm trên tập dữ liệu Italy Power Demand
Hình minh họa sau khi gom cụm:
Hình 5.23 Kết quả gom cụm của phương pháp đề xuất trên tập dữ liệu Italy
Phương pháp đề xuất K-means
Hình 5.24 Kết quả gom cụm của giải thuật K-means trên tập dữ liệu Italy
Nhận xét: Chúng ta thấy kết quả gom cụm của tập Italy Power Demand với cả bốn chỉ số đánh giá thì giải thuật đề xuất tốt hơn giải thuật K-means Dựa vào trực quan ta dễ thấy hình dạng thu đƣợc cả 2 cụm của hai giải thuật đều gần giống nhau Tuy nhiên số lƣợng chuỗi thời gian trong cụm 1 của giải thuật K-means phân bố ít hơn so với giải thuật đề xuất
5.3.7 So sánh giải thuật đã cải tiến khi áp dụng độ đo Euclid và DTW
Dataset K Rand ARI Jaccard FM RI Time
Bảng 5.7 So sánh kết quả của giải thuật đã cải tiến với độ đo Euclid và DTW
Về thời gian thực thi của DP_ED (giải thuật gom cụm dựa vào các điểm cực đại mật đã cải tiến sử dụng độ đo Euclid) nhanh hơn DP_DTW (giải thuật gom cụm dựa vào cỏc điểm cực đại mật độ sử dụng độ đo DTW), trung bỡnh chỉ bằng khoảng ẵ thời gian của DP_DTW Điều này có thể giải thích nhƣ sau: giải thuật tính khoảng cách DTW là O(n 2 ), tính khoảng cách ED chiếm O(n); giải thuật gom cụm DP là O(n 2 ) Do đó độ phức tạp cộng lại của DP_DTW sẽ lớn hơn DP_ED.
Về độ chính xác, kết quả gom cụm của DP_DTW cho kết quả tốt hơn DP_ED tuy nhiên sự chênh lệch này không nhiều Cá biệt với tập dữ liệu Itali thì giải thuật DP_ED lại cho kết quả tốt hơn DP_DTW, có thể sự khác biệt này do đặc điểm của tập dữ liệu.
N HẬN XÉT CHUNG
Các thực nghiệm trên 6 bộ dữ liệu cho thấy giải thuật gom cụm dựa vào các đỉnh mật độ cực đại cho kết quả tốt hơn K-means về chất lƣợng gom cụm Thời gian thực thi của toàn bộ quá trình gom cụm dữ liệu chuỗi thời gian dựa trên các đỉnh mật độ cực đại không thể cạnh tranh với giải thuật K-means (xem bảng 5.7) Chúng ta có thể tận dụng khả năng tự phát hiện cụm có dạng không lồi và loại bỏ phần tử
58 ngoại biên của giải thuật này đối với dữ liệu chuỗi thời gian, với sự hỗ trợ tăng tốc thời gian thực thi gom cụm đã trình bày ở chương 4
Tập dữ liệu Symbol CBF Trace FaceFour Inline
Bảng 5.8 Bảng so sánh thời gian (đơn vị: ms) của giải thuật đề xuất và K-means