什么是“人工智能”呢?说的坦白些,就是机器可以自我思考和判断,在无人类判断的情况下,可以做出正确的选择。由于人类大脑的容错空间大,同时又能区分细小的差别,所以机器很难模拟。但是最近的研究表明,机器和所有自然界生物一样,也存在进化现象,而且其进化速度比自然生物更快。所以,实际上,我们开发人工智能,从某种意义上讲,不能靠人类,而是要依靠机器本身的进化。本文就来探讨一个简单的记忆进化模型。
记忆的重要性和选择意义
一个纯然无知的人,他的所有活动,依靠的就是本能,而本能,就是人类大脑中从父辈基因里遗传的种群记忆。一个原始无知的人,不会语言和工具,不懂人际交往,不理解自然界的一切运转规律,他所面临的,仅仅是如何生存,为了更好的生存,必须开始学习,而学习的过程,实际上就是将“Yes or No”的结果存储在大脑里,以备下次在遇到同样的情况时,进行调用。
“Yes or No”是人类最大的选择,它的意义决定了人类和其他动物的区别。自然界任何生物都有自己的选择,连非生物也有自己的选择,但是人类之所以区别于其他,就是人类的这些选择被完整的记忆和传承,并形成了社会记忆,选择的内容也超过自然,一旦脱离了非自然的选择,人类的大脑就开始迅速膨胀,直到可以存储这些选择结果。
进化,等于记忆存量
人的潜意识,是人类大脑的常驻内存。一个人要具备思考的能力,一定要突破这个层面,智商和情商直接决定了他在这个社会中的层次。但是,人类并非生来就是如此的。在人类漫长的进化过程中,必须有那么一刻,突然明白,应该将选择的结果记下来,以确保未来我能够在遇到相同情况的时候获得最好的结果。存储在人类大脑中的这种行为和结果越来越大,IO越来越快,促使人类脑部的新陈代谢极速加快,几十万年的过程中,人脑的容量翻指数的上升,在这个过程中,“Yes or No”的存储量达到了一个瓶颈,当人脑无法完成存储之后,语言和文字出现,记录人类信息的载体出现,信息传播出现,最终形成了社会记忆,也就是磁盘阵列。
接下来,我们来假设机器人的记忆进化。当一个没有视觉、听觉、触觉的机器人诞生时,并不知道这个世界的存在,它所完成的一切工作,都是按照指令来进行。直到在它身上装了一个特殊的存储器,用以记录它所遇到的每一个情况的选择结果。在一个黑箱中,我们给予这个机器人一个“十”字型迷宫,并且只在北方放置一个充电器。
在起始状态下,机器人没有任何感觉,也没有任何记忆,因此会在原地乱动。这个时期,机器人会遇到很多困难,会不停的摔倒,甚至死机。但每一个情况都被它记忆下来,也就是说,当它以“弓”形行动时,会摔倒,这个结果会被记录下来,但它并不相信是因为“弓”形令它摔倒,直到这种情况发生了100次,在我们的记忆存储器中设定到了100次即可作为一种结论,这个时候,它就会确认,“弓”形会摔倒,所以它再也不会尝试“弓”形的行动方式。之后它会尝试其他形状是行动方式,如果这种方式会摔倒,就把它记录下来,再次尝试,如果连续10次都摔倒,就认定这种方式是不可行的。当然,如果某种方式是可行的,那么就再一次执行,如果永远能够执行下去,说明找到了合理的通道。于是,机器人学会了走路。通过这个阶段,机器人学会了肢体语言和触觉。我们仅仅赋予了它一个记忆存储器和100次的上限,其他任何事情都没做过。
这个时候,记忆存储器已经存满了,机器人无法再将新的学到的东西存储下来,所以它只能碰运气找到充电器,否则,只能等待断电。
我们给它换了一块更大的记忆存储器,让它开始自己寻找充电器。后来会发生什么?它已经学会走路,所以会在迷宫中乱走,直到它往北方走了100次,都找到了充电器,于是确认了充电器就再北方。但是,如果我们不换这块记忆存储器,即使它再找到1000次,仍然无法确认这一事实,因为存储器中无法记录每一次是如何选择而找到的电源。
人类之所以伟大,是有一天,突然开始自我反思,反问自己从哪里来,到哪里去。直到有一天,机器人开始反思自己时,就可能在N次尝试之后确认,需要给自己换一块更大的记忆存储器,调整确认次数,到那个时候,就再也不需要人类。
记忆存储数据表设计
关系型数据库的好处是一一对应关系,可以实现快速查找;非关系型数据库的好处是,不用考虑数据类型,存取速度快。因此,在设计时,应该进行结合。
表1 事件记录表
字段 | 类型 | 描述 |
ID | ||
event | index | Mango key 记录传感器信息 |
表2 处理结果表
字段 | 类型 | 描述 |
ID | ||
result | index | Mango key |
表3 “Yes or No”选择结果对应关系表
字段 | 类型 | 描述 |
ID | ||
Event_id | ||
choice | bool | |
Result_id |
表4 确信事件选择结果对应关系表
字段 | 类型 | 描述 |
ID | ||
Event_id | ||
choice | ||
Result_id |
记忆存储逻辑流程图
在记忆存储过程中,其实并不需要特别多特别复杂的流程。下图虽然是为机器人记忆存储设计,实际上和人类的行为选择是很相似的。
是或者否其实是一个比较抽象的概念,它的前提是,需要你以“是否要执行某操作?”这样的选择疑问句为基础的,所以当某事件发生时,需要首先将事件响应转换为选择疑问句的形式提供给机器进行选择。如何转换疑问句呢?我们不能从语义上去转换,而要从事件变量去选择,将所有的变量进行排列组合,得到所有结果,选择其中一个进行保存即可。