我正在执行基于本体的文本分类。我的本体是一个简单的概念层次结构,其中每个子概念都是上层概念的结果。在文本分类方法中,我正在计算测试文本样本与本体的每个节点之间的余弦相似度,其中相似度最高的节点被分配为文档的标签。每个节点的相似度是本体中该特定节点之下的所有节点的相似度的归一化平均值。我在访问本体的节点(概念/类)以计算相似度时遇到困难。我阅读了 Owlready2 文档,但找不到解决方案。我已经以 .owl 格式加载了本体。由于我是这个话题的新手,
另一个问题我已经使用此代码加载了本体。
onto = get_ontology("C:/fahad/Revision 1/EnvironmentalHazards.owl").load()
当我使用以下代码打印类/概念时。
print(onto.Scouring)
它打印以下内容。
EnvironmentalHazards.Scouring
但是,我只想得到“Scouring”作为结果,以便我可以计算它与文本样本的余弦相似度。此外,有没有办法打印概念的层次结构,因为 list(onto.classes()) 只打印本体中的完整概念并忽略层次结构。
提前致谢。