Я пытаюсь построить нейронную сеть в Matlab, которая выпадает на скрытом слое, используя встроенный dropoutLayer
. Итак, код выглядит следующим образом:
layers = [
fullyConnectedLayer(hidden_layer_nodes(1))
dropoutLayer(0.5)
fullyConnectedLayer(hidden_layer_nodes(2))
dropoutLayer(0.5)
fullyConnectedLayer(hidden_layer_nodes(3))
dropoutLayer(0.5)
fullyConnectedLayer(output_layer_size)
regressionLayer
];
И я получаю следующую ошибку:
Error in main (line 54)
net = trainNetwork(X,y,layers,options);
Caused by:
Network: Missing input layer. The network must have one input layer.
Layer 1: Missing input. Each layer input must be connected to the output of another layer.
, что я понимаю, потому что я не дал входной слой в массиве слоев. Но я не уверен, какой InputLayer я должен дать, так как Input не является ни изображением, ни последовательностью, а список доступных входных слоев:
1) imageInputLayer
2) image3dInputLayer
3) sequenceInputLayer
4) roiInputLayer
взято из официальных документов Matlab.
Пожалуйста, дайте мне знать, какую альтернативу я могу использовать, кроме определения собственного слоя.