How to save SeriesNetwork variables to file for quick loading next time?

I am using 'importKerasNetwork' to import my keras models for next step in MATLAB. However, I have tens of thousands of small models.
Can I have an approach to save the loaded variables (SeriesNetwork objects) to a file like .mat, so that I could load those models faster?
I have tried to save the workspace directly. But MATLAB 'save' seems only support variables in 'double' style.
Any ideas? Thank you for any help!

1 Comment

Absolutely I can import them every time when I need. But it takes me about 20 mins. I just wondering whether there is a faster way or not.

Sign in to comment.

 Accepted Answer

yes,sir,may be use save to get mat file for target variable,such as
warning off all
modelfile = 'digitsDAGnet.h5';
net = importKerasNetwork(modelfile)
net =
DAGNetwork with properties: Layers: [13×1 nnet.cnn.layer.Layer] Connections: [13×2 table] InputNames: {'input_1'} OutputNames: {'ClassificationLayer_activation_1'}
save('net_for_load.mat', 'net')
d2 = load('net_for_load.mat');
d2.net
ans =
DAGNetwork with properties: Layers: [13×1 nnet.cnn.layer.Layer] Connections: [13×2 table] InputNames: {'input_1'} OutputNames: {'ClassificationLayer_activation_1'}

1 Comment

Thank you very much. I used right click to save the workspace but failed before. The command line 'save('xxx.mat', variable name)' works.

Sign in to comment.

More Answers (0)

Products

Release

R2021a

Asked:

on 21 Mar 2022

Commented:

on 22 Mar 2022

Community Treasure Hunt

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

Start Hunting!