군집화 성능평가 실루엣 계수 말고는 다른 방법은 없는지 궁금합니다.
598
작성한 질문수 104
선생님께서 설명해주신 것 처럼, 실루엣계수로 군집화를 평가하는데 많은 취약점들(대용량데이터에서는 수행시간 너무 오래걸리고, 특정군집의 실루엣 계수만 유난히 높아서 다른 군집들은 클러스터링이 잘 안되었는데도 실루엣계수 전체 평균값이 높게 나오는 경우 등..)이 있어보이는데..
실루엣계수말고 군집화를 평각하는 다른 지표가 있나요..?
현업에서는 대용량데이터를 군집화 할 때 (실루엣계수 말고) 군집화를 평가하려면, 보통 어떤 식으로 평가하는 지 궁금합니다...!
(다른 방법이 없어서 현업에서도 대략적으로 실루엣계수를 통해 참고만 하는 정도인지.. 궁금하네요.)
답변 1
2
안녕하십니까,
기본적으로 많이 쓰이는 방식은 elbow method와 실루엣계수가 있습니다. 실루엣 계수가 보다 효과적으로 evaluation에 사용되기에 elbow method는 소개 시켜드리지 않았지만 실루엣 계수보다 더 빠르게 평가를 할 수 있습니다.
elbow method는 개별 군집 데이터들이 가장 가까운 중심점(centroid)와의 거리 제곱합을 기반으로 계산합니다. 일반적으로 centroid가 많아질 수록 거리 제곱합은 작아집니다(아무래도 근접한 centroid를 찾기가 더 쉬워지므로)
그래서 centroid 증가에 따른 거리 제곱합의 그래프를 그림으로 그려보면 사람 팔꿈치(elbow)형태의 그림이 그려지는데, 이때 elbow로 꺾이는 지점을 최적 centroid 갯수로 잡습니다. 검색해 보니 아래 사이트에서 잘 설명이 된 것 같습니다. https://daeson.tistory.com/212
하지만 elbow method의 정확성을 그냥 참조하는 수준입니다. 좀 더 정확하게 하려면 실루엣 계수가 나은데, 문제는 시간이 오래 걸리고, 메모리를 너무 많이 잡는다는 것입니다.
실무에서도 실루엣 계수를 적용하는데, 시간이 오래 걸리는 것은 큰 문제가 아닐 수 있는데(밤새 돌리고 기다리면 됩니다 ^^) 문제는 메모리를 많이 잡아먹기 때문에 데이터가 백만건 이상되면 적어도 50~60G 정도의 메모리를 잡아먹었던것 같습니다(기억이 정확하진 않습니다).
그래서 고객 데이터가 몇백만건 쯤 되면 실루엣 계수를 적용하기가 어려워서 랜덤하게 샘플링을 한 데이터를 기반으로 실루엣 계수를 적용하기도 합니다.
그리고 일반적으로는 군집화 하려는 개괄적인 갯수가 존재합니다. 고객유형을 나눈다고 한다면, 어느정도 분류 유형에 대한 개수를 정하기도 합니다.
이러한 적용 방법들을 복합적으로 사용해서 클러스터링 개수를 최적화 해나갑니다.
감사합니다.
안녕하세요 열심히 수강중인 학생입니다
0
58
2
정수 인덱싱
0
65
2
넘파이 오류
0
83
2
11강 numpy의 axis 축 질문 드립니다.
0
84
2
Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.
0
76
2
Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.
0
68
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
73
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
62
2
5강 강의 오류가 있어요.
0
81
1
실무에서 LTV 관련 모델 선택 질문입니다!
0
71
2
14강 강의 듣는중에 궁금한게 있어서 질문합니다~
0
67
3
파이썬 다운그레이 후 사이킷런 재설치
0
115
2
좋은 강의 감사합니다.
0
70
2
scoring 함수 음수값
0
66
2
6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?
0
98
2
분류 평가 정확도 예측
0
75
2
안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.
0
96
1
카카오톡 채널 있나요
0
104
1
혹시 강의에서 사용하시는 ppt 받을 수 있는건가요
0
187
2
pca 스케일링 관련하여 질문드립니다.
0
100
2
주피터 대신 구글 코랩
0
169
2
강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?
0
145
2
실루엣 스코어..
0
82
2
float64 null 값 처리 방법
0
99
2





