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

2 views (last 30 days)
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
Kun Yang
Kun Yang on 21 Mar 2022
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

yanqi liu
yanqi liu on 22 Mar 2022
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
Kun Yang
Kun Yang on 22 Mar 2022
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

Community Treasure Hunt

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

Start Hunting!