我正在使用一个带有推理引擎(正向链接)的专家系统,我想解释一下为什么它比使用非常简单的概念的决策树更好。(在一种特殊情况下)
我知道stackoverflow上有一个similar question,但这不是我要找的答案。
这就是我的问题:
对于客户关系管理,我使用了许多不同的业务规则(归纳对话规则)来帮助客户对一个产品做出决定。注意:规则添加频繁(每天2条)。
客户在得到答案之前回答了一系列问题。业务规则与对话规则的混合使得生成的调查问卷看起来像是由最优决策树生成的调查问卷。即使隐藏的推理是完全不同的。
我想知道在这种情况下,与决策树相比,在可伸缩性、健壮性、复杂性和效率方面,支持(或反对)推理引擎的主要论点是什么。
我已经有了一些想法,但由于我需要说服某人,所以我就好像从来没有足够的论点。
提前感谢你的想法,如果你能建议我阅读关于这个主题的好论文,我会很高兴。
发布于 2011-06-11 00:54:05
正向链接推理引擎支持完整的一阶逻辑规范(转换为if-then规则),而决策树只能向下行进到特定的子集。如果你两者都使用,比如说,决定用户想要什么车,那么在一阶逻辑中你可以这样说(CHR语法;<=>用RHS代替LHS ):
user_likes_color(C), available_color(C) <=> car_color(C).除了确定用户想要的汽车品牌/类型的所有规则外,推理引擎还将选择颜色以及其他属性。
使用决策树,您必须为颜色设置额外的树。只要颜色不与其他属性交互,这是可以的,但是一旦它们与其他属性交互,您就完蛋了:您可能必须为每种颜色复制整个树,除了那些与其他属性冲突的颜色,在这些颜色中,您还需要修改树。
(我承认颜色是一个非常愚蠢的例子,但我希望它能让人理解这个概念。)
发布于 2011-06-11 01:44:49
这样说来,我在实践中没有使用过推理引擎或决策树。在我看来,如果你想从给定的训练集中学习,然后预测结果,你应该使用决策树。例如,如果您有一个数据集,其中包含在给定天气条件(风、温度、雨等)的情况下是否外出烧烤的信息。有了这些数据集,您就可以构建决策树了。决策树的好处是,你可以使用剪枝来避免过度拟合,从而避免建模噪声。
我认为,如果你有特定的规则,那么推理引擎比决策树更好,你可以使用这些规则进行推理。拉斯曼已经提供了一个很好的例子。
我希望这对你有帮助
https://stackoverflow.com/questions/6309268
复制相似问题