首页/文章/ 详情

数据分析算法是不是太复杂了?

1年前浏览263

很多人用复杂的数据分析算法处理工业问题。每次看到这种情况我都会想:他们的做法是不是走歪了?是不是把问题想复杂了?


几十年来,工程师一直在用数据分析各种实际问题。他们也都没有用什么特殊的算法,不都做成了吗?比如,发生质量问题的根源不都找到了吗?复杂算法真的有必要吗?为什么不能用软件技术,把人的做法用算法自动实现?

 

工程师分析问题的方法往往很简单。多数情况下就是去看看哪些参数超标了、哪些设备不正常,问题差不多就找到了。这种办法可以解决多数日常问题。在数据集成的前提下,用计算机可以代替人分析。当计算机收集的信息完整性差的时候,这种方法并不见得多么有效。但是,信息完备性强之后,这种做法的优势就显现出来了。

 

我经常给人讲“路灯底下找钥匙”的故事:一个人丢了钥匙,不停地在路灯下找。别人问他:你肯定钥匙丢在这里吗?那人说:不肯定,但只有这里有光。

 

数据覆盖的范围就像“路灯下的亮光”。如果计算机收集的数据范围小,就不一定能通过数据找到根源。这时,人们可能需要与物理世界互动(检查设备、尝试改进等)来寻找原因。这就好比走出路灯的光芒下,用手电筒到处去找。但数据完整性提高了、覆盖面大了,就像太阳照耀在整个大地上。也就不会有“路灯底下找钥匙”的尴尬了。

 

十几年前,我就想做这种自动分析的算法。但并不算成功。后来我意识到:我当时在研究院工作,简单工作是用不着我们做的。由此可见,我们当年遇到的分析问题,其实存在“幸存者偏差”。我估计,简单的自动分析算法能够解决90%的问题,而最难得1%的问题需要付出百倍的努力。

 

为什么有些困难的问题不容易用这种办法做出来?一个重要的原因就是:导致问题的原因是多方面的。影响因素多时,变量的相关性变弱,就不容易被发现。问题稍微简单一些时,决策树的办法被事实证明往往有效。

 

那么,更复杂的问题是什么?我觉得,多因素问题困难的本质,还是会遇到“组合爆炸”问题。

 

我们分析原因的过程,是个逐步深入的过程:前面找到“可能性”,后面要深入“求证”。其中,许多“可能性”是被否决掉的。计算机的作用,其实是帮助人们找到“可能性”,让人们在“求证”的过程中“聚焦”。如果找到的“可能性”过多,“求证”过程就无法聚焦,事实上就无法完成。这就是刑事案件中的“无头案”。

 

前几天某位学者谈知识发现的“第四范式”。我感觉他的认识是纸上谈兵。他以为计算机能够自动地帮助人发现规律。其实,计算机只是帮助人们寻找了“可能的答案”,而不是“科学结论”。即便是“第四范式”,仍然要遵循科学哲学的基本原则。科学假说要经过严格的论证和批判才能成为科学。而严格论证和批判,目前来说还是需要人做的事情、计算机是无法替代的。

 

面对组合爆炸问题,直觉有时候会发挥作用。我经常就是用直觉解决问题。这类直觉不像图像识别,还是比较容易把直觉产生的原因说清楚的。但这些认识比较碎片化,针对每个问题不一样。我过去的困惑,是找不到系统的描述方法。

 

我想,利用现代的计算机技术,这些问题有了解决的曙光。

 

一个办法是把碎片化的想法沉淀下来,变成计算机程序。过去我们也想到这么做,但过去这么做麻烦大、收益小。本质上讲是缺乏经济性。通过平台技术、数字孪生技术、低代码编程技术等,能够提高这种工作的投入产出比。可能导致相关技术的经济性发生质变。

 

另一个办法是寻找系统性的描述工具。对此,我的想法有点模糊。大致的想法是:用函数来描述多因素结果产生的原因。比如,带钢上出现表面缺陷时,首先将其描述为实际缺陷指数高于目标要求。再把与缺陷产生的各个因素用一个指数贯穿起来:有的环节可能让缺陷指数增强,有的能让指数削弱。这样,就把机理和数学描述结合起来了。这样,分析问题时就会减少盲目性。最好有计算机软件,支持这样的描述。

 

但做这种工作时,对专业知识的数学表达能力要求很高,也缺乏系统的方法 论。我现在既无能力、又无机会、更无精力研究这些东西,多少有点遗憾。


这两个办法的本质,都是让计算机把简单的方法做好。是用人明白的道理做分析,发挥计算机计算能力强的优势。我个人特别喜欢这类工作思路。

来源:蝈蝈创新随笔
爆炸数字孪生
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-07-23
最近编辑:1年前
蝈蝈创新随笔
只是把思考的日志搬运,不当之处...
获赞 93粉丝 15文章 1159课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈