파생물의 커널 밀도 추정기를위한 최적의 대역폭이 있습니까?


14

커널 밀도 추정기를 사용하여 일련의 관측 값을 기반으로 밀도 함수를 추정해야합니다. 동일한 관측치에 기초하여, 커널 밀도 추정기의 도함수를 사용하여 밀도의 1 차 및 2 차 도함수도 추정해야합니다. 대역폭은 확실히 최종 결과에 큰 영향을 미칩니다.

먼저 KDE 대역폭을 제공하는 몇 가지 R 기능이 있다는 것을 알고 있습니다. 어느 것이 더 선호되는지 잘 모르겠습니다. 누구든지 KDE 대역폭에 대해 이러한 R 기능 중 하나를 추천 할 수 있습니까?

둘째, KDE의 파생물에 대해 동일한 대역폭을 선택해야합니까?


밀도의 경우 대역폭 선택은 항상 다소 주관적입니다. 너무 좁은 것이 무엇인지에 대한 문제이므로 커브가 너무 매끄럽고 커브의 일부 실제 기능이 누락 된 경우 노이즈와 너무 넓은 노이즈를 따라가는 커브 변화를 유발합니다. 그러나 밀도를 추정하여 모양을 찾습니다. 따라서 추정이 얼마나 순조로 운지 알기 쉽지 않습니다. 파생 상품의 경우 파생 상품의 기능에 대해 알고 싶습니다.
Michael R. Chernick

답변:


15

미분 추정을위한 최적의 대역폭은 밀도 추정을위한 대역폭과 다릅니다. 일반적으로 밀도의 모든 기능에는 고유 한 최적의 대역폭 선택기가 있습니다.

목표가 평균 적분 제곱 오차 (일반적인 기준)를 최소화하는 것이라면 주관적인 것이 없습니다. 기준을 최소화하는 값을 도출하는 것이 중요합니다. 방정식은 Hansen (2009) 의 섹션 2.10에 나와 있습니다.

까다로운 부분은 최적 대역폭이 밀도 자체의 함수이므로이 솔루션은 직접적으로 유용하지 않다는 것입니다. 이 문제를 해결하기 위해 여러 가지 방법이 있습니다. 이들은 보통 정규 근사를 사용하여 밀도의 일부 기능에 근사합니다. 밀도 자체가 정상이라는 가정은 없습니다. 가정은 밀도를 가정하면 정규성을 가정하여 밀도의 일부 기능을 얻을 수 있다는 것입니다.

근사치가 부과되는 위치에 따라 대역폭 선택기가 얼마나 좋은지 결정됩니다. 가장 조잡한 접근 방식을 "정상 참조 규칙"이라고하며 근사치를 높은 수준으로 적용합니다. Hansen (2009)의 섹션 2.10의 끝은이 접근법을 사용한 공식을 제공합니다. 이 접근 방식은 CRAN hns()ks패키지에서 기능 으로 구현됩니다 . 자신의 코드를 작성하지 않으려는 경우 아마도 가장 좋습니다. 따라서 다음과 같이 밀도의 미분을 추정 할 수 있습니다 (을 사용하여 ks).

library(ks)
h <- hns(x,deriv.order=1)
den <- kdde(x, h=h, deriv.order=1)

일반적으로 "직접 플러그 인"선택기로 알려진 더 나은 접근 방식은 더 낮은 수준에서 근사치를 부과합니다. 직선 밀도 추정의 경우, 이는을 사용하여 R로 구현 된 Sheather-Jones 방법 density(x,bw="SJ")입니다. 그러나 파생 상품 추정을 위해 R 패키지에 유사한 시설이 있다고 생각하지 않습니다.

직접 커널 추정을 사용하는 대신 로컬 다항식 추정기로 더 나은 결과를 얻을 수 있습니다. 이는 R locpoly()ks패키지 기능을 사용하여 수행 할 수 있습니다 . 다시, 최적의 대역폭 선택이 구현되지 않았지만 바이어스는 커널 추정기보다 작습니다. 예를 들어

den2 <- locpoly(x, bandwidth=?, drv=1) # Need to guess a sensible bandwidth

고마워요, Rob 밀도 추정에 SJ 대역폭을 사용할 것입니다.
user13154

미분 추정의 경우, h <-hns (x)를 사용하면; den <-kdde (x, h = h, deriv.order = 1)은 h 추정에 사용 된 최적 대역폭입니다. 파생 순서를 지정하지 않고 h <-hns (x)가 선택되었으므로 이것을 묻습니다. 감사.
user13154

나는 Hansen (2009)의 섹션 2.10의 끝에 주어진 공식을 점검했다. 대역폭은 도함수, 즉 rth 도함수에 따라 달라지는 것 같습니다. h <-hns (x)는 r에 의존하지 않는 것 같습니다.
user13154

방금 hns 함수에 파생 상품의 순서를 지정할 수있는 deriv.order 인수가 있다는 것을 알았습니다. 다시 한 번 감사드립니다, Rob.
user13154

죄송합니다. 나는 그것을 생략했다. 이제 수정되었습니다.
Rob Hyndman
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.