使用tensorflow猜数字
Guess number using tensorflow
我正在学习张量流。我想根据数字做一些简单的 "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
我想从 .predict()
接收基于 val1 和 val2 的函数结果,如上面的代码:4+4=8
和 6+6=12
你的猜测解决了一个回归问题,而不是分类(this question解释了差异)。试试这个:
classifier = tf.estimator.DNNRegressor(
feature_columns=my_feature_columns,
hidden_units=[10,10],
)
我正在学习张量流。我想根据数字做一些简单的 "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
我想从 .predict()
接收基于 val1 和 val2 的函数结果,如上面的代码:4+4=8
和 6+6=12
你的猜测解决了一个回归问题,而不是分类(this question解释了差异)。试试这个:
classifier = tf.estimator.DNNRegressor(
feature_columns=my_feature_columns,
hidden_units=[10,10],
)