Finding best neural network structure using optimization algorithms and cross-validation


I’m using optimization algorithm to find best structure+inputs of a ‘patternnet’ neural network in MATLAB R2014a using 5-fold cross validation. Where should i initialize weights of my neural network?

*Position_1(for weight initialization)* for i=1:num_of_loops
*Position_2(for weight initialization)*
- repeating cross validation
for i=1:num_of_kfolds
*Position_3(for weight initialization)*
- Cross validation loop

I’m repeating 5-fold cross validation (because random selection of cross validation) to have more reliable outputs (average of neural network outputs). Which part is better for weight initialization (Position_1,Position_2 or Position_3) and why?

ANSWER provide latest MatLab Homework Help,MatLab Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.

To help understanding, I will assume Nval = Ntst = 0. Search for the nonzero examples in the NEWSGROUP and ANSWERS.

To design a typical I-H-O net with Ntrn training examples, try to not let the number of unknown weights

Nw = (I+1)*H+(H+1)*O

exceed the number of training equations

Ntrneq = Ntrn*O

This will occur as long as H <= Hub where Hub is the upperbound

Hub = -1+ceil( (Ntrneq-O) / (I+O+1) )

Based on Ntrneq and Hub I decide on a set of numH candidate values for H

0 <= Hmin:dH:Hmax <= Hmax numH = numel(Hmin:dH:Hmax)

and the number of weight initializations for each value of H, e.g.,


Simple! That is me, a simple person. I am passionate about knowledge and reading. That’s why I have decided to write and share a bit of my life and thoughts to.