Skip to content

Lec3 Information Retrieval

Lec3: Information Retrieval

unstructured database

Inverted file index

Index build

以单词为key, 每个单词存其在所有文档中出现的位置(文档编号+位置)

只需要输入文档时扫描一遍。是线性的

Query

AND/OR: 因为位置是排好序的,只需要像归并排序一样线性合并

Distributed indexing

对于网络搜索引擎,需要分布式存储index数据

  • Term-partitioned index: 按单词的字典序分类,如A~C,D~F 查找的效率较高
  • Document-partitioned index: 按文档编号分类

Ranked retrieval

按照相关度排序

term-document count matrix: \(tf_{t,d}\)是词\(t\)在文档\(d\)出现的次数

$$ score=\sum_{t\in q\cap d}(1+\log tf_{t,d}) $$ \(q\)是查询

但是只有本文中的数据不够。考虑一个词在所有文章中出现的次数\(df_t\) 。出现次数越少的(比如专有名词),信息量更大,权重应该更高

感觉和信息熵的思想类似,频率越低,信息熵越大

\[ idf_t=\log_{10}(N/df_t) \]

Performance mesurement

image.png

Precision: 预测结果为正例的样本中实际为正样本的比例

Recall: 实际的正样本中预测结果为正的比例 (如果fn的代价很高,如安检找爆炸物)

Comments