| tsybakov {modeest} | R Documentation |
This mode estimator is based on a gradient-like recursive algorithm. It includes the Mizoguchi-Shimura (1976) mode estimator, based on the window training procedure.
tsybakov(x,
bw = NULL,
a,
alpha = 0.9,
kernel = "triangular",
dmp = TRUE,
par = shorth(x))
x |
numeric. Vector of observations. |
bw |
numeric. Vector of length |
a |
numeric. Vector of length |
alpha |
numeric. An alternative way of specifying |
kernel |
character. The kernel to be used. Available kernels are
|
dmp |
logical. If |
par |
numeric. Initial value in the gradient algorithm.
Default value is |
If bw is missing, then bw = (1:length(x))^(-1/7), which is the default value advised by Djeddour et al (2003).
If a is missing, then a = (1:length(x))^(-alpha) (with alpha = 0.9 if alpha is missing), which is the default value advised by Djeddour et al (2003).
A numeric value is returned, the mode estimate.
The Tsybakov mode estimate as it is presently computed does not work very well. The reasons of this inefficiency are under investigation.
The user should preferentially call tsybakov through
mlv(x, method = "tsybakov", ...).
This returns an object of class mlv.
P. Poncet
Mizoguchi R. and Shimura M. (1976). Nonparametric Learning Without a Teacher Based on Mode Estimation. IEEE Transactions on Computers, C25(11):1109-1117.
Tsybakov A. (1990). Recursive estimation of the mode of a multivariate distribution. Probl. Inf. Transm., 26:31-37.
Djeddour K., Mokkadem A. et Pelletier M. (2003). Sur l'estimation recursive du mode et de la valeur modale d'une densite de probabilite. Technical report 105.
Djeddour K., Mokkadem A. et Pelletier M. (2003). Application du principe de moyennisation a l'estimation recursive du mode et de la valeur modale d'une densite de probabilite. Technical report 106.
mlv for general mode estimation
x <- rbeta(1000, shape1 = 2, shape2 = 5) ## True mode: betaMode(shape1 = 2, shape2 = 5) ## Estimation: tsybakov(x, kernel = "triangular") tsybakov(x, kernel = "gaussian", alpha = 0.99) M <- mlv(x, method = "tsybakov", kernel = "gaussian", alpha = 0.99) print(M) plot(M)