热线电话:13121318867

登录
首页精彩阅读应用关联规则模型提高超市销量
应用关联规则模型提高超市销量
2018-07-14
收藏

应用关联规则模型提高超市销量

Statistics 和 Modeler作为 IBM SPSS 软件家族中重要的成员,是专业的科学统计、数据挖掘分析工具,其具有功能强大,应用广泛的特点。其核心 组成部分——预测分析模型,不仅是软件功能实现的关键,同时也是软件应用的关键。

Statistics中的模型侧重于统计分析技术, 而Modeler则侧重于数据挖掘技术。它们都依据现有数据,运用某个或某几个特定的算法,来预测用户所关注信息的未来值。Statistics 和 Modeler提供众多的预测模型,这使得它们可以应用在多种商业领域中:如超市商品如何摆放可以提高销量;分析商场营销的打折方案,以制定新的更为有效的方案;保险公司分析以往的理赔案例,以推出新的保险品种等等,具有很强的商业价值。

Statistics和 Modeler产品中含有大量基于高级数学统计算法的预测模型,为了保证算法的严密性及结果的精确性,模型往往还需要许多详细的参数设定,这样就要求用户具有一定的统计专业知识,只有理解预测模型中的各项设置及运算结果的真实意义,才有可能结合结果做出正确的决策判断;另外,为了满足不同行业用户的需求,Statistics和 Modeler涉及到数学领域中多个不同的范畴,即使专业用户也很难了解所有模型,从而挑选出最适合他们应用的模型。

因此,为了让更多的用户更好更准确地使用我们的产品,最大地发挥其商业价值,我们将通过一系列的相关文章来介绍IBM SPSS软件家族中Statistics 和 Modeler的典型预测模型以及他们在解决相应的商业问题中的实际应用。

本系列文章从实际问题出发,通过一些实际生活中常见的商业问题来引出IBM SPSS 软件家族中的典型预测模型,手把手地指导用户如何在软件中对该模型进行设置,如何查看运行结果,讲解运行结果的真实意义,最后引申到如何将该结果应用于解决这个具体的商业问题中来。用这种最直观简单的方式使即使缺乏统计学背景的用户也能容易地理解这些预测模型,从而很好地使用我们的产品。 同时,文中也涉及了一定的统计知识,使具有专业知识的用户能依此线索尽可能多的了解我们的产品的方方面面,从而选择最适合他们问题的模型。

下面,我们将会陆续给大家介绍IBM SPSS 软件家族中的Statistics 和 Modeler包含的典型预测模型。

超市典型案例

如何摆放超市的商品引导消费者购物从而提高销量,这对大型连锁超市来说是一个现实的营销问题。关联规则模型自它诞生之时为此类问题提供了一种科学的解决方法。该模型利用数据挖掘的技术,在海量数据中依据该模型的独特算法发现数据内在的规律性联系,进而提供具有洞察力的分析解决方案。以下我们将通过一则超市销售商品的案例,利用 IBM SPSS Modeler 产品中的“关联规则模型”,来分析商品交易流水数据,以其发现合理的商品摆放规则,来帮助提高销量。文中将详细地描述产品的设置和使用方法,以及对计算结果的分析及应用。

关联规则简介

关联规则的定义

关联规则表示不同数据项目在同一事件中出现的相关性,就是从大量数据中挖掘出关联规则。为了更直观的理解关联规则,我们首先来看下图的场景。

图 1. 超市市场分析员分析顾客购买习惯

在上图中,超市市场分析员分析顾客购买商品的场景,顾客购买面包同时也会购买牛奶的购物模式就可用以下的关联规则来描述:

面包 => 牛奶 [ 支持度 =2%, 置信度 =60%] (式 1)

式 1中面包是规则前项(Antecedent),牛奶是规则后项 (Consequent)。实例数(Instances)表示所有购买记录中包含面包的记录的数量。支持度(Support)表示购买面包的记录数占所有的购买记录数的百分比。规则支持度(Rule Support)表示同时购买面包和牛奶的记录数占所有的购买记录数的百分比。置信度(confidence)表示同时购买面包和牛奶的记录数占购买面包记录数的百分比。提升(Lift)表示置信度与已知购买牛奶的百分比的比值,提升大于 1 的规则才是有意义的。关联规则 式 1的支持度 2% 意味着,所分析的记录中的 2% 购买了面包。置信度 60% 表明,购买面包的顾客中的 60% 也购买了牛奶。如果关联满足最小支持度阈值和最小置信度阈值,就说关联规则是有意义的。这些阈值可以由用户或领域专家设定。就顾客购物而言,根据以往的购买记录,找出满足最小支持度阈值和最小置信度阈值的关联规则,就找到顾客经常同时购买的商品。

数据格式

关联规则使用的数据可能是交易格式,也可能是表格格式,如下所述。

交易格式

交易数据对于每个交易或项目具有一个单独的记录。例如,如果客户进行了多次采购,则每次采购都会有一个单独的记录,并且相关联的商品与客户 ID 相链接。这种格式有时称为 行穷尽格式。

表 1. 交易格式数据
客户    采购
1    jam
2    milk
3    jam
3    bread
4    jam
4    bread
4    milk
    表格格式
表格数据(也称为篮子数据或真值表数据),由单独的标志表示项目,其中每个标志字段表示一个特定项目的存在或不存在。每个记录表示一个相关项目的完整集合。标志字段可以是分类的,也可以是数字的。
表 2. 表格格式数据
客户    Jam    Bread    Milk
1    T    F    F
2    F    F    T
3    T    T    F
4    T    T    T规则挖掘算法

Aprior、Carma 和序列节点是常用的关联规则挖掘算法,它们都可以使用交易格式和表格格式数据进行挖掘处理。其中 Aprior 算法,处理速度快,对包含的规则数没有限制,是一种最有影响的挖掘关联规则的方法。

IBM SPSS Modeler 关联规则模型的使用

IBM SPSS Modeler 作为一种可视化的数据挖掘和建模工具,支持 Aprior、Carma 和序列节点关联规则挖掘模型,本章节将重点介绍 Aprior 模型的设置、使用方法和结果分析。

对于超市市场分析员分析顾客购买习惯的案例,现在让我们设定一个实际的场景,市场分析员利用超市海量的购物清单,从中分析出顾客购买啤酒会和哪些商品一起购买,依次来合理安排商品的摆放,进而提高啤酒的销量。

对于此案例,我们使用 IBM SPSS Modeler 自带的安装目录下的 Demos 文件夹下的 BASKETS1n 数据。我们希望分析出哪些商品会和啤酒一起购买,以此来合理安排商品的摆放,进而提高啤酒的销量。

此数据属于表格格式数据,每条记录表示顾客的一次购物。记录的字段包括卡号、顾客基本信息、付款方式和商品名称(每个商品一个字段 , 该商品字段值为 T, 表示购买该商品 , 值为 F 表示未购买,具体可参考表 2, 表格格式数据)。商品名称都有 fruitveg(水果蔬菜),freshmeat(生鲜肉),dairy(奶制品),cannedveg(罐装蔬菜),cannedmeat(罐装肉),fozenmeal(冻肉),beer(啤酒), wine(酒类),softdrink(软饮),fish(鱼), confectionery(甜食)。如何对这些数据进行分析和处理,本节会给出详细的演示。

在做详细介绍以前,让我们先了解下 IBM SPSS Modeler 的建模过程,关于详细的过程,可以参考本文给出的参考资料。IBM SPSS Modeler 中处理的基本对象是流,在流中可以添加数据节点、类型节点、建模节点等,运行后会生成模型节点,进而对模型节点进行分析,得出结论。

现在让我们开始介绍如何创建一条包含关联规则模型的流,来解决市场分析员的问题。本节使用 IBM SPSS Modeler 14.2 进行演示。首先打开 Modeler 产品,会出现一张空白的流界面,这时用户可以在里面创建自己的流。

图 2. IBM SPSS Modeler 界面

第一步,为流添加一个数据节点,这里选择 Modeler 自带的 Demo 数据。将界面下方选项卡的“源”选项中的“可变文件”拖放到空白界面中,双击打开,在文件选项卡中选择 Modeler 自带的 Demo 数据 BASKETS1n,如图所示。

图 3. 选择添加数据节点

点击确定按钮,这时就成功的创建了数据节点。

第二步,为流添加类型节点,类型节点是显示和设置数据每个字段的类型、格式和角色。从界面下方的“字段选项”卡中,将“类型”节点拖放到界面中,接着将数据节点和类型节点连接起来,或者直接在“字段选项”卡中双击“类型”节点,将两者连接起来。这时双击打开“类型”节点,此时“类型”节点中显示了数据的字段和其类型,点击“类型”节点界面上的“读取值”按钮,这时会将数据节点中的数据读取过来。如下图所示。

图 4. 设置类型节点


数据挖掘】应用关联规则模型提高超市销量(二)


接着可以为参与建模的数据字段设置角色,角色分“输入”,“目标”,“两者”和“无”。输入表示该字段可供建模使用,目标表示该字段为建模的预测目标,两者表示该字段为布尔型的输入字段,无表示该字段不参与建模。Apriori 节点需要一个或多个输入字段和一个或多个目标字段,输入字段和输出字段必须是符号型字段。在此可以选择一个或多个字段为目标字段,表明该模型的预测目标字段;对于 Apriori 建模节点,也可以不设置目标字段,则需要在建模节点中设置“后项”。

第三步,为流添加 过滤节点,将不参与的字段排除在外。该步骤为可选步骤。从“字段选项”卡中选择“过滤”节点,并将其拖入到界面中,将“过滤”节点加入到流中。双击打开“过滤”节点,在不参与建模字段的箭头上点击,会出现一个红叉,表示该字段被过滤掉了,不参与建模,如图所示。

图 5. 设置过滤节点

对于一些与建模关系不大的节点可以将其过滤掉,比如卡号、性别、家乡和年龄字段

第四步,有了这些前期的准备过程,接下来就可以开始创建关联规则模型节点了,在此之前,让我们先添加一个图形节点—— 网络节点,建立此节点的目的是为了让用户首先可以直观的看到商品之间的关联程度,有一个感性认识。选择“图形”选项卡中的“网络”节点,将此拖入界面,将“网络”节点加入流中,与“过滤”节点连接起来。双击打开网络节点,在“字段”列表中选择添加字段,可以将所有的商品字段添加进来;也可以点击“仅显示真值标志”,将只显示那些“两者”的字段,如图所示。

图 6. 网络节点设置

点击“选项”卡,进入选项设置,用户可以在此设置链接数量的显示范围,不显示一些链接数量低的链接,如图所示。

图 7. 网络节点选项设置

点击“运行”按钮,这时会生成一个商品之间关联程度(链接数量)的网络图,用户可以在下方的调节杆上调节链接数量的显示范围。

图 8. 网络节点运行结果

上图中,线的粗细和深浅代表联系的强弱,可以直观的看到 beer 和 frozenmeat,cannedeg 联系程度比较强。接下来将开始本章节的重点部分,关联规则模型节点的设置和使用。

第五步,添加“建模”节点到流中,开始关联规则模型设置和使用的篇章。首先点击界面下方“建模”选项卡,再点击“关联”分类,将 Apriori 节点拖放到界面中,连接该节点到过滤节点上,或者双击 Apriori 节点。接着设置 Apriori 节点的参数,建立关联规则模型。双击打开 Apriori 节点,如下图所示。

图 9. Apriori 建模节点

该“字段”选项卡,是设置参与建模的字段和目标字段的,可以看到其中包括两个选项,“使用类型节点设置”和“使用定制设置”,这里将为用户分别呈现两种选项的使用方法。这里无论选择哪个选项,都需要将市场分析员重点关注的商品包括在其中,其他商品可以不包括。

如果用户选择“使用类型节点设置”选项,则需要双击打开“类型”节点,将啤酒设置为目标,将其他重点关注的商品设置为两者或输入,其他无用字段可以设置为无或输入,如下图所示。

图 10. 设置字段当选择“使用类型节点设置”

数据挖掘】应用关联规则模型提高超市销量(三)

如果用户选择“使用定制设置”选项,则需要将啤酒设置在“后项”列表中,将其他重点关注的商品设置在“前项”列表中,如下图所示。

图11. 设置字段当选择“使用定制设置”

这里,分区允许您使用指定字段将数据分割为几个不同的样本,分别用于模型构建过程中的训练、测试和验证阶段。如果设置了“分区”,除了在此选择分区字段外,还需要在“模型”选项卡中,勾上“使用分区数据”的选择框。关于“分区”的概念、作用和使用方法,本文不做详细介绍。

除此,“使用事务处理格式”选择框,是针对于事务性数据的,如果数据为交易格式,需要勾上此选择框,但本示例的数据为表格格式,故无需选择。

设置好了字段后,点击“模型”选项卡,进入模型设置。如下图所示。

图 12. 设置模型选项卡

用户可以在“模型名称”处为本模型设置一个名字,如果想使用分区功能,则需要勾上“使用分区数据”选项。

用户为规则模型设置一个 最低条件支持度,那么模型将从所有规则中选择那些为真,并且其对应的记录的百分比大于此值的规则。如果您获得的规则适用于非常小的数据子集,请尝试增加此设置。

接着,用户需要为模型设置一个 最小规则置信度,表明正确预测的百分比。置信度低于指定标准的规则将被放弃。如果您获得的规则太多,请尝试增加此设置。如果您获得的规则太少(甚至根本无法获得规则),请尝试降低此设置。

用户还可以为任何规则指定“最大前项数”。这是一种用来限制规则复杂性的方式。如果规则太复杂或者太具体,请尝试降低此设置。

对于“仅包含标志变量的真值”选项,如果对于表格格式的数据选择了此选项,则在生成的规则中只会出现真值。这样使得规则更容易理解。该选项不适用于事务格式的数据。

为了提高建模性能,设置了“优化”选项供用户选择。选择“速度”可指示算法从不使用磁盘溢出,以便提高性能。选择“内存”可指示算法在合适的时候,以牺牲某些速度为代价使用磁盘溢出。

接下来,进入“专家”选项卡,对于一般用户,则选择“简单”选项;而对于高级用户,则可以通过此页面进行微调,如下图所示。

图 13. 专家选项卡设置

关于“专家”选项的设置和介绍,请参见 IBM SPSS Modeler 帮助文档。

此时,我们已经创建好了关联规则模型的整个流,点击工具栏的绿色箭头,运行该流,会生成一个“模型”节点,该节点里包含了模型运行结果。整个运行后的流图,如下图所示。

图 14. 关联规则模型流图

第六步,在得到了运行结果后,我们双击打开生成的“模型”节点,点击“显示 / 隐藏标准菜单”下拉框,选择“显示所有”,结果如下图所示。

数据挖掘】应用关联规则模型提高超市销量(四)


图 15. 模型节点信息

从结果可以看出,通过关联规则模型挖掘出了三个规则,分别是规则一,购买了冻肉(frozenmeal)和罐装蔬菜(cannedveg)的顾客都会购买啤酒(beer);规则二,购买了冻肉的顾客都会购买啤酒;规则三,购买了罐装蔬菜的顾客都会购买啤酒。其中,第一列代表结果,而下一列代表条件,后面的列包含规则信息,如置信度、支持度和提升等。

市场分析员对于模型结果的三条规则和规则信息,如何分析得出结论呢?首先分析第一条规则,购买了冻肉和罐装蔬菜的顾客会购买啤酒,此规则中购买了冻肉和罐装蔬菜的记录有 173 条,占 17.3%,同时购买了冻肉、罐装蔬菜和啤酒的记录占 14.6%,而在购买了冻肉和罐装蔬菜的顾客中会有 84.393% 的顾客会购买啤酒,并且提升为 2.88,表明此规则的相关性很强,部署能力和置信度类似,可以不考虑。对于规则二三,可以同样分析。问题的关键是,哪些规则信息才能作为评判标准。通过对规则信息的分析和了解,建议将置信度和提升作为选择规则的标准,因为置信度能反映出规则预测的准确程度,提升值越大,规则的相关性越强。据此,可以将规则一作为分析结果。

因此可以将啤酒和冻肉、罐装蔬菜放在一起销售,这也正好和前面的网络节点图的显示相一致。

总结

本文通过一个实际的商业场景,引入了 IBM SPSS Modeler 关联规则模型,首先给出了关联规则的相关概念,接着带领您一步一步的创建了数据流,并且介绍了模型的建立和设置,并且对结果进行了分析。您可以将本模型应用到其他的场景中,如网络日志分析、银行潜在客户分析、电子商务的捆绑销售等。



数据分析咨询请扫描二维码

最新资讯
更多
客服在线
立即咨询