Causal Intervention for Weakly-Supervised Semantic Segmentation
概
这篇文章从因果关系的角度剖析如何提升弱监督语义分割的方法.
主要内容
普通的弱监督语义分割
弱监督语义分割不似普通的语义分割一样依赖丰富的人工标注, 本文考虑的情况就是非常极限的, 仅知道每张图片的类别标签(可以是多标签, 比如: 人, 车, 表示一张图片里面有人有车).
一般的弱监督语义分割包含:
- 训练一个分类模型(多标签);
- 通过CAM确定大概的seed areas;
- 将seed areas进行拓展得到pseudo-masks;
- 训练一个分割模型(将pseudo-masks作为ground-truth);
- 概分割模型作为最后的模型
但是显然的是, 仅仅凭借类别标签完成复杂的语义分割任务是相当困难的, 大概有如下:
- 目标物体往往不是孤立的: 有可能数据集中每次出现马的时候都会有一个人, 则分类模型可能会将二者的特征混合用于分类, 那么最后的分割就很难明显的把二者的边界提取出来;
- 背景信息并不完全: 背景往往含有一些别的未被标注的目标, 而这些目标和我们所关心的目标有可能是相互联系甚至是同时存在的, 比如: 地板和沙发, 这导致在提取沙发的时候往往把模板也一并提取出来了;
- foreground, 前景的目标往往是共同变化的: 比如车和车窗, 车窗总是会反应周围的事物, 导致车窗这一属性不是用来提取车的好的特征, 分类模型很有可能会丢掉这一部分信息, 其导致的结果就是最后的分割的区域车窗少一块.
因果模型
C: context prior;
X: pixel-level image;
M: image-specific representation using the textual templates from C;
Y: labels.
作者认为, 整个流程是这样的:
- 确定先验背景信息\(C\);
- 通过先验背景信息\(C\)构建图片\(X\);
- 图片\(X\)和背景信息\(C\)共同确定了和背景有关的特征表示\(M\);
- \(X\), \(M\) 共同影响最后的类别标签\(Y\).
我们一般的分类模型, 实际上是拟合条件分布
\]
显然这个条件分布与先验的背景信息有很大联系, 即图(a).
而我们实际上所关心的是
\]
即建立目标的出现和场景没有关系的模型.
首先我们要做的就是将其转为一般的统计估计量:
\begin{array}{rl}
\mathrm{{P}}[Y|do(X)]
=& \sum_{c} \mathrm{P}[Y|do(X), c] \: \mathrm{P}[c|do(x)]\\
=& \sum_{c} \mathrm{P}[Y|do(X), c] \: \mathrm{P}[c]\\
=& \sum_{c} \mathrm{P}[Y|X, c, f(X;c)] \: \mathrm{P}[c]\\
=& \sum_{c} \mathrm{P}[Y|X, M=f(X;c)] \: \mathrm{P}[c].\\
\end{array}
\]
显然, 这里有一个假设, 即知道了\(X, C\)之后, \(M\)也是确定的, 其通过\(M=f(X;c)\)来拟合.
训练流程
- 训练以\(X, M\)为输入的多标签分类网络, 其通过
\]
其中\(s_i=f(X, M_t;\theta_t^i)\), \(n\)是类别总数.
2. 利用CAM得到seed areas 并扩展为pseudo-mask;
3. 将上面的pseudo-mask作为ground-truth训练分割模型;
4. 计算
\]
注意到, 我们本应该最小化(1), 但是注意到, 此时对于每一个\(c\), 我们都要循环一次, 这非常非常耗时, 所以作者是:
\mathrm{P}[Y|do(X), M=\sum_{c}f(X;c)\mathrm{P}(c) ].\\
\]
一直进行\(T\)步.
注:第1步中的\(f(X, M_t;\theta_t^i)\)并不一定要让\(X, M_t\)都在同一层输入, 实际上\(M_t\)是比较抽象的信息, 故作者实验发现在后几个block加入效果更好;
注: 先验背景信息\(\{c_i\}\)是pseudo-mask的平均;
注: \(W_1, W_2\)是可训练的参数.
代码
Causal Intervention for Weakly-Supervised Semantic Segmentation的更多相关文章
- 2018年发表论文阅读:Convolutional Simplex Projection Network for Weakly Supervised Semantic Segmentation
记笔记目的:刻意地.有意地整理其思路,综合对比,以求借鉴.他山之石,可以攻玉. <Convolutional Simplex Projection Network for Weakly Supe ...
- [ICCV 2019] Weakly Supervised Object Detection With Segmentation Collaboration
新在ICCV上发的弱监督物体检测文章,偷偷高兴一下,贴出我的poster,最近有点忙,话不多说,欢迎交流- https://arxiv.org/pdf/1904.00551.pdf http://op ...
- 论文笔记(3):STC: A Simple to Complex Framework for Weakly-supervised Semantic Segmentation
论文题目是STC,即Simple to Complex的一个框架,使用弱标签(image label)来解决密集估计(语义分割)问题. 2014年末以来,半监督的语义分割层出不穷,究其原因还是因为pi ...
- [CVPR 2016] Weakly Supervised Deep Detection Networks论文笔记
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "Helvetica Neue"; color: #323333 } p. ...
- [CVPR2017] Weakly Supervised Cascaded Convolutional Networks论文笔记
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Helvetica Neue"; color: #042eee } p. ...
- 论文笔记:Rich feature hierarchies for accurate object detection and semantic segmentation
在上计算机视觉这门课的时候,老师曾经留过一个作业:识别一张 A4 纸上的手写数字.按照传统的做法,这种手写体或者验证码识别的项目,都是按照定位+分割+识别的套路.但凡上网搜一下,就能找到一堆识别的教程 ...
- 论文笔记《Feedforward semantic segmentation with zoom-out features》
[论文信息] <Feedforward semantic segmentation with zoom-out features> CVPR 2015 superpixel-level,f ...
- [Papers] Semantic Segmentation Papers(1)
目录 FCN Abstract Introduction Related Work FCN Adapting classifiers for dense prediction Shift-and-st ...
- Fully Convolutional Networks for Semantic Segmentation 译文
Fully Convolutional Networks for Semantic Segmentation 译文 Abstract Convolutional networks are powe ...
随机推荐
- UBI 文件系统之分区挂载
Linux 系统中有关mtd和ubi的接口:(1) cat /proc/mtd:可以看到当前系统的各个mtd情况,(2) cat /proc/partitions: 分区信息,有上面的类似(3) ca ...
- OpenStack之七: compute服务(端口8774)
注意此处的bug,参考o版 官网地址 https://docs.openstack.org/nova/stein/install/controller-install-rdo.html 控制端配置 # ...
- Spring事务隔离级别和传播特性(转)
相信每个人都被问过无数次Spring声明式事务的隔离级别和传播机制吧!今天我也来说说这两个东西. 加入一个小插曲,一天电话里有人问我声明式事务隔离级别有哪几种,我就回答了7种,他问我Spring的版本 ...
- 基于阿里云 ecs 使用 docker 方式部署 showDoc
官网文档:https://www.showdoc.cc/help?page_id=65610 (建议先看下这个) 首先说明一下,我 ecs 镜像是 CentOS 7.6 64位 1. 首先在 服务器上 ...
- logrotate没有rotate的排查过程
前言 背景 xxx,你过来把squid的日志检查一下,是否做了日志切割:于是乎开启了logrotate没有切割日志的排查旅程,em--.只能说过程很爽,平时疲于应付繁琐的事情,难得有点时间能一条线慢慢 ...
- Tableau如何绘制瀑布图
一.将子类别拖至列,利润拖拽至行,类型改为甘特条形图 二 右键利润-快速表计算-汇总(数据会从左向右显示累计汇总) 三.创建计算字段-[利润] 四.将负利润拖拽到大小,利润拖拽到颜色 分析-合计-显示 ...
- Linux 文件权限、系统优化
目录 Linux 文件权限.系统优化 1.文件权限的详细操作 1.简介: 2.命令及归属: 3.权限对于用户和目录的意义 权限对于用户的意义: 权限对于目录的意义: 4.创建文件/文件夹的默认权限来源 ...
- Git远程操作(附重要原理图)
原文出处: 阮一峰 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容 ...
- [BUUCTF]PWN——ciscn_2019_n_3
ciscn_2019_n_3 附件 步骤 例行检查,32位,开启了nx和canary保护 本地试运行一下,经典的堆题的菜单 3.32位ida载入 new(),申请了两个chunk,第一个chunk(1 ...
- [BUUCTF]PWN——ez_pz_hackover_2016
ez_pz_hackover_2016 题目附件 解题步骤: 例行检查,32位,开启了RELRO保护,二进制的保护机制看这里 由于没有开启nx保护,对于这题一开始想到的是利用写入shellcode来获 ...