Greetings everyone. I want to use scalingLayer to shift my actor network's outputs to desired range. I'm using this reference and the code below : numObs = 10; numAct = 5; actorLayerSizes = [400 300]; sc = reshape([10, 10, 20, 15, 15], [1 1 5]); bias = reshape([0, 0, 0, 0, 0], [1 1 5]); actorNetwork = [ imageInputLayer([numObs 1 1],'Normalization','none','Name','observation') fullyConnectedLayer(actorLayerSizes(1), 'Name', 'ActorFC1') reluLayer('Name', 'ActorRelu1') fullyConnectedLayer(actorLayerSizes(2), 'Name', 'ActorFC2') reluLayer('Name', 'ActorRelu2') fullyConnectedLayer(numAct, 'Name', 'ActorFC3') tanhLayer('Name','ActorTanh1'), ... scalingLayer('Scale',sc, 'Bias',bias) ]; I'm getting the error below: Error using vertcat Dimensions of arrays being concatenated are not consistent. Can anyone help me with this?
Neeta Dsouza answered .
2025-11-20
actorNetwork = [
imageInputLayer([numObs 1 1],'Normalization','none','Name','observation')
fullyConnectedLayer(actorLayerSizes(1), 'Name', 'ActorFC1')
reluLayer('Name', 'ActorRelu1')
fullyConnectedLayer(actorLayerSizes(2), 'Name', 'ActorFC2')
reluLayer('Name', 'ActorRelu2')
fullyConnectedLayer(numAct, 'Name', 'ActorFC3')
tanhLayer('Name','ActorTanh1')
scalingLayer('Scale',sc, 'Bias',bias)
];