发明内容
本发明正是基于上述问题,提出了一种新的技术方案,可以同时衡量微博的语义和质量,解决微博检索中的词汇匹配不精准的问题,同时可以辨别微博的质量,过滤掉低质量的微博。
有鉴于此,本发明提出了一种微博检索方法,包括:预处理步骤,对查询语句和微博文档进行预处理,以得到初步处理结果;第一模型创建步骤,根据所述初步处理结果创建原始查询模型和原始文档模型,并计算所述原始查询模型和所述原始文档模型之间的相似度;第二模型创建步骤,根据所述相似度确定所述查询语句对应的伪相关文档,并根据所述伪相关文档创建伪相关文档模型;模型更新步骤,将所述伪相关文档模型和所述原始查询模型进行线性叠加,以得到扩展查询模型;文档确定步骤,计算所述扩展查询模型和与所述扩展查询模型对应的扩展文档模型之间的相似度,以确定候选结果文档;排序步骤,根据分解机排序模型公式计算所述候选结果文档中的每个文档的得分,并根据所述得分对所述候选结果文档中的文档进行排序,以得到最终检索结果。
在该技术方案中,预处理后再对其结果进行进一步处理,使得匹配的关键词更加精确;通过创建上述各种模型,将各个因素之间的相互关系刻画在了模型中,经过将候选结果文档中的文档再排序,使得对微博语义的衡量更加精确,从而增强了用户获取的检索信息的有效性。
在上述技术方案中,优选地,所述排序步骤包括:计算所述原始查询模型和所述原始文档模型的词汇交叉信息、BM25得分信息、TF-IDF得分信息以及语言模型得分信息作为查询特征;计算所述扩展查询模型和所述扩展文档模型的扩展词汇交叉信息、扩展BM25得分信息、扩展TF-IDF(TermFrequency-InverseDocumentFrequency,词频反文档频率)得分信息以及扩展语言模型得分信息作为扩展查询特征;计算所述候选结果文档中每个微博文档的博文质量特征,其中,所述博文质量特征包括微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度;根据所述查询特征、所述扩展查询特征和/或所述博文质量特征利用随机梯度下降方法或自适应正则化方法学习所述分解机排序模型公式的参数,以得到所述分解机排序模型公式。
在该技术方案中,计算出了扩展前后查询模型和文档模型的微博文本与查询文本间共有的词汇的数量、微博文本与查询文本之间的相似度、空间向量模型中微博文本与查询文本之间的余弦相似度以及微博文本与查询文本两者的语言模型的相似度,以上述计算结果作为特征,增强了词汇匹配的精确度,有助于更准确地衡量微博的语义。同时,一条微博被转发的次数越多、提及的博主越多、用户加入的话题越多、短链接的数量越大和/或微博越长,则越能引起用户的注意,因此,计算微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度等博文质量特征,可以清晰地辨别该微博的质量,有助于过滤掉低质量的微博,提高微博检索的效率,提升用户体验。
在上述技术方案中,优选地,所述分解机排序模型公式为:
其中,w0为常数,xi为任一微博文档的所述查询特征、所述扩展查询特征和/或所述博文质量特征对应的特征向量,w、v为模型参数,其中w刻画了特征xi的权重,<vi,vj>刻画了xi和xj交互的权重,
其中k为分解机模型的分解维度。在该技术方案中,面对给定的查询,将微博文档的所述查询特征、所述扩展查询特征和/或所述博文质量特征表示成向量的形式,w、v为所述得分,即需要估计的参数。
在上述技术方案中,优选地,所述预处理步骤具体包括:爬取所述微博文档中包含的短链接的主题信息、对所述微博文档中的主题词进行还原和/或对所述微博文档进行分词并去除停用词和进行词性变换。
在该技术方案中,当文本中含有短链接时,利用爬虫爬取短链接网页,抽取网页代码中HTML代码中的Title字段的文本内容,作为主体信息与原始文本合并;并在遇见“#”包围的词时,删除“#”,还原原有词;还可以对合并短链接信息后的文本进行分词处理,并利用停用词列表进行停用词的去除,还能进行词性变换。这些预处理步骤将微博文档进行了初步处理,将短链接转换为文本,将“#”去除,并简化了词语的长度和复杂度,剔除了无用词语,降低了后续重新排序步骤的难度,提升了检索效率。
在上述技术方案中,优选地,所述第二模型创建步骤具体包括:根据所述相似度对所述查询语句对应的所有文档进行排序,并从中提取出排名靠前的预设数量的文档作为所述伪相关文档。
在该技术方案中,利用最大似然估计的方法来估计查询模型与文档模型,并利用KL距离计算查询语句与各文档的语义相似度,根据相似度对各文档进行排序,得到排名靠前的伪相关文档,伪相关文档可用于更新查询模型,以得到扩展查询模型。
在上述技术方案中,优选地,所述文档确定步骤具体包括:根据所述扩展查询模型和所述扩展文档模型之间的相似度,对所述与所述扩展查询模型对应的所有扩展文档进行排序,并从中提取出排名靠前的预设数量的文档作为所述候选结果文档。
在该技术方案中,根据伪相关文档创建伪相关文档模型,将伪相关文档模型和原始查询模型进行线性叠加,就得到了扩展查询模型,此时再次利用KL距离,计算扩展查询模型和扩展文档模型之间的相似度,根据相似度对各文档进行排序,得到排名靠前的作为候选结果文档。所得的候选结果文档可以利用分解机排序模型进行重新排序,就可以达到精确衡量微博语义的效果。
根据本发明的另一方面,还提供了一种微博检索装置,包括:预处理单元,用于对查询语句和微博文档进行预处理,以得到初步处理结果;第一模型创建单元,连接至所述预处理单元,用于根据所述初步处理结果创建原始查询模型和原始文档模型,并计算所述原始查询模型和所述原始文档模型之间的相似度;第二模型创建单元,连接至所述第一模型创建单元,用于根据所述相似度确定所述查询语句对应的伪相关文档,并根据所述伪相关文档创建伪相关文档模型;模型更新单元,连接至所述第二模型创建单元,用于将所述伪相关文档模型和所述原始查询模型进行线性叠加,以得到扩展查询模型;文档确定单元,连接至所述模型更新单元,用于计算所述扩展查询模型和与所述扩展查询模型对应的扩展文档模型之间的相似度,以确定候选结果文档;排序单元,连接至所述文档确定单元,用于根据分解机排序模型公式计算所述候选结果文档中的每个文档的得分,并根据所述得分对所述候选结果文档中的文档进行排序,以得到最终检索结果。
在该技术方案中,预处理后再对其结果进行进一步处理,使得匹配的关键词更加精确;通过创建上述各种模型,将各个因素之间的相互关系刻画在了模型中,经过将候选结果文档中的文档再排序,使得对微博语义的衡量更加精确,从而增强了用户获取的检索信息的有效性。
在上述技术方案中,优选地,所述排序单元具体包括:第一计算单元,计算所述原始查询模型和所述原始文档模型的词汇交叉信息、BM25得分信息、TF-IDF得分信息以及语言模型得分信息作为查询特征;第二计算单元,计算所述扩展查询模型和所述扩展文档模型的扩展词汇交叉信息、扩展BM25得分信息、扩展TF-IDF得分信息以及扩展语言模型得分信息作为扩展查询特征;第三计算单元,计算所述候选结果文档中每个微博文档的博文质量特征,其中,所述博文质量特征包括微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度;公式确定单元,根据所述查询特征、所述扩展查询特征和/或所述博文质量特征利用随机梯度下降方法或自适应正则化方法学习所述分解机排序模型公式的参数,以得到所述分解机排序模型公式。
在该技术方案中,计算出了扩展前后查询模型和文档模型的微博文本与查询文本间共有的词汇的数量、微博文本与查询文本之间的相似度、空间向量模型中微博文本与查询文本之间的余弦相似度以及微博文本与查询文本两者的语言模型的相似度,以上述计算结果作为特征,增强了词汇匹配的精确度,有助于更准确地衡量微博的语义。同时,一条微博被转发的次数越多、提及的博主越多、用户加入的话题越多、短链接的数量越大和/或微博越长,则越能引起用户的注意,因此,计算微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度等博文质量特征,可以清晰地辨别该微博的质量,有助于过滤掉低质量的微博,提高微博检索的效率,提升用户体验。
在上述技术方案中,优选地,所述分解机排序模型公式为:
其中,w0为常数,xi为任一微博文档的所述查询特征、所述扩展查询特征和/或所述博文质量特征对应的特征向量,w、v为模型参数,其中w刻画了特征xi的权重,<vi,vj>刻画了xi和xj交互的权重,
其中k为分解机模型的分解维度。
在该技术方案中,面对给定的查询,将微博文档的所述查询特征、所述扩展查询特征和/或所述博文质量特征表示成向量的形式,w、v为所述得分,即需要估计的参数。
在上述技术方案中,优选地,所述预处理单元具体包括:爬取所述微博文档中包含的短链接的主题信息、对所述微博文档中的主题词进行还原和/或对所述微博文档进行分词并去除停用词和进行词性变换。
在该技术方案中,当文本中含有短链接时,利用爬虫爬取短链接网页,抽取网页代码中HTML代码中的Title字段的文本内容,作为主体信息与原始文本合并;并在遇见“#”包围的词时,删除“#”,还原原有词;还可以对合并短链接信息后的文本进行分词处理,并利用停用词列表进行停用词的去除,还能进行词性变换。这些预处理步骤将微博文档进行了初步处理,将短链接转换为文本,将“#”去除,并简化了词语的长度和复杂度,剔除了无用词语,降低了后续重新排序步骤的难度,提升了检索效率。
在上述技术方案中,优选地,所述第二模型创建单元具体包括:根据所述相似度对所述查询语句对应的所有文档进行排序,并从中提取出排名靠前的预设数量的文档作为所述伪相关文档。
在该技术方案中,利用最大似然估计的方法来估计查询模型与文档模型,并利用KL距离计算查询语句与各文档的语义相似度,根据相似度对各文档进行排序,得到排名靠前的伪相关文档,伪相关文档可用于更新查询模型,以得到扩展查询模型。
在上述技术方案中,优选地,所述文档确定单元具体包括:根据所述扩展查询模型和所述扩展文档模型之间的相似度,对所述与所述扩展查询模型对应的所有扩展文档进行排序,并从中提取出排名靠前的预设数量的文档作为所述候选结果文档。
在该技术方案中,根据伪相关文档创建伪相关文档模型,将伪相关文档模型和原始查询模型进行线性叠加,就得到了扩展查询模型,此时再次利用KL距离,计算扩展查询模型和扩展文档模型之间的相似度,根据相似度对各文档进行排序,得到排名靠前的作为候选结果文档。所得的候选结果文档可以利用分解机排序模型进行重新排序,就可以达到精确衡量微博语义的效果。
通过以上技术方案,同时衡量微博的语义和质量,解决了微博检索中的词汇匹配不精准的问题,同时还可以辨别微博的质量,过滤掉低质量的微博。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了根据本发明的实施例的微博检索方法的流程图。
如图1所示,根据本发明的实施例的微博检索方法,包括以下步骤:
步骤102,对查询语句和微博文档进行预处理,以得到初步处理结果;
步骤104,根据初步处理结果创建原始查询模型和原始文档模型,并计算两者之间的相似度;
步骤106,根据相似度确定查询语句对应的伪相关文档,并根据伪相关文档创建伪相关文档模型;
步骤108,将伪相关文档模型和原始查询模型进行线性叠加,以得到扩展查询模型;
步骤110,计算扩展查询模型和与其对应的扩展文档模型之间的相似度,以确定候选结果文档;
步骤112,根据分解机排序模型公式计算候选结果文档中的每个文档的得分,并根据所述得分对所述候选结果文档中的文档进行排序,以得到最终检索结果。
在该技术方案中,预处理后再对其结果进行进一步处理,使得匹配的关键词更加精确;通过创建上述各种模型,将各个因素之间的相互关系刻画在了模型中,经过将候选结果文档中的文档再排序,使得对微博语义的衡量更加精确,从而增强了用户获取的检索信息的有效性。
在上述技术方案中,优选地,步骤112具体包括:计算原始查询模型和原始文档模型的词汇交叉信息、BM25得分信息、TF-IDF得分信息以及语言模型得分信息作为查询特征;计算扩展查询模型和扩展文档模型的扩展词汇交叉信息、扩展BM25得分信息、扩展TF-IDF得分信息以及扩展语言模型得分信息作为扩展查询特征;计算候选结果文档中每个微博文档的博文质量特征,其中,博文质量特征包括微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度;根据查询特征、扩展查询特征和/或博文质量特征利用随机梯度下降方法或自适应正则化方法学习分解机排序模型公式的参数,以得到分解机排序模型公式。
一条微博被转发的次数越多、提及的博主越多、用户加入的话题越多、短链接的数量越大和/或微博越长,则越能引起用户的注意,因此,计算微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度等博文质量特征,可以清晰地辨别该微博的质量,有助于过滤掉低质量的微博,提高微博检索的效率,提升用户体验。
在上述技术方案中,优选地,所述步骤102具体包括:爬取所述微博文档中包含的短链接的主题信息、对所述微博文档中的主题词进行还原和/或对所述微博文档进行分词并去除停用词和进行词性变换。
这些预处理步骤将微博文档进行了初步处理,将短链接转换为文本,将“#”去除,并简化了词语的长度和复杂度,剔除了无用词语,降低了后续重新排序步骤的难度,提升了检索效率。
在上述技术方案中,优选地,所述步骤106具体包括:根据所述相似度对所述查询语句对应的所有文档进行排序,并从中提取出排名靠前的预设数量的文档作为所述伪相关文档。
在该技术方案中,利用最大似然估计的方法来估计查询模型与文档模型,并利用KL距离计算查询语句与各文档的语义相似度,根据相似度对各文档进行排序,得到排名靠前的伪相关文档,伪相关文档可用于更新查询模型,以得到扩展查询模型。
在上述技术方案中,优选地,所述步骤110具体包括:根据所述扩展查询模型和所述扩展文档模型之间的相似度,对所述与所述扩展查询模型对应的所有扩展文档进行排序,并从中提取出排名靠前的预设数量的文档作为所述候选结果文档。
在该技术方案中,根据伪相关文档创建伪相关文档模型,将伪相关文档模型和原始查询模型进行线性叠加,就得到了扩展查询模型,此时再次利用KL距离,计算扩展查询模型和扩展文档模型之间的相似度,根据相似度对各文档进行排序,得到排名靠前的作为候选结果文档。所得的候选结果文档可以利用分解机排序模型进行重新排序,就可以达到精确衡量微博语义的效果。
图2示出了根据本发明的实施例的微博检索装置的框图。
如图2所示,根据本发明的实施例的微博检索装置200,包括:预处理单元202,用于对查询语句和微博文档进行预处理,以得到初步处理结果,具体包括:利用爬虫爬取短链接网页,抽取网页代码中HTML代码中的Title字段的文本内容,作为主体信息与原始文本合并;并在遇见“#”包围的词时,删除“#”,还原原有词;还可以对合并短链接信息后的文本进行分词处理,并利用停用词列表进行停用词的去除,还能进行词性变换;第一模型创建单元204,连接至预处理单元202,用于根据预处理单元202提供的所述初步处理结果创建原始查询模型和原始文档模型,并计算所述原始查询模型和所述原始文档模型之间的相似度;第二模型创建单元206,连接至第一模型创建单元204,用于根据所述相似度对所述查询语句对应的所有文档进行排序,并从中提取出排名靠前的预设数量的文档作为所述伪相关文档,具体包括:利用最大似然估计的方法来估计查询模型与文档模型,并利用KL距离计算查询语句与各文档的语义相似度,根据相似度对各文档进行排序,得到排名靠前的伪相关文档;模型更新单元208,连接至第二模型创建单元206,用于将所述伪相关文档模型和所述原始查询模型进行线性叠加,以得到扩展查询模型;文档确定单元210,连接至模型更新单元208,用于计算所述扩展查询模型和与所述扩展查询模型对应的扩展文档模型之间的相似度,以确定候选结果文档,具体包括:根据伪相关文档创建伪相关文档模型,将伪相关文档模型和原始查询模型进行线性叠加,就得到了扩展查询模型,此时再次利用KL距离,计算扩展查询模型和扩展文档模型之间的相似度,根据相似度对各文档进行排序,得到排名靠前的作为候选结果文档;排序单元212,连接至文档确定单元210,用于根据分解机排序模型公式计算所述候选结果文档中的每个文档的得分,并根据所述得分对所述候选结果文档中的文档进行排序,以得到最终检索结果。
在该技术方案中,预处理后再对其结果进行进一步处理,使得匹配的关键词更加精确;通过创建上述各种模型,将各个因素之间的相互关系刻画在了模型中,经过将候选结果文档中的文档再排序,使得对微博语义的衡量更加精确,从而增强了用户获取的检索信息的有效性。
在上述技术方案中,优选地,所述排序单元212具体包括:第一计算单元2122,计算所述原始查询模型和所述原始文档模型的词汇交叉信息、BM25得分信息、TF-IDF得分信息以及语言模型得分信息作为查询特征;第二计算单元2124,计算所述扩展查询模型和所述扩展文档模型的扩展词汇交叉信息、扩展BM25得分信息、扩展TF-IDF得分信息以及扩展语言模型得分信息作为扩展查询特征;第三计算单元2126,计算所述候选结果文档中每个微博文档的博文质量特征,其中,所述博文质量特征包括微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度;公式确定单元2128,根据所述查询特征、所述扩展查询特征和/或所述博文质量特征利用随机梯度下降方法或自适应正则化方法学习所述分解机排序模型公式的参数,并利用所述分解机排序模型公式的参数,对初始检索结果进行重新排序,得到最终检索结果。
在该技术方案中,计算出了扩展前后查询模型和文档模型的微博文本与查询文本间共有的词汇的数量、微博文本与查询文本之间的相似度、空间向量模型中微博文本与查询文本之间的余弦相似度以及微博文本与查询文本两者的语言模型的相似度,以上述计算结果作为特征,增强了关键词的精确度,有助于更准确地衡量微博的语义。同时,一条微博被转发的次数越多、提及的博主越多、用户加入的话题越多、短链接的数量越大和/或微博越长,则越能引起用户的注意,因此,计算微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度等博文质量特征,可以清晰地辨别该微博的质量,有助于过滤掉低质量的微博,提高微博检索的效率,提升用户体验。
图3示出了根据本发明的实施例的微博检索方法的具体流程图。
如图3所示,根据本发明的实施例的微博检索方法,具体步骤包括:
步骤302,对查询语句和微博文档进行预处理,以得到初步处理结果;
步骤304,根据初步处理结果创建原始查询模型和原始文档模型,并计算原始查询模型和原始文档模型之间的相似度;
步骤306,利用最大似然估计的方法来估计查询模型与文档模型,并利用KL距离公式计算查询语句与各文档的语义相似度,KL距离公式为:
其中,为查询模型,为文档模型,Q,D分别为查询和文档。根据相似度对各文档进行排序,得到排名靠前的伪相关文档,伪相关文档可用于更新查询模型,以得到扩展查询模型;
步骤308,将伪相关文档模型和原始查询模型进行线性叠加,以得到扩展查询模型;
步骤310,再次利用KL距离公式,计算扩展查询模型和扩展文档模型之间的相似度:
其中,为扩展查询模型,为扩展文档模型,Q,D分别为查询和文档。根据相似度对各文档进行排序,得到排名靠前的作为候选结果文档,可以达到精确衡量微博语义的效果;
步骤312,计算原始查询模型和原始文档模型的词汇交叉信息、BM25得分信息、TF-IDF得分信息以及语言模型得分信息作为查询特征;
步骤314,计算扩展查询模型和扩展文档模型的扩展词汇交叉信息、扩展BM25得分信息、扩展TF-IDF得分信息以及扩展语言模型得分信息作为扩展查询特征;
步骤316,计算候选结果文档中每个微博文档的博文质量特征,其中,博文质量特征包括微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度,一条微博被转发的次数越多、提及的博主越多、用户加入的话题越多、短链接的数量越大和/或微博越长,则越能引起用户的注意,因此,计算微博文档提及的博主的数量、转发数量、话题数量、短链接数量和/或微博长度等博文质量特征,可以清晰地辨别该微博的质量,有助于过滤掉低质量的微博,提高微博检索的效率;
步骤318,根据查询特征、扩展查询特征和/或博文质量特征利用随机梯度下降方法或自适应正则化方法学习分解机排序模型公式的参数,以得到所述分解机排序模型公式:
其中,w0为常数,xi为任一微博文档的查询特征、扩展查询特征和/或博文质量特征对应的特征向量,w、v为模型参数,其中w刻画了特征xi的权重,<vi,vj>刻画了xi和xj交互的权重,
其中k为分解机模型的分解维度。
学习分解机排序模型公式的参数的具体方法如下:
令某查询的微博p和微博q为原始标记训练实例,yp和yq分别是它们的标签(0:不相关、1:部分相关、2:非常相关),利用如下公式构造新的对训练实例:
从而得到新的训练集S'={(p(t),q(t)),z(t)}l t=1。
对于新构造的每一个对训练实例,按照公式(1)计算经验Hinge损失函数:
li(f;p(t),q(t),z(t))=[1-z(t)×(fΘ(p(t))-fΘ(q(t)))]+(1)
该公式可以进一步写为:
由此,定义在整个训练集上的全局Hinge损失函数可以表达为:
其中,λθ是是模型参数θ的正则化超参数。一般情况下,应该为每一个模型参数分配一个正则化超参数,但是在实际的学习过程中,为了减少模型训练的复杂度,往往为一类模型参数分配一个正则化超参数,在模型中wi对应的正则化超参数为λw,vi,f对应的正则化超参数为λv。
对以上定义的全局Hinge损失函数进行最优化。使用随机梯度下降方法或自适应正则化方法解决该最优化问题。
所述随机梯度下降方法的步骤包括:
1、每次从构造的对训练集合中抽取一个实例,并按照如下公式更新模型:
其中
ε(t)=z(t)×(fΘ(p(t))-fΘ(q(t)))(7)
2、当模型参数收敛或者达到指定的迭代次数后,得到优化后的参数。
所述自适应正则化方法的步骤包括:
1)从训练集划分出一部分数据作为验证集,优选地,可以按照9:1的比例;
2)在训练集上,我们随机抽取一个训练实例来更新模型参数,优化的目标是基于当前正则化超参数的损失函数:
其中使用分解机排序模型计算;
3)在验证集上,我们同样随机抽取一个验证实例来更新正则化超参数,优化的目标是基于当前模型参数的损失函数:
和随机梯度方法相似,在训练集合上进行迭代,达到指定的迭代次数后,得到优化后的参数;
步骤320,利用训练出的分解机排序模型参数,对初始检索结果进行重新排序,得到初步检索结果。
图4示出了根据本发明的实施例的微博检索方法的预处理示意图。
如图4所示,预处理过程包括:
步骤402,当文本中含有短链接时,利用爬虫爬取短链接网页,抽取网页代码中HTML代码中的Title字段的文本内容,作为主体信息与原始文本合并,即爬取微博文档中包含的短链接的主题信息;
步骤404,在遇见“#”包围的词时,删除“#”,还原原有词;
步骤406,对合并短链接信息后的文本进行分词处理,并利用停用词列表进行停用词的去除,还能进行词性变换,以简化词语的长度和复杂度,剔除无用词语,降低后续重新排序步骤的难度,提升了检索效率;
步骤408,得到初步处理结果。
这些预处理过程将微博文档进行了初步处理,将短链接转换为文本,将“#”去除,并简化了词语的长度和复杂度,剔除了无用词语,降低了后续重新排序步骤的难度,提升了检索效率。
图5示出了根据本发明的实施例的微博检索方法的候选结果生成的示意图。
如图5所示,根据初步处理结果502创建查询模型504和文档模型506;利用最大似然估计的方法来估计查询模型504与文档模型506,利用步骤508用KL距离公式计算查询语句与各文档的语义相似度,
其中,为查询模型504,为文档模型506,Q,D分别为查询和文档;根据相似度对各文档进行排序,得到排名靠前的伪相关文档510;用伪相关文档510更新查询模型504,并将伪相关文档510和更新后的查询模型504(即扩展查询模型)进行线性叠加,以得到更新后的文档模型506(即扩展文档模型);再次步骤508,利用KL距离公式,计算更新后的查询模型504和更新后的文档模型506之间的相似度,
其中,为更新后的查询模型504,为更新后的文档模型506,Q,D分别为查询和文档;根据相似度对各文档进行排序,得到排名靠前的作为候选结果文档512,可以达到精确衡量微博语义的效果。
图6示出了根据本发明的实施例的微博检索方法的分解机排序模型的示意图。
如图6所示,候选结果文档602经过步骤312、步骤314、步骤316依次生成查询特征、扩展查询特征、博文质量特征等特征604,并将特征表示成向量的形式,同时为从特征604中提取出原始文档模型的标签606,通过学习算法608学习所述分解机模型公式的参数,并进入排序系统610,经过最终排序,得到最终检索结果612。
图7示出了根据本发明的另一个实施例的微博检索方法的具体流程图。
如图7所示,根据本发明的另一个实施例的微博检索方法,包括以下步骤:
步骤702,给定一条微博“#我是歌手#本期的冠军http://t.cn/8FBqcca”,给定查询内容“我是歌手”。
步骤704,对于给定的一条微博“#我是歌手#本期的冠军http://t.cn/8FBqcca”,经过链接爬取主题信息后得到“#我是歌手#本期的冠军张杰夜空中最亮的心-我是歌手”;
步骤706,经过话题还原后得到“我是歌手本期的冠军张杰夜空中最亮的星-我是歌手”;
步骤708,经过分词、停用词过滤、词形变换等操作后得到[“我”,“歌手”,“本期”,“冠军”,“张杰”,“夜空”,“最亮”,“星”,“我”,“歌手”];对于给定的查询文本“我是歌手”,经过预处理操作后得到[“我”,“歌手”];
步骤710,对预处理后的查询和文本进行建模,利用最大似然估计查询模型和文档模型。对于上面的查询[“我”,“歌手”],p(我)=0.5,p(歌手)=0.5。对于预处理后的文档[“我”,“歌手”,“本期”,“冠军”,“张杰”,“夜空”,“最亮”,“星”,“我”,“歌手”],p(我)=0.2,p(歌手)=0.2,p(本期)=p(冠军)=p(张杰)=p(夜空)=p(最亮)=p(星)=0.1;
步骤712,利用KL距离公式计算查询模型和文档模型的距离,
其中,为查询模型,为文档模型,Q,D分别为查询和文档;返回最相关的一条文档作为反馈文档,并对其进行最大似然估计建模,与原始查询模型线性结合,得到扩展的查询模型;
步骤714,利用更新后的查询模型,与微博文档计算KL距离,得到最相近的候选微博结果集;
步骤716,对于查询[“我”,“歌手”],计算该查询与文档的词汇交叉信息、BM25得分、TF-IDF得分、语言模型得分作为特征。假设“#我是歌手#本期的冠军张杰夜空中最亮的心-我是歌手”是候选集得分最高的微博,我们将该文档作为扩展查询,计算它和文档的词汇交叉信息、BM25得分、TF-IDF得分、语言模型得分作为语义扩展特征。同时,我们计算微博提及博主的数量、转发数量、话题数量、链接数量、微博长度作为博文质量特征;
步骤718,判断是否已经学习分解机排序模型公式的参数,学习分解机排序模型公式的参数是一个离线的过程,即用训练集训练好以后不用每次训练,检索时直接使用训练好的参数即可,所以,当判断结果为是时,进入步骤720,当判断结果为否时,进入步骤719;
步骤719,利用各个特征,采用梯度下降或者自适应正则化方法训练模型参数,得到最终的分解机排序模型计算公式;
步骤720,利用分解机排序模型公式计算候选结果集中每个文档的得分,进行重排序,得到最终的排序结果。
通过本发明的技术方案,可以同时衡量微博的语义和质量,解决微博检索中的关键词不匹配的问题,同时可以辨别微博的质量,过滤掉低质量的微博。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。