Я довольно новичок в тензорном потоке, и для того, чтобы научиться использовать его, я сейчас пытаюсь реализовать очень простой DNNRegressor, который предсказывает движение объекта в 2D, но я не могу сработать с функцией предсказания.
для этой цели у меня есть некоторые входные данные - координаты x и y объекта за несколько предыдущих временных шагов.Я хочу, чтобы на выходе была получена разумная оценка местоположения объекта, если он продолжает двигаться в том же направлении с той же скоростью.
Я использую версию tenorflow 1.8.0
Мой регрессоропределяется следующим образом:
CSV_COLUMN_NAMES = ['X_0', 'X_1', 'X_2', 'X_3', 'X_4', 'Y_0', 'Y_1', 'Y_2', 'Y_3', 'Y_4', 'Y_5']
my_feature_columns = []
for key in columnNames:
my_feature_columns.append(tf.feature_column.numeric_column(key=key))
regressor = estimator.DNNRegressor(feature_columns=my_feature_columns,
label_dimension=1,
hidden_units=hidden_layers,
model_dir=MODEL_PATH,
dropout=dropout,
config=test_config)
мой ввод, как и в уроке по тензорному потоку на готовых оценках, является диктом со столбцом в качестве ключа.Пример для этого ввода можно увидеть здесь .
regressor.train ( arguments ) и regressor.evaluate ( arguments ), кажется, работаютпросто отлично, но предсказать - нет.
параллельно коду на сайте тензорного потока Я попытался сделать это:
y_pred = regressor.predict(input_fn=eval_input_fn(X_test, labels=None, batch_size=1))
и похоже, что это работает какхорошо.
Проблема, с которой я сейчас сталкиваюсь, заключается в том, что я ничего не могу получить от этого y_pred
объекта.
, когда я ввожу print(y_pred)
, я получаю <generator object Estimator.predict at 0x7fd9e8899888>
, что подсказываетдля меня это должно быть в состоянии перебрать его, но
for elem in y_pred:
print(elem)
приводит к TypeError: unsupported callable
Опять же, я новичок в этом, и я извиняюсь, если ответ очевиден, ноБуду очень признателен, если кто-нибудь скажет мне, что я здесь делаю не так.