persistence
the extrema are merged. The msc.nn.svm
and
msc.nn.kd
construct Morse-Smale complex that allow probabilistic
preditcion (using predict
) pf the partion assignment of unseen
data points, see also predict.msc
.
The nearest neighbor computation uses the ANN library by David M. Mount and
Sunil Arya (http://www.cs.umd.edu/~mount/ANN/).
msc.nn(y, x, knn = ncol(x), pLevelP = 0.2, pLevel, nLevels, type = 1, smooth = FALSE, eps=0.01) msc.nn.kd(y, x, knn = ncol(x)*3, pLevelP = 0.2, pLevel, nLevels, bw, type = 1, smooth = FALSE, eps=0.01) msc.nn.svm(y, x, knn = 3*ncol(x), pLevelP = 0.2, pLevel, nLevels, cost = 1, type = 1, smooth=FALSE, precompute = FALSE, eps=0.01 ) msc.graph(y, x, knn, knnd, nLevels, smooth = FALSE)
pLevel
are
ignored.max(y) -
min(y)
nLevels
$+1$ extrema. I.e. from the highest persistence
level with a single minimum and maximum to a persitence level with
nLevels
$+1$ extremasmooth
is set to true the steepest ascent/descent is not computed
based on the raw function values y but based on the function value obtained
by averaging the function values of the k neareast neighbors. Effectively,
a smoothing of the observed function.eps
specifices how close the approximation should be, i.e,
the ratio of distance to approximate neareast neighbor to true neareast
neigbor is at most $1 + $ eps
(see the ANN webpage for more details
http://www.cs.umd.edu/~mount/ANN/)"msc"
, "msc.kd"
or "msc.svn"
with the following components:
"msc$level"
the following components:
[3] Samuel Gerber, Peer-Timo Bremer, Valerio Pascucci, Ross Whitaker, Visual Exploration of High Dimensional Scalar Functions, IEEE Transactions on Visualization and Computer Graphics, vol. 16, no. 6, pp 1271-1280, Nov.-Dec. 2010.
David M. Mount and Sunil Arya ANN library http://www.cs.umd.edu/~mount/ANN/
predict.msc
plot.msc
msc.lm
msc.elnet
msc.slm
,
msc.slm.elnet
,
data(fourpeaks)
d <- fourpeaks()
#build Morse-Smale complex of m
ms <- msc.nn(y=d[,1], x=d[, 2:3], pLevel=0.1, knn = 15)
ms.kd <- msc.nn.kd(y=d[,1], x=d[, 2:3], pLevel=0.1, knn = 15, bw=0.1)
ms.svm <- msc.nn.svm(y=d[,1], x=d[, 2:3], pLevel=0.1, knn = 15)
#predict partition assignments
p1 <- predict(ms.kd, d[, 2:3])
p2 <- predict(ms.svm, d[, 2:3])
Run the code above in your browser using DataLab