낮은 차원 공간에서 문서 모음을 나타 내기 위해 잠재 의미 분석을 사용하고 있습니다. k- 평균을 사용하여 이러한 문서를 두 그룹으로 묶고 싶습니다.
몇 년 전, 나는 파이썬의 gensim을 사용하여 내 k- 평균 알고리즘을 작성 하여이 작업을 수행했습니다. 유클리드 거리를 사용하여 군집 중심을 결정한 다음 중심과 코사인 유사성을 기반으로 각 문서를 군집화했습니다. 꽤 잘 작동하는 것 같습니다.
이제 훨씬 더 큰 문서 모음 에서이 작업을 수행하려고합니다. K- 평균은 수렴하지 않으며 내 코드의 버그인지 궁금합니다. k-means는 유클리드 거리에서만 작동하기 때문에 코사인 유사성을 사용하여 군집화 해서는 안된다는 최근 기사를 읽었습니다 . 그럼에도 불구하고 언급 한 것처럼 작은 테스트 사례에서는 제대로 작동하는 것으로 보입니다.
이제 LSA Wikipedia 페이지 에서이 문제를 발견했습니다 .
코사인과 같은 유사성 측정법을 사용하는 k- 평균과 같은 전통적인 클러스터링 알고리즘을 사용하여 문서 및 항 벡터 표현을 군집화 할 수 있습니다.
그래서 어느 것입니까? 코사인 유사성을 사용할 수 있습니까?
I then assigned each document to a cluster based on cosine similarity
-문서와 중심 사이의 코사인? 그리고 모든 문서가 할당 된 후에는 공간의 문서 좌표가 알려져 있기 때문에 일반적인 (유클리드) 방식으로 중심을 업데이트합니다. 그렇습니까?