如何加快keras.models中load_model函数的导入速度?
缩短
load_model导入耗时的解决方案 先看你的导入耗时数据:
import argv took: 0.0 sec import pandas as pd took: 0.904778242111206 sec from sklearn.preprocessing import MinMaxScaler took: 1.4912829399108887 sec from keras.models import load_model took: 7.647079229354858 sec
针对load_model导入过慢的问题,可尝试以下方法:
延迟导入:不要在脚本开头就导入
load_model,而是放到实际需要加载模型的函数内部。比如:def load_my_model(): from keras.models import load_model return load_model("my_model.h5")这样只有第一次调用
load_my_model时才会触发导入,不会拖慢脚本启动速度。切换到
tf.keras:如果当前用的是独立Keras库,换成TensorFlow内置的tf.keras试试,导入tf.keras.models.load_model通常会比独立Keras更快,因为TensorFlow的模块加载逻辑经过优化,且很多依赖会共享加载。环境与硬件优化:确保你的系统用的是SSD(机械硬盘读取模块文件速度会慢很多);另外可以尝试用
PYTHONOPTIMIZE=1环境变量启动Python,开启字节码优化,减少模块解析时间。调整版本:尝试切换到不同版本的Keras/TensorFlow,比如某些较新的稳定版本可能修复了导入性能问题,或者旧版本(如Keras 2.3.x)的依赖更少,导入速度更快。
精简依赖加载:如果你的模型只用到特定的层、优化器或损失函数,可以尝试手动导入这些核心组件后再导入
load_model,不过这个方法效果有限,且需要清楚模型的依赖结构。
内容的提问来源于stack exchange,提问作者FLOROID
相关产品推荐
相关产品推荐

