Sparql的自然语言

时间:2011-11-16 06:45:36

标签: nlp semantic-web sparql

我正在构建一个基于LinkedIMDB数据的电影语义搜索引擎的小原型

我已经定义了一些查询类型作为用例的例子

  • 按实体名称搜索
  • 搜索
  • 实体类型
  • 搜索两个实体之间的共同特征......等。

到目前为止,我已经开发了一个SPARQL引擎,它可以接收任何类型的查询并将查询发送到端点并预览结果。

这里的问题是我想为它创建一个自然语言或半自然语言接口,以便用户使用自然语言搜索查询来调用这些句子。但我不知道从哪里开始。

我发现一些试图从文本中提取三元组的论文,但我觉得这不是解决方案的关键。

此外,我发现了一些LSA技术来解释自然语言搜索查询,但我觉得它不适用于语义搜索域。

任何开始阅读的想法或资源? 有没有最好的做法而不是自然语言界面?

2 个答案:

答案 0 :(得分:4)

在自然语言领域已经做了很多工作 - > SQL转换。也许您应该将其作为起点,并了解如何修改SPARQL的可用示例。 (另外,设计受控的自然语言可以使您的工作更轻松。)

探索的另一条途径可以是这篇文章:支持领域专家构建概念本体:整体方法发表在Web语义学杂志上,http://www.websemanticsjournal.org/index.php/ps/article/view/189尽管它是关于使用自然的用于本体构建的语言,那里解释的方法(以及开源代码)可以变成富有成效的探索。

答案 1 :(得分:0)

您是否见过FREya @ https://github.com/nmvijay/freya它是SPARQL转换器的NLP。

FREyA是一个用于查询本体的交互式自然语言界面,它结合了可用性增强方法,如反馈和澄清对话框,以便: 1)每当“未知”术语出现在问题中时,通过生成对话框并丰富用户词汇表中的域词典来提高回忆率 2)通过对话更有效地解决歧义,提高精度。向用户显示的建议是通过本体推理找到的,并且最初使用字符串相似性和同义词检测的组合来排名。然后系统从用户的选择中学习,并随着时间的推移改善其性能。