数据挖掘通常被称为“从大型数据库提取有效、可信和可行信息的过程 ”。换言之,数据挖掘派生数据中存在的模式和趋势。这些模式和趋势可以被收集在一起并定义为挖掘模型。挖掘模型可以应用于特定的业务方案,例如:
- 预测销售额。
- 向特定客户发送邮件。
- 确定可能需要搭售的产品。
- 查找客户将产品放入购物车的顺序序列。
一个重要的概念就是生成挖掘模型是大型过程的一部分,此过程包括从定义模型要解决的基本问题到将模型部署到工作环境的所有事情。此过程可以使用下列六个基本步骤进行定义:
以下关系图说明过程中每个步骤之间的关系,以及 Microsoft SQL Server 2005 中可用于完成每个步骤的技术。
尽管关系图中所示的过程是一个循环过程,但是每个步骤并不需要直接执行到下一个步骤。创建数据挖掘模型是一个动态、交互的过程。浏览完数据之后,您可能会发现数据不足,无法创建适当的挖掘模型,因此必须查找更多的数据。您可以生成数个模型,但可能会发现这些模型无法回答定义问题时所设定的问题,因此必须重新定义问题。您可能必须在部署模型之后对其进行更新,因为又出现了更多的可用数据。因此,了解创建数据挖掘模型是一个过程,并且为了创建一个完美的模型,此过程中的每个步骤可能需要重复多次是非常重要的。
SQL Server 2005 提供用于创建和使用数据挖掘模型的集成环境,称为 Business Intelligence Development Studio。该环境包括数据挖掘算法和工具,使用这些算法和工具更易于生成用于各种项目的综合解决方案。有关使用 BI Development Studio 的详细信息,请参阅开发 Analysis Services 解决方案和项目。
有关如何将 SQL Server 工具应用于本主题前面部分列出的业务方案的详细信息,请参阅数据挖掘教程。
如以下关系图中突出显示的那样,数据挖掘过程的第一步就是明确定义业务问题。
该步骤包括分析业务需求,定义问题的范围,定义计算模型所使用的度量,以及定义数据挖掘项目的最终目标。这些任务转换为下列问题:
- 您在查找什么?
- 您要尝试预测数据集的哪个属性?
- 您要尝试找到什么类型的关系?
- 您要通过数据挖掘模型进行预测,还是仅仅查找受关注的模式和关联?
- 如何分发数据?
- 列如何关联,或者如果有多个表,则表如何关联?
若要回答这些问题,可能必须进行数据可用性研究,必须调查业务用户对可用数据的需求。如果数据不支持用户的需求,则还必须重新定义项目。
如以下关系图中突出显示的那样,数据挖掘过程的第二步就是合并和清除
Microsoft SQL Server 2005 Integration Services (SSIS) 包含完成该步骤所需的所有工具,步骤内容包括转换到自动执行数据清除和合并。
数据可以分散在公司的各个部门并以不同的格式存储,或者可能包含缺陷项或缺少项之类的不一致性。例如,数据可能显示客户在其出生日期之前购买产品,或者客户在距离她家 2,000 英里的商店定期购物。在开始生成模型之前,必须纠正这些问题。通常,您使用的是一个非常大的数据集,并且无法仔细查看每个事务。因此,必须使用某种自动化的形式(如,在 Integration Services 中)来浏览数据并找到这些不一致。
定义问题步骤中标识的数据。如以下关系图中突出显示的那样,数据挖掘过程的第三步就是浏览已准备的数据。
您必须了解数据,以便在创建模型时作出正确的决策。浏览技术包括计算最大值和最小值,计算平均偏差和标准偏差,以及查看数据的分布。浏览完数据之后,便可确定数据集是否包含缺陷数据,然后制订纠正这些问题的策略。
BI Development Studio 中的数据源视图设计器包含数种可用于浏览数据的工具。
如以下关系图中突出显示的那样,数据挖掘过程的第四步就是生成挖掘模型。
在生成模型之前,必须随机将已准备的数据分离到单独的定型数据集和测试数据集。您使用定型数据集生成模型,并通过创建预测查询来使用测试数据集测试模型的准确性。您可以使用 Integration Services 中的
您将使用从
浏览数据步骤中获得的知识来帮助定义和创建挖掘模型。模型通常包含多个输入列、一个标识列以及一个可预测列。然后可使用数据挖掘扩展插件 (DMX) 语言,或 BI Development Studio 中的数据挖掘向导,在新的模型内定义这些列。有关如何使用 DMX 的详细信息,请参阅数据挖掘扩展插件 (DMX) 参考。有关如何使用数据挖掘向导的详细信息,请参阅数据挖掘向导。
定义完挖掘模型的结构之后,需要对其进行处理,使用说明模型的模式来填充空结构。这称为“定型 ”模型。模式通过利用数学算法计算原始数据而得。SQL Server 2005 针对可生成的每种模型包含一种不同的算法。您可以使用参数调整每种算法。
挖掘模型由一个数据挖掘结构对象、一个数据挖掘模型对象以及一种数据挖掘算法定义。
有关详细信息,请参阅: 挖掘结构 (Analysis Services)、数据挖掘算法
Microsoft SQL Server 2005 Analysis Services (SSAS) 包括以下算法:
- Microsoft 决策树算法
- Microsoft 聚类分析算法
- Microsoft Naive Bayes 算法
- Microsoft 关联算法
- Microsoft 顺序分析和聚类分析算法
- Microsoft 时序算法
- Microsoft 神经网络算法 (SSAS)
- Microsoft 逻辑回归算法
- Microsoft 线性回归算法
如以下关系图中突出显示的那样,数据挖掘过程的第五步就是浏览您已经生成的模型并测试其有效性。
您不希望在事先没有测试模型性能的情况下将模型部署到生产环境。同样,您也许已经创建了数个模型,并且必须确定性能最佳的模型。如果您在
可以使用 BI Development Studio 中数据挖掘设计器内的查看器来浏览算法发现的趋势和模式。还可以使用该设计器中的工具(如,提升图和分类矩阵)来测试模型创建预测的性能。这些工具要求使用您在模型生成步骤中从原始数据集内分离的测试数据。
有关详细信息,请参阅:
创建模型步骤中创建的所有模型都无法正常工作,则必须返回到此过程的上一个步骤,重新定义问题或重新调查原始数据集中的数据。