0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

模型的闭集准确率与开集识别能力正相关的观点

倩倩 来源:GiantPandaCV 作者:GiantPandaCV 2022-09-09 09:28 次阅读

参考一篇综述,首先介绍两个概念:

Close Set Recognition,闭集识别:指 训练集中的类别和测试集中的类别是一致的,例如最常用最经典的ImageNet-1k。所有在测试集中的图像的类别都在训练集中出现过,没有未知种类的图像。从AlexNet到VGG,再到ResNet,以及最近大火的Visual Transformer,都能够比较好的处理这一类别的任务。

Open Set Recognition,开集识别:指对一个在训练集上训练好的模型,当利用一个测试集(该测试集的中包含训练集中没有的类别)进行测试时,如果输入已知类别数据,输出具体的类别,如果输入的是未知类别的数据,则进行合适的处理(识别为unknown或者out-of-distribution)。例如在利用一个数据集训练好了一个模型可以对狗和人进行分类,而输入一张狗的图像,由于softmax这种方式的设定,模型可能会告诉你80%的概率为人,但显然这是不合理的,限制了模型泛化性能提升。而我们想要的结果,是当输入不为猫和人的图像(比如狗)时,模型输出为未知类别,输入人或猫图像,模型输出对应具体的类别。

3ab9d0de-2fde-11ed-ba43-dac502259ad0.png

由于现实场景中更多的是开放和非静态的环境,所以在模型部署中,经常会出现一些没有见过的情况,所以这种考虑开集检测的因素,对模型的部署十分有必要。那么模型在Close set和在Open set的表现是否存在一定的相关性呢?下面我们来了解一份ICLR 2021的工作来尝试理解和探索两者之间的关系。

在本文中,作者重新评估一些open set识别的方法,通过探索是否训练良好的闭集的分类器通过分析baseline的数据集,可以像最近的算法一样执行。要做到这一点,我们首先研究了分类器的闭集和开集性能之间的关系。

虽然人们可能期望更强的close set分类器过度拟合到train set出现的类别,因此在OSR中表现较差。其实最简单的方法也非常直观,就是‘maximum softmax probability (MSP) baseline,即经过softmax输出的最大的概率值。而该论文展示了在close set和open set上开放集的表现是高度相关的,这一点是非常关键的。而且展这种趋势在不同的数据集、目标以及模型架构中都是成立的。并在ImageNet-1k这个量级上的数据集进行评估,更能说明该方法的有效性。

但仅仅观察到这种现象,这种contribution虽然有意义,但可能也不足以支撑一篇顶会oral,所以自然要基于这一现象展开一些方法上的设计,来提升开集检测的表现。根据这一观察,论文提出一种通过改善close set性能的方式来进一步提升open set上的表现。

具体来说,我们引入了更多的增强、更好的学习率调度和标签平滑等策略,这些策略显著提高了MSP基线的close set和open set性能。我们还建议使用maximum logit score(MLS),而不是MSP来作为开放集指标。通过这些调整,可以在不改变模型结构的情况下,非常有效的提升模型open set状态下的识别性能。

3. 方法

3c2742e4-2fde-11ed-ba43-dac502259ad0.png

首先就是一张非常直观的图,在不用的数据集上,对OSR和CSR两个任务的表现进行比较。论文首先利用标准基准数据集上,选取三种有代表性的开放集识别方法,包括MSP,ARPL以及ARPL+CS。然后利用一个类似于VGG形态的的轻量级模型,在不同的分类数据集上进行检测。可以看到OSR和CSR两个任务的表现是呈现出高度的正相关的。

对于理论上的证明,论文选取了模型校准的角度来解读。直观地说,模型校准的目的是量化模型是否具有感知对象类别的能力,即是否可以把低置信度的预测与高错误率相关联。也就是说如果给了很低的置信度,而错误率又是很高的,那么就可以定义为模型没有被很好地校准。反之,则说明模型被很好地校准了。

3c5c5092-2fde-11ed-ba43-dac502259ad0.png

3c811c10-2fde-11ed-ba43-dac502259ad0.png

到目前为止,论文已经证明了在单一、轻量级架构和小规模数据集上封闭集和开放集性能之间的相关性——尽管我们强调它们是OSR文献中现有的标准基准。如上图,论文又在在大规模数据集(ImageNet-1k)上试验了一系列架构。和在CIFAR-10等小数据集一致,该数据集也存在上述的现象。

至于,获得更好的open set recognition上的表现,也就非常直接了。就是通过各种优化方式、训练策略的设计,让模型可以能够在close set上具有更好的性能。完整的细节和用于提高封闭集性能的方法的表格明细可以在论文,以及附录中更好地了解。

论文还提出一种新的评估close set性能的方式。以前的工作指出,开放集的例子往往比封闭集的例子具有更低的norm。因此,我们建议在开放集评分规则中使用最大对数,而不是softmax概率。Logits是深度分类器中最后一个线性层的原始输出,而softmax操作涉及到一个归一化,从而使输出可以被解释为一个概率向量的和为1。由于softmax操作将logits中存在的大部分特征幅度信息归一化,作者发现logits能带来更好的开放集检测结果。

3cae29b2-2fde-11ed-ba43-dac502259ad0.png

这种新的方式,改善了在所有数据集上的性能,并大大缩小了与最先进方法的差距,各数据集的AUROC平均绝对值增加了13.9%。如果以报告的baseline和当前最先进的方法之间的差异比例来计算,这意味着平均差异减少了87.2%。MLS方法还在TinyImageNet上取得了新的领先优势,比OpenHybrid高出3.3%。

另外,作者指出,目前的标准OSRbaseline评价方式有两个缺点:

它们都只涉及小规模的数据集;

它们缺乏对构成 "语义类 "的明确定义。

后者对于将开放集领域与其他研究问题,如out-of-distribution以及outlier的检测,进行区分非常重要。OSR旨在识别测试图像是否与训练类有语义上的不同,而不是诸如模型对其预测不确定或是否出现了低层次的distribution shift。所以作者基于这两个缺点,提出来了新的baseline用于评估open set的性能。具体关于数据集的细节,可以参考原文

4. 结论

在这篇文章中,作者给出了模型的闭集准确率与开集识别能力正相关的观点,同时通过实验验证了加强模型的闭集性能能够帮助我们获得更强的开集能力。对于 Open-Set Recognition 具有启发意义。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    6511

    浏览量

    87590
  • 模型
    +关注

    关注

    1

    文章

    2704

    浏览量

    47678
  • 分类器
    +关注

    关注

    0

    文章

    152

    浏览量

    13111

原文标题:开集识别: A Good Closed-Set Classifier is All You Need

文章出处:【微信号:GiantPandaCV,微信公众号:GiantPandaCV】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    在全志V853平台上成功部署深度学习步态识别算法

    上测试了NB模型的步态识别准确率。CASIA-B是一个大规模、多视角的步态识别数据,共包含1
    发表于 03-04 10:15

    risc-v标准指令如何扩展?

    想问问具体要怎么实现标准指令的扩展呢?需要修改哪些硬件啊? 每一种指令扩展是相似的吗?还是需要不一样的步骤呢(比如V扩展、K扩展)?
    发表于 01-21 22:19

    哪位能否推荐两本习题,是模拟电路习题和数字电路习题

    哪两本比较好的,并且习题里要有解题的过程,如果有下载的,是否可以说一下
    发表于 11-28 20:10

    智慧矿山:AI算法为何能提高未戴安全带识别准确率

    未穿戴安全带识别AI算法是智慧矿山的重要应用之一,可以提高矿山工作人员的安全意识和降低事故发生的概率。为了提高识别准确率,研究人员可以优化数据集、改进网络结构、混合模型融合、应用强化学
    的头像 发表于 10-22 22:01 237次阅读

    字符和字库有什么联系?

    字符和字库 是同一个对象吗
    发表于 10-12 06:29

    DLX指令RISC_CPU_verilog源码分享

    DLX指令RISC_CPU_verilog源码
    发表于 09-26 07:01

    【KV260视觉入门套件试用体验】部署DPU镜像并开发一个图像识别程序

    的主要特点如下: 更快的速度:通过使用较小的网络结构,TF-YOLOv3.5可以在短时间内实现目标检测。 更高的准确率:TF-YOLOv3.5在多个数据上的性能都优于YOLOv3,特别是在小目标检测
    发表于 09-18 14:15

    OpenHarmony系统能力SystemCapability使用指南

    API,DevEco Studio识别开发者项目中选择的设备形态,找到该设备的支持能力,筛选支持能力包含的API并提供API联想。 二
    发表于 09-15 15:45

    深度学习在医学图像分割与病变识别中的应用实战

    (train_images.npy 和 train_labels.npy)以及验证数据(valid_images.npy 和 valid_labels.npy) 当涉及到医学图像分割与病变识别时,模型的性能评估是至关重要
    发表于 09-04 11:11

    keras制作mnist数据的流程

    , validation_data=db_val, validation_freq=1, epochs=5, callbacks=[early_stopping]) # 用测试测试模型准确率
    发表于 08-18 06:38

    如何利用keras打包制作mnist数据

    [==============================] - 1s 2ms/step - loss: 0.3174 - accuracy: 0.9536可见数据制作OK。 如果想要进一步的了解预测结果中哪些数字的准确率最高,哪些数字
    发表于 08-18 06:12

    将ONNX模型转换为中间表示(IR)后,精度下降了怎么解决?

    将 ONNX 模型转换为 IR。 与使用 PyTorch 运行 ONNX 模型相比,Ran IR 采用 基准 C++ 工具,其性能准确率降低了 20%。 无法确定如何对图像进行预处理以获得更好的
    发表于 08-15 08:28

    HarmonyOS/OpenHarmony应用开发-ArkTSAPI系统能力SystemCapability

    、 设备与SDK能力的对应 SDK向DevEco Studio提供全量API,DevEco Studio识别开发者项目中选择的设备形态,找到该设备的支持能力,筛选支持
    发表于 08-10 16:39

    MCU人脸识别模型的设计注意事项和最佳实践

    本指南介绍了在训练和量化MCU友好的人脸识别模型时需要考虑的一些设计注意事项和最佳实践。近年来,面部识别技术在日常生活中变得无处不在。它让我们的生活变得更轻松的方式有很多,包括: ·电子护照控制门
    发表于 08-02 08:58

    国产工业级RK3568核心板-AI人脸识别产品方案

    ,自动对焦等功能的摄像头模组,以保证图像质量和拍摄效果。在图像采集的过程中,可以使用RK3568内置的ISP图像处理单元对图像进行优化,提高人脸识别准确率和稳定性。 LCD显示屏:目前提供7寸MIPI屏
    发表于 05-06 14:30