第5章 挖掘建模之关联分析和时序模式
续“第5章 挖掘建模之分类与预测和聚类分析”
三、关联规则
- 就餐饮企业而言,经常会碰到这样的问题: 客户在餐厅点餐时,面对菜单中大量的菜品信息,往往无法迅速找到满意的菜品,既增加了点菜的时间,也降低了客户的就餐体验。
- 实际上,菜品的合理搭配是有规律可循的:顾客的饮食习惯、菜品的荤素和口味,有些菜品之间是相互关联的,而有些菜品之间是对立或竞争关系(负关联)。这些规律都隐藏在大量的历史菜单数据中,如果能够通过数据挖掘发现客户点餐的规则,就可以快速识别客户的口味,当他下了某个菜品的订单时推荐相关联的菜品,引导客户消费,提高顾客的就餐体验和餐饮企业的业绩水平。
- 关联规则分析也成为购物篮分析,最早是为了发现超市销售数据库中不同的商品之间的关联关系。例如一个超市的经理想要更多地了解顾客的购物习惯,比如“哪组商品可能会在一次购物中同时购买?”或者“某顾客购买了个人电脑,那该顾客三个月后购买数码相机的概率有多大?”他可能会发现如果购买了面包的顾客同时非常有可能会购买牛奶,这就导出了一条关联规则“面包=>牛奶”,其中面包称为规则的前项,而牛奶称为后项。通过对面包降低售价进行促销,而适当提高牛奶的售价,关联销售出的牛奶就有可能增加超市整体的利润。
- 关联规则分析是数据挖掘中最活跃的研究方法之一,目的是在一个数据集中找出各项之间的关联关系,而这种关系并没有在数据中直接表示出来。
关联规则——Apriori算法介绍
Apriori算法是最经典的挖掘频繁项集的算法,第一次实现了在大数据集上可行的关联规则提取,其核心思想是通过连接产生候选项与其支持度然后通过剪枝生成频繁项集。
1、关联规则和频繁项集
术语:支持度、置信度、强规则、项集、频繁k项集
(1)关联规则的一般形式
项集A、B同时发生的概率称为关联规则的支持度:
项集A发生,则项集B也同时发生的概率为关联规则的置信度:
(2)最小支持度和最小置信度
最小支持度是用户或专家定义的衡量支持度的一个阈值,表示项目集在统计意义上的最低重要性;
最小置信度是用户或专家定义的衡量置信度的一个阈值,表示关联规则的最低可靠性。同时满足最小支持度阈值和最小置信度阈值的规则称作强规则。
(3)项集
项集是项的集合。包含 k 个项的项集称为 k 项集,如集合{牛奶,麦片,糖}是一个3项集。
项集的出现频率是所有包含项集的事务计数,又称作绝对支持度或支持度计数。如果项集 I 的相对支持度满足预定义的最小支持度阈值,则 I 是频繁项集。频繁k项集通常记作。
(4)支持度计数
项集A的支持度计数是事务数据集中包含项集 A 的事务个数。
已知项集的支持度计数,则规则的支持度和置信度很容易从所有事务计数、项集A和项集
的支持度计数推出:
其中N表示总事务个数,表示计数。
Apriori算法的思想
Apriori算法的主要思想是找出存在于事务数据集中的最大的频繁项集,在利用得到的最大频繁项集与预先设定的最小置信度阈值生成强关联规则。
Apriori算法的性质
频繁项集的所有非空子集也必须是频繁项集。 根据该性质可以得出:向不是频繁项集 I 的项集中添加事务A,新的项集 一定也不是频繁项集。
Apriori算法的实现的两个过程
过程一:找出所有的频繁项集。 在这个过程中连接步和剪枝步互相融合,最终得到最大频繁项集 。
连接步 连接步的目的是找到K项集。
剪枝步 剪枝步紧接着连接步,在产生候选项的过程中起到减小搜索空间的目的。
过程二:由频繁项集产生强关联规则。
由过程一可知未超过预定的最小支持度阈值的项集已被剔除,如果剩下这些规则又满足了预定的最小置信度阈值,那么就挖掘出了强关联规则。
四、时序模式
就餐饮企业而言,经常会碰到这样的问题: 由于餐饮行业是生产和销售同时进行的,因此销售预测对于餐饮企业十分必要。如何基于菜品历史销售数据,做好餐饮销售预测?以便减少菜品脱销现象和避免因备料不足而造成的生产延误,从而减少菜品生产等待时间,提供给客户更优质的服务,同时可以减少安全库存量,做到生产准时制,降低物流成本。
餐饮销售预测可以看作是基于时间序列的短期数据预测,预测对象为具体菜品销售量。
本节应用时间序列分析的目的就是给定一个已被观测了的时间序列,预测该序列的未来值。
常用的时间序列模型见下表:
本节将重点介绍AR模型、MA模型、ARMA模型和ARIMA模型。
- 拿到一个观察值序列后,首先要对它的纯随机性和平稳性进行检验,这两个重要的检验称为序列的预处理。根据检验结果可以将序列分为不同的类型,对不同类型的序列会采取不同的分析方法。
- 对于纯随机序列,又叫白噪声序列,就意味着序列的各项之间没有任何相关关系,序列在进行完全无序的随机波动,可以终止对该序列的分析。
- 对于平稳非白噪声序列,它的均值和方差是常数,现已有一套非常成熟的平稳序列的建模方法。通常是建立一个线性模型来拟合该序列的发展,借此提取该序列的有用信息。ARMA模型是最常用的平稳序列拟合模型;
- 对于非平稳序列,由于它的均值和方差不稳定,处理方法一般是将其转变为平稳序列,这样就可以应用有关平稳时间序列的分析方法,如建立ARMA模型来进行相应得研究。如果一个时间序列经差分运算后具有平稳性,则该序列为差分平稳序列,可以使用ARIMA模型进行分析。