[关闭]
@Libaier 2016-11-10T01:36:44.000000Z 字数 2779 阅读 2126

Human-level concept learning through probabilistic program induction – Supplemental Material

BPL


1 Omniglot dataset

这个数据库中有1623个字符,其是由50种不同的字母表组成的。亚马逊AMT上的工作人员,根据这些字符的图片,在网页上用鼠标(手写板,触摸板)手写了这些字符,最终的轨迹数据[x,y,time]被收集了下来。

2 Bayesian Program Learning

2.1 Generating character types

一个character type 个strokes S和他们之间的空间关系R组成。这个联合分布可以被写成
此处输入图片的描述
这个分布的生成过程在算法1中进行了描述。是从先验频率中的到的。所有的超参数的学习过程在章节2.3中进行了描述。

2.1.1 Strokes

每个Stroke都是从落笔开始到提笔结束的。每一个Stroke又可以根据笔画中的小停顿划分为sub-strokes。sub-strokes的的个数从先验频率得出?从图中可见Stroke多的字符往往笔画是简单的。
如果提供了sub-strokes,生成stroke的步骤在算法1中进行了描述。每一个sub-strokes都被表示为一个均匀三次B样条,他们可以被分解为三个元素的联合分布
此处输入图片的描述
这个公式中的z是library中的基元序号。他的分布
此处输入图片的描述
是一个从empirical bigrams中学习到的一阶马尔科夫过程,这个过程可以解码直角,重复结构和common motifs??
图S1中的五个控制点是从高斯分布中采样而来,他们是抽象事物没有真正嵌入到图像中。type-level的y,相对于图像帧,是从Gamma分布中采样的出??因为在type-level可能有任何可能的控制点部署形式,the primitive actions are more like specifications for high probability “types of
parts” rather than a rigid set of parts.??
此处输入图片的描述
此处输入图片的描述

2.1.2 Relations

2.2 Generating character tokens

2.2.1 Pen trajectories

2.2.2 Image

2.3 Learning-to-learn motor programs

2.3.1 Learning primitives

2.3.2 Learning start positions

2.3.3 Learning relations and token variability

2.3.4 Learning image parameters

3 Inference for discovering motor programs from images

使用这个模型从一副图片中进行后验推断是具有很大挑战性的,因为不同的parts,sub-parts,relations产生的组合空间是十分巨大的。从原理上说,文献[66]中使用的MCMC方法是可以被使用的,但我们发现这种方法速度慢,容易陷入局部最优解,而且在不同parses间转换十分困难(?)。受到文献[67]中的启发(?),我们探索了一种自底向上的方法,这种方法可以快速做出结构分析并快速计算BPL中的隐变量(?)。这产生了大量候选的motor programs,这些候选的motor programs分别近似适配于图像的不同模式(?)。最后,通过使用基于连续优化的MCMC方法,我们可以选出并重定义最优的motor programs。通过这一系列过程,我们得到的最终产物是K个parses,,这K个parses即是通过此算法流程选出的候选最优解。这些最终产物在图S4A中有展示。
此处输入图片的描述

3.1 Discrete approximation

下面是后验概率的基本近似,这些parses使用一个离散分布近似接近那个后验分布。

上式中,与parse分数成比例,????
此处输入图片的描述

除了单纯对每个parse使用点估计,这个离散近似可以通过结合局部方差使其变得更加精确。token-level的变量允许产生小规模变化(?),而且,它可以从type-level

3.2 Extracting the character skeleton

搜索过程开始于对原始图像进行“瘦化”,即将线条变为宽度为一个像素的。“瘦化”后的图像是为了生成候选的parses,以最终为原始图像打分。这个瘦化后的图像可以得到一个如图S3e所示的无向图,在此图中边为绿色,红色的点为终止点或分支点。这些红色的点可由文献[31]中的方法得到,但我们采用了文献[69]中的画圆合并的方法因为其可以降低冗余点的个数。
此处输入图片的描述

3.3 Generating random parses

一个候选的parse是由一支虚拟的笔在character skeleton上随机游走得到的,这支笔在不断访问不同的红色点在每条边都被访问过时结束。因为parse的组合空间随着边的数目以指数的速度增长,我们应该采用有偏的随机来探索大字符最有价值的部分。随机游走器在分支点时选择可以使局部角度最小化的行为A。
此处输入图片的描述
上式中与图S4中的不同行动相关,而是常量。两种可能的行动,拿起笔和折回书写,分别会付出45和90度的代价。如果一支笔停留在一个拿起笔的位置,他必须选择一个节点去落笔,这个落笔位置在在未访问的边相连的节点中选择。
此处输入图片的描述

3.4 Searching for sub-strokes

在一个parse可以由公式S4打分之前,所有的strokes要先被划分为sub-strokes。为了实现这一目标,???。这些平滑后的strokes会被划分为sub-strokes

3.5 Optimization and fine-tuning

3.6 MCMC to estimate local variance

3.7 Inference for one-shot classification

3.8 Inference for one-shot generation

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注