npstat is hosted by Hepforge, IPPP Durham
NPStat  5.10.0
BandwidthCVLeastSquaresND.hh
Go to the documentation of this file.
1 #ifndef NPSTAT_BANDWIDTHCVLEASTSQUARESND_HH_
2 #define NPSTAT_BANDWIDTHCVLEASTSQUARESND_HH_
3 
4 /*!
5 // \file BandwidthCVLeastSquaresND.hh
6 //
7 // \brief Cross-validating multivariate density estimates by optimizing
8 // the L2 distance (MISE)
9 //
10 // Author: I. Volobouev
11 //
12 // September 2010
13 */
14 
16 
17 namespace npstat {
18  /**
19  // Class for calculating KDE or LOrPE cross-validation MISE approximations
20  // for multivariate density estimates. operator() returns -MISE estimate
21  // (a quantity to be maximized).
22  */
23  template<typename Num, class Array>
24  struct BandwidthCVLeastSquaresND : public AbsBandwidthCVND<Num,Array>
25  {
26  inline virtual ~BandwidthCVLeastSquaresND() {}
27 
28  // Unweighted samples
29  virtual double operator()(
30  const HistoND<Num>& histo,
31  const Array& densityEstimate,
32  const AbsPolyFilterND& filterUsed) const;
33 
34  // Weighted samples
35  virtual double operator()(
36  const HistoND<Num>& histo,
37  double effectiveSampleSize,
38  const Array& densityEstimate,
39  const AbsPolyFilterND& filterUsed) const;
40  };
41 }
42 
43 #include "npstat/stat/BandwidthCVLeastSquaresND.icc"
44 
45 #endif // NPSTAT_BANDWIDTHCVLEASTSQUARESND_HH_
Interface definitions for KDE or LOrPE cross-validation calculations.
Definition: HistoND.hh:46
Definition: AbsArrayProjector.hh:14
Definition: AbsBandwidthCV.hh:176
Definition: AbsPolyFilterND.hh:27
Definition: BandwidthCVLeastSquaresND.hh:25
virtual double operator()(const HistoND< Num > &histo, double effectiveSampleSize, const Array &densityEstimate, const AbsPolyFilterND &filterUsed) const
virtual double operator()(const HistoND< Num > &histo, const Array &densityEstimate, const AbsPolyFilterND &filterUsed) const