Microsoft 顺序分析和聚类分析算法

Microsoft 顺序分析和聚类分析算法是由 Microsoft SQL Server 2005 Analysis Services (SSAS) 提供的一种顺序分析算法。您可以使用该算法来研究包含可通过下面的路径或“顺序**”链接到的事件的数据。该算法通过将相同的顺序分到一组或一类中来查找最常见的顺序。这些顺序可以采取多种格式,包括:

  • 用来说明用户浏览网站时的点击路径的数据。
  • 用来说明客户将商品添加到在线零售商的购物车中的顺序的数据。

该算法类似于 Microsoft 聚类分析算法。不过,Microsoft 顺序分析和聚类分析算法不是查找包含类似属性的事例的分类,而是查找顺序中包含类似路径的事例的分类。

该算法创建的挖掘模型在数据中包含了最常见顺序的说明。您可以使用这些说明来预测新顺序的下一个可能步骤。在对记录进行分类时,该算法还在数据中对与顺序没有直接关系的列进行了说明。因为该算法包括了非相关列,所以您可以使用得到的模型来识别顺序数据和没有出现在顺序中的数据之间的关系。

示例

Adventure Works 公司的网站收集有关站点用户访问什么页面的信息和有关网页访问顺序的信息。因为该公司提供在线订购,所以用户必须登录到此站点。这可以为该公司的各个客户配置文件提供点击信息。通过对此数据使用 Microsoft 顺序分析和聚类分析算法,该公司可以查找具有相同的点击模式或点击顺序的客户组或分类。然后,该公司可以使用这些分类来分析用户如何在网站中移动,来识别哪些页面与特定产品的销售关系最密切及预测接下来哪些页面最有可能被访问。

算法的原理

该算法采用期望最大化 (EM) 聚类分析方法来识别分类及其顺序。该算法明确地使用某种概率性方法来确定某个数据点存在于某个分类中的概率。有关 Microsoft 聚类分析算法中如何使用此聚类分析方法的说明,请参阅 Microsoft 聚类分析算法

Microsoft 顺序分析和聚类分析算法使用的输入列之一是一个嵌套表,该表中包含序列数据。此数据是某个数据集(例如产品购买或 Web 点击)中的各个事例的一系列状态转换。为确定哪个顺序列用作聚类分析的输入列,该算法度量该数据集中所有可能顺序之间的差异或距离。在度量完这些距离后,该算法将该顺序列用作聚类分析的 EM 方法的输入。

使用算法

顺序聚类分析模型需要一个用来标识记录的键和一个包含顺序相关列(例如标识顺序中的事件的网页标识符)的嵌套表。每个顺序只允许有一个顺序相关列,且每个模型中只允许有一种类型的顺序。若要在本主题前面提到的示例方案中创建一个模型,您需要创建一个包含两个表的数据源。第一个表用来包含订单,第二个表用来包含订单放置到购物车的顺序。

Microsoft 顺序分析和聚类分析算法支持下表中列出的特定输入列内容类型、可预测列内容类型和建模标志。

输入列内容类型

Continuous、Cyclical、Discrete、Discretized、Key、Key Sequence、Table 和 Ordered

可预测列内容类型

Continuous、Cyclical、Discrete、Discretized、Table 和 Ordered

建模标志

MODEL_EXISTENCE_ONLY 和 NOT NULL

所有 Microsoft 算法均支持一些通用的函数。不过,Microsoft 顺序分析和聚类分析算法支持下表中列出的其他函数。

Cluster

PredictHistogram

ClusterProbability

PredictNodeId

IsDescendant

PredictProbability

IsInNode

PredictSequence

PredictAdjustedProbability

PredictStdev

PredictAssociation

PredictSupport

PredictCaseLikelihood

PredictVariance

有关对所有 Microsoft 算法都通用的函数列表,请参阅数据挖掘算法。有关如何使用这些函数的详细信息,请参阅数据挖掘扩展插件 (DMX) 函数参考

Microsoft 顺序分析和聚类分析算法不支持使用预测性模型标记语言 (PMML) 来创建挖掘模型。

Microsoft 顺序分析和聚类分析算法支持几个影响所得到的挖掘模型的性能和准确性的参数。下表对各参数进行了说明:

参数 说明

CLUSTER_COUNT

指定将由算法生成的大致分类数。如果无法基于相应的数据生成该大致数目的分类,则算法将生成尽可能多的分类。如果将 CLUSTER_COUNT 设置为 0,则算法将使用试探性方法最准确地确定要生成的分类数。

默认值为 10。

MINIMUM_SUPPORT

指定每个分类中的最小事例数。

默认值为 10。

MAXIMUM_SEQUENCE_STATES

指定一个顺序可以拥有的最大状态数。将该值设置为大于 100 的数将导致算法创建一个不提供有意义的信息的模型。

默认值为 64。

MAXIMUM_STATES

指定算法支持的非顺序属性的最大状态数。如果某个非顺序属性的状态数大于该最大状态数,则算法将使用该属性最常见的状态并将剩余状态视为不存在。

默认值为 100。

请参阅

概念

数据挖掘算法
数据挖掘向导
使用数据挖掘工具
使用 Microsoft 序列分类查看器查看挖掘模型

其他资源

CREATE MINING MODEL (DMX)

帮助和信息

获取 SQL Server 2005 帮助