K- 평균의 단점을 이해하는 방법


365

K- 평균은 군집 분석에서 널리 사용되는 방법입니다. 내 이해에 따르면,이 방법은 모든 가정을 필요로하지 않습니다. 즉, 데이터 세트와 미리 지정된 수의 클러스터 k를 주면됩니다. 클러스터 제곱 내에서 제곱 오차 (SSE)의 합계를 최소화하는이 알고리즘을 적용하면됩니다. 오류.

k- 평균은 본질적으로 최적화 문제입니다.

k- 평균의 단점에 대한 자료를 읽었습니다. 그들 대부분은 다음과 같이 말합니다.

  • k- 평균은 각 속성 (변수)의 분포의 분산이 구형이라고 가정합니다.
  • 모든 변수는 동일한 분산을 갖습니다.
  • 모든 k 군집에 대한 사전 확률은 동일하다. 즉, 각 군집은 대략 동일한 수의 관측치를 갖는다;

이 세 가지 가정 중 하나를 위반하면 k- 평균이 실패합니다.

나는이 진술의 논리를 이해할 수 없었다. k- 평균 방법은 본질적으로 가정을하지 않는다고 생각합니다. SSE를 최소화하기 때문에 SSE를 최소화하는 것과 그 세 가지 "가정"사이의 연관성을 볼 수 없습니다.


49
클러스터 수는 이미 상당히 가정 한 것입니다.
njzk2

30
K-수단의 주요 가정은 : 1이 되어 K 클러스터. 2. SSE는 최소화하기위한 올바른 목표 입니다. 3. 모든 클러스터는 동일한 SSE를 갖습니다 . 4. 모든 변수는 모든 군집에 대해 동일한 중요성을 갖습니다. 이들은 매우 강력한 가정입니다 ...
Anony-Mousse

2
두 번째 질문 (답으로 게시 한 다음 삭제됨) : k- 평균을 선형 회귀와 유사한 최적화 문제로 이해하려면 양자화 로 이해하십시오 . 인스턴스를 사용하여 데이터의 최소 제곱 근사를 찾으려고 시도 합니다. 즉, 실제로 모든 점을 가장 가까운 중심으로 바꾼 경우 . k
Anony-Mousse

2
@ Anony-Mousse, 나는 자료를 읽었고 나중에 다음과 같은 생각을 생각해 냈습니다 : 통계 모델 (최적화 방법 대신)은 k 개의 클러스터가 있고 데이터의 분산은 순전히 정상적인 것으로 가정합니다 등분 산의 랜덤 노이즈. 이것은 단순한 선형 회귀 모델의 가정과 유사합니다. 그런 다음 Gauss-Markov 정리의 일부 버전에서 (종이를 찾지 못했습니다) 평균은 데이터에 대해 가정 한 기본 k 군집의 평균에 대한 일관된 추정치를 제공합니다. 케이 -kk
KevinKim

1
k-means가 실제로 잘 작동한다고 가정 할 수 있지만 (동일한 모양의 모든 군집) 여전히 로컬 최소값에 머물러 있다고 가정 할 수있는 데이터 세트의 아래 답변에 그림을 추가했습니다. 심지어 1000 회 반복해도 최적의 결과를 찾지 못했습니다.
Anony-Mousse

답변:


273

나는 여기에 David Robinson의 대답 이 많이 좋아하지만 k- 평균에 대한 추가 비판이 있습니다.

비 클러스터 데이터 클러스터링

균일 한 데이터에 대해 k- 평균을 실행하면 여전히 클러스터를 얻게됩니다! 데이터가 클러스터 되지 않는 시점을 알려주지 않으며 이러한 방식으로 막 다른 골목에 대한 연구를 수행 할 수 있습니다.

균일 한 데이터에 대한 K- 평균

스케일에 민감

데이터 세트의 크기를 조정하면 결과가 완전히 변경됩니다. 이것 자체는 나쁘지는 않지만 데이터 스케일링에 특별한주의를 기울여야 한다는 것을 깨닫지 못하는 것은 나쁩니다. 확장 요소가 추가되어 에 숨겨진 매개 변수 (1) 따라서이 "기본"쉽게 간과, 아직 큰 영향을 미칠 것을 K-의미한다 (그러나 물론이 너무 많은 다른 알고리즘에 적용).d

이것은 아마도 "모든 변수는 동일한 분산을가집니다"라고 할 수 있습니다. 이상적으로는 적절한 경우 비선형 스케일링을 고려할 수 있습니다.

또한 단위 분산을 갖도록 모든 축을 스케일링하는 것은 휴리스틱 일뿐 입니다. 이것은 k- 평균이 작동하는 것을 보장하지는 않습니다. 스케일링은 데이터 세트의 의미에 따라 다릅니다. 또한 군집이 둘 이상인 경우 모든 군집 (모든 군집)에서 모든 군집 (독립적으로)이 동일한 분산을 갖기를 원할 것입니다.

다음은 k- 평균으로 군집화 할 수없는 데이터 세트의 고전적인 예 입니다. 두 축 모두 각 군집에 iid이므로 1 차원에서이를 수행하는 것으로 충분합니다. 그러나 군집에는 다양한 분산이 있으므로 k- 평균은이를 잘못 나눕니다.

K- 평균은이 데이터 세트를 군집화 할 수 없습니다

나는 k- 평균에 대한이 반례가 당신의 요점으로 덮여 있다고 생각하지 않습니다.

  • 모든 군집은 구형입니다 (iid Gaussian).
  • 모든 축은 동일한 분포를 가지므로 분산입니다.
  • 두 클러스터에는 각각 500 개의 요소가 있습니다.

그러나 k- 평균은 여전히 ​​심각하게 실패합니다 (더 큰 군집의 경우 분산을 0.5 이상으로 늘리면 악화됩니다). 그러나 실패한 알고리즘은 아닙니다. 그것을 유지하지 않는 가정 입니다. K-means는 완벽하게 작동하고 있으며 잘못된 기준을 최적화하고 있습니다.

완벽한 데이터 세트에서도 로컬 최소값에 멈출 수 있습니다

다음은 클래식 A3 데이터 세트에서 10 회 실행 된 k- 평균 의 최고 입니다. 이것은 k- 평균을 위해 설계된 합성 데이터 세트 입니다. 각 가우시안 모양의 클러스터 50 개가 합리적으로 잘 분리되어 있습니다. 그러나 k-me ++++ 및 100 반복으로 만 예상되는 결과를 얻었습니다 ... (아래 그림은 일반적인 k- 평균의 10 반복입니다).

A3 데이터 세트의 k- 평균

이 데이터 세트에서 k- 평균이 올바른 구조를 찾지 못한 많은 클러스터를 빠르게 찾을 수 있습니다. 예를 들어 오른쪽 하단에서 클러스터는 세 부분으로 나뉩니다. 그러나 방법은, K-수단이 데이터 세트의 완전히 다른 곳으로 이러한 무게 중심 중 하나를 이동하려고하지 않습니다이 -이 로컬 최소에 갇혀 (이 이미이었다 최고 10 개 실행의!)

그리고이 데이터 세트 에는 많은 지역 최소값이 있습니다. 동일한 클러스터에서 두 개의 샘플을 가져 오면이 클러스터가 분할 된 상태로 유지되고 다른 두 개의 클러스터가 대신 병합되는 경우가 종종 있습니다. 항상 그런 것은 아니지만 매우 자주 발생합니다. 따라서 운이 좋은 선택을하려면 많은 반복이 필요합니다. k- 평균을 100 회 반복해도 여전히 6 개의 오류를 계산했으며 1000 회 반복하면이를 4 개의 오류로 줄였습니다. K- 평균은 랜덤 샘플에 가중치를 부여하는 방식으로이 데이터 세트에서 훨씬 잘 작동합니다.

연속적인 수단

이진 데이터 (또는 핫 인코딩 된 범주 형 데이터)에서 k- 평균을 실행할 수 있지만 결과는 더 이상 이진이 아닙니다. 따라서 결과를 얻을 수는 있지만 원래 데이터와 다른 데이터 유형을 가지고 있기 때문에 결과를 해석하지 못할 수도 있습니다.

숨겨진 가정 : SSE는 최소화 할 가치가 있습니다

이것은 본질적으로 위의 대답에 이미 존재하며 선형 회귀로 잘 설명됩니다. k- 평균이 완벽한 의미를 갖는 사용 사례가 있습니다. Lloyd는 PCM 신호를 디코딩해야 할 때 다양한 톤 수를 알았으며 최소 제곱 오류는 디코딩 오류 가능성을 최소화합니다. 그리고 이미지의 색상 양자화에서 팔레트를 줄일 때 색상 오류를 최소화합니다. 그러나 데이터에서 제곱 편차의 합은 최소화해야 할 중요한 기준입니까?

위의 반대 예에서, 분산은 클러스터에 의존하기 때문에 최소화 할 가치 가 없습니다 . 대신 아래 그림과 같이 가우스 혼합 모델이 데이터에 적합해야합니다.

가우스 혼합 모델링

(그러나 이것은 궁극적 인 방법 도 아닙니다 . 예를 들어, 많은 배경 잡음을 추가함으로써 "k 가우스 분포의 혼합"가정을 만족시키지 않는 데이터를 구성하는 것은 쉽습니다)

잘못 사용하기 쉽다

대체로 데이터에 k- 평균을 던지기가 너무 쉽지만 그럼에도 불구하고 결과를 얻을 수 있습니다 (이는 거의 임의적이지만 눈치 채지 못할 것입니다). 데이터를 이해하지 못하면 실패 할 수있는 방법을 사용하는 것이 좋습니다.

양자화로서의 K- 평균

k- 평균의 이론적 모델을 원한다면 클러스터링 알고리즘이 아닌 양자화 접근법을 고려하십시오 .

제곱 오차를 최소화하는 k- 평균의 목적은 모든 객체를 가장 가까운 중심으로 교체하는 경우 합리적인 선택 입니다. 그룹의 원본 데이터 IMHO를 검사하면 훨씬 이해가되지 않습니다.

이것에 대한 매우 좋은 사용 사례가 있습니다. Lloyd의 원래 PCM 사용 사례 또는 예를 들어 색상 양자화 (Wikipedia)가 떠 오릅니다 . 당신은 색상을 k로 이미지를 줄이려면, 당신은 가장 가까운 중심으로 모든 픽셀을 대체합니다. 제곱 색 편차를 최소화하는 것은 다음 않고 사용 이미지 근사 최적의 L2를 측정 색만을.k

이 양자화는 아마도 선형 회귀 예제와 매우 유사합니다. 선형 회귀는 최상의 선형 모형을 찾습니다 . 그리고 k- 평균은 (때로는) 다차원 데이터 세트의 k 값 에 대한 최상의 감소를 찾습니다 . 여기서 "best"는 최소 제곱 오차입니다.

IMHO, k-means는 좋은 양자화 알고리즘입니다 (이 게시물의 첫 번째 이미지 참조-데이터 세트를 두 점으로 근사하려면 합리적인 선택입니다!). 탐색 구조 에서와 같이 군집 분석을 수행하려면 k- 평균이 IMHO가 최선의 선택이 아닙니다. 클러스터가없는 경우 클러스터되는 경향이 있으며 많은 데이터를 볼 수있는 다양한 구조를 인식 할 수 없습니다.


정밀 인쇄 : 모든 이미지가 ELKI 로 생성 되었습니다 . 데이터는 .xml데이터 생성 형식을 사용하여 생성되었지만 기본이므로 공유 할 가치가 없습니다.


17
참고로, 독자가 보는 답변 순서는 가변적 일 수 있으므로 "답변 위"에 대해 이야기하는 것은 좋지 않습니다. 예를 들어 표시 순서를 "활성"으로 설정하면 대답은 실제로 위의 것!)
Silverfish

1
@ Anony-Mousse이 답변은 정말 대단합니다. 그러나 지금까지는 "k- 평균은 어떤 조건에서는 작동하고 다른 조건에서는 작동하지 않을 것"이라는 말의 의미를 잊어 버렸습니다. 이 맥락에서 "일"또는 "실패"라는 단어는 무엇을 의미합니까? "작동"은 k- 평균으로 생성 된 솔루션이 시각적으로 '합리적으로 보입니다'를 의미합니까? 이것은 막연하다. 또는 '작업'은 k- 평균이 '표준 솔루션'과 동일한 솔루션을 제공하는 경우 즉, 데이터 세트를 사전 생성하고 k- 평균을 사용하는 것을 의미합니다. 이러한 맥락에서 '작업'은 의미가 있지만 실제로는 일부 배포에 의해 데이터가 사전 생성되지 않습니다.
KevinKim

일반적으로 사람들은 몇 가지 기본 사실, 즉 데이터가 어떻게 생성되었는지 또는 알고리즘에서 숨겨진 레이블을 참조합니다. 생성 된 데이터를 비교하는 것은 생성에 사용 된 모델을 최적화하는 알고리즘을 선호합니다 (예 : 가우시안의 경우 GMM 및 k- 평균). 그리고 실제 및 레이블이 지정된 데이터에서도이 평가는 알려진 결과를 재현하는 것입니다. 탐구 적 / 지식 발견 측면을 고려할 때, 새로운 것을 배우고 자합니다 . 그러나 우리가 가진 전부입니다.
Anony-Mousse

우선 순위를 결정 했을 때 가 효과적으로 존재하는 클러스터의 수로 조정 되면 A3 데이터 세트에서 더 잘 작동 합니까? k
TMOTTM

@TMOTTM 이것은 사전 지식에 의해 선택된 k입니다. "정확한"k가 선험적으로 선택된 10 개 중 최고가 모두 실행됩니다.
익명-무스

450

훌륭한 질문입니다. 통계적 방법의 단점과 가정을 어떻게 검사하는지 보여줄 수있는 기회입니다. 즉, 일부 데이터를 구성하고 알고리즘을 사용해보십시오!

우리는 두 가지 가정을 고려할 것이며, 가정이 깨질 때 k- 평균 알고리즘에 어떤 일이 발생하는지 볼 것입니다. 시각화하기 쉽기 때문에 2 차원 데이터를 고수 할 것입니다. ( 차원저주 덕분 에 차원 을 추가하면 이러한 문제가 더 심각해질 수 있습니다.) 우리는 통계 프로그래밍 언어 R로 작업 할 것입니다. 여기 에서 전체 코드를 찾을 수 있습니다 ( 여기서는 블로그 형식의 게시물 ).

기분 전환 : Anscombe의 사중주

먼저 비유입니다. 누군가 다음과 같은 주장을했다고 상상해보십시오.

선형 회귀 분석의 단점에 대해 몇 가지 자료를 읽었습니다. 선형 추세를 기대하고 잔차가 정상적으로 분포되어 있으며 특이 치가 없다는 것입니다. 그러나 모든 선형 회귀 분석은 예측 된 선에서 제곱 오차 (SSE)의 합계를 최소화하는 것입니다. 그것은 곡선의 모양이나 잔차 분포에 관계없이 해결할 수있는 최적화 문제입니다. 따라서 선형 회귀 분석에는 아무런 가정이 필요하지 않습니다.

그렇습니다. 선형 회귀는 제곱 잔차의 합을 최소화하여 작동합니다. 그러나 그 자체로는 회귀의 목표가 아닙니다. 우리가 하려는 것은 x에 기반한 y 의 신뢰할 수 있고 편견이없는 예측 변수로 작용하는 선을 그리는 것입니다 . 가우스 - 마코프 정리 SSE를 최소화하면 해당 goal-을 수행하지만 정리가 매우 특정 가정에 달려 있음을 알려줍니다. 그 가정이 깨진 경우에도 SSE을 최소화 할 수 있지만하지 않을 수 있습니다 아무것도. "페달을 밟아 차를 운전할 수 있습니다. 운전은 본질적으로 '페달 푸싱 과정'입니다. 탱크의 가스 양에 상관없이 페달을 밟을 수 있습니다. 따라서 탱크가 비어 있어도 페달을 밟아 차를 운전할 수 있습니다. "

그러나 대화는 싸다. 차갑고 어려운 데이터를 살펴 보자. 또는 실제로는 구성 데이터입니다.

여기에 이미지 설명을 입력하십시오

이것은 실제로 내가 가장 좋아하는 메이크업 데이터입니다 : Anscombe 's Quartet . 통계 학자 Francis Anscombe가 1973 년에 창안 한이 유쾌한 조합은 통계적 방법을 맹목적으로 신뢰하는 어리 석음을 보여줍니다. 데이터 세트 각각은 동일한 선형 회귀 기울기, 절편, P 값 및 보유 - 아직 한눈 우리는 이들 중 하나만 있음을 알 수 I는 선형 회귀 적합하다. II 에서는 잘못된 모양을 제안하고 III 에서는 단일 특이 치에 의해 기울어졌으며 IV 에는 전혀 추세가 없습니다!R2

"선형 회귀는 여전히 하나는 말할 수 작업 은 잔차의 제곱의 합을 최소화하기 때문에, 이러한 경우에." 그러나 어떤 Pyrrhic 승리 ! 선형 회귀는 항상 선을 그리지 만 의미없는 선이라면 누가 신경 쓰나요?

이제 최적화를 수행 할 수 있다고해서 목표를 달성한다는 의미는 아닙니다. 그리고 데이터를 구성하고 시각화하는 것이 모델의 가정을 검사하는 좋은 방법이라는 것을 알았습니다. 직관에 매달리면 잠시 후에 필요합니다.

깨진 가정 : 비 구형 데이터

비 구형 클러스터에서는 k- 평균 알고리즘이 제대로 작동한다고 주장합니다. 비 구형 클러스터는 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

아마도 이것이 당신이 기대 한 것이 아닐 수도 있지만 클러스터를 구성하는 데는 합리적입니다. 이 이미지를 보면, 우리 인간 은 두 개의 자연적인 지점 그룹을 즉시 인식합니다. k- 평균이 어떻게 수행되는지 봅시다 : 할당은 컬러로 표시되고, 대치 된 중심은 X로 표시됩니다.

여기에 이미지 설명을 입력하십시오

글쎄, 그건 옳지 않다. K-means는 둥근 구멍에 사각형 못을 맞추려고 시도했습니다. 주변에 깔끔한 구가있는 멋진 센터를 찾으려고했지만 실패했습니다. 예, 여전히 클러스터 내 제곱합을 최소화하고 있습니다. 그러나 위의 Anscombe의 Quartet과 마찬가지로 Pyrrhic의 승리입니다!

"이것은 공정한 예가 아닙니다 ... 어떤 클러스터링 방법도 그 이상한 클러스터를 정확하게 찾을 수 없습니다 "라고 말할 수 있습니다 . 사실이 아니다! 단일 연계 계층 적 클러스터링을 시도하십시오 .

여기에 이미지 설명을 입력하십시오

못을 박았다! 단일 연결 계층 적 클러스터링 이이 데이터 세트에 올바른 가정을하기 때문입니다. ( 실패한 다른 모든 종류의 상황이 있습니다).

당신은 "그것은 극단적이고 병적 인 단일 사례"라고 말할 수 있습니다. 그러나 그렇지 않습니다! 예를 들어 외부 그룹을 원 대신 반원으로 만들면 k- 평균이 여전히 끔찍한 것을 볼 수 있습니다 (계층 적 클러스터링은 여전히 ​​낫습니다). 다른 문제가있는 상황을 쉽게 생각 해낼 수 있습니다. 그것은 두 가지 차원에 있습니다. 16 차원 데이터를 클러스터링 할 때 발생할 수있는 모든 종류의 병리가 있습니다.

마지막으로 k-means는 여전히 구할 수 있습니다! 데이터를 극좌표 로 변환하여 시작하면 이제 클러스터링이 작동합니다.

여기에 이미지 설명을 입력하십시오

그렇기 때문에 분석법의 기본 가정을 이해하는 것이 필수적입니다. 분석법에 결점이있는 시점을 알려주는 것이 아니라이를 해결하는 방법을 알려줍니다.

깨진 가정 : 불균일 한 크기의 클러스터

군집에 고르지 않은 수의 점이 있으면 k- 평균 군집화가 중단됩니까? 크기가 20, 100, 500 인이 군집 세트를 고려하십시오. 나는 다변량 가우스에서 각각 생성했습니다.

여기에 이미지 설명을 입력하십시오

이것은 k- 평균이 아마도 그 클러스터를 찾을 수있을 것 같습니다. 모든 것이 깔끔하고 깔끔한 그룹으로 생성되는 것 같습니다. k- 평균을 사용해 봅시다 :

여기에 이미지 설명을 입력하십시오

아야. 여기서 일어난 일은 약간 미묘합니다. 클러스터 내 제곱합을 최소화하기 위해 k- 평균 알고리즘은 더 큰 군집에 더 많은 "무게"를 제공합니다. 실제로, 이는 작은 클러스터가 어느 센터에서나 멀리 떨어져있게하는 것을 기쁘게 생각하며, 그 센터를 사용하여 훨씬 큰 클러스터를 "분할"합니다.

이 예제를 약간만 사용하면 ( R 코드 여기! ) k-means가 당혹스럽게 잘못되는 훨씬 더 많은 시나리오를 구성 할 수 있음을 알 수 있습니다.

결론 : 무료 점심 없음

Wolpert와 Macready가 공식화 한 수학 민속학 에는 "무료 점심 식사 정리"라는 매력적인 구조가 있습니다. 그것은 아마도 기계 학습 철학에서 내가 제일 좋아하는 정리, 그리고 내가 그것을 가져 오는 기회를 맛보세요 (한 나는이 질문을 사랑 언급?) 기본적인 아이디어는이 같은 (비 엄격) 적혀있다 : "가능한 모든 상황에 걸쳐 평균하면, 모든 알고리즘의 성능이 동일합니다. "

직관적 인 사운드? 알고리즘이 작동하는 모든 경우에 대해 실패한 상황을 구성 할 수 있다고 생각하십시오. 선형 회귀 분석은 데이터가 선을 따라 떨어지는 것으로 가정하지만 정현파를 따르는 경우 어떻게해야합니까? t- 검정은 각 표본이 정규 분포에서 나온 것으로 가정합니다. 이상 값을 던지면 어떻게됩니까? 모든 기울기 상승 알고리즘은 로컬 최대 값에 갇힐 수 있으며 감독 된 분류는 과적 합으로 속일 수 있습니다.

이것은 무엇을 의미 하는가? 그것은 가정 이 당신의 힘이 오는 곳 이라는 것을 의미합니다 ! Netflix가 영화를 추천 할 때, 영화를 좋아하면 비슷한 영화를 좋아한다고 가정합니다 (반대의 경우도 마찬가지). 그것이 사실이 아닌 세상을 상상해보십시오. 당신의 취향은 장르, 배우 및 감독들 사이에 우연히 무작위로 흩어져 있습니다. 그들의 추천 알고리즘은 크게 실패 할 것입니다. "글쎄, 여전히 예상되는 제곱 오차를 최소화하고 있기 때문에 알고리즘이 여전히 작동하고있다"고 말하는 것이 합리적일까요? 클러스터 특성에 대한 몇 가지 가정없이 클러스터링 알고리즘을 만들 수없는 것처럼 사용자의 취향에 대한 몇 가지 가정없이 추천 알고리즘을 만들 수 없습니다.

따라서 이러한 단점을 받아들이지 마십시오. 알고리즘을 선택하면 원하는 알고리즘을 알려줄 수 있습니다. 그것들을 이해하면 알고리즘을 조정하고 데이터를 변환하여 해결할 수 있습니다. 당신의 모델이 결코 틀릴 수 없다면 그것은 결코 옳지 않을 것이라는 것을 의미하기 때문에 그들을 사랑하십시오.



50
이 열정적 인 답변에 +1. 나는 특히 극적 변형 예를 즐겼습니다. 그 영리한 속임수는 수학적으로 무지한 두뇌를 놀라게하는 것을 멈추지 않습니다.
mugen

20
+ 1, 이것은 분석의 세부 사항에 얽매이지 않고 가정이 어떻게 분해되는지 보여주는 훌륭한 일입니다.
Louis Cialdella

15
+1 사람들이 나에게 계속 불평하는 일반적인 것 중 하나는 이론적 인 것이 실제로 작동하지 않는다는 것입니다. 그러나 "내 데이터가 모델의 가정에 적합합니까?" 나는 그들의 얼굴에서 단순히 빈 얼굴을 얻습니다. 당신의 대답과 특히 마지막 부분은 정말 행복했습니다.
TenaliRaman

9
+1 와우, 나는 잠시 동안 주변에 있었다. 그러나 나는 하루에 50+의 공의를 얻는 대답을 본 적이 없다고 생각한다 . 이것은 정말 인상적인 성과입니다.
amoeba

7
내가 본 것처럼, 극좌표 변환은 커널 클러스터링 기술에 대한 최초의 전문 용어가없는 예에서 주로 유용합니다.
Mikael Vejdemo-Johansson

7

총 클러스터 분산을 최소화하기위한 클러스터링 은 실제로 조합 최적화 문제이며, k-Means는 하나의 기술 일 뿐이며 후자의 "한 번에"로컬 "가장 빠른 하강"특성을 고려하면 @DavidRobinson의 답변에 덧붙이고 싶습니다 . 아주 나쁜 너무 하나. 또한, 클러스터 베어가 있어야하는 위치를 알아내는 방법으로 "베어 뼈"k- 평균을 실질적으로 개선하려는 시도는 처음부터 끝납니다 : 씨앗이 최종 클러스터에 영향을 미치기 때문에, 그 양은 실제로 계산 하기 전에 최적이 무엇인지 "알고" 있습니다.

그러나 대부분의 최적화 문제는 그럼에도 불구하고 심각한 최적화 기술 을 사용할 수 있습니다 . 그중 하나는 문제의 구조에 매우 밀접하게 부합하며 (NFL이 요구하는 것처럼!) 결과에 분명히 나타납니다. 여기에 광고를 게재하고 싶지 않습니다 (예 : 에티켓에 맞지 않을 수 있음). 관심이 있으시면 여기를 읽고 직접 판단하십시오.

즉, k-Means가 확실히 가우스 혼합을 식별 하지 못한다 는 @ttnphns에 동의 합니다. 두 문제의 비용 함수는 완전히 다릅니다. 가우스 혼합은 가장 적합한 (데이터가 주어진 모델의 확률 측면에서) 찾는 것이 조합 최적화 문제이며 심각한 최적화 기술도 존재 한다는 것이 밝혀졌습니다 . 다시 한 번, 광고가 없습니다. 여기서 자신의 결론에 도달 할 수 있습니다. 여기서 논의 된 알고리즘이 실제로 @DavidRobinson의 게시물의 마지막 이미지 와 같은 클러스터를 정확하게 식별 할 수 있다고 말 하겠습니다 . 그것은 심지어 정확하게 (즉, 수학적으로 잘 정의 된 방식으로) 이상치 의 다년생 문제를 해결합니다즉, 임의의 클러스터 에 속하지 않는 데이터 포인트는 완전히 무작위이기 때문에 ( 예를 들어 k-Means완전히 탈선 시킵니다). 이것은 하나의 추가, 필요에 의해 이루어집니다 균일 한 분포가 가우시안 ... 그리고 화려한 결과와 경쟁하는 것은 참으로보고, 균일하게 분산 된 데이터 것을 켜져 없다 아무것도 거기 (I 다른 곳 것을 본 적이가).

NFL에 따르면, 분명히 지적한 바와 같이 , 이상치 식별을 가진 전 세계적으로 최적의 가우시안 혼합물조차도 이전 가정, 즉 데이터가 실제로 정상적으로 분포되어 있다는 가정에 의존합니다. 다행스럽게도 많은 수의 법칙 덕분에 수많은 자연 현상 그 가정을 준수합니다.

면책 조항 : 가장 깊은 사과로 위의 두 논문과 그들이 논의 한 알고리즘을 모두 썼습니다.

PS 나는 회의에서 Macready를 한 번 만났다 – 매우 밝고 멋진 사람!


이것은 질문에 대한 답변이라고 가정합니다.
마이클 체닉

3
그것은 실제로 대답입니다, Michael : k- 평균은 실제로 조합 최적화 문제가 무엇인지 해결하는 척하지만 ... (심지어 어떤 식 으로든 심각하지는 않습니다)! 또한 k-Means는 구상 분포를 (설계에 따라) 가정합니다.이 분포는 당신을 울게 만듭니다 (치수 중 하나에 2를 곱하고 "스마트 한 종자"에 관계없이 완전히 다른 것을 얻습니다!). k-Means가 "심각한"군집화를 할 수있는 모든 척력을 완전히 파괴하더라도 특이 치 (내가 본 실제 데이터에 있음)의 문제는 k-Means에서도 다루어지지 않습니다.
Emanuel Falkenauer 5

1
@EmanuelFalkenauer, 사이트에 오신 것을 환영합니다. 나는 당신의 대답에 투표 (+1)를하고 있지만, 그것은 소박합니다. K-mean은 어떻게 인간이 아닌 무언가를 가장 할 수 있습니까? 간단하고 빠른 방법을 위해 그것이하는 일을하고 나쁘지 않습니다.
ttnphns 2012

@ttnphns : 환영과 공감에 감사드립니다! 물론 k-Means 는 아무것도 척하지 않지만 (단지 코드 조각 일뿐입니다!) OP가 발견 한대로 그것을 홍보하는 사람들 은 그렇게합니다. 나는 그것이 "단순 / 빠른"방법이라는 지적에 동의하지만 가장 큰 문제는 가장 단순한 데이터를 제외하고는 그 결과에 의존하는 것이 자살에 가깝다는 것입니다. 시간이 지나도 끔찍한 일을합니다. 당신은 가장 가파른 하강으로 조합 문제를 해결하지 않습니다. ;-)
에마누엘 팔 케나 우어

6

논리적으로 말하자면 K- 평균의 단점은 다음과 같습니다.

  • 클러스터의 선형 분리 성 이 필요 합니다
  • 클러스터 수 를 지정해야 합니다
  • 알고리즘 : Loyds 프로시 저는 점이나 차원이 많은 경우 초기화가 잘 되어도 실제 최대 값으로 수렴하지 않습니다.

그러나 K- 평균은 일반적으로 생각하는 것보다 낫습니다. 백만 개의 텍스트로 구성된 실제 텍스트 분류에서 다른 클러스터링 방법 (스펙트럼, 밀도 ...) 및 LDA에 대해 테스트 한 후 그것에 대해 매우 열중했습니다 .K- 평균은 LDA보다 정확도가 훨씬 뛰어났습니다 (88 % 대 59 %). 다른 클러스터링 방법은 좋았지 만 K- 평균은 최상위에 가깝고 복잡성 측면에서 더 저렴했습니다.

광범위한 문제에서 보편적으로 더 나은 클러스터링 방법에 대해 읽은 적이 없습니다. 내가 아는 한 보편적 인 클러스터링 슈퍼 히어로가 없다는 것만으로 K-means가 보편적으로 더 좋습니다. 많은 기사, 많은 방법, 진정한 혁명이 아닙니다 (제 개인적으로 제한된 테스트 경험 중).

K-means의 논리적 단점이 종종 명백한 주된 이유는 2D 평면의 군집 점이 기계 학습에서 거의 수행하지 않기 때문입니다. 2D, 3D에서 사실 인 기하학적 직관의 많은 것들은 다소 높은 차원이나 추상적 벡터 공간 (관련 단어, 변수 벡터 등)과 관련이 없습니다.

선형 분리 성 : 실제 데이터에서 원형 클러스터를 처리 할 필요는 거의 없습니다. 이 경우에는 존재하지 않는다고 가정하는 것이 좋습니다. 알고리즘이 해당 알고리즘을 검색하도록 허용하면 노이즈에서 홀수 원형 클러스터를 찾을 수 있습니다. K- 평균의 선형 가정은 종종 더 강력합니다.

군집 수 : 종종보고 싶은 실제 이상적인 군집 수가 없습니다. 예를 들어 텍스트 분류의 경우 100 개 범주, 105, 110 개가있을 수 있습니다. 모두 주관적입니다. 군집 수를 지정하면 전역 단위를 지정하는 것과 같습니다. 어쨌든 모든 클러스터링 방법에는 세분성 사양이 필요합니다.

10a lot

그러나 모든 클러스터링 알고리즘에는 이러한 제한이 있습니다. 예를 들어 Spectral clustering : 실제 고유 벡터를 찾을 수없고 근사값 만 찾을 수 있습니다.

동일한 계산 시간 동안 상당히 최적화 된 LDA 라이브러리는 자체 제작 (완벽하게 최적화되지 않은) K- 평균보다 성능이 떨어졌습니다. 그 이후로 나는 조금 다르게 생각합니다.


1

K- 평균의 단점을 이해하기 위해 모델 뒤에있는 모델이 무엇인지 생각하고 싶습니다.

KK

Kσ2Iσ2Kσ20

이것이 K- 평균의 단점에 대해 무엇을 알려줍니까?

  1. K- 평균은 다변량 가우스 모양의 군집으로 이어집니다.
  2. 변수에 대한 분산이 동일하기 때문에 K- 평균은 구형으로 보이는 군집으로 이어집니다.
  3. K
  4. K- 평균은 같은 크기의 그룹으로 경향이 있습니다.

K- 평균은 실제로 상당히 제한적인 알고리즘입니다. 위의 가정으로 알고리즘을 매우 빠르게 수행 할 수 있다는 이점이 있습니다. 그러나 클러스터링 성능이 가장 중요하다면 K-means는 일반적으로 실제 상황에서 너무 제한적입니다.


2
전적으로 동의 할 수 없습니다. K- 평균은 가우스 혼합의 특별한 경우라고 할 수있다. K- 평균은 정규 분포 (따라서 확률 론적 근거가 아님)와 같은 특정 유형의 분포를 가정하지 않습니다. 겹치지 않는 클러스터를 가정합니다 (즉, "믹스"없음). 구형 클러스터를 가정하지만 Voronoi 셀의 볼록 다각형을 가정한다고 더 정확합니다. K-means가 아무것도 "모델링"하지 않는다고 말하는 것이 옳을 수도 있습니다. 데이터 생성 프로세스에 대한 직접적인 참조는 없습니다. K- 평균은 "동일한 크기의 [포인트 수] 그룹으로 경향"을 의미합니다 – 반드시 그런 것은 아닙니다.
ttnphns 2016

4
또한 그 K-수단에 표시 할 수있는 것은 사실 @ttnphns GMM의 특별한 경우이다 en.wikipedia.org/wiki/K-means_clustering#Gaussian_Mixture_Model
TrynnaDoStat

It can be shown that. 충분한 스트레칭으로 인해, 이유를 넘어서서 어떤 것이라도 친족으로서 "표시"될 수 있습니다.
ttnphns 2016

2
@ttnphns 아니요, 모든 것을 수학적으로 표시 할 수는 없습니다.
TrynnaDoStat
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.