Я изо всех сил пытаюсь передать данные в tf.esitimator.DNNClassifier
после перезагрузки через tf.contrib.predictor.from_saved_model
.Я был бы очень признателен за вашу помощь.
Я нашел это и это ссылки, но я получаю ошибку.Ниже моя реализация:
Сохранение модели:
feature_spec = tf.feature_column.make_parse_example_spec(feat_cols)
export_fn = tf.estimator.export.build_parsing_serving_input_receiver_fn(feature_spec)
tuned_model.export_savedmodel('./model_dir/saved_models/', export_fn)
Это успешно сохраняет модель со следующей информацией:
INFO:тензор потока: вызов model_fn.ИНФОРМАЦИЯ: tenorflow: Закончен вызов model_fn.ИНФОРМАЦИЯ: tennflow: подписи включены в экспорт для Classify: ['serve_default', 'классификация'] ИНФО: tenorflow: подписи включены в экспорт для регрессии: ['regression'] ИНФО: тензор: подписи включены в экспорт для Predict: ['предсказание'] ИНФОРМАЦИЯ: tennflow: подписи, включенные в экспорт для Train: нет. ИНФО: tenorflow: подписи, включенные в экспорт для Eval: нет. ИНФО: тензор: восстановление параметров из /nimble/kdalal/model_dir/model.ckpt-28917 ИНФО: tenorflow: активыдобавлено в график.ИНФОРМАЦИЯ: tenorflow: нет ресурсов для записи.ИНФОРМАЦИЯ: тензор потока: SavedModel записывается по адресу: ./model_dir/saved_models/temp-b'1556819228'/saved_model.pb
Перезагрузка для прогнозов:
predict_prod = tf.contrib.predictor.from_saved_model('./model_dir/saved_models/1556819228')
predict_prod(dict(X_test))
Я получаю следующую ошибку:
ValueError: Получены непредвиденные ключи в input_dict: {'DOW', 'JOB_FUNCTION', 'ACC_SIZE', 'answers_20D', 'MatchType', 'CONTACT_STATE',Ожидается 'СЕЗОНЫ', 'Позвонил_20D', 'st_cb_ans_20D', 'JOB_ROLE', 'st_cb_called_20D', 'CALL_BLOCKS'}: {'inputs}}
My X_test
- это кадр данных, который япытаюсь получить прогнозы для.
[РЕДАКТИРОВАНИЕ]:
Мой ввод dict
выглядит следующим образом:
{'JOB_ROLE': 714859 Manager-Level
714860 Manager-Level
714861 Manager-Level
714862 Manager-Level
714863 Director-Level
Name: JOB_ROLE, dtype: object,
'JOB_FUNCTION': 714859 Information Technology
714860 Information Technology
714861 Information Technology
714862 Information Technology
714863 Information Technology
Name: JOB_FUNCTION, dtype: object,
'MatchType': 714859 Work Phone
714860 Work Phone
714861 Work Phone
714862 Work Phone
714863 Account Main Phone
Name: MatchType, dtype: object,
'CALL_BLOCKS': 714859 17_18
714860 17_18
714861 17_18
714862 17_18
714863 17_18
Name: CALL_BLOCKS, dtype: object,
'ACC_SIZE': 714859 StartUps
714860 StartUps
714861 Small
714862 StartUps
714863 Small
Name: ACC_SIZE, dtype: object,
'CONTACT_STATE': 714859 WA
714860 CA
714861 CA
714862 CA
714863 CA
Name: CONTACT_STATE, dtype: object,
'SEASONS': 714859 Spring
714860 Spring
714861 Spring
714862 Spring
714863 Spring
Name: SEASONS, dtype: object,
'DOW': 714859 Monday
714860 Monday
714861 Monday
714862 Monday
714863 Monday
Name: DOW, dtype: object,
'called_20D': 714859 0.038760
714860 0.077519
714861 0.217054
714862 0.046512
714863 0.038760
Name: called_20D, dtype: float64,
'answered_20D': 714859 0.000000
714860 0.086957
714861 0.043478
714862 0.000000
714863 0.130435
Name: answered_20D, dtype: float64,
'st_cb_called_20D': 714859 0.050233
714860 0.282496
714861 0.282496
714862 0.282496
714863 0.282496
Name: st_cb_called_20D, dtype: float64,
'st_cb_ans_20D': 714859 0.059761
714860 0.314741
714861 0.314741
714862 0.314741
714863 0.314741
Name: st_cb_ans_20D, dtype: float64}
IЯ новичок с tf
, и я не знаю, как передать фреймы данных в модель, чтобы я мог вызвать метод predcit
и получить прогнозы.
Кроме того, мне следует преобразовать мои входные данные в некоторые другие dtype
?