【问题标题】:Making Prediction with tensorflow's estimator.DNNRegressor使用 tensorflow 的 estimator.DNNRegressor 进行预测
【发布时间】:2018-06-08 01:45:14
【问题描述】:

我对 tensorflow 很陌生,为了学习使用它,我目前正在尝试实现一个非常简单的 DNNRegressor,它可以预测物体在 2D 中的移动,但我似乎无法使用 predict 函数。

为此,我有一些输入数据 - 在许多先前的时间步长中对象的 x 和 y 坐标。如果对象继续以相同的速度沿相同方向移动,我希望输出能够合理估计对象的位置。

我使用的是 tensorflow 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)

我的输入,就像 tensorflow 教程中关于预制估计器的输入一样,是一个以列为键的字典。 可以看到此输入的示例here

regressor.train(arguments) 和 regressor.evaluate(arguments) 似乎工作得很好,但 predict 不行。

tensorflow site上的代码平行我尝试这样做:

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)

结果为@​​987654329@

再次,我对此很陌生,如果答案很明显,我很抱歉,但如果有人能告诉我我在这里做错了什么,我将不胜感激。

【问题讨论】:

    标签: python tensorflow tensorflow-estimator


    【解决方案1】:

    input_fnregressor.predict 应该是一个函数。见definition

    input_fn:构造特征的函数。

    您需要将代码更改为:

    y_pred = regressor.predict(input_fn=eval_input_fn)
    

    【讨论】:

    • 您对这个问题是正确的——事实上,我编写这个 input_fn 的方式被定义为我的 eval_input_fn 的输出,而不是函数本身。我将代码更改为y_pred = regressor.predict(input_fn=lambda :eval_input_fn(X_test, labels=None, batch_size=1))
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-09
    • 2016-02-16
    • 1970-01-01
    • 1970-01-01
    • 2017-07-16
    • 2017-09-14
    相关资源
    最近更新 更多