用 LDA 和 LSA 两种方法来降维和做 Topic 建模

栏目: 编程工具 · 发布时间: 6年前

内容简介:本文为 AI 研习社编译的技术博客,原标题 2 latent methods for dimension reduction and topic modeling,作者为 Edward Ma。图片链接: https://pixabay.com/en/golden-gate-bridge-women-back-1030999/

本文为 AI 研习社编译的技术博客,原标题 2 latent methods for dimension reduction and topic modeling,作者为 Edward Ma。
翻译 | dudubear、机智的工人       校对 | 余杭       审核 | 余杭

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

图片链接: https://pixabay.com/en/golden-gate-bridge-women-back-1030999/

在优秀的词嵌入方法出现之前,潜在语义分析模型(LSA)和文档主题生成模型(LDA)都是解决自然语言问题的好方法。LSA模型和LDA模型有相同矩阵形式的词袋表示输入。不过,LSA模型专注于降维,而LDA模型专注于解决主题建模问题。

由于有很多资料介绍这两个模型的数学细节,本篇文章就不深入介绍了。如果感兴趣,请自行阅读参考资料。为了让大家更好地理解,我不会做去停用词这样的预处理操作。但这是在使用LSA、LSI和LDA模型时非常关键的部分。阅读以下文章,你会了解以下内容:

  • 潜在语义分析模型(LSA)

  • 文档主题生成模型(LDA)

  • 主旨概要

潜在语义分析(LSA)

2005年Jerome Bellegarda将LSA模型引入自然语言处理任务。LSA模型的目的是对分类任务降维。其主要思想是具有相似语义的词会出现在相似的文本片段中。在自然语言处理领域,我们经常用潜在语义索引(LSI)作为其别名。

首先,我们用m个文档和n个词作为模型的输入。这样我们就能构建一个以文档为行、以词为列的m*n矩阵。我们可以使用计数或TF-IDF得分。然而,用TF-IDF得分比计数更好,因为大部分情况下高频并不意味着更好的分类。

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

TF-IDF的主要思想是高频的词有可能不代表着很多的信息。换句话说,就是出现频率小的词在模型中有更高的权重。字词的重要性与它在同一文件中出现的次数成正比,但同时与其在语料库中出现的次数成反比。更详细的内容,请参考此博客( https://towardsdatascience.com/3-basic-approaches-in-bag-of-words-which-are-better-than-word-embeddings-c2cbc7398016 )。

该模型的挑战是矩阵很稀疏(或维数很高),同时有噪声(包括许多高频词)。因此,使用分解 SVD 来降维。

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

SVD 的思想在于找到最有价值的信息并使用低维的t来表达这一信息。

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

输出

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

可以看到维度从 130 K 降到了  50

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

输出

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

文档主题生成模型(LDA)

2003年,David Blei, Andrew Ng和Michael O. Jordan提出了LDA模型。这属于无监督学习,而主题模型是其个中典型。它建立的假设在于每份文档都使用多个主题混合生成,同样每个主题也是由多个单词混合生成。

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

不同话题下的不同词汇

显然,你可以想象出两层聚合。第一层是类别的分布。打个比方,类似我们有金融新闻、天气新闻和政治新闻。第二层则是类中的单词分布。比如,我们可以在天气新闻中找到类似“晴朗的”和“云”这样的单词,在金融新闻中找到“钱”和“股票”这样的单词。

然而,"a","with","can"这样的单词对主题建模问题没有帮助。这样的单词存在于各个文档,并且在类别之间概率大致相同。因此,想要得到更好的效果,消除停用词是关键一步。

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

对特定的文档d,我们得到了其主题分布θ。则主题t可以根据这个分布(θ)从ϕ中选出相应的单词。

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

输出

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

主旨概要

要获取完整代码,请访问我的github仓库

......

想要继续阅读,请移步至我们的AI研习社社区: https://club.leiphone.com/page/TextTranslation/841

更多精彩内容尽在 AI 研习社。

不同领域包括计算机视觉,语音语义,区块链,自动驾驶,数据挖掘,智能控制,编程语言等每日更新。

雷锋网 (公众号:雷锋网) 雷锋网(公众号:雷锋网)

雷锋网原创文章,未经授权禁止转载。详情见 转载须知

用 LDA 和 LSA 两种方法来降维和做 Topic 建模

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Linux内核设计与实现

Linux内核设计与实现

拉芙 / 陈莉君、唐华、张波 / 机械工业出版社 / 2006-1 / 38.00元

《Linux内核设计与实现》基于Linux2.6内核系列详细介绍Linux内核系统,覆盖了从核心内核系统的应用到内核设计与实现等各方面的内容。主要内容包括:进程管理、系统调用、中断和中断处理程序、内核同步、时间管理、内存管理、地址空间、调试技术等。本书理论联系实践,既介绍理论也讨论具体应用,能够带领读者快速走进Linux内核世界,真正开发内核代码。 本书适合作为高等院校操作系统课程的教材......一起来看看 《Linux内核设计与实现》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

在线进制转换器
在线进制转换器

各进制数互转换器

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具