为什么在泰坦尼克号案例中有两个输出在tflearn快速启动?

时间:2017-12-24 04:14:30

标签: python tensorflow tflearn

我是这个领域的初学者,我已经尝试了一段时间并且在这个链接中插入了快速入门指南。

http://tflearn.org/tutorials/quickstart.html

我已经尝试过了,它的准确度大约为78%,但问题是我不明白为什么"标签"由两个"幸存下来"彼此相对的列。我已经完成了相同的数据培训,但只使用了单个"幸存的"标签或输出中的列,但使用相同的代码,我只得到36%左右,0损失甚至NaN损失。

那么为什么有两列输出/标签?为什么我只能使用一列?

谢谢

1 个答案:

答案 0 :(得分:0)

两个不同的列代表onehot编码的标签。您可以检查其完成情况here这通常是使用softmax激活函数选择最后一层的。

但是如果你想用一个替换它,你还需要将激活函数更改为sigmoid。另外,不要忘记将load_csv代码更改为n_classes=1。以下是构建模型的示例代码:

# Build neural network
net = tflearn.input_data(shape=[None, 6])
net = tflearn.fully_connected(net, 32)
net = tflearn.fully_connected(net, 32)
net = tflearn.fully_connected(net, 1, activation='sigmoid')
net = tflearn.regression(net)

这将产生幸存的可能性。