美文网首页
Everything To Byte And To Tenso

Everything To Byte And To Tenso

作者: xuenhappy | 来源:发表于2017-12-01 17:35 被阅读0次

    Everything To Byte  And To Tensor
                            -- Welcome to age of AI

       本文是一篇关于AI时代的软硬件组织形态的思考,关于AI时代我们应该如何重新定义我们的数据、硬件和软件的思考。为了避免误解这里把传统的软件和互联网时代称为PC时代,而与之相对应的以深度学习为主的时代称为AI时代.(本文不是严谨的科学论述,是对行业的一些思考的总结)

        不管是过去还是未来,信息处理围绕的核心始终是数据,这里先从数据开始谈起,并围绕着数据这一核心进行展开论述。
        PC 时代我们的主要处理的数据是各种各样的量化的信息,这种数据包括各种文字,声音,图像,视频,等各种量化的数据,他们都有一个共同的特点,就是精确的描述了我们所要说明的对象,如音频数据精确地描述了声音波形,图像精确的展示了物体的各种细节,数据库中的各种属性数据精确表述了各种对象之间的关系与对象所拥有的属性,这些数据最终的存在形式是BYTE,所有的数据都是人为的数字化后存储下来。PC时代我们通过这些精确的数据精确的描述与控制了我们这个时代的信息,然而随着我们对知识的渴求,发现直接从精确的数据中发觉信息存在着很多的困难,以及表示很多知识用精确的数据描述存在着困难,如我们很难从一堆文本中直接找到我们想要的知识片段,好点的搜索引擎也只是关键词匹配(当然排除现在的下一代搜索引擎),以及通过规则表示大量的规则信息并让他很好的应用,当然现在的知识图谱以及owl等本体数据表现不错,但是它仍然不能够方便我们对这些数据进行加工和分析,更加无法全面的覆盖,也无法很好的应对不确定性,如知识图谱的数据智能够表述其已有的关联信息,但是无法告诉我们一个不存在的关联,另外随着关联的复杂度增加我们越来越难于管理和应用。
      AI时代我们的办法是放弃精确性,转而进行抽象的表示。这个想法就是把一切数据向量化,也就是everything to tensor.虽然这样做以后我们无法直接通过解读tensor来描述我们的对象,却带来了前所未有的方便,我们可以很容易的通过各种向量运算,来对这些向量数据进行关联与加工,而这正是我们实现AI时代各种智能的基础,也是AI时代的核心数据形式。
        总之一句就是在AI时代一切数据除了要精确记录还要转变为tensor,以方便我们进行处理和进行大规模的知识发掘,知识关联与知识加工,为一切智能的基础,AI时代让byte加上tensor.

            说完数据接着来说说处理这些数据的软件。PC时代的软件很擅长处理各种精确的结构化数据,对于各种非结构化的多媒体数据有些力不从心。PC时代我们用逻辑等确定的规则来组织软件,程序员的工作就是直接告诉电脑一步步怎么操作,换言就是固化人类自身的经验,而对于程序员没有定义的行为我们的电脑就是个彻彻底底的白痴。AI时代的程序员则需要增加一项另外的能力,这项能力就是构建电脑的学习能力,放弃一些以前直接告诉电脑怎么做,转而让电脑怎么学着做,程序员构建学习能力,电脑自己学习。而构建学习能力的核心就是我们当今热门的以神经网络为主的深度学习,换句话说AI时代的软件=PC时代的规则软件+神经网络集合,AI时代我们仍然以规则程序来处理我们的各种精确地信息数据,而用神经网络来处理上面所说的tensor,并将二者有机的进行结合

          说完软件来聊聊当下火热的AI硬件,PC时代我们的硬件结构是CPU+RAM+SSD这样的三级处理结构,CPU可以很好的执行规则与逻辑算法,RAM,SSD这些基于地址寻址的设备很好的存储了现有的精确数据。但是在AI时代这一切还需要有所增加,AI时代我们有大量的tensor数据需要进行存储和管理与计算,传统的这些设备有些力不从心,个人观点AI时代我们需要TPU+NTM+TSD,下面解释下这几种设备并说下为什么需要他们,以及当下的一些现状。
          tensor处理器TPU,可以处理大量的tensor计算,这个优势目前已经不言而喻,重点说下当下TPU未来的一些发展,目前的TPU未来有google-TPU,nvida-GPU,FPGA,寒武纪等,现在的nvida GPU做的不错,但是个人觉得现在的GPU遗留了以前的一些历史思维,有些过重,需要进行重新设计,寒武纪也很优秀但是需要时间积累,未来的TPU一定能够方便神经网络设计,并且最好不要使用过多的像NVIDA那样的缓存,要与AI时代的存储器进行共享数据。当然 TPU节能高效这是时代的应用的要求。
        
          当下AI时代在硬件上大家好像关注的都是在计算上如GPU,FPGA寒武纪等这些芯片,都是人工智能时代的处理器,却忽略了人工智能时代的存储,PC时代大家采取CPU+RAM+SSD,实现了规则精确的控制和快速的确定性的推理,基于地址的快速查找。人工智能时代则需要增加TPU+NTM+TSD,用于实现模糊智能的控制以及快速的模糊推理,基于内容的快速查询。这一切依然需要一个存储核心,就是基于内容定位的,存储大量tensor的ntm芯片,NTM是以存储为主并加上了轻量的计算的新型存储设备。

    NTM(nural tensor memory)功能如下:
    1)芯片的存储的是大量的固定维度的tensor,规模至少亿*百级别
    2)芯片可以根据指定的位置信息访问到对应的tensor
    3)芯片可以快速给出存储的tensor与给定的tensor之间的度量向量(按照地址排列),即基于内容查找,也就是实现out=d([store],input)
    4)芯片应当可以指定轻量级度量计算过程
    5)配合TPU进行Tensor计算

    NTM的意义如下:
         当下的许多现有的神经网络应用只是基于有限的tensor信息以及网络自身信息进行的处理,但是实际上我们需要在应用程序中引入更多的外部tensor信息,如知识图谱量化的tensor信息,用户的tensor信息等等,当我们要对大量的外部tensor进行attention时候,cpu与当下的gpu显得有些力不从心,因此基于内容寻址的NTM向量内存芯片就有其非凡的意义,它可以模拟人的大脑实现对大量数据的快速联想功能,从而避免了现如今的这种需要遍历数据的逐个计算的尴尬的低效境地。人脑是通过共享神经元与自动创建神经元之间的连接来实现稀疏编码,机器直接实现这种功能很困难,但我们可以通过直接存储大量的分布式编码来直接实现并通过硬件上的快速分布式计算来实现快速联想。当我们把大量的事实分布式编码tensor存储在NTM上后,NTM可以很好的实现人的联想能力,如告诉某个人名快速联想某个人以及人的性格和有关于他的一切,又或者我们可以轻松的实现大量相似的事物的聚类。
          在NTM上我们可以快速的进行联想功能以及进行基于内容的查找,当然这些在GPU+CPU的当下也可以实现,但是这需要遍历计算亦或者需要很多数据存储与筛选技巧,这样做既不可能高效也不优雅,更加无法在大规模的数据情况下做到毫秒级别的实现,另外这些设备都是重计算而不是重在查找与存储。同样类比于SSD是RAM的外部大量存储,而对于大量的tensor我们则把它放入TSD,同样可以进行大量的tensor数据的基于内容查找。有了NTM与TSD最直观的应用是我们很容易实现基于内容理解的快速搜索而不仅仅是基于关键词的搜索,复杂应用是基于知识图谱向量化后的推荐以及对话问答等,更加复杂的是如果我们把一切信息(文字,图像,声音,视频,数据库,软件功能入口等)在一个空间编码后,我们可以以前所未有的规模对一切信息进行关联与聚类并实现基于此的快速复杂模糊推理进而为实现高度智能的机器人做基础。

          可惜当下并无看到相关的存储芯片研发报道又或者大家觉得根本无必要亦或者有我等孤陋寡闻。最后我们把AI时代的一些名词和PC时代的做一些对比来总结下。

       个人以为AI时代是一个混合时代,byte与tensor的结合,精确与模糊的结合,神经网络与符号程序的结合,CPU和TPU的结合,


                       量化-----Byte---------RAM--------CPU------SSD-----精准,确定-------规则程序------地址寻址
    信息    <        |           |                 |                 |              |                 |                        |                       |
                       表示 ---Tensor-------NTM--------TPU------TSD-----模糊,不确定------神经网络------内容寻址



    我们用精确的byte数据和规则构建这个世界各种数据之间的明确的硬链接,PC时代这个链接是指针是地址是key。
    我们用模糊的tensor数据和神经网络来构建这个世界各种数据间模糊的软连接,AI时代这个链接是相关性是attention是测度。
    硬链接明确但不灵活,软连接灵活但不明确,AI时代我们需要二者结合构建灵活的广泛链接

    PC时代我们关心如何量化世界与这些数据如何应用和管理,我们用一系列的规则化的程序来完成
    AI时代我们需要关心如何表示世界,同样也包括如何应用和管理,我们需要加上神经网络来进行表示学习和应用

    未来的AI一定是用大量的不同神经网络和规则程序管理着大量的byte规则类事实数据与tensor模糊数据
    PC时代我们有程序员+少量经验可以构建软件,AI时代我们需要程序员+大量经验数据来构建软件


    AI时代我们完全可以依靠PC时代的一切+embeding化表示+TPU+NTM+STM来构建一个能够应对大量的确定性的与不确定性的系统,可以彻底的解决一切依赖经验、直觉、规则,确定性等非创造非情感的事务,并完全能够构建一个基于理性系统的真正意义上的智能机器人(非创造非情感的,不是强AI,个人观点强AI还需要量子计算机以及神经科学发展和进步),AI时代的机器人更加接近机器之心的MX,而非星际迷航的百科指挥官更非疑犯追踪的机器宝宝,相信在不久的二十年内这一切将会成为现实,让我们一起步入AI时代吧!

    相关文章

      网友评论

          本文标题:Everything To Byte And To Tenso

          本文链接:https://www.haomeiwen.com/subject/vwunlttx.html