Optimization using GA tool from ANN output

3 vues (au cours des 30 derniers jours)
Raja
Raja le 26 Juil 2013
Commenté : Terry Chen le 8 Nov 2020
Hi all, I am aiming at optimizing a problems which has 4 inputs and one output. I did ANN with 3input neurons, 9 hidden and one ouput neurons. The transfer functions are tansig for hidden and purelin for output layers respectively. I got the weights and biases as follows from ANN: w1 = [-3.8 -3.16 -3.88 -3.31;0.93 -2.24 -0.904 0.086;7.64 2.06 -10 4.845; -3.9 2.483 2.823 2.461;-6 -3.84 -6.821 0.497;-6.7 8.261 4.412 -7.66;-0.1 -2.93 0.48 -5.81;-1.7 -5.62 -4.59 5.304;9.18 -0.14 -3.943 -4.597] w2 = [-5.27;-3.93;-0.62;-0.65;2.056;0.671;-1.56;0.252;1.353] b1 = [-0.5;-2.15;-0.045;3.132;3.137;-5.93;-1.97;-4.24;2.036]' b2 = 16
and the follwoing equation is the one which I have to optimize by ga tool: z = (w2*((2/(1+(exp(-2*(((w1*x')+b1))))))-1))+b2;
lower bounds: [-1 -1 -1 -1] and upper bounds [1 1 1 1]
when I run the ga tool I get the output like this: Optimization running. Error running optimization. Your fitness function must return a scalar value.
can anyone help?

Réponse acceptée

Greg Heath
Greg Heath le 1 Août 2013
Modifié(e) : Greg Heath le 1 Août 2013
1. Although the hidden and output layers contain neurons (tansig & purelin), the input layer nodes are fan-in units, NOT neurons.
2. You said 3 inputs instead of 4
3. Cutting and pasting your assignment statements yields
whos
Name Size Bytes Class
b1 1x9 72 double
b2 1x1 8 double
w1 9x4 288 double
w2 9x1 72 double
if size(x) = [ 4 N ] and size(t) = [ 1 N ], the correct dimensions should be
[ 9 1 ] = size(b1)
[ 1 9 ] = size(w2)
4. Then the output and error 1XN vectors are
z = b + w2 * tansig( repmat( b1, 1, N ) + w1 * x) ;
e = t - z;
5. The optimization function is the scalar mean-squared-error
MSE = mse(t-z) = mean( (t-z).^2 )
Hope this help
Thank you for formally accepting my answer
Greg

Plus de réponses (1)

Alan Weiss
Alan Weiss le 26 Juil 2013
I don't know anything about neural networks, but I think I can tell you how to diagnose this problem: give an input, say x0 = rand(4,1), and see what your fitness function returns
fun(x0)
If I am correct, it will return a vector or matrix, not a scalar.
Optimization functions generally require scalar output from the fitness function.
Alan Weiss
MATLAB mathematical toolbox documentation
  1 commentaire
Terry Chen
Terry Chen le 8 Nov 2020
Hi,
From above Raja's question and other discuss , can we optimize by ga tool: z = (w2*((2/(1+(exp(-2*(((w1*x')+b1))))))-1))+b2;lower bounds: [-1 -1 -1 -1] and upper bounds [1 1 1 1] ?
If possible , How to optimize it?Have anyone explain more ,Thanks
Terry

Connectez-vous pour commenter.

Catégories

En savoir plus sur Deep Learning Toolbox dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by