요즘 와차라는 서비스의 TV 광고를 보면 영화 신세계를 좋아한 사람은 무간도를 좋아할 확률이 높다는 내용이 나오죠? 군집화가 바로 이런 것입니다. 공통적인 취향이나 성질을 규명함으로써 고객을 그룹화할 수 있고, 이를 바탕으로 타게팅된 광고를 할 수 있습니다. k-평균 군집화를 사용하면 고객이나 상품을 군집으로 묶을 수 있습니다. 여기서 k는 찾아낸 그룹의 개수를 의미합니다.
군집을 정의할 때는 "얼마나 많은 군집이 존재하는가?", "각 군집의 포함 관계는 어떤가?"라는 질문에 답해야 합니다. 예를 들어 군집이 2개로 표현되었다고 하더라도 이는 더 작은 군집으로 세분활 할 수 있습니다. 군집의 개수가 많아질수록 한 군집에 속하는 멤버 간의 유사성은 높아지지만 인접한 군집 사이의 차이점은 작아지게 됩니다. 극단적으로 보면 각 데이터 포인트 자체를 군집으로 본다면 유용한 정보를 전혀 얻을 수 없게 되겠죠. 그래서 적절한 균형이 필요합니다. 즉 의사결정에 도움을 주는 패턴을 얻을 정도로 군집의 수가 충분히 많아야 함과 동시에 군집 간의 명확한 구분이 가능할 정도로 군집의 개수가 충분히 적어야 합니다.
적당한 군집 개수를 결정하는 방법 중의 하나가 바로 스크리 도표(Scree Plot)입니다. 스크리 도표는 군집의 개수가 증가함에 따라 군집 내 산포(within cluster scatter)가 감소하는 모양으로 나타납니다. 모든 멤버가 한 군집에 속하는 경우 군집 내 산포는 최대가 됩니다. 군집 개수를 늘릴수록 군집의 크기는 작아지고 군집 내 멤버간의 동질성은 커집니다. 킨트(kinks)는 스크리 도표에서 급격히 구부러진 부분을 일컫는 말로 최적의 군집 개수를 알려줍니다. 즉 군집 내 산포가 적당한 수준으로 떨어지는 지점을 의미합니다.
2차원 군집의 포함 관계를 정하는 과정은 아래와 같습니다.
0단계 : 각 군집의 중심점을 추정한다. 아직은 선택한 위치가 군집의 실제 중심점인지 알 수 없으므로 추정된 중심점을 의사 중심점이라 한다.
1단계 : 각 데이터 포인트를 가장 가까운 의사 중심점으로 배정한다. 이렇게 하면 두 군집이 형성된다.
2단계 : 의사 중심점을 각 군집 내 멤버의 중심점으로 이동시킨다.
3단계 : 군집 포함 관계에 변화가 없을 때까지 멤버 재할당(1단계)과 클러스터 중심점 위치 조정(2단계)를 반복한다.
k-평균 군집화는 매우 단순하지만 군집이 겹치거나 중첩되는 경우를 허용하지 않는다는 점에 유의해야 합니다.
'모두를 위한 데이터과학' 카테고리의 다른 글
연관분석(연관 규칙 분석)-1 (0) | 2023.02.16 |
---|---|
주성분 분석(Principal Component Analysis) (0) | 2023.02.16 |
과적합과 부적합 (0) | 2023.02.16 |
튜닝 파라미터 (0) | 2023.02.16 |
지도학습 알고리즘의 종류 (0) | 2023.02.16 |