详解Keras3.0 Models API: Whole model saving & loading

Keras_Saving_Load_Abstract.json

1、save方法

Model.save(filepath, overwrite=True, **kwargs)

将模型另存为.keras文件 

参数说明
  • filepath: 保存模型的路径。必须以.keras结尾
  • overwrite:布尔值,表示是否覆盖已存在的文件。默认为 True,即覆盖已存在的文件。
  • save_format:在Keras 3中不赞成使用save_format参数。要使用的格式,作为字符串。此时仅支持“keras”格式
示例
model = keras.Sequential(
    [
        keras.layers.Dense(5, input_shape=(3,)),
        keras.layers.Softmax(),
    ],
)
model.save("./models/model.keras")
1.2、 save_model 方法
keras.saving.save_model(model, filepath, overwrite=True, **kwargs)

将模型另存为.keras文件

参数说明
  • model需要保存的模型对象。
  • filepath保存模型的文件路径。
  • overwrite布尔值,表示是否覆盖已存在的文件。默认为 True,即覆盖已存在的文件。

 

 2、load_model方法

keras.saving.load_model(filepath, custom_objects=None, compile=True, safe_mode=True)

加载通过model.save()保存的模型 

参数说明
  • filepath: 已保存模型的文件路径
  • custom_objects: 字典类型,用于指定自定义层或损失函数等对象的类名和对应的 Python 类。默认为 None,表示使用 Keras 默认的类名和类映射关系
  • compile: 布尔值,表示是否在加载模型后立即编译模型。默认为 True,即自动编译模型。如果设置为 False,则需要手动编译模型
  • safe_mode: 布尔值,表示是否以安全模式加载模型。默认为 True,即启用安全模式。安全模式下,Keras 会检查模型的结构和配置是否与原始模型一致,如果不一致则会抛出异常。如果设置为 False,则禁用安全模式,加载的模型可能与原始模型不一致
示例
#创建一个Sequential模型
model = keras.Sequential([
    keras.layers.Dense(5, input_shape=(3,)),
    keras.layers.Softmax()])

#将创建好的模型保存到文件"model.keras"中
model.save("model.keras")

#从文件中加载保存的模型
loaded_model = keras.saving.load_model("model.keras")

#随机生成一个的输入数据矩阵x,形状为(10, 3)
x = np.random.random((10, 3))

#使用原始模型和加载的模型分别对输入数据进行预测
#使用np.allclose函数比较两个模型的预测结果是否相同
#如果相同,则断言通过,否则会抛出异常
assert np.allclose(model.predict(x), loaded_model.predict(x))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

缘起性空、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值