从本体创建概念向量

时间:2015-03-23 13:39:00

标签: ontology triplestore cosine-similarity owl-api triples

我有一组与域有关的文档。这些文档中的数据可以在概念上映射到域本体。我需要找到这些文档之间的相似性分数。在文献中,许多人提出创建一个概念向量(类似于术语向量),然后使用余弦定律来计算相似性。

我知道如何为文档创建术语向量/ tf-idf向量。
例如:
假设我有两个描述两个用户配置文件的文档 在标记化和词干化后,每个文档都有两个单词。

Doc1 :(汤姆,雅虎)
Doc2 :(杰里,谷歌)
这些词语可以用每个文档的tf-idf向量表示 在这种情况下,余弦相似度得分为零,因为它仅基于存在的确切词。

但是雅虎和谷歌都是搜索引擎以及两个用户都使用搜索引擎的知识都是在本体中捕获的。
Yahoo " is-a " 搜索引擎
Yahoo 搜索引擎作为概念存在于本体中,is-a是连接这些概念的关系。
我想使用这些概念并创建一个向量对于余弦定律。
但我不知道如何从本体中提取一个矢量/包的概念。

任何指针都会有所帮助。

1 个答案:

答案 0 :(得分:2)

这只是创建矢量的一种方式,因为您不确定需要什么。首先,您需要使用诸如OWL-API之类的api来访问本体中的信息。根据您的建议,您需要提取建模元素,例如:课程,个人和财产。在您的情况下,yahoo可能是个人,search engine可能是一个类。所以你希望能够提取它们。如果您需要OWL-API示例,只需查看其他堆栈溢出问题,或阅读链接网站上的示例。

然后你需要提取例如yahoo is a search engine的公理。然后,如果您正在计算频率,您可以将它们视为句子并计算您需要的频率。在本体中存在计算语义相似性或句法相似性的整个领域。打开谷歌学者并搜索它们。