Human-level concept learning through probabilistic program induction
Lake, B. M., Salakhutdinov, R., & Tenenbaum, J. B. (2015). Human-level concept learning through probabilistic program induction. Science, 350(6266), 1332-1338.
摘要:学习新概念人类通常只需要一个例子,但是机器需要几十个或数百个例子。本研究提出一个计算模型,捕捉人类学习能力的一大类简单视觉概念:手写字母。在一次性分类任务中,该模型可以实现与人类相当的性能。
本文介绍了Bayesian Program Learning(BPL),可以从一个例子中学习一大类的视觉概念。概念被表示为简单的概率程序。整个框架集合了三个想法:复合性,因果关系,学习(compositionality, causality, learning)。作为程序,丰富的概念可以从简单的基元复合而成。概率语义(probabilistic semanticas)可以解决噪音,支持创造性的概括。学习是通过构造程序,通过程序最好地解释贝叶斯准则下的观察结果,通过开发层次优先级,允许先前有关概念的经验来简化新概念的学习。BPL可以通过用之前现有的查程序,捕捉因果关系和组成上的恰当性来构建新的程序。
本文将使用简单的视觉概念(从50个写作系统中抽取的1623个手写字符),将人类,BPL,其他计算方式进行比较,在观察了一个示例后,比较解析示例,新概念的生成。BPL将和三种深度学习模型,一种经典的模式识别算法和其他各种算法进行比较。(两种深卷积网络,HD模型)。
BPL
BPL用简单的随机程序来表示概念,通过将例子分解为parts和sub-parts,将这些部分的新组合生成一个模型,从而可以呈现出与原始数据类似的新示例。
这个模型通过将每个条件分布拟合到30个字母表的背景集上,同时使用图像和笔画数据,并且这个图像集也用做预先的训练深度学习模型。在接下来的evaluation任务中,这些只是提供了新字符的原始图像。
手写字符集Ψ是parts, sub-pars和relations的抽象模式,反映了手写过程中的因果结构,例如完整的一笔是从钢笔接触纸面一直到离开纸面,这是一个part,而其中更细节的还可以划分为sub-part,由笔迹中的间隔分开。
Type level为了构造一个新的字符型,首先对parts和sub-parts的数目进行采样;其次,一个part是由几个sub-part构成的,而sub-part来源于之前学过的背景集中的原始图像,使得下一个动作的概率取决于之前的动作;第三,通过对控制点和尺度参数的取样,将parts转为参数化的曲线;最后,根据不同的relation将parts结合起来。
Token level首先确定控制点,和这个笔迹的尺寸大小;其次,确定轨迹的精确起始位置,可以从之前的relation中取样;第三,对全局变换进行采样;最后,一个二进制图像有随机渲染函数建立。
在后验推理中,本文使用自下而上的方法,提出一系列的候选人,形成后验分布函数,并且对每个候选人进行评分,分数更高,表示更有可能属于同一分类,对最有希望的候选人进行持续优化细节。
Results
人类,BPL和其他替代模型在五种概念的学习任务上进行比较。
One-shot classification是通过一些字母内分类任务评估十种不同的字母,给出一个图像示例,要求从20个不同的字符中选择另一个相同字符。准确率可以见图6A,人类的错误率为4.5%,BPL为3.3%,而其他深卷积网络等错误率会更高。
人类进行一次性学习的能力不仅仅包括分类,还包括一系列能力例如生成新示例。本文比较了人类和机器通过“visual Turing tests”的创造性输出结果,要求人类识别哪个是人类的示例哪个是机器的示例,根据人类评估的准确性,对每个模型进行评估,称为识别等级(ID),理想的模型性能应该在50%ID级别,表示无法区分人类和机器的示例,最坏的性能为100%。结果如图6B,法官只有52%的ID水平来区分人与BPL的行为。
尽管30个背景集的结果呈现是有效的,但是人类的资源会更加有限,可能只有几个背景集,因此,我们限制模型的背景集到只有5个,BPL的表现没有明显差别,但还是其他深度卷积的学习会更差。
人类除了可以生成一个概念的新例子,还可以生成出一整个完整的概念。展示一个外国字符,并且要求人和机器快速创建属于同一个外文字母表的新字符,并且由人类法官判断哪个是人类创建的,哪个是机器创建的。结果表明法官只有49%ID级别,说明两者没有显著差别。同时法官还判断无示例下的自由创建,发现有51%ID级别。
Discussion
跟机器比起来,人类在概念学习上更好,他们需要更少的示例,并且新概念可以在更多的范围里应用。本文的BPL学习说明了,复合性,因果关系和学习(compositionality, causality, learning)这三个原则可以缩小人类和机器之间的差距。
虽然实验结果表明BPL的尝试是成功的,但还是仍然还有很多人类的概念学习结构是BPL没有看到的。例如,BPL缺乏对线段平行,对称,笔画的连接等等的明确认知,同时,人类的概念学习还可以运用在计划,解释,交流等等更加复杂的层面。预测程序也可以用来学习组合,例如工具,车辆(可以用零件,关系,功能很好地描述结构),抽象知识(自然数,自然语言语义,直观的物理理论)。
BPL也很有希望可以运用到其他类型的符号概念,例如手势,舞蹈动作,口语和手语等等。为了说明BPL如何运用到语音领域,可以通过系统地组成音素(sub-parts)来构建口语程序,形成音节(parts),进一步构成语素和整个单词。给定一个抽象的音节音素解析,可以捕获语音运动发音方面的因果模型,从而生成标记。这些sub-parts和parts可以在单词间公用,从而儿童可以通过长期学习习得。
BPL模型也可以运用研究儿童写作中可能产生的归纳偏差,以及研究什么样的教学程序是更加有效的。比较儿童在不同阶段的解析和泛化行为,可以给出不同背景的BPL模型的不同评价,更好地给出学习建议。
我们是否可以像解析BPL的过程一样,将人类感知分类活动的大脑成像也进行解析?目前也有很多大规模的脑模型和深度递归神经网络的研究,但是通常都是运用了大量的例子。本文研究的一次性学习能力对这些神经模型会有新的挑战。