如何在Python桌面应用程序中加载Keras模型而不导入Keras?

问题描述 投票:0回答:1

我有一个经过训练的 Keras 模型,保存为

model.h5
,我通常会使用
keras.models.load_model("model.h5")
加载该模型。我目前正在开发一个带有 GUI 的 Python 桌面应用程序,需要将其打包为独立的
.exe
文件。

问题是导入 keras.models 显着增加了

.exe
文件的大小,超出了我的大小限制。我正在寻找一种加载和运行
model.h5
文件的方法,而无需在最终包中包含整个 Keras 库。

问题:

有没有办法在不导入

.h5
模块的情况下加载
keras.models
模型文件? 或者,是否有一种工具或方法可以在打包应用程序时选择性地仅包含 Keras 的必要部分,而不是捆绑整个库?

环境:

Python版本:3.11.7

Keras 和 TensorFlow 版本:Keras 2.15.0、TensorFlow 2.15

打包工具:PyInstaller

任何建议或解决方案将不胜感激!

python tensorflow keras deep-learning pyinstaller
1个回答
0
投票

简短的回答是否定的,Keras 没有“仅推理的精简版库”。你要么需要:

  • 一个完整的东西,
  • 将库自己雕刻成模型所需的最小子集,
  • 将模型转换为其他内容,例如您可以使用纯 TensorFlow,因为 Keras 在下面使用它
  • 将模型部署到单独的服务器,然后使用 .exe 启动所述服务器并与其通信
© www.soinside.com 2019 - 2024. All rights reserved.