【问题标题】:reason over a rather large ontology推理一个相当大的本体
【发布时间】:2021-03-24 20:08:04
【问题描述】:

我有一个相当大的本体(大约 80 GB)。我认为推理器将整个本体带入推理过程的记忆中,不是吗? 有什么方法可以推理超过 80 GB 的本体和 16 GB 的 RAM?

【问题讨论】:

    标签: ontology protege owl-api reasoning reasoner


    【解决方案1】:

    在开始推理之前,Protege 需要完整加载本体。

    除此之外,推理器将需要更多的记忆来进行实际的推理。推理器需要多少内存在很大程度上取决于本体的表达能力(即 EL++ 与 OWL DL)、本体的特性(即大量 OR 分支将需要更多内存)以及您计划使用的推理器。以下paper 可能在这方面有用。

    可能值得考虑以下几点:

    (1) 你希望通过推理得出什么推论?如果只能预期少量的蕴涵,则可能不值得付出努力。

    (2) 是否有可能将本体分解成更小的模块,这样对模块的推理就会给出所需的蕴涵?

    (3) 如果您的本体包含大量个体,您可能更需要一个三元存储,您可以在该存储上执行规则而不是推理器。

    【讨论】:

    • 是的,我的本体包含大量个体(数百万),这是我唯一的问题。你能解释一下(3)吗?谢谢。
    • 所有有效点,只有几个额外的考虑因素:推理可能在 Protégé 之外完成(已标记但问题中未另行提及)并且 80 GB 可能不会直接转换为内存占用(例如,前缀或缺少前缀可能会大大改变该值)。也非常依赖推理器 - 我所知道的所有这些都有一个内部翻译层和一个吸收阶段,首先需要记忆并可能在不久后释放它。因此,“这取决于”但可能需要超过 16 GB。
    • @Ignazio 感谢您提出的非常好的观点!
    • @hitter 三重存储是 RDF 数据的数据库。您可以在其上指定规则,当满足规则的条件时,它可以添加额外的三元组。你可以在我的博客上看到example。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 2015-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多