验证数据挖掘模型(Analysis Services – 数据挖掘)
验证是评估挖掘模型对实际数据执行情况的过程。在将挖掘模型部署到生产环境之前,务必通过了解其质量和特征来对其进行验证。
可以使用多种方法评估数据挖掘模型的质量和特征。首先可使用统计信息有效性的各种度量值来确定数据或模型中是否存在问题。其次可将数据划分定型集和测试集,以测试预测的准确性。最后,可以请商业专家查看数据挖掘模型的结果,以确定发现的模式在目标商业方案中是否有意义。所有这些方法在数据挖掘方法中都非常有用,在创建、测试和优化模型来解决特定问题时可以反复使用这些方法。
本节将介绍与模型质量有关的一些基本概念,还将介绍 Microsoft SQL Server 2008 Analysis Services 中提供的模型验证的策略。有关模型验证如何适合更大数据挖掘过程的概述,请参阅数据挖掘项目(Analysis Services - 数据挖掘)。
度量数据挖掘模型的条件
用于验证数据挖掘模型的大多数方法不会直接解决商业问题,而是提供可用于指导业务决策或开发决策的指标。没有全面的规则可以说明什么时候模型足够好,或者什么时候具有足够的数据。
数据挖掘的度量通常分为以下三类:准确性、可靠性和有用性。
准确性、可靠性和有用性
“准确性”是模型与所提供数据中的属性的结果相关联程度的度量值。准确性有各种度量值,但准确性的所有度量值都依赖于所使用的数据。事实上,值可能缺少或近似,数据可能已被多个进程更改。特别是在探索和开发阶段,您可能决定允许数据中存在一定数量的错误,尤其是在数据的特征非常统一时。例如,基于过去的销售额来预测特定商店的销售额的模型可能非常相关,并且非常准确,即使该商店一直使用错误的会计方法。所以,准确性的度量值必须通过评估可靠性来平衡。
“可靠性”评估数据挖掘模型处理不同数据集的方法。如果无论提供哪些测试数据,数据挖掘模型都生成相同类型的预测,或者发现相同常规类型的模式,则该数据挖掘模型是可靠的。例如,为使用错误会计方法的商店生成预测的模型将不适用于其他商店,因此该模型是不可靠的。
“有用性”包括说明模型是否提供了有用信息的各种指标。例如,将商店位置与销售额相关联的数据挖掘模型可能既是准确的,也是可靠的,但可能是无用的,因为不能通过在同一位置增加更多商店来推广该结果。而且,它没有回答为什么某些位置销售额较高这一基本商业问题。您可能还会发现,如果模型基于数据中的交叉关联,它看起来是成功,但实际上没有意义。
Microsoft 数据挖掘框架
CRISP-DM 是用于描述定义、开发和实现数据挖掘项目的步骤的熟知方法。但是,CRISP-DM 是一种概念性框架,不提供有关如何设定项目范围和计划项目的特定指导。为了更好地满足那些对数据挖掘感兴趣,但不知道从哪里开始规划的商业用户的需要,以及可熟练进行 .NET 应用程序开发,但对数据挖掘不熟悉的开发人员的需要,Microsoft 已开发了一种用于实现数据挖掘项目的方法,其中包括全面的评估系统。
有关详细信息,请参阅 Microsoft Data Mining Resources page(“Microsoft 数据挖掘资源”页)。
SQL Server Analysis Services 中的挖掘模型验证方法
对于支持数据挖掘开发方法的所有阶段的数据挖掘解决方案,SQL Server 2008 支持多种验证方法。
将数据分区为定型集和测试集
将数据分区为定型集和测试集是用于准备要评估的数据的一种既定技术。定型数据集中的某些数据保留用于进行测试,其余数据用于进行定型。模型完成后将用于针对测试集进行预测。由于定型集中的数据是从用于进行定型的相同数据中随机选择的,因此从测试得出的准确性指标可能受数据差异的影响较小,因此可以更好地反映模型的特征。
有关详细信息,请参阅将数据分区为定型集和测试集(Analysis Services - 数据挖掘)。
挖掘模型的交叉验证
通过交叉验证,您可以将一个数据集分区为许多更小的交叉部分,并可以对交叉部分创建多个模型以测试整个数据集的有效性。然后,Analysis Services 将为每个分区生成详细的准确性指标。使用这些信息,可以提高各个模型的质量,也可以确定特定数据集的最佳模型。
有关详细信息,请参阅交叉验证(Analysis Services – 数据挖掘)。
绘制挖掘模型准确性图表
Microsoft SQL Server Analysis Services 提供了可帮助您绘制预测准确性图表,针对新数据或现有数据测试模型,或者在图表和报表中比较多个模型的工具。
“提升图”是将使用数据挖掘模型获得的改进与随机推测进行对比时,可视化所获得改进的方法。也可以创建将财务收益或成本与使用挖掘模型相关联的“利润图”,以及为回归模型创建“散点图”。“分类矩阵”是在表中对准确和不准确的推测进行排序的方法,以便可以快速方便地测量模型预测目标值的准确程度。
有关详细信息,请参阅模型准确性图表工具(Analysis Services - 数据挖掘)。
您也可以使用各种方法筛选模型,以便定型和测试同一源数据的不同组合。有关详细信息,请参阅测量挖掘模型准确性(Analysis Services - 数据挖掘)。
浏览和查询模型内容和事例
Analysis Services 提供了一组用于浏览模型的数据挖掘查看器。您也可以创建内容查询来帮助您更好地理解模型,以及发现方法或数据中的意外问题。使用数据挖掘扩展插件 (DMX) 创建内容查询时,可以获取有关挖掘模型发现的模式的统计信息,也可以检索支持该模型发现的特定模式的事例。您也可以在基础挖掘结构中向下钻取详细信息,以找到或显示模型中不包含的详细信息,或者对数据中发现的模式采取操作。
有关如何查询模型内容的详细信息,请参阅查询数据挖掘模型(Analysis Services – 数据挖掘)。
有关浏览模型内容的详细信息,请参阅查看数据挖掘模型。
有关如何为特定算法解释模型内容的详细信息,请参阅数据挖掘算法(Analysis Services – 数据挖掘)。