算法究竟从何而来?

算法究竟从何而来?所谓的AI是否纯粹依靠先进的技术?人工智能与人类智能之间又究竟有着什么关系?

本文作者追溯到三千年前的火坛祭仪式,通过介绍火坛祭仪式的古代几何学、第一个神经网络Perceptron的计算矩阵、以及自动驾驶车辆的复杂导航系统等内容,得出一个结论:人们所谓的“AI”实际上是将集体行为、个人数据和个人劳动结合到私有化算法的漫长历史过程,算法源自经验而非先进的技术!

以下为译文:

在古代吠陀的宇宙起源论中有一个美丽的神话,传说由于宇宙的诞生,古神生主(Prajapati)被肢解成了碎片。在宇宙诞生之后,这位至高无上的神只剩下残躯。在他的火坛祭仪式中,印度教信徒为了重组这位古神支离破碎的躯体,他们根据精心设计的几何图案建造了一座火祭坛。

这座火祭坛的铺设采用了成千上万块形状和大小都十分精确的砖头,最后拼成一个猎鹰的形状。他们一步步按照指示,将每块砖准确地放入指定的编号和位置,在铺设的过程中他们还口诵咒语。祭坛一层层铺建起来,最后的面积和形状与信徒们的设计完全相符。

解逻辑之谜是此次仪式的关键,祭坛的每一层都必须与相邻的层保持形状和面积相同,但砖块的位置却不同。这个猎鹰祭坛最终必须面向东方,因为这是重组的古神朝着朝阳起飞的象征,他们通过几何手段完成了此次古神的转世。

插图来自印度哲学杂志27.1(1999年)

印度公元前800年左右问世的《ShulbaSutras》中对该火坛祭的仪式有详细的描述,这本书中还描述了一些更古老的印度传统。《ShulbaSutras》讲述了具有特定几何形状的祭坛的建造,他们建造的这些祭坛都是献给古神的礼物。例如,书中说:“如果你想摧毁现在和将来的敌人,那么就应该搭建一座菱形的火祭坛。”上述猎鹰形状的火坛祭由七个方格的示意图演变而来。在吠陀的传统中,传说仙人的灵魂都由七个方形的神我(宇宙实体或人)组成,而生主也是以这种形式出现。

1907年,艺术史学家WilhelmWorringer提出原始艺术诞生于山洞壁画的抽象线条,但人们可以假设艺术手法也源自线条与碎片的组合,而后又引入了日益复杂的形式和几何技术。意大利数学家PaoloZellini在对吠陀数学的研究中发现,人们通过火坛祭仪式,世代相传几何近似与渐进式增长的技术,换句话说这种技术就是算法,相当于莱布尼茨与牛顿的微积分。

时至今日,火坛祭仍然是印度目前仍在使用的古老仪式之一,也是算法文化的先驱。但是,我们怎样才能将火坛祭这种古老的仪式定义为算法呢?

一、火坛祭为什么是算法文化的先驱?

对许多人而言,通过最新技术的范式来阅读古代文化似乎是一种剽窃文化的行为。然而,声称抽象的知识技术和人工元语言属于现代西方工业,这种说法不仅从历史的角度来看并不准确,而且也是以殖民主义的眼光看待其他地方和其他时代的文化的表象。法国数学家Jean-LucChabert指出:“算法本身自然存在,甚至在人们创造出这个特殊的词语来形容它们之前就存在了。算法代表一组按部就班的指令,通过非常机械地执行,就能达到预期的结果。”如今,有些人可能将算法视为抽象数学原理的最新技术创新。其实,算法是最古老和最重要的实践之一,早于许多人类工具和所有现代机器:

算法并不局限于数学......

巴比伦人用算法来决定法律观点,拉丁语教师利用算法来矫正语法,而且在预测未来、决定医疗或准备食物等所有文化中也用到了算法……因此,我们在讨论食谱、规则、技术、过程、程序和方法时,也通过相同的词语来描述不同的场景。例如,中国人的数学和武术中都使用了“术”,这个词代表规则、过程或策略……

而现在,算法这个术语代表系统计算的任何过程,而这些过程都可以自动执行。主要受计算的影响,如今算法一词的含义已局限到仅代表一个基本要素,与过程、方法或技术之类的模糊概念有所区别。

在20世纪70年代,“民族数学”透过精英数学的柏拉图式循环有了突破性的发展,揭示了计算背后的历史主题。当前以计算和算法政治为辩论中心的政治问题其实非常建党,正如DianeNelson所说:谁更重要?谁做计算?算法和机器不能自行进行计算;它们始终为他人、机构和市场、工业和军队做计算。

二、算法是什么?

术语“算法”源自波斯学者al-Khwarizmi名字的拉丁化。他于9世纪在巴格达撰写了著作《印度数字计算》一书,该书向西方引入了印度教的数字,以及相应的计算数字的新方法,即算法。

事实上,中世纪拉丁语“algorismus”指的是用印度数字进行四个基本数学运算——加法,减法,乘法和除法的程序和捷径。后来,术语“算法”被人们用作表示任何逐步的逻辑过程,并成为计算逻辑的核心。

一般来说,我们可以将算法的历史分为三个阶段:在古代,算法可以认为是程序化、规则化仪式的过程,通过该过程实现特定的目标和传递规则;在中世纪,算法是辅助数学运算的过程;在现代,算法是逻辑过程,由机器和数字计算机完全机械化和自动化。

就人类的发展过程而言,可以认为社会实践和仪式过程中体现出的算法才是数字和数字技术出现的原因,而不是相反的方向。看看查尔斯·巴贝奇和卡尔·马克思的研究我们就能发现,现代计算正在从具体逐渐发展成抽象的形式。

三、作为计算空间机器学习的崛起

1957年,在纽约布法罗的康奈尔航空实验室,认知科学家FrankRosenblatt发明并构建了Perceptron,这是第一个实用的神经网络,它是所有机器学习的祖先,当时这是一个机密的军事秘密。

Perceptron的第一个原型是一台模拟计算机,由20×20个感光元(称为“视网膜”)的输入设备组成,通过电线连接到一层人工神经元,神经元分析输入并产生一个输出(一个灯泡打开或关闭,表示0或1)。

Perceptron的“视网膜”记录了诸如字母和三角形之类的简单形状,并将电信号传递给多个神经元,这些神经元根据阈值逻辑计算结果。Perceptron类似于照相机,可以通过训练识别特定形状,即做出有误差的决定(这是“智能”机器的功能)。

Perceptron还是第一个机器学习算法,它是一个基本的“二元分类器”,可以确定模式是否属于特定类别(输入图像是否为三角形,是否为正方形等)。为了实现这一点,Perceptron会逐步调整其节点的值,以便将大数字输入(400个数字的空间矩阵)解析为简单的二进制输出(0或1)。如果识别出输入图像为特定类别(例如三角形),则Perceptron的输出结果为1;否则它会给出结果0。最初需要一个人工操作员训练Perceptron学习正确答案(手动将输出节点切换到0或1),让机器在这些监督的基础之上,正确识别类似的形状。Perceptron的设计目的不是记住特定的模式,而是学习如何识别任意模式。

Perceptron中20×20感光元矩阵悄悄引发计算革命(随着“深度学习”机器学习技术的出现,它在二十一世纪初登上了计算的王位)。虽然Perceptron受到了生物神经元的启发,但从严格的逻辑观点来看,Perceptron并不是生物形态,而是拓扑形态;它标志着“计算空间”(或称“自我计算空间”)范式的兴起。

从那时起,计算范式中引入了第二个空间维度,而在此前的计算空间中只有线性维度(参见图灵机,它只能沿着线性的纸带读写0和1)。这种拓扑结构是人们今天“人工智能”的核心,可以更准确地描述为从被动信息范式到主动信息范式的转变。在Perceptron中,视觉矩阵的像素根据其空间配置以自下而上的方式计算,而不是通过自上向下的算法(比如当今由图形软件程序编辑的任何图像)处理视觉矩阵。视觉数据的空间关系塑造了算法的操作。

由于空间逻辑,因此研究神经网络的计算机科学分支最初被称为“计算几何”。计算空间(或称自我计算空间)的范式与对自组织原理的研究有着共同的根源,而后者正是二战后控制论的核心,比如冯·诺依曼的元胞自动机(1948)和KonradZuse的RechnenderRaum(1967)。

四、视觉劳动的自动化

即使到了二十世纪末,也没有人会将卡车司机称为“认知工作者”,或知识分子。在二十一世纪初,机器学习在自动驾驶车辆开发中的应用让人们对驾驶等手工技能有了新的认识,人们发现了这些工作中最有价值的成分,一般来说,这些工作绝不仅仅是手工技能,还涉及社会和认知技能(以及感性技能,它应当介于手工和认知之间,但人们在这方面对劳动的认识依然不足)。

司机做了哪些工作?人工智能应当通过传感器记录哪些人工任务,模仿统计模型,并通过自动化取代?回答这个问题的最佳途径是查看哪些技术已成功实现自动化,以及哪些技术尚未成功实现。

自动驾驶的工业项目已经明确指出(比政治经济学要更明确),驾驶劳动是遵循制定规则和自发的社会习俗的有意识的活动。但是,如果驾驶技巧可以转化为算法,那必然是因为驾驶具有逻辑和推理结构。驾驶是一种逻辑活动,而一般而言,劳动也是一种逻辑活动。这个假设有助于解决关于体力劳动和智力劳动之间老生常谈的争议。其中的政治悖论在于,人工智能AI算法企业的发展让人们认识到劳动中长期被人忽视的认知成分。劳动与逻辑之间的关系是什么?这成为了人工智能时代一个至关重要的哲学问题。

驾驶本质上也是一种社会活动,遵循制定的规则(具有法律约束)和自发规则,以及任何驾驶员必须遵守的“文化规范”。人们曾多次指出,在孟买开车与在奥斯陆开车是不一样的。

显然,驾驶需要强烈的感知劳动。事实上,绝大部分劳动都是感知性的,需要在眨眼间进行持续的决策和认知行为。认知不能完全脱离空间逻辑,并且通常在其更抽象的结构中遵循空间逻辑。感知是逻辑性的,认知是空间性的,这两个观察结果都需要通过经验证明,并无法通过那些构建统计模型以推断视觉空间(编码为3D道路场景的数字视频)的自动驾驶AI算法的大肆宣传。

五、空间的记忆和智能

西塞罗(Cicero)和古代记忆理论家认为,你可以通过正确的训练来巩固自然记忆。

在发表演讲时,你只需按顺序回忆房子的各个部分。

“此刻,对象在感知我,”画家保罗·克利(PaulKlee)在他的笔记中写道。这个惊人的断言如今已经变成了客观事实。他们谈论的不就是在不久的将来生成能够识别形状的轮廓,还能完全解释视野的“视觉机器”吗?

他们是不是也在谈论视觉新技术:在由计算机控制的视频相机上实现不可见视觉的可能性?......这种技术将用于工业生产和库存控制,也许还能用于军事机器人的技术。

既然他们正在为感知自动化做准备,为了人工视觉的创新,将客观现实的分析委托给机器,那么我们也许可以再考虑一下虚拟图像的本质......

六、总结

通过了解火坛祭仪式的古代几何学、第一个神经网络Perceptron的计算矩阵、以及自动驾驶车辆的复杂导航系统——这些不同的空间逻辑可以证实,算法源自经验,而非先进的技术。

火坛祭仪式是经验催生算法的一个例子,其代表的是社会和仪式空间的组织。该仪式象征着人们通过平凡的手段完成古神的转世;这种重建的实践也象征着用神来表示许多人(或通过许多人来“计算”神)。该仪式对社会的贡献在于世代相传基本的几何技能以及建造坚固的建筑。火坛祭仪式是一种算法思维形式,其遵循原始和简单的计算几何逻辑。

Perceptron也是一种经验产生的算法,根据空间划分进行编码,特别是视觉数据的空间矩阵。Perceptron的感光元矩阵定义了一个封闭的领域,并处理一个根据它们的空间关系计算数据的算法。这里的算法也表现为一个由经验产生的过程——在一个过程或模式多次重复之后,对其进行编码和具体化。所有机器学习算法都是经验产生的过程,利用相似模式的不断重复;“训练”机器,直至模式按统计分布出现。

自动驾驶车辆是一个由复杂经验产生算法的例子,它们是从复杂的空间构造(即作为交通规则的社会制度和道路环境产生的自发规则)发展而来的。在记录这些自发规则和给定场所的交通规则之后,自动驾驶车辆的算法试图预测在繁忙道路上可能发生的意外事件。对于自动驾驶车辆而言,自动化企业打造的乌托邦能够彻底消灭人类驾驶员,从而能够仅通过道路场景的视觉空间来决定地图的导航。

火坛祭仪式、Perceptron和自动驾驶车辆的AI系统都以不同的方式形成了自我计算空间和经验产生算法(也许,所有这一切都形成了劳动的隐形化)。

人们所谓的“AI”实际上是将集体行为、个人数据和个人劳动结合到私有化算法的漫长历史过程,这些算法用于复杂任务的自动化:从驾驶到翻译,从物体识别到音乐创作。正如工业时代的机器是从实验、技术诀窍以及技术工人、工程师和工匠的劳动力中发展起来的一样,人工智能的统计模型也来自集体智慧产生的数据。也就是说,人工智能是一个巨大的模仿集体智慧的引擎。人工智能与人类智能之间有什么关系?其关系就是社会的分工。

THE END
1.从算法到模型:走出“技术中立”的话语误区澎湃号·政务在网络文艺中,算法能够决定用户所看到的内容,这在一定程度上塑造用户的审美趣味和文化消费习惯。在此基础上,算法可能放大或掩盖某些审美趣味、情感倾向、艺术类型或主题内容,影响用户的文化消费选择,而过度沉迷和“信息茧房”等负面作用也随之产生。批评者将这些后果归因于算法。但与此同时,还存在一种截然对立的观点。https://www.thepaper.cn/newsDetail_forward_29641793
2.人工智能算法背后的故事:从启发到创新人工智能背后的那些看似神秘的算法,竟然是从大自然的奥秘、科学的启发和人类智慧的碰撞中诞生的?这些算法不仅改变了我们工作的方式,还在悄悄地塑造未来的世界。今天,就让我们一起揭秘,人工智能算法背后的故事,从最初的灵感闪现,到它如何演变成引领创新的核心力量!人工智能算法的灵感常常来自我们日常生活中的平凡现象。https://it.sohu.com/a/839485940_121188207
3.深度学习算法工程师为什么叫做炼丹算法炼丹师深度学习算法工程师为什么叫做炼丹 算法 炼丹师 作者:时晴 Focal Loss 针对类别不平衡问题,用预测概率对不同类别的loss进行加权。Focal loss对CE loss增加了一个调制系数来降低容易样本的权重值,使得训练过程更加关注困难样本。 loss = -np.log(p) loss = (1-p)^G * losshttps://blog.51cto.com/u_16213634/8910759
4.什么叫结构化的算法为什么要提倡结构化的算法结构工程师将算法分解成模块化的部分。这样做可以增强代码的清晰度和可维护性,提高编程效率。提倡结构化算法,因为https://www.bkw.cn/zcjls/ask/4577918.html
5.陈景辉:算法之治:法治的另一种可能性?对法律算法化与算法之治的欢迎,明显属于后一种乐观态度。这是因为,一方面,算法原本就是信息科技与人工智能的技术底色,另一方面,法治本来就是关于一个国家或一个社群的整体性公共理想。 但为什么会有这种乐观态度?我认为,主要理由有两个:弱的人工智能与强的工具性。但严格说来,它们其实是同一件事情的不同侧面:https://www.legal-theory.org/?mod=info&act=view&id=26587
6.什么是区块链共识算法?共识算法有哪些?区块链技术区块链以太坊区块链目前基于工作量共识算法,但是最终Casper协议将被推出以将网络从工作量共识切换到权益共识,以尝试增加网络的可扩展性。 为什么共识算法对于加密货币至关重要 就如同前面所说,共识算法对于维护加密货币网络的完整性和安全性至关重要。它们提供了一种分布式节点就正确版本的区块链达成共识的方法。对当前的区块链https://www.jb51.net/blockchain/770722.html
7.最优页面置换算法既然都不能实现,为什么还能叫算法–PingCode最优页面置换算法(Optimal Page Replacement Algorithm)是一种理论上的模型,它能确保最低的页面置换频率、减少缺页异常次数、提高系统性能。之所以称之为算法,是因为它确实定义了一套处理页面置换问题的规则和流程。尽管在实际操作系统中因为无法预知未来的页面访问序列而难以实现,但它仍然作为评价和比较其他页面置换算法的https://docs.pingcode.com/ask/201126.html
8.JavaScript数据结构和算法JS为什么要学习数据结构和算法 数据结构和算法对于很多前端工程师来说,一直觉得是可有可无的,但其实不然,个人觉得,前端工程师其实是最需要重视数据结构和算法的人,因为前端所做的东西是用户访问网站第一眼看到的东西,特别在移动浪潮到来之后,对用户体验越来越高,对前端提出了更高的要求,面对越来越复杂的产品,需要坚实https://download.csdn.net/blog/column/7041520/89069584
9.「递归」第9集我在腾讯做研究腾讯云开发者社区我们为什么叫「递归」 “递归” (recursion) 是一种在程序设计语言中被广泛使用的算法。它有两大特点,一是调用自己,二是化繁为简。我们当中那些优秀的技术人又何尝不是如此?他们以身作则,用实际行动影响身边的人,规范了流程、提高了效能,使整个团队从中得益。这就是我们「递归」栏目的初心,记录平凡腾讯技术人的https://cloud.tencent.com/developer/article/1716089
10.数据结构与算法为什么要使用算法李灵晖今天来说说为什么需要使用算法? 算法是什么?算法是:指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能https://www.cnblogs.com/raylee2007/p/4774563.html
11.为何开展算法敏捷治理?如何落地?近日,阿里研究院和阿里巴巴人工智能治理与可持续发展研究中心(AAIG)邀请清华大学公管学院教授薛澜团队多位成员一同座谈,就算法治理、算法公平、算法透明等话题进行深入探讨。电子科技大学公共管理学院副教授、清华大学产业发展与环境治理研究中心研究员贾开老师,分享了《算法敏捷治理的挑战与解决方案》的思考。 http://www.aliresearch.com/ch/information/informationdetails?articleCode=390669866845212672&organName=null&type=%E6%96%B0%E9%97%BB¶meter=null
12.11消息认证码(MAC)前缀MAC算法的问题使得人们想出了一系列非常聪明的变种。例如,为什么不将key放在后面呢(t=H(m||k)),或者为什么前面放一下,后面放一下(t=H(k||m||k)) 值得说明的是这些都至少和前缀MAC一样好,但是他们都同样拥有严重的问题。例如后缀MAC系统会更加暴漏hash函数的弱点,一个成功的碰撞攻击会打破MAC。三明治MAhttps://www.jianshu.com/p/2bfa98f475c0
13.为什么说slam技术不等于智能导航?SlamtecD*算法则是一种 动态 启发式路径搜索算法,它事先对环境位置,让机器人在陌生环境中行动自如,在瞬息万变的环境中游刃有余。D*算法的最大优点是不需要预先探明地图,机器人可以和人一样,即使在未知环境中,也可以展开行动,随着机器人不断探索,路径也会时刻调整。 https://www.slamtec.com/ko/News/Detail/145
14.算法与数据结构02(基础篇)——时间复杂度简谈算法的复杂性体现在为什么算法要注意复杂度? 算法的复杂性体现在运行该算法时的计算机所需资源的多少上,计算机资源最重要的是时间和空间(即寄存器)资源,因此复杂度分为时间和空间复杂度。 基本概念 大O表示法 1. 用常数1取代运行时间中所有常数 3->1 ;例:去定执行3次、6次、2次标记为 O(1) https://juejin.cn/post/6844904111809249293
15.关于算法多样化的若干问题的思考研究过程一、为什么要提倡和鼓励算法多样化 首先是计算教学的目的发生了变化。 过去计算教学的目的是使学生具有整、小、分数四则计算的能力。把公认的规范和有效的算法教给学生并配上大量的计算练习,是达到这个目的的基本途径。为了便于教和练,一般更重视基本算法的掌握。 http://www.hlsx.wj.czedu.cn/html/article816629.html
16.深度学习Adam那么棒,为什么还对SGD念念不忘?一文看懂深度学习为什么会这样?平平淡淡才是真的吗?1 框架回顾优化算法 首先,让我们回顾一下各种优化算法。 深度学习优化算法经验 SGD -> SGDM -> NAG ->AdaGrad -> AdaDelta -> Adam -> Nadam 这样的发展过程。谷歌可以看到很多教程文章,详细告诉你这些算法是如何一步一步演变的。在这里,我们改变主意,用框架梳理所有优化算法https://www.tulingxueyuan.cn/tlzx/jsp/2226.html