【问题标题】:Weka Apriori No Large Itemset and Rules FoundWeka Apriori 未找到大型项目集和规则
【发布时间】:2016-04-22 01:14:37
【问题描述】:

我正在尝试使用给定的数据库表与 WEKA(我使用 3.7)进行先验关联挖掘

所以,我导出了两列(orderLineNumber 和 productCode)并将其加载到 weka 中,就我而言,我没有任何成功尝试,总是以“没有找到大项目集和规则!"

再次,我尝试先使用ARFF Converter 将 csv 转换为 ARFF 文件,但仍然收到相同的消息;

我也尝试在 WEKA 中使用数据库加载器,数据加载得很好但仍然给出相同的结果;

我在预处理中应用的过滤器只是 numericToNominal 过滤器;

我在这里做错了什么,我怀疑这是我的 ARFF 格式,谢谢

更新 经过进一步试验,我发现我导出了错误的列,并且我缺少 1 个过滤进程,这是“非规范化”,我通过数据包管理器安装了插件,并将我的数据先转换为标称后非规范化;

然后我将结果与“超市”样本的结果进行了比较;唯一的区别是我的输出带有 'f' 而不是 't'(如下所示),并且置信度值似乎总是 100%;

【问题讨论】:

    标签: associations weka data-mining apriori


    【解决方案1】:

    首先,OrderLine 是错误的列。

    很明显,印钞票上的位置不是很重要。

    其次,文件格式不合适。

    您希望在@data 部分中每个订单一行,每个可能的项目一列。为了节省内存,使用稀疏格式可能会有所帮助(不要忘记适当设置标志)

    像 ELKI 这样的其他工具可以处理这样的输入格式,这可能更容易使用(它也比 Weka 快很多):

    apple banana
    milk diapers beer
    

    但最后我检查了一下,ELKI 将“仅”找到频繁项集(较难的部分)而不计算关联规则。然后,我使用了一个很小的 ​​python 脚本来根据需要生成实际的关联规则。

    【讨论】:

    • 谢谢!好像我导出了错误的列,我需要一个预处理过滤器;我使用非规范化包,如here 解释的那样;由于超市样本输出存在差异,我已更新问题;
    • 禁用否定规则看不到 =f 规则。这些通常是相当无用的:不买昂贵威士忌的人通常不买不常见的东西等等 - 生成的此类规则太多了,有 100% 的信心。
    • 好吧,我发现禁用否定规则的唯一选择是将零视为缺失值;但是,它再次没有返回大项集找到消息;一直在尝试使用旧的购物篮格式以及稀疏数据;
    猜你喜欢
    • 2023-04-01
    • 2012-12-20
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 2015-08-11
    • 2013-05-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多