《Keyword Search over RDF Graphs》——读书笔记
最大的问题!terms和triples的区别!?
ABSTRACT
知识库中的实体和关系非常重要,但是主要以RDF形式存储,需以结构化的语言查询,如SPARQL。但是结构化的查询对查询者要求较高,使得资源难以被利用,关键词查询显得非常有必要。本文设计了在RDF图上进行关键字查询的检索模型,检索出匹配关键字的一系列子图并排序。
INTRODUCTION
现在的知识库被表示为RDF图,点——实体,边——关系。
结构化的查询不方便,所以使用关键词查询。输入关键词,返回排序的RDF子图列表。查询子图可以同时考虑关系和实体。
RDF查询通过连接的三元组进行查询,但是需要用户对底层数据和查询语言比较了解。
本文开发了使用关键词对RDF搜索的检索模型。输入关键词,输出排序后的子图。检索子图比检索实体好在于能够充分利用关键词的信息,可以考虑实体间的关系。把每个三元组与一系列来源于主谓宾的关键词关联起来。为了检索出关键词查询的所有子图,我们使用了回溯法。基于全局的统计出信息对检索结果进行排序。
RELATED WORK
在结构化数据上的关键词搜索工作分为两部分,
一是把关键词匹配到一个或多个结构化查询中,比如,文献27假定关键词查询是结构化三元组查询的含蓄表达,它使用RDF图推断结构化的查询,并找出最相关的几个。这种方法涉及到用户交互,另外收到信息丢失现象的影响。文献18通过NLP工具处理用户问题推断最有可能的结构查询,和文献27一样会出现信息丢失。
二,该方法通过直接检索关键词查询的结果,克服了前述问题。在XML数据上的关键词查询属于此类。XKSearch[29]返回包含了查询关键词的节点及其父节点。XKSearch [29] returns a set of nodes that contain the query keywords either in their labels or in the labels of their descendant nodes and have no descendant node that also contains all keywords. XRank 返回包含了所有查询关键词的elements。但是所有的方法都基于树形结构并不能直接应用与图形结构的RDF图。
与我们工作最相近的是[14]中在XML数据上关键词查询的语言模型方法。作者假定关键词查询与XML元素中的关键词有着对应。他们的排序基于[20]提出的等级语言模型。
但是XML数据的检索但愿是一个XML文档(子树),但在RDF我们感兴趣的是符合用户查询的子图排序。子图在检索中确定,因此大部分的关于XML IR的工作并不适用。
图上的关键词查询返回斯坦纳树的有序列表,其排序方式一般基于结果的结构,或者基于一些特征的组合——使用基于内容的方式,如tf-idf,或language models.
文献[19]中基于LM的模型对实体的排序结合了结构和内容。该模型只考虑了实体,本文同时考虑了实体和关系。另外它假设文档与每个文档或实体相关联,但在RDF中通常不是这样。
The Semantic Search Challenge为RDF图上的关键词查询提供了benchmark,但实体的判断基准是通过组装有着同样subject的三元组。表现最好的[3]对实体排序使用了BM25F和手工信息结合的方法。相对的,我们检索匹配查询关键词的子图并排序他们。
3. SYSTEM OVERVIEW
为了能够处理关键词查询,我们为每个三元组
对于一个关键词查询,我们利用倒序列表检索出所有的匹配三元组。然后为了使用一个或多个三元组检索,我们连接来自不同列表中的三元组。然而,我们只使用来自不同list的三元组构建子图,这对应着不同的关键词。
该方法背后的思路:认为用户的信息需求可以表示为一系列的三元组,但是,因为用户并不能直接输入三元组,故使用关键词。我们认为每个关键词都可以代表一个三元组,所以查询结果是一个子图。
但是关键词的查询带来了歧义对于结果排序非常重要。为了提供有效的排名,系统必须推断出用户想要的查询,并根据子图的匹配程度排序。
4. SUBGRAPH RETRIEVAL
子图检索:
- The subgraphs should be unique and maximal.
- The subgraphs should contain triples matching different sets of keywords.
给定一个查询q={q1,q2,...,qm} ,其中qi 是一个关键词,我们利用倒序列表(inverted index)检索出{L1,L2,...,Lm} 其中Li 是匹配qi 的所有三元组。E 是所有列表的并集。A(ti) 包含边ti 的所有在其他tj 所属的Lj 内的邻边。
算法1循环找出所有边t 的邻接列表。算法2输入的子图和其邻居,并尝试为子图增加边。第三行的条件确保了只有其他list中的边才能被扩展——property 2。L(G) 返回子图G所属的lists的边。NEIGHBORS(t,G) 检索属于t而不属于G的所有邻居。MAXIMAL(G) 确保检索的子图是unique and maximal。
5. RANKING MODEL
排序模型基于statistical language-models (LMs)。给定一个查询
其中
也就是说,term
在我们的排序模型中,我们考虑三元组的结构。我们认为关键词查询是模糊的结构化三元组查询。因此,关键词
另外,我们把
第一项是指谓词
将上面两式合并得
其中,
其中
为了确定(*)式中的
其中
6. EXPERIMENTAL EVALUATION
6.1 Setup
本文的检索模型假设每个三元组都有一个文档,该文档来自于三元组的实体和关系中的代表词。关系的代表词手动产生因为数据集小没有太多的关系。
由于缺乏针对RDF数据的关键字搜索的query benchmark,我们必须创建一个benchmark并收集相关性评估。
benchmark包含一组结构化查询,可能会增加关键词,以及其描述。我们抽取了30个查询,每个数据集15个,使用一组关键字来表示每个查询。每个查询汇总50个结果,并且使用至少4个不同的人来收集的每个结果的相关性评估。
自己的方法Structured LM approach对比的baseline:
- a baseline language-modeling approach(Baseline LM)
- the Web Object Retrieval Model(WOR)
- the BANKS system
因为这三个能够用关键字搜索结构化数据,Section 2部分的其余方法并不适用,因此略去。
6.2 Relevance Assessments
对每个评估查询,我们对4个模型分别检索取前50个结果。然后,将查询结果和查询描述汇总给13位human judges。对于WOR检索的结果提供Wikipedia的链接,其他的仅提供子图。
我们对于每个结果让四名judges对结果评价,评价分为四档。judges的卡帕系数Library-Thing dataset 0.449; IMDB 0.542.
We obtained a Kappa coefficient of 0.397 for LibraryThing and 0.671 for IMDB which are in line with the numbers reported for standard TREC evaluation campaigns. For instance, the TREC legal track for 2006 reports a Kappa value of 0.49 on 40 queries, the opinion detection task in 2009 reports a Kappa value of 0.34, and the TREC 2004 Novelty track reports a value of 0.54 for sentence relevance.
6.3 Evaluation Results
Overall Evaluation. NDCG:Normalized Discounted Cumulative Gain.
Training Results.一个数据集用作训练,另一个用作测试。调整
Cross-Validation Results.一次交叉验证,每个数据集的15个查询中14个用作训练,剩下的用作测试。结果仍然是Structured LM方法最好。
7. CONCLUSION
We proposed a retrieval model for keyword queries over RDF graphs. Our retrieval model adopts backtracking algorithms to retrieve subgraphs matching the query keywords. Our model provides a result ranking based on a novel structure-aware languagemodeling approach. We have shown through a preliminary, yet comprehensive user-study that our retrieval model outperforms wellknown techniques for keyword search over structured data.