라떼군 이야기


6 / 10강

경계에 있는 데이터를 다루기

어느 한 그룹에만 넣기 어려운 점도 있습니다. 퍼지 C-means는 각 점에 대해 여러 그룹의 소속도를 계산합니다. 한 점의 소속도를 모두 더하면 1이 되지만, 이것이 곧 실제 정답일 확률을 뜻하지는 않습니다.

중심에 가까울수록 소속도가 커집니다

표준적인 퍼지 C-means는 소속도에 지수 m을 적용한 거리 제곱 합을 줄입니다. m은 1보다 크며, 값에 따라 소속도가 퍼지는 정도가 달라집니다. m=2이고 두 중심까지의 거리가 각각 1과 2라면 다음처럼 계산할 수 있습니다.

distances = [1, 2]
weights = [1 / distance ** 2 for distance in distances]
total = sum(weights)
print([weight / total for weight in weights])

출력은 [0.8, 0.2]입니다. 가까운 첫 번째 중심에 더 큰 소속도를 주었습니다. 예제의 역제곱 식은 m=2이고 거리가 모두 0보다 클 때 쓰는 계산입니다. 점이 중심과 정확히 겹치면 0으로 나누지 않도록 별도 규칙이 필요합니다.

중심도 소속도를 반영합니다

중심을 갱신할 때는 모든 점을 같은 비중으로 평균 내지 않습니다. 각 점에 소속도 ** m만큼의 가중치를 줍니다. 소속도 갱신과 중심 갱신을 번갈아 반복하며, 초기값과 중단 조건에 따라 결과가 달라질 수 있습니다.

확인 문제

어떤 고객의 A그룹 소속도가 0.8입니다. ‘이 고객이 다음 달 상품 A를 살 확률이 80%‘라고 설명해도 될까요?

해설 보기

안 됩니다. 소속도는 정한 거리와 군집화 목적에 따른 값입니다. 구매 확률을 말하려면 실제 구매 결과를 사용한 별도의 예측 모델과 확률 검증이 필요합니다.

제품 기획, 개발 파트너 찾으시나요? 개인, 팀, 기업 모두 환영. 문제 정의부터 출시까지 함께합니다.