keras:导入 load_model 耗时太长
keras: importing load_model takes too long
我正在尝试将一个 Python 项目放到闪存驱动器上。我正在使用 WinPython 来完成此操作。我发现的一件事是 Python 程序中的某些操作要慢得多。这是有道理的,因为它在 USB 上。这一点特别明显的地方是在导入语句期间。大多数情况下,我能够更有选择性地导入东西,而且大部分情况下都很好。
但是,我在我的项目中使用了 keras 模型。为此,我使用 keras.models
模块中的 load_model
加载我的 hdf5 文件。当我 运行 在 WinPython 上导入它需要十多分钟才能导入!我怎样才能减少这个导入时间?
您可以将 hdf5 模型转换为 json_file 并将权重保存在 h5 文件中。在函数导入不那么慢的 "normal" 机器上执行此操作。然后,在闪存驱动器上的 WinPython 中,使用 model_from_json
和 load_weights
函数可以加载模型。导入时间要快得多。它是这样工作的:
此脚本会将 hdf5 文件转换为 json 文件并保存模型的权重。 运行 这在 python 安装在可以处理导入的机器上。
from keras.models import load_model
model = load_model("my_model.hdf5")
model_json = model.to_json()
with open("my_json_model.json", 'w') as json_file:
json_file.write(model_json)
model.save_weights("weight_model.h5")
然后,要在 WinPython 中加载模型,请执行以下操作:
from keras.models import model_from_json
with open("my_json_model.json", 'r') as json_file:
loaded_json = json_file.read()
emotion_classifier = model_from_json(loaded_json)
emotion_classifier.load_weights("weight_model.h5")
我发现这个导入在 WinPython 中要快得多。
您可以了解有关以不同方式加载 keras 模型的更多信息here.
我正在尝试将一个 Python 项目放到闪存驱动器上。我正在使用 WinPython 来完成此操作。我发现的一件事是 Python 程序中的某些操作要慢得多。这是有道理的,因为它在 USB 上。这一点特别明显的地方是在导入语句期间。大多数情况下,我能够更有选择性地导入东西,而且大部分情况下都很好。
但是,我在我的项目中使用了 keras 模型。为此,我使用 keras.models
模块中的 load_model
加载我的 hdf5 文件。当我 运行 在 WinPython 上导入它需要十多分钟才能导入!我怎样才能减少这个导入时间?
您可以将 hdf5 模型转换为 json_file 并将权重保存在 h5 文件中。在函数导入不那么慢的 "normal" 机器上执行此操作。然后,在闪存驱动器上的 WinPython 中,使用 model_from_json
和 load_weights
函数可以加载模型。导入时间要快得多。它是这样工作的:
此脚本会将 hdf5 文件转换为 json 文件并保存模型的权重。 运行 这在 python 安装在可以处理导入的机器上。
from keras.models import load_model
model = load_model("my_model.hdf5")
model_json = model.to_json()
with open("my_json_model.json", 'w') as json_file:
json_file.write(model_json)
model.save_weights("weight_model.h5")
然后,要在 WinPython 中加载模型,请执行以下操作:
from keras.models import model_from_json
with open("my_json_model.json", 'r') as json_file:
loaded_json = json_file.read()
emotion_classifier = model_from_json(loaded_json)
emotion_classifier.load_weights("weight_model.h5")
我发现这个导入在 WinPython 中要快得多。 您可以了解有关以不同方式加载 keras 模型的更多信息here.