Phân cụm chuỗi thời gian đa biến


8

Tôi đang thu thập một nhóm các chuỗi thời gian đa biến. Ví dụ, có 2000 chuỗi thời gian. Mỗi chuỗi thời gian là 12 chiều.

Có bất kỳ mô hình / thuật toán hệ thống nào có thể phân cụm chuỗi thời gian đa biến không? Chẳng hạn, tôi muốn xác định một số chuỗi thời gian rất khác với các chuỗi thời gian khác.

Hơn nữa, để theo dõi trực tuyến, tôi có thể chạy thuật toán này một cách đúng giờ. Chẳng hạn, cứ sau 10 phút, tôi chạy loại thuật toán này theo chuỗi thời gian bao gồm 10 phút. Có bất kỳ thuật toán hiệu quả liên quan đến điều này?

Câu trả lời:


5

Gói R pdccung cấp phân cụm cho chuỗi thời gian đa biến. Phân phối phân bổ cho phép là một phép đo khác nhau dựa trên độ phức tạp cho chuỗi thời gian. Nếu bạn có thể cho rằng sự khác biệt trong chuỗi thời gian là do sự khác biệt về độ phức tạp và đặc biệt không phải do sự khác biệt về phương tiện, phương sai hoặc thời điểm nói chung, đây có thể là một cách tiếp cận hợp lệ. Độ phức tạp thời gian của thuật toán tính toán biểu diễn pdc của chuỗi thời gian đa biến là trong O (DTN) với D là số chiều, T là độ dài của chuỗi thời gian và N là số chuỗi thời gian. Điều này có thể hiệu quả như nó có được vì một lần quét qua từng chiều của từng chuỗi thời gian là đủ để có được biểu diễn độ phức tạp nén.

Dưới đây là một ví dụ hoạt động đơn giản với một cụm phân cấp của chuỗi thời gian nhiễu trắng đa biến (cốt truyện chỉ minh họa kích thước đầu tiên của mỗi chuỗi thời gian):

require("pdc")

num.ts <- 20 # number of time series
num.dim <- 12 # number of dimensions
len.ts <- 600*10 # number of time series

# generate Gaussian white noise
data <- array(dim = c(len.ts, num.ts, num.dim),data = rnorm(num.ts*num.dim*len.ts))

# obtain clustering with embedding dimension of 5
pdc <- pdclust(X = data, m=5,t=1)

# plot hierarchical clustering
plot(pdc)

Phân cụm phân cấp của nhiễu trắng đa biến

Lệnh pdcDist(data)tạo ma trận không giống nhau:

Vì dữ liệu là tất cả nhiễu trắng, không có cấu trúc rõ ràng trong ma trận không giống nhau.

         1        2        3        4        5        6        7
2 4.832894                                                      
3 4.810718 4.790286                                             
4 4.812738 4.796530 4.809482                                    
5 4.798458 4.772756 4.751079 4.786206                           
6 4.812076 4.793027 4.798996 4.758193 4.751691                  
7 4.786515 4.771505 4.754735 4.837236 4.775775 4.794706         
8 4.808709 4.832403 4.722993 4.781267 4.784397 4.776600 4.787757

Để biết thêm thông tin tham khảo:

Thương hiệu, sáng (2015). pdc: Một gói R để phân cụm chuỗi thời gian dựa trên độ phức tạp. Tạp chí phần mềm thống kê, 67. doi: 10.18637 / jss.v067.i05 (Toàn văn)


1
+1 @Brandmaier cảm ơn bạn đã phản hồi và cho một gói tuyệt vời.
dự báo

3

Kiểm tra RTEFC ("Phân cụm bộ lọc theo hàm mũ thời gian thực") hoặc RTMAC ("Phân cụm trung bình di chuyển thời gian thực), là các biến thể K-time hiệu quả, đơn giản, phù hợp để sử dụng theo thời gian thực khi phân cụm nguyên mẫu phù hợp. của vectơ. Xem https://gregstanleyandassociates.com/whitepapers/BDAC/Clustering/clustering.htmlm và tài liệu liên quan về biểu diễn chuỗi thời gian đa biến như một vectơ lớn hơn ở mỗi bước thời gian (biểu diễn cho "BDAC"), với một slide cửa sổ thời gian.

Chúng được phát triển để đồng thời thực hiện cả việc lọc tiếng ồn và phân cụm trong thời gian thực để nhận biết và theo dõi các điều kiện khác nhau. RTMAC hạn chế sự tăng trưởng bộ nhớ bằng cách giữ lại các quan sát gần đây nhất gần với một cụm nhất định. RTEFC chỉ giữ lại trọng tâm từ bước này sang bước tiếp theo, đủ cho nhiều ứng dụng. Về mặt hình ảnh, RTEFC trông giống như:

Dawg yêu cầu so sánh điều này với HDBSCAN, đặc biệt là hàm xấp xỉ_predict (). Sự khác biệt chính là HDBSCAN vẫn cho rằng thỉnh thoảng có sự đào tạo lại từ các điểm dữ liệu ban đầu, một hoạt động tốn kém. Hàm HDBSCAN xấp xỉ_predict () được sử dụng để nhận phân công cụm nhanh cho dữ liệu mới mà không cần đào tạo lại. Trong trường hợp RTEFC, không bao giờ có bất kỳ tính toán đào tạo lại lớn nào, bởi vì các điểm dữ liệu gốc không được lưu trữ. Thay vào đó, chỉ có các trung tâm cụm được lưu trữ. Mỗi điểm dữ liệu mới chỉ cập nhật một trung tâm cụm (hoặc tạo một trung tâm mới nếu cần và trong giới hạn trên được chỉ định về số lượng cụm hoặc cập nhật một trung tâm trước đó). Chi phí tính toán ở mỗi bước là thấp và có thể dự đoán được.

Các hình ảnh có một số điểm tương đồng, ngoại trừ hình ảnh HDBSCAN sẽ không có điểm được gắn dấu sao cho biết trung tâm cụm được tính toán lại cho một điểm dữ liệu mới gần một cụm hiện có và hình ảnh HDBSCAN sẽ từ chối trường hợp cụm mới hoặc trường hợp cập nhật bắt buộc là ngoại lệ.

RTEFC cũng được tùy chọn sửa đổi khi quan hệ nhân quả được biết là một tiên nghiệm (khi các hệ thống đã xác định đầu vào và đầu ra). Các đầu vào hệ thống giống nhau (và các điều kiện ban đầu cho các hệ thống động) sẽ tạo ra các đầu ra hệ thống giống nhau. Họ không vì tiếng ồn hoặc thay đổi hệ thống. Trong trường hợp đó, bất kỳ số liệu khoảng cách nào được sử dụng để phân cụm đều được sửa đổi để chỉ tính đến sự gần gũi của các đầu vào hệ thống & điều kiện ban đầu. Vì vậy, do sự kết hợp tuyến tính của các trường hợp lặp đi lặp lại, tiếng ồn bị hủy bỏ một phần và sự thích ứng chậm với các thay đổi hệ thống xảy ra. Các trọng tâm thực sự là đại diện tốt hơn cho hành vi hệ thống điển hình hơn bất kỳ điểm dữ liệu cụ thể nào, vì giảm nhiễu.

Một điểm khác biệt nữa là tất cả những gì đã được phát triển cho RTEFC chỉ là thuật toán cốt lõi. Nó đủ đơn giản để thực hiện chỉ với một vài dòng mã, nhanh và với thời gian tính toán tối đa có thể dự đoán được ở mỗi bước. Điều này khác với toàn bộ cơ sở với rất nhiều lựa chọn. Những thứ đó là phần mở rộng hợp lý. Chẳng hạn, từ chối ngoại lệ, có thể chỉ cần yêu cầu rằng sau một thời gian, các điểm nằm ngoài khoảng cách xác định đến một trung tâm cụm hiện có sẽ bị bỏ qua thay vì được sử dụng để tạo các cụm mới hoặc cập nhật cụm gần nhất.

Mục tiêu của RTEFC là kết thúc với một tập hợp các điểm đại diện xác định hành vi có thể có của một hệ thống được quan sát, thích ứng với các thay đổi của hệ thống theo thời gian và tùy ý giảm ảnh hưởng của tiếng ồn trong các trường hợp lặp lại với nguyên nhân đã biết. Đó không phải là để duy trì tất cả các dữ liệu gốc, một số trong đó có thể trở nên lỗi thời khi hệ thống quan sát thay đổi theo thời gian. Điều này giảm thiểu yêu cầu lưu trữ cũng như thời gian tính toán. Tập hợp các đặc điểm này (trung tâm cụm làm điểm đại diện là tất cả những gì cần thiết, sự thích ứng theo thời gian, thời gian tính toán thấp và có thể dự đoán được) sẽ không phù hợp với tất cả các ứng dụng. Điều này có thể được áp dụng để duy trì các tập dữ liệu đào tạo trực tuyến cho phân cụm theo định hướng hàng loạt, các mô hình gần đúng chức năng mạng thần kinh hoặc sơ đồ khác để phân tích hoặc xây dựng mô hình. Các ứng dụng ví dụ có thể bao gồm phát hiện / chẩn đoán lỗi; kiểm soát quá trình; hoặc những nơi khác mà các mô hình có thể được tạo từ các điểm đại diện hoặc hành vi chỉ được nội suy giữa các điểm đó. Các hệ thống được quan sát sẽ là những hệ thống được mô tả chủ yếu bằng một tập hợp các biến liên tục, có thể yêu cầu mô hình hóa với các phương trình đại số và / hoặc mô hình chuỗi thời gian (bao gồm các phương trình khác biệt / phương trình vi phân), cũng như các ràng buộc bất đẳng thức.


Sự hồi phục bằng hình ảnh nhắc nhở tôi khá nhiều về biến thể DBSCAN phân cấp: hdbscan.readthedocs.io/en/latest/prediction_tutorial.html# Bạn có thể làm nổi bật sự khác biệt không?
ledawg
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.