机器学习(三):Apriori算法(算法精讲)
上面图片就是Apriori算法的一部分流程,是不是看不太懂,当初看理解这个算法也花了不少时间,在这里我先介绍一下关联规则挖掘。
Apriori算法——关联规则挖掘
1)关联规则挖掘
首先,关联规则挖掘的目的是找出事物之间存在的隐藏的关系,比如大家都知道的经典的案例啤酒和尿布的的故事,用我们人的思维来思考的话,男性在买尿布的时候会买几瓶啤酒,这二者并没有什么因果关系。然而通过对海量数据进行关联分析,却能够发现这个有趣的知识,在超市调整货架后,明显的提升了超市啤酒尿布的销量。这个就是关联规则挖掘,往往能达到让人意想不到的效果。
2)基本概念
- 关联规则的表示: 尿布 => 啤酒 [support=2%;confidence=70%] 。这个就是关联规则的表示方法,其中支持度(support)和 (置信度)confidence是两个衡量这个规则是否有趣的度量标准。
- 支持度:按照上面的例子来讲,已知了支持度是2%,意味着所有事务的2%显示同时买了泡面和火腿。如果这个有疑惑大可不必着急,这个在还会在后续的例子里面具体阐述。
- 置信度:例如上述的置信度为70%,意味着所有买泡面的顾客,70%的顾客都买了火腿。
- 项集:项集就是项的集合,例如:{矿泉水,泡面,火腿} 这是一个3项集,项集的出现频度是包含项集的事务数,把它记作支持度计数,通俗的来说,假设有三个顾客分别买了{矿泉水,泡面,火腿}、{矿泉水,泡面,火腿、牛栏山}、{矿泉水,火腿}。那么这个