主题模型算法是文本处理与数据挖掘中一个非常重要的方法,它可以有效地从文本语义中提取主题信息。目前,主题模型已经被广泛地应用于文本分析领域。目前,有不少有效的工具来分析主题模型生成的结果,但却很少有工作去用可视化的手段来比较两个不同的主题模型。这篇论文就是从主题模型的比较入手,通过多种可视化方法来更有效地对不同主题模型的结果进行比较。
首先,为什么会有不同的主题模型呢?其实,不同的算法、不同的主题个数、不同的参数,都会产生不同的模型,而即使是同样算法、同样参数,但算法两次运行的结果之间也是会有差异的,也就导致了不同的结果。所以,对同一个数据集,计算机可以产生出千千万万中主题模型的结果。
那么,这篇论文提出,对主题模型的比较可以从三个方面入手:主题内容、主题相似性、主题时变。
图1 主题内容的比较
分析主题内容,主要是比较两个模型的结果中,它们的主题是如何匹配的,它们的主题分类是否比较一致?通常我们会发现几种现象:1) 主题匹配:一个主题在另一个模型中能够找到与它基本匹配的主题,这两个主题里文章的分布是比较相近的;2) 主题合并、分裂:一个主题在另一个模型中被拆成了两个主题,或是两个主题在另一个模型中被合并为一个;3) 主题缺失:一个主题无法在另外一个模型中找到相匹配的主题。
为了分析主题间的匹配程度,作者采用了两种可视化形式(如图1)。图1上半部分的矩阵中,横轴和纵轴分别表示了两个不同的主题模型,其中一个包含10个主题,另一个包含15个主题,对应的方格的颜色表示了这两个主题的匹配程度。而图1的下半部分用二部图的形式表示了两个模型的主题之间的匹配程度。左右两边分别表示这两个模型,绿色连线表示对应的两个主题是互相匹配的,而紫色连线表示的是单向匹配。因此,通过分析这两个图我们可以看出两个模型中哪些主题是互相匹配的,哪些主题在另外一个模型中被合并或分裂了。
图2 Buddy plots
分析主题模型的相似性也是比较不同模型的一个切入点。对一个文档,文档集中的其他文档与它的距离是如何分布的呢?基于两种模型计算的距离之前差异有多大?作者用 Buddy Plots 来解答这些问题。如图2所示,以一篇文档为中心(图2中以莎士比亚作品集中的Hamlet作为中心文档),计算其他文档与它的距离(基于模型B),之后将其他文档按照距离远近依次排列在一维的数轴上,其中每个圆点代表一个文档。之后,再基于模型A计算其他文档与中心文档的距离,根据距离给数轴上对应的圆点染色,蓝色表示距离较近,红色表示距离较远。因此,在一根数轴上,用在轴上的坐标值映射了一个模型的信息,用颜色映射了另一个模型的信息,就可以叫容易地比较出两个模型之间的相似性。倘若数轴从左到右呈现出由蓝到红的色阶,表示这两个模型比较相近;倘若从左到右的颜色变化较为混乱,则意味着这两个模型之间差异性较大。
图3 两个主题模型时变趋势的比较
图4 主题拆分的时间趋势比较
主题随时间的演变趋势也是比较两个主题模型的一个角度。如果两个主题在时间趋势上相近,则它们比较可能是想匹配的主题。因此,作者采用了河流(river flow) 的形式来比较两个模型中的主题的时变趋势。如图3所示,上方的河流和下方的河流分别表示了两个模型,每条河流表示一个主题,河流的宽度表示了该主题在这个时间段内的文档数量。我们也可以挑选个别主题进行比较。如图4所示,上方有一个主题,下方则有两个主题,它们的时间趋势较为一致,可能表示上方的一个主题在另一个模型中被拆分成了两个。如果它们的时间趋势如图4(a) 所示,下放的两个主题的时变趋势较为一致,表明这个主题拆分得比较均匀,但另一方面也表明这个拆分可能带有一定的随机性,拆分出的两个主题也许在语义上依然是比较接近的。但若图4(b)所示,下方的两个主题在时间分布上有明显的区分,绿色主题占据了前两个波峰,而紫色主题占据了最后一个波峰。这表明这两个主题可能代表着两个不同的事件,从语义上分析,它们是值得被拆分的。
因此,通过不同多种不同的可视化形式,这篇论文从主题内容、主题相似性、主题时变这三个不同的角度对两个主题模型进行了比较。
[1] Alexander E, Gleicher M. Task-Driven Comparison of Topic Models. Visualization and Computer Graphics, IEEE Transactions on, 2016, 22(1): 320-329.
评论关闭。