HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

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

  • 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:002622
用户头像

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

关注

评论

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

【设计模式】备忘录模式

Andy阿辉

C# 编程 后端 设计模式 8月日更

TypeScript那些最佳实践

思诚^_^

typescript

讲透学烂二叉树(五):分支平衡—AVL树与红黑树伸展树自平衡

zhoulujun

二叉树 平衡二叉树 红黑树

悄悄学习Doris,偷偷惊艳所有人 | Apache Doris四万字小总结

王知无

讲透学烂二叉树(三):二叉树的遍历图解算法步骤及JS代码

zhoulujun

二叉树 二叉树遍历 前序遍历 中序遍历 后续遍历

模块五作业

秀聪

架构训练营

可视化接口管理平台 YApi,让你轻松搞定 API 的管理问题

xcbeyond

工具 接口管理 YAPI 8月日更

《社会心理学》-怎样说服他人?

箭上有毒

8月日更

随机字符串,随机密码生成器

入门小站

工具

JVM空间分配担保机制

W🌥

Java JVM 8月日更

架构实战营 毕业设计项目

梦寻解语花

架构实战营

传统企业数字化转型的三大技术误区

码猿外

数字化转型 敏捷精益

你真的了解 fail-fast 和 fail-safe 吗

4ye

Java 后端 并发 map 8月日更

高并发中,那些不得不说的线程池与ThreadPoolExecutor类

华为云开发者联盟

Java 线程 高并发 线程池 ThreadPoolExecutor类

没有银弹

escray

学习 极客时间 如何落地业务建模 8月日更

架构实战营毕业设计

林子钧

架构实战营 毕业设计

架构实战营毕业总结

林子钧

架构实战营 毕业总结

【Flutter 专题】68 图解基本约束 Box (三)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

Seata TCC模式原理与实战

码农参上

分布式事务 seata SpringCloud Alibaba 8月日更

【Vue2.x 源码学习】第三十七篇 - 组件部分 - 组件的合并

Brave

源码 vue2 8月日更

Linux之scp命令

入门小站

Linux

10篇校招/社招面经请你查收~

王知无

LeetCode题解:220. 存在重复元素 III,暴力法,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

Spark RDD模型

Geek_qsftko

spark

从0开始的TypeScriptの九:接口Interfaces · 中

空城机

typescript 大前端 8月日更

docker的使用

Rubble

8月日更

讲透学烂二叉树(四):二叉树的存储结构—建堆-搜索-排序

zhoulujun

二叉树 堆排序 二叉堆 二叉堆排序 二叉树排序

毕业总结

梦寻解语花

架构实战营

企业研发效能提升之道 —— 管中窥豹,窥一斑而知全豹

在天涯的海角

研发效能

讲透学烂二叉树(六):二叉树的笔试题:翻转|宽度|深度

zhoulujun

二叉树 二叉树遍历 二叉树翻转

架构实战营 - 模块五作业

思梦乐

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