Coherence模型(一致性模型)是用于评估主题模型(如LDA)效果的一种方法。它通过量化的方式来衡量主题的一致性,即主题中词汇的紧密程度和相关性。Coherence模型通常包含以下几个阶段:
-
Segmentation(分割):将词汇集合分割成词汇子集的对。
-
Probability Estimation(概率估计):基于给定的参考语料库计算词汇的概率。
-
Confirmation Measure(确认度量):使用某种预定义的标准来确定质量,并给质量分配一个数值。例如,75%的产品符合XXX标准。
-
Aggregation(聚合):将所有质量数值聚合起来,得出整体质量的单一数值。
在主题一致性度量中,有两种主要的度量方法:
-
Intrinsic Measure(内在度量):以UMass为代表,它比较一个词仅与前一个和后一个词的关系,因此需要有序的词汇集合。它使用成对分数函数,即经验条件对数概率,并带有平滑计数以避免计算零的对数。
-
Extrinsic Measure(外在度量):以UCI为代表,在UCI度量中,每个词都与每个其他词配对。UCI一致性使用点互信息(PMI)。
这两种度量方法都计算主题描述中使用的词汇(w1, …, wn)的一致性得分c(成对分数的总和)。
在Python中,可以使用Gensim库来实现Coherence模型,它提供了CoherenceModel
类来构建和维护主题一致性模型。 这个类允许用户通过在管道的每个阶段选择不同的方法来“制作”他们自己的一致性度量。