我对AI和Tensorflow完全是个新手,所以如果这个问题很傻请原谅。我已经使用基于这个教程的脚本训练了一个Tensorflow网络:
https://www.tensorflow.org/versions/r0.10/tutorials/wide_and_deep/index.html
我认为训练是成功的。现在我想运行这个方法来对单个输入进行预测:
tf.contrib.learn.DNNClassifier.predict_proba(x=x)
但我找不到任何关于如何构建“x”参数的文档…我尝试了:
x = {k: tf.SparseTensor(indices=[[0, 0]], values=[d_data[k]], shape=[1, 1]) for k in COLUMNS}
其中:d_data 是一个包含大约150个键值对的字典。COLUMNS 是一个包含所需所有键的列表。这个相同的设置曾用于训练网络。
但我得到了以下错误:
AttributeError: 'dict' object has no attribute 'dtype'
所以… x 不应该是一个“dict”… 那么它应该是什么呢?谁能给我一些指导?
非常感谢。
回答:
BaseEstimator类有更好的文档。
x: 形状为 [n_samples, n_features...] 的矩阵。可以是返回特征数组的迭代器。用于拟合模型的训练输入样本。如果设置了,`input_fn` 必须为 `None`。
我会着手修复这里的文档。感谢你指出来。