【问题标题】:How can I use L2-Loss function for Object-detection CNN in Tensorflow framework?如何在 Tensorflow 框架中使用 L2-Loss 函数进行目标检测 CNN?
【发布时间】:2019-09-21 14:38:07
【问题描述】:

我正在研究 tensorflow(确切地说是使用 CNN 进行对象检测)

我已经研究过分类,但是对象检测是回归问题,所以我对损失函数和全网络实现感到困惑。

在分类问题中,我应该使用-

tf.nn.softmax_cross_entropy_with_logits(logits=result, labels=Y)

(结果是我的 CNN 输出张量)

但是在回归问题中,比如语义分割和对象检测,我发现我必须使用 l2-loss 函数。

tf.nn.l2_loss(t=result)

我不知道如何使用这个函数,因为我不能使用 tf.argmax 函数。

【源码1】分类,用到了softmax和tf.argmax

cross_entropy = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=result, labels=Y))
print("* Cross Entropy SIZE : " + str(cross_entropy))

Result_argmax = tf.argmax(tf.nn.softmax(result), 1)
Label_argmax = tf.argmax(Y, 1)
print("* Result Argmax : ", Result_argmax)
print("* Label Argmax : ", Label_argmax)

ay = tf.argmax(tf.nn.softmax(result), 1)
ly = tf.argmax(tf.nn.softmax(Y), 1)
correct_prediction = tf.equal(Result_argmax, Label_argmax)
print("* tf.argmax : " + str(Result_argmax))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))

train_step = tf.train.AdamOptimizer(0.0001 * batchsize).minimize(cross_entropy)

这很简单,我完全理解。

[源码2]回归,使用l2_loss函数

l2_loss = tf.reduce_mean(tf.nn.l2_loss(t=result))
print("** L2 Loss SIZE : " + str(l2_loss))
train_step = tf.train.AdamOptimizer(0.0001 * batchsize).minimize(l2_loss)

????????

正确吗?我不明白如何进行盒子位置学习。

还有,我的学习监视器被捕获了。

真的,真的我无法理解。 请帮助我!

(最后,这是我捕获的会话图像。)

【问题讨论】:

    标签: python tensorflow neural-network object-detection loss-function


    【解决方案1】:

    物体检测由分类和回归两部分组成,也就是说,我们不仅要对图像上的物体进行正确分类,还需要正确定位物体。

    虽然有些对象检测框架确实看起来像回归模型(YOLO、SSD),但损失函数并不像 L2 损失那么简单。其实损失函数由两部分组成,crossentropyloss for classification 和regressionloss for localization,这里regressionloss 通常使用L2 loss。

    以下是一些常见的物体检测模型的损失函数。

    SSD model.

    YOLO model

    【讨论】:

    • 回归损失的另一个(更新的)示例可以在 Fast-RCNN 及其派生类 Faster-RCNN 和 R-FCN 中找到。在其中,示例 L2 损失更容易理解,并且可以作为更容易的垫脚石。在第 3 页右上角找到:arxiv.org/pdf/1504.08083.pdf
    猜你喜欢
    • 2016-09-01
    • 2018-02-24
    • 1970-01-01
    • 2022-08-19
    • 2018-12-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-19
    • 1970-01-01
    相关资源
    最近更新 更多