当前位置:网站首页>13. Model saving and loading
13. Model saving and loading
2022-07-08 00:55:00 【booze-J】
article
We save 3.MNIST Data set classification Take the training model in as an example , To demonstrate the saving and loading of the model .
The first way to save and load models
1. Save the way
To save the model, you only need to add after the model training
# Save the model The structure and parameters of the model can be saved at the same time
model.save("model.h5") # HDF5 file ,pip install h5py
This saving method can save the structure and parameters of the model at the same time .
2. Loading mode
Before loading the model, you need to import load_model Method
from keras.models import load_model
Then the loaded code is a simple sentence :
# Load model
model = load_model("../model.h5")
This loading method can load the structure and parameters of the model at the same time .
The second way to save and load models
1. Save the way
Model parameters and model structure are stored separately :
# Save parameters
model.save_weights("my_model_weights.h5")
# Save network structure
json_string = model.to_json()
2. Loading mode
Before loading the model structure , You need to import model_from_json() Method
from keras.models import model_from_json
Load network parameters and network structure respectively :
# Load parameters
model.load_weights("my_model_weights.h5")
# Load model structure
model = model_from_json(json_string)
Model retraining
The code running platform is jupyter-notebook, Code blocks in the article , According to jupyter-notebook Written in the order of division in , Run article code , Glue directly into jupyter-notebook that will do .
In fact, the model can be retrained after loading .
1. Import third-party library
import numpy as np
from keras.datasets import mnist
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers import Dense
from keras.models import load_model
2. Loading data and data preprocessing
# Load data
(x_train,y_train),(x_test,y_test) = mnist.load_data()
# (60000, 28, 28)
print("x_shape:\n",x_train.shape)
# (60000,) Not yet one-hot code You need to operate by yourself later
print("y_shape:\n",y_train.shape)
# (60000, 28, 28) -> (60000,784) reshape() Middle parameter filling -1 Parameter results can be calculated automatically Divide 255.0 To normalize
x_train = x_train.reshape(x_train.shape[0],-1)/255.0
x_test = x_test.reshape(x_test.shape[0],-1)/255.0
# in one hot Format
y_train = np_utils.to_categorical(y_train,num_classes=10)
y_test = np_utils.to_categorical(y_test,num_classes=10)
3. Model retraining
# Load model
model = load_model("../model.h5")
# Evaluation model
loss,accuracy = model.evaluate(x_test,y_test)
print("\ntest loss",loss)
print("accuracy:",accuracy)
Running results :
Compare the first saved model :
It can be found that the accuracy of the retraining model on the test set has been improved .
边栏推荐
- fabulous! How does idea open multiple projects in a single window?
- Cause analysis and solution of too laggy page of [test interview questions]
- Interface test advanced interface script use - apipost (pre / post execution script)
- 手写一个模拟的ReentrantLock
- 3 years of experience, can't you get 20K for the interview and test post? Such a hole?
- 韦东山第三期课程内容概要
- Huawei switch s5735s-l24t4s-qa2 cannot be remotely accessed by telnet
- 【愚公系列】2022年7月 Go教学课程 006-自动推导类型和输入输出
- A brief history of information by James Gleick
- 取消select的默认样式的向下箭头和设置select默认字样
猜你喜欢

Qt不同类之间建立信号槽,并传递参数

FOFA-攻防挑战记录

AI遮天传 ML-回归分析入门

第四期SFO销毁,Starfish OS如何对SFO价值赋能?
![[go record] start go language from scratch -- make an oscilloscope with go language (I) go language foundation](/img/76/b048e100d2c964ac00bc4f64e97e7a.png)
[go record] start go language from scratch -- make an oscilloscope with go language (I) go language foundation

玩轉Sonar

应用实践 | 数仓体系效率全面提升!同程数科基于 Apache Doris 的数据仓库建设

Codeforces Round #804 (Div. 2)(A~D)

51 communicates with the Bluetooth module, and 51 drives the Bluetooth app to light up

C # generics and performance comparison
随机推荐
jemter分布式
ReentrantLock 公平锁源码 第0篇
基于卷积神经网络的恶意软件检测方法
玩轉Sonar
The standby database has been delayed. Check that the MRP is wait_ for_ Log, apply after restarting MRP_ Log but wait again later_ for_ log
Lecture 1: the entry node of the link in the linked list
深潜Kotlin协程(二十二):Flow的处理
【愚公系列】2022年7月 Go教学课程 006-自动推导类型和输入输出
韦东山第二期课程内容概要
《因果性Causality》教程,哥本哈根大学Jonas Peters讲授
NTT template for Tourism
How to learn a new technology (programming language)
Qt添加资源文件,为QAction添加图标,建立信号槽函数并实现
5G NR 系统消息
3 years of experience, can't you get 20K for the interview and test post? Such a hole?
My best game based on wechat applet development
Play sonar
手机上炒股安全么?
5g NR system messages
Jemter distributed