open-set recognition(OSR)开集识别的一些思考(一)

开集识别是一个在现实世界中很常见的一个问题,但是这个问题只有你在真正实施项目的时候才会遇到,使用公开数据集是不会遇到这个问题的。
当你看到这篇文章的时候就默认你大致了解开集识别是什么了
下面就是干货了

开集识别 open-set recognition (OSR)

1、什么是开集识别:

1) 什么是闭集识别:

 闭集识别:训练集中的类别和测试集中的类别是一致的,最常见的就是使用开放数据集进行训练,所有数据集中的图像的类别都是已知的,没有未知种类的图像。

2) 所谓的开集识别

 白话说就是 在一个开放的数据集中进行识别,更为准确的说就是:测试集中含有训练集中没有的类别,而在使用测试集进行测试的时候,输入一张不属于训练集中已知类别的图像,由于Softmax的输出特性,模型有可能会将其以较高的置信度分为某一类,显然这是错误的。
所以就产生了开集识别这个问题。
开集识别旨在解决:输入一张已知种类的图像,输出具体的某个类别,输入一张未知种类的图像,输出为unknown,或者以较低的置信度输出。

在这里插入图片描述

2、开集识别举例

示例 : 猫狗识别模型,输入一张荷花或者大象的图像,模型可能会告诉你80% 的概率为 猫。
想要的结果 : 输入不为猫狗的图像,模型输出为未知类别,输入猫狗图像,模型输出对应具体的类别