gpt4 book ai didi

TensorFlow & Keras 预测阈值

转载 作者:行者123 更新时间:2023-12-04 01:22:39 25 4
gpt4 key购买 nike

TF 默认使用的阈值是多少,用于将输入图像分类为某个类别?

例如,假设我有 3 个类(class) 0 , 1 , 2 ,并且图像的标签是 one-hot 编码的,如下所示:[1, 0, 0] ,表示该图像的标签为 0 类。

现在,当模型在 softmax 之后输出预测时,如下所示:[0.39, 0.56, 0.05] TF 是否使用 0.5 作为阈值,所以它预测的类是 1 类?

如果所有预测值都低于 0.5 会怎样,例如 [0.33, 0.33, 0.33] TF会说结果是什么?

有没有办法指定一个新的阈值,例如 0.7 并确保 TF 说如果没有类别预测高于该阈值,则预测是错误的?

这种逻辑也会延续到推理阶段,如果网络不确定类别,那么它将拒绝对图像进行分类?

最佳答案

when a model outputs a prediction after softmax like this one: [0.39, 0.56, 0.05] does TF use 0.5 as the threshold so the class it predicts is class 1?


不,这里不涉及任何阈值。 Tensorflow(以及任何其他框架,就此而言)只会选择最大值( argmax);即使概率输出为 1,此处的结果(类 [0.33, 0.34, 0.33])也会相同。 .
您似乎错误地认为 0.5 的概率值在 3 类分类问题中具有特殊意义;它有 不是 : 0.5 的概率值仅在 中是“特殊的”二进制 分类设置(和一个平衡的,就此而言)。在 n -class 设置,相应的“特殊”值为 1/n (这里是 0.33),根据定义,概率向量中总会有一些条目大于或等于这个值。

What if all the predictions were below 0.5 like [0.33, 0.33, 0.33] what would TF say the result is?


正如已经暗示的那样,在 n>2 的 n 类问题中,所有概率都低于 0.5 并没有什么奇怪或意外的。
现在,如果所有概率恰好相等,如您展示的示例所示(尽管在实践中极不可能,但问题是有效的,至少在理论上), 理想情况下 ,这样的关系应该随机解决(即随机选择一个类);在实践中,因为通常这个阶段由 argmax 处理。 Numpy 的方法,预测将是第一类(即类 0 ),这不难证明:
import numpy as np
x = np.array([0.33, 0.33, 0.33])
np.argmax(x)
# 0
由于 Numpy 如何处理此类情况 - 来自 argmax docs :

In case of multiple occurrences of the maximum values, the indices corresponding to the first occurrence are returned.


对于你的下一个问题:

is there any way to specify a new threshold for example 0.7 and ensure TF says that a prediction is wrong if no class prediction is above that threshold?


不在 Tensorflow(或任何其他框架)本身中,但这始终可以在推理期间的后处理阶段完成:无论分类器实际返回什么,始终可以添加一些额外的逻辑,例如每当最大概率值小于阈值时,您的系统(即您的模型加上后处理逻辑)会返回类似“我不知道/我不确定/我无法回答”的内容。但同样,这在 Tensorflow(或使用的任何其他框架)和模型本身之外,它只能在推理和 期间使用。不是 在训练期间(无论如何,在训练期间它没有意义,因为在训练期间只使用预测的类概率,而不是硬类)。
事实上,我们几年前在一个玩具项目中实现了这样一个后处理模块,这是一个从图像中对狗种族进行分类的在线服务:当模型返回的最大概率小于阈值时(就是这种情况,例如,当模型呈现的是猫而不是狗的图像时),系统被编程为回答“你确定这是一只狗吗”这个问题,而不是被迫在预定义的赛狗...

关于TensorFlow & Keras 预测阈值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62396675/

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