作者:KevinVIP
来源:大数据分析和挖掘(BigDataML)
自2016年AlphaGo掀起的这波AI浪潮以来,似乎不谈论点AI,都不好意思跟别人讲自己学IT的。各种X Learning、STOA Model、Training Tricks见诸各大频道。风口之下,AI似乎成为解决所有问题的silver bullet。笔者也是也花费了巨大的精力去投入学习各种模型。
最近有两个事情,让笔者产生了一些困惑:机器学习究竟有哪些局限性,有哪些是它能干的,有哪些是它不能干的?在它身上花费那么多精力是否值得?
第1个事情是:从AB Testing到POM,因果推断在营销应用中的作用,不亚于机器学习。看到贝叶斯网络之父Jedea Pearl的《Theoretical Impediments to Machine Learning with Seven Sparks from the Causal Revolution》,揭示了机器学习的理论局限性与因果推理的七大特性。
第2个事情是:一个机器学习的case,完整做一个pipeline,调参似乎是玄学,大部分模型缺乏解释性。performance再好,只能说明,模型对当前的样本拟合和泛化比较好。花费那么多的精力和算力,只为了挖掘并不见得能解释的相关性,而且精度还不见得能经过实践的持续检验。让人有点气馁。
系统讲机器学习/AI/深度学习局限性的文章还是比较少。本文试图提出自己的理解。
局限1:可用性、可靠性、稳定性严重依赖于数据
我认为这是最大的局限性,没有之一。
最早的神经元MP模型1943就发明了,多层网络及反向传播机制也在1986年已经提出。直至本轮AI浪潮的掀起,本质是大数据时代和算力时代,Data Driven和Computing Power Driven,足见机器学习/深度学习对数据的依赖。历史上模型从小到大,能解决问题的规模和精度,与数据存储和运行能力正相关。这是宏观上对数据规模的依赖。具体到一个机器学习任务,如果样本数据不够甚至远小于问题的复杂度,模型会陷入严重的欠拟合,这是微观上对数据规模的依赖。
无论宏观还是微观,如果样本数据和客观数据的分布有较大的差异,拟合的模型将不可用,会产生严重的泛化误差。
样本数据和客观数据的差异,体现在各种场景:
1、样本数据过少,只是客观数据的局部分布的反映。
2、样本数据噪声过多,并未反映客观数据的真实分布。
3、样本数据过老,并未反映客观数据的最新分布。
4、样本数据不平衡,扭曲了模型对客观数据的挖掘
5、样本数据不满足独立同分布的假设,误导了模型对客观数据复杂结构的挖掘。
由于算力、采样和标注成本的存在,样本数据总是有限的,客观数据总是无限的。只要我们没有打开上帝之眼,我们就是在赌概率——赌我们的样本数据与客观数据的分布是一致,并通过一次次的验证,来确认赌对赌错。从这个意义上,机器学习天生就是贝叶斯主义的。
当然,人类的认知也同样会出现这些问题,如果没有大量的科学实验及数据证明日心说,仅靠日出日落的观测经验,人类可能就不止处死一个哥白尼了。
唯一不同的是,在机器处理和人类处理的重合场景,如果把人脑比作算力,整个人类的算力,可以根据整个人类的常识积累和思维,发现样本数据本身的不合理性及统计上的不足,而模型还做不到。
应用上的例子有,根据亚洲人的脸训练出来的人脸识别门禁,面向非洲人出错的概率会变高(样本数据不平衡);根据股票过去表现训练出来的预测模型,对中长期股价预测结果不忍直视(样本数据过老);能比较好的语音识别成文字的微信,面向方言就无能为力(样本数据过少)。
局限2:相关性≠因果性
大数据和人工智能时代,强化了相关性的挖掘,弱化了因果性的挖掘。这既有好处,也有弊端。好处在于,站在实证主义的角度,并非所有事情需要刨根问底,精确度和性能能满足应用场景所需就足够了。坏处在于,它误导了很多人,模糊了相关性和因果性的边界,把相关性误作因果性。很多科学问题和性命攸关的问题,是很严肃的。颠倒因果,会产生严重的后果。不管多复杂的关系,从相关性产生的机制来说,相关性分为三种:
1、链结构:Y→Z,因果性。Y是因Z是果,Y与Z相关。
2、叉结构:Y←X→Z,混杂偏差。X变化同步引起Y和Z的变化,Y和Z因为X相关。
3、对撞结构:Y→X←Z,选择偏差。选定了X就选定了导致X的那些Y和Z,Y和Z因为X相关。
一般的机器学习和深度学习,大部分集中在有监督学习的分类和回归,本质上就是对Y和Z之间相关关系的一个定性和定量的拟合来判定和计量。关联规则分析,通过共现频次的简单统计来描述相关性,而无监督学习的距离或者相似性,是样本之间另一种意义上的相关性的度量。
无论哪一种,都无法得出具有置信度的因果结论。只凭机器学习,还无法很好地解决因果性的场景。
应用上的例子:对电商购物记录构造数据集,Y是对奢侈品的购买特征,Z是购买iPhone手机的概率,通过机器学习,可以发现奢侈品购买多的人,买iPhone的概率很高,这是相关性。但是如果平台运营为了提高iPhone的销量,先去提高奢侈品的销量,可能就南辕北辙了。
局限3:科技伦理的困境
机器学习/人工智能在科技伦理上的困境,集中体现在社会和道德上的公平性和法律上的边界性。
当一个由于样本偏差,导致训练出来的模型对某一个群体产生歧视
当一个完全由AI自动驾驶的汽车由于预测误差导致的人员伤亡
当一个用线上训练的模型由于被黑客进行对抗数据攻击的模型造成了使用人的巨额损失
当一个路径优化模型不断用骑手的反馈路径压榨骑手
当一个换脸模型将明星的脸嫁接到AV女优的身上
当一个能用利用人脸识别进行攻击的无人机应用于俄乌战场
当一个物流机器人系统让仓储工人大面积失业
是谁的错?模型的创造者?模型的拥有者?模型数据的提供者?模型的用户?还是模型的本身?机器学习/人工智能本身无法回答这个问题。
局限4:无法证明全局最优
除了极少数模型在特定条件下,可用数值算法求解到近似的全局最优解。大多数模型,无论是传统的机器学习,还是深度学习,有监督学习的训练范式都是建立在经验风险最小化的近似基础上。这就决定了这些有监督模型只能是尽量逼近,更多的时候,无法得知在当前数据和模型下,最优解是怎么样。
1、在深度学习以前,传统的机器学习需要构造手工特征,整个pipeline可能会包含这些环节:空值处理、异常值处理、样本独立性检查、数据分布一致性检查及处理、样本平衡性处理、样本重采样、特征编码、特征衍生、特征组合、多重共线性处理、特征选择、特征归一化、特征标准化、模型选择、模型训练、超参选择、交叉验证、模型融合。
2、在深度学习之后,手工特征工程被弱化,但带来了超参选择的挑战,包括网络结构、学习率、优化器、参数初始化方式、迭代轮次、批次大小、参数正则化方式、Dropout方式和概率、是否early stop等等。
每一个环节的选择,都带来了计算的主观性和随机性,训练和调参是玄学,没有谁能得到数理上的证明,当前的pipeline能得到全局最优解。而工程上,得到局部上的最优解才是常态。
局限5:超越人类直觉和常识的高维处理
人类所能感知的维度仅有4维(空间+时间),人类认知的宇宙是13维。人类其实是低维生物。但机器学习/深度学习问题往往是高维甚至超高维的。高维带来两个问题:一个是数据上的稀疏,一个是人脑认知的失调。除却我们作为生物本身的神经信号处理,思维层面,我们自身无法感知数据在高维空间的分布,我们自身无法追踪模型对高维数据的处理,我们自身无法在高维上执行数学上的计算。人类设计的机器学习/深度学习模型也带有人类的局限性,大多数时候只是用通用简单结构的模型范式(树模型对数据空间的不断分割、线性叠加非线性对数据分布的不断逼近)+算力上的大力出奇迹,来弥补这一局限。
局限6、模型对结果的解释性差
除了少部分如线性回归、逻辑回归、决策树等传统机器学习模型,大部分模型对结果的解释性都比较差。这个解释性差,可以从两个方面来看:
1、局限2所致,无法区分相关性和因果性。得到的相关性结论,难以得到因果性的解释。
2、局限5所致,人类思维无法follow高维处理,无法用思维的明晰过程来追踪模型对高维数据的处理。
对安全性的要求越高,对可解释性的要求也越高。下一盘围棋,输给我们无法理解的AI,这个结果是可以接受的。但坐在一辆由AI驾驶的车上,谁敢将自己的生命完全托付给AI然后自己在车里睡大觉?
局限7、缺乏问题理解,较难与先验的专家知识集成
复杂任务,大多是既面向规则的,也是面向数据的。专家系统/知识图谱,是面向规则的,不是面向数据的,而机器学习/深度学习模型,是面向数据的,不是面向规则的。人类的智能机器都是任务复杂性受限的。
局限8、多模型协同和人机协同
即使人工神经网络借鉴了人类生物神经网络的结构,人类还没有真正深度理解大脑的工作原理。人类的思维过程与机器的训练推理过程,在当下是完全不同的较难融合的两套体系。在针对决策难度大决策风险高的时候,人类可以组建专家团队,互相弥补思维过程的盲区。在相近的领域,即使是互相有盲区,人类专家也很容易理解互相的思维过程。
当下,多模型协同,人类与AI协同,只能在一些低实时性,低难度水平、粗粒度的任务进行。
局限9、Train Everywhere
除了部分大容量模型通过预训练+迁移学习/Fine Tuning,可以实现一定的通用性。大多数时候,一个经过大量时间、精力和算力训练的模型,都只能处理单一、局限的任务。相比人类学习上举一反三的迁移能力,机器学习/AI的迁移能力弱得太多。很多模型换一个场景,换一批数据,整个训练过程又得从零开始。
本文转自: 大数据分析和挖掘,转载此文目的在于传递更多信息,版权归原作者所有。如不支持转载,请联系小编demi@eetrend.com删除。