我正在学习张量流。我想做一些简单的" guesser"基于数字。我有以下csv:
val1;val2;result
1;1;2
1;2;3
2;1;3
2;2;4
2;3;5
3;2;5
3;3;6
公式只是添加两个数字(例如1 + 1 = 2)。我试过这个:
train_x, train_y = load_data()
my_feature_columns = []
for key in train_x.keys():
my_feature_columns.append(tf.feature_column.numeric_column(key=key))
classifier = tf.estimator.DNNClassifier(
feature_columns=my_feature_columns,
hidden_units=[10,10],
n_classes=3
)
classifier.train(input_fn=lambda: train_input_fn(train_x, train_y, 100), steps=1000)
classifier.evaluate(input_fn=lambda: train_input_fn(train_x, train_y, 100), steps=1000)
expected = [8, 12]
predict_x = {
'val1': [4, 6],
'val2': [4, 6],
}
predictions = classifier.predict(predict_x)
以上代码不起作用。我收到了错误:
Label IDs must < n_classes
我希望收到基于val1和val2的.predict()
函数结果,如上面的代码:4+4=8
和6+6=12
答案 0 :(得分:1)
你的猜测器解决了回归问题,而不是分类(this question解释了差异)。试试这个:
classifier = tf.estimator.DNNRegressor(
feature_columns=my_feature_columns,
hidden_units=[10,10],
)