您的位置:首页 > 其它

词项词典及倒排记录表

2014-03-16 10:36 267 查看
词项字典获取相关操作:文档单元选择、字符序列生成、词条化、去除停用词、词项归一化、词干还原和词形归并。

词项词典获取:

1. 文档单元选择:存在索引粒度的问题,这里存在一个正确率和召回率的权衡问题,如果索引粒度太小,那么由于词项散布在多个细粒度文档中,我们就很可能错过那些重要的段落,也就是说此时正确率高二召回率低;反之,如果索引粒度太大,我们就很可能找到很多不相关的匹配结果,及正确率低而召回率高。

2. 字符序列生成:对于纯文本文件,首先由判断出文档的编码方式(ASCLL 、UTF-8等编码),然后就可以将字节流转换为字符流;对于二进制文件,首先应该判断文档的格式,即是.doc文档还是.zip文档或者是其他格式的文档,然后采用合适的编码转换方式还原出字符序列。

3. 词条化:词条化是将字符序列拆分成一系列子序列的过程,其中每一个子序列称为一个词条,此过程中也包括剔除一些特殊字符,如标点符号等,词条类是相同词条构成的集合,一个词项指的是在信息检索系统词典中所包含的某个可能经过归一化处理的词条类。词条化过程中存在很多棘手的问题,比如说对英文单词来说,如撇号既可以代表所有关系也可代表缩写;词条化过程与语言本身密切相关;特定领域有一些特定的词条需要被识别成词项;连字符‘-’存在多种不同的用法;识别短语等。

汉语词条化即分词方法:

(1)分词的方法包括基于词典的最大匹配法(采用启发式规则来进行未定义词的识别)和基于机器学习序列模型的方法(如隐马尔可夫模型或条件随机场模型)等,后
者需要在手工切分好的语料上进行训练;

(2)由于存在多种切分可能,上述分词方法都有可能导致错误的切分结构,永远不可能得到一个完全一致的唯一切分结果。另一种解决方法是摒弃了基于词的索引策略
而采用短字符序列方法(如字符的k-gram方法)。此方法并不关心词项是否跨越词的边界。

4. 去除停用词:一个常用的生成停用词表的方法是将词项按照文档集频率从高到低排列,剔除高频词。但高频词可能在短语查询中其中很重要的作用,信息检索系统不断发展的历程中,有从大停用词表到小停用词表最后到不用停用词表的趋势,Web搜索引擎通常都不用停用词表。

5. 词项归一化:词条归一化就是将看起来完全不一致的多个词条归纳为一个等价类。

(1)常规做法是隐式地建立等价类,如anti-discriminatory和antidiscrimitory,可使用剔除连字符来得到等价类,优点:建立是隐式的,不需要事先计算出等价类的全部
元素,在映射规则下输出相同的词项一起构成等价类集合。缺点:‘减字符’容易,‘加字符难’,如很难将antidiscrimitory映射为anti-discrimitory;不能进行语义识别,如不能将
car 和automobile归为等价类。

(2)另一种建立等价类的方法是维持多个非归一化词条之间的关联关系,构建同义词表。方法一、采用非归一化的词条进行索引,并为某个查询项维护一张包含多个词
的查询扩展词表,当输入查询词项时,则根据扩展词表将多个词所对应的倒排记录表合在一块;方法二、在索引构建时就对词进行扩展,如包含automobile的文档,我们同时也用car来索引,反之亦然。方法一增加了一部查询词典,因此在查询处理时需要更多的时间,而方法二则需要更多的存储空间来存储倒排记录表。

比较:(2)中的方法相对于隐式建立等价类的方法来说效率较低,因为他们要存储和合并更多的倒排记录表,但(2)中的方法更加灵活,(2)中的方法扩展时可以不对称,如用户输入windows时可以匹配Windows、windows、window,但当用户输入window时不太可能与Windows匹配,可能匹配到windows 、window

6. 词干还原和词形归并

词干还原和词形归并的目的都是为了减少词的曲折变化形式。如果输入一个查询词,能够返回其同源词的文档,那么这样的搜索似乎非常有用。词干还原和词形归并多代表的意义是不同的,词干还原通常指一个很粗略的去除单词两端词缀的启发式过程,即去除派生词缀。而词形归并通常指利用词汇表和词形分析去除曲折词缀,从而返回词的原形或词典中词的过程,如给定词saw,词干还原可能仅返回s,而词形归并则可能返回see或saw,具体返回哪个词取决于在当前上下文中saw是动词还是名词。现在有很多词干还原和词形归并的工具可供采用,有商业的也有开源的。

含有位置信息的倒排记录表及短语查询:

以下内容中介绍两种处理短语查询的方法及其混合方式:

(1)二元词索引。就是将文档中每个接续词对看成一个短语进行索引,在实际的效果相当不错。二元词索引的概念可以扩展到更长的词序列,如果索引中包含变长的词序列,通常就称为短语索引。缺点:穷尽所有长度超过2的短语并维护其索引绝对是一件令人生畏的事情,及时穷尽所有的二元词也会大大增加词汇表的大小。

(2)位置信息索引。如格式为:文档ID:< 位置1,位置2,...>,采用位置索引会大大增加倒排记录表的存储空间,会提高倒排记录表合并操作的渐进复杂性,布尔查询的复杂度为为O(T)而不是O(N),T是文档集中词条的数目,N为文档数目。

(3)二元词索引和位置信息索引可以进行有效的合并。混合策略是:对某些查询使用短语索引,而对其他短语查询则采用位置索引,短语索引所收录的那些较好的查询可以根据用户最近的访问行为日志统计得到。一个更复杂的混合索引机制是除了包含上面两种形式的索引外,还在它们之间引入一个部分后续词索引,即对每一个词项,有一个后续词索引记录它在文档中的下一个词项。

a796
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息