# Weight and Bias from a Neural Network

43 views (last 30 days)
massimiliano de martino on 6 Apr 2018
Commented: KAE on 9 Oct 2018
Hello to everybody, I'm using Neural Network to solve a problem which can be composed by a different number of input and output, particularly Neural Network used is a 4 Layer NN so composed (First Layer 20 Neurons - Second Layer 15 Neurons -Third Layer 10 Neurons - Fourth Layer 5 Neurons ).I need to know Neural Network weight. Here it's the problem, when i have a small number of input and output,i use the _getwb_ command which allows me to calculate NN weight and bias. Otherwise when input and output number grows up getwb command give me as result this message: '0×1 empty double column vector'. How can i get weight when numeber of input and output (and so number of weight) grows up ?? I apologize for my English which is not perfect.

Brendan Hamm on 6 Apr 2018
I'm not sure why you would get a 0x1 empty double column vector. You may need to post some code to help figure this piece out.
You can also try simply indexing the weights from the network:
IW = net.IW; % Cell containing the Input Weights
b1 = net.b; % Cell containing the biases
LW = net.LW; % Cell containing the layer weights
Note, many elements of the cell will likely be empty (excepting the bias weights), but you will have matrices of the weights in the non-empty cells.

massimiliano de martino on 10 Apr 2018
Thanks for the Answer. I post some code and information to better explain the problem. As input to NN I have done:
-Input Test = input_test{1,1} dimension 4950x1
-OutputTest = output_test{1,1} dimension 4950x1
For each value as input_test, output_test has to give me zero or one, according to input value. As NN I've used feedforwardnet. If i try to type follow command :
-IW = BETAnet1.IW = 1X1 cell array {0x0 double}
-b1 = BETAnet1.b = 1X1 cell array {0x0 double}
-LW = BETAnet1.LW = 1X1 cell array {0x0 double}
-weights = getwb(BETAnet1) = 0x1 empty double column vector
So I am not able to get information about weight value calculated during Training phase by computer. The same configuration and command has been used when i have smaller input dimension, and in this case with mentioned above command I obtain weight value. I'd want to know if the not being able to obtain weight value can be caused by excessive input and output dimension, and how can i solve this problem. Thanks for yout help
##### 2 CommentsShowHide 1 older comment
KAE on 9 Oct 2018