artificial-intelligence - 在本体中审查二手知识

标签 artificial-intelligence machine-learning ontology

您如何为本体中不同用户所断言的陈述分配客观确定性?

例如,假设用户 A 断言“鲍勃的帽子是蓝色的”,而用户 B 断言“鲍勃的帽子是红色的”。您如何确定是否:

  1. 用户 A 和用户 B 指的是名为 Bob 的不同人,可能正确也可能不正确。
  2. 两个用户指的是同一个人,但用户 A 是正确的,用户 B 是错误的(反之亦然)。
  3. 两个用户都指的是同一个人,但用户 A 是对的,用户 B 在撒谎(反之亦然)。
  4. 两个用户都指的是同一个人,并且这两种用法要么是错误的,要么是撒谎的。

我看到的主要困难是本体没有任何方法来获取第一手数据(例如它不能问鲍勃他的帽子是什么颜色)。

我意识到可能没有完全客观的方法来解决这个问题。是否有任何可以采用的启发法?这个问题有正式的名称吗?

最佳答案

我不是这个领域的专家,但我对本体论和语义网的不确定性进行了一些研究。当然,有一些与语义网无关的方法来解决这个问题,但我的知识仅限于此。

我认为与您的问题相关的两个问题是 Identity CrisisURI crisis 。上述声明的正式表述可以发布于 RDF (资源描述框架)。

如果我将语句“鲍勃的帽子是蓝色/红色”转换为三元组,这将是:

事实 1:

  • X 是一个人
  • X 的名字为“Bob”
  • X 拥有 H1
  • H1 是一顶帽子
  • H1 颜色为蓝色

事实 2:

  • Y是一个人
  • Y 的名字为“Bob”
  • Y 拥有 H2
  • H2 是一顶帽子
  • H2 颜色为红色

这里的问题是X、Y、H1和H2都是资源,它们可能相同也可能不同。因此,在您的示例中,未知 X 和 Y 是同一个人还是不同的人,如果没有进一步的信息,您就无法知道。 (帽子也同样如此。)

但是,问题更加复杂,因为用户 A 和 B 只是陈述了这些内容,所以它们不是“真实”的事实。 RDF提供Reification的方法为此,但我不会在这里完整地写下来,它太长了。您基本上要做的就是向上述每个语句添加“UserA statesThat (...)”。

如果你具备了这一切,你就可以开始推理了。在大学我们曾经用过RACER对于这类东西,但那是旧版本,我对当前版本不熟悉。

当然,您也可以在没有 RDF 的情况下完成这些工作,例如在 LISP 中。

希望有帮助。

关于artificial-intelligence - 在本体中审查二手知识,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3335742/

相关文章:

c++ - 使用 NEAT C++ 实现自定义 AI

algorithm - AI - 启发式函数要求

machine-learning - 应用 MCA 等降维方法后如何降低新数据/输入的维度

machine-learning - 如何计算第二转换层的参数数量?

java - Jena 删除 OntClass

machine-learning - 如何加速前馈、基于梯度的反向传播神经网络的学习

c - Alpha beta 修剪根移动

python - sklearn.svm.SVC 没有给出稀疏数据集的支持向量索引?

java - OWL API - 创建没有实例的类

xml - 是否有类似于 FOAF 的东西,但用于地方?