https://arxiv.org/pdf/1907.04907.pdf
嵌入空间中的主题建模
Github:https://github.com/adjidieng/ETM
主题模型通过分析文档来学习有意义的单词模式,现有的主题模型对于大型和重尾 heavy-tailed 词汇表的效果不佳。作者提出一种文档生成式模型 embedded topic model (ETM),将传统主题模型与词嵌入相结合,可以用一个分类分布对每个单词进行建模,分类分布的参数是单词嵌与和指定主题嵌入的内积。对于包含罕见词和停止词的大型词汇表,ETM 也能够发现可解释的主题,在主题质量和预测性能方面都优于现有的模型如 LDA 等。
主题模型是发现文档集合中隐藏语义结构的统计工具,主题模型及其扩展已经应用到许多领域,如市场营销、社会学、政治学和数字人文学科。大多数主题模型基于 LDA,LDA 是一个分层概率模型,将每个主题表示为词的分布,并将每个文档表示为主题的混合。主题总结一组文档的内容,主题比例提供每个文档的低维表示。LDA 可以通过使用变分推断和随机优化来适应大型文本数据集,但是对于大型词汇的建模效果不好。
ETM 是一种用于词嵌入的主题模型,同时具有主题模型的良好特性——文本可解释的潜在语义结构和词嵌入的良好特性——词的低维表征,对大型和长尾的数据健壮性强。
ETM 与 LDA 不同,一个词的每个主题的条件概率是对数线性形式的,包含词汇表的低维表征。每个词都由嵌入表示,每个主题都是嵌入空间中的一个点,主题分布与主题嵌入和每个项嵌入的指数内积成比例。ETM对于停止词很健壮,这与大多数常见的主题模型不同。图 2 和图 3 显示了纽约时报 300-topic ETM 的主题,每个主题的嵌入和最近邻的单词。
作者提出一种有效的变分推断近似后验算法,并使用 amortized inference 近似主题比例。这种算法既可以使用预先拟合的词嵌入,也可以与其他参数联合拟合。将 ETM、LDA和神经变分文档模型 NVDM(多项式矩阵分解)相比较,ETM 对大型词汇表健壮,预测性能好(文档 completion task 的 held-out 对数似然),能提供有意义的主题(主题一致性 coherence 和多样性 diversity)。
ETM 基于 LDA 和词嵌入,考虑一个包含 D 个文档的语料库,词汇表包含 V 个不同的词,令 表示第 d 个文档中的第 n 个单词,假定有 K 个主题 ,每个文档都是主题的混合,主题在整个语料库中共享,并且每个文档的混合比例是惟一的。每个文件的生成过程为:
Cat(·) 表示分类分布,主题使用狄利克雷先验 ,、 是固定的超参数。词嵌入提供了使用词的向量表示的语言模型,词语的表征是与意义相关,一个词的意义来自于它的上下文。在 CBOW 中,每个词 的似然为:
矩阵 ρ 是 L×V 维的,列 是词 v 的向量,向量 是上下文嵌入,即词 周围的上下文向量(每个词 v 为 )的和。
主题模型 ETM 将词汇表嵌入到 L 维空间,用 K 个潜在主题表示每个文档。在传统的主题模型中,每个主题在词汇表上是一个完整的分布,然而 ETM 的主题是嵌入空间中的一个向量,第 k 个主题的向量 ,称为主题向量,即第 k 个主题在语义空间的分布式表征。在生成过程中,ETM 使用主题向量在词汇表上生成每个主题的分布,使用对数线性模型取向量和主题向量的内积,二者之间的一致性给主题 k 中的词 v 赋予了高概率。第 d 个文档的生成过程为:
LN(·) 为 logistic-normal 分布,用来代替狄利克雷分布,以简化推断算法。
;
步骤 1 和 2a 是主题建模的标准做法,将文档表示为主题的分布,并为每个观察到的单词分配主题。步骤 2b 使用词汇表 ρ 的嵌入和分配的主题向量 把观察到的词 分配给指定的主题。CBOW 使用周围词形成上下文向量 ,而 ETM 使用主题向量 作为上下文向量,从文档上下文而不是从周围单词的窗口中提取单词。ρ 的嵌入可以作为整体的一部分来学习,同时查找主题和嵌入空间;也可以使用以前训练好的嵌入,当嵌入的单词在语料库中没有出现时,这种策略特别有用,ETM 可以计算这些词与主题的相关度 。
Inference and Estimation
给定一个文档库 ,其中 是 个单词的集合,ETM 的参数是嵌入 和主题嵌入 , 是嵌入空间中的一个点。最大化文档的边际似然:
每个文档的边际似然难以计算,因为涉及到主题比例的困难积分,使用:
每个单词的条件分布使得主题分配 边际化:
为主题的比例, 为词的分布:
使用变分推断避免了棘手的积分,需要优化模型参数和变分参数,变分参数收紧了边际似然的界限。假设一个未转换的主题比例的分布 ,使用 amortized inference, 的变分分布取决于文档 和共享变分参数 ν。特别地,当 是一个高斯分布,均值和方差来自一个“inference network”,它以文档 为输入(为了适应不同长度的文档,按单词数 N_d 对文档的词袋表征进行归一化),输出 的均值和方差。用这些变分分布来约束对数边际似然,evidence lower bound (ELBO) 是模型参数和变分参数的函数,
作为变分参数的函数,第一项鼓励提高解释观察到的单词的主题比例 ,第二项鼓励接近先验 ;作为模型参数的函数,这个目标函数最大化预期的对数似然
根据模型参数和变分参数对 ELBO 进行优化,使用随机优化,通过 reparameterization 技巧对全梯度进行蒙特卡罗近似,形成有噪声的梯度 (Kingma and Welling, 2014; Titsias and Lázaro-Gredilla, 2014; Rezende et al., 2014)。使用下采样来处理大量的文档,算法如下所示,NN(x;ν) 表示神经网络输入为x,参数为 v。
实验
好的文档模型应该同时提供连贯的语言模式和准确的单词分布,因此根据预测的准确性 log-likelihood 和主题的可解释性(一致性和多样性)来衡量性能。标准的主题模型因为文档中存在停止词,学习到的主题的可解释性很差,而 ETM 能够使用来自词向量的信息来提供可解释的主题。
比较 ETM、LDA 和 NVDM 的性能,其中 ETM 有两种变体,一种使用预训练的词向量,如 skip-gram,称为 labeled ETM;另一种与其他参数联合训练。对所有模型使用变分推断,并使用随机变分推断 SVI (Hoffman et al., 2013) 加速优化。batch size 为 1,000 个文档。LDA 设置学习率的 delay 为10,forgetting factor 为 0.85,SVI 中使用5个内部步骤来优化局部变量;其它模型使用局部变量 的 amortized inference。使用3层推理网络,local 学习率为 0.002,对变分参数使用 L2 正则,权值衰减为 1.2×10^−6。
定性分析
表 1 为不同模型的嵌入,其中 ETM、NVDM 与 skip-gram 的嵌入类似,∆-NVDM 的嵌入与它们有所不同。表 2 为给定 ,所有模型最常用的 7 个主题,LDA 和 ETM 都给出了可解释的主题,而 NVDM 和 ∆-NVDM 没有提供可解释的主题。
定量分析
在可解释主题的模型中,ETM提供了最好的预测。通过两个指标衡量主题质量:主题一致性和多样性。主题一致性是对一个主题的可解释性的定量度量 (Mimno et al., 2011),思想是,在一个连贯的主题中最有可能出现的单词应该具有很高的互信息。具有较高主题一致性的文档模型是更具解释性的主题模型。从同一文档中随机抽取的两个单词的平均逐点互信息 (Lau et al., 2014):
其中 表示主题 k 中最可能出现的前10个单词,f(·,·) 为归一化的逐点互信息:
是文档中单词 和 同时出现的概率, 是 的边际概率,用经验计数来近似计算这些概率。
主题多样性为所有主题前 25 个单词中不重复单词所占的百分比,得分接近 0 表示主题冗余,接近 1 表示主题多样性好。
好的主题模型还要提供良好的语言分布,预测质量计算 document completion task 文档完成任务 (Roseni-Zvi et al., 2004; Wallach et al., 2009) 的对数似然。将每个测试文档分成两组,第一部分是可观测的,得到主题的分布,使用主题得到另一部分的单词的分布,得到另一部分文档。图 4 为主题质量预测函数,表现好的模型在右上角,LDA 的结果最差,NVDM 总体上比 LDA 好,但比其他方法差,NVDM 给出了最好的预测,但是它的主题质量远远低于其他方法。在预测方面,ETM 的两个版本与 simplex-constrained ∆-NVDM一样好。
Stop words
传统的主题模型的主题包含停止词,不考虑主题的实际语义,可解释性差。比较 LDA、∆-NVDM 和 labeled ETM (NVDM 没有可解释的主题),表 3 为主题质量(一致性和多样性),labeled ETM 的主题质量最好,尽管 ETM 有一些“stop topics” 如图 5,但 ∆-NVDM 和 LDA 几乎每个主题都有停止词,传统的主题模型很难区分内容词和停止词,labeled ETM 识别停止词在嵌入空间中的位置,这让它们拥有了自己的主题。