当前位置:   article > 正文

将GAN用于语义分割_gan 语义分割

gan 语义分割

深度学习已经在图像分类、检测、分割、高分辨率图像生成等诸多领域取得了突破性的成绩。但是它也存在一些问题。首先,它与传统的机器学习方法一样,通常假设训练数据与测试数据服从同样的分布,或者是在训练数据上的预测结果与在测试数据上的预测结果服从同样的分布。而实际上这两者存在一定的偏差,比如在测试数据上的预测准确率就通常比在训练数据上的要低,这就是过度拟合的问题。

另一个问题是深度学习的模型(比如卷积神经网络)有时候并不能很好地学到训练数据中的一些特征。比如,在图像分割中,现有的模型通常对每个像素的类别进行预测,像素级别的准确率可能会很高,但是像素与像素之间的相互关系就容易被忽略,使得分割结果不够连续或者明显地使某一个物体在分割结果中的尺寸、形状与在ground_truth的尺寸、形状差别较大。

阅读论文《Semantic Segmentation using Adversarial Networks》
原文
在GAN中,有生成器和判别器,生成器生成fake样本然后判别器进行鉴别,随着训练的进行,生成器的fake样本越接近与数据真实分布,判别器也越难分辨真伪。

将GAN用于分割,实际上,基本的分割网络(FCN, DeepLab, PSPNet……)就是GAN中的生成器。换句话说,GAN用于分割不需要另外再构造一个生成网络,传统分割网络就是生成网络。然后在生成网络之后加一个判别网络结构,如图所示:
在这里插入图片描述
左边Segmentor就是传统的CNN-based分割网络,Convnet中可以看到有convolution和deconvolution过程;右边Adversarial network是GAN中的判别器,最后用sigmoid activation进行二分类。

Segmentor这个部分会有两种训练图片输入到右边的Adversarial network中:
组合1:原始训练图片+ground truth, 这时候判别器判别为 1 标签;
组合2:原始训练图片+Segmentor分割结果, 这时候判别器判别为0标签。

然后训练过程就是经典的博弈思想,相互提高网络的ability, 提高分割精度,提高鉴别能力。

论文提出了混合损失函数,讲cross entropy和GAN的损失结合起来了
在这里插入图片描述
对抗训练分成两个步骤迭代,训练思想与EM算法有点像,需要找到两个参数最优相互调整,先固定一个参数,调整另一个参数,再循环迭代。

步骤1&

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/415263
推荐阅读
相关标签
  

闽ICP备14008679号