[R] Is input pre-processing needed for nnet module?
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Jun 16 17:53:26 CEST 2004
If you read the reference on the help page, you will find out the answer.
After all, as the DESCRIPTION says, this is support software for a book.
On Wed, 16 Jun 2004, Agostino.Manzato at osmer.fvg.it wrote:
> Hi,
> I used the nnet R module to classify my data using Neural Networks:
> nnet(input_matrix, obs_vect, size=h, linout=FALSE, entropy=TRUE)
> I used as NN input my "raw" data.
> After that I tried to use the normalized input data (with z-scores,
> i.e. mean=0 and std=1) and have found NNs with a little smaller
> Cross Entropy Error.
> My question is:
> Is it *wrong* to feed nnet directly with the raw input data?
>
> I found in
> http://www.faqs.org/faqs/ai-faq/neural-nets/part2/section-16.html
> that it depends on the minimization training algorithm:
> - "Steepest descent is very sensitive to scaling.
> - Quasi-Newton and conjugate gradient methods... therefore are scale
> sensitive. However,... are less scale sensitive than pure gradient
> descent.
> - Newton-Raphson and Gauss-Newton, if implemented correctly, are
> theoretically invariant under scale changes..."
>
> I know that nnet is a Quasi-Newton algorithm, so it make sense
> that I found a small improvement using the normalized data.
> Can someone confirme if it is really so?
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list