【问题标题】:Association rule mining basics - How to read association rules关联规则挖掘基础——如何阅读关联规则
【发布时间】:2014-09-09 15:55:26
【问题描述】:

这里有一个非常基本的问题:

示例规则(假设它是从 WEKA 生成的):

bread=t 10 ==> milk=t 10 conf:(1)

这意味着“从 10 个实例开始,人们每次买面包时,也会买牛奶”。 (忽略支持)

这条规则可以双向阅读吗?比如,“每次人们买牛奶,他们也买面包?”

另一个例子

Physics101=A ==> Superphysics401=A

是否可以像这样双向读取:

“如果人们在 Physics101 上得了 A,那么他们在 Superphysics401 上也得了 A”

“如果人们在 Superphysics401 上得了 A,那么他们在 Physics101 上也得了 A”?

如果是这样,是什么让 WEKA 以该顺序生成规则(物理 ==> 超物理),为什么不反过来呢?还是订单不相关?

【问题讨论】:

    标签: associations weka data-mining


    【解决方案1】:

    Does this rule can be read both ways? Like, "everytime people buy milk, they also buy bread?"

    不,只能以一种方式阅读。

    这遵循隐含规则。 A -> BB -> A 是不同的东西。将前者读作“A 是 B 的子集”,因此,无论何时你在 A 中,你都在 B 中。B -> A,也称为A -> B 的逆,可以用类似的方式解释。当这两个都成立时,我们说A <-> B 这意味着AB 本质上是相同的。

    如果以上看起来行话太多,请记住以下几点: 雨 -> 云是真的。每当有雨,就会有云,但云 -> 雨并不总是如此。可能有云,但没有雨。

    如果是这样,是什么让 WEKA 以该顺序生成规则(物理 ==> 超物理),为什么不反过来呢?还是订单不相关?

    数据集导致规则。这是一个例子:

    Milk, Bread, Waffers
    Milk, Toasts, Butter
    Milk, Bread, Cookies
    Milk, Cashewnuts
    

    让自己相信面包 -> 牛奶,但是牛奶! -> 面包。

    请注意,我们可能并不总是对成立或不成立的规则感兴趣。因此,我们尝试在规则中添加置信度的概念。为A->B 定义置信度的一种自然方式是P(B|A),即当我们看到 A 时,我们看到 B 的频率。 这可以通过将同时出现的 B 和 A 的计数除以单独出现的 A 的计数来计算。

    在我们的示例中,

            P(Milk | Bread) = 2 / 2  = 1 and
            P(Bread | Milk) = 2 / 4 = 0.5
    

    您现在可以根据置信度对规则列表进行排序,并决定要使用哪些规则。

    【讨论】:

    • 首先感谢您的回答。但我还是很好奇。从那个例子中,我们可以说 Milk -> Bread 有 50% 的置信度,50% 的时间,当人们购买面包时,他们会购买牛奶。但我们也可以将其视为 100% 置信度的面包 -> 牛奶,对吧? 100%的时候,当人们买面包时,他们会买牛奶。这不对吗?
    • @soryuken 是的,它们都是规则,具有不同程度的置信度。有关更多信息,请参阅我的编辑。
    • 是否有任何用于字符串的关联矿工 java 库,非常感谢帮助
    猜你喜欢
    • 2015-04-29
    • 2013-04-26
    • 2015-02-13
    • 1970-01-01
    • 1970-01-01
    • 2014-07-13
    • 2011-03-04
    • 2011-10-26
    • 2015-05-21
    相关资源
    最近更新 更多