首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >零售知识推理

零售知识推理
EN

Stack Overflow用户
提问于 2010-01-19 22:44:04
回答 2查看 250关注 0票数 0

因此,我正在研究如何从报告中推断知识(不是特定格式的),但经过预处理后,我应该有某种格式化的数据。

一个相当基本的推论是:“零售商有X股。”和"X是可销售的。“->”零售商销售X“我关注的知识是面向零售领域的,如果可能的话,我应该在每次迭代中提高它的效率。

这是科幻小说吗(我的一些朋友认为是)?我在网上找到的相关东西是发现异常的“专家系统”,模糊推理系统和一些关于“简单知识”的咆哮。

你能帮助我一些观点,让我在一些研究方向上专注或引导我吗?

blueomega

EN

回答 2

Stack Overflow用户

发布于 2010-05-04 16:43:49

你当然不是在谈论“科学”,但有很多东西超出了软件工程师通常接触到的标准。在过去的八年里,我一直在构建和使用规则引擎来对零售业中的半结构化数据进行推理。

对数据进行推理是一个成熟的领域。与这个领域相关的问题基本上有四类:

推理知识获取(从人们的头脑中获取规则,并将规则放入code/rules)

  • Knowledge表示'KR‘中(如何表示您的数据和rules)

  • Efficient模式匹配(针对大量的推理/推理(从规则匹配中得出进一步的结论,即触发更多规则的规则))

对于知识获取,请看:Ripple Down Rules和决策树,它们有很长的路要走,易于理解。或者,广阔的领域Machine Learning提供了从数据派生模型的各种方法。

对于知识表示,请查看RDFOwl,并在较小程度上查看Conceptual Graphs。在表现力方面,RDF和CG大致相同。两者背后的基本概念都是数据的序列化独立图(三元组)表示。

对于模式匹配,经典的算法是Charles Forgy的Rete

对于推理,有两种典型的策略:Forward chainingbackward chaining。正向链接在规则集上执行,如下所示:

数据设置:

代码语言:javascript
运行
复制
 Rule 1:  If A Then B
 Rule 2:  If B Then C

 Facts:  A

执行:

代码语言:javascript
运行
复制
Do {
     Newfacts = Eval(RuleSet, Facts)
     Facts = Facts + Newfacts
} while (NewFacts.Count > 0)

将数据A提供给这个小算法,您将从数据中“推断”(发现)事实C,这要归功于规则库。请注意,推理有很多陷阱,特别是在non-monotonic reasoning之类的东西周围(不仅仅是添加事实,而且更改或删除事实,可能会在推理中引起矛盾或循环)。

进行某种推理的一种简单而幼稚的方法是使用数据库并使用连接来匹配事实(语句)。对于某些应用程序来说,这可能就足够了。当谈到推理时,很容易陷入复杂和不太成熟的技术的世界。保持简单。

票数 2
EN

Stack Overflow用户

发布于 2010-01-22 23:22:48

你写的东西让我想起了一条“规则”。像这样的规则(其中所有变量都是名义的)是所谓的association rule mining的结果。也许这种方法是您应该考虑的方法之一。

您可以使用开源机器学习软件Weka,或者如果您更喜欢R environment,那么rattle gui可能会派上用场。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2094217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档