如何定位目标用户,在任何一个业务单元中都是一个很重要的话题,尤其在预算有限的情况下,如何获得活动的最大收益,目标用户的定位都是很重要的手段。
本文将介绍如何通过SQL Server分析服务(SSAS)中的数据挖掘功能根据历史记录信息来定位目标用户。
微软的SQL Server为数据平台提供了一套完整的解决方案,他不只是一个数据引擎,也提供了很多数据工具和服务,借助其中的分析服务,结合业务系统中的海量历史数据信息,SQL SERVER就可以帮助我们发现其中的模式和规律,从而对目标数据做预测分析。
在实际中,不同的挖掘模型适用于不同的问题场景,同一个问题模式下可能有多个模型都适合解决这个问题,这样对于问题的解决来说就多了很多可对比性,从而我们可以根据每个模型预测的准确程度选择一个最优的模型。
在本文的目标用户定位的问题上,采用三种挖掘模型进行比较,分别是决策树,贝叶斯和聚类算法。
本文使用的SQL SERVER版本是2012,示例数据库是Adventure Works的数据仓库,关于如何获取以及部署这个示例数据仓库,可以参考我的这篇随笔:
http://www.cnblogs.com/aspnetx/archive/2013/01/30/2883831.html
首先,建立数据挖掘项目,打开SQL DATA TOOLS,也就是Visual Studio 2010的那个Shell。
新建一个多维和数据挖掘的分析服务项目。
项目建立完毕后,新建数据源连接。
选择部署好的Adventure Works DW连接。
输入模拟身份信息,本演示用为了简便直接使用本地管理员账户(当然生产环境中是不建议这么做的)。
为数据源连接起名。
新建数据源视图。
选择刚才建立的数据源连接。
从左边可选对象列表中选取两个对象,一个是表ProspectiveBuyer,一个是视图vTargetMail。
为数据源视图取名。
可以在数据源视图中看到添加进来的两个表。
其中左面的表是在数据仓库经过整合的一批数据,用来训练和验证模型。右面的表是待预测的表,将在模型生成完毕后对这个表里的数据进行预测。
新建挖掘结构。
同时为挖掘结构指定一个挖掘模型,这里选择决策树模型。需要留意的是,一个挖掘结构可以有很多挖掘模型,不过在通过工具创建一个挖掘结构的时候需要指定一个挖掘模型。