pre_f是上一轮频繁项集 iter代表什么呢

来源:12-3 基于Spark实现Apriori算法(下)

慕设计4006959

2021-04-28

写回答

1回答

小简同学

2021-04-28

同学你好,iter这个变量是出现在varify这个方法里,这个方法的作用是去除非频繁项集,原代码是这样: val iter = line.subsets(k-1),在k轮生成的候选k项集里,例如第3轮,生成的候选3项集是 Set(2,3,4),iter这个变量就是候选3项集的k-1项子项集,就是Set(Set(2,4),Set(2,3),Set(3,4))。

祝学习愉快!

0
3
小简同学
回复
慕设计4006959
在varify有这么一句代码 if(pre_f.contains(iter.next())),pre_f是上一轮,也就是k-1项的频繁项集,iter是这轮的候选k-1项集,遍历iter,看pre_f是否包含这个候选k-1项集,若是,则这个候选k项集是频繁项集,否就不是频繁项集,就去掉。
2021-04-28
共3条回复

Spark2.x+协同过滤算法,开发企业级个性化推荐系统

一门既讲算法原理又有完整的推荐系统架构的全能课

330 学习 · 91 问题

查看课程