一个很神奇的论文,据说是研究这个问题的第一篇论文。论文题目是《Inferring the Most Important Types of a Query: a Semantic Approach》,翻译过来是《推测查询的最重要的类型:一种语义方法》,作者是David。
摘要
本论文将讲述一种方法,它能够对于一个给定的查询,将它所属于的类型进行排序。传统的搜索引擎对于搜索,返回的是结果列表,后来又逐渐根据结果的类别进行了分类,比如博客、新闻等。
后来出现的一个叫做“方面查询(faceted approaches)”的框架,也就是针对一个查询的一个方面。比如哈尔滨,那么最可能的方面就是“城市”。岁月对于方面查询,一个最重要的问题就是找到一个查询的最重要的方面,或者是对方面排序。
一个不同的趋势是“实体检索(Entity retrieval)”。实体是一个附着又语义类型的短语,比如:城市:哈尔滨。在实体检索中,结果就不再是结果的排序,而是实体的排序。比如一个查询“哈尔滨”,那么有百科语料的实体检索的结果包括了哈尔滨的地点和重要的日期。也就是说地点和日期可能就是这个查需最重要的方面。我们把这样的问题叫做“实体类型排序”。
方法
首先需要的就是这个实体排序的算法,在另外一个独立的论文中有讲解。假设对于一个查询q,E(q)=e1,e2,...,en是返回的结果,现在需要得到T(q)=t1,t2,...,tm,也就是类型的排序。那么一个很简单的公式当E(q)中的一个实体的类型是t是,就将其得分增加,也就是根据这些实体的类型来统计出来查询的类型。
论文中还有很多的实验结果,有兴趣可以参阅一下。这个论文总的来说思想很简单,但是是解决一个实际问题。这个过程有点像是knn,对于一个查询,找到与他最相关的一些实体,然后由这些实体来投票得到自己的类型。这种思想很多都有用到,比如协同过滤等。