kde_bandwidth_cv_main.cc File Reference

Driver file for bandwidth optimizer for KDE. More...

Include dependency graph for kde_bandwidth_cv_main.cc:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

int main (int argc, char *argv[])
 Main function which reads parameters and determines which algorithms to run.

Detailed Description

Driver file for bandwidth optimizer for KDE.

Author:
Dongryeol Lee (dongryel)

Definition in file kde_bandwidth_cv_main.cc.


Function Documentation

int main ( int  argc,
char *  argv[] 
)

Main function which reads parameters and determines which algorithms to run.

In order to compile this driver, do: fl-build dualtree_kde_bin --mode=fast

In order to run this driver for the fast KDE algorithms, type the following (which consists of both required and optional arguments) in a single command line:

./dualtree_kde_bin --data=name_of_the_reference_dataset --query=name_of_the_query_dataset --kde/kernel=gaussian --kde/bandwidth=0.0130619 --kde/scaling=range --kde/multiplicative_expansion --kde/fast_kde_output=fast_kde_output.txt --kde/naive_kde_output=naive_kde_output.txt --kde/do_naive --kde/relative_error=0.01

Explanations for the arguments listed with possible values:

1. data (required): the name of the reference dataset

2. query (optional): the name of the query dataset (if missing, the query dataset is assumed to be the same as the reference dataset)

3. kde/kernel (optional): kernel function to use

  • gaussian: Gaussian kernel (default)
  • epan: Epanechnikov kernel

4. kde/bandwidth (required): smoothing parameter used for KDE; this has to be positive.

5. kde/scaling (optional): whether to prescale the dataset

  • range: scales both the query and the reference sets to be within the unit hypercube [0, 1]^D where D is the dimensionality.
  • standardize: scales both the query and the reference set to have zero mean and unit variance.
  • none: default value; no scaling

6. kde/multiplicative_expansion (optional): If this flag is present, the series expansion for the Gaussian kernel uses O(p^D) expansion. Otherwise, the Gaussian kernel uses O(D^p) expansion. See kde.h for details.

7. kde/do_naive (optional): run the naive algorithm after the fast algorithm.

8. kde/fast_kde_output (optional): if this flag is present, the approximated density estimates are output to the filename provided after it.

9. kde/naive_kde_output (optional): if this flag is present, the exact density estimates computed by the naive algorithm are output to the filename provided after it. This flag is not ignored if --kde/do_naive flag is not present.

10. kde/relative_error (optional): relative error criterion for the fast algorithm; default value is 0.1 (10 percent relative error for all query density estimates).

Definition at line 110 of file kde_bandwidth_cv_main.cc.

References fx_done(), fx_param_double(), fx_param_exists(), fx_param_str(), fx_param_str_req(), fx_root, fx_submodule(), data::Load(), DatasetScaler::ScaleDataByMinMax(), and DatasetScaler::StandardizeData().

Generated on Mon Jan 24 12:04:39 2011 for FASTlib by  doxygen 1.6.3