购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

9
算法的广阔天空

算法是指令序列,这就是它的全部,没有任何神奇、难以理解的地方。举个例子,假如我们想要按升序排列一组数字,为此我还编写了一个计算机程序:首先,读取第一个数字,将其与下一个数字做比较,如果第一个数字大于第二个数字,则将它们的位置调换;其次,比较第二个和第三个数字;之后不断重复这个操作,直到比较完列表中的最后一个数字为止。我根据列表的长度重复以上过程,直到表中的数字按照升序排列。

上述程序使用的算法被称为“冒泡排序”,我可以用伪编程语言将这一过程翻译为一组明确的指令。

取一个值,与另一个值进行比较,与第三个值相加,进行数学运算,执行循环操作,检验条件为真或为假,等等,这些都是算法。一个算法就像一个菜谱。

我们经常谈及脸书的算法、谷歌的算法,这其实是一种语言上的误解。比如谷歌的算法,更准确的说法应该是算法集合,它可以生成一个包含搜索内容在内的所有网站的列表,网站的数量可达数百个甚至数千个。然后,谷歌为每一个站点分配一系列由手写算法或经过训练的算法生成的数值。这些数值可以评估网站的受欢迎程度、可靠性和网站内容的趣味性等。如果搜索的内容是一个问题,那么这些数值可以评估网站给出的答案以及网站内容与用户兴趣是否匹配。这是一个极为复杂的过程。

但是,就一个训练好的系统而言,生成数值的代码在原理上非常简单,如果不考虑运行速度,几行代码就可以实现(因为快速运行的需求会使代码变得复杂)。系统的真正复杂之处在于网络神经元之间的连接,这种复杂性取决于该网络的体系结构及其训练程度,而不是取决于计算数值的代码。

在探讨智能机器的内部工作原理之前,我想概述一下自20世纪中叶以来人工智能历史的主要脉络。这是一场我很早就参与其中的激动人心的冒险,这个过程中有争论、有幻想、有暂时的停滞,也有只相信机器逻辑的科学家和像我一样从神经科学以及控制论中得到启发,为发展智能机器而通力合作的人。 +qPMOG9/Q5Lo68/S/g/8NLBDc69TZJ6N7W7DBxVyTqAahXfnI3yCcA0ay8q2R7bh

点击中间区域
呼出菜单
上一章
目录
下一章
×