搜索引擎概述之布尔检索![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/87fe008a0103b57db031961255122fa7.png)
阅读本篇文章首先要对“词汇文档矩阵”和“倒排索引”有个基本的认识,要了解相关的知识可以阅读上一篇文章:搜索引擎概述之倒排索引索引。
布尔检索是最基础,也是使用最广泛的信息检索模型了。所谓布尔查询就是通过AND、OR、NOT等逻辑操作符将检索词连接起来的查询。比如:
李白 AND (杜甫 OR 白居易) NOT 苏轼
那么,布尔检索时如何利用倒排索引进行查询的呢?我们还是先从词汇文档矩阵说起吧~
从词汇文档矩阵说起
我们先假设我们有一个词汇文档矩阵,如下所示:
当我进行布尔查询的时候,其实本质就是在为文档矩阵中的每行1和0组成的二进制数做布尔逻辑运算。
李白 AND 杜甫
=110001 AND 110100
=110000
AND操作就是,相同的位同时为1,则结果为1,否则为0。李白 AND 杜甫最终得出的结果就是文档1和文档2
杜甫 OR 白居易
=11