PDF 物理页索引 190
文件中的第 191 页 · 印刷页码:175
$$
x [ \frac { 1 4 } { 1 2 } , \frac { 1 4 } { 7 } ] = x + \frac { 1 4 } { 1 2 } + \frac { 4 } { 1 2 } = \frac { 4 } { 9 } x + \frac { 5 } { 1 2 }
$$
● 模型是指机器学习所要产出的内容,一般是多个可被计算的决策函数或者条件概率分布函数以某种拓扑结构串联起来。把输入数据代入这个模型中计算,就会得到符合真实情况的输出结果。
● 策略是指要按照什么样的准则进行学习,具体来说是按照什么样的准则选择出最优的模型。从宏观角度讲,一般我们都会以“减少模型的输出结果与真实情况的差距”作为学习的准则,这里的“差距”同样也是以可被计算的函数的形式来描述的,被称为“损失函数”。
● 算法是指如何依靠历史数据,把正确的模型中涉及的未知参数都找出来。在确定寻找最优模型的策略后,机器学习的问题便归结为寻找模型最优参数的优化问题。
以“怎么做”来解释和理解机器学习具有更强的可操作性,在稍后讲解机器学习如何训练模型的实战章节中,会承接这个思路,深入机器学习的工作过程,继续讨论机器学习模型、策略和算法的相关内容。
6.3 机器学习的意义
自通用可编程的计算机出现以来,人与机器交互的唯一手段几乎就是程序。一段计算机程序可以看作对一连串数据从输入到输出的处理过程,程序员与机器的交流是通过设计、编码来完成某种功能。譬如一个最简单的应用程序,界面逻辑、控制逻辑、业务逻辑、数据结构等各个层次,都必须由程序员去设计、去思考,然后用程序语言编写出来,再让计算机执行。运行在计算机中的程序,无论多么庞大、复杂,只要是由人类所设计、编写的,那么它对人类来说就是一个完全的“白盒”。人虽然没有办法像计算机那样高速运行程序,但在理论上可以知道计算机程序执行过程中每一个时刻的每一个细节。在整个程序执行过程中,计算机从头到尾都只是运算工具和信息存储容器,只参与了“执行”,完全没有参与到问题解决的“思考”过程中。
第 6 章 机器学习概览
175
PDF 物理页索引 191
文件中的第 192 页 · 印刷页码:176
那机器学习改变了什么呢?机器学习在一定程度上把“黑盒”的思想带入计算机中,用机器学习处理问题,并不追求一开始就找到解决问题的办法或处理过程的精确细节,而是让计算机用某些被先验证实的行之有效的基本模式去模拟问题中的数据发展变化,试图用足够多的反映现实现象的数据来直接驱动机器去模拟并拟合这些已知的现象,然后去预测那些具备相同规律但还未知的现象。说白了,机器学习是在追求让人类不用再去思考和设计的可能性,人类只需收集到足够的经验数据,让计算机能够自己琢磨,找到模拟的办法,进而解决问题。
今天的机器学习还不能让计算机直接做到自己总结出事物发展的规律,自己去设计程序来解决问题<sup>○一</sup>,但能够让它先去做模拟,在一定精度上找出问题可接受的近似解。机器学习在用一套很一般化的“模子”打磨出能够解决特定问题的“武器”,虽然过程不同于传统人工编程,结果也不同于可阅读、可解释的程序代码,但这里所做的事情,从某种意义上说就是一种“能够自发产生解决问题的程序’的元程序”。现在各种机器学习的经典学习策略,如决策树、支持向量机、神经网络,本身并不针对具体的问题,但通过这些算法让机器从数据中“学习训练”后,却可以做很多事情,一会儿下棋,一会儿打游戏,一会儿预测房价,这些都不需要人类去思考出精确的问题解决步骤,是不是看起来就像是机器从数据中学会了这些技能一样?
前面曾提到“学习能力”也许是高级生命的天赋特权,诚然,如果要提炼高级生命的最明显的几种特征的话,“学习”很可能会与“进化”“生存”“繁衍”等并列,被选为最关键的几个特征之一。那有了机器学习这门技术,是真的让机器具备了一点智慧生命的特征了吗?答案并非如此,原本机器学习确实尝试过让机器自动学习、发现事物的运行规律,但是今天大家所讨论的机器学习,只是根据历史数据对未来数据进行的一种模拟,而非人类意义上的主要以学到了知识和规律为目的的学习,也许将后者称为“思考”,与“学习”区分开来更为恰当。不过,从结果的角度来看,“机器学习”和“人类学习”又是殊途同归的,这两种行为的结果都是可以自主地获得原来没有的能力,自发地找到解决问题的方法,从这个意义上讲,只要结果确实能够解决问题,说机器会“学习”了也并无不可。
176
第三部分 第三波高潮
○一 有人可能会以 GPT 模型能够编写程序代码为例反对此观点。GPT 的“编写代码”依然是对现实事物的模拟,其本质是一种序列到序列生成模型的输出,根据输入序列和上下文窗口预测出最可能正确的输出序列。GPT 的输出代码片段与输出中文、英文答案并无本质差别,它并不是通过总结出规律,将规律应用于具体问题,用编程的方法解决问题得到答案的。
PDF 物理页索引 192
文件中的第 193 页 · 印刷页码:177
所以,现在机器学习依旧备受关注,它代表了一种人类使用计算机的全新方式,很可能是未来我们应对越来越复杂、超过人类智力能够处理的问题时,人与计算机合作、交互的主要形式。
6.4 机器学习的分类
机器学习除了此前提过的可按照学习方法的差异划分为无监督学习(Unsupervised Learning)、 监 督 学 习(Supervised Learning) 和 强 化 学 习(Reinforcement Learning)三类外<sup>○一</sup>,从不同的角度出发,还有其他剖析机器学习的分类方式。
如按照机器学习的不同应用类型来划分,可以分为判别模型学习(Discriminative-Model Learning)和生成模型学习(Generative-Model Learning)两大类。判别模型着重寻找出不同类别数据之间的隐含差异,广泛应用于分类、决策、预测等任务中,譬如用户画像、广告推荐、文字识别、人机对弈等,本章稍后要实践的“垃圾邮件判断模型”是最为经典的判别模型应用之一。不同于判别模型,生成模型是在 2014 年才真正开始崛起的,虽然“ 年轻”<sup>○二</sup>,却展现出了势不可挡的燎原之势,将机器学习乃至整个人工智能学科推到了一个史无前例的高度,即使不是业内人士,对 ChatGPT、Stable Diffusion、Sora等词语也多有耳闻。生成模型关注的问题本质是联合概率分布,适用于诸如根据提问产生答案、文章自动摘要、机器绘画、视频生成、作曲编程等需要机器具备“创造力”的场景。这部分内容既是当前人工智能的热点,也是快速发展变化的前沿,我们将在第 8 章专门讨论。
第 6 章 机器学习概览
177
○一 部分资料中将“半监督学习”(Semi-Supervised Learning,SSL)也作为一种基本学习方法。○二 这里的“年轻”仅是指被公众所熟知的时间。第一个生成模型甚至可以追溯到人工智能概念被提出之前的 1948 年,香农给出过一个由英语双词频率表生成句子的例子,可以生成如“ Representing and speedily is an good”这样语法并不正确的英文句子。生成模型以前也诞生过一些不那么被大众了解的成果,如前文曾提到的隐马尔可夫模型,下一章介绍深度学习时顺带提到的受限玻尔兹曼机也属于生成模型。
PDF 物理页索引 193
文件中的第 194 页 · 印刷页码:178
还有一种分类方式是按照机器学习输出模型的可解释性进行划分。可解释性决定了学习的最终目标是透过现象找到背后的运行规律,还是只要找出特征与现象间的隐含关系就行了。机器学习在这方面的发展历程完全贴合了人工智能研究从最开始探究规则到后来主要依靠仿生模拟的发展过程,大体上,研究的目标最初是白盒可解释的学习,主要是基于规则、树结构或线性回归的机器学习,随着符号主义的衰落,研究的主要目标正在朝着黑盒不可解释的学习方向持续倾斜,主要是基于神经网络、概率统计的机器学习。笔者对上述提到的三种分类方式中出现的机器学习方法进行了总结,如图 6-1 所示。
图 6-1 中白盒可解释的学习在本书第 3 章讲解符号主义的“学习期”时已经初步涉及一些,目前它仍然只能处理比较浅层的、直接藏于数据背后的简单规律,很难处理需要经过思考和复杂推理才能得出的深层的、本质的规律。这条分支现已不算是机器学习的主流,有些学者甚至提倡摒弃这部分内容,这当然是有失偏颇的,但由于篇幅所限,笔者并没有把这部分内容拆分成单独的章节来讲解<sup>○一</sup>。除此之外,图中的其余内容均是第三部分(第 6 章至第 8 章)的重点,笔者会在后续章节一一展开介绍。
178
第三部分 第三波高潮
PDF 物理页索引 194
文件中的第 195 页 · 印刷页码:179
6.5 机器学习解决的问题
在本节中,我们先从一个通过数据统计进行学习的例子来入门,生活中数据统计的思想和解决问题的方法同样是计算机从数据的表象模拟和认知世界的方法。
笔者的朋友小黄有这样一个烦恼,他的女友跟他约会时从来没有时间观念,经常迟到。有一次小黄跟她约好三点在某个地点见面,一起去朋友家吃饭,出门的那一刻小黄突然想确认一个问题:现在出发合适吗?会不会到了约定地点后,又要花上 30 分钟乃至更多的时间去等她呢?小黄决定找出一个恰当的策略来解决这个问题。
有几种策略可供小黄选择。第一种策略是保守策略,无论她何时出现,小黄都会守时到达。虽然这样确实稳妥,但他并不想采用这种完全容忍问题的保守策略。第二种策略是采用规律和知识来解决问题:小黄试图搜寻能够解决这个问题的知识,但很遗憾,没有人把如何跟女友约会这种事情作为知识来传授,小黄不可能找到任何能够解决这个问题的已有知识。第三种策略是追求最优的平衡策略:小黄把过往跟女友约会的经历在脑海中重现了一下,看看其中迟到占了多大的比例,这些迟到的情况有什么特征,然后利用这个统计值来预测女友这次约会迟到的可能性,如果这个值超出了小黄心里的某个界限,那就选择等一会儿再出发。
思量至此,小黄马上统计出了他跟女友最近 20 次的约会记录,其中女友迟到的次数占了一半,这里面有 8 次迟到是因为约会有其他人参与,需要更多的化妆时间导致的,其余 10 次准时到达和另外 2 次迟到都是两人单独约会的。这次约会的目的是去朋友家吃饭,会有其他人参与,那按照以往经验,符合这个特征时她迟到的记录有 8 次,准时的记录仅有 2 次,迟到的概率为 80%,这个值已高于小黄心中可忍受的阈值,因此小黄选择推迟出门的时间。在做决策的过程里,小黄采用了以往约会的数据来预测这次还未发生的约会中女友是否会迟到,并且调整了他的约会决策,这种根据对过去经验的数据统计来改变系统行为的方法就是“基于统计的机器学习”。
第 6 章 机器学习概览
179
○一 如读者对这部分内容感兴趣,可参考机械工业出版社出版的《可解释机器学习:模型、方法与实践》(书号为 978-7-111-69571-4)一书。
PDF 物理页索引 195
文件中的第 196 页 · 印刷页码:180
以上例子中,小黄的第二种策略(尝试采用规律和知识来解决问题)和第三种策略(尝试根据经验和数据来解决问题)恰好与机器学习中的“推理”和“统计”两种手段相对应。在第 3 章介绍逻辑学的内容里,笔者曾经引述过这样一个哲学观点:人类认知世界的两种最基本的手段是“演绎”和“归纳”,有什么样的工具、手段,就能解决什么样的问题,人类能够认知的知识范围,是由这两种手段决定的。顺着这个逻辑,机器学习能够解决的问题的范围,当然也是由它所掌握的工具、手段所决定的。机器学习的两个主要发展方向与演绎、归纳相对应,演绎是根据一般规律推理出对个别事物的认知,归纳则是根据个别事物统计获得对一般规律的认知。如果我们以“可推理”和“可统计”作为分析维度,可把人类全部需要解决的问题放置到如图 6-2 所示的四个象限上<sup>○一</sup>,得到四类不同的知识和问题。
180
第三部分 第三波高潮
○一 此处部分观点引自北京大学信息科学技术学院院长、中国工程院院士高文教授在 2016年中国计算机大会(CNCC)上的演讲内容。
PDF 物理页索引 196
文件中的第 197 页 · 印刷页码:181
人类所有的知识和问题,有些我们可以统计,有些我们没办法统计,有一些知识是我们可证明、可推理的,还有一些是我们没有办法去证明和推理的。按照这两个维度来划分,在这个二维坐标里放入人类所有的知识。横向上,理论上只要是可推理的,都可以通过逻辑演绎,采用符号、规则这样的工具,让机器最终完成推理。纵向上,理论上凡是可统计的,都可以通过大数据、统计学的手段和各种数据挖掘分析方法,得到一个性能足够好的模型,令模型的输出结果可以满足所需的精度拟合现实结果,通过模拟的方式来解决这类问题。
在这个二维坐标空间中,人类的知识或者说人类可能遇到的问题,被划分为四类,如图 6-3 所示,分别为“可统计也可推理—我们知道现象也知道规律”“不可统计却可推理—我们知道规律却不能观察到现象”“可统计却不可推理—我们可以观察到现象但不能总结出规律”“不可统计也不可推理—我们既不知道现象也无法总结出规律”。
● 第一类问题(我们知道现象也知道规律):对这种可推理、可统计的问题,无论用何种方法,原则上我们都可以找到答案。
● 第二类问题(我们知道规律却不能观察到现象):对于能够通过已知规律推理得到未知现象的问题,例如各种数学定理、宏观的物理定律都是依靠严格的逻辑推理得出的。我们知道了今天地球的位置、角度、速度、质量等,完全可以准确无误地预测出 1000 年之后地球的精确位置,这个预测就是根据人们已掌握的天体运行规律来推理得到的。对于处于这个象限的问题,目前计算机作为计算工具,可以很好地代替人类完成定律、公式的运算过程,但是在自主发现和证明规律方面还处于非常初级的阶段,解决问题的主要方法是人类去思考和发现规律,再通过编程让计算机应用这些规律去解决问题。这一块是符号主义探索的方向。
第 6 章 机器学习概览
181
PDF 物理页索引 197
文件中的第 198 页 · 印刷页码:182
● 第三类问题(我们可以观察到现象但不能总结出规律):不知道规律,但可以根据已知现象的统计结果去推测未知现象。譬如小黄预测他的女友约会会否迟到的策略,依靠的就是他长期对女友约会迟到的特征进行统计学习之后得出来的;再如天气预报这类应用,气象系统是典型的受混沌理论约束的系统,几乎不可能靠严格的推理来获得满意的结果,但是可以根据长期记录的天气变化前的各种特征来做出很有效的预测。这个象限是统计学习的主要发力点,做出了一些很不错的成果,是现在机器学习备受关注的原因所在。
● 第四类问题(我们既不知道现象也无法总结出规律):这类问题我们既不知道它蕴含的规律,也没有办法统计出任何有规律的特征。譬如彩票的开奖号码,如果没有任何“黑幕”,这确实是一个没有人工干预的真随机事件的话,那么即使提供给你所有历史开奖的数据,或者让你对彩票摇奖过程做研究找规律,对中奖结果的预测也不会产生什么帮助。要解决处于这个象限的问题,就必须靠人类的“顿悟”了,现在机器还暂时难以涉足这个领域。
还需注意到,这些分处于二维坐标四个象限内的知识和问题之间的界限并非绝对不变。所谓一个问题不可推理,其实在大多数情况下都是在说推理的难度非常大,或者涉及的细节变量很多而难以推理。说现象没有规律,其实并不是说这是真正无规律的真随机事件,而是样本数量不够多,或者所选取的观察特征和观察的尺度不够准确。完全不可推理、不可统计的问题在现实世界中还是较为少见的。同理,机器学习方法所能解决的问题,或者说机器学习方法所能适用的范围,也并非固定不变,而是随着新理论出现、方法改进和技术及硬件能力的提升不断拓展,逐步从不可推理到可推理,从不可统计到可统计,每一次人工智能革命都把机器能处理的问题范围向外拓展一些。机器获得智能也不是一蹴而就的,而是随着这个发展进程逐渐变得更智能,如图 6-4 所示。曾经有学者感慨过,每当一个问题被计算机解决了之后,大家就不再认为这是人工智能了<sup>○一</sup>。算不算人工智能这一点其实并不重要,重要的是,现在人与机器配合能够解决的问题越来越多,人类正在与机器一起解决更多的问题,逐步开拓智慧的疆界。
182
第三部分 第三波高潮
PDF 物理页索引 198
文件中的第 199 页 · 印刷页码:183
6.6 进行机器学习:实战模型训练
行文至此,都还是在理论层面上讨论机器学习,接下来就要接触到实际操作和细节层面的内容了。一旦涉及具体操作实践,我们将不得不面对大量必须了解的但日常生活中又基本不会用到的概念。许多其他学习资料是从数学的角度来介绍和解析这些概念的,充斥了许多公式和证明推导。按照本书一贯的叙述风格,此部分依然会尽可能地不依赖专业知识。为此,笔者设计了一个机器学习的实战案例,希望讲解完这个完整的通过机器学习解决问题的案例后,读者能对机器学习的步骤和概念有较为直观、准确的认识。
第 6 章 机器学习概览
183
○一 来自麦卡锡的著名评论,原文为“ Note that it follows that once we do know how to solve them, they are no longer AI ”。
PDF 物理页索引 199
文件中的第 200 页 · 印刷页码:184
6.6.1 机器学习的一般过程
读者一定用过电子邮件,电子邮件这种低成本的信息传输渠道,在为我们的工作和生活带来极大便利的同时,也被广告商甚至诈骗分子用来传递各种垃圾信息。所以,今天的电子邮件服务商除了注重速度、容量和稳定性这些性能指标之外,也会关注如何为用户过滤掉垃圾邮件,最大限度地避免用户受到骚扰。不过这并非一个容易解决的问题,虽然人类可以轻易地区分出一封邮件是有意义的还是无意义的,但是很难总结出一个垃圾邮件的评判准则,这种很难摸索出规律却可以轻易进行统计的问题,就很符合用统计机器学习方法来解决问题的特征。
在此实战中,将设计一个基于机器学习的邮件过滤系统,这个系统要通过分析一系列事先已经被用户标注为非垃圾邮件或垃圾邮件的记录,得到一个邮件的判别模型,这个模型可以分辨出新收到的邮件是否属于垃圾邮件。如果应用前面米切尔教授对机器学习要素的定义的话,这个机器学习过程的任务、度量和经验分别定义如下:
T(执行任务):判别是否垃圾邮件。
P(性能度量):成功过滤出垃圾邮件的邮件百分比,以及非垃圾邮件被误判的百分比。
E(历史经验):一组事先已经被用户标注为垃圾邮件的记录。
总体来说,机器学习中所说的训练判别模型,是指从真实世界的一系列历史经验中获得一个可以拟合真实世界的,能够对事物进行分类、预测、决策等的模型。这个过程通常包括如图 6-5 所示的若干个步骤,我们会按照机器学习模型的训练过程逐一讲解各个步骤要解决的问题。
训练的第一步是处理如何从传感器中取得数据、如何过滤噪声这些问题,在实际工程中,这些都是不可或缺的工序,不过我们的实战不会涉及这方面的内容,因为这只是工程数据采集和数据统计方面的重点,并非机器学习理论的主要关注点。我们将聚焦在“挑选哪些数据的特征属性来建立模型”“根据何种策略选择模型”“如何优化模型参数”以及“如何测试模型”这样的问题上。
184
第三部分 第三波高潮