이전 JMP 블로그 게시물 에서는 클러스터링에 사용되는 두 가지 알고리즘인 k-평균과 정규 혼합(기대값 최대화 사용)에 대해 설명했습니다. 여기에서는 계층적 클러스터링 예제를 살펴보겠습니다.
k-평균은 일반적으로 하드 클러스터 할당을 제공하지만(각 데이터 포인트는 하나의 클러스터에만 속함) 정규 혼합은 소프트 또는 확률적 클러스터 할당을 제공합니다. 일반 혼합물 클러스터링에서 각 데이터 포인트(사람이든 세포 배양이든)는 다음에 속합니다.모든특정 확률로 클러스터됩니다. 마찬가지로 계층적 클러스터링을 사용하면 포인트가 다음에 속하는 것으로 볼 수 있습니다.다수의클러스터. 그러나 계층적 클러스터링에서는 클러스터가 본질적으로 계층적입니다.
계층적 클러스터링을 사용해야 하는 경우
계층적 클러스터링은 데이터에 계층적 구조가 있을 때 가장 유용합니다. 계층적 데이터에는 하위 그룹으로 구성된 하위 그룹으로 구성된 그룹이 있습니다. 이런 식으로 영원히 계속됩니다. 예를 들어 혈액을 보면 적혈구, 백혈구, 혈장, 혈소판이 있습니다. 
백혈구에는 호중구, 호염기구, 림프구 등이 있습니다. 
림프구에는 T세포, B세포, 자연살해세포가 있습니다.
T세포에는 보조 T세포, 기억 T세포, 억제 T세포, 살해 T세포가 있을 수 있습니다. 계속 말할 수도 있지만 이것은 통계 블로그이지 면역학 블로그가 아닙니다. 
매우 특정한 세포 그룹을 보는 것이 유용한 경우가 많지만, 의사가 혈액 검사에서 백혈구 수를 확인할 때와 같이 일반화하고 더 높은 수준의 그룹을 살펴봐야 하는 상황이 많이 있습니다. 
고객의 구매 습관을 기준으로 고객을 그룹화할 때 쇼핑객의 특정 습관에 맞춰 50개의 다양한 마케팅 이메일을 생성할 만큼 자금이 충분한 경우도 있습니다. 하지만 다른 경우에는 5개만 만들 예산이 있을 수도 있습니다. 계층적 클러스터링을 사용하면 가능한 한 응집력 있는 클러스터를 제공하면서 원하는 수의 클러스터를 선택할 수 있습니다.
TL;DR: 데이터에 계층 구조가 있을 수 있다고 생각되면 계층적 클러스터링을 사용하세요. 정말 그렇게 간단할 수 있습니다.
응집형 계층적 클러스터링
JMP는 계층적을 사용합니다.응집성클러스터링(줄여서 HAC)은 모든 데이터가 하나의 클러스터에 포함될 때까지 유사한 클러스터를 연속적으로 병합하여 데이터의 계층적 관계를 모델링합니다. 처음에는 각 데이터 포인트가 자체 싱글톤 클러스터입니다. 하지만 그것은 매우 외롭기 때문에 가장 가까운 두 개의 클러스터를 병합하여 새로운 클러스터를 형성합니다. 그런 다음다음두 개의 가장 가까운 클러스터를 함께 사용하고 다시 수행합니다. 그리고 다시. 그리고 다시. 모든 데이터가 하나의 클러스터에 포함될 때까지. 우리는 종종 HAC를 상향식 클러스터링이라고 부릅니다. 왜냐하면 우리는 맨 아래에서 시작하여 이제 모든 데이터 포인트를 포함하는 하나의 클러스터를 갖게 되었기 때문입니다. 팀 전체가 여기에 있다고 말할 수 있습니다. 
거리 측정법
어떤 클러스터가 서로 가까이 있는지 결정하는 것이 항상 간단한 것은 아닙니다. 두 클러스터가 얼마나 멀리 떨어져 있는지 확인하는 데 사용할 수 있는 연결 기준이 많이 있습니다.
하나의연결은 두 클러스터(A와
사이의 거리를 다음과 같이 정의합니다.최저한의 A의 임의의 점과 B의 임의의 점 사이의 거리.
평균연결은 클러스터(A와
사이의 거리를 다음과 같이 정의합니다.평균A의 점과 B의 점 사이의 거리. 
완벽한연결은 클러스터(A와
사이의 거리를 다음과 같이 정의합니다.최고A의 임의의 점과 B의 임의의 점 사이의 거리.
그만큼중심이 방법은 클러스터(A와
사이의 거리를 해당 평균 벡터(중심) 사이의 거리로 정의합니다. 
구의 방법은 위의 방법과 약간 다릅니다. 순수한 거리 측정을 사용하는 대신 일변량 ANOVA는 클러스터 할당을 그룹으로 사용하여 적합합니다. 두 개의 클러스터(A와
가 다음과 같은 경우 결합됩니다.가장 작은A와 B를 하나의 그룹으로 결합하여 또 다른 ANOVA를 실행할 때 오류 제곱합이 증가합니다. ANOVA 기사를 통해 우리는 오류가이내에그룹 변형. 따라서 Ward의 방법은 어떤 두 그룹을 결합해도 여전히 낮은 값을 가질 수 있는지 묻습니다.이내에그룹 변형(즉, 어느 두 그룹이 가장 유사한지). 
덴드로그램 읽는 방법
데이터의 계층 구조를 결정한 후에는 모든 수준에서 다양한 클러스터를 검사할 수 있습니다. 우리는 종종 구조에 대해 관찰하고 싶어합니다. 이를 수행하는 가장 쉬운 방법은 덴드로그램을 보는 것입니다.
덴드로그램은 클러스터가 어떻게 결합되었는지 보여줍니다. JMP 에서 Y축은 데이터 포인트/클러스터를 나타내고 X축은 거리를 나타냅니다. 예를 들어 두 개의 군집이 덴드로그램에서 아래쪽(왼쪽)에 합류하면 덴드로그램에서 위쪽(더 오른쪽)에 합류하는 다른 두 군집보다 더 유사합니다. 
아래쪽(왼쪽)에 밀도가 높은 덴드로그램에는 일반적으로 분리가 더 쉬운 클러스터가 있는 반면, 아래쪽(왼쪽)에 밀도가 없으면 클러스터가 덜 분리되고 더 널리 퍼져 있는 경향이 있습니다.
클러스터링은 과학이라기보다 예술에 가깝습니다. 따라서 클러스터를 해석하려면 의미 있는 것을 생성하기 위해 도메인 전문 지식이 필요할 수 있습니다. 덴드로그램을 사용하면 1부터 N까지 원하는 수의 클러스터를 만들 수 있습니다(여기서 N은 보유한 데이터 포인트 수). 어떤 수준에서든 덴드로그램을 "절단"하면 각 클러스터의 구성원을 알 수 있습니다. 
JMP에서
150명의 평균 단백질, 지방, 탄수화물 그램을 기록하는 데이터 세트를 살펴보겠습니다. 우리가 이러한 다양한 다이어트를 클러스터링하려는 데는 여러 가지 이유가 있습니다. 아마도 우리는 식단에 따라 심장병 발병률이 다른지 알아보고 싶을 것입니다. 아니면 각 클러스터의 콜레스테롤이나 철분 수준을 살펴보고 싶을 수도 있습니다.
JMP에서는 계층적 군집화를 수행하는 것이 매우 간단합니다. 그냥 가세요분석 > 군집화 > 계층적 군집화클러스터링할 열을 선택합니다. 각 데이터 포인트에 이름이나 라벨이 있는 경우 이를 선택하고상표. 여기에서 연결 기준을 선택할 수도 있습니다. 딸깍 하는 소리좋아요, 그러면 JMP가 클러스터와 덴드로그램을 생성합니다. 
계층적 플랫폼에 들어가면 클러스터별로 덴드로그램의 색상을 지정할 수 있으며, 이는 클러스터에서 다양한 패턴을 선택하는 데 도움이 될 수 있습니다. 
또한 1부터 N까지(여기서 N은 샘플 크기) 원하는 수의 클러스터에 대해 하드 클러스터 할당을 가져올 수도 있습니다. 빨간색 삼각형 메뉴로 이동하여 선택하세요.클러스터 수그리고 원하는 번호를 입력하세요. 덴드로그램의 작은 검은색 다이아몬드를 드래그하여 클러스터 수를 선택할 수도 있습니다. 그런 다음 빨간색 삼각형 메뉴로 돌아가서클러스터 저장. ak(군집 수)를 선택하면 JMP는 정확히 k개의 군집이 있는 위치에서 덴드로그램을 "절단"합니다.
플롯 측면에 있는 다이아몬드를 자르려는 덴드로그램의 지점으로 끌 수도 있습니다. 
클러스터를 열로 저장하면 클러스터를 더 잘 시각화할 수 있으며 추가 분석에서 클러스터 할당을 그룹 변수로 사용할 수 있습니다(예: 클러스터 구성원이 심장 질환 비율에 중요한 영향을 미치는지 확인하기 위한 ANOVA).
단 두 개의 클러스터만 보면 상대적으로 높은 단백질, 저탄수화물, 저지방 클러스터와 상대적으로 낮은 단백질, 고지방 및 탄수화물 클러스터가 있음을 알 수 있습니다. 
또한 고단백, 저탄수화물, 저지방 그룹을 극단적인 그룹과 보다 중간 정도의 그룹으로 분리할 수 있는 3개 클러스터 솔루션을 살펴볼 수도 있습니다. 계층적 구조는 이러한 그룹이 어떻게 서로 관련되어 있는지 이해하는 데 도움이 되는 동시에 필요할 때 이들을 별도로 처리할 수 있도록 해줍니다. 
JMP는 덴드로그램 아래에 표시된 거리 그래프를 기반으로 ak를 추천합니다. 그래프의 x축은 두 클러스터가 병합될 때마다 나타납니다. y축은 결합된 마지막 두 클러스터 사이의 거리를 나타냅니다. 기울기가 극적으로 변하는 경우 이는 병합된 마지막 두 클러스터가 상대적으로 멀리 떨어져 있음을 의미합니다. 이는 나머지 클러스터가 상대적으로 분리되어 있으며 현재 구성이 k에 적합한 선택임을 나타냅니다.
이 데이터 세트의 덴드로그램은 아래쪽(왼쪽)에서 가장 밀도가 높습니다. 즉, 분리 가능한 클러스터가 몇 개 있을 가능성이 높으며 위의 플롯을 보면 이를 확인할 수 있습니다.
시도 해봐
계층적 클러스터링(및 일반적인 클러스터링)은 레이블이 지정되지 않은 모든 데이터 문제에 대한 만병통치약이 아닙니다. 그러나 실제로 데이터의 계층 구조를 모델링하는 데는 매우 뛰어납니다.가지다계층 구조. 이는 서로 다른 클러스터가 서로 어떻게 관련되어 있는지 알려주기 때문에 비계층적 클러스터링 이상의 정보를 제공합니다. 클러스터를 결합하거나 분할해야 하는 경우 이 정보는 매우 중요할 수 있습니다. 계층적 클러스터링은 데이터를 그룹화하는 방법에 어느 정도 유연성을 제공하므로 결국 우리 모두는 좀 더 유연해져야 합니다. 이 게시물에 첨부된 데이터 테이블을 사용하여 직접 시도해 보세요.
@ASHU4JMP , JMP 보고서의 일부를 학습하는 가장 쉬운 방법은 물음표 도구 도구 메뉴에서 질문이 있는 보고서 부분을 클릭하세요.
귀하의 경우 해당 그래프를 클릭하면 덴드로그램 보고서 도움말 페이지 그것이 거리 그래프라는 것을 알게 될 것입니다.
거리 그래프거리 그래프는 덴드로그램 아래에 나타나는 플롯입니다. 이 그래프에는 각 단계마다 두 개의 클러스터가 단일 클러스터로 결합되는 지점이 있습니다. 가로 좌표는 왼쪽에서 오른쪽으로 감소하는 클러스터 수를 나타냅니다. 점의 수직 좌표는 주어진 단계에서 결합된 클러스터 사이의 거리입니다.
덴드로그램에서 다이아몬드 모양의 핸들을 클릭하고 드래그하여 선택한 클러스터 수를 제어할 수 있습니다. 다이아몬드를 클릭하고 드래그하면 클러스터 수에 따라 이동하는 수직선이 플롯에 나타납니다. 거리 그래프의 기울기가 수평을 이루는 지점이 종종 있습니다. 이러한 점은 자연스러운 중단을 암시하며 클러스터 수를 결정하는 데 도움이 됩니다.
안녕하세요 첼시님,
이 기사를 읽어주셔서 감사합니다. 매우 명확하고 설명적입니다.
클러스터링에 관해 질문이 있는데 도움을 주실 수 있는지 궁금합니다.
상대적으로 작은 데이터 세트(17행 및 +/-90열)를 사용하여 계층적(및 K-평균) 클러스터링을 시도하고 있습니다.
모든 열을 사용하여 클러스터링을 수행하면 일부 행이 클러스터링에서 제외됩니다. 따라서 선택한 클러스터 수에 따라 1-2-3 등의 클러스터를 가질 수 있지만 해당 클러스터의 행(관찰) 수는 17보다 작습니다(즉, 일부 행에는 클러스터가 전혀 할당되지 않습니다).
이런 일이 일어나야 할 이유가 있나요?
어떤 도움이라도 환영합니다.
감사해요!
아시아어