Как tenorflow tf.contrib.learn.SVM перезагрузить обученную модель и использовать прогнозирование для классификации новых данных

Обучающая свм-модель с тензорным потоком tf.contrib.learn.SVM и сохранение модели; коды

feature_columns = [tf.contrib.layers.real_valued_column(feat) for feat in self.feature_columns]
model_dir = os.path.join(define.root, 'src', 'static_data', 'svm_model_dir')
model = svm.SVM(example_id_column='example_id',
                feature_columns=feature_columns,
                 model_dir=model_dir,
                            config=tf.contrib.learn.RunConfig(save_checkpoints_secs=10))
model.fit(input_fn=lambda: self.input_fun(self.df_train), steps=10000)
results = model.evaluate(input_fn=lambda: self.input_fun(self.df_test), steps=5, metrics=validation_metrics)
for key in sorted(results):
    print('% s: % s' % (key, results[key]))

Как перезагрузить обученную модель и использовать прогноз для классификации новых данных?

1 ответ

Решение

Когда тренируешься

Ты звонишь svm.SVM(..., model_dir) а затем позвоните fit() а также evaluate() метод.

При тестировании

Ты звонишь svm.SVM(..., model_dir) а потом можете позвонить predict() методы. Ваша модель найдет обученную модель в model_dir и загрузит обученные модельные параметры.

Ссылка

Выпуск № 3340 ТФ

Другие вопросы по тегам