- 1 -
中国科技论文在线
基于主题模型的短文本查询扩展算法
刘润楠,陈光**
作者简介:刘润楠(1988-),男,北京邮电大学在读硕士研究生,web 多媒体搜索与挖掘
通信联系人:陈光(1978-),男,北京邮电大学硕士研究生导师,信息检索、文本挖掘及可视化
(北京邮电大学信息与通信工程学院,北京 100876)
5 摘要:近年来,微博短文本语料下的信息检索需求日益突出。查询扩展作为信息检索领域的
关键技术,对于查询结果的优化具有非常重要的作用。本文提出了一种基于 Bayes-LDA 模
型的微博语料建模方法,该模型能够在保证建模质量的基础上对微博短文本的完整建模;并
设计了基于以上模型的微博语料查询扩展算法,其核心是将 Bayes-LDA 的建模结果应用于
特征词的生成与选择、查询结果重排序等操作,从而提高短文本查询的效果。实验结果表明,10
该算法在 TREC 2011 年微博评测的数据集中的多种主要性能指标均优于 BM25 伪相关反馈
方法。
关键词:自然语言处理;查询扩展;LDA 模型;短文本;贝叶斯理论;伪相关反馈
中图分类号:
15
SHORT TEXT QUERY EXPANSION BASED ON TOPIC
MODEL
Liu Runnan, Chen Guang
(School of Information and Communication Engineering, Beijing University of Posts and
Telecommunications, Beijing 100876) 20
Abstract: In recent years, the requirement of microblog retrieval is becoming more. As a key
technology in the field of information retrieval, query expansion is vital to optimize retrieved
results. This paper proposes a Bayes-LDA based modeling method on microblog. The model can
guarantee the quality and completeness of the modeling on short texts such as microblogs. We
design a query expansion algorithm based on this model. Its core thought is to apply the modeling 25
results of Bayes-LDA to the generation of expansion features and the re-ranking of search results.
The experiments show that this algorithm has a better performance of various indicators on the
TREC 2011 Microblog evaluation corpus than the BM25 pseudo-relevance feedback method.
Key words: Natural Language Processing; Query Expansion; LDA Model; Short Texts; Bayesian
Theory; Pseudo-relevance Feedback 30
0 引言
近年来,微博已经成为一种混合了社交网站的属性及大众媒体的作用的新型网络应用,
在热点新闻和各类信息发布中的重要性愈发显现,并深刻影响着社会舆论的走向。面对数以
千万计的、实时更新的微博数据,用户需要一种方便快捷的方式获取信息。因此微博短文本35
语料下的信息检索需求日益突出。但是目前包括微博在内的短文本搜索仅仅是基于原始查询
的简单检索,查询效果和用户体验都很难的到保障。产生这种现象的原因如下:首先,由于
微博发送量巨大,关键字匹配的方法得到的查询结果很多,且中文微博中转微博比例大,导
致返回结果出现很多相同内容;另一方面,因为短文本长度限制,包含信息量有限,且口语
化严重,书写随意,由此这类搜索方式得到的结果非常不利于用户获取信息。这就需要我们40
在现有搜索框架的基础上,针对短文本语料的特性设计有效的搜索结果优化策略。
文献[1]将伪相关反馈方法提取的扩展词分为 3 类,使用单主题平均准确(mean average
- 2 -
中国科技论文在线
precision,MAP)加以判断。文献[2]将伪相关反馈的相关文档进行聚类,按照不同类别抽取
扩展词。在文献[3]中,将经典的 PLSA 模型以用于伪相关反馈,利用 PLSA 划分相关文档主45
题,可以在文档次与主题词间建立基于共现形式的映射特点,按照不同的主题抽取扩展词,
改善抽取的扩展词的质量,同时能抽取不同主题的扩展词。
1 Bayes-LDA 模型建模
短文本语料下 LDA 建模分析
LDA 模型在文本建模领域应用广泛。考虑对于微博语料的处理,一种最为直观的处理50
方式就是将每一条微博原文作为一个单独的文档,应用经典 LDA 算法[4]建模。主题模型是
一种无监督的挖掘算法,因此该建模算法非常容易应用,但学界研究表明[5],由于 LDA 模
型的建模效果受到文本内容长度影响较为严重,而微博类型的短文本长度过短,单词之间共
现次数较少,很难通过概率计算的方式学习得到合理的主题模式。由此,这种简捷的建模方
式效果不佳。 55
虽然微博语料的长度限制了 LDA 模型的建模效果,但是社交网络的独特性提供了使用
聚集处理的可能性,例如微博发布者维度等[6],使用这些处理方法能够将有一定关系的微博
短文本合理的聚集成长文本,之后应用经典的 LDA 模型在处理后的长文本基础上进行分析
和构建模型的工作。这种处理方式所得的建模结果是以微博用户为分割标准的词主题概率分
布和文档主题概率分布,并可在此基础上进行进一步的数据挖掘与分析。文献[7]中,Weng 60
Jianshu等人使用聚集短文本的方法进行LDA主题建模的方法有效的实现了敏感主题有影响
力微博博主的发现。
但是,这种处理方式所生成的模型不是完整的短文本建模模型,因为这么模型无法提供
对于微博原文自身的主题分布情况,是一种模型层面的缺失。很多情景中,研究人员需要分
析短文本原文的建模结果,而这种需求基于聚集的用户层面建模是无法提供的。那么如何完65
成这一目标又同时保证短文本所提供的词主题分布信息不足的问题不会影响分析结果呢?
针对这个问题,本文提出了一种 Bayes-LDA 模型,既能够达到短文本聚合后的建模的处理
效果,又可以进行微博原文的建模,生成文档-主题分布,并将其应用于微博语料的查询扩
展中。
算法基本思想 70
为了实现同时兼顾建模质量和建模完整性的两个重要要求,本算法的核心思路是首先进
行短文本到长文本的聚集,之后在处理过的文档基础之上使用 LDA 模型进行训练,由此可
以获得聚集后文本的主题分布;再使用得到的分布来推论出微博原文语料集或者新加入的短
文本测试集的建模结果,在这个处理过程中直接进行分析而不再进行新的训练。如图 1 所示,
基于 Bayes-LDA 的建模算法包括:聚集产生作者文档、先期模型训练、微博分布贝叶斯推75
导等三个主要步骤。
- 3 -
中国科技论文在线
微博数据集
预处理
模型训练
贝叶斯推导
作者主题分布 词主题分布
微博主题分布
作者文档聚集
图 1 Bayes-LDA 算法流程图
预处理及作者文档聚集
为了最大限度的利用 LDA 模型的建模优势,在训练之前首先对微博语料进行必要的预80
处理并根据微博的用户信息对微博语料进行聚集操作,如图 2 所示。聚集之后我们得到由每
个用户所发微博连接而成的用户文档。该文档将作为下一步模型训练的基础数据。
微博原文 作者文档
图 2 作者文档聚集过程
- 4 -
中国科技论文在线
微博语料的 Bayes-LDA 模型训练 85
本文的 LDA 模型中,每一篇作者文档的主题分布服从以为参数的多项式分布,每个
主题则满足由参数所决定的由全量单词构成的多项式分布。在和的推导过程中,我们引
入狄利克雷先验分布,具体如下所示:
ii ddii Multidzp ~, (1)
ii zzii Multizwp ~, (2) 90
Dirichletid ~ (3)
Dirichletiz ~ (4)
也就是说在 LDA 模型里,假设文件从潜在主题上随机混合取样,透过字词上的分布描
绘每一主题的特性。在此模型中,文档为观察变量,视为字词的集合,每一字词取决于未观
察变量(也就是 topic)z,表示在{1,…,K}的可能值,并且 K 超参数(hyperparameter)必须95
被决定。在文件空间里,LDA 模型存在未观察变量,k),k > 0 且∑kk = 1。其模
型如图所示,表示为主题混合的狄利克雷先验(Dirichlet priori),而字词概率透过 K·N
矩阵参数化,其中 = P(w|z)。
K
β φ
M
N
α θ Z w
图 3 LDA 网络模型图 100
文档 d 和主题混合变量的联合概率分布为
wdn
twLDA
zPzwPdP
,
(5)
其中, wdn , 表示字词 w 在文件 d 中出现的个数, LDAP 为的狄利克雷概率分布。
我们可以得到文档的边际分布:
w
wdn
tLDA
dzPzwPPdP
,
)( (6) 105
微博主题分布的贝叶斯推导
完成作者文档集的训练过程之后,我们分别得到了主题-单词概率分布以及作者文档-主
题概率分布,下面我们需要通过计算得到微博-主题概率分布,完成整个建模过程。 110
由上所述,LDA 训练完成后,多项式分布即为“主题-单词”分布,多项式分布为“作
者文档-主题”分布,分别用矩阵表示为:
- 5 -
中国科技论文在线
kNNN
k
k
zwpzwpzwp
zwpzwpzwp
zwpzwpzwp
21
22212
12111
(7)
MkMM
k
k
dzpdzpdzp
dzpdzpdzp
dzpdzpdzp
21
22221
11211
(8) 115
假定在数据集中总共包含微博 O 篇,长度为 l 的微博 b 可以使用词袋模型表示为
{w1,…,wl},且微博 b 的主题分布满足的是多项式分布,则多项式分布的矩阵形式如下所
示:
00201
22221
11211
bzpbzpbzp
bzpbzpbzp
bzpbzpbzp
k
k
k
(9)
下面我们的工作就是求解多项式分布。 120
贝叶斯理论是整个 LDA 主题模型的理论基础,因此我们可以考虑以贝叶斯理论的思想
对目前的问题进行分析,这样不仅保证了整个模型理论的整体性也保证了推导过程具有严密
的逻辑基础。
根据贝叶斯公式我们可以将微博 b 属于某个主题 z 的概率 p(z|b)做如下表示:
bp
zpzbp
bzp (10) 125
LDA 主题模型中,假设每个文档中出现每个单词的概率是独立的,我们可以沿用这个
假设,由微博 b 中有单词 },,{ 1 kww ,则可知:
l
k
kwpbp
1
(11)
可以推得:
l
k
k twpzbp
1
(12) 130
同时由于已经进行了全局文档集的训练,我们可以得到主题 z 在全局文档集上的概率
p(z)。由此可以推出:
bp
zptwp
bzp
l
k k 1 (13)
因为我们计算的是某个微博内的概率分布,因此 p(b)对于分布的形态没有影响,所以有:
zptwpbzp l
k k 1 (14) 135
经过以上推导,我们由作者文档集的建模结果推得微博-主题模型的分布,从而完成整
个建模过程。
- 6 -
中国科技论文在线
2 基于 Bayes-LDA 模型的查询扩展方法
查询扩展实现框架
下面将详述基于主题模型的查询扩展的算法实现,并完成相关实验对查询扩展的效果进140
行对比验证,以下为整个算法的实现流程框架:
文档集
预处理
建索引
查询语句
初次查询
主题建模 扩展词提取
最终排序结果
查询重写
相关文档
图 4 查询扩展实现流程图
伪相关文档集获取
上面的步骤,我们使用基于 Bayes-LDA 的建模方法完成了全局文档集的模型构建。考145
虑微博短文本语料的特殊性,应用以下公式对原始数据集进行检索,获得相关文档集:
t tt idfqdqScore , (15)
log
t
t
t df
dfN
idf (16)
其中, dqScore , 为所要计算的文档评分,即为原始查询 q 对于文档 d 中的相关程度,
相关度越高则排名应该越靠前,t 为原始查询中的一个单词, tq 为布尔值,如果文档 d 中出150
现单词 t,则 tq 置为 1,如果不存在,则置为 0。
以上公式类似于 Okapi BM25 公式,对于微博语料,一个单词出现一次和出现多次效果
相同,因此将参数 K1 置为 0。由于微博语料长度的限制,一个单词在每条微博中出现的平
均频率接近于 1,因此没有理由相信拥有两个或者三个相同关联词的微博比拥有一个关联词
的微博相关度更高。实际上,拥有多个相同关联词的微博更有可能是垃圾微博且是无意义的。155
并且,将参数 K1 置为 0 同时消除了文档长度归一化的影响,有利于充分利用长度限制的长
微博产生效果。
- 7 -
中国科技论文在线
扩展特征提取
查询主题分布构造
经过对全局数据集的主题模型建模,我们得到了全局的潜在主题空间,数据集中的每一160
个词都有了对应的词主题分布。由此就可以进行词与词的相似度计算,当原始查询为一个词
时,可直接使用该词对应分布。但实际查询过程中,原始查询往往由多个词构成。正如第二
章中所阐述的单纯的词与词一对一的关联关系会造成主题漂移等问题,因此我们需要一种算
法可以对原始查询的特征分布进行融合,得到一个可以与候选扩展词进行对比的空间向量。
为了满足以上需求,本文提出一下计算方法: 165
i
i i
i
iq
idf
idf
2
2
(17)
其中, q 为原始查询对应的主题分布, i 为原始查询中第 i 个词对应的主题分布。 iidf
为整个数据集中原始查询中第 i 个词出现的次数的倒数。公式中,选择各词主题分布相加使
得构造出的新的主题分布仍是在词分布基础上的,保留了与候选扩展词的主题分布的可比
性,同时引入逆文档频对每个词进行赋权,使越能够表现主题的词权重越高。 170
扩展词生成及选取
下面我们需要计算原始查询与候选扩展词之间的相似度,即二者主题概率分布之间的相
似度,由于该分布是主题分布构成的向量,我们可以使用 KL 距离(Kullback-Leibler
Divergence),也就是相对熵进行相似度的度量,其公式如下:
T
j
j
j
j q
p
pqpScore
1
ln),( (18) 175
但是,通过推到可以发现 pqDqpD KLKL ,),( ,即以上公式不具备对称性,因此,我
们可以把该公式处理成:
qpqDqppDqpScore KLKL 1,11,, (19)
由于实际应用中,查询主题分布与词主题分布之间的相似度是对称关系,因此我们可以
将的值设为 2,由此得到公式: 180
)
2
,()
2
,(
2
1
,
qp
qD
qp
pDqpScore KLKL (20)
其中 p 和 q 分别为查询的主题概率分布和词的主题概率分布。
另外,为了满足扩展词提取关于主题覆盖性和准确关联性的两个主要需求,本阶段不仅
会计算相关文档集中出现的词与查询主题相似度,而且也会计算全局文档集中所有词和原始
查询的主题相似度。其中基于查询的部分是为了保证选择的扩展词的相关度,即考虑了候选185
扩展词与原始查询中词语共现的情况所可能产生的强相关性,例如“美国总统”与“奥巴马”
经常出现于同一篇文档,则两者之间具有紧密的联系。但是某些情况下两个关联词汇并不会
同时出现在一篇文档中,例如同义词或者是某个名词的别名,这种情况下就考虑通过子啊全
局中找寻关联词汇了。
如上面的分析得到以下扩展词排名计算公式: 190
wqS
T
T
T
T
wqS w
O
r
O
r
O ,11,
(21)
- 8 -
中国科技论文在线
其中, wqSO , 为候选扩展词 w 的最终评分, rT 为候选扩展词 w 在相关文档集中的词
频, OT 为全局文档集中的词频, wqSw , 为原始查询 q 和候选扩展词 w 的主题概率分布的
相似度。为调节两部分权重的常数,实验中设为 。该公式算出的分值越低,候选扩展
词的排名越高。实验选取与原始查询相似度排名中排在前十位的词语为该查询的扩展词。 195
查询重排序
选取扩展词后,我们需要对查询进行重写,将新获得扩展词特征加入到新构建的查询中,
另外,由于微博语料所具有的强实时性,因此需要考虑提高距离查询时间较近的文档的排名。
综合以上因素可以得到如下公式:
dq cctt Ot eDQSimidftQSqDQScore
},1,1{, (22) 200
其中 tq 为布尔值,如果文档 d 中出现单词 t,则 tq 置为 1,如果不存在,则置为 0, tidf
为逆文档频, tQSO , 为查询 Q 和单词 t 的主题分布的相似度,为控制扩展词贡献大小的
常数,实验中设为 。 DQSim , 为通过 Bayes-LDA 计算出的查询主题分布和微博主题分
布的相似度, 为控制 DQSim , 贡献大小的常数,实验中设为 。其中 qc 、 dc 分别为查205
询发起的时间和微博发布的时间, 为控制发送时间对得分贡献大小的常数,在实验中设
为 。
3 实验实现及实验结果分析
实验目的和方法 210
对微博语料进行检索,并使用查询扩展方法对检索的结果进行优化,通过前 N 个查询
结果的准确率、平均准确率、召回率等准则对查询扩展的结果进行评价,以评价基于主题模
型的查询扩展方法在处理短文本查询问题时的优缺点,验证算法的有效性。
数据集下载及预处理
实验使用 2011 年 TREC 微博评测(TREC 2011 Microblog track)的指定数据集。该数215
据集主要包括自 2011 年 1 月 23 日到 2011 年 2 月 8 日的 17 天内在推特平台上发布的所有微
博,共计 15,745,649 条记录。其中数据集的组织结构是每行是一条微博记录,记录包括记录
ID、发布者名称、微博状态、发布时间、微博原文等信息,由实验室通过评测官方提供的接
口从推特网站上直接爬取。实验的查询(来自于微博评测 2011 年和 2012 年的查询主题)总
数为 100 个,并且每个查询都对应有在上述文档集中的准确的查询结果,便于实验结果的验220
证。
本文在使用数据前需要进行一些预处理工作,具体步骤有:去除乱码等无用标记;过滤
由非英语的语言书写的微博;去除重复或者转发的微博;去除微博中提到的用户的姓名、保
留微博中包含的哈希标签(hashtag),并且将所有 URL 超链接作为一个单词处理;恢复一
些不标准的表达,例如“goooooood!!!”处理成“good”;使用波特词干分析器(Porter stemmer)225
对语料进行词干化;过滤停用词等。
- 9 -
中国科技论文在线
实验设计和结果
为了验证本课题提出的基于主题模型的查询扩展方法的性能效果,我们设计使用前面描
述过的 BM25 算法以及 BM25 的伪相关反馈版本和本文提出的算法在 P@30、MAP 和 R-Prec 等
几个重要指标的进行对比。具体对比实验有如下两组: 230
1. BM25:使用 BM25 算法进行初次查询返回的结果;
2. BM25PRF:在初次查询的基础上对返回的相关文档集进行二次检索,作为 BM25 的伪
相关反馈版本;
以下三组实验为本文提出的查询扩展方法,使用之前 Bayes-LDA 模型进行建模,并用公
式(22)进行查询结果重排序,区别在于扩展时基于的文档集情况: 235
3. GB-LDA:基于全局(整个数据集)的扩展,即在全局数据集进行扩展词的选取;
4. PB-LDA:基于局部(相关文档)的扩展,即在相关文档中出现的单词上进行扩展词
选取;
5. C-LDA:使用上文推出的公式(21),融合两种策略的 Bayes-LDA 模型扩展,综合单
词在全局数据集和相关文档中的分布情况进行扩展词的选取。 240
表 1 查询扩展实验效果表
Meatures
Method
BM25 BM25PRF GB-LDA PB-LDA C-LDA
2012 High Rel
P@30
MAP
R-Prec
2012 All Rel
P@30
MAP
R-Prec
2011 All Rel
P@30
MAP
R-Prec
根据上述结果可以形成如下对照图:
图 5 查询扩展效果柱状分析图 245
- 10 -
中国科技论文在线
结果分析和总结
结合上述实验结果和对照图,我们可以发现有以下特点:
1. 使用 Bayes-LDA 模型的三组扩展方法对于查询扩展效果的提升都有很好的效果。
通过阅读图标可以清晰的发现,实验在 2011 年和 2012 年的主题查询中的查询扩展后的
结果在三个关键性指标上均优于初次查询的结果。这是由于通过不同的查询词选取方式都可250
以使更多的相关文档进入二次查询的范围内,从而对系统的准确率和召回率都有提升。
2. 单独使用一种策略时,基于局部的效果好于基于全局的效果。
实验显示,基于局部的方法与 BM25 的伪相关反馈版本的各性能指标相差不大,但基于
全局的方法则明显差于 BM25PRF 实验。这是因为基于局部(查询)的方法处理的是与查询词
有很大概率相关的文档,从这类文档中选取的扩展词能够表现出与查询更为紧密的相关度,255
而基于全局数据集的方法由于其选词范围与查询无关,导致整体效果差于基于局部的方法。
3. 进行综合后的 Bayes-LDA 模型查询扩展的效果有了进一步的提高。
在根据候选扩展词的分布对两种策略进行综合后,所得的实验结果在两组结果上有了明
显的提高,其扩展效果较为显著的优于基于 BM25 的扩展方式。这证明基于查询和基于全局
数据集的两种方法的侧重点有所差别,分别是考虑共现的关联关系和全局条件下的主题分布260
相似度两种思路,最后一部分实验的结果反映了这种方法的优越性。
4 结论
本文给出了适用于短文本的基于 Bayes-LDA 主题模型建模、查询词提取及重排序结合
的查询扩展算法。Bayes-LDA 的微博语料建模方法,其核心思路是首先进行短文本到长文
本的聚集,之后使用 LDA 模型对于长文本进行训练,由此可以获得作者文档的主题分布;265
再使用贝叶斯理论进行推导,得出微博原文语料集或者新加入的短文本测试集的建模结果。
这种算法同时兼顾了建模质量和建模完整性的两个重要要求,很好的适应了微博语料的特
点,解决了数据稀疏性问题。本课题将这种技术应用于查询扩展领域,研究在全局数据集建
模后,通过初次查询生成局部相关文档,并使用融合后的查询主题概率分布与候选词的主题
概率分布进行相似度分析,之后根据词语在全局数据集和局部相关集上的分布进行候选扩展270
词的选取,最终通过重排序技术融合扩展特征。最后,本文通过对比实验证明了基于
Bayes-LDA 主题模型建模的查询扩展技术能够有效的提升短文本信息检索的效果。
[参考文献] (References)
[1] Cao G H, Nie J Y, Gao J F, et al. Selecting good expansion terms for pseudo-relevance feedback[A]. Cao G H.
Special Interest Group on Information Retrieval[C]. Singapore, 2008. 243-250. 275
[2] Inna G K, Oren K. Cluster-based query expansion[A]. Inna G K. Special Interest Group on Information
Retrieval[C]. Boston, 2009. 646-647.
[3] Song W, Zhang Y, Liu T, et al. Bridging topic modeling and personalized search[A]. Song W. The 23rd
International Conference on Computational Linguistics[C]. Beijing, 2010. 1167-1175.
[4] Blei D, Ng A, Jordan M. Latent Dirichlet allocation[J]. Journal of Machine Learning Research, 2003, 3: 280
993-1022.
[5] Lu Yue, Zhai Chengxiang. Opinion integration through semi-supervised topic modeling[A]. Lu Yue.
Proceedings of the 17th International Conference on World Wide Web(WWW' 08)[C]. New York:ACM
Press,2008. 121-130.
[6] Hong Liangjie, Davison B. Empirical study of topic modeling in Twitter[A]. Hong Liangjie. Proceeding of the 285
First Workshop on Social Media Analytics(SOMA '10)[C]. New York: ACM Press,2010. 80-88.
[7] Weng Jianshu, Lim Ee-Peng, Jiang Jing, et al. Twitterrank: finding topic-sensitive influential Twitterers[A].
Weng Jianshu. Proceedings of the 3rd ACM International Conference on Web Search and Data Mining(WSDM'
10)[C]. New York: ACM Press,2010. 261-270.
290