[论文][半监督语义分割]Adversarial Learning for Semi-Supervised Semantic Segmentation
Adversarial Learning for Semi-Supervised Semantic Segmentation
摘要
创新点:我们提出了一种使用对抗网络进行半监督语义分割的方法。
在传统的GAN网络中,discriminator大多是用来进行输入图像的真伪分类(Datasets里面sample的图片打高分,generator产生的图片打低分),而本文设计了一种全卷积的discriminator,用于区分输入标签图中各个像素(pixel-wise)的分类结果是ground truth或是segmentation network给出的。本文证明了所提出的discriminator可以通过耦合模型的对抗损失和标准交叉熵损失来提高语义分割的准确性。此外,全卷积鉴别器通过发现未标记图像预测结果中的可信区域,实现半监督学习,从而提供额外的监督信号。
网络模型

对于labeled images:
image \(x_n\)输入segmentation network,得到分割结果 \(S(x_n)\)
分割结果\(S(x_n)\)和该图片对应真实标签\(Y_n\)比较,计算交叉熵损失\(L_{ce}\)

分割结果\(S(x_n)\)送入discriminator中求 \(L_{adv}\)

使用\(S(x_n)\)和真实标签\(Y_n\)训练discriminator:分别将\(S(x_n)\)和真实标签\(y\)输入discriminator,让discriminator分辨输入标签的每个像素是来自是ground truth还是segmentation network(即输入的每个像素为来自于\(S(x_n)\)还是真实标签\(Y_n\))
discriminator的输入为\(S(x_n)\)或真实标签\(Y_n\),尺寸为\(HxWxC\),其中\(C\)为语义分割的类别数;输出尺寸为\(HxWx1\),像素值代表这个pixel来自于真实标签\(Y_n\)的概率(如果discriminator认为该像素100%是来自真实标签\(Y_n\),则该位置像素值为1)
损失函数为:
- 注:上式中,当输入为\(S(x_n)\)时,\(y_n = 0\),当输入为\(Y_n\)时,\(y_n = 1\)
对于unlabeled image:
将image \(x_n\)输入segmentation network,得到输出\(S(x_n)\),尺寸为\(HxWxC\),每个维度上的值代表该像素取这个类别的概率值。对输入进行 one-hot encode,得到 \(\hat{Y_n}\)
编码过程:

用\(\hat{Y_n}\)和\(S(x_n)\)进行交叉熵损失计算
将\(S(x_n)\)通过训练后的discriminator,得到\(D(S(x_n))\),尺寸为\(HxWx1\),并设置闸值,通过指示函数对输出进行二值化(对于输出中像素值大于闸值的像素,认为是可信的,以突出正确的区域)
无标签部分的损失函数为:

实际中\(T_{semi}\)的取值为0.1~0.3
训练总损失:



Tips:
- 在训练过程中首先用labeled image进行5000iteration的训练(segmentation network和discriminator交替update)
- 此后随机sample,每个batch里面都可能有labeled image和unlabeled image,各自按照自己的步骤训练
- discriminator只用每个batch里面的labeled image进行训练
具体网络结构
Segmentation network:
首先采用DeepLab-v2 中的ResNet-101作为backbone进行预训练,并去掉最后一个分类层,将最后两个卷积层的步幅从2修改为1,从而使输出特征图的分辨率有效地达到输入图像大小的1/8。为了扩大感受野,我们将扩展后的卷积分别应用于步幅为2和4的conv4和conv5层。此外,我们在最后一层使用了Atrous Spatial Pyramid Pooling (ASPP)。最后,我们应用一个上采样层和softmax输出来匹配输入图像的大小。
Discriminator:
实验

Table4: 训练数据集为pascal VOC标准的1464张图片,SBD中的图片作为无标签数据进行训练


[论文][半监督语义分割]Adversarial Learning for Semi-Supervised Semantic Segmentation的更多相关文章
- [论文][半监督语义分割]Semi-Supervised Semantic Segmentation with High- and Low-level Consistency
Semi-Supervised Semantic Segmentation with High- and Low-level Consistency TPAMI 2019 论文原文 code 创新点: ...
- 2018年发表论文阅读:Convolutional Simplex Projection Network for Weakly Supervised Semantic Segmentation
记笔记目的:刻意地.有意地整理其思路,综合对比,以求借鉴.他山之石,可以攻玉. <Convolutional Simplex Projection Network for Weakly Supe ...
- [论文笔记][半监督语义分割]Universal Semi-Supervised Semantic Segmentation
论文原文原文地址 Motivations 传统的训练方式需要针对不同 domain 的数据分别设计模型,十分繁琐(deploy costs) 语义分割数据集标注十分昂贵,费时费力 Contributi ...
- OSVOS 半监督视频分割入门论文(中文翻译)
摘要: 本文解决了半监督视频目标分割的问题.给定第一帧的mask,将目标从视频背景中分离出来.本文提出OSVOS,基于FCN框架的,可以连续依次地将在IMAGENET上学到的信息转移到通用语义信息,实 ...
- 论文笔记:A Review on Deep Learning Techniques Applied to Semantic Segmentation
A Review on Deep Learning Techniques Applied to Semantic Segmentation 2018-02-22 10:38:12 1. Intr ...
- 半监督学习方法(Semi-supervised Learning)的分类
根据模型的训练策略划分: 直推式学习(Transductive Semi-supervised Learning) 无标记数据就是最终要用来测试的数据,学习的目的就是在这些数据上取得最佳泛化能力. 归 ...
- [转]综述论文翻译:A Review on Deep Learning Techniques Applied to Semantic Segmentation
近期主要在学习语义分割相关方法,计划将arXiv上的这篇综述好好翻译下,目前已完成了一部分,但仅仅是尊重原文的直译,后续将继续完成剩余的部分,并对文中提及的多个方法给出自己的理解. _论文地址:htt ...
- 综述论文翻译:A Review on Deep Learning Techniques Applied to Semantic Segmentation
近期主要在学习语义分割相关方法,计划将arXiv上的这篇综述好好翻译下,目前已完成了一部分,但仅仅是尊重原文的直译,后续将继续完成剩余的部分,并对文中提及的多个方法给出自己的理解. 论文地址:http ...
- 论文阅读笔记十六:DeconvNet:Learning Deconvolution Network for Semantic Segmentation(ICCV2015)
论文源址:https://arxiv.org/abs/1505.04366 tensorflow代码:https://github.com/fabianbormann/Tensorflow-Decon ...
随机推荐
- 『动善时』JMeter基础 — 58、JMeter分布式测试
目录 1.JMeter分布式测试概念 2.JMeter分布式测试前提条件 3.JMeter实现分布式测试 (1)在执行机中的配置 (2)在控制机中的配置 (3)启动执行机中的JMeter服务 (4)在 ...
- CapstoneCS5212替代IT6516方案|DP转VGA芯片|替代兼容IT6516
台湾联阳IT6516是一种高性能的DP显示端口到VGA转换器方案芯片.IT6516结合DisplayPort接收器和三重DAC,通过转换功能支持DisplayPort输入和VGA输出.内置Displa ...
- Java程序设计基础笔记 • 【第6章 循环结构进阶】
全部章节 >>>> 本章目录 6.1 for循环 6.1.1 for循环的简介 6.1.2 for循环的使用 6.1.3 for循环的表达式 6.1.4 实践练习 6.2 ...
- 「艺蜂酒店管理系统」 · Java Swing + mysql 开发 学生毕业设计项目
Java Swing在社会上基本用不到,但是任有学校拿来当做结课设计,只是博主在校期间的一个项目.如果在部署过程中有问题可以加我qq68872185. 码云仓库地址:https://gitee.co ...
- PHP-FPM 开启慢日志记录
首先,找到 php-fpm 所在的目录: 使用 which php-fpm 使用 whereis php-fpm 然后找到 php-fpm.conf 所在的目录: 使用 ps -ef | grep p ...
- mysql数据库安装教程
centos 7安装mysql教程 一.卸载mariadb 注:卸载mariadb,否则安装Mysql会出现冲突 [root@mysqlmaster ~]# rpm -qa |grep mariadb ...
- vue中自定义属性
<div v-bind:id="name"></div> //v-bind:id="变量" or :id="变量"
- Word2010格式化可爱的家乡
原文链接:https://www.toutiao.com/i6487795632349118990/ 准备样文 选中"可爱的家乡",选择"开始"选项卡,&quo ...
- Nginx高级模块学习
Nginx的rewrite规则 实现url重写一级重定向 使用场景: 1.URL访问跳转,支持开发设计 页面跳转.兼容性支持.展示效果 2.SEO优化 3.维护 后台维护.流量转发等 4.安全 配置语 ...
- 《剑指offer》面试题55 - I. 二叉树的深度
问题描述 输入一棵二叉树的根节点,求该树的深度.从根节点到叶节点依次经过的节点(含根.叶节点)形成树的一条路径,最长路径的长度为树的深度. 例如: 给定二叉树 [3,9,20,null,null,15 ...