一种新的对象识别算法:挑战机器学习现状

  • 张天雷

2015 年 12 月 28 日

话题:语言 & 开发架构机器学习

机器学习的基本原理是模型训练。对于人类来说,可以从单一的样例中学习到非常深刻的知识,例如变质的牛奶味道很差、火是热的等,但机器却需要更多的样例,因为它们是基于统计学的原理进行学习。机器学习的过程主要依赖于数据。

不过,今天这种现象或许开始要改变了。本周,一篇人工智能论文登上了《科学》杂志的封面,为人类带来了人工智能领域的一个重大突破,来自纽约大学的 Brenden Lake、多伦多大学的 Ruslan Salakhutdinov 和麻省理工学院的 JoshuaB.Tenenbaum 共同开发了一个计算机系统:“只看一眼就会写字”。

Salakhutdinov 表示,人们一直试图构建一个机器系统,让其能够像人类一样,只需要很少的数据就能执行新的任务。“复制这些能力是一个非常令人期待的研究领域,其涉及到机器学习、统计学、计算机视觉和认知科学等学科”。大约十年前,Salakhutdinov 与他的导师 Geoffrey Hinton 一起发表了一篇文章,题目为“深度神经网络”。这个算法能够从 6000 个样本的数据中,学习到从 0-9 的 10 个书写体字符概念的结构。而在 Lake 等人最新的成果中,引入了一个贝叶斯程序学习(Bayesian program learning, BPL)框架,它是一个能够模仿人类思维方式的机器学习模型,即能够从单一样例中进行学习。这是一个“学会学习”(learns to learn)的模型。

这篇论文的第一作者 Brenden Lake 曾在 Tenenbaum 的团队中获得认知科学博士学位,如今他是纽约大学的博士后。根据 Lake 的介绍,这个模型能通过视觉图灵测试。

论文指出,“只需要通过简单的概念,人类就可以比机器学习到更丰富的表示,也可以将其用于更广泛的功能,例如创造新的样例,以及基于现有的类别创造出新的抽象类别。最好的机器分类器都不能执行这些功能”。

作者继续表示,“目前的主要挑战是解释人类层次的概念学习的两个方面”。“人类是如何从一个或几个样例中学习到新的概念的?人类又是如何学习这种抽象的、丰富的和灵活的表示的?”

机器学习模型是通过更多的数据而获得提高的,但人类似乎能够打破这个看似基本的原则。

根据论文所描述的,BPL 能够让计算机对人类认知进行很好的模拟。传统的机器学习方法需要大量的数据来进行训练,而这种方法只需要一个粗略的模型,然后使用推理算法来分析案例,补充模型的细节。

研究者设计的学习方法到目前为止都只是针对具体的字符识别任务,例如世界字符表中的手写字符。它的工作是按照算法指令生成一个给定字符的程序表示,算法指令是为了告诉用户如何重新生成字符。结果是泛化的一种类别,按照相同的指令产生字母,不同的用户可能会产生许多不同的变化,但它仍具有相同的基本标志。

文章中解释,该模型能够自然捕获真实世界过程的抽象的“因果”结构,产生一种类别的各种样例。该模型能够使用先前产生的概念程序中的原语,不仅识别字母的新样例,而且可以创造新的概念程序,例如新字母。

下面介绍模型的工作方式。给该算法一个以前从未见过的字符,让它尝试五次来解析字符,每一个都是一个新的方案(因此新的方案本身是算法生成的)。这些方案根据不同的概率每次创作不同的新的字符。正如你在视频中看到的,结果与真实人类书写的基本一致,因此,这项研究被打上了“人类层次概念学习”的标签。

那么,该模型怎样才能适用于一般的机器学习呢?

纽约大学的数据科学家告诉 Motherboard,“现在的算法只适用于手写文字,但我们确定了对模型性能很重要的三个核心原则,可能帮助在其他领域取得进展”。

第一个原则是“组合性”,如上所述,概念表示应该由简单的基元构建而成。第二原则是“因果性”,模型表征了真实世界中的对象生成的抽象因果结构。最后一个,是“学会学习”,过去的概念有助于学习新的概念。

Lake 说到,“这些原则可能有助于解释人类能够快速学习和使用其他类型概念的原因”。“我们尤其对一些学习新的口头语和学习新手势的应用感兴趣,当你听到一个人说过“潘基文”的名字,你基本上就懂了,并且能够识别其他人说起这个名字,同时自己也可以近似说出这个名字。同样的情况可以适用于手势。

多伦多大学和谷歌的人工智能先驱 Geoffrey Hinton 说这个研究“令人印象非常深刻”。他说,这个模型能通过视觉图灵测试,这很重要,是一个不错的成就。Hinton 是深度学习的奠基者。他近年来在深度学习方面取得了举世瞩目的成就,其研究成果被广泛应用在许多领域,例如语音翻译、图像识别以及谷歌的图像搜索和 Facebook 的人脸识别。


感谢董志南对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者(已满),InfoQ 读者交流群(#2)InfoQ 好读者)。

语言 & 开发架构机器学习