made bullis comments fully english
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
\section{Experiments}
|
\section{Experiments}
|
||||||
|
|
||||||
\subsection{Mean Integrated Squared Error}
|
\subsection{Mean Integrated Squared Error}
|
||||||
|
|
||||||
|
|
||||||
We now empirically evaluate the accuracy of our method, using the mean integrated squared error (MISE).
|
We now empirically evaluate the accuracy of our method, using the mean integrated squared error (MISE).
|
||||||
The ground truth is given as $N=1000$ synthetic samples drawn from a bivariate mixture normal density $f$
|
The ground truth is given as $N=1000$ synthetic samples drawn from a bivariate mixture normal density $f$
|
||||||
\begin{equation}
|
\begin{equation}
|
||||||
@@ -13,6 +15,12 @@ where the majority of the probability mass lies in the range $[-6; 6]^2$.
|
|||||||
Clearly, the structure of the ground truth affects the error in the estimate, but as our method approximates the KDE only the closeness to the KDE is of interest.
|
Clearly, the structure of the ground truth affects the error in the estimate, but as our method approximates the KDE only the closeness to the KDE is of interest.
|
||||||
Therefore, the particular choice of the ground truth is only of minor importance here.
|
Therefore, the particular choice of the ground truth is only of minor importance here.
|
||||||
|
|
||||||
|
\begin{figure}[t]
|
||||||
|
\label{fig:evalBandwidth}
|
||||||
|
\includegraphics[width=\columnwidth]{gfx/Eval1Bandwidth_abs.png}
|
||||||
|
\caption{Hier kommt bandwith error plot single. da sind voll die ergebnisse zu der genaugikeit und so für voll die verfahren und weighted avg auch noch.} \label{fig:eval1GroundTruth}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
The exact KDE, evaluated at $50^2$ points, is compared to the BKDE, box filter, and extended box filter approximation, which are evaluated at a smaller grid with $30^2$ points.
|
The exact KDE, evaluated at $50^2$ points, is compared to the BKDE, box filter, and extended box filter approximation, which are evaluated at a smaller grid with $30^2$ points.
|
||||||
The MISE between $f$ and the estimates as a function of $h$ are evaluated, and the resulting plot is given in figure~\ref{fig:evalBandwidth}.
|
The MISE between $f$ and the estimates as a function of $h$ are evaluated, and the resulting plot is given in figure~\ref{fig:evalBandwidth}.
|
||||||
|
|
||||||
@@ -21,21 +29,21 @@ They are rather close to each other, with a tendency to diverge for larger $h$.
|
|||||||
In contrast, the error curve of the box filter estimate has noticeable jumps at $h=(0.4; 0.252; 0.675; 0.825)$.
|
In contrast, the error curve of the box filter estimate has noticeable jumps at $h=(0.4; 0.252; 0.675; 0.825)$.
|
||||||
These jumps are caused by the rounding of the integer-valued box width given by \eqref{eq:boxidealwidth}.
|
These jumps are caused by the rounding of the integer-valued box width given by \eqref{eq:boxidealwidth}.
|
||||||
As the extend box filter is able to approximate an exact $\sigma$, it lacks these discontinues.
|
As the extend box filter is able to approximate an exact $\sigma$, it lacks these discontinues.
|
||||||
Consequently, reducing the overall error of the approximation, but only marginal in this scenario.
|
Consequently, it reduces the overall error of the approximation, but only marginal in this scenario.
|
||||||
The global average MISE over all value of $h$ is $0.0049$ for the regular box filter and $0.0047$ in case of the extended version.
|
The global average MISE over all values of $h$ is $0.0049$ for the regular box filter and $0.0047$ in case of the extended version.
|
||||||
Likewise, the maximum MISE is $0.0093$ and $0.0091$, respectively.
|
Likewise, the maximum MISE is $0.0093$ and $0.0091$, respectively.
|
||||||
The choice between the extended and regular box filter algorithm depends on how large the acceptable error should be, thus on the particular application.
|
The choice between the extended and regular box filter algorithm depends on how large the acceptable error should be, thus on the particular application.
|
||||||
|
|
||||||
|
|
||||||
\begin{figure} [t]
|
|
||||||
\label{fig:evalBandwidth}
|
|
||||||
\includegraphics[width=\columnwidth]{gfx/tmpPerformance.png}
|
|
||||||
\caption{Hier kommt Performance Plot 2 spaltig} \label{fig:eval1GroundTruth}
|
|
||||||
\end{figure}
|
|
||||||
|
|
||||||
Other test cases of theoretical relevance are the MISE as a function of the grid size $G$ and the sample size $N$.
|
Other test cases of theoretical relevance are the MISE as a function of the grid size $G$ and the sample size $N$.
|
||||||
However, both cases do not give a deeper insight of the error behavior of our method, as it closely mimics the error curve of the KDE and only confirm the theoretical expectations.
|
However, both cases do not give a deeper insight of the error behavior of our method, as it closely mimics the error curve of the KDE and only confirm the theoretical expectations.
|
||||||
|
|
||||||
|
|
||||||
|
\begin{figure*}[t]
|
||||||
|
\label{fig:performance}
|
||||||
|
\includegraphics[width=\textwidth,height=6cm]{gfx/tmpPerformance.png}
|
||||||
|
\caption{Hier kommt Performance Plot 2 spaltig. Hier bitte noch ein wenig Text hinzufügen, damit da auch was steht. verstehst? vielleicht geht es sogar noch bis in die zweite zeile mit rein. mal schaun. }
|
||||||
|
\end{figure*}
|
||||||
|
|
||||||
% kde, box filter, exbox in abhänigkeit von h (bild)
|
% kde, box filter, exbox in abhänigkeit von h (bild)
|
||||||
% sample size und grid size text
|
% sample size und grid size text
|
||||||
% fastKDE fehler vergleich macht kein sinn weil kernel und bandbreite unterschiedlich sind
|
% fastKDE fehler vergleich macht kein sinn weil kernel und bandbreite unterschiedlich sind
|
||||||
@@ -47,33 +55,45 @@ All tests are performed on a Intel Core \mbox{i5-7600K} CPU with a frequency of
|
|||||||
We compare our C++ implementation of the extended box filter based KDE approximation to the KernSmooth R package and the \qq{FastKDE} Python implementation \cite{oBrien2016fast}.
|
We compare our C++ implementation of the extended box filter based KDE approximation to the KernSmooth R package and the \qq{FastKDE} Python implementation \cite{oBrien2016fast}.
|
||||||
The KernSmooth packages provides a FFT-based BKDE implementation based on optimized C functions at its core.
|
The KernSmooth packages provides a FFT-based BKDE implementation based on optimized C functions at its core.
|
||||||
% Vergleich zu weighted average (in c++) um unseren großen Geschwindigkeitsvorteil zu zeigen.
|
% Vergleich zu weighted average (in c++) um unseren großen Geschwindigkeitsvorteil zu zeigen.
|
||||||
|
With state estimation problems in mind, we additionally provide a C++ implementation of a weighted average estimator.
|
||||||
|
\commentByToni{Vielleicht sollten wir hier noch paar Worte über die Implementierung verlieren. Ist das alles std c++? nehmen wir iwas mega kraßes? usw. vielleicht im camera ready sogar nen link zum coder oder sowas.}
|
||||||
|
|
||||||
%The results are presented in plot \ref{...}
|
|
||||||
|
The results for performance comparison are presented in plot \ref{fig:performance}.
|
||||||
% O(N) gut erkennbar für box KDE und weighted average
|
% O(N) gut erkennbar für box KDE und weighted average
|
||||||
|
The linear complexity \landau{N} of the boxKDE and the weighted average is clearly visible.
|
||||||
% Gerade bei kleinen G bis 10^3 ist die box KDE schneller als R und fastKDE, aber das WA deutlich schneller als alle anderen
|
% Gerade bei kleinen G bis 10^3 ist die box KDE schneller als R und fastKDE, aber das WA deutlich schneller als alle anderen
|
||||||
|
Especially for small $G$ up to $10^3$ the boxKDE is much faster compared to KernSmooth R and fastKDE.
|
||||||
% Bei zunehmend größeren G wird der Abstand zwischen box KDE und WA größer.
|
% Bei zunehmend größeren G wird der Abstand zwischen box KDE und WA größer.
|
||||||
|
Nevertheless, the simple weighted average approach performs the fastest and with increasing $G$ the distance to the boxKDE grows constantly.
|
||||||
|
However, it is obvious that this comes with major disadvantages, like being prone to multimodalities, as discussed in section \ref{sec:intro}.
|
||||||
% (Das kann auch daran liegen, weil das Binning mit größeren G langsamer wird, was ich mir aber nicht erklären kann! Vlt Cache Effekte)
|
% (Das kann auch daran liegen, weil das Binning mit größeren G langsamer wird, was ich mir aber nicht erklären kann! Vlt Cache Effekte)
|
||||||
|
|
||||||
|
|
||||||
% Auffällig ist der Stufenhafte Anstieg der Laufzeit bei der R Implementierung.
|
% Auffällig ist der Stufenhafte Anstieg der Laufzeit bei der R Implementierung.
|
||||||
|
Further looking at fig. \ref{fig:performance}, the runtime performance of the KernSmooth R approach is increasing in a stepwise manner with growing $G$.
|
||||||
% Dies kommt durch die FFT. Der Input in für die FFT muss immer auf die nächste power of two gerundet werden.
|
% Dies kommt durch die FFT. Der Input in für die FFT muss immer auf die nächste power of two gerundet werden.
|
||||||
|
This behaviour is caused by the underlying FFT algorithm.
|
||||||
% Daher wird die Laufzeit sprunghaft langsamer wenn auf eine neue power of two aufgefüllt wird, ansonsten bleibt sie konstant.
|
% Daher wird die Laufzeit sprunghaft langsamer wenn auf eine neue power of two aufgefüllt wird, ansonsten bleibt sie konstant.
|
||||||
|
The FFT approach requires the input to be always rounded up to a power of two, what then causes a constant runtime behaviour within the those boundaries and a strong performance deterioration at corresponding manifolds.
|
||||||
% Der Abbruch bei G=4406^2 liegt daran, weil für größere Gs eine out of memory error ausgelöst wird.
|
% Der Abbruch bei G=4406^2 liegt daran, weil für größere Gs eine out of memory error ausgelöst wird.
|
||||||
|
The termination of KernSmooth R at $G=4406^2$ is caused by an out of memory error for even bigger $G$.
|
||||||
|
|
||||||
% Der Plot für den normalen Box Filter wurde aus Gründen der Übersichtlichkeit weggelassen.
|
% Der Plot für den normalen Box Filter wurde aus Gründen der Übersichtlichkeit weggelassen.
|
||||||
% Sowohl der box filter als auch der extended box filter haben ein sehr ähnliches Laufzeit Verhalten und somit einen sehr ähnlichen Kurvenverlauf.
|
% Sowohl der box filter als auch der extended box filter haben ein sehr ähnliches Laufzeit Verhalten und somit einen sehr ähnlichen Kurvenverlauf.
|
||||||
% Während die durschnittliche Laufzeit über alle Werte von G beim box filter bei 0.4092s liegt, benötigte der extended box filter im Durschnitt 0.4169s.
|
% Während die durschnittliche Laufzeit über alle Werte von G beim box filter bei 0.4092s liegt, benötigte der extended box filter im Durschnitt 0.4169s.
|
||||||
|
Both discussed Gaussian filter, namely box filter and extended box filter, yield a similar runtime behaviour and therefore a similar curve progression.
|
||||||
|
While the average runtime over all values of $G$ for the standard box filter is \SI{0.4092}{\second}, the extended one provides an average of \SI{0.4169}{\second}.
|
||||||
|
To keep the arrangement of fig. \ref{fig:performance} clear, we only illustrated the results of an boxKDE with extended box filter.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\commentByToni{die grafiken haben wir ja jetzt beschrieben, aber ein wenig diskussion in die tiefe fehlt mir trotzdem noch}
|
||||||
|
\commentByToni{also irgendwie kommt der exbox jetzt so plötzlich... der wurde vorher so dünn besprochen und jetzt ist er auf einmal voll im Fokus. wirkt komisch}
|
||||||
|
|
||||||
|
|
||||||
\begin{figure} [t]
|
|
||||||
\label{fig:evalBandwidth}
|
|
||||||
\includegraphics[width=\columnwidth]{gfx/tmpPerformance.png}
|
|
||||||
\caption{Hier kommt Performance Plot 2 spaltig} \label{fig:eval1GroundTruth}
|
|
||||||
\end{figure}
|
|
||||||
|
|
||||||
\begin{figure} [b]
|
|
||||||
\label{fig:evalBandwidth}
|
|
||||||
\includegraphics[width=\columnwidth]{gfx/Eval1Bandwidth_abs.png}
|
|
||||||
\caption{Hier kommt bandwith error plot single} \label{fig:eval1GroundTruth}
|
|
||||||
\end{figure}
|
|
||||||
|
|
||||||
|
|
||||||
\input{chapters/realworld}
|
\input{chapters/realworld}
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
\section{Introduction}
|
\section{Introduction}
|
||||||
|
\label{sec:intro}
|
||||||
|
|
||||||
Sensor fusion approaches are often based upon probabilistic descriptions like particle filters, using samples to represent the distribution of a dynamical system.
|
Sensor fusion approaches are often based upon probabilistic descriptions like particle filters, using samples to represent the distribution of a dynamical system.
|
||||||
To update the system recursively in time, probabilistic sensor models process the noisy measurements and a state transition function provides the system's dynamics.
|
To update the system recursively in time, probabilistic sensor models process the noisy measurements and a state transition function provides the system's dynamics.
|
||||||
|
|||||||
Reference in New Issue
Block a user