我正在尝试为张量流中的 DNNClassifier 创建一个 input_fn . DNNClassifiertrain 方法如下,

input_fn:一种为训练提供输入数据作为小型游戏的功能 . 有关详细信息,请参阅TensorFlow入门 . 该函数应该构造并返回以下内容之一:'tf.data.Dataset'对象:数据集对象的输出必须是具有如下约束的元组(特征,标签) . 元组(要素,标签):其中要素是Tensor或Tensor的字符串要素名称字典,而标签是Tensor或Tensor的字符串标签字典 . model_fn都使用这两个功能和标签 . 它们应满足输入中对model_fn的期望 .

它说我可以创建一个 input_fn ,只返回 (features, labels) ,其中 features 是一个张量 . 但 numerical_column 需要 key

代码在这里

import tensorflow as tf 
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_DATA/", one_hot=False)

train_x, train_y = mnist.train.images, mnist.train.labels
train_y = train_y.astype(np.int32)

def train_input_fn(features, labels):
    return features, labels

feature_columns = [tf.feature_column.numeric_column("")]

classifier = tf.estimator.DNNClassifier(
    feature_columns=feature_columns,
    hidden_units=[10, 10],
    n_classes=10
)

classifier.train(
    input_fn=lambda:train_input_fn(train_x, train_y),
    steps=1000
)

我收到了一个错误

ValueError: features should be a dictionary of `Tensor`s. Given type: <class 'numpy.ndarray'>