发明名称 一种基于马尔科夫决策过程模型的会话搜索方法
摘要 一种基于马尔科夫决策过程模型的会话搜索方法,包括如下步骤:1)准备阶段,爬取足够多的网页,获取语料库全集C;C为爬取的网页集合经过筛选后的结果;每个网页内对应有文档d;训练人员进行自发的会话搜索并记录其过程以获取训练数据,生成训练文档;2)训练阶段,数据预处理,统计检索阶段中需要使用的词语t与文档d之间的关联度,包括使用狄利克雷平滑P<sub>s</sub>(t|d)和不使用狄利克雷平滑的P<sub>us</sub>(t|d);3)检索阶段,接收用户当前输入的查询语句q<sub>i</sub>;通过公式计算语料库全集C中每个文档d与当前查询q<sub>i</sub>的关联度;计算每个文档d与整个会话搜索的关联度;返回关联度高的前N篇文档。
申请公布号 CN105930400A 申请公布日期 2016.09.07
申请号 CN201610237174.9 申请日期 2016.04.15
申请人 南京大学 发明人 刘峰;朱荣鑫;唐丹丹;张苏可;丁霄汉
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 南京瑞弘专利商标事务所(普通合伙) 32249 代理人 陈建和
主权项 一种基于马尔科夫决策过程模型的会话搜索方法,其特征在于包括如下步骤:1)准备阶段a)爬取足够多的网页,获取语料库全集C;C为爬取的网页集合经过筛选后的结果;每个网页内对应有文档d,则C={d<sub>i</sub>};b)训练人员进行自发的会话搜索并记录其过程以获取训练数据(训练数据包括涉及的查询,查询的更改,用户在搜索引擎返回的结果中点击的文档及其点击停留时间等),生成训练文档;c)结束准备阶段;2)训练阶段a)数据预处理,统计检索阶段中需要使用的词语t与文档d之间的关联度,包括使用狄利克雷平滑P<sub>s</sub>(t|d)和不使用狄利克雷平滑的P<sub>us</sub>(t|d);b)解析步骤1‑b)中生成的训练文档,其中包括会话的信息;c)读取训练文档中的一个会话,一个会话包括一次或多次用户对搜索结果操作的信息;d)读取会话中一次用户对搜索结果操作的信息(包括涉及的查询,查询的更改,点击的文档,点击的停留时间等),并由此更新P<sub>us</sub>(t|d)的值;e)重复步骤d)直到会话结束;f)重复步骤c),d),e)直到所有会话都被处理完毕;g)结束训练阶段;3)检索阶段a)接收用户当前输入的查询语句q<sub>i</sub>;b)通过公式计算语料库全集C中每个文档d与当前查询q<sub>i</sub>的关联度;c)计算每个文档d与整个会话搜索的关联度;d)返回关联度高的前N篇文档(本发明取10);e)重复步骤a),b),c),d)直到用户结束查询;f)结束检索阶段;其中所述步骤2‑a)所述的数据预处理:1)计算<img file="FDA0000966063010000011.GIF" wi="336" he="93" />和使用狄利克雷平滑的<img file="FDA0000966063010000012.GIF" wi="465" he="95" />作为词语t与文档d关联度的初始值,其中#(t,d)为词语t在文档d中出现的次数,P(t|C)为t出现在语料库全集C中的次数,|d|为文档d的长度,μ为狄利克雷方法的参数,本发明中设置为5000;2)结束;其中所述步骤2‑d)所述的更新词语t和文档d之间的关联度,即更新P<sub>us</sub>(t|d)的值的过程:1)如果是第一次查询交互,则不改变P<sub>us</sub>(t|d)的值;2)如果不是第一次查询交互,设当前交互的查询内容为q<sub>i</sub>,前一次交互的查询内容为q<sub>i‑1</sub>,令q<sub>theme</sub>为q<sub>i</sub>和q<sub>i‑1</sub>最长公共子序列,+Δq=q<sub>i</sub>‑q<sub>theme</sub>,‑Δq=q<sub>i‑1</sub>‑q<sub>theme</sub>;对P<sub>us</sub>(t|d)的更新分为权值不变,降低权值和增加权值的情况;a)词语t与文档d关联度的权值不变的情况;对于<img file="FDA00009660630100000211.GIF" wi="170" he="54" />且t∈‑Δq的情况,搜索引擎不改变其权值;b)降低词语t与文档d关联度权值的情况;当查询变更了,不论是+Δq还是‑Δq,只要出现在上次的搜索结果的文档集D<sub>i‑1</sub>中,都要降低这些词语的权值;P<sub>us</sub>(t|d)为词语t对当前查询和待评估文档之间的相关性的贡献;而由于词语t已经出现在文档集D<sub>i‑1</sub>中,为了体现新颖度,词语t在文档集D<sub>i‑1</sub>中出现的频率越高,权值就减得越多;因此,对于(t∈+Δq or t∈‑Δq)and t∈D<sub>i‑1</sub>,有如下公式:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>log</mi><mi> </mi><msub><mi>P</mi><mrow><mi>u</mi><mi>s</mi></mrow></msub><msub><mrow><mo>(</mo><mi>t</mi><mo>|</mo><mi>d</mi><mo>)</mo></mrow><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>P</mi><mrow><mi>u</mi><mi>s</mi></mrow></msub><mo>(</mo><mrow><mi>t</mi><mo>|</mo><msubsup><mi>d</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mo>*</mo></msubsup></mrow><mo>)</mo><mo>)</mo></mrow><mi>log</mi><mi> </mi><msub><mi>P</mi><mrow><mi>u</mi><mi>s</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>|</mo><mi>d</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000966063010000021.GIF" wi="1005" he="63" /></maths>此处采用对数函数是为了防止数值下溢;其中确定<img file="FDA0000966063010000022.GIF" wi="234" he="63" />的过程:i.将对q<sub>i‑1</sub>搜索返回结果的前十个片段和满意的点击作为有效的搜索结果,记为<img file="FDA0000966063010000023.GIF" wi="114" he="62" />所谓满意的点击是指在点击的文档上停留时间超过30s;ii.对于所有的文档搜索结果<img file="FDA0000966063010000024.GIF" wi="267" he="63" />找出文本关联度与上次查询q<sub>i‑1</sub>最大的<img file="FDA0000966063010000025.GIF" wi="111" he="63" />即<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msubsup><mi>d</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mo>*</mo></msubsup><mo>=</mo><munder><mi>argmax</mi><mrow><msub><mi>d</mi><mi>k</mi></msub><mo>&Element;</mo><msubsup><mi>D</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mi>e</mi></msubsup></mrow></munder><mi>P</mi><mrow><mo>(</mo><msub><mi>q</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>|</mo><msub><mi>d</mi><mi>k</mi></msub><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000966063010000026.GIF" wi="558" he="110" /></maths>其中<img file="FDA00009660630100000213.GIF" wi="947" he="69" />iii.计算<img file="FDA0000966063010000027.GIF" wi="234" he="62" />的值;以2‑a方法iv.结束确定<img file="FDA0000966063010000028.GIF" wi="235" he="63" />的过程;c)增加词语t与文档d关联度权值的情况;i.当为一个增加的词语并且没有出现在上一次查询的结果集D<sub>i‑1</sub>中,本发明中将根据反文档的频率成比例增加这些词语的权值;如果是一个在很多文档中常见的词语,为了确保在增加一个偏爱的词语的时候,避免增加过多;对于t∈+Δq and<img file="FDA00009660630100000212.GIF" wi="191" he="56" />有如下公式:log P<sub>us</sub>(t|d)<sub>new</sub>=(1+idf(t))log P<sub>us</sub>(t|d)其中:idf(t)是反文档的频率,定义为:<img file="FDA0000966063010000029.GIF" wi="310" he="98" />其中D是搜索引擎返回的全部文档的数目;D<sub>W</sub>是D中出现t的文档数目;ii.对于t∈q<sub>theme</sub>,也增加权值,由于主题词通常是一个会话中的话题类或常用词,并不是整个全集中常用词语;因此,idf(t)并不适用此处;本发明中用词语t在先前最大收益文档出现的频率的逆运算,<img file="FDA00009660630100000210.GIF" wi="278" he="62" />来代替idf(t);公式如下:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>log</mi><mi> </mi><msub><mi>P</mi><mrow><mi>u</mi><mi>s</mi></mrow></msub><msub><mrow><mo>(</mo><mi>t</mi><mo>|</mo><mi>d</mi><mo>)</mo></mrow><mrow><mi>n</mi><mi>e</mi><mi>w</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mo>(</mo><mrow><mn>1</mn><mo>-</mo><msub><mi>P</mi><mrow><mi>u</mi><mi>s</mi></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>|</mo><msubsup><mi>d</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mo>*</mo></msubsup></mrow><mo>)</mo></mrow></mrow><mo>)</mo><mo>)</mo></mrow><mi>log</mi><mi> </mi><msub><mi>P</mi><mrow><mi>u</mi><mi>s</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>|</mo><mi>d</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000966063010000031.GIF" wi="1134" he="63" /></maths>3)结束更新P<sub>us</sub>(t|d)的值的过程。
地址 210093 江苏省南京市鼓楼区汉口路22号