Crucial clarification of BKDE's complexity

This commit is contained in:
MBulli
2018-02-17 10:34:48 +01:00
parent 40be309b50
commit 62fceaa815

View File

@@ -101,12 +101,12 @@ Clearly, a large value of $G$ produces a estimate close to the regular KDE, but
However, it is unknown what particular $G$ gives the best trade-off for any given sample set.
In general, there is no definite answer because the amount of binning depends on the structure of the unknown density and the sample size \cite{hall1996accuracy}.
A naive implementation of \eqref{eq:binKde} reduces the number evaluations to $\landau{G^2}$ \cite{fan1994fast}.
Due to the fixed grid spacing a faster $\landau{G}$ algorithm can be used, because most of the kernel evaluations are the same and can be reused.
%, as each $g_j-g_{j-k}=k\delta$ is independent of $j$ \cite{fan1994fast}.
This is usually highlighted as the striking computational benefit of the BKDE.
\commentByToni{Das liest sich jetzt so, als wäre der BKDE schon sau schnell. Warum machen wir dann überhaupt noch was?}
A naive implementation of \eqref{eq:binKde} reduces the number of kernel evaluations to $\landau{G^2}$, assuming that $G<N$ \cite{fan1994fast}.
However, due to the fixed grid spacing several kernel evaluations are the same and can be reused.
This reduces the number of kernel evaluations to $\landau{G}$, but the number of additions and multiplications required are still $\landau{G^2}$.
Using the FFT to perform the discrete convolution, the complexity can be further reduced to $\landau{G\log{G}}$, which is currently the fastest exact BKDE algorithm.
The \mbox{FFT-convolution} approach is usually highlighted as the striking computational benefit of the BKDE.
However, for this work it is the key to recognize the discrete convolution structure of \eqref{eq:binKde}, as this allows one to interpret the computation of a density estimate as a signal filter problem.
This makes it possible to apply a wide range of well studied techniques from the broad field of digital signal processing (DSP).
Using the Gaussian kernel from \eqref{eq:gausKern} in conjunction with \eqref{eq:binKde} results in the following equation
@@ -121,8 +121,8 @@ In terms of DSP this is analogous to filter the binned data with a Gaussian filt
This finding allows to speedup the computation of the density estimate by using a fast approximation scheme based on iterated moving average filters.
\commentByToni{hier vielleicht nochmal explizit erwähnen, also mit Namen, das der Gauss jetzt die BKDE approximiert und das diese erkenntniss toll und wichtig ist, weil wir so ein komplexes problem total einfach und schnell dargestellt haben.}
\commentByMarkus{Reicht das so?}
\commentByToni{hier vielleicht nochmal explizit erwähnen, also mit Namen, das der Gauss jetzt die BKDE approximiert und das diese erkenntniss toll und wichtig ist, weil wir so ein komplexes problem total einfach und schnell dargestellt haben. \commentByMarkus{Reicht das so?}}