Description Usage Arguments Details Value Author(s) References Examples
View source: R/MBRM_parallel.R
Executes the MBRM algorithm for unsupervised feature selection (CPU parallel computing).
1 | MBRM_parallel(X, scaleQ, m=2, C=NULL, ID_tot=NULL, ncores=4)
|
X |
A N x E |
scaleQ |
A vector containing the values of l^(-1) chosen by the user (see Details). |
m |
The value of the parameter m (by default: |
C |
The number of steps of the SFS procedure (by default: |
ID_tot |
The value of the full data ID if it is known a priori (by default: the value of ID_tot is estimated using the Morisita estimator of ID witin the function). |
ncores |
Number of workers (by default: |
l is the edge length of the grid cells (or quadrats). Since the the variables (and consenquently the grid) are rescaled to the [0,1] interval, l is equal to 1 for a grid consisting of only one cell.
l^(-1) is the number of grid cells (or quadrats) along each axis of the Euclidean space in which the data points are embedded.
l^(-1) is equal to Q^(1/E) where Q is the number of grid cells and E is the number of variables (or features).
l^(-1) is directly related to delta (see References).
delta is the diagonal length of the grid cells.
The values of l^(-1) in scaleQ
must be chosen according to the linear
part of the log-log plot relating the log values of the
multipoint Morisita index to the log values of delta (or,
equivalently, to the log values of l^(-1)) (see logMINDEX
).
A list of four elements:
a vector containing the identifier numbers of the original features in the order they are selected through the Sequential Forward Selection (SFS) search procedure.
the names of the corresponding features.
the corresponding ID estimates.
the ID estimate of the full data set.
Jean Golay jeangolay@gmail.com
J. Golay and M. Kanevski (2017). Unsupervised feature selection based on the Morisita estimator of intrinsic dimension, Knowledge-Based Systems 135:125-134.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | bf <- Butterfly(10000)
bf_select <- MBRM_parallel(bf[,-9], 5:25, ncores=2)
var_order <- bf_select[[2]]
var_perf <- bf_select[[3]]
## Not run:
dev.new(width=5, height=4)
plot(var_perf,type="b",pch=16,lwd=2,xaxt="n",xlab="", ylab="",
col="red",ylim=c(0,max(var_perf)),panel.first={grid(lwd=1.5)})
axis(1,1:length(var_order),labels=var_order)
mtext(1,text="Added Features (from left to right)",line=2.5,cex=1)
mtext(2,text="Estimated ID",line=2.5,cex=1)
bf_large <- Butterfly(10^5)
system.time(MBRM(bf_large[,-9], 5:25))
system.time(MBRM_parallel(bf_large[,-9], 5:25))
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.