CRISP-DM概念
CRISP-DM代表跨行业的数据挖掘过程,CRISP-DM 模型是KDD模型的一种。CRISP-DM方法论提供了计划数据挖掘项目的结构化方法。这是一种可靠且经过验证的方法。CRISP提供了一种开放的、可自由使用的数据挖掘标准过程,使数据挖掘适合于商业或研究单位的问题求解策略。它把这个过程定义为六个标准阶段,分别是商业理解、数据理解、数据准备、建立模型、模型评估和模型发布,以下分别加以简介:
第一阶段–确定业务目标
CRISP-DM流程的第一步是从业务角度了解您要完成的工作。您的组织可能有相互竞争的目标和约束,必须适当地加以平衡。该过程的此阶段的目标是发现可能影响项目结果的重要因素。忽略此步骤可能意味着需要付出大量努力才能为错误的问题提供正确的答案。
该项目的期望输出是什么?
- 设定目标 -这意味着从业务角度描述您的主要目标。您可能还要解决其他相关问题。例如,您的主要目标可能是通过预测当前客户何时会转移到竞争对手来保留他们。相关的业务问题可能是“使用的渠道会影响客户留下还是留下?” 或“较低的ATM费用会大大减少离职的高价值客户的数量吗?”
- 制定项目计划 -在这里您将描述实现数据挖掘和业务目标的计划。计划应指定在项目其余部分中要执行的步骤,包括最初选择的工具和技术。
- 业务成功标准 -在这里,您将列出用于从业务角度确定项目是否成功的标准。理想情况下,这些参数应该是特定且可测量的,例如将客户流失率降低到一定水平,但是有时可能需要具有更主观的标准,例如“对关系有帮助的洞察力”。如果是这种情况,则需要弄清楚是谁做出主观判断。
评估当前情况
这涉及到在确定数据分析目标和项目计划时需要考虑的所有资源,约束,假设和其他因素的更详细的事实调查。
- 资源清单 -列出项目可用的资源,包括:
- 人员(业务专家,数据专家,技术支持,数据挖掘专家)
- 数据(固定摘录,对实时数据,仓库数据或操作数据的访问)
- 计算资源(硬件平台)
- 软件(数据挖掘工具,其他相关软件)
- 需求,假设和约束 -列出项目的所有需求,包括完成进度表,所需的结果可理解性和质量,任何数据安全问题以及任何法律问题。确保允许您使用数据。列出项目所做的假设。这些可能是关于可以在数据挖掘期间验证的数据的假设,但也可能包括关于与项目相关的业务的不可验证的假设。如果要列出后者会影响结果的有效性,则特别重要。列出对项目的约束。这些可能是对资源可用性的约束,但也可能包括技术约束,例如实际用于建模的数据集的大小。
- 风险和或有事项 -列出可能延迟项目或导致项目失败的风险或事件。列出相应的应急计划-如果发生这些风险或事件,您将采取什么行动?
- 术语 -编译与项目相关的术语表。这通常包含两个部分:
- 相关业务术语的词汇表,构成该项目可用的业务理解的一部分。构建此词汇表是一个有用的“知识启发”和教育活动。
- 数据挖掘术语表,并举例说明与所讨论的业务问题有关的示例。
- 成本和收益 -构建项目的成本效益分析,将项目成本与成功后对企业的潜在收益进行比较。这种比较应尽可能具体。例如,您应该在商业情况下使用财务指标。
确定数据挖掘目标
业务目标说明了业务术语中的目标。数据挖掘目标以技术术语陈述了项目目标。例如,业务目标可能是“增加对现有客户的目录销售”。数据挖掘的目标可能是“根据客户在过去三年中的购买情况,人口统计信息(年龄,工资,城市等)以及商品价格,来预测该客户将购买多少个小部件。”
- 业务成功标准 -描述能够实现业务目标的项目预期输出。
- 数据挖掘成功标准 -以技术术语定义项目成功结果的标准,例如,一定水平的预测准确性或具有一定“提升”程度的购买倾向。与业务成功标准一样,可能有必要用主观术语来描述这些标准,在这种情况下,应该确定做出主观判断的人员。
制定项目计划
描述实现数据挖掘目标并从而实现业务目标的预期计划。您的计划应指定项目其余部分要执行的步骤,包括最初选择的工具和技术。
- 项目计划-列出项目中要执行的阶段,以及它们的持续时间,所需资源,输入,输出和依存关系。在可能的情况下,尝试使数据挖掘过程中的大规模迭代明确化,例如,重复建模和评估阶段。作为项目计划的一部分,分析时间表与风险之间的依存关系也很重要。在项目计划中明确标记这些分析的结果,最好是在发现风险后采取措施和建议。此时确定在评估阶段将使用哪种评估策略。您的项目计划将是一个动态文档。在每个阶段的最后,您将检查进度和成就,并相应地更新项目计划。这些更新的特定审核点应成为项目计划的一部分。
- 工具和技术的初始评估 -在第一阶段结束时,您应该对工具和技术进行初始评估。例如,在这里,您选择一种数据挖掘工具,该工具支持针对过程的不同阶段的各种方法。在过程中尽早评估工具和技术非常重要,因为工具和技术的选择可能会影响整个项目。
第二阶段–数据理解
CRISP-DM过程的第二阶段要求您获取项目资源中列出的数据。如果需要进行数据理解,则此初始收集包括数据加载。例如,如果您使用特定的工具来理解数据,则将数据加载到该工具中是非常合理的。如果您获取多个数据源,则需要考虑如何以及何时集成这些数据源。
- 初始数据收集报告 -列出获取的数据源及其位置,用于获取它们的方法以及遇到的任何问题。记录您遇到的问题以及解决的所有问题。这将有助于将来复制该项目以及执行类似的未来项目。
描述数据
检查所获取数据的“总”或“表面”属性,并报告结果。
- 数据描述报告 -描述已获取的数据,包括其格式,数量(例如,每个表中的记录和字段的数量),字段的标识以及已发现的任何其他表面特征。评估获取的数据是否满足您的要求。
探索数据
在此阶段,您将使用查询,数据可视化和报告技术来解决数据挖掘问题。这些可能包括:
- 关键属性的分布(例如,预测任务的目标属性)
- 对或少量属性之间的关系
- 简单聚合的结果
- 重要亚群的属性
- 简单的统计分析
这些分析可以直接解决您的数据挖掘目标。它们也可能有助于或完善数据描述和质量报告,并用于进一步分析所需的转换和其他数据准备步骤。
- 数据探索报告 -描述数据探索的结果,包括最初的发现或最初的假设及其对项目其余部分的影响。如果合适,您可以在此处包括图形和曲线图以指示建议进一步检查有趣的数据子集的数据特征。
验证数据质量
检查数据的质量,解决以下问题:
- 数据是否完整(是否涵盖所有需要的情况)?
- 它是正确的还是包含错误?如果有错误,它们有多普遍?
- 数据中是否缺少值?如果是这样,它们将如何表示,它们会在哪里出现,又有多普遍?
数据质量报告
列出数据质量验证的结果。如果存在质量问题,请提出可能的解决方案。数据质量问题的解决方案通常在很大程度上取决于数据和业务知识。
第三阶段–数据准备
选择你的数据
这是项目的阶段,在此阶段,您将决定要用于分析的数据。做出此决策时可能使用的标准包括数据与数据挖掘目标的相关性,数据的质量以及技术限制,例如对数据量或数据类型的限制。请注意,数据选择涵盖了属性(列)的选择以及表中记录(行)的选择。
- 理由包含/排除被列入清单的数据/排除的原因这些决定- 。
清理数据
该任务涉及将数据质量提高到所选分析技术所需的水平。这可能涉及选择数据的干净子集,插入合适的默认值,或者采用更雄心勃勃的技术,例如通过建模来估计丢失的数据。
- 数据清理报告 -描述您为解决数据质量问题所采取的决策和措施。考虑为清洁目的而进行的数据的任何转换及其对分析结果的可能影响。
构造所需的数据
此任务包括建设性的数据准备操作,例如生成派生属性或整个新记录,或为现有属性转换值。
- 派生属性 -这些是由同一记录中一个或多个现有属性构成的新属性,例如,您可以使用length和width变量来计算一个新的area变量。
- 生成的记录 -在这里您将描述所有全新记录的创建。例如,您可能需要为过去一年未购物的客户创建记录。没有理由在原始数据中有这样的记录,但是出于建模目的,明确表示特定客户零购买的事实可能是有意义的。
整合资料
这些方法是从多个数据库,表或记录中组合信息以创建新记录或值的方法。
- 合并数据 -合并表是指将具有有关同一对象的不同信息的两个或多个表连接在一起。例如,一家零售连锁店可能有一个表,其中包含有关每个商店的一般特征(例如,楼层面积,购物中心类型)的信息,另一个表中具有汇总的销售数据(例如,利润,与上一年相比的销售额变化百分比),以及另一个有关周边地区人口统计信息。这些表中的每一个都包含每个商店的一条记录。这些表可以合并到一个新表中,每个存储有一个记录,合并了源表中的字段。
- 聚合 -聚合是指通过汇总来自多个记录和/或表的信息来计算新值的操作。例如,将一张有一张记录的客户购买表转换为一张有一张记录的新表,其中包含诸如购买数量,平均购买金额,从信用卡收取的订单百分比等字段,促销等项目的百分比
第四阶段–建模
选择建模技术
作为建模的第一步,您将选择要使用的实际建模技术。尽管您可能已经在业务理解阶段选择了一种工具,但是在此阶段,您将选择特定的建模技术,例如使用C5.0进行决策树构建或使用反向传播生成神经网络。如果应用了多种技术,请分别对每种技术执行此任务。
- 建模技术 -记录要使用的实际建模技术。
- 建模假设 -许多建模技术都对数据进行了特定的假设,例如,所有属性具有统一的分布,不允许丢失的值,类属性必须是象征性的,等等。记录所做的任何假设。
生成测试设计
在实际构建模型之前,您需要生成一个过程或机制来测试模型的质量和有效性。例如,在有监督的数据挖掘任务(例如分类)中,通常将错误率用作数据挖掘模型的质量度量。因此,通常将数据集分为训练集和测试集,在训练集上构建模型,并在单独的测试集上估计其质量。
- 测试设计 -描述训练,测试和评估模型的预期计划。该计划的主要组成部分是确定如何将可用数据集分为训练,测试和验证数据集。
建立模型
在准备好的数据集上运行建模工具以创建一个或多个模型。
- 参数设置 -使用任何建模工具,通常都可以调整大量参数。列出参数及其选择的值,以及选择参数设置的依据。
- 模型 -这些是建模工具生成的实际模型,而不是模型报告。
- 模型描述 -描述生成的模型,报告对模型的解释,并记录其含义遇到的任何困难。
评估模型
根据您的领域知识,数据挖掘成功标准和所需的测试设计来解释模型。从技术上判断建模和发现技术的成功应用,然后与业务分析师和领域专家联系,以讨论业务环境中的数据挖掘结果。该任务仅考虑模型,而评估阶段还考虑了项目过程中产生的所有其他结果。
在此阶段,您应该对模型进行排名并根据评估标准对其进行评估。您应该在此处尽可能考虑业务目标和业务成功标准。在大多数数据挖掘项目中,单一技术被多次应用,并且数据挖掘结果是通过几种不同的技术生成的。
- 模型评估 -汇总此任务的结果,列出生成的模型的质量(例如,准确性),并相对于彼此对它们的质量进行排名。
- 修改的参数设置 -根据模型评估,修改参数设置并对其进行调整,以进行下一次建模。反复进行模型构建和评估,直到您坚信找到最佳模型为止。记录所有此类修订和评估。
第五阶段–评估
评估结果
先前的评估步骤涉及模型的准确性和通用性等因素。在此步骤中,您将评估该模型满足您的业务目标的程度,并尝试确定该模型是否存在某种商业原因。如果时间和预算限制允许,另一个选择是在实际应用程序中的测试应用程序上测试模型。评估阶段还涉及评估您生成的任何其他数据挖掘结果。数据挖掘结果涉及与原始业务目标必然相关的模型,以及与原始业务目标不一定相关的所有其他发现,但可能还会揭示其他挑战,信息或未来方向的提示。
- 数据挖掘结果的评估-根据业务成功标准汇总评估结果,包括有关项目是否已经达到初始业务目标的最终声明。
- 批准的模型 -在评估了有关业务成功标准的模型之后,满足所选条件的生成的模型将成为批准的模型。
审查程序
在这一点上,最终的模型似乎令人满意并且可以满足业务需求。现在,您应该对数据挖掘的参与进行更彻底的检查,以确定是否有任何重要因素或任务被忽略了。该审查还涉及质量保证问题,例如:我们是否正确构建了模型?我们是否仅使用了允许使用的属性,这些属性可用于将来的分析?
- 过程的回顾 -总结已经错过了和那些应该被重复的过程审查和亮点活动。
确定下一步
现在,根据评估和流程审查的结果,决定如何进行。是否完成此项目并继续进行部署,发起进一步的迭代或设置新的数据挖掘项目?您还应该清点剩余的资源和预算,因为这可能会影响您的决策。
- 可能采取的措施列表-列出可能采取的进一步措施,以及支持和反对每种选择的原因。
- 决策 -描述有关如何进行的决策以及基本原理。
第六阶段–部署
计划部署
在部署阶段,您将获得评估结果并确定其部署策略。如果确定了创建相关模型的一般步骤,则此处记录了此步骤以供以后部署。在业务理解阶段也要考虑部署的方式和方法,因为部署对于项目的成功至关重要。这是预测分析真正有助于改善业务运营方面的地方。
- 部署计划 -总结您的部署策略,包括必要的步骤以及如何执行它们。
计划监控和维护
如果数据挖掘结果成为日常业务及其环境的一部分,则监视和维护是重要的问题。精心准备维护策略有助于避免不必要地长时间使用不正确的数据挖掘结果。为了监视数据挖掘结果的部署,项目需要详细的监视过程计划。该计划考虑了特定的部署类型。
- 监视和维护计划 -概述监视和维护策略,包括必要的步骤以及如何执行它们。
产生最终报告
在项目结束时,您将编写一份最终报告。根据部署计划,此报告可能只是项目及其经验的摘要(如果尚未将其记录为正在进行的活动),也可能是数据挖掘结果的最终且全面的表示形式。
- 最终报告 -这是数据挖掘工作的最终书面报告。它包括所有先前的可交付成果,总结和组织了结果。
- 最终演示 -在项目结束时通常还会有一个会议,将结果提交给客户。
审查项目
评估什么是对的,什么是错的,做得好的以及需要改进的地方。
- 经验文档 -总结项目中获得的重要经验。例如,您遇到的任何陷阱,令人误解的方法或在类似情况下选择最适合的数据挖掘技术的提示都可能是本文档的一部分。在理想的项目中,经验文档还涵盖了各个项目成员在项目先前阶段编写的所有报告。