Creating vector for parametrizing ANN
1 view (last 30 days)
Show older comments
Alessio Pricci
on 12 Aug 2023
Answered: the cyclist
on 12 Aug 2023
Dear all,
I am struggling with the following problem; I am trying to parametrize an Artifical Neural Network (ANN) by giving vectors containing the number of neurons for each hidden layer. The idea is to collect all prossible ANN structures in a single matrix.
The idea is to obtain output as in the following example:
Number of hidden layers = 4 (as an example)
Possible architectures -> [2 0 0 0; 2 2 0 0; 2 2 2 0; 2 2 2 2; 4 0 0 0; 4 2 0 0; etc] (with 4,8, 16, 32 and all intermediate combinations)
Is there a simple way to generate such a matrix?
Thanks in advance.
0 Comments
Accepted Answer
the cyclist
on 12 Aug 2023
I am not exactly certain about the final result you want, but here is a smaller example (so the output is easier to inspect), with the maximum power of 2 you want, and the number of layers (as parameters you can adjust).
Take a look at see if it gives the result you expect. If not, perhaps you can see how to edit it, or tell us what result you would actually want in this case.
MAX_POW = 2; % 2^MAX_POW neurons per layer
NUM_LAYERS = 3; % Number of layers
% Generate all the combinations
n = 2.^(fullfact(repmat(MAX_POW+1,1,NUM_LAYERS)) - 1);
% Replace the 1's with 0's
n(n==1) = 0
0 Comments
More Answers (0)
See Also
Categories
Find more on Deep Learning Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!