K- 평균 : 실제 상황에서 얼마나 많은 반복이 있습니까?


10

데이터 마이닝 또는 빅 데이터에 대한 업계 경험이 없으므로 경험을 공유하는 것을 듣고 싶습니다.

사람들이 실제로 큰 데이터 세트에서 k- 평균, PAM, CLARA 등을 실행합니까? 아니면 무작위로 샘플을 추출합니까? 데이터 집합의 샘플 만 가져 오는 경우 데이터 집합이 정규 분포를 따르지 않으면 결과가 신뢰할 수 있습니까?

이러한 알고리즘을 실행할 때 실제 상황에서 수렴이 발생할 때까지 일반적으로 반복되는 횟수를 알 수 있습니까? 아니면 반복 횟수가 항상 데이터 크기에 따라 증가합니까?

수렴 전에 반복 알고리즘을 종료하는 접근 방식을 개발하려고 생각하기 때문에 이것을 묻고 있지만 결과는 여전히 허용됩니다. 반복 횟수가 1,000 개가 넘으면 시도해 볼 가치가 있다고 생각하므로 계산 비용과 시간을 절약 할 수 있습니다. 어떻게 생각해?


number of iterations always grow with the data size반드시 그런 것은 아닙니다.
ttnphns 2012

K- 평균에서 반복을 중지하기위한 다양한 기준이 있습니다. 흥미롭게도, 반복 횟수를 고정 된 값 (예 : 10 또는 20)으로 설정하는 것은 합리적인 방법 중 하나입니다. K- 평균은 빠른 방법을 제공하기 위해 최선을 다하고 있으므로 매 반복마다 수렴 기준을 확인하려면 기준을 계산하기 쉽고 빠르지 않아야합니다.
ttnphns

1
실행할 최대 반복 횟수를 결정하는 "과학적인"방법이 있습니까?
foo

마지막 의견은 좋은 질문입니다. 솔직히 모르겠습니다. 다른 사람들이 대답 할 수도 있습니다.
ttnphns 2012

답변:


6
  1. K- 평균은 싸다. 여러 번 반복 하여 실행할 수 있습니다 .

  2. 잘못된 알고리즘 (표준 알고리즘)과 좋은 알고리즘이 있습니다. 좋은 알고리즘을 위해, 이후의 반복 비용은 종종 첫 번째 반복의 1 %보다 훨씬 적습니다.

  3. 실제로 느린 구현이 있습니다. 사용하지 마십시오.

  4. "큰"데이터에 대한 K- 평균이 존재하지 않습니다. 저 차원 벡터 데이터에서만 작동하기 때문입니다. 이러한 데이터가있는 최신 서버의 메모리를 초과하지 않습니다. 예, 더 큰 데이터가 존재하지만 한 달의 트위터 데이터에 k- 평균을 사용할 수는 없습니다. 유용한 정보를 제공하지 않기 때문입니다.

현대적인 서버에서 우수한 구현을 통해 k- 평균이 여전히 유용한 결과를 제공하는 곳에서 찾을 수있는 가장 큰 데이터 세트는 수렴까지 계산하는 데 1 분 미만이 소요될 수 있습니다. 그렇다면 왜 반복 한계에 대해 생각 하는가?


1
동의하다. 이 논문에서 ( 순위 검색에 의한 Scalable K-Means ), 저자는 K-means는 모든 실제 상황에서 테스트 한 고차원 데이터 세트에서도 20-50 회 반복 한 후에 수렴한다고 언급했습니다. K-means와는 별도로 수렴 할 때까지 수많은 반복을 수행하는 알고리즘을 알고 있습니까?
foo

SVM을 훈련시킬 수 있습니까? 나는 지원 벡터의 가장 좋은 (그리고 예측이 이것에 의존하기 때문에 가장 작습니다) 세트를 찾으려고 노력하는 것이 반복적이라고 생각합니다.
종료-익명-무스

고차원 데이터 세트에서 k- 평균을 실행하는 확실한 솔루션은 PCA 또는 기타 차원 축소 방법을 먼저 실행 한 다음 k- 평균을 실행하는 것입니다
nico
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.