工业大数据分析方法论的几个关键要点
本文是我的专业思考日记,非专业人士不一定阅读。这些心得前几天大体说过了,这里再相对仔细地说一下。专门写一篇文章的原因是:困扰我的几个问题最近想明白了。1、做建模时,为什么总会用到“排除法”?有什么好处?对建模过程有什么影响? 2、为什么有些人对数据分析的体验和我不一样?
1、复杂与简单。复杂的算法和方法容易写论文、体现水平,也能解决一些低维度的问题。这是因为:维度低了,模型达到可靠性要求所需的样本就相对较少,从而可能通过好的算法得到答案。从本质上讲,图像和语音识别都是低维度问题。我一直认为,高维度问题是真正的复杂问题。复杂算法往往不适合这样的复杂问题、尤其是对可靠性要求高的工业数据分析问题。一般来说,涉及到产品质量的的问题比设备的问题复杂,因为前者涉及到的内容可能多很多。
2、复杂问题简单化。我认为:对于复杂问题,解决的办法就是简单化:把复杂问题,拆分成若干简单问题来做。一种典型的做法是:把复杂的问题分成若干场景,再各个场景中建立子模型,问题就变得简单了。变成简单问题的好处:是便于用数据分析、便于与领域知识对接。当然,必要的时候还要把子模型综合成复杂的模型。但前提是子模型建好了。
3、数据分析过程。这是分析逐步深入的过程、是对模型不断修订和完善的过程。在这个过程中不确定性逐步降低、精度不断提高,模型的正确性不断提高。特别地,工业大数据的高可靠性要求正确性。而正确性与高精度不是一回事。这一点,我说过很多次了。这也是制约复杂算法应用的一个重要原因。
4、修定过程排除法。数据分析过程常常用“排除法”。原因是这样的:所谓的精度不断提高,一般是找到了精度不高的地方。于是,后面的操作就是:发现异常、确认异常、修改(子)模型。其中,修改模型的过程就是:预估模型在哪些地方出现问题了,然后做针对性地修改。这种“预估”就是提出可能的原因,然后按照这种说法去修改模型,再看结果如何。
5、人的作用。人的作用,体现在使用“排除法”:如果复杂问题简单化了,发现、确认、修改模型的过程,都是可以人来介入的——排除法的前提,总要有一个“被排除”的集合吧。这个集合,一般只能是人来给出的。排除的过程,往往是一种人为的估计,和围棋中人对“势”的把握是一样的,会用很多说不清、道不明的感觉和常识。这就是为什么,人类难以把这个过程交给计算机去做。与算法相比,人用排除法还有一个好处:排除法修改模型时,往往只针对很小一部分数据,对那些精度已经相对满意的样本影响不大;而不像算法调整一个参数可能影响所有的样本。在我看来,人之所以能做到这一点,是因为能用“理性知识”进行深度推理;而计算机不会用。
6. 检验过程。模型能说明过去,未必能说明未来。即便是精度高的模型,本质上也是一种猜测。实践是检验真理的唯一标准。很多模型建好之后,需要用以后的数据来检验。甚至不得不做试验来检验。
7、人的优势。检验过程费时、费力又费钱。优秀的专家就是“猜得准”、少检验。这一点,人比机器的效率要高很多。所以,人机结合、充分利用人的知识,能够提高效率和成功率。对于复杂的工业过程,往往是好的数据分析方法。