작성
·
568
0
답변 1
1
안녕하십니까,
1. KMeans 객체를 생성할 시 init 옵션을 줄수가 있는데 이때 'kmeans++' 또는 'random' 을 선택할 수가 있습니다.
https://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html
random은 말 그대로 무작위입니다(오리지날 kmeans에 적용됩니다). kmeans++는 보다 효과적인 초기화 방법인데, 일반적으로 초기화 포인트가 비슷한 지점에 생기지 않도록 구현되었습니다. 자세한 설명은 아래를 참조 부탁드립니다.
https://lovit.github.io/nlp/machine%20learning/2018/03/19/kmeans_initializer/
2. scikit learn은 유클리드만 지원하는 걸로 알고 있습니다. API를 뒤져봐도 해당 기능은 없는것 같습니다(제가 알기론, 맨하탄 거리가 클러스터링 효과가 상대적으로 좋지 않은 것으로 알고 있습니다.)
감사합니다.