Constrained Graphic Layout Generation via Latent Optimization(2021)

[Paper] Constrained Graphic Layout Generation via Latent Optimization
[Code] ktrk115/const_layout

通过潜在优化生成约束图形布局
在这里插入图片描述

摘要

在平面设计中,人类根据设计意图和语义在视觉上排列各种元素是很常见的。例如,标题文本几乎总是出现在文档中其他元素的顶部。在这项工作中,我们生成的图形布局可以灵活地结合这种设计语义,无论是由用户隐式指定还是明确指定。我们使用现成的布局生成模型的潜在空间进行优化,允许我们的方法与现有的布局生成模型互补并使用。我们的方法建立在基于 Transformer 架构的生成布局模型上,并将布局生成公式化为一个约束优化问题,其中设计约束用于元素对齐、避免重叠或任何其他用户指定的关系。我们在实验中表明,我们的方法能够使用单个模型在受约束和不受约束的生成任务中生成逼真的布局。

CCS 概念

  • 以人为本的计算→交互设计过程和方法;
  • 应用计算 → 计算机辅助设计。

介绍

视觉媒体内容使用设计布局进行组织,以促进信息的传达。设计布局包括要显示的元素的大小和位置的排列,是平面设计的关键部分。通常,文章以文本标题开头,然后是标题和正文,通常按从上到下的顺序排列。移动用户界面以给定的显示分辨率和流畅的布局清晰地排列导航、图像、文本或按钮。元素的语义关系、优先级和阅读顺序是由平面设计师在考虑设计的整体视觉美感的同时谨慎决定的。缺乏经验的设计师经常面临制作高质量演示文稿的困难,同时传达指定的信息并保持基本的设计考虑,例如对齐或重叠。设计约束可以是内部的,源自个人的设计经验和偏好,也可以是外部的,例如视觉媒体法规和客户要求。自动搜索合理的布局候选,例如我们在本文中提出的,可以极大地帮助设计过程。

在计算机图形社区 [23, 24] 中,已经进行了几次尝试来自动生成图形布局。最近的研究 [1, 12, 17] 使用无约束的深度生成模型表明能够生成合理的布局,这要归功于设计示例的大规模数据集。一些工作明确引入了设计约束,例如通过额外的损失或调节来避免对齐或重叠 [16, 18]。然而,在学习目标中集成约束的一个缺点是,当出现用户希望合并的新约束时,模型必须适应新条件或新损失。相反,我们选择在生成模型的潜在空间中执行优化,以补充并允许使用现有的现成模型。

在这项工作中,我们提出了一个新的框架,我们称之为通过潜在优化生成约束布局 (CLG-LO),它将约束布局生成定义为模型潜在空间中的约束优化问题。所提出的框架的概述如图 1 所示。在我们的方法中,我们使用在无约束设置和模型用户规范中训练的生成对抗网络 (GAN) 作为约束优化程序。我们使用迭代算法优化无约束模型的潜在代码,以找到满足指定约束的布局。我们的框架允许用户使用单个预训练的 GAN,并根据需要将各种约束合并到布局生成中,从而消除了重新训练模型的计算成本高昂的需求。

尽管我们的方法可以与现成的生成布局模型一起使用,但除了 CLG-LO 框架之外,我们还提出了一个基于 Transformer [32] 的布局 GAN 模型,我们将其命名为 LayoutGAN++。生成器和判别器中的 Transformers 都可以很好地捕获元素之间的关系。借助辅助布局重建[19]对鉴别器的表示学习的帮助,LayoutGAN++显着提高了LayoutGAN [17]在无约束布局生成方面的性能。

我们使用三个图形布局的公共数据集验证了我们提出的方法。我们设计了两个类似于实际用例的约束生成设置。在无约束的生成任务中,LayoutGAN++ 获得了与现有方法相当或更好的结果。使用 LayoutGAN++ 作为后端模型,CLG-LO 在约束生成任务中显示出显着的改进。

我们将我们的贡献总结如下:

  • 通过优化潜在代码来生成满足给定约束的布局的框架。
  • 一种用于布局 GAN 的架构和方法,可实现稳定的训练和生成高质量的布局。
  • 使用公共数据集进行无约束和约束布局生成的广泛实验和最先进的结果。

相关工作

布局生成

有几项关于生成布局的研究,无论是否有用户规范。经典优化方法 [23, 24] 手动设计具有大量约束的能量函数,布局应满足这些约束。最近的工作利用神经网络来学习布局的生成模型。LayoutVAE 训练了两种类型的变分自动编码器 (VAE) 来生成给定标签集的边界框 [12]。LayoutGAN 通过使用线框渲染器来训练关系生成器,该渲染器对边界框进行光栅化,并允许使用基于像素的鉴别器进行训练 [17]。后来,LayoutGAN 被扩展为包括属性条件[18]。郑等人[37] 报告了一个以给定图像、关键字和属性为条件的光栅布局生成器。READ [27] 训练了一个分层自动编码器来生成文档布局结构。李等人[16] 提出了基于图的网络,称为神经设计网络 (NDN),它从部分用户规范中明确推断元素关系。最近,Gupta 等人[8] 描述了一个基于 Transformer 的模型来生成各个领域的布局。此外,Arroyo 等人 [1] 报告了一个 VAE 模型,该模型使用自注意力网络生成布局。除了平面设计布局外,还研究了生成室内场景布局[10,29,35]。

我们的工作同时考虑了无约束的生成 [1, 8] 和约束的生成 [16, 18]。我们基于 LayoutGAN [17] 构建不受约束的布局生成器,并将用户布局规范作为约束应用于学习生成器。与 NDN [16] 不同,我们只需要一个模型来生成约束布局。

潜在空间开发

随着使用深度生成模型 [13, 14] 在图像合成方面的最新进展,许多利用潜在空间的研究都是在图像领域进行的。在实际图像编辑中,主流研究涉及将目标图像投影到潜在空间中,并在学习的流形上使用用户输入执行非平凡的图像编辑 [2, 39, 40]。潘等人[25] 还使用了 GAN 学习到的自然图像先验,并以统一的方式将它们应用于各种图像恢复任务,例如修复和着色。梅农等人[21] 搜索高分辨率人脸照片的潜在空间,实现低质量照片的超分辨率。

深度生成模型中潜在变量的利用在非图像领域的研究较少。Umetani [31] 提出了一种交互式界面,该界面使用学习的自动编码器通过调整潜在变量来查找 3D 模型的形状。施鲁姆等人[30] 提出了一个由交互式进化搜索和直接操纵潜在变量组成的界面,用于游戏关卡设计。邱等人[5] 提出了一种使用学习生成模型以人类在环方式有效探索潜在空间的方法,并在生成图像、声音和 3D 模型的任务中对其进行了验证。

我们的布局生成方法共享潜在空间探索的概念,并且我们寻求找到布局的潜在表示,以使生成的布局满足用户指定的约束。

方法

我们的目标是从用户指定的一组元素标签和约束中生成语义上合理且高质量的设计布局。我们首先训练了一个无约束的布局生成模型,称为 LayoutGAN++,然后将该模型用于约束生成任务。

LayoutGAN++

在无约束生成中,我们采用一组元素并为每个元素分配大小和位置。我们遵循 LayoutGAN [17] 并在下面制定我们的模型,我们将其称为 LayoutGAN++。形式上,我们的生成器 𝐺 : ( 𝑍 , 𝐿 ) ↦ 𝐵 𝐺 : (𝑍, 𝐿) ↦ 𝐵 G:(Z,L)B 采用一组随机生成的代码 𝑍 = { z 𝑖 } 𝑖 = 1 𝑁 𝑍 = \{z_𝑖 \}^𝑁_{ 𝑖=1} Z={zi}i=1N 和一组条件标签 𝐿 = { { 𝑙 𝑖 } } 𝑖 = 1 𝑁 𝐿 = \{\{𝑙_𝑖 \}\}^𝑁_{𝑖=1} L={{li}}i=1N 作为输入 , 并输出一组边界框 𝐵 = { b 𝑖 } 𝑖 = 1 𝑁 𝐵 = \{b_𝑖 \}^𝑁_{𝑖=1} B={bi}i=1N ,其中 b 𝑖 ∈ [ 0 , 1 ] 4 b_𝑖 ∈ [0, 1]^4 bi[0,1]4 表示元素在归一化坐标中的位置和大小。 𝑁 𝑁 N 是布局中元素的数量, 𝑍 、 𝐿 𝑍、𝐿 ZL 𝐵 𝐵 B 中的下标 𝑖 𝑖 i 指的是相同的第 𝑖 𝑖 i 元素。标签 𝑙 𝑙 l的定义取决于数据集; 例如,PubLayNet 数据集中的文本或表格元素。我们的鉴别器 𝐷 : ( 𝐵 , 𝐿 ) ↦ 𝑟 ∈ [ 0 , 1 ] 𝐷 : (𝐵, 𝐿) ↦ 𝑟 ∈ [0, 1] D:(B,L)r[0,1] 将生成的边界框 𝐵 𝐵 B 和条件标签 𝐿 𝐿 L 作为输入,并输出一个量化布局真实性的标量值,并尝试重建 给定内部表示的边界框。我们在图 2 中展示了我们模型的整体架构。

在这里插入图片描述

Generator

我们的生成器由以下部分组成:
在这里插入图片描述
其中 𝑓 e n c 𝑓_{enc} fenc 𝑓 d e c 𝑓_{dec} fdec是多层感知器, h 𝑖 h_𝑖 hi h 𝑖 ′ h^′_𝑖 hi是每个元素的隐藏表示, θ \theta θ是生成器的参数。 我们采用 Transformer 块 [32] 来学习元素之间的关系表示,而 LayoutGAN [34] 则利用基于点积的非局部块和残差连接。

Discriminator

我们的鉴别器与我们的生成器具有相似的架构。
在这里插入图片描述
其中 h c o n s t h_{const} hconst 是附加到隐藏元素表示的特殊可学习嵌入, h c o n s t ′ h'_{const} hconst是 Transformer 块之后可学习嵌入的相应输出, 𝑦 𝑦 y 是评估给定输入真实性的量, ϕ \phi ϕ 是 鉴别器。 我们不使用 LayoutGAN [34] 的线框渲染器,因为我们发现光栅域鉴别器在数据集大小有限的情况下变得不稳定。 我们在实验中与 LayoutGAN 进行了比较。

Auxiliary Decoder

我们凭经验发现,在文档等对齐良好的布局域中,判别器被训练为对对齐敏感而对位置趋势不太敏感,即它只关心元素是否对齐,而不关心不寻常的布局,例如 将标题元素放在底部。遵循 Liu 等人的自我监督学习[19],我们对鉴别器应用额外的正则化,以便鉴别器了解位置趋势。 我们添加一个辅助解码器来重建从内部表示 h c o n s t ′ h'_{const} hconst 给判别器的边界框:
在这里插入图片描述
其中 p 𝑖 p_𝑖 pi 是使用 [0, 1] 的均匀分布初始化的可学习位置嵌入, b ^ 𝑖 ∈ 𝐵 ^ \hat{b}_𝑖 ∈ \hat{𝐵} b^iB^ 是重构的边界框, 𝑙 ^ 𝑖 ∈ 𝐿 ^ \hat{𝑙}_𝑖 ∈ \hat{𝐿} l^iL^是重构标签, ξ \xi ξ 是辅助解码器的参数 。

Training objective

我们模型的目标函数如下:
在这里插入图片描述
我们用 L r e c L_{rec} Lrec 表示重建损失。 重建损失测量两组边界框和标签之间的相似性,我们对边界框使用均方误差,对标签使用交叉熵。 我们通过首先按照ground-truth位置的字典顺序对边界框进行排序来计算重建损失[4]。

通过潜在优化 (CLG-LO) 生成约束布局

让我们考虑一下何时存在用户指定的约束,例如元素 A 必须高于元素 B。从生成器的角度来看,这样的约束限制了可用的输出空间。 我们在受约束的优化问题中制定了具有用户规范的生成。 给定一个预训练的生成器 𝐺 ^ \hat{𝐺} G^和鉴别器 𝐷 ^ \hat{𝐷} D^,以及一组约束 𝐶 𝐶 C,我们定义关于潜在代码 𝑍 𝑍 Z的约束最小化问题:
在这里插入图片描述
直觉是我们寻求找到对判别器看起来尽可能真实并满足用户指定约束的边界框。 一旦找到最佳潜在代码 𝑍 ∗ 𝑍^* Z,我们就可以获得满足如下约束的边界框 𝐵 ∗ 𝐵^* B
在这里插入图片描述
我们使用增强拉格朗日方法[22],这是解决非线性优化问题的广泛使用的算法之一。 在该方法中,将约束问题转化为优化增强拉格朗日函数的无约束问题,该函数结合了拉格朗日函数和惩罚函数。
让我们在方程式中重写 𝑓 ( 𝑍 ) = − 𝐷 ^ ( 𝐺 ^ ( 𝑍 , 𝐿 ) , 𝐿 ) 𝑓(𝑍) = −\hat{𝐷} (\hat{𝐺}(𝑍, 𝐿), 𝐿) f(Z)=D^(G^(Z,L),L) h 𝑛 ( 𝑍 ) = 𝑐 𝑛 ( 𝐺 ^ ( 𝑍 , 𝐿 ) ) ℎ_𝑛 (𝑍) = 𝑐_𝑛 (\hat{𝐺}(𝑍, 𝐿)) hn(Z)=cn(G^(Z,L))(12) 为简洁起见,我们定义以下增广拉格朗日函数 L A L_A LA
在这里插入图片描述
其中 λ \lambda λ是拉格朗日乘数, μ > 0 \mu > 0 μ>0 是对二次函数加权的惩罚参数。

该方法根据违反约束的程度更新拉格朗日乘子,逐渐增大惩罚参数,使约束的影响更大。
𝑘 𝑘 k为当前迭代,更新方程表示为
在这里插入图片描述
其中 α \alpha α是预定义的超参数。

算法 1 总结了我们方法的过程。 我们重复主循环,直到违反约束的数量足够小或迭代计数达到最大迭代次数 𝑘 m a x 𝑘_{max} kmax。 我们在实验中设置 α = 3 、 μ 0 = 1 、 λ 0 = 0 \alpha = 3、\mu_0 = 1、\lambda_0 = 0 α=3μ0=1λ0=0 𝑘 m a x = 5 𝑘_{max} = 5 kmax=5。 对于内部优化器,我们使用学习率为 0.01 的 Adam [15] 或初始 sigma 值为 0.25 的 CMA-ES [9],并且都运行 200 次迭代。 我们在 4.4 节中比较了哪个优化器产生更好的解决方案。
在这里插入图片描述

在实践中,直接优化鉴别器的输出值可能会产生一个对抗样本,即鉴别器认为它是真实的,但在感知上会退化。 为了避免这种情况,我们根据某个阈值钳制鉴别器的输出值。 具体来说,我们使用 𝑓 ( 𝑍 0 ) 𝑓 (𝑍_0) f(Z0) 作为阈值,并且 𝑓 ′ ( 𝑍 ) = m a x ( 𝑓 ( 𝑍 ) − 𝑓 ( 𝑍 0 ) , 0 ) 𝑓 ′ (𝑍) = max (𝑓 (𝑍) - 𝑓 (𝑍_0), 0) f(Z)=max(f(Z)f(Z0),0) 代替方程式(14)中的 𝑓 ( 𝑍 ) 𝑓 (𝑍) f(Z)

实验

我们在无约束和有约束的布局生成任务上评估所提出的方法。 我们首先描述数据集和评估指标,然后解释每个任务的实验设置。

数据集

我们评估不同类型图形设计的布局生成。我们使用三个公开可用的数据集:Rico [7, 20] 提供从移动应用程序收集的 UI 设计,PubLayNet [38] 编译文档图像数据集,Magazine [37] 收集杂志页面。根据之前的研究 [16, 17],我们排除了标签不在 Rico 数据集中 13 个最常见标签中的元素,并排除了 Rico 和 PubLayNet 数据集中超过 10 个元素的布局。 对于 PubLayNet 数据集,我们使用 95% 的官方训练拆分用于训练,其余用于验证,以及官方验证拆分用于测试。 对于 Rico 和 Magazine,由于没有官方数据拆分,我们使用 85% 的数据集进行训练,5% 用于验证,10% 用于测试。 我们在表 1 中总结了数据集的统计数据。
在这里插入图片描述

评价指标

我们使用四个指标来衡量生成布局的质量:Fréchet Inception Distance (FID) [11]、Maximum Intersection over Union (IoU)、Alignment 和 Overlap。

FID

为了计算 FID,我们需要定义布局的代表性特征。 我们遵循 Lee 等人的方法[16],并训练神经网络在真实布局和添加噪声的布局之间进行分类,并使用网络的中间特征。与 [16] 的一个不同之处在于,我们在第 3.1.3 节的学习中加入了辅助解码器,这样经过训练的网络就知道对齐和位置。 在表 2 中,我们展示了针对不同目标学习的网络中 FID 的比较; Class 只是真/假分类,Recon 只是辅助重建,Class+Recon 是用两个目标来学习的。 两个目标的结合提高了对不同布局布置的敏感性。
在这里插入图片描述

Maximum IoU

最大 IoU 在生成的布局和引用的两个集合之间定义。 我们首先定义两个布局之间基于 IoU 的相似性 𝐵 = { b i } 𝑖 = 1 𝑁 𝐵 = \{b_i\}^𝑁_{𝑖=1} B={bi}i=1N 𝐵 ′ = { b ′ i } 𝑖 = 1 𝑁 𝐵′ = \{b′_i \}^𝑁_{𝑖=1} B={bi}i=1N。 我们考虑 𝐵 和 𝐵 ′ 之间的最佳匹配,然后计算边界框的平均 IoU。 让 π ∈ S 𝑁 \pi ∈ S_𝑁 πSN 是一对一匹配,并且 S 𝑁 S_𝑁 SN 是大小 𝑁 的一组可能排列。请注意,我们只考虑两个具有相同标签的边界框之间的匹配,即 𝑙 𝑖 = 𝑙 π ( 𝑖 ) ( 1 ≤ 𝑖 ≤ 𝑁 ) 𝑙_𝑖 = 𝑙_{\pi (𝑖)} (1 ≤ 𝑖 ≤ 𝑁) li=lπ(i)(1iN)。 关于最优匹配的相似度计算为
在这里插入图片描述
其中 I o U ( ⋅ , ⋅ ) IoU(·,·) IoU(,) 计算边界框之间的 IoU。 为了评估生成的布局 B = { 𝐵 𝑚 } 𝑚 = 1 𝑀 B =\{𝐵_𝑚\}^𝑀_{𝑚=1} B={Bm}m=1M 和参考 B ′ = { 𝐵 𝑚 ′ } 𝑚 = 1 𝑀 B^′ = \{𝐵^′_𝑚\}^𝑀_{𝑚=1} B={Bm}m=1M 之间的相似度,我们计算最佳匹配的平均相似度:
在这里插入图片描述
我们只考虑具有相同标签集的两个布局之间的匹配,即 𝐿 𝑚 = 𝐿 π ( 𝑚 ) ( 1 ≤ 𝑚 ≤ 𝑀 ) 𝐿_𝑚 = 𝐿_{ \pi(𝑚)} (1 ≤ 𝑚 ≤ 𝑀) Lm=Lπ(m)(1mM)。 我们使用 SciPy [33] 提供的求解器 [6] 来解决分配问题。

Alignment and overlap

我们使用之前工作中使用的对齐和重叠指标 [18]。 我们通过使用元素数量 𝑁 𝑁 N 进行归一化来修改原始指标。

不受约束的布局生成

设置

我们使用 LayoutGAN [17] 和 NDN [16] 作为基线。尽管 LayoutGAN 旨在用于无条件设置,但我们将模型调整为以标签集输入为条件。 我们将使用线框渲染鉴别器的模型称为 LayoutGAN-W,将使用基于关系的鉴别器的模型称为 LayoutGAN-R。NDN首先生成元素之间的位置和大小关系,然后根据这些关系生成边界框,最后修改框的错位。 我们将其表示为 NDN-none 以匹配他们论文中的名称,因为我们的设置没有指定关系。我们重新实现了所有基线,因为基线的官方代码不公开1。 我们用 PyTorch [26] 实现了我们的 LayoutGAN++。 我们使用 Adam 优化器训练模型,迭代次数为 200,000,批量大小为 64,学习率为 1e-5,使用 NVIDIA GeForce RTX 2080Ti 的 GPU 耗时 6 小时。 我们的 Transformer 模块由 8 个块组成,在每个块中,我们将输入/输出维度设置为 256,隐藏层的维度设置为 128,多头注意力的数量设置为 4。

结果

我们总结了表 3 中的定量比较和图 3 中的定性比较。由于所有比较方法都是随机的,我们报告了使用相同训练模型的五次评估的平均值和标准差。关于 LayoutGAN [17],我们发现 LayoutGAN-W 训练不稳定,尽管我们做出了努力,但未能像他们的论文中那样重现结果,这在最近的研究 [1, 8] 中也有类似报道。我们的结果表明,LayoutGAN-R 的训练非常稳定,并且优于 LayoutGAN-W。 我们的 LayoutGAN++ 取得了与当前最先进的方法 NDN-none [16] 相当或更好的结果,特别是在 Rico 数据集上的结果是相似的,而在 PubLayNet 数据集和 Magazine 数据集上的结果有利于我们 方法。
在这里插入图片描述
在这里插入图片描述

具有美化约束的布局生成

此设置的目标是生成没有重叠的对齐良好的布局,可以作为后处理来美化无约束布局生成的结果。 我们使用 PubLayNet 数据集进行实验,其中大多数布局是对齐的并且几乎没有重叠。

约束条件

𝑔 a l i g n 𝑔_{align} galign 是计算对齐度量的函数,我们将对齐约束表示为:
在这里插入图片描述
其中𝜏是一个阈值参数。 我们在实验中设置 𝜏 = 0.004。 我们使用重叠度量作为非重叠约束 𝑐 o v r l p 𝑐_{ovrlp} covrlp

设置

我们在我们提出的 CLG-LO 框架中使用预训练的 LayoutGAN++ 模型来执行受限任务。 我们遵循与第 4.3 节中相同的设置来训练 LayoutGAN++。我们比较了两种不同的内部优化器,Adam [15] 和 CMAES [9]。Adam 的 CLG-LO 平均运行时间为 13.6 秒(SD:11.2),CMA-ES 为 1.45 秒(SD:1.75)。

由于文献中没有针对此设置的直接可比方法,我们设计了一个称为 CAL 的基线,它使用约束作为额外损失,参考类似的工作 [18]。 为了实例化 CAL,我们训练 LayoutGAN++,同时将对齐约束 𝑐 a l i g n 𝑐_{align} calign 和非重叠约束 𝑐 o v r l p 𝑐_{ovrlp} covrlp 添加到生成器目标中,这鼓励生成的布局满足约束,但不明确强制执行它们。

结果

我们在表 4 中总结了量化比较。基础模型是没有美化的 LayoutGAN++。可以看到 CAL 在 Alignment 和 Overlap 方面比基线表现更好,这要归功于增加的损失。 FID 和最大 IoU 也得到了改进,这可能是由于表示为附加损失的归纳偏差,使得 GAN 更容易训练。 我们的 CLG-LO 进一步显着改进了 Alignment 和 Overlap,在 FID 和最大 IoU 方面几乎没有下降。 至于内部优化器的选择,CMA-ES 似乎比 Adam 表现得更好。 我们怀疑由于增广拉格朗日函数(等式(14))具有许多局部解,因此基于总体的全局无梯度优化方法,例如 CMA-ES,比基于梯度的方法更合适, 例如,Adam。
在这里插入图片描述

我们在图 4 中展示了 CLG-LO 使用 CMA-ES 作为内部优化器的优化结果。我们的框架成功地找到了对齐且不重叠的布局。 我们将 CMA-ES 的初始 sigma 参数设置得更小,以便围绕初始潜在代码进行探索,这导致优化的布局与初始布局相比没有显着变化。
在这里插入图片描述

具有关系约束的布局生成

在此设置中,我们考虑用户指定布局中元素的位置和大小关系的场景。 我们考虑三种尺寸关系,更小、更大和相等,以及五种位置关系,上、下、左、右和重叠。 我们还定义了与画布的关系,例如,定位在画布的顶部。 我们从地面实况布局中确定关系,并将其子集用作约束。 我们更改用作约束的关系的百分比并报告违反约束的比率。

约束条件

尺寸约束 𝑐 s i z e 𝑐_{size} csize 被定义为所有尺寸关系的成本函数的总和。 例如,假设用户指定第 𝑗 𝑗 j 元素必须大于第 𝑖 𝑖 i 元素,则较大关系的成本函数定义为:
在这里插入图片描述
其中 𝑎 ( ⋅ ) 𝑎(·) a()是计算给定边界框面积的函数, γ \gamma γ是在大小关系中共享的容差参数。
我们在实验中设置 𝑟 = 0.1 𝑟 = 0.1 r=0.1

我们还以相同的方式定义位置约束 𝑐 l o c 𝑐_{loc} cloc。 例如,假设用户指定第 𝑗 𝑗 j 元素必须在第 𝑖 𝑖 i 元素之上,则上述关系的成本函数定义为:
在这里插入图片描述
其中 𝑦 t ( ⋅ ) 𝑦_t (·) yt() 𝑦 b ( ⋅ ) 𝑦_b(·) yb() 是分别返回给定边界框的顶部和底部坐标的函数。

设置

我们将我们的 CLG-LO 与 NDN [16] 进行比较。 在 CLGLO 中,我们使用 CMA-ES 作为内部优化器,因为它在美化约束的实验中效果很好。 其余设置遵循美化约束的实验,但为了公平比较,我们没有使用美化约束本身。 CLG-LO 的平均运行时间为 1.96 秒 (SD: 3.48)。

结果

我们在图 5 中展示了定性结果,在表 5 中展示了定量比较。我们报告了使用表 5 中所有关系的 10% 的设置的结果,我们认为这将代表一个现实的使用场景。使用大约 10% 关系的典型示例是图 5 中的左上角。我们的 CLG-LO 的性能与 NDN 相当或更好,特别是在约束违反指标方面表现出显着改进。 这是意料之中的,因为 NDN 不保证推断结果满足约束条件,而我们的方法试图通过迭代优化找到满足尽可能多的约束条件的解决方案。
在这里插入图片描述
在这里插入图片描述
我们还在图 6 中展示了改变所用关系百分比的实验结果。 我们可以发现,随着使用的关系数量的增加,NDN 的表现更好,这是合理的,因为它的布局生成模块是用真实布局的完整关系图训练的。另一方面,随着使用的关系数量的增加,我们的 CLG-LO 表现不佳,因为找到满足约束的解决方案变得更加困难。 当没有找到解决方案时,一个实际的补救措施是为算法 1 中的主循环的每次迭代存储一个布局,并让用户根据约束满足和布局质量之间的权衡来选择一个。 然而,我们注意到,我们的方法在用户指定的关系数量很少的实际场景中表现最好。
在这里插入图片描述

结论和讨论

在本文中,我们提出了一种称为通过潜在优化生成约束布局 (CLG-LO) 的新框架,该框架通过优化预训练 GAN 的潜在代码来执行约束布局生成。 虽然现有的工作将约束视为附加目标或条件,但在涉及意外约束时需要重新训练,但我们的框架可以使用单个无约束 GAN 灵活地结合各种约束。 虽然我们的方法适用于大多数生成式布局设计模型,但我们还提出了一种名为 LayoutGAN++ 的新布局生成模型,它能够在无条件生成方面优于现有方法。 使用三个公共数据集对无约束和约束生成任务的实验结果支持了所提出方法的有效性。

虽然我们的方法在许多情况下能够显着优于现有方法,但考虑到优化问题的非凸性和复杂性作为方程中的目标和约束函数。 (12) 涉及复杂的非线性神经网络,我们无法保证该方法的收敛性。 当约束的数量变大时(图 6),优化器在寻找好的解决方案时可能会遇到问题,并且性能不如现有方法。 然而,一般来说,大多数用户不会指定非常多的约束,在这些情况下,我们的方法明显优于现有方法。 我们认为,可以通过改进优化方法本身、使用分段凸近似或改进优化变量的初始化来减轻这种影响。 设计一个要求用户删除或更改困难约束的交互也是可行的。

我们基于优化的方法使我们不仅可以灵活地更改约束函数,还可以更改目标函数。
例如,如果我们希望限制变化量,我们可以添加优化前后框之间的距离作为目标函数的惩罚。 我们的方法也可以应用于任何可以通过操纵潜在变量来生成各种合理布局的模型。 请注意,当与基于 VAE 的模型 [1、12、16] 一起使用时,这些模型没有明确的函数来衡量生成的布局的质量,它变成了一个约束满足问题。 我们的方法在这种情况下仍然有效,但如果结果的质量有问题,可能需要训练一个额外的测量网络,如鉴别器。

有许多开放的改进方向,例如将近似人类感知的模型合并为约束 [3, 36] 以产生更美观的结果。 考虑到布局的多样性来探索潜在代码是另一个令人兴奋的方向[28],它允许通过各种替代方案进行有效的设计探索。 此外,值得研究的是,我们提出的 CLG-LO 方法是否可以应用于布局设计以外的生成问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值