Bạn có thể so sánh các phương pháp phân cụm khác nhau trên một tập dữ liệu không có sự thật cơ bản bằng cách xác thực chéo không?


12

Hiện tại, tôi đang cố gắng phân tích một bộ dữ liệu tài liệu văn bản không có sự thật. Tôi đã nói rằng bạn có thể sử dụng xác nhận chéo k-Fold để so sánh các phương pháp phân cụm khác nhau. Tuy nhiên, các ví dụ tôi đã thấy trong quá khứ sử dụng một sự thật nền tảng. Có cách nào để sử dụng phương tiện k-Fold trên tập dữ liệu này để xác minh kết quả của tôi không?

Câu trả lời:


12

Ứng dụng duy nhất của xác thực chéo để phân cụm mà tôi biết là ứng dụng này:

  1. Chia mẫu thành tập huấn luyện 4 phần & tập kiểm tra 1 phần.

  2. Áp dụng phương pháp phân cụm của bạn vào tập huấn luyện.

  3. Áp dụng nó cũng cho bộ thử nghiệm.

  4. Sử dụng các kết quả từ Bước 2 để gán từng quan sát trong bộ thử nghiệm cho cụm tập huấn luyện (ví dụ: centroid gần nhất cho phương tiện k).

  5. Trong bộ thử nghiệm, hãy đếm cho từng cụm từ Bước 3 số lượng các cặp quan sát trong cụm đó trong đó mỗi cặp cũng nằm trong cùng một cụm theo Bước 4 (do đó tránh được vấn đề nhận dạng cụm được chỉ ra bởi @cbeleites). Chia cho số lượng cặp trong mỗi cụm để cho một tỷ lệ. Tỷ lệ thấp nhất trong tất cả các cụm là thước đo mức độ tốt của phương pháp dự đoán thành viên cụm cho các mẫu mới.

  6. Lặp lại từ Bước 1 với các phần khác nhau trong các bộ huấn luyện & kiểm tra để làm cho nó gấp 5 lần.

Tibshirani & Walther (2005), "Xác thực cụm theo sức mạnh dự đoán", Tạp chí thống kê tính toán và đồ họa , 14 , 3.


bạn có thể giải thích thêm về một cặp quan sát là gì (và tại sao chúng ta sử dụng cặp quan sát ở nơi đầu tiên)? Hơn nữa, làm thế nào chúng ta có thể định nghĩa thế nào là "cùng một cụm" trong tập huấn luyện so với tập kiểm tra? Tôi đã xem bài báo, nhưng không hiểu ý.
Tanguy

1
@Tanguy: Bạn xem xét tất cả các cặp - nếu các quan sát là A, B, & C thì các cặp đó là {A, B}, {A, C}, & {B, C} -, và bạn không cố gắng xác định " cùng một cụm "trên các bộ thử nghiệm và xe lửa, chứa các quan sát khác nhau. Thay vào đó, bạn so sánh hai giải pháp phân cụm được áp dụng cho tập kiểm tra (một được tạo từ tập huấn luyện & một từ tập kiểm tra) bằng cách xem tần suất chúng đồng ý trong việc hợp nhất hoặc tách các thành viên của mỗi cặp.
Scortchi - Phục hồi Monica

ok, sau đó hai ma trận của các cặp quan sát, một trên bộ tàu, một trên bộ thử nghiệm, được so sánh với một biện pháp tương tự?
Tanguy

@Tanguy: Không, bạn chỉ xem xét các cặp quan sát trong bộ thử nghiệm.
Scortchi - Phục hồi Monica

xin lỗi tôi không đủ rõ ràng Người ta phải thực hiện tất cả các cặp quan sát của tập kiểm tra, từ đó có thể xây dựng một ma trận chứa 0 và 1 (0 nếu cặp quan sát không nằm trong cùng một cụm, 1 nếu chúng thực hiện). Hai ma trận được tính toán khi chúng ta xem xét cặp quan sát cho các cụm thu được từ tập huấn luyện và từ tập kiểm tra. Sự giống nhau của hai ma trận sau đó được đo bằng một số liệu. Tôi có đúng không?
Tanguy

7

Tôi đang cố gắng hiểu làm thế nào bạn sẽ áp dụng xác thực chéo cho phương pháp phân cụm, chẳng hạn như phương tiện k vì dữ liệu mới sắp tới sẽ thay đổi trọng tâm và thậm chí phân phối phân cụm trên phương thức phân cụm hiện có của bạn.

Về xác nhận không giám sát khi phân cụm, bạn có thể cần định lượng độ ổn định của thuật toán với số cụm khác nhau trên dữ liệu được lấy mẫu lại.

Ý tưởng cơ bản về sự ổn định của cụm có thể được hiển thị trong hình dưới đây:

nhập mô tả hình ảnh ở đây

Bạn có thể quan sát rằng với số phân cụm là 2 hoặc 5, có ít nhất hai kết quả phân cụm khác nhau (xem các đường gạch chia tách trong các hình), nhưng với số phân cụm là 4, kết quả tương đối ổn định.

Ổn định cụm: một tổng quan của Ulrike von Luxburg có thể hữu ích.


7

k

Để dễ giải thích và rõ ràng, tôi sẽ khởi động cụm.

Nói chung, bạn có thể sử dụng các cụm được ghép lại như vậy để đo lường tính ổn định của giải pháp của bạn: nó hầu như không thay đổi hay nó hoàn toàn thay đổi?

Mặc dù bạn không có sự thật cơ bản, tất nhiên bạn có thể so sánh phân cụm kết quả từ các lần chạy khác nhau của cùng một phương thức (lấy mẫu lại) hoặc kết quả của các thuật toán phân cụm khác nhau, ví dụ như bằng cách lập bảng:

km1 <- kmeans (iris [, 1:4], 3)
km2 <- kmeans (iris [, 1:4], 3)
table (km1$cluster, km2$cluster)

#      1  2  3
#   1 96  0  0
#   2  0  0 33
#   3  0 21  0

vì các cụm là danh nghĩa, thứ tự của chúng có thể thay đổi tùy ý. Nhưng điều đó có nghĩa là bạn được phép thay đổi thứ tự sao cho các cụm tương ứng. Sau đó, các phần tử đường chéo * đếm các trường hợp được gán cho cùng một cụm và các phần tử nằm ngoài đường chéo hiển thị theo cách thay đổi bài tập:

table (km1$cluster, km2$cluster)[c (1, 3, 2), ]

#      1  2  3
#   1 96  0  0
#   3  0 21  0
#   2  0  0 33

Tôi muốn nói rằng việc lấy mẫu lại là tốt để thiết lập mức độ ổn định của cụm của bạn trong mỗi phương thức. Không có điều đó sẽ không có ý nghĩa quá nhiều để so sánh kết quả với các phương pháp khác.

Tôi,Tôicó ý nghĩa của đường chéo trước. Các hàng / cột bổ sung sau đó hiển thị từ cụm nào cụm mới có trường hợp của nó.


Bạn không trộn lẫn xác thực chéo k và phân cụm k-có nghĩa là, phải không?


0

Có một ấn phẩm gần đây về phương pháp xác thực hai chiều để xác định số lượng cụm ở đây .

và ai đó đang cố gắng thực hiện với sci-kit tìm hiểu ở đây .

Mặc dù thành công của họ có phần hạn chế. Như các ấn phẩm chỉ ra, phương pháp này không hoạt động tốt khi các trung tâm cụm có tương quan cao có thể xảy ra đối với kích thước cụm lớn trong các hệ thống chiều thấp. (ví dụ7 cụm trong 2D không hoạt động tốt.)

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.