Weka中FP-Growth的数据要求是啥?
Posted
技术标签:
【中文标题】Weka中FP-Growth的数据要求是啥?【英文标题】:What are data requirements for FP-Growth in Weka?Weka中FP-Growth的数据要求是什么? 【发布时间】:2012-12-26 22:02:05 【问题描述】:我想在 Weka 中的数据集(模型)上使用 FP-Growth 关联规则算法。
很遗憾,这个算法是灰色的。我必须满足哪些先决条件才能使用它?
【问题讨论】:
为什么人们在降级?来吧,至少发表评论...... 【参考方案1】:答案/解决方案:
-
Weka 实现的每个算法都有一些与之相关的摘要信息。为了从 GUI 中看到它,必须单击算法(或过滤器)选项,然后再次单击
Capabilities
按钮。然后会出现一个小弹出窗口,其中包含有关特定算法的一些信息。
如果是FPGrowth
- 模型属性需要是binary
类型。就我而言,我有一个混合的名义参数和数字参数。我必须应用NominalToBinary
过滤器,它将我的名义属性转换为二进制值。然后我必须应用 flter NumericToBinary
并将所选选项 ignoreClass
设置为 true
。
这帮助我在 Weka 中“解锁”FPGrowth
。
【讨论】:
这里有一个稍微长一点的解释:“FP-Growth 算法仅适用于布尔值。因此,数据集的属性只能有真值或假值。如果您使用不同类型的属性(数字,字符串等),它看起来被禁用了。” weka.8497.n7.nabble.com/FP-GROWTH-Algorithm-td23554.html【参考方案2】:添加到@ŁukaszBachman 答案:
在应用过滤操作之前,您需要将类设置为“无类”。如果您使用的是 weka java api,那么您需要将data.setClassIndex(-1)
添加到您的 java 代码中。
例如:在 Java 中执行 Nominal To Binary:
NominalToBinary nn = new NominalToBinary();
nn.setInputFormat(Data);
Data.setClassIndex(-1);
Data = Filter.useFilter(Data, nn);
【讨论】:
以上是关于Weka中FP-Growth的数据要求是啥?的主要内容,如果未能解决你的问题,请参考以下文章