一、Ranked Retrieval
在前面我们讨论的都是布尔查询,因此得出的结果要么匹配,要么不匹配,当匹配的结果很多时,就会发现我们需要对文档进行排序;
二、参数化索引和域索引
文档除了文本外还有元数据,比如创建时间、文档标题等,因此我们也可以对他进行限制;比如限制查询文档结果必须是2010年发表的;
参数化索引(parametric index):某个字段取值存在一定限制,如取值范围的限制,日期,则为参数化索引;
域索引:某个字段取值没有任何限制,比如标题,可以是任意文本;
三、域加权评分
一篇文档有域f1,f2,f3,而每个域都有不同的权重;
每个域都有一个权值w1,w2,w3;权值的确定是通过机器学习(训练集)所得;
S(q,d)=w1*s(q,f1)+w2*s(q,f2)+w3*s(q,f3);
因此S(q,d)只是计算出一篇文档和查询的域得分;
四、Term Frequency
一般给定查询,我们对于每个词项迭代,分别计算他与每篇文档的得分;然后把查询词项在某篇文档的得分相加就得到查询与文档的匹配情况;
词项在文档中的权重就是词项在文档中出现的次数;
词袋模型(bag of word model):词项在文档中的次序被忽略,只关心