文/缺月


概述


关于一些规划和端上展现的场景,布局都是一个十分重要的环节。在一个规划上的布局中,首要咱们会对根底元素定一些分类,这些分类的维度能够取决于当时的场景,比方把元素划分红图片,3 5 w R f s = i文字,或是把元素划分为标题,阶段等。一同,每个元素会有其在这个规划文档中的相应的方位。结合最近的一些样本生成和样本5 A ~ f –增强的研讨,如何能够规划一个模型,主动的生成一些布局就成为了研讨的一个方向。

‘READ: Recursive Autoencoders for Document Layout Ge* v & b E Gneration’ 这篇论文提出了一种运用递归神经网络和自编码器结合的办法从随机的高斯分布中主动生成不同的布局,一4 o u同,引入了一个组合度量办法来衡量办法的好坏。后面的篇幅中咱们将首要介绍这篇文章的办法以及在前端场景落地的一些Y N c Y考虑,关于论文,有爱好的读者能够进一步在此阅览。

递归神经网络和自编码器

在介绍这+ c x R篇文章之前,我想要简略的介绍一些递归神经网络 (RVNN) 和 变分自编码器 (VAE) 这两种技能,这里只是一个概述,读者能够通过查阅材料对这两种技能进行更深化的了解。

递归神经网络

递归神= ~ v |经网络乍一听或许很像循环K V E V P k神经网络,正好两者又都能够称作 RNN,也都能够处理变长的数e ` V ; * M据,但是内涵的思维仍是不一样的。其本质要处理是样本空间蕴含着树或许图状结构这一类问题。

如上图所示,关于每一次神经网络的输入来说,都是两个向量,这里边咱们把它叫做子向量,经过网* { 5 _ N ^ B络的前向运算之后,将生成一个父向量,然后这个父向量再和另k r @ j L L R T e一个子节点进入网络,产出一个向量,这样子就形成了一个递归的进程,终究会生成一个根结点或许叫根向量

比方如上这个比如,如果每一个叶子节点都是一个词语的表达,那么终究练习出来的网络就能够把这些Q ? n w , y词终究合为语义空间的一个向量,这个向量能够代表这句话,一同也意味着附近的向量能够表达相同的语义。

VAE

VAE 是自编D N * + F T b K码器的一种,相信了解 GAN 的读者也相同对 VAE 很熟悉了,先简略介绍一下自编码器

自编码器大约的思维便是说今天假设你j y H z M ^有两个网络,第一个网络担任将一个高维空间的向量 x 映射到一个低维7 4 q 4 _ G ~空间的向量 z,例如图中的咱们把图片映射到一个一维的向量, 然后第二个网络担任把这个 z 向量再映射到一个高维空间的向量 x 9 p a A /1, 咱们练习的方针便是 x 和7 . b x ` x1 要尽或许的附近。这样一来,咱们就能够认为这个 z 向量= e t E @Z z Z g ~ n = x 的一种表明,相同,咱们把练习好的 x1 拿出来也就成为了一个生成网络,能够生成 z 表明的相应的图片。

而 VAE 在自B S B ` v 9 % 6 M编码器上做了一些改进,VAE 即使便是在自编码器的根底上让 encoder 再额外产生一个 varaince 的随机~ T *向量,一同这个 varaince 和 z 组合起来一同进入下一步然后让模型愈加稳定

怎样表明练? 0 ) 5 m u l ~ f习数据

q Z 1 = t g处理主动生成布局的问题,首要咱们* 0 b D p Q需求一种表明数据的办法。在这个研讨中,咱们的原始数据是一些规划文档和这个文档相应的每个根底元素的分类和方位大小,也便是注解。现在,为了练习咱们的递归神经网络,咱们需求一] 4 L E p –种办法把这些注解进行结构化的拆解,转化成相应的练习数据。

如上图所示,为了更好的适配递归网络,咱们首要把数据转化[ z P x t为二叉树的方式,咱们会对规划文档进行从左到右,从上到下的扫描,关于每个根底元素,实践就相当于一个叶子节点,然后按照扫描的顺序自下而上 (bottom top)q @ ` = 1 q & 进行节点的兼并,兼并后的节点咱们称之为内部节点,这样,终究就会兼并成为一个根结点。注意,每个内部节点实践上有一个相对方位的信息,便是兼并前的两个元素的相对方位,能够分为 right, bottom right, bottom, enclosed, b* [ Lottom left 等。每个叶子节点的 bounding box 的宽高w 5 N I Q , m都会首要被归一化到 [0, 1] 中

递归模型搭建

关于练习数据,咱们会把每个叶子K . / 8 : ! 0 : C节点的宽高和分类信息衔接成一个向量,宽高数值在 [0, 1] 之间,分类是一个 one-hot vector,然后咱们运用一个单层的h = $神经网络把这个衔接向量映射成一个 n-D 稠密向量中,n 在论文中介绍的经验值为 300。这样,实践上输入的便是一个 300 维的向量

编码器 (spatial relationship encodeT u [ Or SRE)

递归网络中的编码器实践上便是一个多层感知器,在论文中这个感知器的躲J T = o藏层一般只要一到两层,这个感知器输入为两个节点,输出为兼并后的节点

如公式所示,x1 x2 便是输入的两个节点的 n_D 向量,r 代表两个向量的相对f o R 1 _ y方位,以左边的那个元素为基准。f 函数表明当时编码器的多层感知器的表达式。这样不断的在递归网络中进行编码,终究兼并成一个代表根节点的向量

解码器 (spatial relationship decoder SRD)

很简略,解码器便是上面的一个向进程,把父节点, p ` # A再给分解成两个节点

在递归中,关于编码器和解码器是能够同一个重E j 5 [复运用的,例如能够根据相对方位的类别分红不同的编码器和k O H解码器,相同类别的服用同一个网络进行练习,一同咱们能够练习] 2 c I ! ]一个神t E E G _ – J ] U经网络来判别当时节点应该仍是内部节点仍是叶子节点,如果是内部节点,那么将持续解码,如果是叶子节点,则把节点映射成为元素的 bounding box 和分类。

练习模型

在咱们模型确定好了之后现在咱们来界说练0 b q : n m x F习的丢失函数,咱们先来看一下表达式

达标了叶子节点的 recoI 4 ( J b = R 8 Znstruction error, 意思也? B – V便是一开端叶子节点的向量和终究解码器解码回来的叶子节点向量的不同。


衡量了相m Y K C O 7 M 对方位的 reconstruction error,R ^ V 也便是一开端的相对方位和解码器解码回来的相对方位的向量的不同。


衡量了相对方位类别的分类丢失,也便是v T一个规范的交叉熵丢失函数。


是终究根节点的向量所代表的空间 p(z) 和规范高斯分布 qC 3 d ; [ * K j ((z) 的一个 KL diverge# I u Z knce,这是因为咱们终究期望咱们解码器的输入是一个从高斯分布 sample 出2 K x K !来的一个随机向量,然后模型能够主动的生h I R } $ % a N成一个布局,所以咱们期望根节点的向量能够尽或许的像高斯分布

具体上面的四个丢失函数的式子我在这里就不逐个赘述了,方式; 3 R! , F ? = ~ % (十分的简略,通过这一个合成的丢失函数,咱们就能够开端练习咱们的模型啦

衡量模型

这篇文章提供了他们自己的衡量办法,他们把这套办法命名为 DocSim, 望文生义便是衡量文档的类似度。这套办法实践上是根据 BLEU 办法的,也便是用来衡量翻译系统的一套计划。DocSim 类似地比较了两@ t g / a个给定的文档, D,D’ , 关于任意一对 bound^ l x I + v = h (ing bo4 % } B {x BU ! Z ∈ D 和 B’ ∈ D,咱们分配一个方针衡量 B 和 B’ 在形状,方位和分类上有多类似,终究的衡量分数便是这个把许多对 bounding box 的衡量方针的总权重。

实验数据集


ICDAR2015 数据集


ICDAR2015 数? % $ } V据集是一套揭露的数据集,包含 478 个规划文档,首要是杂志文章。关于这些文档Z 2 O 0 d D u s u,咱们考虑以下语义类别: 标题、阶段、页脚、页码和图形。

User-Solicited (US) 数据集


一个包含了 2036 的规划文档的数据集,首要是一些用户提交表) n 7 F & q [ r达的数据,包括税务表格和银行申请p t 0 g T o 2 0等。这些文件通常表现出高度杂乱的结构和很多的原子元素类型。这些h A 2 { M &特性为生成模型生成文档提出了一个挑战

实验成果

这是将这篇论文中提出的办法和 probabilistic approach 在 ICDAR 数据集p O n a比较的成果,数g E o X & 3 %值表明 latk b P o ! F $ hent distribution 的类似性,能够看出论文中提出的办法是更优的

这是这篇论文的办法和 LayoutGAN 比较的成果K j l B f c 6 * O,能够看出,首要论文的办法对练s n Q I D # W *习数据样本的数量要求更少,其次,这篇论文B Z g S的办法+ k Q a 4能够产出更多e u ` D Q % u o的元素。

H S y 6 u些考虑


这篇文章首要提出的办法是用来产出布局的,关于前端场景,相同存在着从一个原始规划稿转化为合理的布局的问题。例如,当咱们有一个原始图片的时分,咱们怎样能够正确的对图片中T * B Z .的根底元素进1 4 z行提取,确定每个根底元素的类型(图片仍是文字图层)和这个元素的方位。


毫无疑问,这个研讨是需求很多的练习数据作为支撑的,如果把论文中的计划应用到前端场r : 6 M ^景的数据中,或许能够为咱们的方Q } H针提供一种样本生成和样本增强的W 8 y N { 2 !办法,然后– X f 6获得一些合理的练习数据。之后,咱们也快在这块做一些相应的研讨以i ] ? 1 . p 0验证这种计划的可行性。