第02课:学习机器学习原理,改变看待世界的方式

第02课:学习机器学习原理,改变看待世界的方式

学习机器学习,除了有上一篇中讲述的那些务实的作用,在务虚方面同样有用。

学习一个个模型运作的原理,看到现实的事物如何转化为数字被计算,结果又如何映射回现实世界来影响我们的生活。

对机器学习的掌握,能为我们客观认识现实带来下面这些帮助。

破除迷信

在这个人工智能看起来要席卷一切的年代,不光是正在或者立志于在 AI 领域做技术工作的人,任何人都有必要从原理角度了解一下机器学习、深度学习是干什么的,如何起到作用的。

作为一个带有神秘色彩的热点概念,人工智能(AI)被热炒被歪曲被妖魔化是难免的。

了解原理,知道人工智能是一个学术研究领域,目前在工业界有一定的应用和探索。AI 归根到底是个技术问题,可学、可用、可研究亦可质疑,而不是只能顶礼膜拜的法术神功。

具备最基本的判断能力,才有可能不会被“神话”迷惑,不被“鬼话”恐吓。

知道 ML/DL 模型是如何工作的,总不至于看了篇《AI 专业毕业生年薪50万》就慌慌忙忙报个2万块的培训班,学了 pip install tensorflow 和 C&P 代码运行几个习题数据集,就以为能够找份年薪50万的工作了。

知道 AI 有哪些落地点和局限,就不至于瞟了几眼《XX 职业要消失了》,《XXX 岗位将被人工智能取代》之类的网文就骤然开始仇视社会,好像自己明天就没有活路了似的。

除了判断事,判断人可能更重要一些。

了解一件事的原理,自己有个基本的是非标准,再去看别人对它的评论,就不难看出评论者的“斤两”。也就不至于被其所说内容之外的语气、措辞,或者刻意的态度所误导。

追本溯源


人工智能从提出到现在几十年,已经数度沉浮。这些年间,模型、算法、实现技术更迭了几代,如今和当年已经是天壤之别。

但所有的发展都不是凭空出现的,新的方法、技术都是在原有基础上的创新。每一个具体的进步,都仅仅是向前的一小步而已。

最容易创新的是技巧和细节,越“大”的创新,出现的频率越低。而原理所揭示的,就是这种“大”的,相对稳定的东西。

机器学习最经典的那几个模型,历史都不短,长则半世纪,短的也快20岁了。

深度学习,早年是从属于机器学习的神经网络,因为运算能力不够而被束之高阁多年,近些年来借助计算机硬件和分布式计算的发展而大放异彩。

虽然技术本身和应用结果产生了巨大的飞跃,但从根本的原理层面,却是有着紧密的传承。

了解一件事是如何运行的;明晰事物发展的客观规律;知道从最简单的原理学起逐层推进,比从一个已经很复杂的状态入手一下子纠缠在各种不得要领的细节中要高效得多。

有了这样的认识,也就不会被一些名词所局限。不会仅仅因为人家做了一些细节改变,或者换了个说法就以为天翻地覆了。

具体到 AI 领域,真的了解了支柱技术的基本原理,总不至于:

看了一篇《当这位70岁的 Hinton 老人还在努力推翻自己积累了30年的学术成果……》,便宣布再也不学 CNN、DNN、RNN 了(好像真的学过一样)。

或者

因为《深度学习已死,可微分编程万岁!》刷屏,就以为目前在视觉、语音、NLP 这些领域已经在创造价值的 DL 工具瞬间消失无用了。

精进看待世界的方法

相较于仍然处于经验(“炼丹”)阶段的深度学习,传统的统计学习模型和方法已经具备了相对完善的理论基础。

我强烈建议:即使目标岗位是“深度学习工程师”,也应该从统计学习方法学起。

一方面深度学习与机器学习具有传承的关系,学习后者对于直观地理解前者有极大帮助。

另一方面,统计学习方法建立在将概念“数字化”(向量化)的基础上,以数学公式和计算来表达概念之间的关联及转化关系——机器学习是一种认识世界的工具,借助它,我们可以从一个新的角度来看待世间万物。

换句话说,当我们知道机器是怎样通过学习事物特征的概率分布和转换来掌握事物规律的时候,我们就有可能反过来审视自己看待世界的方法,发现其中不合理的部分,并主动优化自己的思维模型。

比如,我在学习机器学习原理的过程中,对人类的思维方式产生了一些思考:

人类的道德标准实际是一种社会层面的极大似然估计。

遗忘是学习的一个步骤,是一种对信息的过滤方法,也是人类在脑力有限情况下对自身大脑的一种保护机制。

人类的偏见是一种长期训练的结果,在信息极其匮乏的情况下,对人们做决定往往是有正向帮助的。信息越丰富,偏见的负面影响也就越严重。

大多数人最常用的思维模型是 KV Pair,有些人似乎终身只有这一种思维模型。

一般人往往默认一类事物的所有个体在概率空间是均匀分布的。在考虑某一个事物个体时,对其在同类事物中所处的位置——是小概率事件还是常态?发生概率相对之前是稳定、上升还是下降?——通常毫不在意,而一概认为被提及的个体很重要。

对于原因和结果的关系,多数人根本没想过去探究其转换模型,而直接默认是线性关系。比如:A 地的年均 PM2.5 指数是 B 地的10倍,PM2.5 被认为与肺癌发病率有关,于是想当然以为 A 地肺癌发病率是 B 地10倍。

当一件事物比较复杂,涉及多个方面的时候,要对它有一个全面的评价,目前最常用的方法是构建一个线性回归模型:选定一些特征,针对每个特征独立打分,最终加权求和(例如大学排名之类)。

线性回归是一个非常简单的模型,往往无法达到很好效果。但即使这样简单的模型,很多人还是无法掌握。

面对一项事物,既不能列举出其主要特征,也不知道如何评估每个特征,更不要提再加权求和。多数人最常用的全面评价标准,如果是一手资料则一般以某(几)个个例的某个特征来代替全集;如果是二手资料,则一般选择相信自己最先接触到的他人结论。

以上这些仅是一些很初级的想法,并没有进一步的研究验证。

我分享出来只是想说明:学习机器学习原理和公式推导,并非只是做一些无聊的数字变换。很可能由此为我们打开一扇窗,让我们从新的角度就看待世界,并为日常决定的思考过程提供更加可量化方法。


本系列课程转载自Gitbook李烨的达人课——《机器学习极简入门》

作者关在在机器学习行业的感悟见解独到,总结的很精炼,内容简洁排版优美。好东西就应该分享给更多人,下面是作者在 Gitbook 的主页。支持为知识付费,非常值得。

李烨