gpt4 book ai didi

image-processing - 神经网络 - 自信地检测一张图像中的多个对象

转载 作者:行者123 更新时间:2023-12-02 20:36:23 25 4
gpt4 key购买 nike

我了解 CNN 如何解决分类问题,例如在 MNIST 数据集上,其中每个图像代表一个手写数字。对图像进行评估,并以一定的置信度给出分类。

我想知道如果我希望识别一张图像中的多个对象,并且对每个对象都有信心,我应该采取什么方法。例如 - 如果我评估猫和狗的图像,我希望“猫”和“狗”都有很高的置信度。我不在乎物体在图片中的位置。

我目前的知识将引导我构建一个仅包含狗的图像数据集和一个仅包含猫的图像数据集。我会重新培训顶层,例如 Inception V3网络,它将能够识别哪些图像是猫,哪些图像是狗。

这样做的问题是,评估狗和猫的图像将导致 50% 的狗和 50% 的猫 - 因为它试图对图像进行分类,但我想“标记”图像(理想情况下达到~100% 狗,~100% 猫)。

我简要地研究了基于区域的 CNN,它解决了类似的问题,但我不关心对象在图片中的位置 - 只是它们都可以被识别。

有哪些方法可以解决这个问题?我想在 Python 中使用 Tensorflow 或 Keras 之类的东西来实现这一点。

最佳答案

我知道这是一个老问题,但如果它出现在其他人的任何 Google 搜索的首页中(就像对我一样),我想我可以补充一些有用的东西。

InceptionV3 的最后一层是 Softmax 函数,它试图表示这是标签 A 标签 B。

但是,如果您想修改诸如 Inception 之类的内容以进行多标签分类,则不要将 Softmax 用于最后一层,而是将其替换为 Sigmoid 之类的内容,以便每个标签都根据其自身的优点进行衡量(并且不与它的邻居进行比较)。

有关其背后原因的更多信息(以及有关如何修改 retrain.py 的完整说明)可以在此处找到:

https://towardsdatascience.com/multi-label-image-classification-with-inception-net-cbb2ee538e30

The add_final_training_ops() method originally added a new softmax and fully-connected layer for training. We just need to replace the softmax function with a different one.

Why?

The softmax function squashes all values of a vector into a range of [0,1] summing together to 1. Which is exactly what we want in a single-label classification. But for our multi-label case, we would like our resulting class probabilities to be able to express that an image of a car belongs to class car with 90% probability and to class accident with 30% probability etc. We will achieve that by using for example sigmoid function. Specifically we will replace:

final_tensor = tf.nn.softmax(logits, name=final_tensor_name)

with:

final_tensor = tf.nn.sigmoid(logits, name=final_tensor_name)

We also have to update the way cross entropy is calculated to properly train our network:

Again, simply replace softmax with sigmoid:

cross_entropy = tf.nn.sigmoid_cross_entropy_with_logits(logits,ground_truth_input)

关于image-processing - 神经网络 - 自信地检测一张图像中的多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47026383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com