索引压缩
   
    
     目录
    
   
    
     索引压缩
    
    :对词典和倒排记录表这两个数据结构进行压缩。
   
    为什么需要压缩?
   
- 使用更少的磁盘空间
    
     节省资金
    
   
- 在内存中存放更多信息
    
     提高速度
    
   
- 提高数据从磁盘传输到内存的速度
    
     读取压缩数据|解压缩 比 读取未压缩数据 快得多
    
   
    
     前提:解压缩算法是高效的
    
   
词典尽可能全部放在内存中,如果放不下,
倒排表没有办法全部放在内存中,把查询最多的词项的倒排表放在内存。
    
     词典:
    
   
- 使其足以存放在内存中
- 使内存可以多容纳一些倒排记录表
    
     倒排记录表:
    
   
- 减少所需的磁盘空间
- 减少从磁盘中读取倒排记录表所需的时间
- 大型搜索引擎将一部分倒排记录表保存在内存中(压缩使内存能保存更多的倒排记录表)
    两种压缩方式:
   
    
     无损压缩
    
    :所有原始信息都保留(大多数IR系统的做法)
   
    
     有损压缩
    
    :大小写转换,词干还原,停用词…
   
会造成一定的信息丢失,但是有时候对检索没影响
    信息检索中词项的统计特性
   
- 词项的个数:Heaps定律
- 词项在文档出现的次数,有的词项出现的多,有的词项出现的次数少:Zipf定律
    
     文档集频率
    
    :一个词项在文档集中总共出现次数
   
    
     文档频率
    
    :一个词项在几个文档中出现,倒排索引一部分。
   
    
     区别
    
    :词A中文档1中出现了3次,文档频率只算1个,但文档集频率算3
   
    Heaps定律
   
    
     词项数目的估计
    
   
- 
     
 
 Heaps’
 
 
 定律:
 
 M = kTb
 
 
 
- 
     
 
 
 M
 
 
 是词汇表大小,
 
 
 T
 
 
 是文档集中的词条个数
 
- 
     
 
 参数k和b的典型取值为: 30 ≤
 
 k
 
 ≤ 100
 
 
 
 
 ,
 
 b
 
 ≈ 0.5
 
 
- 
     
 Heaps定律认为,在对数空间中词汇量
 
 
 M
 
 
 
 和
 
 T
 
 ,存在线性关系
 
 
     
   
    Zipf定律
   
    
     对词项分布的建模
    
   
    
     自然语言中存在一些高频词项,也存在一些极低频词项
    
   
- 
     
 Zipf’s 定律: 排名第i多的词项的文档集频率与1/
 
 i
 
 成正比.
 
- 
     
 cf
 
 i
 
 是
 
 
 文档集频率
 
 
 : 文档集中排名第i多的词项的文档集频率.
 
- 
     
 
 cf
 
 i
 
 ∝ 1/
 
 i = K/i
 
 
 ,
 
 K
 
 是一个常量
 
- 
     
 如果出现最多的词项的出现次数是cf
 
 1
 
 的话
 - 
       
 出现第二多的词项的出现次数就是 cf
 
 1
 
 的一半
 
- 
       
 出现第三多的词项出现次数是cf
 
 1
 
 的1/3 …
 
 
- 
       
- 
     
 等价变换: cf
 
 i
 
 =
 
 K/i
 
 ,其中k=1, 因此
 - 
       
 
 log cf
 
 i
 
 = log
 
 K
 
 – log
 
 i
 
 
 
 
- 
       
- 
     
 
 
版权声明:本文为notqq555原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
