倒排检索构建
倒排检索构建
提纲①倒排索引布尔查询的处理22
提纲 2 ① 倒排索引 ② 布尔查询的处理
一个简单的例子(金庸小说金庸的哪本小说包含郭靖和黄蓉但不包含洪十公?一布尔表达式为郭靖AND黄蓉ANDNOT洪七公·笨方法:从头到尾扫描所有小说,对每本小说判断它是否包含郭靖和黄蓉但不包含洪七公笨方法为什么不好?一速度超慢(特别是大型文档集)一不太容易支持其他操作(e.g.findthewordRomansnearcountrymen)一不支持检索结果的排序(即只返回较好的结果)3
一个简单的例子(金庸小说) • 金庸的哪本小说包含郭靖和黄蓉但不包含洪七 公? – 布尔表达式为 郭靖 AND 黄蓉 AND NOT 洪七公 • 笨方法: 从头到尾扫描所有小说,对每本小 说判断它是否包含郭靖和黄蓉但不包含洪七公 • 笨方法为什么不好? – 速度超慢 (特别是大型文档集) – 不太容易支持其他操作(e.g., find the word Romans near countrymen) – 不支持检索结果的排序(即只返回较好的结果) 3
词项-文档(term-doc)的关联矩阵神雕侠侣天龙八部鹿鼎记射雕英雄传倚天屠龙记郭靖黄蓉洪七公张无忌韦小宝若某小说包含某单郭靖AND黄蓉BUTNOT洪L公词,则该位置上为1否则为0
词项-文档(term-doc)的关联矩阵 若某小说包含某单 词,则该位置上为1, 否则为0 郭靖 AND 黄蓉 BUT NOT 洪七公 射雕英雄传 神雕侠侣 天龙八部 倚天屠龙记 鹿鼎记 郭靖 黄蓉 洪七公 张无忌 韦小宝
关联向量(incidencevectors)·关联矩阵的每一列都是0/1向量,每个0/1都对应一个词项·给定香询郭蜻AND黄蓉BUTNOT洪七公·取出三个列向量,并对洪七公的列向量求补,最后按位进行与操作11010 AND 11010 AND00111 = 00010.5
关联向量(incidence vectors) • 关联矩阵的每一列都是0/1向量,每个0/1 都对应一个词项 • 给定查询郭靖AND 黄蓉 BUT NOT 洪七公 • 取出三个列向量,并对 洪七公的列向量求 补,最后按位进行与操作 • 11010 AND 11010 AND 00111 = 00010. 5