변수 군집화를 위한 R 패키지 ClustOfVar 소개와 활용
ClustOfVar 패키지는 정량·정성 변수를 동시에 다루는 변수 군집화 도구이다. 변수 간 동질성을 첫 번째 PCAMIX 주성분과의 제곱 상관·상관비율 합으로 정의하고, 계층적·k‑means‑형 알고리즘으로 최적 군집을 탐색한다. 부트스트랩 기반 안정성 검정과 군집 수 선택 절차도 제공한다.
저자: M. Chavent, V. Kuentz, B. Liquet
본 논문은 변수 군집화(variable clustering)를 위한 R 패키지 ClustOfVar의 설계·구현·활용을 종합적으로 소개한다. 변수 군집화는 변수들을 동질적인 집합으로 묶어, 동일한 정보를 제공하는 변수들을 하나로 요약하거나 선택하는 차원 축소·변수 선택 기법이다. 기존 방법은 주로 정량 변수에 국한되었으며, 정성 변수 혹은 정량·정성 혼합 데이터에 대한 체계적인 접근이 부족했다. ClustOfVar는 이러한 한계를 극복하고, 정량·정성 변수를 동시에 다룰 수 있는 군집화 도구를 제공한다.
핵심 개념은 “동질성(Homogeneity)”이다. p₁개의 정량 변수 {x₁,…,x_{p₁}}와 p₂개의 정성 변수 {z₁,…,z_{p₂}}가 주어질 때, 각 군집 Cₖ 에 대해 합성 정량 변수 yₖ 를 정의한다. yₖ는 군집에 속한 모든 변수와 가장 높은 연관성을 갖는 정량 변수이며, 이는 PCAMIX(정량·정성 혼합 데이터용 주성분 분석)의 첫 번째 주성분으로 구한다. 정량 변수와 yₖ 사이의 연관성은 제곱 피어슨 상관 r², 정성 변수와 yₖ 사이의 연관성은 상관비율 η² 로 측정한다. 군집 Cₖ 의 동질성 H(Cₖ) 는 이들 값을 합한 것으로, 수학적으로는 PCAMIX 고유값 λ₁ₖ와 동일하다. 전체 파티션 P_K 의 동질성 H(P_K) 는 모든 군집 고유값의 합으로 정의되며, 군집화 목표는 H(P_K) 를 최대화하는 파티션을 찾는 것이다.
두 가지 군집화 알고리즘이 구현된다. 첫 번째는 “계층적 군집화”(hclustvar)로, 초기에는 각 변수를 개별 군집으로 두고, 군집 간 손실 d(A,B)=H(A)+H(B)−H(A∪B) 를 최소화하는 쌍을 반복적으로 병합한다. 손실은 두 군집을 합쳤을 때 동질성이 감소하는 정도를 나타내며, 이는 두 군집 고유값 차이로 계산된다. 병합 과정을 거쳐 p → 1까지의 중첩 파티션이 생성되고, dendrogram 형태로 시각화된다. 사용자는 dendrogram의 높이(손실)와 군집 수 사이의 변곡점을 검토해 적절한 군집 수를 선택한다.
두 번째는 “k‑means‑형 군집화”(kmeansvar)이다. 여기서는 변수와 군집 중심(합성 변수) 사이의 유사도 s(E,F) 를 제곱 정준 상관으로 정의한다. 정량‑정량 조합은 제곱 피어슨 상관, 정성‑정량 조합은 상관비율, 정성‑정성 조합은 두 지시 행렬이 형성하는 선형 부분공간의 유사도로 측정된다. 초기 중심은 무작위 선택하거나 외부 파티션(예: 계층적 군집 결과)에서 제공될 수 있다. 이후 반복적으로(1) 각 군집의 합성 변수 yₖ 를 PCAMIX으로 재계산하고,(2) 모든 변수를 가장 높은 유사도를 보이는 군집에 재배정한다. 변화가 없거나 사전 정의된 최대 반복 횟수에 도달하면 종료한다. 이 과정은 동질성을 지역 최적화하며, 다중 무작위 초기화를 통해 전역 최적에 근접한다.
패키지는 부트스트랩 기반 안정성 검정(stability)도 제공한다. 관측치 n을 재표집해 B개의 부트스트랩 샘플을 만들고, 각 샘플에 대해 hclustvar를 수행한다. 원본 dendrogram와 각 부트스트랩 dendrogram의 파티션을 조정 Rand 지수로 비교해 평균값을 구한다. 군집 수 K에 대한 평균 조정 Rand 지수 곡선을 그리면, 안정성이 높은 K를 선택하는 근거가 된다. 이때 희귀 범주가 사라지는 경우 표준화가 불가능해 오류가 발생할 수 있음을 주의한다.
ClustOfVar는 결측값을 자동 처리한다. 정량 변수는 평균 대체, 정성 변수는 지시 행렬에서 0으로 대체한다. 또한 PCAmixdata 패키지와 연계해 PCAMIX 결과를 회전(rotated)시킬 수 있다.
실제 적용 예시로 두 데이터셋을 사용한다. 첫 번째는 41명의 선수에 대한 10가지 정량 변수(데카슬론)이며, hclustvar를 통해 3~5개의 군집이 적절함을 시각적으로 확인한다. 두 번째는 정량·정성 혼합 설문 데이터로, kmeansvar와 stability 함수를 이용해 군집 수와 안정성을 평가한다. 결과는 변수 간 상호관계를 직관적으로 파악하고, 차원 축소 후 대표 변수(합성 변수)를 활용해 모델링·시각화에 활용 가능함을 보여준다.
결론적으로 ClustOfVar는 정량·정성 혼합 데이터를 위한 일관된 변수 군집화 프레임워크를 제공한다. 동질성 기준, PCAMIX 기반 합성 변수, 계층적·k‑means‑형 알고리즘, 부트스트랩 안정성 검정이라는 네 가지 핵심 요소가 결합돼, 기존 상관 기반 거리 행렬 방법보다 더 해석 가능하고 효율적인 차원 축소·변수 선택을 가능하게 한다. 향후 확장 가능성으로는 다른 거리·유사도 척도 도입, 대규모 데이터에 대한 병렬 구현, 그리고 군집 결과를 활용한 자동 변수 선택 파이프라인 구축 등이 제시된다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기