본문 바로가기
AC-GAN/용어정리

[기본 용어 정리] 밀도추정(Density Estimation)

by print_soo 2024. 11. 12.

밀도 추정이란?

우선 밀도가 뭔지부터 알아보자.

밀도란 물리, 수학에서 말하는 밀도와는 좀 다르다. 확률/통계에서 말하는 밀도란 확률 밀도를 의미한다. 즉, 분포를 의미한다.

 

이제 밀도 추정에 대해서 알아보자. 

밀도 추정(Density Estimation)어떤 점x에서 데이터가 발생할 확률 즉, 확률 밀도 함수(분포) P(x)를 구하는 문제가 밀도 추정이다. 

 

[밀도 추정 방법] 

모수적 밀도 추정(Parametric Density Estimation)

미리 확률 밀도 함수(분포)에 대한 모델을 정해놓고 데이터들로부터 확률 밀도 함수(분포)의 파라미터(θ)를 추정하는 방식이다. 예를 들어 '일일 교통량'이 정규분포를 따른다고 가정해 버리면 관측된 데이터들로부터 평균과 분산만 구하면 되기 때문에 밀도추정 문제가 비교적 간단한 문제이다.

 

다만, 이렇게 확률 밀도 함수(분포)가 정해져있는 경우는 현실에서 많지 않기 때문에 실제로는 어떠한 사전 정보 없이 순수하게 관측된 데이터를 기반으로 확률 밀도 함수(분포)를 추정하는 Non-parametric Density Estimation(비모수적 밀도 추정)을 사용한다. 

 

비모수적 밀도 추정(Non-parametric Density Estimation)

 

히스토그램(histogram method)

가장 간단한 형태가 바로 히스토그램(histogram method)이다. 즉, 관측된 데이터들로부터  "특정 구간에 대한 데이터의 개수(bin) / 모든 데이터의 개수"를 기준으로 특정 구간에 대한 히스토그램을 구한 뒤 히스토그램을 정규화해서 확률 밀도 함수를 만들어내는 것이다.

 

히스토그램 공식


 

커널 밀도 추정(Kernel Density Estimation )

위 히스토그램 방식은 bin(특정 구간에 대한 데이터의 개수)의 크기 및 시작 위치에 따라 히스토 그램이 달라진다는 단점이 있다. 커널 밀도 추정 방법은 이런 히스토 그램 문제를 해결한 방법이다. 

 

우선 커널 밀도 추정을 알기 전에 커널 함수부터 알아보자.

 

커널 함수는 수학적으로 원점을 중심으로 좌우 대칭이면서 적분값이 1인 함수를 의미한다. 통계적으로는 평균이 0이면서 대칭형 확률 밀도 함수이다. 예를 들면 가우시안, Epanechnikov, uniform 함수 등이 있다.

 

 

 

 

이제 커널 밀도 추정에 대해서 알아보자. 

 

커널 밀도 추정이란 커널 함수를 이용해 각 데이터를 중심으로 밀도 함수를 만든 후, 생성된 밀도함수를 합쳐 전체 데이터의 밀도 곡선(분포)를 생성하는 방법이다. 

 

 

 

h는 대역폭으로 커널 함수의 폭을 조절한다. 이 h가 작을 수록 커널 함수의 모양이 뾰족해지고, 클 수록 커널 함수의 모양이 퍼지게된다.

 

따라서, 위의 식을 설명하자면 h로 폭이 조절된 커널 함수에 현재 우리가 구하고 싶은 데이터 x와 데이터 포인트 xi의 거리(가까우면 밀집된 것)를 넣고 모든 데이터 포인트에서 구한 밀도 함수를 전체 데이터의 개수로 나눈 것이다. 

 

 

 

 

이렇게 빨간 점선은 각 데이터에 대해 커널 함수를 적용한 것이고, 적용된 결과를 모두 합쳐 전체 데이터 개수를 나누어 전체 데이터에 대한 밀도 곡선을 만들 수 있다. 

 

 

커널 밀도 추정 방식은 대역폭 h와 어떤 커널 함수를 사용할지가 가장 중요한데, 대부분 가우시간 커널 함수와 아래의 대역폭 파라미터를 많이 사용한다고 한다. 

 

 

 

 

 

 

https://darkpgmr.tistory.com/147

 

Kernel Density Estimation(커널밀도추정)에 대한 이해

얼마전 한 친구가 KDE라는 용어를 사용하기에 KDE가 뭐냐고 물어보니 Kernel Density Estimation이라 한다. 순간, Kernel Density Estimation이 뭐지? 하는 의구심이 생겨서 그 친구에게 물어보니 자기도 잘 모른

darkpgmr.tistory.com

 


 

밀도 추정으로 이미지 생성하기

밀도 추정의 목표는 실제 데이터 분포와 유사한 분포를 추정하는 것이다. 하지만 추정된 분포는 추정 기법의 특성, 데이터의 양과 품질 등등으로 실제 데이터 분포와 차이가 날 수 있다. 

 

이렇게 실제 데이터 분포와 차이나는 점을 활용해서 실제 데이터와 유사하지만 약간 다른 데이터를 생성하는 것에 유리하다.