我对编码有点新,对Tensorflow来说很新,但是我已经参加了在线机器学习课程,所以我有一些背景和一个例子。
我正在使用Contrib.learn模块(?),它为用户提供了Tensorflow的scikit-learn风格体验。无论如何,我的数据集是20列的float64值,只有2000多行。每列都有名称。我用,
设置了我的feature_columnsfeature_columns = []
for i in X_train.columns:
feature_columns.append(tf.contrib.layers.real_valued_column(i, dtype=type(X_train[i][0])))
然后我用
实例化我的深度神经网络模型classifier = learn.DNNClassifier(hidden_units=[10,10,10],
feature_columns=feature_columns,
n_classes=2)
到目前为止,这么好。然后我尝试使用我的模型,
classifier.fit(X_train, y_train, steps=100, batch_size=32)
我得到一个非常深刻的引用,最终结束,
KeyError: 'IQR'
这是我的第6个数据列的名称。
没有很多人使用Contrib.learn的例子,而且我猜测使用它的少数人并不像我一样无能为力。如果有人碰巧知道它可能指的是什么,我真的可以使用帮助,因为我基本上没有想法。如果您需要我的更多信息,或者您希望我粘贴整个Traceback,请告诉我。
谢谢你的时间!
答案 0 :(得分:0)
我最终放弃了Contrib.learn并且这样做了#34;艰难的方式"使用Tensorflow的核心功能构建多层感知器。
很酷的东西!
答案 1 :(得分:0)
功能会在查找功能IQR
(在feature_columns
中定义)时抛出。
要使用predict
,您需要执行以下操作:
predicted_values = list(m.predict(input_fn=lambda: input_fn(df_test), as_iterable=False))
input_fn
是输入函数,df_test
是Panda的DataFrame,具有所需的功能
希望这有帮助。