走向通用智能的核心:任务树的建立

来源:混沌巡洋舰

人工智能的一个核心问题,是用已有的算法解决新的目标。对于人类来说,最常用的方法是得到和目标最相近的子目标, 子目标的子目标(比如饿了就要找吃的,找吃的就要去菜市场买菜),直到和当下的状态连接起来, 我们可以把这个过程叫做任务的拆解。人的人生就是这样一个把最终目标和前面的目标相连接的过程。

当任务的拆解完成, 我们无非需要组合已有学到的技术,来形成一个完整的任务解决方案。这种能力是从我们婴儿阶段在玩耍中就会逐步学习到的。但是对于当下的机器学习, 这个任务拆解能力是完全不具备的,机器可以用强化学习的方式学习动作趋近目标,但是这和任务拆解还距离甚远。

这个挑战主要体现在几点, 第一目标(goal)的定义并不明确, 目标并不能完全等价于强化学习的奖励 – 某种外界设定的数值。而是内在的需求(如生存)与外部条件结合的结合,这个神经过程目标依然是未知的。与强化学习的reward相比, 这个生物的目标是随着时间改变的, 不同的目标可能在你的大脑里进行竞争, 这都比简单的数值reward复杂很多。其次,有了目标之后,如何得到子目标进行任务拆解和简化的神经过程不完全知道。对于人类和其它动物,它可能是基于直觉的, 可能你在潜意识里就已经拆分了一个复杂目标(例如大猩猩拿起小树枝来吊蚂蚁吃),也可能基于有目的的推理(如你如何一步步的求解魔方问题) 。

那么如何让机器学习这种从一个目标,当生成一个任务完成的子目标组成的流程图的能力呢?这是人类通向通用智能的一个核心难点之一。打开这个任务的钥匙也多种多样, 它体现着人类因果, 逻辑推理等绝技。

我们来看一些不同的角度:

1, 强化学习

强化学习学习的是从行为到最终结果的关系, 因此它非常关注如何根据一个总的目标,把任务分解成功若干子目标。这类强化学习方法的一个基本解决称为hierachical RL-多层级强化学习, 这个算法把强化学习分成很多个不同的子目标,子目标又有下级的子目标, 这样就一级一级的达到最基本的已经学过的动作。

比如上图中的迷宫,迷宫里分为很多不同的分区(a), 图中基本的结构 – 如障碍物是类似的。如果没有层级强化学习的概念,那么这就是一个经典的MDP导航过程, 东南西北是四个不同的可能动作。但是在这样的迷宫里来尝试学习这种任务其实是工作浩繁的,但是如果我们仔细观察, 这个迷宫里的分成很多非常类似的小段,在这些小段里智能体的行为基本是重复不变的(比如直线向前)。

因此一个更好的方法是把这样任务中相似的过程变成一个个如字母表中的字母一样的基本单元, 如后退,沿墙走,选择,停止。有了这些基本的技能字母,我们需要的action就不再是东南西北, 而是在那几个基本的技能之间做选择。这些技能就如同封建王朝里的一个个封臣, 通过一个最终的目串起来, 完成它们就可以完成整个任务。当然这里每个技能单元的完成你也可以看成子目标, 学习串起它们的过程就是学习由一个个子目标构成整个任务的过程。

另一类学习任务拆解的强化方法来自模仿学习,也就是给你看一段视频,你给它拆成不同的状态和动作单元。

事实上一个非常有效的概念称为conjugate task graph,这个工作同样是通过观看一段视频来提取其背后的任务结构(NTG-Neural Task Graph), 一个由Macro Action作为节点组成的图结构。每个macro action类似于刚刚在HRL中介绍的组合动作, 之所之所以把action而不是state 作为graph的节点,是因为往往macro action 具备更好的不变性, 而state反而是更多变的, 因此把state作为边恰好得到一个超图结构,这样的方法有效的解决了组合爆炸的问题,增加了学习效率。

litterature:

    Reinforcement Learning with Hierarchies of Machines

    Neural Task Graphs: Generalizing to Unseen Tasks from a Single Video     Demonstration

    Hierarchical Reinforcement Learning Based on Subgoal Discovery and     Subpolicy Specialization

但是无论是哪一种强化学习方法,它可能都是和真实大脑里的过程有所差距。大脑是如何完成这一类对记忆过程的理解呢?这里的关键算法在于我们神奇的情景记忆-episodic memory能力。

2. 脑启发算法,episodic memory

如果从脑科学角度看对任务拆解的基础,那么这个问题的核心一定是对事件的表征。事件(包含时间地点人物干什么) 代表了对时间的一个离散化, 把连续的时间分解成一个个对我们的生成目的有意义的片段, 比如开会吃饭这种。任何事件又可以分解成一系列子事件,比如从你的屋子里出去走到室外去买菜,这个过程就可以包含走出去,上汽车,买菜这些更基本的事件。

这些子事件其实往往对应子任务或子目标。那么事件是如何被学习的呢?人脑中一个事件学习的基础是episodic memory(情景记忆),在情景记忆里, 我们经历的各种感知信息要被压缩成一个个符号,通过一个时间戳组合成一个group挂载在海马体里,这就是基本事件的由来,我们通过这种拆解和组合,就记住了一个过程。我们很容易发现这个过程的核心在于如何划分时间轴,哪些时间段会被定义为开会,另一些被定义为吃饭?这个问题和predictive coding和场景切换都有关系。 

复杂任务下经常包含不只一个场景, 两个不同典型场景(幕)的切换通常对应 predictive memory model中预测误差的突变(surprise)来界定(比如你走出一个场景,你大脑中的连续预测必然被打破),可以将这个突变点称为关键帧或关键点,代表一个场景到另一个,一个子任务到另一个子任务的切换,两个关键点间通常定位为一个完整的事件。得到不同的完整事件后的关键问题在于一天中的事件实在太多了 ,难道每个事件都要一个个存储吗?答案是否定的,通常情况下, 不同的事件会被比较,有的比较类似的事件可以被去掉不必要的细节, 压缩成同样的形态(典型事件),比如事件A。事件A可以盖上不同的时间戳得到A在不同时刻的表达。这个原理可以解释类似于Déjà vu(似曾相识)这样的心理现象, 你见到一个新的场景,被激活的其实是过去的某个典型事件, 它就如同一张记录了地点人物特征这些关键信息的卡片,需要被新的信息改写覆盖。因此虽然这个新事件你没有经历过, 但是你感到似曾相识, 因为被激活的旧的事件在剔除了细节后和新的事件就变得比较相似。

有了事件的表征, 我们的大脑其实在新的目标到来时候,会根据当下的场景自动的匹配出曾经发生的事件, 事件之后的事件,这个我么可以称为叙事结构或历史的东西。通过历史,我们就可以生成新的子目标和任务流程图。简单的说,当下是过去的组合,阳光之下并无新事。

litterature:

1 A predictive processing model of episodic memory and time perception

2 Episodic Reinforcement Learning with Associa

逻辑推理的方法:

3, 更高级的形式, 引入人类的逻辑和因果

如果我们有了上述能力,那么我们就有了通过来自记忆的直觉形成任务拆解流程的能力。但是事实上人类更高效的解题方法则是通过逻辑和推理,因为逻辑和推理代表了不同过程或关系累加得到一个总的过程或效果的思维,或者说基于因果的理解。如果掌握了它,就可以借助公理化的系统,在未知的任务里使用已有的公理,并且推理的结果不受过去经历统计分布的局限。例如你可能从没有搭建过桥,但是通过物理知识你可以做出一个过程的拆解,先做地基,然后用钢筋连接,在去铺设路面等。

那么如何把这种能力交付给机器呢?首先,在这个层面,事件必须已经符号化,比如是语言可以描述的。这一步我们可以走捷径,我们甚至不一定需要机器理解所有的理论背后的真实场景,而是可以直接引入人类的知识,并且学习建立在其上的推理流程。比如利用知识图谱学习与之组合使用的逻辑。

其次我们要清楚逻辑本身是什么:逻辑一般分为inductive reasoning(归纳), deductive reasoning(演绎)和abductive reasoning(溯因推理), 其核心是利用一系列的一般规则对当下的特例进行推理的过程(表现形式是一个符号组成的序列)。其强大之处在于这个推理的链条可以很长,而且传递过程是确定的。那么它和任务拆解有什么关系呢?逻辑链条其实就是把一个目标拆分成了很多子目标。如果把子目标看成一个字符串或自然语言的序列,这个序列代表一系列的动作组合, 也就是一个计算机程序。

人类对这些过程的组合可以使用算法和程序,这是人类逻辑的很高级形式, 也就是理解一个抽象的对输入进行改变的过程, 通过迭代的使用一些规则得到最终的目的,这是任务拆解的较高级形式,也就是使用算法来支配子任务, 是否能够让机器也学习这种工作模式呢? 这就是以神经图灵机为代表的的一系列神经程序学习的作用。

我们来看看能够学习和使用逻辑的机器学习框架:

神经编程学习机器:

Neural Stored Program machine:这是从神经图灵机演化出的框架 它的特点是把程序记忆和数据记忆分开存储, 程序记忆是存储一系列逻辑规则, 它可以根据数据的形态被读取,也可以学习。一个完整的任务可以被拆分成几个不同的子任务完成, 这本身就体现了逻辑的流程。

另外一个学习和利用逻辑的方法是利用在人类已有的知识库里寻找规律, 那么一个非常可靠的起点就是知识图谱。

如果给定一组 关系比如A和B是朋友, A爱好游泳, B爱好滑冰, 推测A和B 可能还有什么爱好, 那么这就是构建了一个关系的序列 朋友(A, B), 爱好(A,游泳), 爱好(B,滑冰), 这三个关系的序列可以推倒A hobby 滑冰 & 游泳。

这个关系到关系的效果累加可以由RNN学习使用,因为RNN可以很好的解决一个序列路径依赖的概率问题。

在知识图谱上学习这样的逻辑关系, 到底和任务拆解什么样的关系呢?我假设,当一个流程可以被抽象成符号的时候,那么这个流程内不同环节的因果关系,就可能通过抽象的逻辑表达出来, 并且通过序列到序列的建模学习到。

代表文章

符号化方法的本质是用单词,尤其是动词表达子过程, 一个总的目标可以分解成不同子过程 的组合。可以用有向图的形式表达一个流程(代表把任务分解为子任务的流程),如下图:

4, 神经程序学习

类似神经图灵机的机制或neural stored program mahine,可以有效的学习类似程序的过程,可以作为一个从数据中提取任务流程图的重要方法。

litterature:

  1. Neural Stored-program Memory

  2. Differentiable Harvard Machine Architecture with Neural Network Controller

  3. Learning Algorithmic Solutions to Symbolic Planning Tasks with a Neural Computer Architecture

几种不同方法的结合:

不停的对周围环境的变化进行预测,对无法预测的惊讶形成新事件的编码, 并和既有经历进行组合是类脑计算的核心思路,也是儿童学习任务拆解的基础。但是人在接受教育后也可以直接利用逻辑对不同的关系进行组合来形成这样的逻辑流程。

因此,任务拆解的过程最好可以形成一个闭环机制, 从observation观测中记录偶然性的事件经历, 但是在大量的经历中学习稳定的事件结构, 并被吸收到知识图谱的符号化表征中, 而逻辑则把这些被记录的不同的符号结构进行泛化,使得这些事件结构成为推理中可以复用的meta structure。同时被学到的结构可以在inference里被灵活使用, 从KG上的逻辑推理,激活下层任务的模块,进行任务的执行过程。

本质上这是绕过了强化学习底层的试错逻辑,通过更抽象层面的逻辑来解决了这个任务拆解的过程。

对这个问题感兴趣的同学可以加作者TieXu0609, 共同探索任务拆解的本质,潜在大厂实习机会。

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/485027.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于HotSpot VM以及Java语言的动态编译 你可能想知道这些

目录 1 HotSpot VM的历史2 HotSpot VM 概述2.1 编译器2.2 解释器2.3 解释型语言 VS 编译型语言3 动态编译3.1 什么是动态编译3.2 HotSpot VM对字节码的处理方式3.3 为什么不静态编译1 HotSpot VM的历史 SUN/Oracle JDK中使用的JVM是HotSpot VM. SUN JDK从1.3.1版本开始采用HotS…

马斯克向中国保证

来源:金融时报美国当地时间3月20日,特斯拉公司(Tesla Inc.)首席执行官埃隆马斯克 (Elon Musk)通过网络参加中国发展高层论坛会议。马斯克在会议上表示,特斯拉公司将不会向美国政府提供其车辆在中…

对抗攻击层出不穷?神经科学带来新突破、导出智能统一框架,Hinton:我早有洞见

来源 :AI科技评论编译 :bluemin校对 :青暮最近的神经科学研究指出了如何击败对抗性示例,并为实现更具弹性、一致性和灵活性的人工智能指明了道路。对抗性示例是当今深度学习研究的热点。数据中微妙的,通常是无形的更改…

增强现实系统的三大关键技术是什么?

来源:VR村增强现实系统的主要任务是进行真实世界和虚拟物体的无缝融合,需要解决真实场景和虚拟物体的合成一致性问题。为了确保真实世界和虚拟对象的无缝融合,根据Ronald Azuma对增强现实技术的定义,在AR应用系统开发中必须要解决…

51 Nod 1116 K进制下的大数

1116 K进制下的大数 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 收藏 关注 有一个字符串S,记录了一个大数,但不知这个大数是多少进制的,只知道这个数在K进制下是K - 1的倍数。现在由你…

数字化?智能化?中国企业智能制造现状究竟如何 李炳积 工信头条 昨天

来源:先进制造业各国智能制造现状30年来,在智能制造领域,各国从早期侧重于智能设计的数值模型和离线模型,发展到以智能制造过程优化为目标在线智能系统,从传统行业进军新兴行业。欧美技术基础较好,对高端技…

2021年MEMS传感器产业链变化与趋势

来源:宸元资本一MEMS基本概念和相关产业政策MEMS基本概念微机电系统(MEMS, Micro-Electro-Mechanical System),也叫做微电子机械系统、微系统、微机械等,指尺寸在几毫米乃至更小的高科技装置。微机电系统其内部结构一般…

python基础之流程控制

python流程控制 python的流程控制跟大多数的语言一样,包括if条件语句、for循环语句、while循环语句;跳出循环continue,break等 写在前面 python中的运算 1)算数运算 以下假设变量:a10,b20: 2&am…

从自动驾驶汽车开始,机器学习开始与物理世界交互

大数据文摘出品来源:Wired编译:王烨今天,有许多人工智能与我们互动的例子,使我们的生活的效率更高。智能体向我们通过电子商务网站向我们推荐产品,通过社交媒体为我们推荐新闻,通过交友应用向我们推荐朋友&…

突破!在人工染色体中存储图片和视频:天津大学元英进团队验证DNA数据存储新方法...

来源:中国生物技术网天津大学元英进教授团队从头编码设计合成了一条长度为254,886 bp、专用于数据存储的酵母人工染色体,借助无线通信中前沿的纠错编码将两张经典图片和一段视频存储于高效组装的人造染色体,利用酵母繁殖实现了数据稳定复制&a…

10分钟 在linux里创建.net core helloworld控制台程序

官方教程 安装linux https://www.cnblogs.com/LittleFeiHu/p/9749455.html 第一步 :选择和你本机适用的Linux版本,我这里用的是18.04. 第二步 :注册秘钥,产品仓储,以及安装依赖项,每台机器只需要注册一次&a…

陈天桥雒芊芊脑机接口中心等团队研究登顶刊:超声波“读心”

来源:澎湃新闻 作者:贺梨萍 脑机接口(BMIs)在全球的研究正如火如荼,神经科学家们希望通过这样一种设备将神经活动映射到相应的行为,它以读取和解释大脑活动,并向计算机或机器发送指令。实际上&a…

图灵奖得主 Yann LeCun 最新文章 :自监督学习,人工智能世界的“暗物质”

来源:AI前线作者:Yann LeCun ,Ishan Misra译者:王强策划:刘燕近年来,AI 产业在开发“可以从大量经过细致标记的数据中学习的 AI 系统”这个研究领域上取得了巨大进步。这种监督学习的范式在训练专业模型方面…

无脑人:我们真的需要大脑吗?

© Mental Floss来源:神经科技编辑:Yezi审阅:mingzlee7在一次讨论中,有位德高望重的人(我不会透露这个人是谁)告诉我:“我认为自我存在于心脏!而不是大脑!那些声称意…

JS数组的需要注意的问题

一、在js中数组是我们经常使用的数据类型,也为我们提供了很多方法。但是有些方法需要注意使用: 1、indexOf(args):匹配一个数组中与args相等的项的索引位置,如果该数组包含这个匹配项则返回第一个匹配的索引,并停止匹配…

基金委最新改革:9大科学部整合为4个板块资助布局

来源:微信公众号科学网(sciencenet-cas)3月24日,国家自然科学基金委员会(以下简称自然科学基金委)第八届委员会第四次全体会议在北京召开。会议上,自然科学基金委主任、党组书记李静海作全委会工…

Leetcode--236. 二叉树的最近公共祖先(Java)

给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的…

万恶之源 - Python运算符与编码

格式化输出 现在有个需要我们录入我们身边好友的信息,格式如下: ------------ info of Alex Li ----------Name : Alex LiAge : 22job : Teacher Hobbie: girl------------- end ---------------- 我们现在能想到的办法就是用一下方法: name input(请输入姓名:) age …

世界最大、最复杂的GPU!这颗集成1000亿个晶体管的芯片长什么样?

来源:EETOP3月25日消息 英特尔于昨日举办了直播活动,新上任的 CEO 帕特基辛格(Pat Gelsinger) 发表了演讲,并展示了采用 7nm 工艺的 Xe-HPC 高性能 GPU,代号 “Ponte Vecchio”。这款产品封装了 47 个芯片&…

Lucene全文检索

目录结构: 1.全文检索 2.Lucene入门 3.Lucene进阶 全文检索 一, 生活中的搜索: 1.Windows系统中的有搜索功能:打开“我的电脑”,按“F3”就可以使用查找的功能,查找指定的文件或文件夹。搜索的范围是整个电脑中的文件资源。 2.Eclipse中的帮助…