H-mine算法
一种比较新的频繁项集挖掘算法——H-mine算法。
背景
之前的博客已经提到FP-growth将挖掘长频繁模式的问题转换为递归地搜索较短模式,然后连接后缀。该算法使用最不频繁的项作为后缀,提供了较好的选择性,使用该算法大大的降低了搜索开销。但是当数据量非常大时,构造基于内存的FP树是非常困难的。
传统频繁模式挖掘算法主要存在两个问题:一是算法需要的内存大小是不可预测的并且当数据集规模增大时,需要的内存也会随之剧增;二是在很多情况下算法效率是非常低或无法处理的,如密集型数据集、海量数据集。
主要思想
H-mine 算法一定程度上解决了上面提到的问题。H-mine是一种基于内存、高效的频繁模式挖掘算法,使用新的数据结构H-Struct,可以更快的遍历数据。理论上,H-mine 有多项式的空间复杂度,要比使用候选产生发现频繁项集和频繁模式增长方法更加节约空间。H-mine 通过对数据进行分区,每次只挖掘一个分区,最后将结果整合,极大的节约了内存并能处理更大规模数据集。实验证明H-mine 算法有极好的可扩展性并且在任何情况下综合性能都优于Apriori 算法和FP-growth 算法。