闭卷重建Unicode、大小写与规范化的对象、公式、算例、算法与失败边界。
信息检索与搜索系统 · 小纸条
选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。
闭卷重建分词与token边界的对象、公式、算例、算法与失败边界。
闭卷重建停用词的收益与风险的对象、公式、算例、算法与失败边界。
闭卷重建词干化、词形还原与语言边界的对象、公式、算例、算法与失败边界。
闭卷重建n-gram与子词的对象、公式、算例、算法与失败边界。
闭卷重建字段抽取、HTML与结构文本的对象、公式、算例、算法与失败边界。
闭卷重建去重、近重复与内容指纹的对象、公式、算例、算法与失败边界。
闭卷重建文本处理流水线回归的对象、公式、算例、算法与失败边界。
对象:tokenization决定索引基本单元;中文、混合文本、URL、代码和表情需要不同规则。;公式:tokens=T(text,language,version)。;算例:“北京大学生”可切“北京/大学生”或“北京大学/生”,两种索引会召回不同文档。;边界:按空格切中文;丢掉标点后短语offset无法高亮。。
对象:文本规范化把不同编码表示映射到约定形式,同时必须保留原文用于展示和审计。;公式:norm(text)=casefold(NFKC(text))(是否使用需按语言任务决定)。;算例:全角A与A经NFKC统一;德语ß用casefold可变ss,但中文没有大小写。;边界:不区分代码/产品型号就全部小写;错误解码后再规范化无法恢复。。
对象:stemming用规则截断,lemmatization利用词性和词典还原基本形;二者召回/精度权衡不同。;公式:match(run,running,ran)取决于normalizer及语言。;算例:英语“studies”还原study;机械词干可能把university和universe错误合并。;边界:对人名、代码标识符做词干化;把多语言全交给英文算法。。
对象:停用词是高频且常低区分度词,但在短语、实体和否定中可能决定语义。;公式:保留条件可用IDF(t)=log(N/df_t)与短语规则共同判断。;算例:“to be or not to be”删除停用词后只剩“be”,短语和否定结构被破坏。;边界:把固定英文停用表用于法律、代码和中文;删除“not”。。
对象:正文、标题、锚文本、列表和元数据语义不同,抽取器需保留字段和位置。;公式:doc={title,body,anchor,url,time,…},score可按字段加权。;算例:网页导航词重复100次但正文只讲一次;若不去模板,导航词会支配词频。;边界:用正则解析任意HTML;丢弃标题层级和表格关系。。
对象:字符n-gram能处理拼写变化和未登录词,但会扩大索引并引入噪声。;公式:G_n(s)={s[i:i+n]};Jaccard=|A∩B|/|A∪B|。;算例:“cat”二元组{ca,at},“cats”二元组{ca,at,ts},Jaccard=2/3。;边界:n太小导致大量伪匹配;不加边界符无法区分前后缀。。
对象:处理链版本变化会同时改变词项、位置、文档长度和索引,需要可重建与回归。;公式:artifact=F(raw_hash,pipeline_version,language_rules)。;算例:升级分词后词表从10万到11万,必须解释新增1万来自何种边界,而非直接上线。;边界:只比较最终文档数;处理链变更却复用旧索引。。
对象:精确hash发现完全相同文档,MinHash/SimHash近似发现局部改写和模板重复。;公式:J(A,B)=|shingles_A∩shingles_B|/|union|。;算例:两文档各10个shingle,交集8,并集12,Jaccard=8/12=.6667。;边界:误合并同模板但正文不同页面;重复文档留在评测集造成泄漏。。