建模可以分为数学建模,数据建模;建置三维模型
https://www.wikiwand.com/zh-hans/%E5%BB%BA%E6%A8%A1
和数据分析相关的自然就是:数据建模
概念的定义:
引用自维基百科:数据建模是运用正式的数据建模技术,建立信息系统的数据模型的过程。
把现实世界的各类数据抽象组织后,确定需要数据库管辖,以及数据的组织形式后,转化成实际的数据库,使用visio等工具简历数据库实体以及实体之间的关系的过程(数据库中的实体一般是表,表与表之间的关系有多对一,一对多,多对多)
既然是过程,因此过程中的主要活动(步骤)包括如下几点:
- 确定数据及其相关过程,业务人员需要进行的某些操作
- 定义数据(数据字典)
- 确保数据的完整性(一条数据必须是完整的)
- 定义操作过程
- 定义数据存储技术(关系型数据集,分层)
建模的三个阶段:
概念建模阶段
主要做三件事:
1.客户交流
2.理解需求
3.形成实体
概念阶段只需要关注实体,需要关注实现细节,比如索引,约束,存储过程,在该阶段无需关注。
逻辑建模阶
对实体进行细化,细化成具体的表,丰富表结构,表与表之间的关系,确定主键,约束等
物理建模阶段
创建数据库对象;针对业务需求,可以做出改进,比如数据拆分(水平或者垂直拆分),读写分离;以性能为前提,遵从3NF。
简单说:就是根据业务需求,遵循相应的规则,在考虑性能的前提下,生成数据字典,存放到相应的数据库中。
而在该过程中,需要根据不同的业务选择不同的变量,选择不同的算法。
业务逻辑优先数据逻辑,因为不论怎样,建模都是为了解决实际中的问题,从实际中来到实际中去。而常用的算法分类包括如下:
划分消费者群体:聚类,分类;
购物篮分析:相关,聚类;
购买额预测:回归,时间序列;
满意度调查:回归,聚类,分类;
算法是需要不断的迭代的,根据算法的运行情况,调整算法的不同的参数,多次调整,达到一个最优的解决方案。
测试完成以后,需要经过测试,是否能够解决问题,是否有其他的算法更合适。
算法测试完成后,输出报告,规则,一段代码,然后接受业务人员的反馈,是否解决问题,再然后根据情况迭代。
如上的文章,参数的是中实际业务中,还没有确定系统的开发,就开始的一个模型的搭建过程,而在有了一定的数据以后,参考如下的建立模型的过程
目标制定与数据处理:明确目标,获取数据,处理数据
变量处理:选择变量,重构变量
模型搭建:选择算法,设定参数,加载算法(如果无法达成期望,可以再次选择算法),测试结果(结果不满意,可以通过设定算法的参数来调整)
结果输出:输出规则,加载模型(验证是否和目标相符合)
该模型的过程和数据分析的过程有一部分是相同的,比如开始:明确目标是第一步,目标也就是问题,当问题确定了,答案就出现了:问题就是答案
数据分析的过程:目标确定--数据采集--数据处理--数据分析--数据展现--数据建模--报告撰写(原来数据建模包含在数据分析中)目的在于发现有用的信息,辅助决策的制定。
在上文的“原来”,是由于建模分为数据建模,和数据库建模,在下文的“参考”中链接中,百度的链接说的是数据库建模,从现实世界中的实体到数据库映射,而csdn的链接参数的是数据分析中的一个环节,针对数据,对未来的数据做出预测,以及分析。
参考:
https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E5%BB%BA%E6%A8%A1
https://blog.csdn.net/achuo/article/details/51160456
欢迎拍砖
路漫漫其修远兮,吾将上下而求索。