| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 猿创征文|Text to image论文精读SD-GAN:文本到图像生成的语义分解Semantics Disentangling for Text-to-Image Generation -> 正文阅读 |
|
[人工智能]猿创征文|Text to image论文精读SD-GAN:文本到图像生成的语义分解Semantics Disentangling for Text-to-Image Generation |
SD-GAN是中科大、香港中文大学、北航等学者2019年提出的一个文本生成图像模型。其通过在鉴别器当中增加孪生机制,并通过语义条件批量归一化来发现不同低级语义的视觉嵌入策略。 论文地址:https://ieeexplore.ieee.org/document/8953563 本博客是精读这篇论文的报告,包含一些个人理解、知识拓展和总结。 一、原文摘要从文本描述合成照片真实感图像是一个具有挑战性的问题。先前的研究表明,在生成图像的视觉质量方面取得了显著进展。在本文中,我们考虑了输入文本描述的语义,以帮助渲染照片真实感图像。然而,不同的语言表达在提取一致的语义方面提出了挑战,即使它们描述了相同的东西。为此,我们提出了一种新的照片真实感文本到图像生成模型,该模型隐式地分解语义,以实现高级语义一致性和低级语义多样性。具体而言,我们设计了(1)鉴别器中的连体机制来学习一致的高级语义,以及(2)通过语义条件化批量归一化来发现不同的低级语义的视觉语义嵌入策略。对CUB和MS-COCO数据集进行的大量实验和消融研究表明,与现有方法相比,该方法具有优越性。 二、为什么提出SD-GAN?与随机噪声、标签图或草图等条件相比,从文本生成图像是一种更自然但更具挑战性的方法,因为(1)语言描述是人类描述图像的自然和方便的媒介,但(2)跨模态文本到图像生成仍然具有挑战性。 以往的方法忽略了一个重要现象:即对同一图像的人类描述在表达上具有高度的主观性和多样性,比如一张图像有多种句式表达方式:this yellow bird’s crown is black and it has speckled wings和a yellow bird has speckled wings and a black crown 意思相同,他们理应形容同一张图像,但大多数模型生成的两张图像如下,其实相差甚远: 语义分解生成对抗网络(SD-GAN)提出了一种新方法有效地利用了生成过程中输入文本的语义。SDGAN从文本中提取语义公域以实现图像生成的一致性,同时保留语义多样性和细节以用于细粒度图像生成。通过SD-GAN,具有相似语言语义的类内对应该生成在鉴别器的特征空间中具有较小距离的一致图像,而类间对必须承受更大的距离。 三、条件批量归一化(CBN)批量归一化(BN)是一种广泛使用的技术,通过针对每个小批量归一化整个网络的激活来改进神经网络训练。通过减少整个网络中的协变量移位,BN已被证明可以加速训练并提高泛化,并在控制图像样式化、视觉推理、视频分割、问答等任务的主网络行为运用。而SD-GAN首先将条件批量归一化运用到图像生成当中。 四、基于语义分解的生成对抗网络SD-GAN4.1、网络结构
4.2、具有对比损失的孪生结构对比损失用于最小化由同一真实图像的两个描述生成的假图像的距离,同时最大化不同真实图像的距离。 分别向孪生结构的两个分支输入两个不同的文本描述。如果从两个分支生成的视觉特征是同一语义的,则两个生成的图像应该相似(即,距离很小)。否则,两个生成的图像应该不同(即,距离较大)。为此,我们采用对比损失从输入描述对中提取语义信息。[12]中首次引入了对比损耗,损失函数公式为: L c = 1 2 N ∑ n = 1 N y ? d 2 + ( 1 ? y ) max ? ( ε ? d , 0 ) 2 L_{c}=\frac{1}{2 N} \sum_{n=1}^{N} y \cdot d^{2}+(1-y) \max (\varepsilon-d, 0)^{2} Lc?=2N1?∑n=1N?y?d2+(1?y)max(ε?d,0)2,其中 d = ∥ v 1 ? v 2 ∥ 2 d=\left\|v_{1}-v_{2}\right\|_{2} d=∥v1??v2?∥2?是来自两个孪生分支的视觉特征向量之间的距离。由于存在噪声,故作者设分支之间最低距离为α(α=0.1),公式转换为: L c = 1 2 N ∑ n = 1 N y max ? ( d , α ) 2 + ( 1 ? y ) max ? ( ε ? d , 0 ) 2 L_{c}=\frac{1}{2 N} \sum_{n=1}^{N} y \max (d, \alpha)^{2}+(1-y) \max (\varepsilon-d, 0)^{2} Lc?=2N1?∑n=1N?ymax(d,α)2+(1?y)max(ε?d,0)2 在对比损失的情况下,通过最小化从同一图像的描述生成的图像之间的距离,并最大化从不同图像的描述产生的图像的距离,来优化此孪生结构。 4.3、语义条件批量归一化(SCBN)SCBN的目的是增强生成网络特征图中的视觉语义嵌入。它使语言嵌入能够通过放大或缩小、否定或关闭视觉特征图等操作视觉特征图 4.3.1、批量归一化(BN)给定 x ∈ R N × C × H × W x \in \mathbb{R}^{N \times C \times H \times W} x∈RN×C×H×W,BatchNorm将每个单独特征通道的平均值和标准差进行归一化: B N ( x ) = γ ? x ? μ ( x ) σ ( x ) + β \mathrm{BN}(x)=\gamma \cdot \frac{x-\mu(x)}{\sigma(x)}+\beta BN(x)=γ?σ(x)x?μ(x)?+β,其中, γ \gamma γ和 β \beta β是从数据中学习的仿射参数,u表示均值, σ \sigma σ表示标准差。 4.3.2、条件批量归一化(CBN)条件批量归一化利用条件线索c学习调制参数 γ c \gamma_c γc?和 β c \beta_c βc?,根据条件信息(如文本、类别等监督信息)进行批量归一化: BN ? ( x ∣ c ) = ( γ + γ c ) ? x ? μ ( x ) σ ( x ) + ( β + β c ) \operatorname{BN}(x \mid c)=\left(\gamma+\gamma_{c}\right) \cdot \frac{x-\mu(x)}{\sigma(x)}+\left(\beta+\beta_{c}\right) BN(x∣c)=(γ+γc?)?σ(x)x?μ(x)?+(β+βc?) 4.3.3、语义条件批量归一化(SCBN)作者将语义条件批量归一化分成了两个方面:Sentence-level和Word-level
五、实验5.1、实验设置数据集:CUB、COCO 5.2、实验结果在CUB上和COCO上进行了实验,实验基于同一真实图像的两个随机选择的文本描述生成图像,图像效果如下所示:
另外作者还设计了大量的消融研究,包括对比损失的α取值、对比损失的阶段数,SCBN的有效性等,详细请看原文。 六、总结SDGAN主要有以下贡献:
最后💖 个人简介:人工智能领域研究生,目前主攻文本生成图像(text to image)方向 📝 关注我:中杯可乐多加冰 🔥 限时免费订阅:文本生成图像T2I专栏 🎉 支持我:点赞👍+收藏??+留言📝 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/28 19:30:34- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |