Tại sao k-có nghĩa là cung cấp tối thiểu toàn cầu?


16

Tôi đọc rằng thuật toán k-mean chỉ hội tụ đến mức tối thiểu cục bộ và không đến mức tối thiểu toàn cầu. Tại sao lại thế này? Tôi có thể nghĩ một cách logic về việc khởi tạo có thể ảnh hưởng đến việc phân cụm cuối cùng như thế nào và có khả năng phân cụm tối ưu phụ, nhưng tôi không tìm thấy bất cứ điều gì sẽ chứng minh về mặt toán học.

Ngoài ra, tại sao k-có nghĩa là một quá trình lặp đi lặp lại? Chúng ta không thể phân biệt một phần chức năng mục tiêu wrt với centroid, đánh giá nó bằng 0 để tìm các centroid giảm thiểu chức năng này? Tại sao chúng ta phải sử dụng độ dốc giảm dần để đạt được từng bước tối thiểu?


4
Khi một hàm trơn có nhiều cực tiểu cục bộ, thì nhất thiết mỗi một trong số chúng sẽ là một điểm tới hạn (trong đó tất cả các đạo hàm riêng đều biến mất), vì vậy thuật toán của bạn là chính xác nhưng thông thường nó vô dụng: bạn có thể có một phương trình phức tạp khủng khiếp với một số lượng lớn của các giải pháp (thậm chí vô hạn nhiều). Nhưng có một vấn đề khác: làm thế nào để bạn biết hàm mục tiêu k-mean thậm chí còn khác biệt ở mọi nơi?
whuber

1
Tôi tin rằng khi tôi phân biệt một phần hàm mục tiêu đối với một centroid, các điểm trong cụm của một centroid khác sẽ biến mất trong đạo hàm. Vì vậy, trọng tâm chúng ta có thể nhận được sẽ chỉ giảm thiểu tổng khoảng cách bình phương của chỉ cụm cụ thể.
Prateek Kulkarni

3
Đó là một phần, nhưng không thực sự giải thích hành vi. Nhập khẩu nhiều hơn là thực tế là việc gán điểm cho centroid là phần lớn của những gì k-mean đang làm. (Sau khi việc chuyển nhượng được thực hiện, các trọng tâm có thể dễ dàng tính toán và có nhân không còn gì để làm.) Đó là nhiệm vụ rời rạc : nó không phải là cái gì đó có thể được phân biệt gì cả. Hơn nữa, nó phức tạp về mặt tổ hợp: có nhiều cách để gán n điểm cho cụm k . Thật vậy, hoàn toàn không cần thiết phải sử dụng độ dốc gốc để tìm trọng tâm. O(nk)nk
whuber

Tôi đồng ý, phần bài tập không thể được đưa trực tiếp vào dạng toán. Chỉ bằng bước cô lập này, chúng ta mới có thể di chuyển các tâm xung quanh để giảm thiểu chức năng. Đây là cách tôi nhìn vào độ dốc gốc: Nếu, bằng cách khởi tạo kém, chúng ta ở gần cực tiểu cục bộ, độ dốc của đường dốc sẽ kéo bạn xuống cực tiểu cục bộ. Nếu bạn ở gần cực tiểu toàn cầu bằng cách khởi tạo tốt, nó sẽ kéo bạn xuống cực tiểu toàn cầu. Nhưng làm thế nào chuyển động này được ánh xạ để phân công cụm là một mờ.
Prateek Kulkarni

Sự không khác biệt được đánh giá quá cao: Leon Bottou đã thực hiện một số công việc ước tính K-Means với độ dốc dốc ngẫu nhiên trên các tập dữ liệu rất lớn với khá nhiều thành công. Sự không khác biệt không gây ra vấn đề lớn như vậy trong nhiều vấn đề do có nhiều điểm dữ liệu. (ví dụ: mạng chập cũng không cục bộ nhưng dù sao cũng hoạt động rất tốt, do đó, nhiều kiến ​​trúc mạng thần kinh có chức năng truyền tuyến tính được chỉnh lưu). Lý do thực sự ở đây là nhiều cực tiểu.
bayerj

Câu trả lời:


10

Bạn có thể thấy k-mean là một phiên bản đặc biệt của thuật toán EM, có thể giúp ích một chút.

Giả sử bạn đang ước lượng một bản phân phối đa biến bình thường đối với mỗi cluster với ma trận hiệp phương sai cố định vào ma trận nhận dạng cho tất cả, nhưng biến trung bình nơi i là chỉ số của cluster. Rõ ràng, nếu các tham số { μ i } được biết đến, bạn có thể gán cho mỗi điểm p cụm khả năng tối đa của nó (nghĩa là μ i mà khoảng cách đến p là tối thiểu). Thuật toán EM cho vấn đề này gần như tương đương với phương tiện k.μii{μi}pμip

Một cách khác xung quanh, nếu bạn biết được điểm thuộc mà cụm, bạn có thể ước tính tối ưu . Các hình thức giải pháp khép kín này (mà tìm thấy một tối ưu toàn cầu) về cơ bản nói rằng để tìm ra mô hình khả năng tối đa { μ i } bạn tích hợp trên tất cả các bài tập thể của các điểm đến cụm. Vì thậm chí chỉ với ba mươi điểm và hai cụm, có khoảng một tỷ bài tập có thể như vậy, điều này là không khả thi để tính toán.μi{μ^i}

Thay vào đó, chúng ta có thể đoán một số tham số ẩn (hoặc tham số mô hình) và lặp lại hai bước (với khả năng kết thúc ở mức tối đa cục bộ). Nếu bạn cho phép mỗi cụm chịu trách nhiệm một phần cho một điểm, bạn sẽ kết thúc bằng EM, nếu bạn chỉ định cụm tối ưu, bạn sẽ có được phương tiện k.

Vì vậy, tóm tắt điều hành: về mặt xác suất, có một giải pháp toàn cầu, nhưng nó đòi hỏi bạn phải lặp đi lặp lại trên tất cả các cụm có thể. Rõ ràng nếu bạn có một chức năng khách quan, điều tương tự là đúng. Bạn có thể lặp lại tất cả các giải pháp và tối đa hóa hàm mục tiêu, nhưng số lần lặp là số mũ theo kích thước của dữ liệu của bạn.


Vâng đặt! Tôi sẽ đánh dấu đây là câu trả lời!
Prateek Kulkarni

4

Đây là vấn đề mà bạn muốn giải quyết:

minxi=1nj=1kxij||picj||2subject to:j=1kxij=1icj is the centroid of cluster jxij{0,1}i,j

Biến nhị phân cho biết điểm i có được gán cho cụm j hay không . Ký hiệu p ic j lần lượt là tọa độ của điểm thứ i và tâm của cụm thứ j . Cả hai đều nằm trong R d , trong đó d là chiều của các điểm dữ liệu.xijijpicjijRdd

Nhóm các ràng buộc đầu tiên nói rằng mỗi điểm nên được gán cho chính xác một cụm. Nhóm các ràng buộc thứ hai (mà chúng ta chưa xác định về mặt toán học) nói rằng tọa độ trọng tâm của cụm thực sự phụ thuộc vào các giá trị của các biến x i j . Chúng ta có thể ví dụ thể hiện ràng buộc này như sau: c j = Σ i x i j p i jjxij

cj=ixijpijixij

Tuy nhiên, thay vì xử lý các ràng buộc phi tuyến tính này, trong K-Means, chúng tôi (xấp xỉ) giải quyết một vấn đề khác có cùng giải pháp tối ưu như vấn đề ban đầu của chúng tôi:

minxi=1nj=1kxij||piyj||2subject to:j=1kxij=1ixij{0,1}i,jyjRdj

Thay vì giảm thiểu khoảng cách đến centroid, chúng tôi thu nhỏ khoảng cách đến bất kỳ tập hợp điểm nào sẽ đưa ra giải pháp tốt hơn. Nó chỉ ra rằng những điểm này chính xác là trung tâm.

Bây giờ để giải quyết vấn đề này, chúng tôi lặp lại trong các bước 2-3 của thuật toán này, cho đến khi hội tụ:

  1. yj
  2. yjxij
  3. xijyj

Trong mỗi bước, hàm mục tiêu sẽ cải thiện (hoặc giữ nguyên khi thuật toán hội tụ), vì giải pháp tìm thấy ở bước trước nằm trong không gian tìm kiếm của bước hiện tại. Tuy nhiên, vì chúng tôi đang sửa một số biến trong mỗi bước, đây là quy trình tìm kiếm cục bộ không đảm bảo tính tối ưu.

xTôijyjyjxTôijyj


2

Một ví dụ đơn giản có thể giúp ..

Hãy để chúng tôi xác định tập hợp các điểm sẽ được nhóm như A = {1,2,3,4}.

Giả sử bạn đang cố gắng tìm 2 cụm thích hợp cho A (2-nghĩa). Có (ít nhất) hai cài đặt khác nhau thỏa mãn điều kiện đứng yên của phương tiện k.

Cài đặt 1:

Center1 = 1, Cluster1 = {1}
Center2 = 3, Cluster1 = {2,3,4}

Mục tiêu ở đây là 2. Vì thực tế đây là điểm yên ngựa (thử center1 = 1 + epsiloncenter1 = 1 - epsilon)

Cài đặt 1:

Center1 = 1.5, Cluster1 = {1,2}
Center2 = 3.5, Cluster1 = {3,4}

ở đây mục tiêu là 1/4.

Nếu phương tiện k sẽ được khởi tạo như cài đặt đầu tiên thì nó sẽ bị kẹt .. và đó không có nghĩa là mức tối thiểu toàn cầu.

Bạn có thể sử dụng một biến thể của ví dụ trước để tạo hai cực tiểu cục bộ khác nhau. Đối với A = {1,2,3,4,5}, thiết lập cluster1={1,2}cluster2={3,4,5}sẽ dẫn đến cùng một giá trị mục tiêu như cluster1={1,2,3}cluster2={4,5}

Cuối cùng, điều gì sẽ xảy ra nếu bạn chọn

A = {1,2,3,4,6}
center1={2.5} cluster1={1,2,3,4} and 
center1={6} cluster1={6}

đấu với

center1={2} cluster1={1,2,3} and 
center1={5} cluster1={4,6}

?


0

[Đây là trước khi @Peter trả lời]
Sau một cuộc thảo luận nhỏ (trong phần bình luận), tôi cảm thấy mình phải trả lời câu hỏi của chính mình.

Tôi tin rằng khi tôi phân biệt một phần hàm mục tiêu đối với một centroid, các điểm trong cụm của một centroid khác sẽ biến mất trong đạo hàm. Vì vậy, trọng tâm chúng ta có thể nhận được sẽ chỉ giảm thiểu tổng khoảng cách bình phương của chỉ cụm cụ thể.

@whuber cho biết thêm:

Đó là một phần, nhưng không thực sự giải thích hành vi. Nhập khẩu nhiều hơn là thực tế là việc gán điểm cho centroid là phần lớn của những gì k-mean đang làm. (Một khi bài tập được thực hiện, các trọng tâm dễ dàng được tính toán và không còn gì để làm.) Nhiệm vụ đó là rời rạc: đó không phải là thứ gì đó có thể phân biệt được.

Nó sẽ là tuyệt vời nếu bất cứ ai có nhiều hơn để thêm.


0

Mọi người đã giải thích tất cả mọi thứ, nhưng tôi muốn thêm rằng nếu dữ liệu mẫu không được phân phối dưới dạng phân phối Gaussian thì nó có thể bị kẹt ở cực tiểu cục bộ. Trong thuật toán K-mean, chúng tôi thực sự đang cố gắng để có được điều đó.


Thay vì Gaussian, tôi nghĩ bạn có nghĩa là người không có đạo đức
Peter Leopold
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.