python数据分析与挖掘实战——协同过滤——关联算法——Apriori算法菜品推荐

客户在餐厅点餐时,面对着菜单中大量的菜品信息,往往无法迅速的找到满意的菜品,既增加了点菜的时间,也降低了客户的就餐体验。实际上,菜品的合理搭配是有规律可循的:顾客的饮食习惯,菜品的荤素和口味,有些菜品之间是互相关联的,而有些菜品之间是对立或竞争关系(负关联)。这些规律都隐藏在大量的历史菜单数据中,如果能够通过数据挖掘发现客户点餐的规律,就可以快速识别客户的口味,当他下了某个菜品的订单时推荐相关联的菜品,引导客户消费,提高顾客的就餐体验和餐饮企业的业绩水平。

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)  

  • 3
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值