Я создал конвейерную модель, смешивающую scikit Learn с предварительной обработкой и keras.
scaler = StandardScaler()
clf = KerasRegressor(build_fn=build_model,epochs=1000,validation_split=0.2, batch_size=100, callbacks=[print_dot,plot_losses], verbose=1)))
pipeline = Pipeline([
('preprocess',scaler),
('clf',clf)
])
import time
start = time.time()
pipeline.fit(X_train,y_train)
end = time.time()
print(end-start)
Этот код работает, и я также могу вызвать метод конвейерного преобразования
predictions = pipeline.predict(X_test).flatten()
Проблема заключается в том, что мне нужно сохранить Pipeline как модель HD5, чтобы во время выполнения модели можно было передавать необработанные значения -
Возможно ли это
если нет, то какой метод размещения этого конвейера?
Таким образом, приведенный ниже вопрос решает только проблему сохранения только модели без конвейера предварительной обработки -
Я хочу также сохранить конвейер предварительной обработки -
Как сохранить модель Scikit-Learn-Keras в файле постоянства (pickle / hd5 / json / yaml)
@ danyfang помог найти этот вопрос
как сохранить дисциплину scikit-learn с регрессором keras внутри на диск?
Проблема в том, что конвейер хранится в виде файла .pkl отдельно. Так что нужно посмотреть, как pk1 преобразуется в pmml