계층 적 군집화에서 Ward의 클러스터 간 연결과 함께 Manhattan 거리를 사용하는 것이 좋습니까?


15

시계열 데이터를 분석하기 위해 계층 적 클러스터링을 사용하고 있습니다. 내 코드는 Mathematica 함수를 사용하여 구현 DirectAgglomerate[...]되며 다음 입력이 주어지면 계층 적 클러스터를 생성합니다.

  • 거리 행렬 D

  • 클러스터 간 연결을 결정하는 데 사용되는 방법의 이름

맨해튼 거리를 사용하여 거리 행렬 D를 계산했습니다.

d(x,y)=i|xiyi|

여기서 n 150 은 내 시계열의 데이터 포인트 수입니다.i=1,,nn150

제 질문은 Ward의 클러스터 간 연결을 Manhattan 거리 매트릭스와 함께 사용할 수 있습니까? 일부 자료에 따르면 Ward의 연계는 유클리드 거리에서만 사용해야합니다.

참고 DirectAgglomerate[...]만 거리 행렬이 아닌 원래의 관측을 사용하여 워드의 연결을 계산합니다. 불행히도 Mathematica가 Ward의 원래 알고리즘을 어떻게 수정 했는지 는 확실하지 않습니다. 예를 들어, 단 변량 관측 값으로 구성된 벡터로 구성된 군집 의 경우, Ward는 제곱의 오차 합을 다음과 같이 공식화했습니다.c

(j||cjmean(c)||2)2

(예 : MATLAB과 R과 같은 다른 소프트웨어 툴은 또한 질문 티카 특정하지 않습니다 그래서 그냥 거리 행렬을 사용하여 워드의 클러스터링을 구현합니다.)


최근에 Ward 방법을 사용하여 상당히 큰 데이터 집합을 분석했습니다. 제 특정한 경우에 마나 탄 거리는 본질적으로 유클리드 거리와 같은 군집을주었습니다. 나는 당신에게 어떤 방법의 조합을 선호하는 수학적 증명을 줄 수는 없지만, 적어도 내 경우에는 클러스터링이 거리 방법의 영향을받지 않았습니다.
nico

모든 R 함수가 반드시 거리 매트릭스를 기다릴 필요는 없습니다. 예를 들어 클러스터 패키지 agnes의 온라인 도움말을 참조하십시오 .
chl

실제로 어떤 거리를 사용해도 괜찮습니다. vlado.fmf.uni-lj.si/pub/preprint/ward.pdf를 확인하십시오. 우리가 이야기하는 평균은 더 이상 산술 평균이 아니라 Frechet 평균입니다.
랜디 라이

그러나 완벽한 연결을 위해 맨해튼 거리를 사용할 수 있습니까?
Payel Banerjee

답변:


8

Ward 클러스터링 알고리즘은 각 단계에서 '관성'기준을 최소화하는 계층 적 클러스터링 방법입니다. 이 관성은 감소 된 신호와 초기 신호 사이의 제곱 잔차의 합을 정량화합니다. 이는 l2 (유클리드) 센싱에서 오차의 분산을 측정 한 것입니다. 실제로, 당신은 당신의 질문에 그것을 언급하기도합니다. 이것이 내가 유클리드 거리가 아닌 거리 매트릭스에 적용하는 데 아무런 의미가없는 이유이다.

반면에 평균 연계 또는 단일 연계 계층 적 군집화는 다른 거리에 완벽하게 적합합니다.


2
귀하의 의견에 감사드립니다. 당신이 맞다고 생각합니다. 그러나 실제로 Ward의 연계는 종종 유클리드 거리가 아닌 곳에서 사용되는 것 같습니다. 나는 이것이 이것의 의미가 무엇인지 여전히 확신하지 못한다.
Rachel

아마 잘 알려져 있기 때문에 워드를 사용하는 사람들로부터 온 것입니다. Ward가이 설정에서 평균 연결에 비해 이득을 얻지 못한다고 말하고 싶습니다. 그러나 계산 비용이 더 많이 듭니다 (각 병합마다 처음 두 순간을 계산하거나 미리 계산해야 함). 따라서 실용적인 관점에서 나는 평균적인 연결을 원할 것이다.
Gael Varoquaux

1
실제로, 관성은 제곱 거리의 합 (유클리드 일 필요는 없음)을 사용하여 정의됩니다. vlado.fmf.uni-lj.si/pub/preprint/ward.pdf
Randy Lai

5

Ward가 어떤 메트릭을 선호해야하는 이유는 생각할 수 없습니다. Ward의 방법은 다음 번에 응집 할 클러스터를 결정하는 또 다른 옵션입니다. 이는 융합이 특정 오류를 최소화 할 두 군집을 찾음으로써 달성됩니다 ( 공식의 예 ).

따라서 두 가지 개념에 의존합니다.

  1. (숫자 벡터의 경우) 벡터의 평균은 일반적으로 모든 차원에 대해 개별적으로 평균을 계산하여 계산됩니다.
  2. 거리 메트릭 자체, 즉이 메트릭으로 표현 된 유사성의 개념.

따라서 : 선택한 메트릭의 속성 (예 : 회전, 변환 또는 스케일 불일치)이 사용자의 요구를 충족시키는 한 (및 메트릭이 클러스터 평균이 계산되는 방식에 적합 함) 사용하지 않는 이유는 없습니다. .

대부분의 사람들이 유클리드 메트릭을 제안한다고 생각합니다.

  • 군집 평균과 단일 관측 벡터 사이의 차이의 가중치를 늘리고 싶습니다 (사분 법에 의해 수행됨)
  • 또는 그것을 기반으로 검증에 최고의 메트릭으로 나왔다 있기 때문에 자신의 데이터
  • 또는 일반적으로 사용되기 때문입니다.

답변 주셔서 감사합니다. 나는 'DirectAgglomerate [...]'알고리즘이 거리 행렬만을 취한다는 것을 강조하기 위해 내 질문을 조금 분명히했다. 이것을 감안할 때, Ward의 연계의 수정 된 구현은 거리 매트릭스가 유클리드 인 가정에 기초 할 것입니까? 예를 들어, Matlab의 Ward 연동은 유클리드 거리에만 적합하다는 점에 주목합니다 ( mathworks.com/help/toolbox/stats/linkage.html ).
Rachel

1
@Rachel : 아아, 알겠습니다. 모든 와드 구현은 군집 구성원과 중심 사이의 거리를 계산해야합니다. 직관적으로이를 위해 사용 된 메트릭은 관측 값 사이의 거리를 계산하는 데 사용 된 메트릭과 동일해야합니다. 따라서 MATLAB에는 유클리드 디스트릭트 릭스가 필요합니다. 그러나 이제 구현이 거리 매트릭스 대신 함수를 요청하지 않는 이유는 무엇입니까? 두 작업에 대해 서로 다른 메트릭을 사용하면 얼마나 많은 피해가 발생합니까? 나는 잘 알지 못한다는 것을 인정한다.
steffen

안녕하세요 예제가 제거되었습니다. 다른 웹 사이트?
MonsterMMORPG

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.