3 FP-Growth算法在高考数学公式解题的应用
FP-Growth算法是基于Apriori原理构建[11],通过将数据集存储在FP(Frequent Pattern)树上发现频繁项集,并且FP-Growth算法只需要对数据库进行两次扫描,适用于离散型数据。
3.1 算法流程
(1)设置参数:本文设置的最小支持度为0.2,最小置信度为0.6。
(2)读取数据。
(3)把数据通过空格分割:新建txt文本文档,在每一行输入在一道题目中用到的公式所代表的小写英文字母,并用空格隔开,建立数据库,字母的先后顺序由解答过程中公式使用的逻辑先后顺序决定。
创建一个FP-Growth类:如表2,连起来的元素看成是一个链表。将事务数据表中的各个事务对应的数据项按照支持度排序后,把每个事务中的数据项按降序依次插入到一棵以NULL为根节点的树中,同时在每个结点处记录该结点出现的支持度。
(5)把数据带入FP-Growth类中
(6)查看所有频繁项集,并且输出它出现的次数
(7)通过置信度筛选出推荐规则
(8)查看规则生成的数量