字符序列分析:
要实现从字节到字符序列的转换,首先要明确判断文档的编码方式。可以将判断过程看作是一个基于机器学习的分类问题。但在实际中往往通过启发式的方法来实现,也可以利用文档的元信息或者直接由手工选择来确定。确定编码方式之后,我们就可以将字节序列转换成字符序列,此过程应该保存编码信息,因为该信息能够帮助确定文档的语言类型。
文档单位的选择:
有时我们会将一个压缩包,解压后并将其中的每个文件都看成一个文档。
网络上经常将一个完整的PPT以小结为单位切分成多个HTML,并将每个页面保存到单独的文件中。这种情况下,我们反而更希望将多个文件合并成一个文档来构建索引。
对于长文档而言,此时存在一个“索引粒度”的问题。我们通常不把整本书作为索引单位,而是将每章或每段看成一个微型文档(mini-document)来建立索引。此时匹配的结果可能与查询更相关。
索引粒度太小:高正确率,低召回率
索引粒度太大:低正确率,高召回率
词条化:
词条化是将给定的字符序列拆分成一系列子序列的过程,其中每个子序列称为一个词条。这个过程中会过滤掉一些特殊字符,比如标点符号。
词条不等同于词项。一个词项是在信息索引系统词典中所包含的某个可能经过归一化处理的词条类。