何时使用只有一个输出神经元的神经网络,何时使用多个输出神经元?
When to use a neural network with just one output neuron and when with multiple output neurons?
我试图理解使用只有一个输出神经元的神经网络和在输出层中有多个神经元的神经网络之间的区别。
我知道使用这种类型的神经网络我可以像 XOR 逻辑门一样求解,事实上,我可以使用隐藏层中神经元较少的 ANN。
但我不是很清楚什么时候以及为什么我应该使用具有这种拓扑结构的神经网络,哪里可以看出ANN在输出层有多个神经元。
有人知道区别吗?
网络架构(单输出和多输出)专门针对二进制、多class和多标签问题。
让我们考虑一下您有以下选择 -
Binary classification - 您正在尝试预测获得正数的概率 class。在这种情况下,正面和负面 classes 是仅有的 2 个选项。这种情况下的输出是0到1之间的概率值。这里使用的损失函数是一个binary_crossentropy
Multi-class classification - 您正在尝试单独预测多个 classes 的概率。您正在尝试为 n class 中的每一个(其中 n>=2)获得 0 到 1 的概率预测。如果每个样本属于单个 class 那么它被称为多 class 单标签 classification.
Multi-label classification - 你的情况是每个样本可以属于多个 classes。在这里,您正在处理一个多 class 多标签问题。这也会为 n classes 中的每一个提供 0 到 1 的概率值,并且在这种情况下使用的损失与您将用于二进制 classification.
的损失相同。
所以,归根结底,问题在于您如何设置问题。
我试图理解使用只有一个输出神经元的神经网络和在输出层中有多个神经元的神经网络之间的区别。
我知道使用这种类型的神经网络我可以像 XOR 逻辑门一样求解,事实上,我可以使用隐藏层中神经元较少的 ANN。
但我不是很清楚什么时候以及为什么我应该使用具有这种拓扑结构的神经网络,哪里可以看出ANN在输出层有多个神经元。
有人知道区别吗?
网络架构(单输出和多输出)专门针对二进制、多class和多标签问题。
让我们考虑一下您有以下选择 -
Binary classification - 您正在尝试预测获得正数的概率 class。在这种情况下,正面和负面 classes 是仅有的 2 个选项。这种情况下的输出是0到1之间的概率值。这里使用的损失函数是一个binary_crossentropy
Multi-class classification - 您正在尝试单独预测多个 classes 的概率。您正在尝试为 n class 中的每一个(其中 n>=2)获得 0 到 1 的概率预测。如果每个样本属于单个 class 那么它被称为多 class 单标签 classification.
Multi-label classification - 你的情况是每个样本可以属于多个 classes。在这里,您正在处理一个多 class 多标签问题。这也会为 n classes 中的每一个提供 0 到 1 的概率值,并且在这种情况下使用的损失与您将用于二进制 classification.
的损失相同。所以,归根结底,问题在于您如何设置问题。