본문 바로가기
Computer Science/Algorithms

[알고리즘] K-mean Clustering Algorithm: Clustering이 Linear가 아닐 경우

by Henry Cho 2022. 5. 24.
728x90

K-mean Clustering Algorithm: Clustering이 Linear가 아닐 경우


포스트 난이도: HOO_Middle

 

[Notice] 포스트 난이도에 대한 설명

안녕하세요, HOOAI의 Henry입니다. Bro들의 질문에 대한 내용을 우선적으로 포스팅이 되다 보니 각각의 포스트에 대한 난이도가 달라서 난이도에 대한 부분을 작성하면 좋겠다는 의견을 들었습니다

whoishoo.tistory.com


# Linear가 아닌 Clustering

앞선 포스팅에서 K-mean clustering algorithm에 대해서 살펴보았고 일직선에 위치한 데이터 집단을 클러스터링(Clustering)하는 방법에 대해서도 예제를 통해 살펴보았다.

이번 포스트에서는 일직선이 아닌 평면에 임의의 위치에 존재하는 데이터 집단에 대해 K-mean clustering algorithm이 어떤 식으로 적용되어 분류되는지에 대해서 살펴보도록 하자.


# 유클리드 공식

우리가 K-mean clustering algorithm을 사용해서 데이터 집단 분류를 하고자 할때 데이터 또는 노드는 친절하게 일렬로 위치해있지 않는다.

그래프 상에서 이곳저곳에 위치해 있을 수 있다.

이때에도 특정 위치 조건에 따라서 clustering을 하기 위해서는 유클리드 공식을 활용한다.

K-mean clustering algorithm이 사용되는 방식은 Linear과 동일하지만 위치가 일렬로 있지 않기 때문에 유클리드 공식을 통해 각 노드 또는 데이터 별 거리를 측정한다.

여기서 말하는 유클리드 공식은 유클리드 거리 공식이라고도 불리며, 영어로는 Euclidean distance라고 한다.

또는 우리가 많이 듣고 배워온 피타고라스 정리를 생각하면 된다.

공식은 아래와 같다.

=√(x^2+y^2)

 


# K-mean Clustering Algorithm Examples

<Fig01. Examples>

 

예를 들어, 위와 같이 데이터 또는 노드가 존재한다고 가정해보자.

저번 K-mean clustering algorithm 포스팅과 마찬가지로 K=2로 예제를 살펴보면, 2개의 데이터 집단이 산출되는 걸 예상할 수 있다.

 

<Fig02. Examples>

 

위와 같이 주황색과 파란색 데이터 집단이 거리를 비교하여 이루어진다.

이때 거리를 비교할때 일직선이 아니기 때문에 거리를 측정하는 데 있어서 유클리드 거리 공식을 활용한다.

유클리드 거리 공식을 통해 가까이 위치한 집단끼리 클러스터링을 이룬다.

 

<Fig03. Examples>

 

위와 같이 유클리드 공식 또는 피타고라스 정리법을 통해서 거리를 측정한 다음 평균 위치를 다시 지정해주는 작업도 수행한다.

이것이 평면에서 x와 y축을 활용해서 거리를 구하는 K-mean clustering algorithm이다.

 


 

728x90

댓글