什么是最大频繁项集?
最大频繁项集是指其任何直接超集都不是频繁项集的频繁项集。格中的项集被分成两组:频繁项集和非频繁项集。频繁项集边界由虚线表示。
边界上方的每个项集都是频繁的,而边界下方的项集(阴影节点)是非频繁的。在靠近边界的项集之间,{a, d}、{a, c, e}和{b, c, d, e}被认为是最大频繁项集,因为它们的直接超集是非频繁的。
包含{a, d}的项集是最大频繁项集,因为其一些直接超集{a, b, d}、{a, c, d}和{a, d, e}是非频繁的。相反,{a, c}不是最大频繁项集,因为其直接超集{a, c, e}是频繁的。
最大频繁项集足以支持对频繁项集的紧凑描述。换句话说,它们构成最小的项集集合,从中可以导出一些频繁项集。例如,频繁项集可以分成如下两组:
以项a开头的频繁项集,可能包含项c、d或e。此组包含包含{a}、{a, c}、{a, d}、{a, e}和{a, c, e}的项集。
以项b、c、d或e开头的频繁项集。此组包含包含{b}、{b, c}、{c, d}、{b, c, d, e}等的项集。
第一组中的频繁项集是{a, c, e}或{a, d}的子集,而第二组中的频繁项集是{b, c, d, e}的子集。因此,最大频繁项集{a, c, e}、{a, d}和{b, c, d, e}支持对频繁项集的紧凑描述。
对于可能产生非常高频繁项集的数据集,最大频繁项集支持有价值的描述,因为此类数据中存在指数级的频繁项集。只有当存在一种有效的算法能够显式地发现最大频繁项集而无需枚举所有子集时,这种方法才是实用的。
尽管支持紧凑描述,但最大频繁项集不包含其子集的支持数据。例如,最大频繁项集{a, c, e}、{a, d}和{b, c, d, e}的支持度并不能提供对其子集支持度的任何信息。
需要对数据集进行额外的一遍扫描来确定非最大频繁项集的支持计数。在某些情况下,可能需要对保留支持数据的频繁项集进行最小描述。