lvq3                  package:class                  R Documentation

Learning Vector Quantization 3

Description:

     Moves examples in a codebook to better represent the training set.

Usage:

     lvq3(x, cl, codebk, niter = 100*nrow(codebk$x), alpha = 0.03,
          win = 0.3, epsilon = 0.1)

Arguments:

       x: a matrix or data frame of examples 

      cl: a vector or factor of classifications for the examples 

  codebk: a codebook 

   niter: number of iterations 

   alpha: constant for training 

     win: a tolerance for the closeness of the two nearest vectors. 

 epsilon: proportion of move for correct vectors 

Details:

     Selects 'niter' examples at random  with replacement, and adjusts
     the nearest two examples in the codebook for each.

Value:

     A codebook, represented as a list with components 'x' and 'cl'
     giving the examples and classes.

References:

     Kohonen, T. (1990) The self-organizing map. _Proc. IEEE_ *78*,
     1464-1480.

     Kohonen, T. (1995) _Self-Organizing Maps._ Springer, Berlin.

     Ripley, B. D. (1996) _Pattern Recognition and Neural Networks._
     Cambridge.

     Venables, W. N. and Ripley, B. D. (2002) _Modern Applied
     Statistics with S._ Fourth edition.  Springer.

See Also:

     'lvqinit', 'lvq1', 'olvq1', 'lvq2', 'lvqtest'

Examples:

     data(iris3)
     train <- rbind(iris3[1:25,,1], iris3[1:25,,2], iris3[1:25,,3])
     test <- rbind(iris3[26:50,,1], iris3[26:50,,2], iris3[26:50,,3])
     cl <- factor(c(rep("s",25), rep("c",25), rep("v",25)))
     cd <- lvqinit(train, cl, 10)
     lvqtest(cd, train)
     cd0 <- olvq1(train, cl, cd)
     lvqtest(cd0, train)
     cd3 <- lvq3(train, cl, cd0)
     lvqtest(cd3, train)

