关于Parzen-Rosenblatt核密度估计量导数的偏差阶数(O(h²)与O(h))的证明问询
问题背景
大家好,我目前在推导一个核密度估计量导数的偏差阶数,遇到了一些困惑,想请各位帮忙指点:
我要处理的估计量是针对**$C^4$可测函数$f$**的导数估计:
$$\hat{f'}_{h,n} = \cfrac{1}{nh2}\sum_{j=1}n K'\left(\cfrac{x-X_j}{h}\right) =\cfrac{1}{h^2}K'\left(\cfrac{x-X_1}{h}\right)$$
其中$K$是标准正态核函数($K(v)=\frac{1}{\sqrt{2\pi}}e{-v2/2}$),$K'$是它的一阶导数($K'(v)=-vK(v)$)。
偏差的定义为:
$$B\left(\hat{f'}{h,n}\right)= E\left(\hat{f'}{h,n}(x)\right) - f'(x)$$
我的目标是证明当$h \to 0$时,这个偏差的阶数为$O(h)$和$O(h^2)$。
我的推导尝试
下面是我目前的推导步骤:
首先计算估计量的期望:
$$E\left(\hat{f'}_{h,n}(x)\right) = \int\cfrac{1}{h^2}K'\left(\cfrac{u-x}{h}\right)f(u)du$$
(注:我最初误写成了$f'(u)$,后来意识到这里应该是$f(u)$,因为是对样本$X_j$的概率密度$f(u)$积分)做变量替换$u = x - hv$(这里替换方式更便于后续计算,避免符号混乱),则$du=-hdv$,代入后积分变为:
$$ E\left(\hat{f'}{h,n}(x)\right) = \frac{1}{h}\int{-\infty}^\infty K'(v)f(x-hv)dv $$接下来考虑对$f(x-hv)$做泰勒展开(因为$h \to 0$,$hv$是小量):
$$f(x-hv) = f(x) - hv f'(x) + \frac{(hv)^2}{2}f''(x) - \frac{(hv)^3}{6}f'''(x) + o(h^3)$$
不过到这一步之后,我不确定如何继续推导才能得到偏差的阶数是$O(h)$和$O(h^2)$,想请教各位接下来的步骤应该怎么进行?有没有什么核函数的性质可以利用?
解答思路与推导过程
这里我来补充完整的推导步骤,帮你理清偏差阶数的来源:
首先,我们要利用标准正态核导数的几个关键性质:
- $K'(v)$是奇函数:$K'(-v) = -K'(v)$,因此$\int_{-\infty}^\infty K'(v)dv = 0$(奇函数在对称区间积分值为0)
- 分部积分计算相关矩:
- $\int_{-\infty}^\infty v K'(v)dv = \int_{-\infty}^\infty v dK(v) = \left.vK(v)\right|{-\infty}^\infty - \int{-\infty}^\infty K(v)dv = 0 - 1 = -1$(因为$vK(v)$在无穷远趋近于0,且$\int K(v)dv=1$)
- $\int_{-\infty}^\infty v^2 K'(v)dv = \int_{-\infty}^\infty v^2 dK(v) = \left.v2K(v)\right|_{-\infty}\infty - 2\int_{-\infty}^\infty vK(v)dv = 0 - 0 = 0$($vK(v)$是奇函数,积分值为0)
- $\int_{-\infty}^\infty v^3 K'(v)dv = \int_{-\infty}^\infty v^3 dK(v) = \left.v3K(v)\right|_{-\infty}\infty - 3\int_{-\infty}^\infty v^2K(v)dv = 0 - 3*1 = -3$(标准正态二阶矩为1)
接下来把泰勒展开式代入期望表达式:
$$
\begin{align*}
E\left(\hat{f'}_{h,n}(x)\right) &= \frac{1}{h}\left[
f(x)\int K'(v)dv - hf'(x)\int vK'(v)dv + \frac{h^2}{2}f''(x)\int v^2K'(v)dv - \frac{h^3}{6}f'''(x)\int v^3K'(v)dv + o(h^3)
\right] \
&= \frac{1}{h}\left[
0 - hf'(x)(-1) + \frac{h^2}{2}f''(x)0 - \frac{h^3}{6}f'''(x)(-3) + o(h^3)
\right] \
&= \frac{1}{h}\left[ hf'(x) + \frac{h^3}{2}f'''(x) + o(h^3) \right] \
&= f'(x) + \frac{h^2}{2}f'''(x) + o(h^2)
\end{align}
$$
最后计算偏差:
$$
B\left(\hat{f'}{h,n}\right) = E\left(\hat{f'}{h,n}(x)\right) - f'(x) = \frac{h^2}{2}f'''(x) + o(h^2)
$$
所以当$h \to 0$时,偏差的阶数是**$O(h^2)$**。
关于$O(h)$阶偏差的说明
如果你得到偏差是$O(h)$,通常是以下两种情况:
- 函数光滑性不足:如果$f$仅为$C2$(而非$C4$),泰勒展开只能到$h2$项,此时高阶项的余项是$O(h2)$,但如果核函数的某些矩不为0,可能会导致偏差阶数降为$O(h)$;
- 核函数选择不同:如果使用的核函数导数的一阶矩不为0,或者核本身不是对称的,也可能出现$O(h)$阶的偏差。但对于标准正态核(对称,导数为奇函数),在$f$是$C4$的前提下,偏差必然是$O(h2)$。
备注:内容来源于stack exchange,提问作者wageeh

