Tensorflow 创建一个张量,其中每个输入可以有多个答案
我有一个问题,输入X可以有多个正确答案Tensorflow 创建一个张量,其中每个输入可以有多个答案,tensorflow,Tensorflow,我有一个问题,输入X可以有多个正确答案 X1 -> Y1 X1 -> Y2 X1 -> Y3 X2 -> Y2 X2 -> Y4 X3 -> Y1 这里X1具有(Y1,Y2,Y3)作为标签,X2具有(Y2,Y4)作为标签 如果我们创建一个MLP来预测 # tf Graph input
X1 -> Y1
X1 -> Y2
X1 -> Y3
X2 -> Y2
X2 -> Y4
X3 -> Y1
这里X1具有(Y1,Y2,Y3)作为标签,X2具有(Y2,Y4)作为标签
如果我们创建一个MLP来预测
# tf Graph input
x = tf.placeholder("float", [None, n_input])
y = tf.placeholder("float", [None, n_classes])
# Construct model
pred = multilayer_perceptron(x, activation_fn, weights, biases, dbg)
# Define loss and optimizer
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(pred, y))
这里,成本函数比较X向量和Y向量的模型预测
我正在检查模型是否能够预测任何输入的任何正确标签。给定X1,如果模型预测(Y1或Y2或Y3),我很好。我该如何解决这个问题呢?我认为拥有多个标签,如
X1->Y1,X1->Y2
,可能会损害您的模型。如果任何正确的标签都可以,那么只需为输入功能使用一个标签:X1->Y1
如果没有太多标签,也可以考虑将它们组合起来:
Z1: Y1, Y2, Y3
Z2: Y2, Y4
然后,输入要素只能有一个标签:
X1-> Z1
X2-> Z2
我认为拥有多个标签,如
X1->Y1,X1->Y2
可能会损害您的型号。如果任何正确的标签都可以,那么只需为输入功能使用一个标签:X1->Y1
如果没有太多标签,也可以考虑将它们组合起来:
Z1: Y1, Y2, Y3
Z2: Y2, Y4
然后,输入要素只能有一个标签:
X1-> Z1
X2-> Z2
计算所有成本(Y vs Y1和Y vs Y2等),然后取最小成本计算所有成本(Y vs Y1和Y vs Y2等),然后取最小成本我理解多个标签可能会损害模型。我想试试。我可以在图书馆做这件事。虽然组合是可能的,但我的数据中有太多的组合。请注意,组合比它们中的任何一个都要严格。我希望X1的标签是Y1或Y2或Y3。Z1是stricter@trialcritic听起来不错。你也可以尝试所有的想法,看看哪一个是最好的。请告诉我结果。@Sung_Kim我尽了最大的努力,但没有成功。有什么建议吗?如果我有一个提要dict张量,我不能更新张量的每一行。我知道多个标签可能会损害模型。我想试试。我可以在图书馆做这件事。虽然组合是可能的,但我的数据中有太多的组合。请注意,组合比它们中的任何一个都要严格。我希望X1的标签是Y1或Y2或Y3。Z1是stricter@trialcritic听起来不错。你也可以尝试所有的想法,看看哪一个是最好的。请告诉我结果。@Sung_Kim我尽了最大的努力,但没有成功。有什么建议吗?如果我有一个提要dict张量,我就不能更新张量的每一行。