R/estimate_packing.R
estimate_packing.Rd
Instead of covering numbers which are expensive to compute in many fractal-based methods,
est.packing
exploits packing numbers as a proxy to describe spatial density. Since
it involves random permutation of the dataset at each iteration, every run might have
different results.
est.packing(X, eps = 0.01)
an \((n\times p)\) matrix or data frame whose rows are observations.
small positive number for stopping threshold.
a named list containing containing
estimated intrinsic dimension.
Kégl B (2002). “Intrinsic Dimension Estimation Using Packing Numbers.” In Proceedings of the 15th International Conference on Neural Information Processing Systems, NIPS'02, 697--704.
# \donttest{
## create 'swiss' roll dataset
X = aux.gensamples(dname="swiss")
## try different eps values
out1 = est.packing(X, eps=0.1)
out2 = est.packing(X, eps=0.01)
out3 = est.packing(X, eps=0.001)
## print the results
line1 = paste0("* est.packing : eps=0.1 gives ",round(out1$estdim,2))
line2 = paste0("* est.packing : eps=0.01 gives ",round(out2$estdim,2))
line3 = paste0("* est.packing : eps=0.001 gives ",round(out3$estdim,2))
cat(paste0(line1,"\n",line2,"\n",line3))
#> * est.packing : eps=0.1 gives 1.72
#> * est.packing : eps=0.01 gives 1.62
#> * est.packing : eps=0.001 gives 2.34
# }