首页 > 解决方案 > TensorFlow:预测超出线性回归模型的评估集

问题描述

我一直在做基本的线性回归 TensorFlow 教程:https ://www.tensorflow.org/tutorials/estimator/linear 我已经到了最后,而我已经创建了一个评估集输入函数和一个特征列并预测了评估集的概率。但是,我不明白的一件事是,机器学习应该使用训练集进行训练,然后使用特征预测标签,从而在某种意义上进行推断。但是,我通过我的评估功能为它提供了标签和功能:

def make_input_fn(data_df, label_df, num_epochs=10, shuffle=True, batch_size=32):
  def input_function():
    ds = tf.data.Dataset.from_tensor_slices((dict(data_df), label_df))
    if shuffle:
      ds = ds.shuffle(1000)
    ds = ds.batch(batch_size).repeat(num_epochs) 
    return ds
  return input_function
train_input_fn = make_input_fn(dftrain, y_train)
dfeval = pd.read_csv("https://storage.googleapis.com/tf-datasets/titanic/eval.csv")
y_eval = dfeval.pop("survived")
eval_input_fn = make_input_fn(dfeval, y_eval, 1, False)
...
result = list(linear_est.predict(eval_input_fn))

如何为我的模型提供单个输入节点并取回预测的输出标签?例如,我没有得到一个概率,而是得到一个实际值。

标签: pythontensorflowmachine-learninglinear-regression

解决方案


推荐阅读