我正在尝试将Python项目放在闪存驱动器上。我正在使用WinPython完成此任务。我发现的一件事是Python程序中的某些操作要慢得多。这是有道理的,因为它在USB上。在导入语句期间,这一点特别明显。通常,我能够有选择地导入东西,并且大部分情况下东西还不错。
但是,我在项目中使用的是keras模型。为此,我要从load_model
模块中使用keras.models
加载我的hdf5文件。当我在WinPython上运行此程序时,需要十多分钟才能导入!如何减少此导入时间?
答案 0 :(得分:0)
您可以将hdf5模型转换为json_file并将权重保存在h5文件中。在功能导入不那么缓慢的“普通”计算机上执行此操作。然后,在FlashDrive上的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中此导入速度更快。 您可以了解有关以不同方式here.
加载keras模型的更多信息