WHU Bruisefree分享 http://blog.sciencenet.cn/u/bruisefree Link together

博文

Lemur查询语言模型生成命令

已有 4525 次阅读 2013-1-9 20:48 |个人分类:lemur Indri|系统分类:科研笔记| Model, query, Lemur, indri

该命令为KL距离检索模型(KL-divergence)计算基于相关反馈文档的扩展查询模型和初始查询模型,可视为语言模型检索方法的一次反馈过程。初始查询模型可以在初始的查询文本基础上计算 (这时,initQuery参数未设置,或设置为空字符串),也可以在先前保存的查询模型基础上计算(这时,由initQuery参数给定查询模型)。扩展先前保存的查询模型使得迭代反馈成为可能。相关反馈可以在真实的相关性评价基础上,也可以在任何先前返回的查询结果基础上进行。

两点重要事项:

1)目前Lemur中的所有相关反馈算法都假定相关性判断文件(judgment file)中的所有条目都是相关文档,因此需要去除所有已判为不相关的文档。然而判断状态记录在内部的判断表示中,因此可以在相关反馈算法中区分相关文档和不相关文档。

2)用于相关反馈的相关性判断文件格式必须有三列,即去掉第二列后每一行包括查询id、文档id和评判值。该格式与查询结果文件格式一致。直接使用原始的四列格式也是一种选择,但是需要添加一个参数区分四列格式和三列格式的查询结果文件。

参数说明:

1index:索引库的索引内容列表文件的完整名。

2smoothSupportFile:平滑支撑文件的完整名(例如,由GenerateSmoothSupport生成的文件)

3textQuery:初始的查询文本

4initQuery:保存的初始查询模型文件。当这个参数设置为空字符串时,保存在这个文件中的模型会用于扩展;否则初始的查询文本则用于初始扩展查询模型。

5feedbackDocuments:用于相关反馈过程的文档文件。在伪相关反馈下,该文件可以是由初始检索过程产生的查询结果文件。在相关反馈下,该文件通过是一个3列的相关性判断文件。注意,这意味着不能直接使用TREC风格的相关性判断文件,必须从中去除第二列,将其转变为三列。

6resultFormat:相关反馈文件(feedbackDocuments给定)是TREC格式(6列),还是简单的三列格式<queryID, docID, score>。字符串值,trec表示TREC格式,3col表示三列格式。在以前的lemur版本,可以用整数值0表示非TREC格式,非0表示TREC格式。默认值为:TREC格式。

7expandedQuery:保存扩展查询模型的文件

8feedbackDocCount:用于伪相关反馈的文档数(0表示不使用相关反馈)

9queryUpdateMethod:相关反馈方法,取值:

    混合模型:mixturemix0

    最小距离模型:divmindiv1

    马尔可夫链模型:markovchainmc2

    Relevance Model 1: relevancemodel1rm13

Relevance Model 2: relevancemodel2rm24

10)方法相关的反馈参数:

  对于所有的插值方法(新查询模型是初始模型和相关反馈模型,在反馈文档基础上的插值计算所得),将应用下面四个参数:

  a) feedbackCoefficient:线性插值过程反馈模型的因子,取值在[0,1]之间,0表示只使用初始模型(即没有模型更新或反馈过程),1表示只使用反馈模型(即忽略初始模型);

  bfeedbackTermCount:修正反馈模型,使其不超过给定数量的词项;

  c) feedbackProbThresh:修正反馈模型,使其只包含概率值大于该阈值的词项,默认值为0.001

  dfeedbackProbSumThresh:修正反馈模型,直到所有包含词项的概率达到该阈值,默认值为1.

  feedbackTermCountfeedbackProbThreshfeedbackProbSumThresh三个参数共同控制修正过程,也就是说修正后的模型需要满足这三个限制。

  所有三个反馈模型都认参数feedbackMixtureNoise,默认值为0.5,但是插值过程不一样:

  1)对于文档库混合语言模型,feedbackMixtureNoise是混合模型中语料模型的选择概率。当反馈结果文档生成时,根据这一概率来从语料模型中选择词项。

2)对于距离最小模型(KL距离),feedbackMixtureNoise指语料模型中的差别值权重。该值越高,评估模型与语料模型距离越大。

3)对于马尔可夫链方法,feedbackMixtureNoise是不停止的概率,即1alphaalpha是游走链时的停止概率。

此外,文档库混合语言也需要emIterations参数,该参数是EM算法运行迭代的最大次数,默认值为50。如果log-likelihood快速聚敛,EM算法可以较早停止,聚敛通过一些硬编码标准来衡量。查看SimpleKLRetMethod.cpp源码获取细节。

 

使用实例:

用伪相关反馈去查询“case”在ohsumed索引库中的relevance model

>GenerateQueryModel d:/index/genqm.txt

参数示例:

<parameters>

    <index>d:indexohsumed2</index>

    <textQuery>d:indexcaselmquery.txt</textQuery>

    <initQuery></initQuery>

    <feedbackDocuments>d:/index/queryresult.txt</feedbackDocuments>

    <resultFormat>0</resultFormat>

    <expandedQuery>d:indexcaselmexpand.txt</expandedQuery>

    <feedbackDocCount>500</feedbackDocCount>

    <queryUpdateMethod>rm1</queryUpdateMethod>

    <feedbackCoefficient>0.6</feedbackCoefficient>

    <feedbackTermCount>1000</feedbackTermCount>

    <feedbackProbThresh>0.0</feedbackProbThresh>

    <feedbackProbSumThresh>1.0</feedbackProbSumThresh>

</parameters>

 

 



https://blog.sciencenet.cn/blog-563898-651474.html

上一篇:Lemur 平滑支撑文件生成命令(GenerateSmoothSupport)
下一篇:Lemur查询语言模型评价命令
收藏 IP: 222.20.193.*| 热度|

2 杨华磊 吕鹏辉

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-23 05:46

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部