如何获得多重损失的加权和&准确度(caffe)

时间:2017-03-29 14:35:13

标签: neural-network deep-learning caffe

我已经在同一图像的两个不同模态上训练了一个网络。我将数据一起传递到一层,但之后,它几乎是两个并行的网络,它们不共享一个层,两个任务有不同的标签集,因此我有两个不同的损耗和精度层。

  1. 我已经读过caffe平均多次损失和准确性(遵循这个问题How can I have multiple losses in a network in Caffe?),只有当至少共享一个层时才是这种情况吗?我打算创建一个集合,但现在看起来我只是有两个不同的网络。我打算平均损失&准确性,以便两个网络分支将有助于一个准确性。在训练中我看到两个单独的损失&准确性。如何获得平均损失&测试新图像对时的准确度?

  2. 通过转发网络,是否可以获得两个预测?如果是这样,怎么样?

1 个答案:

答案 0 :(得分:2)

使用caffe-parameter loss_weight 可以在一个网络中使用多次丢失。例如,您可以为重量为0.5的损失图层之一使用以下内容。

...
layer{
  name: "loss_a"
  type: "SigmoidCrossEntropyLoss"
  bottom: "fc8_a"
  bottom: "attributes_a"
  top : "loss_a"
  loss_weight : 0.5
 }

 layer{
  name: "loss_b"
  type: "SigmoidCrossEntropyLoss"
  bottom: "fc8_b"
  bottom: "attributes_b"
  top : "loss_b"
}