【发布时间】:2020-09-03 10:39:08
【问题描述】:
我有一个 Keras 模型,我想将其标准化值保存在 model 对象本身中以便于移植。
我正在使用 sklearn 的StandardScaler() 来规范化我的数据,所以我只想将mean_ 和var_ 属性从scaler 保存到model,保存模型,当我重新加载模型可以访问这些属性。
目前,当我重新加载模型时,我添加的属性不存在。这样做的正确方法是什么?
代码:
# Normalize data
scaler = StandardScaler()
scaler.fit(X_train)
...
# Create model
model = Sequential(...)
# Compile and train
...
# Save model with normalization mean and var
model.normalization_mean = scaler.mean_
model.normalization_var = scaler.var_
keras.models.save_model(model = model,
filepath = ...)
# Reload model
model = keras.models.load_model(filepath = ...)
hasattr(model, 'normalization_mean') # False
hasattr(model, 'normalization_var') # False
【问题讨论】:
标签: python tensorflow machine-learning keras deep-learning