布尔模型(Boolean Model)

 

布尔模型(Boolean Model)最早的IR模型,也是应用最广泛的模型;目前仍然应用于商业系统中;Lucene是基于布尔(Boolean)模型的。...



布尔模型(Boolean Model)最早的IR模型,也是应用最广泛的模型;目前仍然应用于商业系统中;Lucene是基于布尔(Boolean)模型的。
布尔模型描述
文档D表示
一个文档被表示为关键词的集合
查询式Q表示
查询式(Queries)被表示为关键词的布尔组合,用“与、或、非”连接起来,并用括弧指示优先次序
匹配F
一个文档当且仅当它能够满足布尔查询式时,才将其检索出来
检索策略基于二值判定标准
算法R
根据匹配框架F判定相关
查询表示
在布尔模型中,所有索引项的权值变量和文档dj与查询q的相关度都是二值的,查询q被表述成一个常规的布尔表达式,为方便计算查询q和文档d的相关度,一般将查询q的布尔表达式转换成析取范式qDNF。
示例
文档集包含两个文档:
文档1:a b c f g h
文档2:a f b x y z
用户查询:文档中出现a或者b,但一定要出现z。
将查询表示为布尔表达式  ,并转换成析取范式
文档1和文档2的三元组对应值分别为(1,1,0)和(1,1,1)
经过匹配 ,将文档2返回
优点
到目前为止,布尔模型是最常用的检索模型,因为:
由于查询简单,因此容易理解
通过使用复杂的布尔表达式,可以很方便地控制查询结果
相当有效的实现方法
相当于识别包含了一个某个特定term的文档
经过某种训练的用户可以容易地写出布尔查询式
布尔模型可以通过扩展来包含排序的功能,即“扩展的布尔模型”
问题
布尔模型被认为是功能最弱的方式,其主要问题在于不支持部分匹配,而完全匹配会导致太多或者太少的结果文档被返回
非常刚性: “与”意味着全部; “或”意味着任何一个
很难控制被检索的文档数量
原则上讲,所有被匹配的文档都将被返回
很难对输出进行排序
不考虑索引词的权重,所有文档都以相同的方式和查询相匹配
很难进行自动的相关反馈
如果一篇文档被用户确认为相关或者不相关,怎样相应地修改查询式呢?

分享本文到朋友圈并截图发送给小编(微信:ilotter)就有机会获得权威“搜索引擎200多项影响排名因素”文档哦!

★请注意:这不是某州学院的那份所谓的“234项百度算法”!!!


    关注 我是乐天


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册