neural-network - 是否有使用加权损失进行像素分割/分类任务的示例?

标签 neural-network deep-learning caffe pycaffe deeplearning4j

我正在对我的数据进行 FCN32 语义分割。我运行算法来微调我的数据(只有一个 channel 的灰度图像),直到 80,000 次迭代;然而,损失和精度是波动的,输出图像完全是黑色的。甚至,在 80,000 次迭代之后损失如此之高。我认为分类器不能很好地训练我的数据。所以,我要从头开始训练。
另一方面,我的数据有不平衡的类(class)成员。背景像素比其他四类多。一些研究人员建议使用加权损失。有谁有想法吗?我做对了吗?如何将此加权损失添加到 train_val.prototxt?

如果您知道任何与加权损失训练相关的资源/示例,我将不胜感激,请在此处与我分享。

再次感谢

最佳答案

您可以使用 "InfogainLoss" 解决类不平衡问题.这种损失可以看作是对 "SoftmaxWithLoss" 的扩展。这使您能够为每个标签“支付”不同的损失值。
如果您想使用 "InfogainLoss"对于逐像素预测,您可能需要使用 BVLC/caffe PR#3855 .

关于neural-network - 是否有使用加权损失进行像素分割/分类任务的示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41670022/

相关文章:

python - Keras 图像生成器不断给出不同数量的标签

c++ - 将输入层 reshape 为单 channel 和 multimap 像

neural-network - 损失和验证损失减少,但准确度和验证准确度保持不变

machine-learning - caffe中的 "Parameter"层是什么?

c++ - Caffe Sigmoid 交叉熵损失层损失函数

c# - C# 样本/用法的 Encog 正则化

python - python 中的 NARX 示例 - 训练和预测

machine-learning - 什么是多头模型?模型中的 'head' 到底是什么?

image-processing - 智能手机上的人体姿势估计/匹配

python - Caffe 中的预测 - 异常 : Input blob arguments do not match net inputs