2013-06-18 6 views
1

I가 1 × 5 크기의 벡터들로 구성 데이터를하는 pikel 나타내는 각 : 0 <= x <= M, 0 <= y <= N : [x,y,r,g,b], xy가 위치한다. r,g,b은 픽셀의 색상입니다 : 0 <= r,g,b <= 255.Epanechnikov의 다변량 밀도

다 변수 Epanechnikov 커널을 사용하여 밀도 추정을 산정하려고합니다. 나는 기본적으로 그것을 수행하는 2 가지 방법이 있다는 것을 읽었다 :

  1. Multiplicative 방법 - 각 차원에 대한 커널을 계산하고 그 값을 곱한다.
  2. 벡터의 표준을 계산하고 그 값에 대한 커널을 계산하십시오.

각 데이터가 정확히 어떻게 작동합니까? Epanechnikov 커널이 정규화 된 값인 > 1 또는 < -1에 대해 0을 산출한다는 것을 알면 정상화해야합니까?

저는 C++로 프로그래밍 중입니다.

+1

을 수정하려면 커널의 폭이 x의 기능과 y로 자신을 변화 곳 등 adaptive kernel density estimation

또한 확장이 있습니다 .com –

답변

2
  1. 각 방법에 대한 커널을 계산 한 다음 곱합니다.
  2. 벡터의 표준을 계산하고 그 값에 대한 커널을 계산하십시오.
  1. 은 변수 x와 y가 다른 한편 2에 대한 보유하지 않는 statistically independent을 것을, 2. 방사상 대칭 커널 가정합니다.

각 데이터가 정확히 어떻게 작동합니까?

나는 모두를 시도하고 (데이터에 대한 더 나은 가능성을 제공하지만 돌보는 것은 cross validation를 사용하여 예를 들어, 데이터를 overfit하지 예를 들어, 어느 쪽이) 더 나은 결과를 제공하는 하나 볼 것입니다.

가장 기본적인 형태는 샘플을 분할하고 밀도 추정 기능을 계산하기 위해 (즉, 데이터 포인트 주변에 커널을 배치하는) 한 부분을 사용하고 다른 부분에서 우도를 평가하는 것을 의미합니다 (밀도 값 시험을 위해 사용 된 점에서의 추정 기능 또는 확률 곱의 로그를 더 잘 나타냄) "다른"표본 (추정 계산에 사용되지 않는 표본)에서 어느 것이 더 높은 확률의 산물을 제공하는지 확인하십시오.

동일한 인수 (교차 유효성 검사)는 커널의 너비 선택 ('확장 인수', 커널을 좁게 또는 넓게)에도 적용됩니다.

물론 커널의 너비를 수동으로 선택하여 시작할 수 있습니다. 커널 너비를 너무 작게 선택하면 '뾰족한 (spiky)'밀도 추정값을 얻을 수 있습니다. 너무 큰 값을 선택하면 데이터의 중요한 기능이 사라집니다.

Epanechnikov 커널이 정규화 된 값> 1 또는 <-1에 대해 0을 산출한다는 것을 알면 정상화해야하는 것은 무엇입니까?

언급 한 기능은 정규화와 관련이 없습니다. 커널 자체에 대해 정규화 된 표현식을 사용해야합니다. 즉, 커널이 0이 아닌 범위의 적분 값은 1이어야합니다. 사례 1의 경우 1D 커널이 정규화 된 경우 (3/4*(1-u^2)의 경우 [-1..1]) 2D 제품도 정규화됩니다 .2의 경우 2D 통합을 계산해야합니다.

가정 다음과 같이 커널이 정규화, 당신은 다음 밀도 추정치를 정상화 할 수 있습니다. N은 데이터 포인트의 수는

normalization formula

이 정상화 될 것입니다, 2 차원 평면에 걸쳐 p(x,y)의 통합, 즉 하나입니다.


언급 한 기능적 형식 중 어느 것도 임의로 허용하지 않습니다. covariance matrices. 이 문제를 해결하는 한 가지 방법은 데이터 세트를 먼저 '상관 해제'(즉, 데이터 집합의 공분산 행렬이 단위 행렬이되도록 행렬 변환을 적용한 다음) 밀도 추정을 수행 한 다음 역변환을 적용하는 것입니다. 어떤 시점에서 당신이 등 당신의 견적 나는이 stats.stackexchange로 마이그레이션해야한다고 생각

+0

답장을 보내 주셔서 감사합니다. "커널 자체에 대해 정규화 된 표현식 사용"이란 의미는 무엇입니까? 다시 Epanechnikov 커널을 사용하고 5 개의 항목 {a, b, c, d, e} 벡터를 갖습니다. 0 <= a <= 720 0 <= b <= 480 0 <= c <= 255 0 <= d <= 255 0 <= e <= 255 정확히 무엇을해야합니까? 자세한 내용을 알려 주실 수 있습니까? 내가 사용한 시그마의 예제를 이해하지 못했습니다. 당신이 그것을 다시 설명 할 수 있으면 기쁠 것입니다.) 고마워요! –