forecasting using neural network
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
hello all, in my application i have to forecast water demand based of climatic variables(temperature and humidity) using neural nwetwork. now i have few question in my mind 1)IS IT NECESSARY THAT THE INPUTS SHOULD HAVE A RELATION WITH OUTPUT AS IN MY CASE FOR SOME VAIRABLES I AM GETTING GOOD REGRESSION BUT FOR SOME ITS NOT GOOD. 2)WHICH TRAINING FUNCTION IS GOOD TRAINLM OR TRAINDM
0 Kommentare
Akzeptierte Antwort
Greg Heath
am 27 Mär. 2012
1. In order for a net to perform well on nondesign data, the input and output variables must be well correlated. However, the significant correlations need not be linear. Nevertheless, I always check the static linear correlations via corrcoef before designing regression and classification nets. Similarly, I always check the auto and cross correlation functions when designing time-series nets.
2. The MATLAB documentation recommends the Levenberg-Marquardt, Conjugate-Gradient and Resilient Backpropagation algorithms. LM tends to be faster for small data sets and RPROP is better for huge data sets.
For important work it may be best to heed the words of Confuscious: "Try all. Choose best!"
Hope this helps.
Greg
0 Kommentare
Weitere Antworten (3)
Greg Heath
am 27 Mär. 2012
1. Either the author lied or you missinterpreted what was written.
2. Terminology: The term "A regression of 0.9" can be interpreted as a " coefficient of determination " of 0.9. For linear dependence it is the square of the correlation coefficient. See Wikipedia.
3. Variables can have a significant nonlinear correlation when the linear correlation coefficient is insignificant. Therefore, linear correlation insignificance is not a sufficient reason for removing an input variable.
4. Sometimes I have included terms like (xi-meanxi)^2 (i = 1,2,...)in a linear (in coefficients) regression to estimate nonlinear variable significance. See the function STEPWISEFIT.
5. Unless you have a ridiculous number of input variables, use all input variables for design. When the design is complete you can test each input for significance by monitoring the decrease in performance when the corresponding input matrix row is randomized by shuffling.
Hope this helps.
Greg
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!