google_adsense2


데이터 분석에서 나오는 수학 - 유클리디안 거리 by 메타샤워

유클리디안 거리

아래 그림에서 초록색 이 유클리드 거리이다.





유클리디안 거리는 유클리드라는 수학자가 고안해낸 이론이다.
최대공약수를 계산하는 유클리드 호제법으로 유명한 분이다.

유클리디안 거리의 다른이름으로 L2 Distance 라고도 한다.


2차원 평면에 두점이 ( x1, y1 ) 과 ( x2, y2 )로 표현되어있다고 가정한다면, 실제 이 두점간의 거리는 피타고라스 정리를 이용하여
쉽게 구할수 있다. 이것을 3차원 4차원 등등 다차원까지 확장시킨것이 유클리디안 거리라고 생각하면 되겠다.

예를 들어 n 차원에 있는 두점 P와 Q가 있다고 생각하자
P =  ( p1, p2, p3, p4 ,,,, pn )
Q = ( q1, q2, q3, q4 ,,,, qn )
이 두점간의 거리를 유클리디안 거리로 표현한다면 아래 처럼 표현할수 있다. 








그닥 어렵지 않은 수식이다.



** 추가적으로 유클리디안 거리 공식으로 계싼을 하면 거리의 최대값이라는 게 없어서 뭔가와 비교할 수가 없다.
그래서 이 거리를 0 ~ 1 사이의 값으로 갖도록 정규화? 하는 방법을 아래와 같이 사용하기도 한다.

유클리디안 거리 공식을 이용해 얻은 거리의 값을   Ed 라고 한다면

    20080830_153328.png

이렇게 표현한다면  가장 가까운 경에는 1에 가까울 것이고 멀수록 0에 가까운 값을 갖게 된다.




사용 예

유클리디안 거리 공식은 실제거리를 잴때도 사용되는 공식이지만, 인공지능 분야에서 두 가지 객체의 속성 값이 여러개일경우
이들 속성값들의 의한 두 개체 사이의 유사도를 구할때도 자주 사용한다.

예를 들어서 문서간 유사도를 생각해보자.

3개의 문서가 있고 각 문서는 A, B, C , D라는 단어로만 구성이 되어있다고 하자

D1 문서에는 A가 3번, B가 2번, C가 0번, D가 2번 등장했다
D2 문서에는 A가 1번, B가 2번, C가 3번, D가 0번 등장했다
D3 문서에는 A가 2번, B가 2번, C가 2번, D가 2번 등장했다



A
B
C
D
D1
3
2
0
2
D2
1
2
3
0
D3
2
2
2


이는 A,B,C,D 라는 4차원 공간에서 D1, D2, D3 이라는 3개의 좌표로 배치하는 것과 똑같이 생각할 수 있다.
참고로 위와같이 정의하는 것을 보고 단어들의 출현빈도 (Term Frequency)를 가중치로 (Weigh)로 하여 문서를 논리적으로 정의한것이다 라고 말한다.

이제 누군가가 "새로운 Q 문서가 있는데 이 문서에는 A가 1번 B가 5번 나온 문서인데 이문서가 가장 유사한 문서는 무엇이냐?" 
라고 물어본다면 이제 유클리디안 거리 공식을 사용 할 수 있다.

Q =  {  1, 5, 0, 0 }

라고 Q를 정의하고 그리고 Q와  각 D1,D2,D3 문서와의 거리를 구하여 가장 가까운 거리를 가지는 문서가 답이 될것이다.

euclidean_distance_2.png


 즉 D1 문서가 가장 유사한 문서라고 판단할 수 있다.








********* 참고 ***********


지금 포스트에서 설명한 유클리디안 거리는 L2 거리라고 표현하고
이전 장에 설명한 맨하탄 거리는 L1 거리라고 표현한다고 했다.

그럼 여기서 Lm 거리라는 것에 대해서 얘기 할수 있다. ( 이때  m은 숫자이다. )
m으로 이름을 딴 이유는 이 거리에 대해서 제시한 헤르만 민코프스키의 m을 딴것이다.

두점 A와 B간 Lm거리의 공식은 다음과 같다.

20080830_152005.png


여기서 m이 1이면 맨하탄 거리와 같고 m이 2라면 유클리디언 공식과 같다.



핑백

덧글

댓글 입력 영역


google_adsense