本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.
这是我参与「掘金日新计划 · 8 月更文挑战」的第5天,点击查看活动详情
上一篇(04. 初识机器学习:关联规则
)提到了,我们可以使用关联规则学习算法,找出数据集中隐含的关联关系,但是,直接使用关联规则学习算法有一个很大的问题,就是需要对海量种类的集合进行计算,整体的计算复杂度非常高。先验原则可以帮助我们减少项集组合的个数。
原理
考虑先验原则是基于一个前提,即如果一个项集出现得频率很低,那幺所有包含这个项集的更大的项集出现得频率也很低。以订单购物数据来距离,如果在一个超市中,鲱鱼罐头被购买的频率非常低,那幺鲱鱼罐头和其他任何一种商品被同时购买的频率也非常低,或者说,如果苹果和啤酒出现在同一个订单中的频率非常低,那幺同时购买苹果、啤酒、牛肉的概率只会更低,同时购买苹果、啤酒和其他任何商品的频率都是如此。
因此,当一个项集出现的频率非常低时,我们可以把这个项集以及包含这个项集的更大项集的组合排除在计算范围之外,那幺,我们的计算量会大大减小。接着上面的例子,我们可以把所有包含鲱鱼罐头的组合都排除在外,把所有同时包含苹果和啤酒的组合排除在外。
怎幺做
我们来看看具体怎幺做。
- 首先,把所有的项列出来,此时相当于列出了所有只包含一个项集的元素。
- 设定一个阈值,比如这个阈值是 X,然后,我们计算出第 1 步列出的所有项集,把所有支持度小于 X 的项集淘汰,不再对他们进行之后的步骤。
- 向第 2 步淘汰后剩余的项集中添加元素产生所有可能的组合,注意,在第 2 步淘汰的项集,不再被添加到后续的项集中与之组合。
- 重复第 2 步和第 3 步,不断产生更大的项集,为它们计算支持度,并淘汰支持度低于阈值的项集。直到无法产生新的项集。
总结
先验原则帮助我们淘汰低支持度的项集组合,因为置信度和提升度都是基于支持度计算出来的,因此,这样筛选出来的组合中,置信度比较低的组合也被淘汰掉了。
Be First to Comment