首页 > 编程知识 正文

数据可视化,数据建模到底是什么

时间:2023-05-04 21:38:30 阅读:37419 作者:3751

2019独角兽企业大额募集Python工程师标准

本文试着组织数据建模的步骤和每个步骤所需的工作。

01

第一步:选择模型或自定义模式

这是建模的第一步,需要根据业务问题确定可用的模型。

例如,在预测产品销售量的情况下,为数值预测模型(回归模型、时间序列预测……); 如果要预测员工是否辞职,可以选择分类模型(决策树、神经网络等……)。

如果没有现成的型号,恭喜你。 可以自定义模型。 不过,一般来说,自己定义模型并不是那么容易的事。 没有深厚的数学基础和研究精神,自己思考解决特定问题的数学模型基本上是幻想。 所以,定制模式给学校的教授们留下研究和开发吧。 现在,大多数人都是所谓的建模,都只是选择一个已有的数学模型来工作而已

一般来说,模型有一定的图案和形状。 但是,也有像回归模型这样包含大范围的模型,实际上不是某个特定的模型,而是一种模型。 我们知道回归模型是自变量和原因变量的函数关系式,如下表所示。 因此,回归模型的选择,具有无限的可能性。 回归模型的样子(或称为方程)可以是你能想到的任何形式的回归方程。 所以,从某种意义上说,想出了你自己很少见过的回归方程,也许才算是定制模型吧。

那么,这么多可选机型,到底该选择哪个机型呢?

我的回答是“天知道!

我知道应该选择哪个型号! 问我,我在问谁? 如果你问这个时候你的业务应该选择哪个回归公式,我想你遇到的一定是“砖家”而不是“专家”。 模型的好坏不能单独评论(往下看就知道了)。 谁说好,就像孩子讨论的你爸爸好还是我爸爸好一样?

那么,我们在选择模型的时候必须依靠运气吗? 其实有靠运气的部分,好在后续数学家们为我们提供了评价模型好坏的依据。

现在,我们只能选择幸运的模型。

回归模型

回归方程

一元线性

y=0 1x

多元线性

y=0 1x1 … kxk

二次曲线

y=0 1x 2x2

复合曲线

y=0x

生长曲线

y=e0 1x

对数曲线

y=01ln(x ) )。

三次曲线

y=0 1x 2x2 3x3

s曲线

y=e0 1/x

指数曲线

y=0e1x

反函数

y=0 1/x

幂函数

y=0x1

02

第二步:训练模型

选择模型后,就到了训练模型的步骤。

据了解,这种模式的大致形状和模式是固定的,但模式中也有不确定的东东舒适的早晨。 这样,模型就具有通用性。 模型中的所有东西都被固定后,模型的通用性就消失了。 模型中可适当变化的部分一般称为参数,例如前回归模型的、等参数。

所谓训练模型,其实就是要基于真实的业务数据来确定最合适的模型参数而已。型号经过培训意味着找到了最佳参数。 找到最佳参数后,模型基本上可用。

当然,找到最佳的模型参数一般很难,怎么找? 怎么找? 这与算法有关。 啊,一想到算法,我的头就开始痛了。 都怪当时数学学不好。

当然,最愚蠢的方法是继续尝试参数,找到最高的参数值。 要一个一个地试试吗? 这不是要等到生命结束才试吗? 开玩笑的,不能一个个去试啊。 无论如何,都有找到最佳参数的工具。 不用担心优化算法的哪些坡度会上升,坡度会下降。 这些用分析工具来实现就可以了。

当然,好的算法运行速度快,复杂度低,可以实现快速收敛,而且可以找到全局最优的参数。 否则,训练时间太长,效率不高,只能局部找到最佳参数,让人无法忍受。

03

第三步:评估模型

模型训练后,接下来是评估模型。

所谓评估模型,就是决定一下模型的质量,判断模型是否有用。

如上所述,模型的好坏不能单独评估。 一个模式的好坏需要放在特定的业务场景中进行评价。 也就是说,可以根据特定的数据集知道哪个模型是好是坏。

既然要评价模型的好坏,就应该有几个评价指标。 例如,在数值预测模型中,评价模型质量的一般指标是平均误差率、判定系数R2等; 评价分类预测模型质量的一般指标(如下图所示)如下。 正确的

率、查全率、查准率、ROC曲线和AUC值等等。

对于分类预测模型,一般要求正确率和查全率等越大越好,最好都接近100%,表示模型质量好,无误判。

在真实的业务场景中,评估指标是基于测试集的,而不是训练集。所以,在建模时,一般要将原始数据集分成两部分,一部分用于训练模型,叫训练集;另一部分用于评估模型,叫测试集或验证集。

有的人可能会想,为什么评估模型要用两个不同的数据集,直接用一个训练集不就可以了?理论上是不行的,因为模型是基于训练集构建起来的,所以在理论上模型在训练集上肯定有较好的效果。但是,后来数学家们发现,在训练集上有较好预测效果的模型,在真实的业务应用场景下其预测效果不一定好(这种现象称之为过拟合)。所以,将训练集和测试集分开来,一个用于训练模型,一个用于评估模型,这样可以提前发现模型是不是存在过拟合。

如果发现在训练集和测试集上的预测效果差不多,就表示模型质量尚好,应该可以直接使用了。如果发现训练集和测试集上的预测效果相差太远,就说明模型还有优化的余地。

当然,如果只想验证一次就想准确评估出模型的好坏,好像是不合适的。所以,建议采用交叉验证的方式来进行多次评估,以找到准确的模型误差。

其实,模型的评估是分开在两个业务场景中的:

一是基于过去发生的业务数据进行验证,即测试集。本来,模型的构建就是基于过去的数据集的构建的。

二是基于真实的业务场景数据进行验证。即,在应用模型步骤中检验模型的真实应用结果。

04

第四步:应用模型

如果评估模型质量在可接受的范围内,而且没有出现过拟合,于是就可以开始应用模型了。

这一步,就需要将可用的模型开发出来,并部署在数据分析系统中,然后可以形成数据分析的模板和可视化的分析结果,以便实现自动化的数据分析报告。

应用模型,就是将模型应用于真实的业务场景。构建模型的目的,就是要用于解决工作中的业务问题的,比如预测客户行为,比如划分客户群,等等。

当然,应用模型过程中,还需要收集业务预测结果与真实的业务结果,以检验模型在真实的业务场景中的效果,同时用于后续模型的优化。

05

第五步:优化模型

优化模型,一般发生在两种情况下:

一是在评估模型中,如果发现模型欠拟合,或者过拟合,说明这个模型待优化。

二是在真实应用场景中,定期进行优化,或者当发现模型在真实的业务场景中效果不好时,也要启动优化。

如果在评估模型时,发现模型欠拟合(即效果不佳)或者过拟合,则模型不可用,需要优化模型。所谓的模型优化,可以有以下几种情况:

1)重新选择一个新的模型;

2)模型中增加新的考虑因素;

3)尝试调整模型中的阈值到最优;

4)尝试对原始数据进行更多的预处理,比如派生新变量。

不同的模型,其模型优化的具体做法也不一样。比如回归模型的优化,你可能要考虑异常数据对模型的影响,也要进行非线性和共线性的检验;再比如说分类模型的优化,主要是一些阈值的调整,以实现精准性与通用性的均衡。

当然,也可以采用元算法来优化模型,就是通过训练多个弱模型,来构建一个强模型(即三个臭皮匠,顶上一个jddsw)来实现模型的最佳效果。

实际上,模型优化不仅仅包含了对模型本身的优化,还包含了对原始数据的处理优化,如果数据能够得到有效的预处理,可以在某种程度上降低对模型的要求。所以,xfdxwz发现你尝试的所有模型效果都不太好的时候,别忘记了,这有可能是你的数据集没有得到有效的预处理,没有找到合适的关键因素(自变量)。

不可能有一个模型适用于所有业务场景,也不太可能有一个固有的模型就适用于你的业务场景。好模型都是优化出来的!

最后语

正如数据挖掘标准流程一样,构建模型的这五个步骤,并不是单向的,而是一个循环的过程。当发现模型不佳时,就需要优化,就有可能回到最开始的地方重新开始思考。即使模型可用了,也需要定期对模型进行维护和优化,以便让模型能够继续适用新的业务场景。

转载于:https://my.oschina.net/chendongj/blog/1833414

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。