machine-learning - 关于 Caffe 中的二元分类

标签 machine-learning neural-network deep-learning caffe

在解决二元分类问题时,我认为caffe中有两种可能的方法。
第一个是使用 "SigmoidCrossEntropyLossLayer"具有一个输出单元。
另一种是使用"SoftmaxWithLossLayer"具有两个输出单元。 我的问题是这两种方法有什么区别?
我应该使用哪一个?
非常感谢!

最佳答案

如果您稍微玩一下数学,您可以“复制” "Sigmoid" 的预测类别概率。图层至 0.5*x_i对于 1 级和 -0.5*x_i对于 0 类,则 "SoftmaxWithLoss"层数总计"SigmoindWithCrossEntropy"关于单个输出预测x_i

所以我相信可以说这两种方法对于预测二进制输出来说是等效的。

关于machine-learning - 关于 Caffe 中的二元分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36167895/

相关文章:

tensorflow - xavier_initializer和xavier_initializer_conv2d有什么区别?

numpy - 如何解释 scipy 中 checkgrad 函数的输出?

python - 如何在 on_epoch_end 中获得 true y_true 和 y_pred ?

python - 如何安装 "SpaCy"库而不出现此错误?

C++ 将 shared_ptr boost 为 hash_map 键

neural-network - 使用 RELU 的神经网络反向传播

python - Keras LSTM - 验证损失从时期 #1 开始增加

matlab - 在 MATLAB 中使用感知器对数据进行分类

tensorflow - Keras错误 “You must feed a value for placeholder tensor ' bidirectional_1/keras_learning_phase'与dtype bool”

machine-learning - 如何在 Tensorflow 中使用经过训练的 CNN 模型进行对象识别