第 1 课:创建自行车购买者挖掘结构

在本课中,你将创建一个挖掘结构,用于预测 Adventure Works Cycles 的潜在客户是否会购买自行车。 如果不熟悉挖掘结构及其在数据挖掘中的角色,请参阅 挖掘结构 (Analysis Services - 数据挖掘)

在本课中创建的 Bike Buyer 挖掘结构支持添加基于 Microsoft 聚类分析算法Microsoft 决策树算法的挖掘模型。 在后面的课程中,您将使用聚类分析挖掘模型来浏览各种客户分组方式,并使用决策树挖掘模型来预测潜在的客户是否将购买自行车。

CREATE MINING STRUCTURE 语句

若要创建挖掘结构,请使用 CREATE MINING STRUCTURE (DMX) 语句。 可以将语句中的代码分为下列几部分:

  • 命名结构。

  • 定义键列。

  • 定义挖掘列。

  • 定义可选的测试数据集。

下面是 CREATE MINING STRUCTURE 语句的一般示例:

CREATE MINING STRUCTURE [<mining structure name>]  
(  
    <key column>,  
    <mining structure columns>  
)   
WITH HOLDOUT (<holdout specifier>)  

代码的第一行定义了结构的名称:

CREATE MINING STRUCTURE [<mining structure name>]  

有关在 DMX) (数据挖掘扩展中命名对象的信息,请参阅 DMX) 标识符 (

代码的下一行定义了挖掘结构的键列,它唯一标识源数据中的实体:

<key column>,  

在将要创建的挖掘结构中,客户标识符 CustomerKey 定义了源数据中的实体。

代码的下一行用于定义与挖掘结构关联的挖掘模型所使用的挖掘列:

<mining structure columns>  

可以使用挖掘结构列中>的 DISCRETIZE 函数<通过以下语法离散化连续列:

DISCRETIZE(<method>,<number of buckets>)

有关离散化列的详细信息,请参阅 离散化方法 (数据挖掘) 。 有关可定义的挖掘结构列类型的详细信息,请参阅 挖掘结构列

最后一行代码定义挖掘结构中的可选分区:

WITH HOLDOUT (<holdout specifier>)  

您要指定某些数据用于测试与该结构相关的挖掘模型,剩余数据用于定型该模型。 默认情况下,Analysis Services 会创建一个包含所有事例数据的 30% 的测试数据集。 您将添加这样一个说明:测试数据集应包含 30% 的事例,并且最多可以包含 1000 个事例。 如果 30% 的事例不足 1000 个,则测试数据集将包含较小数量的事例。

课程任务

在本课中,你将执行以下任务:

  • 创建新的空白查询。

  • 更改查询以创建挖掘结构。

  • 执行查询。

创建查询

第一步是连接到 Analysis Services 的实例,并在 SQL Server Management Studio 中创建新的 DMX 查询。

在 SQL Server Management Studio 中创建一个新的 DMX 查询

  1. 打开 SQL Server Management Studio。

  2. 在“ 连接到服务器 ”对话框中,对于“ 服务器类型”,选择“ Analysis Services”。 在 “服务器名称”中,键入 LocalHost或键入要在本课中连接到的 Analysis Services 实例的名称。 单击“连接” 。

  3. “对象资源管理器”中,右键单击 Analysis Services 实例,指向“新建查询”,然后单击“DMX”打开查询编辑器和一个新的空白查询。

更改查询

第二步是修改上述 CREATE MINING STRUCTURE 语句以创建自行车购买者挖掘结构。

自定义 CREATE MINING STRUCTURE 语句

  1. 在查询编辑器中,将 CREATE MINING STRUCTURE 语句的一般示例复制到空白查询中。

  2. [<mining structure>]   
    

    替换为:

    [Bike Buyer]  
    
  3. <key column>   
    

    替换为:

    CustomerKey LONG KEY  
    
  4. <mining structure columns>   
    

    替换为:

    [Age] LONG DISCRETIZED(Automatic,10),  
    [Bike Buyer] LONG DISCRETE,  
    [Commute Distance] TEXT DISCRETE,  
    [Education] TEXT DISCRETE,  
    [Gender] TEXT DISCRETE,  
    [House Owner Flag] TEXT DISCRETE,  
    [Marital Status] TEXT DISCRETE,  
    [Number Cars Owned] LONG DISCRETE,  
    [Number Children At Home] LONG DISCRETE,  
    [Occupation] TEXT DISCRETE,  
    [Region] TEXT DISCRETE,  
    [Total Children]LONG DISCRETE,  
    [Yearly Income] DOUBLE CONTINUOUS  
    
  5. WITH HOLDOUT (holdout specifier>)  
    

    替换为:

    WITH HOLDOUT (30 PERCENT or 1000 CASES)  
    

    现在,完整的挖掘结构语句应该如下所示:

    CREATE MINING STRUCTURE [Bike Buyer]  
    (  
       [Customer Key] LONG KEY,  
       [Age]LONG DISCRETIZED(Automatic,10),  
       [Bike Buyer] LONG DISCRETE,  
       [Commute Distance] TEXT DISCRETE,  
       [Education] TEXT DISCRETE,  
       [Gender] TEXT DISCRETE,  
       [House Owner Flag] TEXT DISCRETE,  
       [Marital Status] TEXT DISCRETE,  
       [Number Cars Owned]LONG DISCRETE,  
       [Number Children At Home]LONG DISCRETE,  
       [Occupation] TEXT DISCRETE,  
       [Region] TEXT DISCRETE,  
       [Total Children]LONG DISCRETE,  
       [Yearly Income] DOUBLE CONTINUOUS  
    )  
    WITH HOLDOUT (30 PERCENT or 1000 CASES)  
    
    
  6. 在“ 文件 ”菜单上,单击“ 将 DMXQuery1.dmx 另存为”。

  7. 在“ 另存为 ”对话框中,浏览到相应的文件夹,并将文件 Bike Buyer Structure.dmx命名为 。

执行查询

最后一步是执行查询。 创建并保存查询后,需要执行查询。 也就是说,需要运行查询语句以便在服务器上创建挖掘结构。 有关在 查询编辑器 中执行查询的详细信息,请参阅数据库引擎查询编辑器 (SQL Server Management Studio)

执行查询

  1. 在“查询编辑器”工具栏上,单击“执行”。

    语句执行完成后,查询的状态将显示在查询编辑器底部的“消息”选项卡中。 所显示的消息应为:

    Executing the query   
    Execution complete  
    

    服务器上现在存在名为 Bike Buyer 的新结构。

在下一课中,您将向刚才创建的结构中添加挖掘模型。

下一课

第 2 课:向自行车购买者挖掘结构添加挖掘模型