写点什么

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

  • 2015-12-28
  • 本文字数:1916 字

    阅读完需:约 6 分钟

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

不过,今天这种现象或许开始要改变了。本周,一篇人工智能论文登上了《科学》杂志的封面,为人类带来了人工智能领域的一个重大突破,来自纽约大学的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 好读者)。

2015-12-28 18:002924
用户头像

发布了 268 篇内容, 共 132.1 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

Web 开发必须掌握的三个技术:Token、Cookie、Session

华为云开发者联盟

HTTP Token web开发 session Cookie

Netty之旅:你想要的NIO知识点,这里都有!

一枝花算不算浪漫

Netty nio

learn go with tests 学习笔记(一) hello world

Geek_4z9ami

Go 语言

零代码/无代码 vs 低代码 如何分类?如何区别?到底有什么不同?分析超过20款零代码低代码产品

代码制造者

编程 低代码 行业资讯 零代码

政策加持迎来区块链技术应用“红利期”

CECBC

Executor看不懂?教你如何盘它

Edison

后端 线程池

learn go with tests 学习笔记(三) 指针和错误

Geek_4z9ami

Go 语言

learn go with tests 学习笔记(五)并发

Geek_4z9ami

Go 语言

疫情之年 下半年区块链应用落地会加速么?

CECBC

区块链 场景应用落地

消息疯狂堆积!RocketMQ出Bug了?

Edison

RocketMQ 中间件

踩坑记 | Flutter升级影响了NestedScrollView?

哈利迪

android

企业网站搭建避坑指南

姜奋斗

网站 新手指南 企业 网站搭建 避坑

learn go with tests 学习笔记(二) 数组与切片

Geek_4z9ami

Go 语言

《effective-go》 学习笔记

Geek_4z9ami

Go 语言

用户体验(UX)设计≠用户界面(UI)设计

刘华Kenneth

敏捷 设计 UX 用户体验

RocketMQ源码解析-开篇

Edison

RocketMQ 中间件

nested exception is java.lang.IllegalStateException: refreshAfterWrite requires a LoadingCache异常解决

谙忆

以区块链为基础 通证经济是下一代互联网的数字经济

CECBC

区块链 落地应用

字符串匹配 - Sunday算法

Geek_4z9ami

数据结构与算法 字符串匹配算法

learn go with tests 学习笔记(七)反射

Geek_4z9ami

反射 Go 语言

人生修炼秘籍

xiaoboey

时间管理 人生修炼 知行合一 熵增 时间复利

我是如何参与硅谷顶级开源项目并赚得2500美金

阿水

硅谷 Minio

learn go with tests 学习笔记(四)依赖注入

Geek_4z9ami

Go 语言

Python爬取微信公众号文章保存到数据库

wjchenge

“啰嗦”是成事唯一正确的方法

霍太稳@极客邦科技

团队管理 个人成长 团队协作 沟通

learn go with tests 学习笔记(六)进程同步

Geek_4z9ami

Go 语言

关于微服务架构思考

Axe

500行代码写一个俄罗斯方块游戏

程序员生活志

话题讨论 | 特朗普正式封禁微信,iPhone 和微信二选一?

InfoQ写作社区官方

写作平台 话题讨论

MySQL事物-学习笔记

Edison

MySQL 数据库 数据库事务

数据采集能力受限?企业数字化运营如何迈出第1步

易观大数据

一种新的对象识别算法:挑战机器学习现状_语言 & 开发_张天雷_InfoQ精选文章