error while running graph=layerGraph(net)

graph = layerGraph(net);
Error using layerGraph
lgraph = layerGraph(net);
Invalid argument at position 1. Input must be an array of layers, a SeriesNetwork, a DAGNetwork, or a dlnetwork.

2 Comments

So what's the question? Presumably your 'net' input is none of the the legal input types listed in the error message.
net = googlenet('Weights','none');
%lys = net.Layers;
%lys(end-3:end)
numClasses = numel(categories(imdsTrain.Labels));
lgraph = layerGraph(net);
after that it show
Error using layerGraph
lgraph= layerGraph(net);
Invalid argument at position 1. Input must be an array of layers, a SeriesNetwork, a DAGNetwork, or a dlnetwork.

Sign in to comment.

Answers (1)

Like I said, your 'net' is not one fo the types listed in the error message:
net = googlenet('Weights','none');
net =
LayerGraph with properties:
Layers: [144×1 nnet.cnn.layer.Layer]
Connections: [170×2 table]
InputNames: {'data'}
OutputNames: {'output'}

4 Comments

so how should i solve this?
By now, R2023a, googlenet() returns DAGNetwork and the R2023a layerGraph() is happy with it.
In R2020b, googlenet() is documented as returning DAGNetwork and the error message implies layerGraph in that version should accept it.
thanks a lot!
Matt J
Matt J on 14 May 2023
Edited: Matt J on 14 May 2023
Why is a solution even required? You can see googlenet() is giving you a LayerGraph direcly, without the need for further manipulation.

Sign in to comment.

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Products

Release

R2020b

Asked:

Tan
on 14 May 2023

Edited:

on 14 May 2023

Community Treasure Hunt

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

Start Hunting!