人造神:算法 Algorithms

VII.ChariotVII.Chariot

算法不光是个计算机词汇,它描述的东西远超过计算机科学的范畴。在计算机程序里,算法是程序的根本。高德纳在他的著作《计算机程序设计艺术》裡對演算法的特徵歸納:
输入:一个算法必须有零个或以上输入量。
输出:一个算法应有一个或以上输出量,输出量是算法计算的结果。
明確性:算法的描述必须无歧义,以保证算法的實際执行结果是精確地符合要求或期望,通常要求實際執行結果是确定的。
有限性:依據圖靈的定義,一個演算法是能夠被任何圖靈完備系統模擬的一串運算,而圖靈機只有有限個狀態、有限個輸入符號和有限個轉移函數(指令)。而一些定義更規定演算法必须在有限個步骤内完成任務。
有效性:又称可行性。能够实现,算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现。

由此可见算法其实是计算机语言描述出来的处理问题的序列。在计算机程序的算法中,包含五种运算语句:声明,赋值,运算,循环,判断。声明,就像是创建一个容器,给容器起个名字方便可以找得到和引用;赋值,就是给这个容器里加上内容;运算,就是各种数值方面的运算;循环,重复某一部分程序或者整个算法;判断,条件性语句。

再怎么复杂的程序,也是由算法的组件构成的。那么,算法的概念,能不能延伸到人类乃至是自然界当中去呢?其实是可以通过算法的角度来描述人类或者是自然界规律的。

(中断了一个月,上个月的时候这段时间总是熬夜,脑子不好使写不出东西来,现在准备集中更新一波)

算法这个概念的精妙之处在于,计算机的发展中无意识地或者说必然地演化出算法这个概念,算法可以是结构性的,可以不断拆分成最基础的单元,如果把这个概念应用到研究动物和动物的行为模式上,就会发现他们也具有某种算法,由瓦尔 赫拉利在其著作《人类简史》中也有类似的描述,举个例子,一只熊在森林里闯荡,他的感官正在搜索猎物,搜索这样的概念,就是十分明显可以在计算机里找到的概念,如果这头熊随机在森林中游荡,遍历每个方向搜集气味来确定猎物的方向。再比如草履虫的一生中,就是循环执行搜集食物,分解食物,复制自我,这样的过程,复杂的计算机算法,也能被这样拆分成这样的小单元并用判断,循环来进行描述。相信笛卡尔等等科学家如果听到这些理论,他们也能开始理解计算机这样的现代概念,因为在他们的时代,本来就倾向于认为动物和植物都是类似机器那样的东西。是自动化的。

但是倘若他继续听,就发现自己不能苟同了。因为根据这样的理论,人和人类的社会也能被拆分成算法的模式进行描述,而且其复杂程度并不算很高。在那个年代宗教的影响下人们总是认为人是至关重要,与众不同的。实际上人也可以拆分成算法来描述,这才是十分具有建设性的。

同时这也向我们揭示了人总是在科技发明中找自己这个道理,蒸汽机时代,人们喜欢说,人就像个蒸汽机,压力达到阈值的时候就会需要发泄。也算是个不错的比喻。现在人更倾向于把自己比作电脑了,把自己比作蒸汽机的人肯定不如那个年代多了。为什么会有这种现象呢。其实也很简单,因为人是人,人所创造东西的时候,脑子里自然满是自己的概念,创造出来的东西肯定跟自己有关,甚至相似。

这向我们揭示了弱人工智能是很有可能通过计算机来实现的,许多人持相反观点。弱人工智能当代的基本思路是深度学习,通过大量样本,大量数据,充分挖掘了计算机的优势,以期待计算机做出类似人类的反应,实际上使用信息系统来预测来年收益的公司已经有很多,股票市场也有了计算机操盘员。模拟人的思考,思考更广阔的问题,只是数据量和时间的问题了。

同样,计算机也是可以实现强人工智能的,但是毫无疑问需要算法理论的辅助,如果通过深度学习去演算和模拟人的感情和细微的心理结构,硬件能力的压力十分大,如果提前设计一些数据结构和算法,再加上深度学习的填补,就比较有可能了。比如用理解层次(环境,行为,能力,价值观信念,身份,精神)把人的决策分析系统分为六个层次。在一个典型的例子中,测试者给出一个行为模式的描述,人工智能对关键词进行提问,从而达到进入下一个层次的目的。

或者说,当我们转化一些心理学的概念和模型为计算机算法,可以大大降低深度学习进行的复杂度,例如,如果我要为强人工智能构建一个完整的人格,我先输入基础精神,然后是身份,然后是价值观,规则和信念,然后增加记忆和知识,然后填入能力。或者说,我只需要填到信念价值观这一层,就可以开始深度学习,然后它会自己习得和整理出下一层,以他的身份为基础,信念价值观为派生物,加上外壳就是完整的态度。总之给出一定的结构和线路,会比自由瞎发展要容易得多。这就好像写文章,老师不能帮助学生写,但是可以给出一些思路,同样能够达到建设性的效果。

在这个过程中,语言性东西如何转化成半结构化数据十分重要,如果要给强人工智能输入一条记忆,可能会有时间,地点,参与人,事情的原因,诱因,环境因素,人的因素,过程,涉及的人与物等等。记忆输入进去以后,它是个活的东西,会在各种规则的控制下与别的记忆,与决策机制互相作用,最终产生新的价值观和信念,还可能会更新身份。这样的操作下,崩溃的可能性是显而易见的,就像当人接受不了现实的时候,也会崩溃。这时候我们就能发现,区分强人工智能的潜意识和表意识可能是具有建设性的,潜意识具备压力处理机制,自我蒙骗和自我修复。同时NLP还认为潜意识具备过滤器 (filter) ,简单来说就是潜意识会定义理解的方式,来达到与自我同一化过程的目的。就像一个计算机算法可能只有10行,加上排错机制和排错代码以后,可能达到上百行,但是程序的健壮性和稳定性就大大提高了。

文章被以下专栏收录
还没有评论
推荐阅读