客户在餐厅点餐时,面对着菜单中大量的菜品信息,往往无法迅速的找到满意的菜品,既增加了点菜的时间,也降低了客户的就餐体验。实际上,菜品的合理搭配是有规律可循的:顾客的饮食习惯,菜品的荤素和口味,有些菜品之间是互相关联的,而有些菜品之间是对立或竞争关系(负关联)。这些规律都隐藏在大量的历史菜单数据中,如果能够通过数据挖掘发现客户点餐的规律,就可以快速识别客户的口味,当他下了某个菜品的订单时推荐相关联的菜品,引导客户消费,提高顾客的就餐体验和餐饮企业的业绩水平。
Apriori的核心思想就是通过连接产生候选项以及支持度,然后通过剪枝生成频繁项集。
关联规则与频繁项集
(1)关联规则的一般形式
项集A、B同时发生的概率称为关联规则的支持度(也称为相对支持度)
support(a=>b) = P(a|b)
项集a发生,则项集b发生的概率为关联规则的置信度
confidence(a=>b)= P(b|a)
(2)最小支持度和最小置信度
最小支持度是用户或专家的衡量支持度的一个阈值,表示项目集在统计意义上的最低重要性,最小置信度是用户或专家定义的衡量置信度的一个阈值,表示关联规则的最低可靠性。同时满足最小支持度和最小置信度阈值的规则称为强规则。
(3)项集
项集是项的集合。包含K个项的项集称为k项集,如{牛奶、麦片、糖}是一个三项集。
项集出现的频率是所有包含项集的事务计数,又称作绝对支持度或支持度计数。如果项集I的相对支持度满足预定义的最小支持度阈值,则I是频繁项集,频繁k项集通常称为k
(4)支持度计数
项集A的支持度计数是事务数据集中包含项集A 的事务个数,简称为项集的频率或计数。
已知项集的支持度计数,则规则A=>B的支持度和置信度很容易从所有事务计数、项集A和项集B和项集A∪B的支持度推出。
Support(A=>B) = A,B同时发生的事务个数 / 所有事务个数 = support_count(A∩B)/ Support_count(A)
confidence(A=>B)