《信息检索学习笔记（一）：词汇表、倒排索引、向量空间模型》

信息检索

信息检索的主要任务是从文本集合中找到与给定查询最相关的文档。文本可能指纯文本、HTML、XML 等格式的文本。查询通常是一个或多个词的组合。相关性是模糊的，需要通过某种语义模型对查询与文档进行表示，相应地计算两者之间的相似度。

词汇表

词汇表是文本集合中出现过的所有单词的有序列表。可以通过以下步骤来构建词汇表：

1. 加载语料库
2. 对于每个文档，从中提取出所有的单词，去除停用词（如“and”、“or”、“the”等常见词语），转换为小写形式
3. 将所有的单词添加到词汇表中，去除重复词汇

倒排索引

倒排索引是一种用于实现文本检索的数据结构，用来存储词汇表中每个单词所对应的文档列表。以下是构建倒排索引的步骤：

1. 对于词汇表中的每个单词，遍历文本集合中出现过该单词的所有文档，将文档编号添加到该单词对应的文档列表中
2. 对于每个单词的文档列表，按照文档编号进行排序，以便能够高效地完成集合操作（如求交集、并集等）
3. 将每个单词所对应的文档列表与该单词一起存储到倒排索引中

向量空间模型

通过向量空间模型，可以将词汇表中的单词和文档表示为向量，进而计算它们之间的相似度。具体步骤如下：

1. 根据词汇表中单词在文档中的出现情况，构建文档向量
2. 根据词汇表中单词在查询中的出现情况，构建查询向量
3. 计算文档向量与查询向量之间的余弦相似度，得到它们之间的相关性分数

以上是信息检索的基本原理，实际的搜索引擎还需要考虑各种优化策略，如索引压缩、分布式计算、查询扩展等。
基于以上这段文本，重新叙述一遍。
信息检索是用于在文本集合中找到与给定查询最相关的文档的任务。为实现此任务，需要通过构建词汇表和倒排索引，以及应用向量空间模型来表示查询和文档，并计算它们之间的相似度。词汇表是语料库中所有出现单词的有序列表，而倒排索引是存储每个单词所对应文档列表的数据结构。向量空间模型则将词汇表中的单词和文档表示为向量，计算它们之间的相似度。除了以上基本原理外，搜索引擎还需考虑各种优化策略，如索引压缩、分布式计算、查询扩展等。