FPGrowth频繁项集算法
关联规则(AssociationRule)是研究不同类型的物品相互直接关联关系的规则。Apriori算法是关联规则挖掘的一个经典算法。FPGrowth算法克服了Apriori算法需要对数据集进行多次读取的弊端,只需要读取两次数据集。
支持度表示X和Y中的项在同一情况下出现的概率,公式: Support(A->B)=P(A U B)。置信度表示A出现了,B出现的概率,公式: Confidence(A->B)=P(A | B)。
运行spark自带的列子。
程序
package ass
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.mllib.fpm.FPGrowth
import org.apache.spark.rdd.RDD
object fpgrowth {
def main(args: Array[String]) {
val conf = new SparkConf().setMaster(args(0)).setAppName("fpgrowth")
val sc = new SparkContext(conf)
val data = sc.textFile(args(1))
val transactions: RDD[Array[String]] = data.map(s => s.trim.split(' '))
val