두 개의 각각 평균과 분산이 있는데, 이 둘 간의 거리 또는 유사도를 비교하고 싶었다.
원래는 정규분포로 가정하고, 두 분포의 교집합을 구해 유사도를 측정하고 싶었다.
많은 서치 결과 간단하게 수학적으로 교차하는 영역의 퍼센트를 구하는 방법은 찾지 못했다.
물론 프로그래밍 방법으로 많은 반복을 통해 구할 수 있는 방법은 있게지만, 속도가 문제다.
그래서 이참에 다양한 거리 또는 유사도에 관한 방법론에 대해 정리하고자 한다.
"거리"라는 측정 기준을 만족하려면, 다음의 4가지 조건을 만족해야한다
1. d(x,y ) >= 0 ( non-negativity)
2. d(x,y) = 0 오직 x와 y가 같은 경우에만 만족해야함 (identity of indiscernibles)
3. d(x,y ) = d(y,x) (symmetry)
4. d(x,z)<= d(x,y) + d(y,z) (subadditivity / triangle inequality)
두 분포의 교집합 구하는 자바애플릿
: http://www.dmbru.dentistry.ubc.ca/Calculating_Companion/applets/normal_distribution_int/normal_distribution_int.php
Bhattacharyya distance
http://en.wikipedia.org/wiki/Bhattacharyya_coefficient
통계에서, Bhattacharyya distance는 이산 또는 연속 확률 분포의 유사성을 측정합니다.
그것은 밀접하게 두 개의 통계 샘플이나 집단 간의 중복의 양을 측정 Bhattacharyya 계수와 관련이 있습니다.
이것은 2개의 샘플들의 상대적 연관성을 결정하는데 사용할 수 있습니다.
또한 이것은 클래스의 분류를 위한 measure로 사용 될 수 있고, 이것은 마할라노비스(Mahalanobis) 거리보다 좀 더 신뢰할만 합니다.
여기서 마할라노비스 거리는 Bhattacharyya 거리에서 두 분포의 표준편차가 같은 경우의 특별한 케이스입니다.
따라서 두 클래스는 유사한 평균을 갖으나 서로 다른 표준 편차가 있을때, Mahalanobis 거리는 0이 되는 경향이 있지만, Bhattacharyya 거리가 표준 편차의 차이에 의존적으로 다른 값을 갖는다.
'Algorithm' 카테고리의 다른 글
[Bluestein's FFT] 2^n의 길이가 아닌 데이터의 Fast Fourier Transform (0) | 2015.06.12 |
---|---|
Computer Vision Resource (0) | 2015.05.15 |
Best Fit Plane ( 평면 방정식 찾기 ) (0) | 2013.07.12 |
The Sequential Floating Selection (0) | 2013.05.20 |
OpenCV Adaboost 분석(3) (0) | 2013.05.12 |