我使用Hermit via Protege来检查我的OWL模型的一致性。但是,我在模型中导入的本体似乎导致由于内存不足而导致失败。我在16GB RAM PC上运行,即使我对java堆使用Xmx14500M -Xms14000M
参数,推理过程也会因内存大小而失败,同时显示“Building class hierarchy ...”消息。
问题:
- 我理解(至少有时候)当我的模型不一致时,这些不一致性错误会在“建筑类层次结构......”之前相对较早地提出(例如在前3-4分钟内)。
信息。我无法确认每次都会发生这种情况。假设Hermit首先检查不一致性然后尝试构建模型的推断类层次结构是否安全?如果这是真的,当我到达“Building class hierarchy ...”消息时,这意味着我的模型是一致的。这是真的吗?
- 虽然推断的关系(例如推断的类层次结构)在我的用例中很有用,但检查模型的一致性是我的首要任务。我可以以某种方式指示Hermit只检查不一致性而不是尝试构建所请求的类层次结构吗?
- 我可以做些什么来提高性能吗?除了增加java堆大小外,是否有任何可能有用的自定义?
- 其他reasoners在内存消耗方面通常会表现得更好吗?我应该尝试其他替代方案吗?
醇>
请注意,我使用Hermit推理器1.3.8.413通过Protege 5.2