使用变分变换网络实现文档布局设计的自动化

书面文档中的信息不仅通过其中所含单词的含义来传达,还通过文档的整体布局来传达。布局通常用于指导读者解析文档的顺序,以便更好地理解(例如,使用列或段落)、提供有用的摘要(例如,使用标题)或出于美观目的(例如,显示广告时)。

虽然这些设计规则很容易遵循,但很难明确定义它们,而不需要快速添加例外情况或遇到模棱两可的情况。这使文档设计的自动化变得困难,因为任何具有一组硬编码生产规则的系统要么过于简单,从而无法生成原始布局(导致合成数据的布局缺乏多样性),要么过于复杂,具有大量规则及其伴随的例外情况。为了解决这一挑战,一些人提出 了机器学习 (ML) 技术来合成文档布局。然而,大多数基于 ML 的自动文档设计解决方案无法扩展到大量布局组件,或者它们依赖于其他信息进行训练,例如文档不同组件之间的关系。

在CVPR 2021上即将展示的 “用于布局生成的变分变换网络”中,我们创建了一个文档布局生成系统,该系统可扩展到任意数量的元素,并且不需要任何其他信息来捕获设计元素之间的关系。我们使用自注意力层作为变分自动编码器(VAE)的构建块,它能够将文档布局设计规则建模为分布,而不是使用一组预先确定的启发式方法,从而增加了生成的布局的多样性。由此产生的变分变换网络 (VTN) 模型能够提取布局元素(段落、表格、图像等)之间的有意义的关系,从而生成逼真的合成文档(例如,更好的对齐和边距)。我们展示了这种组合在不同领域的有效性,例如科学论文、UI 布局甚至家具布置。

用于布局生成的 VAE

该系统的最终目标是从一组示例中推断出给定布局类型的设计规则。如果将这些设计规则视为数据的底层分布,则可以使用概率模型来发现它。我们建议使用 VAE(广泛用于图像生成或异常检测等任务)来实现此目的,这是一种自动编码器架构,由两个不同的子部分组成,即编码器和解码器。编码器学习将输入压缩到更少的维度,仅保留重建输入所需的信息,而解码器学习撤消此操作。压缩表示(也称为瓶颈)可以被强制表现得像已知分布(例如,均匀高斯)。将来自这个先验分布的样本输入到网络的解码器部分将产生与训练数据类似的输出。

VAE 公式的另一个优点是它与用于实现编码器和解码器段的操作类型无关。因此,我们使用自注意力层(通常在Transformer架构中看到)来自动捕获每个布局元素对其他元素的影响。

Transformer 使用自注意力层来建模长序列关系,通常应用于一系列自然语言理解任务,例如翻译和摘要,以及语言领域之外的对象检测或文档布局理解任务。自注意力操作将序列中的每个元素与其他元素关联起来,并确定它们如何相互影响。此属性非常适合在布局中建模不同元素之间的关系,而无需显式注释。

为了从这些关系中合成新样本,一些布局生成方法 [例如1] 甚至其他领域 [例如 2、3 ]都依赖于贪婪搜索算法,例如波束搜索、核采样或top-k 采样。由于这些策略通常基于倾向于在每一步都偏向最可能结果的探索规则,因此无法保证生成样本的多样性。但是,通过将自注意力与 VAE 的概率技术相结合,该模型能够直接学习一个分布,从中提取新元素。

变分瓶颈建模

VAE 的瓶颈通常被建模为表示输入的向量。由于自注意力层是序列到序列的架构,即将n 个输入元素的序列映射到n 个输出元素,因此标准 VAE 公式很难应用。受BERT的启发,我们在序列的开头附加一个辅助标记,并将其视为自动编码器瓶颈向量z。在训练期间,与此标记相关联的向量是传递给解码器的唯一信息,因此编码器需要学习如何将整个文档信息压缩在这个向量中。然后,解码器学习仅从这个向量推断文档中元素的数量以及输入序列中每个元素的位置。这种策略使我们能够使用标准技术来规范瓶颈,例如KL 散度。

解码

为了合成元素数量不定的文档,网络需要对任意长度的序列进行建模,这并非易事。虽然自注意力机制使编码器能够自动适应任意数量的元素,但解码器部分事先并不知道元素的数量。我们通过以自回归方式解码序列来克服这个问题——在每一步中,解码器都会生成一个元素,该元素会与之前解码的元素连接起来(以瓶颈向量z作为输入开始),直到生成一个特殊的停止元素。

将布局转换为输入数据

文档通常由多个设计元素组成,例如段落、表格、图片、标题、脚注等。在设计方面,布局元素通常由其封闭边界框的坐标表示。为了让神经网络更容易理解这些信息,我们用四个变量(x、y、宽度、高度)定义每个元素,表示元素在页面上的位置(x、y)和大小(宽度、高度)。

结果

我们根据两个标准评估 VTN 的性能:布局质量和布局多样性。我们在公开可用的文档数据集(例如PubLayNet,一组带有布局注释的科学论文)上训练模型,并通过量化元素之间的重叠和对齐量来评估生成的布局的质量。我们使用元素类别(例如段落、图像等)和边界框分布上的Wasserstein 距离来测量合成布局与训练分布的相似程度。为了捕捉布局多样性,我们使用DocSim指标为每个生成的文档找到最相似的真实样本,其中与真实数据的唯一匹配数量越多,表示结果越多样化。

我们将 VTN 方法与LayoutVAE和Gupta 等人的先前研究进行了比较。前者是基于 VAE 的公式,具有LSTM 主干,而 Gupta 等人使用与我们类似的自注意力机制,并结合标准搜索策略(定向搜索)。下面的结果表明,LayoutVAE 难以遵守设计规则,例如严格对齐,就像 PubLayNet 的情况一样。得益于自注意力操作,Gupta等人可以更有效地对这些约束进行建模,但使用定向搜索会影响结果的多样性。

借据 重叠 结盟 瓦瑟斯坦级 ↓ 瓦瑟斯坦盒子 ↓ # 唯一匹配 ↑

布局VAE  0.171 0.321 0.472 - 0.045 241

Gupta 等人  0.039 0.006 0.361 0.018 0.012 546

虚拟隧道网络 0.031 0.017 0.347 0.022 0.012 697

真实数据  0.048 0.007 0.353 - - -

PubLayNet 上的结果。向下箭头 (↓) 表示分数越低越好,而向上箭头 (↑) 表示分数越高越好。

我们还探索了我们的方法在其他领域学习设计规则的能力,例如 Android UI(RICO)、自然场景(COCO)和室内场景(SUN RGB-D)。我们的方法有效地学习了这些数据集的设计规则,并产生了与当前最先进水平质量相似且多样性程度更高的合成布局。

借据 重叠 结盟 瓦瑟斯坦级 ↓ 瓦瑟斯坦盒子 ↓ # 唯一匹配 ↑

布局VAE  0.193 0.400 0.416 - 0.045 496

Gupta 等人  0.086 0.145 0.366 0.004 0.023 604

虚拟隧道网络 0.115 0.165 0.373 0.007 0.018 680

真实数据  0.084 0.175 0.410 - - -

RICO 上的结果。向下箭头 (↓) 表示分数越低越好,而向上箭头 (↑) 表示分数越高越好。

借据 重叠 结盟 瓦瑟斯坦级 ↓ 瓦瑟斯坦盒子 ↓ # 唯一匹配 ↑

布局VAE  0.325 2.819 0.246 - 0.062 700

Gupta 等人  0.194 1.709 0.334 0.001 0.016 601

虚拟隧道网络 0.197 2.384 0.330 0.0005 0.013 776

真实数据  0.192 1.724 0.347 - - -

COCO 的结果。向下箭头 (↓) 表示分数越低越好,而向上箭头 (↑) 表示分数越高越好。

以下是我们的方法与现有方法相比生成的一些布局示例。网络学习到的设计规则(位置、边距、对齐)与原始数据的设计规则相似,并且表现出高度的可变性。

布局VAE 

1728910127022.jpg

Gupta 等人 

1728910116740.jpg

虚拟隧道网络

1728910098477.jpg

与现有的最先进方法相比,我们在 PubLayNet 上的方法的定性结果。

结论

在这项工作中,我们展示了将自注意力作为 VAE 公式的一部分的可行性。我们验证了这种方法在布局生成方面的有效性,并在各种数据集和不同任务中实现了最先进的性能。我们的研究论文还探讨了集成自注意力和 VAE 的替代架构,探索了非自回归解码策略和不同类型的先验,并分析了优缺点。我们的方法生成的布局可以帮助为下游任务(例如文档解析或自动化图形设计任务)创建合成训练数据。我们希望这项工作为该领域的持续研究奠定基础,因为许多子问题仍未完全解决,例如如何为布局中的元素建议样式(文本字体、选择哪个图像等)或如何减少模型泛化所需的训练数据量。

致谢

我们感谢我们的合著者 Janis Postels 以及 Alessio Tonioni 和 Luca Prasso 帮助我们设计了几个实验。我们还要感谢 Tom Small 帮助制作了这篇文章的动画。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论