- Query意图的分类:Navigational、Informational、Transactional,再具体一点的Download,Local Info之类;
- Query知识类别上的分类:分类目标是新闻、体育、经济、音乐,主要目的是为了做多个垂直引擎的结果融合或者Query Planing;
先说知识类别上的分类吧,这个东西在全网搜索中使用较多,本身难度也不大,比较确定。抽象说的,思路无非都是通过Query搜索结果中的文档进行分类,再balabalabala到Query,因为Query本身实在太短了。
这个方向最新的、比较有意思的论文应该是MSRA的[ ],用的Spectral Clustering的方法,有兴趣的可以用过引用扩展阅读。
至于意图的分类,不确定性就比较大了。
首先意图如何定义?Navigational、Informational、Transcational这三个分类目标是Yahoo的同学提得[ ],应该算Query意图分类目标定义的鼻祖了,被引用无数。但是这三个目标对于全网搜索来说也太粗犷了,对于垂直搜索的意图分析更没有可推广性。
我认为新加坡国立[ ]中的思路值得借鉴:将一个Query通过时效性、地域性、权威性、模糊程度四个维度进行刻画,描述的维度是可以根据具体应用进行扩充的,而且传统的Navigational/Informational/Transcational也可以被映射到这个系统中来。这篇paper的另一个贡献在于明确了Query意图分析是N个Binary-Class分类问题的组合,而不是一个N-Class分类问题。就我目前的所看到的数据,将Query意图分类作为一个N-Class的分类问题本身也是不可解的。
其实Yahoo自己也是通过Binary-Classifier来做Query意图分类的,关于具体的实现在[ ]中写的比较详细,基本上都是一些工程性的东西:想尽办法找特征,穷凶极恶的特征选择。模型?其实无所谓了,考虑到特征基本都是interdependent的,要不用CRF吧。
可以拿来做Query意图分类的特征,对于Query本身,可以分 词性、语义、词 三层。这个主要就看各家公司的资源了,没有雄厚的积累基本上提不出什么有用的信息;至于Query之外,命中结果数、用户搜索PV、命中URL中的字符串、用户点击、命中文档内容……一切的一切,其实都能用得上,就看有多少资源available了。
最后我想说,其实资源到位了,做Query意图分析还是比较靠谱的。
欢迎各位大大和我讨论,entelechie@gmail.com
本文中提到的论文