Optimization using GA tool from ANN output

3 Ansichten (letzte 30 Tage)
Raja
Raja am 26 Jul. 2013
Kommentiert: Terry Chen am 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?

Akzeptierte Antwort

Greg Heath
Greg Heath am 1 Aug. 2013
Bearbeitet: Greg Heath am 1 Aug. 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

Weitere Antworten (1)

Alan Weiss
Alan Weiss am 26 Jul. 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 Kommentar
Terry Chen
Terry Chen am 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

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by