Greenplum:从大数据战略到实现 (20):ABC:人工智能、大数据和云计算 1.5.4

阅读数:4 2019 年 12 月 18 日 21:26

Greenplum:从大数据战略到实现(20):ABC:人工智能、大数据和云计算 1.5.4

(认知边界上的考量)

内容简介
这是一本系统剖析 Greenplum 开源大数据平台的书籍,也是大数据战略制定与落地的实战型指导书!
本书围绕数字原生和云计算、大数据、人工智能驱动的企业数字化转型的核心诉求,从商业和技术实战视角分享了业界领先企业大数据战略的深刻思考,并提供了大数据战略从制定到落地的全面指导。既有高阶数字化战略高度对大数据的解读,又有技术实战角度对使用 Greenplum 大数据和机器学习平台实现大数据战略的实践指南。
本书作者来自 Greenplum 核心研发团队,致力于以开源、开放的理念和先进的技术推进大数据产业生态,助力企业以更低的成本、更高的效率实现数字化转型,并基于 Greenplum 开源社区培养大数据产业更多人才。
本书分为四个部分。

  • 第一部分介绍大数据战略。其中,第 1 章将分享作者对于人工智能、大数据和云计算之间关系的理解以及对人和人工智能的思考。第 2 章将介绍进取型企业为什么需要大数据战略以及如何建立大数据战略。
  • 第二部分介绍大数据平台。其中,第 3 章将以数据平台演进历史和未来趋势为主题,描述三次整合的背景及影响,介绍选择大数据平台需要考虑的因素,以及为什么 Greenplum 是理想的大数据平台。第 4 章将介绍 Greenplum 数据库快速入门指南。第 5 章将介绍 Greenplum 架构的主要特点和核心引擎。第 6 章将介绍数据加载、数据联邦和数据虚拟化。第 7 章将介绍 Greenplum 的资源管理以及对混合负载的支持。
  • 第三部分介绍机器学习。其中,第 8 章介绍 Greenplum 的各种过程化编程语言(用户自定义函数),用户可以使用 Python、R、Java 等实现用户自定义函数,还可以通过容器化技术实现自定义函数的安全性和隔离性。第 9 章将介绍 Greenplum 内建的机器学习库 MADlib,数据科学家可以使用内建的 50 多种机器学习算法用 SQL 对数据进行高级分析,并介绍如何扩展 MADlib 以实现新算法。第 10 章和第 11 章将分别介绍 Greenplum 如何对文本数据和时空数据(GIS)进行存储、计算和分析。第 12 章将介绍 Greenplum 丰富的图计算能力。
  • 第四部分介绍运维管理和数据迁移。其中,第 13 章会介绍各种监控和管理工具及相关企业级产品。第 14 章介绍数据库备份和恢复。第 15 章和第 16 章将分别介绍如何从 Oracle 和 Teradta 迁移到 Greenplum。

人工智能是否会取代人类这个问题,实际上涉及对于认知的无穷边界的考量:图灵机能表达的带有人工智能模型的可计算数(程序)无穷大,人的思考过程也无穷大,哪个无穷大更大?面对这个问题,大部分人会困惑“两个无穷大的数还能区分大小?”所以,这里有必要重新理解一下数。数有两个让人最头疼的问题:无穷问题和无理问题。据说知名的数学家、集合论的创始人康托尔(Cantor)就因为沉溺于数的无穷问题而得了躁狂型抑郁症。作者无意将这种痛苦带给读者,但是对于思考 AI 是否要取代人的读者,这个是绕不过去的坎。

自然数集、有理数集合和无理数集合在有限情况下非常容易理解,但是在无限的情况下很多属性会发生变化。我们看下面两个集合(N 为自然数):

  • 自然数集合 A{1,2,3,4,…,2N}
  • 偶数集合 B{2,4,,…,2N}

在 N 是个有限的数的情况下,集合 A 的元素的元素数(叫作基)是集合 B 的基的两倍。但是,当 N 无穷大的时候,两个集合的势(无限集合的基)就相等了。为什么呢?从偶数集中拿出一个 2,从自然数集合中拿出 1,再从偶数集中拿出 4,从自然数集中拿出 2,如此进行下去,可以用无穷自然数集 1 对 1 数的无穷集合叫作“可数”。一个无穷集合如果是可数的,那么就说它们的基和自然数集 A 相等。读者可以尝试证明一下无穷有理数集合也是可数的,只要把集合元素顺序的写法写得可数。具体做法就是把分子分母之和等于 1,2,3,4 的自然数一一列举如下:

有理数集合 C{1/1,1/2,2/1,1/3,2/2,3/1…}

读者可能兴致勃勃地把这个可数的数的证明推广到实数集,但是康托尔用对角论证法证明了实数集合是不可数的。康托尔的证明激发了图灵只讨论 [0,1] 区间的二进制形式的数,而使用二进制对实际计算机的发明产生极大的帮助。这里简单介绍一下这个证明方法,具体证明方法可以参考维基百科1。假设我们数完了所有的 [0,1] 之间的实数 r1,r2,举个象征性的排列例子如下(来自维基百科):

1 完整证明方法参考 https://zh.wikipedia.org/zh-cn/ 对角论证法

Greenplum:从大数据战略到实现(20):ABC:人工智能、大数据和云计算 1.5.4

我们现在把所有无理数数完了。我们创造一个新的超越数2,它的第 k 位取自上面数字 rk 的小数点后的第 k 个位并加 1,如果遇到 9 变成 0,所以这个新数就是 0.6251346…它和上述的数都不一样,所以它不在这个可数数列表中,可得出实数集是不可数的结论。这个证明带来另外一个非常有意思的结论:同样是无穷,实数集合的无穷要比自然数集合的无穷更大。如果把自然数集合的势记为 aleph-0(康托尔把它叫作超限数并用俄文字母标记为 0),因为康托尔想计算实数集的势,于是他引入了 [0,1] 区间的二进制形式的数和集合论。他尝试用小数点后无限位二进制数的 0 和 1 的交替的记法去对应实数里面的元素。为帮助读者理解,列举几个数如下:

2 无理数分为代数无理数和超越数。超越数的代表是 e 和 π。

Greenplum:从大数据战略到实现(20):ABC:人工智能、大数据和云计算 1.5.4

如果我们把 1 当作√一样的标记,学过子集的读者肯定觉得这个标记和列举含 3 个元素{0,1,2}集合的所有子集的记法很相似:

含元素 0 含元素 1 含元素 2 …… 对应子集
{}
√(1) {0}
√(1) {1}
√(1) √(1) {0,1}
√(1) {2}
√(1) √(1) {0,2}
√(1) √(1) {1,2}
√(1) √(1) √(1) {0,1,2}

将这个二进制小数列表无穷列举下去,那么对应的子集表也可以无穷列举下去3。这些二进制形式的小数对应所有[0,1]区间的实数4,而表格第五列中子集的列表也等同于无穷自然集的子集。因为一个含有 N 个元素(基为 N)的集合的子集数目为 2n,无穷自然数子集的数目就是 2aleph0,这个数也就是实数集合的势。康托尔猜测 2aleph0 就是下一个超限数 aleph1(1),中间不存在其他超限数,也叫连续统假设(这是希尔伯特提出的 23 个问题中的第一个问题5)。

3 注意这是无穷环境,这个例子形式只能帮助进行逻辑上的推理而不是准确的表述形式。

4 如果考虑整体实数,负数可以通过绝对值对应到正数,大于 1 的正数可以通过倒数对应到[0,1]。

5 由于不完备性的影响,已经在数学上证实了该假设不能被证明为真或假。

因为康托尔的工作,我们知道了实数集与可数数集同样是无穷大,但是实数集更大。图灵发明了图灵机和定义在其上的可计算数,所以图灵自然要考虑:“可计算数对应了可数数还是整个实数集?”遗憾的是,图灵证明了可计算数虽然包含无理数中的代数数(例如 sqrt2 这样的代数方程的解)和部分超越数(例如π和 e),但它是可数的。可数数的势 aleph0(0)远小于实数集合的势 aleph1 = 2aleph0。而世间万物都是数,且大部分数都是实数,实数中的大部分超越数都无法用图灵机表示。这意味着什么?第一个选择是我们拒绝承认不可计算的实数的存在,这就等同于我们构造了不存在的数;第二个选择是我们承认它们的存在,图灵机无法表达一个随机生成的无理数。那么人脑是否有个思考过程能对应一个无限、无理的数?图灵和邱奇恰恰认为人脑不能完成这个工作,这就是他们提出的邱奇 - 图灵论题。这个论题可以简单地表述为:“凡是人类能够执行的算法,图灵机也可以。”6用其等价的逆反命题来说是:“如果算法过程是图灵机不能解的,人类也不能解。”到这里,读者可以清晰地知道,这个是论题,它并不能被证明。人工智能是否能够取代人,本质上也依赖于这个论题是否正确。在作者眼里,这个论题就像几何的五个公理或者物理学里面的能量守恒定律一样,是我们公理化的认知边界。

6 参见 < https://zh.wikipedia.org/wiki/ 邱奇 - 图灵论题 >。

到这里,读者已经看到图灵机上能表达的可计算数是无穷的,但是有个更大的实数无穷是图灵机无法表达的。这两个极限的差别表现出图灵机的解决问题的范畴是有局限的。举个例子来说,我们不能发明一个程序检查另外一个程序的错误7。一个错误的程序会使图灵机进入失控状态,计算过程会进入到一个表格里面不存在的状态(m-config)。回到希尔伯特可判定性的讨论,图灵试图构造一个图灵机,从希尔伯特的《数学原理》中的几个公理和规则出发,让图灵机列举出所有可证明的公式。但是,图灵证明了这样的图灵机不存在。根据邱奇 - 图灵论题,人类数学工作者也找不到一个思考过程判断一个公式的可证明性。

7 用学术语言来表述,就是不能发明一个程序检查一个程序的停机问题。

图灵接下来讨论了一系列人和机器智能的问题。在 1950 年的 Mind 杂志上,图灵就人工智能这个话题发表了另外一篇论文“Computing Machinery and Intelligence”8。在这篇论文中,他提出了“机器能够思考吗?”这个问题。他认为思考和机器(读者可以认为 AI)的定义过于模糊,为此给出了知名的图灵测试来回答这个问题。在图灵测试中,被测试者(人)在一个黑暗的屋子里面与一台机器或一个人进行对话(那个年代采用文本方式,现在则可以升级到语音方式),若被测试者无法区分对话的是人还是机器,则可以称机器通过了图灵测试。这也是电影《机械姬》的故事情节的基础9

8 参见 https://en.wikipedia.org/wiki/Computing_Machinery_and_Intelligence

9 电影《机械姬》认为即使被测试者发现对方是机器也无法阻止个人的情感。

我们如何看待邱奇 - 图灵论题决定了我们怎么看待人和 AI 之间的关系。为帮助读者理解邱奇 - 图灵论题,作者尝试用通俗易懂的语言来表述。图灵机在某个状态下观察一个符号,然后切换到下一个状态,这个行为和我们人类数学工作者几乎一样。差别在于,邱奇和图灵认为机器的状态是有限的,类似于我们构建的表 1-1 的行状态是有限的10。图灵认为,如果人脑有无限的状态,必然因为有些状态无限接近而造成混乱。但是作者认为“人的思想可以支持一个无穷状态”,因为我们对人的意识理解得并不清楚,证明数学不完备性的数学家哥德尔也表示了类似的观点11。但是,机器智能或者人工智能的产生,极大地解放了人类在可计算数范围内求解问题的速度。机器智能的诞生似乎加速了人类对于数字世界中未知领域的探索。只是,我们对于新生事物的直觉反应总是恐惧,对机器智能的兴起也有类似的反应。图灵认为人类在上个世纪末不再会抵触和反对机器思考。但是到了今天,我们还是因为不了解或无法掌控机器智能而感到恐惧或不安,过度的恐惧和不安又有可能限制我们充分利用机器智能的长处,进而错过对于机器智能以外的世界的探索。

10 注意,这里说的是行数,就好像程序的指令数。指令可以跳转产生循环,但是指令的数目是有限的。

11 参见 Oron Shagrir, Gödel on Turing on Computability。

我们今天感受到的数字世界,存在一定的公理和论题上的边界。在这个边界里面也有黑洞,原因是不完备性;我们没有一条快速路径来鉴别黑洞,是因为不可判定性。但是,如果你和作者一样认为人的意识格局相比图灵机具有无限性,那么应该持续地去拓展这个边界。在拓展或者重构这个边界的时候,有些黑洞或许会消失,或许可以找到一条路径鉴别黑洞。就像希尔伯特说的:“我们必须知道;我们必将知道。”

Greenplum:从大数据战略到实现(20):ABC:人工智能、大数据和云计算 1.5.4

购书地址 https://item.jd.com/12668618.html?dist=jd

评论

发布