Creating vector for parametrizing ANN

4 visualizaciones (últimos 30 días)
Alessio Pricci
Alessio Pricci el 12 de Ag. de 2023
Respondida: the cyclist el 12 de Ag. de 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.

Respuesta aceptada

the cyclist
the cyclist el 12 de Ag. de 2023
You should be able to use the fullfact function to do this.
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
n = 27×3
0 0 0 2 0 0 4 0 0 0 2 0 2 2 0 4 2 0 0 4 0 2 4 0 4 4 0 0 0 2

Más respuestas (0)

Categorías

Más información sobre Deep Learning Toolbox en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by