浅谈“数据”、“数据结构/数据关系”、“模型”及“算法”

大数据时代的我们,似乎总觉得任何数据中都能挖到宝贝。有的人根本不懂什么是大数据,但是为了鼓吹自己的产品好,硬着头皮也得往自己的产品上贴上“大数据”标签。随便求个“均值”、“方差”、“中位数”,就称采用了大数据技术做了数据分析,然后也一本正经地展示几张雷达图,柱状图。我甚至听过只有中学文凭的一线员工在大会上报告如何用大数据技术分析其在业务上的问题,向领导展示一张张雷达图中隐含的数学规律。也从侧面看出,现在的“大数据”被炒得真的有点过头。特别是一点不懂数据的人说起大数据比专业算法工程师还逼真。反正吹牛逼既不犯法也不收税。而稍微懂点计算机技术的人也是魔怔一样,觉得所谓的“模型”和“算法”是万能的。只要给他数据,然后问他能不能建个模型设计一个算法,找出数据中我们想要的一些有用信息,有些人想都不想,就说:我能。然后,风风火火开始,冷冷清清收尾。其实我今天既不想谈“伪大数据”,也不想谈“模型”和“算法”的万能性。我只想谈谈“数据”,让大家意识到“原始数据”的重要性。

如果把整个建模极其求解过程比作“做菜”,原始数据比作“食材”,模型比作“烹饪设施”,算法比作“加热装置”。这样一来,你可能会更加容易理解为什么原始数据那么重要了。想象一下,一个米其林三星主厨跟你炫耀其厨艺精湛。这相当于一个算法工程师跟你炫耀其建模和算法设计技术精湛一样。然后,你给人家一个“驴粪蛋子”,说:请炒个硬菜出来。你觉得最后有多大可能出得一个硬菜?所以,以后要是跟人家谈建模类的项目时,一定是按以下步骤进行的。

一、你的需求是什么?是要达到一个什么目标?(优化问题目标的雏形)你们行业的相应工作流程都有一些什么规则?(优化问题约束条件的雏形)

二、先别急着想模型,如何来满足人家的需求。要先问问人家都有一些什么样的数据?这样数据是什么方式获得的?(如果是机器通过物 理感应设备自动获得的则可能比较靠谱。如果是人为录入的数据,那么你可能需要三思了。通常来讲人为录入的数据都存在一些“欺骗”和“失误”。那么哪些数据质量会高一些呢?企业和银行的财务数据、还有航空公司AOC运行指挥数据大电商平台的商家数据、派出所的档案数据等等。因为这些数据都有一套严格和成熟的录入制度,保证了录入数据的质量。但是,如果是小企业或者大企业小部门的管控不严格的数据录入,其录入质量存在很大的问题。这样的数据很可能就是我上面说的给一个米其林三星主厨的“驴粪蛋子”。如果情况是这样,要考虑一下要不要接这个项目。或者你要让客户知道是他们的数据质量不太行,可能会导致我们最终做出来的模型运行结果不能达到预期目标。所以,这样的项目的目标不要定得太高。)

特别讨论一下,运用爬虫技术从网页中爬取的数据靠不靠谱?其实,现在已经出了越来越多的防爬技术,人们在开发网页时的反爬意识也
越来越强。 如果你的爬中技术不到家,爬虫程序方案有问题,都会导致爬到的数据会存在很大质量问题(主要是反爬技术带来的白噪声或
者恶意数据偏向)。相比于这样的数据,我认为企业数据库数据、后台运行日志、专业数据机构提供的数据、专业数据平台购买的数据相
对来说会更靠谱一些。

三、如果数据关通关,再来好好思考一下建个什么样的模型。模型要综合考虑满足客户目标和后面算法容易求解。(现实规划问题一般都
尽量建成线性规化模型——线性目标+线性约束,现实中的数据预测问题可以找对应的机器学习、统计优化算法包进行求解。)

四、寻找或者构造合适的算法求解模型。

五、根据运行结果不断修改以上工作流程中各技术细节,重复以上工作流程,直到达到理想的运行结果。

六、结题/交付。

猜你喜欢

转载自blog.csdn.net/qq_25733951/article/details/88696854
今日推荐