Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

문서 클러스터링 분석이란? 핵심 개념과 주요 기법 총정리

문서 클러스터링(Document Clustering)은 비지도 학습(unsupervised learning) 방식으로 대량의 문서를 체계적으로 조직화하는 핵심 기술입니다. 문서를 용어 벡터(term vector) 형태로 표현하면 다양한 클러스터링 기법을 적용할 수 있으며, 문서 공간은 일반적으로 수백에서 수천에 이르는 높은 차원을 가집니다.

차원의 저주와 저차원 임베딩의 필요성

문서 공간의 차원이 지나치게 높으면 '차원의 저주(curse of dimensionality)'로 인해 클러스터링 성능이 크게 저하됩니다. 따라서 본격적인 클러스터링에 앞서 문서를 더 낮은 차원의 부분 공간으로 투영하는 것이 효과적입니다. 저차원 의미 공간에서는 문서 공간의 의미 구조가 명확하게 드러나며, 이곳에서 전통적인 클러스터링 알고리즘을 자연스럽게 적용할 수 있습니다.

문서 클러스터링 분석의 주요 방법

1. 스펙트럼 클러스터링(Spectral Clustering)

스펙트럼 클러스터링은 원본 데이터에 대해 먼저 스펙트럼 임베딩(spectral embedding), 즉 차원 축소를 수행한 후, 축소된 문서 공간에 k-means와 같은 전통적인 클러스터링 알고리즘을 적용하는 방식입니다.

이 방법은 고도로 비선형적인 데이터(모든 국소 영역에서 곡률이 높은 데이터 공간)도 효과적으로 처리할 수 있다는 강점이 있습니다. 또한 미분기하학과의 깊은 연관성 덕분에 문서 공간의 다양체(manifold) 구조를 발견해낼 수 있습니다.

한계점: 스펙트럼 클러스터링이 활용하는 비선형 임베딩은 '학습(training)' 데이터에 대해서만 정의됩니다. 즉, 임베딩을 학습하려면 일정량의 데이터 포인트가 반드시 필요하며, 데이터셋이 방대할 경우 이러한 임베딩을 학습하는 데 막대한 계산 비용이 소요됩니다. 이로 인해 스펙트럼 클러스터링은 대규모 데이터셋에는 적용하기 어렵습니다.

2. 혼합 모델(Mixture Model)

혼합 모델 클러스터링은 텍스트 데이터를 혼합 모델(mixture model)로 모델링하며, 주로 다항 분포(multinomial) 기반의 구성 요소 모델을 사용합니다. 클러스터링 과정은 다음 두 단계로 진행됩니다.

  • 모델 파라미터 추정: 텍스트 데이터와 추가적인 사전 지식(prior knowledge)을 바탕으로 모델의 파라미터를 추정합니다.
  • 클러스터 추론: 추정된 모델 파라미터를 기반으로 클러스터를 도출합니다.

혼합 모델을 어떻게 정의하느냐에 따라 단어(word)와 문서(document)를 동시에 클러스터링할 수도 있습니다. 확률적 잠재 의미 분석(PLSA)과 잠재 디리클레 할당(LDA)이 대표적인 예입니다. 이 방식의 장점은 클러스터가 문서 간 비교 분석을 지원하도록 설계될 수 있다는 점입니다.

3. 잠재 의미 색인(LSI)과 지역 보존 색인(LPI)

잠재 의미 색인(Latent Semantic Indexing, LSI)과 지역 보존 색인(Locality Preserving Indexing, LPI)은 선형(linear) 차원 축소 방법입니다. 두 방법 모두 변환 벡터, 즉 임베딩 함수(embedding function)를 도출하는 데 활용됩니다. 이러한 임베딩 함수는 데이터 공간 전체에서 정의되므로, 일부 데이터만으로 임베딩 함수를 학습한 뒤 새로운 데이터를 저차원 공간에 손쉽게 매핑할 수 있습니다.

LSI의 목표는 전역 재구성 오류(global reconstruction error)를 최소화한다는 관점에서 원본 문서 공간에 대한 최적의 부분 공간 근사를 찾는 것입니다. 다시 말해, LSI는 판별력(discriminative)이 뛰어난 특징보다는 가장 대표성(representative) 있는 특징을 찾는 데 중점을 둡니다. 따라서 서로 다른 의미를 가진 문서를 구별하는 작업, 즉 클러스터링의 궁극적인 목표 달성에는 LSI가 최적의 선택이 아닐 수 있습니다.