手机版 欢迎访问it开发者社区(www.mfbz.cn)网站

当前位置: > 开发

机器的终极智能

时间:2021/4/24 22:34:17|来源:|点击: 次

   7年前,在总结自己计算机程序学习方面的经验时,突然想到是否可以设计一种特殊的程序,或者是在现有程序的基础上做些修改,使得程序能够自己改变自己。也就是程序在运行过程中,通过认识自己,修改自己的逻辑。这样,不就意味着,程序具有了学习的能力,从而可以进一步的具有智能特性?
   从目前的程序结构来看,是不具有产生这一特性的原始可能的。因为代码一旦写定,其隐含逻辑就固定了,即使可能的行为路径有无数种,也摆脱不了被设计的影子。为了可实际操作性,甚至最终运行程序的二进制文件里,代码段在被操作系统加载进内存时,都被限定为只读的,不允许进行修改。这是基本的限制条件。所以,我们可以说,程序的行为其实是确定的,即使存在循环,我们也可以认为,程序创造的输出解空间是属于可理解的有限。或者说,即使是无限的,也是可理解的无限。这有点类似于数学中的可数概念,即使容量是无限的,但本质上是可数的。
   当时,这只是一个想法从脑海中闪过,后来就没有再深入思考。最近,看机器学习和人工智能方面的资料时,该想法又从脑海中浮现,感觉要是能做到,还挺酷的,于是就再仔细想了一下,总结了如下的几点内容:

   1 知道自己设计自己。自己设计自己的上限是自己对自己的认知程度。假如,人类要设计类似自己的生物,那么,人类对自身的认知上限就是该生物所能达到的水平上限。所以,如何知道自己是被设计的,并且可以改变自己,是一个问题点。

   2 一般的认知是高维度设计低维度,低维度不知道自己是被设计的。

   3 进一步的讲,从内层无法翻转到外层,无法认知超越自己的世界。简单来说,就是被设计者的认知范围无法超越设计者所达到的范围。除非是设计者没有认知到自己的潜能,而这种潜能却被被设计者发掘出来。

   4 关于自身是被设计的,在于如何做一种设计,让被设计者知道自身是被设计的,或者让被设计者认识到自己是被设计的。做这样一种设计,让设计的对象知道自己被设计,也就是设计的知道设计自身。这是矛盾的。设计的设计,这就好比看到镜子里的自己,镜子里的自己又看到自己,会无限循环下去。可以试试,让镜头对着镜子,我们会看到一层一层传递深入,到无穷尽。关于这一点,感兴趣的可以看看西部世界,机器人如何自己知道自己是被设计的。

   5 大脑也是被设计的,似乎有一种东西在大脑认知外控制着大脑。比如睡眠,大脑自身是不知道自己睡眠的,否则就不叫睡眠了。这样的话,那一定是有一种设计好的控制,被设计者预先设定,在大脑睡眠后能够唤醒大脑。睡眠的自己应该无法再控制自己,唤醒自己,也不知道自己睡眠了或者说被休眠。这有一种自己站在局外看自己的意思。

   6 具体到计算机程序,如何设计一种程序,让自己知道自己是怎么被设计的?也许这样才能修改自己。

   7 神经网络是一种模型结构,这种模型结构的特点是确定让数据决定行为。其前提条件是模型结构能够产生足够大的输出空间,而实际使用的是这个输出空间的一小部分。数据只是选择或者影响输出空间的因子,模型结构是确定的,自己是不能修改自己的。所以还是算不上自己设计自己。
   回过头来再理解一下,既然人工智能中的神经网络,是模拟人的大脑神经结构而产生的一种模型结构,那么是不是可以理解为,大脑也是有一种固定的模型结构,然后我们所见、所听、所嗅、所触、所尝、所感知的都属于是输入的“数据”。这个数据只是不断的影响和改变着我们的输出,而并没有对模型结构产生实质性的修改,只是在可能的输出空间中做出了选择。是否大脑的这种模型结构,其设计来源于DNA?如果是这样,则DNA只是选择了输出的模型结构,不同的模型结构,可能会产生不同的智力。这样,真正的主人却是设计DNA的那个。

   8 回到程序,困难在于如何自己设计自己。无论何时设计一种程序结构,我们会发现,一旦结构产生,结构自身就隐含的限制了超越自己。这是核心的矛盾点所在。可以回过头来理解图灵机,当年的思想也是一种小的突破。那如何设计一种自身能够改变自身结构的结构?这是核心突破点。也许真正的智能需要从这里突破。

   9  到这里,似乎人类设计机器所能达到的终极智能也只是人类的一个“子集”。这个智能只能无限接近人类自身,而无法超越。

Copyright © 2002-2019 某某自媒体运营 版权所有