深度无监督显著性检测:多个Weak Label的伪监督

2023-11-08 23:10

本文主要是介绍深度无监督显著性检测:多个Weak Label的伪监督,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文来源:2018 CVPR
Deep Unsupervised Saliency Detection: A Multiple Noisy Labeling Perspective

最近在刷今年CVPR的时候发现了这样一篇有点意思的文章,整理了一些思路和想法,留在这篇博客中分享给大家。

  1. Motivation
    文章的出发点首先就引人入胜,是不是在深度学习流行的当下,handcraft的算法就毫无用武之地呢?所以这篇文章针对于如何高效的利用existing的handcraft算法 (也就是所谓的“Multiple Noisy Labeling”),来构建stronger的伪监督,从而实现无监督的操作。正是因为同时利用了多种handcraft的传统算法,所以得到的效果也是不差的。
  2. 思路
    如何同时利用无监督算法的dataset-independent性,和深度网络的powerful learning capacity性?

    noisy label视角(核心创新点)
    将现有的各种无监督算法的结果看成是noisy but informative 的label,他们利用了handcraft的人工先验知识,但是一般会有一定的method-specific的偏倚。如何克服存在的noise,这篇文章采用的是对noise进行建模(而不是SBF中利用intra-fusion进行noise去除,详见 ICCV 2017 Supervision by Fusion: Towards Unsupervised Learning of Deep Salient Object Detector)。
    – 整体框架
    a. saliency predction 模块 –> 将original image映射成saliency map(隐变量)–> deterministic way
    b. 噪声建模 –> 拟合多种无监督算法产生的noisy结果中的noise –> probabilistic way
    这里写图片描述

  3. 算法
    损失函数
    我们的思路是将每个handcraft的结果建模成显著性预测模块的结果 + noise结果 这里写图片描述,其中这里写图片描述是对噪声分布qi的采样:
    这里写图片描述 为我们生成的显著性map。网络的损失函数为这里写图片描述

显著性预测模块 – For Prediction Loss
通过显著性预测模块,我们可以得到隐变量,然后将其加上噪声模拟值,以此来拟合目标值。因此Prediction Loss涉及来衡量拟合值和真正handcraft无监督结果之间的偏差
这里写图片描述
这里写图片描述

噪声模块 – For Noise Loss
噪声模块用来衡量真实的handcarft无监督结果与显著性预测模块输出结果之间的误差,定义为这里写图片描述。 由于这个结果还收到网络参数的影响,因此其准确的后验概率不能直接求得,所以我们采用顺序性的优化方法得到
这里写图片描述
这里写图片描述
这样我们可以更新 这里写图片描述

这篇关于深度无监督显著性检测:多个Weak Label的伪监督的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/372989

相关文章

深度解析Java DTO(最新推荐)

《深度解析JavaDTO(最新推荐)》DTO(DataTransferObject)是一种用于在不同层(如Controller层、Service层)之间传输数据的对象设计模式,其核心目的是封装数据,... 目录一、什么是DTO?DTO的核心特点:二、为什么需要DTO?(对比Entity)三、实际应用场景解析

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

深度解析Python装饰器常见用法与进阶技巧

《深度解析Python装饰器常见用法与进阶技巧》Python装饰器(Decorator)是提升代码可读性与复用性的强大工具,本文将深入解析Python装饰器的原理,常见用法,进阶技巧与最佳实践,希望可... 目录装饰器的基本原理函数装饰器的常见用法带参数的装饰器类装饰器与方法装饰器装饰器的嵌套与组合进阶技巧

深度解析Spring Boot拦截器Interceptor与过滤器Filter的区别与实战指南

《深度解析SpringBoot拦截器Interceptor与过滤器Filter的区别与实战指南》本文深度解析SpringBoot中拦截器与过滤器的区别,涵盖执行顺序、依赖关系、异常处理等核心差异,并... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现

深度解析Spring AOP @Aspect 原理、实战与最佳实践教程

《深度解析SpringAOP@Aspect原理、实战与最佳实践教程》文章系统讲解了SpringAOP核心概念、实现方式及原理,涵盖横切关注点分离、代理机制(JDK/CGLIB)、切入点类型、性能... 目录1. @ASPect 核心概念1.1 AOP 编程范式1.2 @Aspect 关键特性2. 完整代码实

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

C++ 检测文件大小和文件传输的方法示例详解

《C++检测文件大小和文件传输的方法示例详解》文章介绍了在C/C++中获取文件大小的三种方法,推荐使用stat()函数,并详细说明了如何设计一次性发送压缩包的结构体及传输流程,包含CRC校验和自动解... 目录检测文件的大小✅ 方法一:使用 stat() 函数(推荐)✅ 用法示例:✅ 方法二:使用 fsee

OpenCV实现实时颜色检测的示例

《OpenCV实现实时颜色检测的示例》本文主要介绍了OpenCV实现实时颜色检测的示例,通过HSV色彩空间转换和色调范围判断实现红黄绿蓝颜色检测,包含视频捕捉、区域标记、颜色分析等功能,具有一定的参考... 目录一、引言二、系统概述三、代码解析1. 导入库2. 颜色识别函数3. 主程序循环四、HSV色彩空间

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷