大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理

上传人:知** 文档编号:183390440 上传时间:2021-06-04 格式:PPTX 页数:36 大小:3.73MB
返回 下载 相关 举报
大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理_第1页
第1页 / 共36页
大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理_第2页
第2页 / 共36页
大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理_第3页
第3页 / 共36页
大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理_第4页
第4页 / 共36页
大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理》由会员分享,可在线阅读,更多相关《大数据分析与挖掘 实训3 基于关联规则的超市顾客购物行为分析与营销管理(36页珍藏版)》请在金锄头文库上搜索。

1、,大数据技术在企业创新背景下高校物流人才培养中的转化与应用,基于关联规则的超市顾客购物分析与营销管理,开篇讨论谁跟谁更般配?,http:/new-,大型超市或商场中科学合理的商品摆放布局不仅能节省顾客的购买时间,还能进一步刺激顾客的购买欲望。将一些被认为没有关联的商品摆放在一起,可能会产生意想不到的效果。 案例超市主要经营食品、生鲜、日用品等,规模相对较大,销售的商品种类繁多。随着超市竞争加剧,为求进一步发展,该超市迫切需要对自身的经营状况进行深入分析,并根据销售状况适时调整经营策略。 如何发现商品中的“啤酒与尿布”效应、并用陈列位置安排来提高用户体验、减少购物疲累、促进商品销售呢? 目标:希

2、望通过挖掘顾客历史交易记录,了解顾客的购买习惯和偏好,了解顾客购物篮中商品之间存在的关联性,以实现商品的组合优化布局,促进商品的效率,提高超市的效益。,问题提出任务背景,数据截图,数据来源:PMT-购物篮数据2,任务要求 从会员购买记录中挖掘客户行为特点、寻找商品布局规律,帮助营销方案优化。 任务实质 商品关联规则分析、超市货物布局、商业营销管理,问题解决商业理解,问题解决数据理解,本案例分析的是顾客的每次交易数据(即每个购物篮),1000条交易记录,17个特征变量,其中涉及一个或多个商品。 每一条记录表征顾客的购买记录,数据特征包括卡号顾客的唯一标识,每次购物的消费额,年龄等数值型属性,还包

3、括付款方式、性别和购买物品等离散型业务属性。,问题解决关联规则的经典算法与比较,问题解决挖掘逻辑与参数优化,探索性数据分析,模型构建,参数调整,问题解决规则解读,透过规则2、3、4、5、6、9、10、11、12、13、14、15,可以发现涉及到的商品都是蔬菜罐头、啤酒和冻肉,且提升度大多高于2,相关性很强,因此建议超市适当增加这三种商品的库存量,在处理商品货架摆放位置时,可以考虑将这些商品摆放于相近的位置,方便顾客选购。 透过规则1和规则8,可以发现鱼类和糖果具有较强的关联性,这本是风马牛不相及的商品,考虑到商品类型差异太大,鱼类属于生鲜区域,可以考虑在生鲜区域设置一小块货架用于放置糖果类食品

4、,来观测市场的反应,若销量出现明显增长,可以适当增加糖果的放置货架。 透过规则7和规则16,可以发现葡萄酒和乳制品具有较强的关联性,因此建议将这两种商品摆放于相邻位置,特别是在节假日促销时,亦可将葡萄酒作为主打商品与乳制品进行组合促销,设定一些优惠政策来吸引顾客购买。,问题解决管理决策-货位布局,同类相关:蔬菜罐头、啤酒和冻肉 近类相关:葡萄酒与乳制品 跨类相关:鱼类与糖果,临时货架:生鲜区域与糖果类品尝 宣传单张:糖果区域布置鱼类促销单张或者超市促销彩页,礼盒捆绑:葡萄酒和乳制品的应节包装捆绑 彩页捆绑:生鲜产品与糖果价格捆绑,问题解决管理决策-营销管理,将蔬菜罐头、啤酒和冻肉同类组合,足量

5、供应,加强采购管理,不能有缺货现象; 葡萄酒和乳制品近类组合;鱼类与糖果跨类组合,葡萄酒和乳制品进行价格组合,不定时变化择一降价促销 将鱼类与糖果选择其一在宣传单页进行价格促销,葡萄酒和乳制品,以礼盒或者买赠方式进行促销组合 将蔬菜罐头与啤酒以捆绑或者活动进行促销组合,将鱼类和糖果在布局上进行组合,例如在鱼类区域设置临时货架、品尝实验,在糖果区放置鱼类促销单张等,表中的集合葡萄酒,尿布,豆奶就是频繁项集的一个例子,从上面的数据集也可以找到诸如尿布葡萄酒的关联规则。,问题学习关联规则算法,知识点1.关联分析,关联分析是一种在大规模数据集中寻找有趣关系的任务。频繁项集是经常出现在一块的物品的集合,

6、关联规则暗示两种物品之间可能存在很强的关系。,几个概念 支持度:一个项集的支持度被定义为数据集中包含该项集的记录所占的比例。从表中可以得到,在5条交易记录中有3条包含豆奶,尿布,因此豆奶,尿布的支持度是3/5。支持度是针对项集来说的,因此可以定义一个最小支持度,而只保留满足最小支持度的项集。 置信度:置信度或可信度是针对一条诸如尿布葡萄酒的关联规则定义的。这条规则的可信度被定义为“支持度(尿布,葡萄酒) /支持度(尿布)”。从表中可以看到,由于尿布,葡萄酒的支持度为3/5,尿布的支持度为4/5,所以“尿布葡萄酒”的可信度为3/4=0.75。这意味着对于包含“尿布”的所有记录,我们的规则对其中7

7、5%的记录都适用。 项:是集合的概念,如在一篮子商品中的一件消费品即为一项(Item), 项集:若干项的集合,如尿布,面包构成一个二元项集。,问题学习关联规则算法,FP-growth算法是2000年提出的频繁项集挖掘算法,FP-growth和Apriori选择频繁集与Apriori挖掘频繁项集的关联分析有类似的地方,但是本质和Apriori完全不一样。 FP-growth算法只需要对数据库进行两次扫描,而Apriori算法对每个潜在的频繁项集都会扫描数据集判定给定模式是否频繁,因此FP-growth算法的速度要比Apriori算法快。 FP-growth算法发现频繁项集的基本过程包括: 构建F

8、P树 从FP树中挖掘频繁项集,关联规则,知识点2.频繁模式算法Frequent Pattern Algorithm,问题学习关联规则算法-频繁模式算法,频繁模式算法,有10000个消费者购买了商品,其中购买尿布1000个,购买啤酒2000个,购买面包500个,同时购买尿布和面包800个,同时购买尿布和面包100个。,频繁模式算法实例,1,FP-Growth算法演示-构造FP树,事务数据库的建立,扫描事务数据库得到频繁项目集F,定义minsup=20%,即最小支持度为2,重新排列F,重新调整事务数据库,构建FP树,root,I2:,1,I1:,2,I5:,1,1,I4:,1,3,I3:,1,4,

9、2,I4:,1,I1:,1,I3:,1,5,2,2,2,6,3,I3:,1,I5:,1,7,4,2,为构建FP树,需要对原始数据集扫描两遍。第一遍对所有元素项出现次数进行计数,统计各个元素项出现频率,去掉不满足最小支持度的元素项。 FP-growth算法还需要一个称为头指针表来指定给定元素项的第一个树节点并记录各个元素项的出现次数。这样每个元素项都构成一条单链表,可以快速访问FP树中一个给定元素项的所有元素。第二遍扫描数据集用来构建FP树。在构建时,读入每个项集并将其添加到一条已经存在的路径中。如果该路径不存在,则创建一条新路径。在将每条事务加到树之前,需要对每个集合进行排序。排序基于元素项的

10、绝对出现频率由高到低来进行,并过滤出不在L中的非频繁项。,FP树,1,FP-Growth算法演示-FP-树挖掘,挖掘从表头header的最后一个项开始,挖掘I5,FP树,在FP树中可以看到,从根节点到i5:1的路径有两条: i2:7-i1:4-i5:1 i2:7-i14-i3:2-i5:1 i2:7-i1:4和i2:7-i14-i3:2因为最终到达的节点肯定是i5,所以将i5省略就是i5的条件模式基,记为i2,i1:1i2,i1,i3:1,为什么每个条件模式基的计数为1呢?,虽然i2和i1的计数都很大,但是由于i5的计数为1,最终到达i5的重复次数也只能为1。所以条件模式基的计数是根据路径中节

11、点的最小计数来决定的。,root,I2:,I1:,2,I3:,2,挖掘I5,条件FP树,1,条件模式基:i2,i1:1i2,i1,i3:1,根据条件模式基,我们可以得到该商品的条件FP树,因为i3:1x小于最小支持度2,所以讲i3:1省略不计,i5的条件FP树记为 i2:2,I1:2,根据条件FP树,我们可以进行全排列组合,得到挖掘出来的频繁模式(这里要将商品本身,如i5也算进去,每个商品挖掘出来的频繁模式必然包括这商品本身),结论:FP-growth算法是一种用于发现数据集中频繁模式的有效方法,由于只对数据集扫描两次,因此FP-growth算法执行更快。在FP-growth算法中,数据集存储

12、在一个称为FP树的结构中。FP树构建完成后,可以通过查找元素项的条件基及构建条件FP树来发现频繁项集。该过程不断以更多元素作为条件重复进行,直到FP树只包含一个元素为止。,支持度和可信度是用来量化关联分析是否成功的方法。假设想找到支持度大于0.8的所有项集,应该如何去做?一个办法是生成一个物品所有可能组合的清单,然后对每一种组合统计它出现的频繁程度,可是当物品成千上万时,上述做法非常非常慢。为了降低所需的计算时间,研究人员发现一种所谓的Apriori原理。 Apriori原理是说如果某个项集是频繁的,那么它的所有子集也是频繁的。例如:项集豆奶,尿布是频繁的,那么豆奶、尿布也一定是频繁的,也就是

13、说如果一个项集是非频繁项集,那么它的所有超集也是非频繁的。如已知项集橙汁是非频繁的,我们就知道莴苣,橙汁、牛奶,尿布,橙汁也是非频繁的。使用该原理可以避免项集数目的指数增长,从而在合理的时间内计算出频繁项集。,问题学习关联规则算法-Apriori算法,知识点3. Apriori原理,使用Apriori算法发现频繁项集实例,(1)在算法的第一次迭代,每个项都是候选1-项集的集合C1的成员。算法简单地扫描所有的事务,对每个项的出现次数计数。,扫描D,对每 个候选计数,(2)设最小支持计数为2,可以确定1-频集的集合L 1。它由具有最小支持度的候选1-项集组成。,(3)为发现繁-频集的集合L2,算法

14、使用L1L1 产生候选2-项集集合C2。,(4)扫描D中事务,计算C2中每个候选项集的支持计数,C2,扫描D,对每 个候选计数,(5)确定2-频集的集合L2 ,它由具有最小支持度的C2中的候选2-项集组成。,与最小支持度计数比较候选支持度计数,(6)候选3-项集的集合C3 的产生如下:连接: C3=L2 , L2,L2,C3,利用Apriori性质剪枝:频繁项集的所有子集必须是频繁的。存在候选项集, 判断其子集是否频繁。 1,2,3的2-项子集是1,2,1,3和2,3, 它们都是L2的元素。因此保留1,2,3在C3中。 1,2,5的2-项子集是1,2,1,5和2,5, 它们都是L2的元素。因此

15、保留1,2,5在C3中。 1,3,5的2-项子集是1,3,1,5和3,5, 3,5不是L2的元素,因而不是频繁的,由C3中 删除1,3,5。 2,3,4的2-项子集是2,3,2,4和3,4,其中3,4不是L2的元素,因而不是频繁的, 由C3中删除2,3,4。 2,3,5的2-项子集是2,3,2,5和3,5, 其中3,5不是L2的元素,因而不是频繁的, 由C3中删除 2,3,5。 2,4,5的2-项子集是2,4,2,5和4,5, 其中4,5不是L2的元素,因而不是频繁的, 由C3中删除2,4,5 。 这样,剪枝后C3=1,2,3,1,2,5。,(7)扫描D中事务,以确定L3 ,它由C3中具有最小

16、支持度的的候选3-项集组成。,(8)算法使用L3L3 产生候选4-项集的集合C4。尽管连接产生结果 1,2,3,5, 这个项集被剪去,因为它的子集2,3,5 不是频繁的。则C4= ,因此算法终止, 找出了所有的频繁项集。,算法:Apriori。使用逐层迭代方法基于候选产生找出频繁项集。 输入: D:实物数据库; Min_sup:最小支持度计数阈值。 输出:L:D中的频繁项集。 方法: L1=find_frequent_1-itemsets(D); for(k=2;Lk-1 !=;k+) Ck=apriori_gen(Lk-1); For each 事务 tD/扫描D用于计数 Ct=subset(Ck,t);/得到t的子集,它们是候选 for each候选cC; C.count+; Lk=cC|c.count=min_stp return L=UkLk;,Apriori算法的伪代码,实验一,# 加载数据集 def loadDataSet(): return 1, 3, 4, 2, 3, 5, 1, 2, 3, 5, 2, 5,实验二使用UCI蘑菇数据集进行实验,for item in L

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号