文本主题模型之潜在语义分析(LSA)

机器学习之LSI:文本主题模型之潜在语义分析(LSI) 机器学习之LSI:文本主题模型之潜在语义分析(LSI)一、潜在语义分析(LSI)概述二、LSI简单示例概述三、LSI主题模型总结四、代码实现 一、潜在语义分析(LSI)概述 潜在语义索引(Latent Semantic Indexing,以下简称LSI),也可以称为Latent Semantic Analysis(LSA)。LSI是一种简单实用的主题模型。LSI是基于奇异值分解(SVD)的方法得到本文的主题。 SVD分解:对于一个矩阵Am∗nA_{m*n}Am∗n​,可以分解为三个矩阵: Am∗n 阅读详情

转载地址:www.cnblogs.com/pinard/p/6805861.html

在文本挖掘中,主题模型是比较特殊的一块,它的思想不同于我们常用的机器学习算法,因此这里我们需要专门来总结文本主题模型的算法。本文关注于潜在语义索引算法(LSI)的原理。

1. 文本主题模型的问题特点
    在数据分析中,我们经常会进行非监督学习的聚类算法,它可以对我们的特征数据进行非监督的聚类。而主题模型也是非监督的算法,目的是得到文本按照主题的概率分布。从这个方面来说,主题模型和普通的聚类算法非常的类似。但是两者其实还是有区别的。
    聚类算法关注于从样本特征的相似度方面将数据聚类。比如通过数据样本之间的欧式距离,曼哈顿距离的大小聚类等。而主题模型,顾名思义,就是对文字中隐含主题的一种建模方法。比如从“人民的名义”和“达康书记”这两个词我们很容易发现对应的文本有很大的主题相关度,但是如果通过词特征来聚类的话则很难找出,因为聚类方法不能考虑到到隐含的主题这一块。
    那么如何找到隐含的主题呢?这个一个大问题。常用的方法一般都是基于统计学的生成方法。即假设以一定的概率选择了一个主题,然后以一定的概率选择当前主题的词。最后这些词组成了我们当前的文本。所有词的统计概率分布可以从语料库获得,具体如何以“一定的概率选择”,这就是各种具体的主题模型算法的任务了。
    当然还有一些不是基于统计的方法,比如我们下面讲到的LSI。
2. 潜在语义索引(LSI)概述
    潜在语义索引(Latent Semantic Indexing,以下简称LSI),有的文章也叫Latent Semantic Analysis(LSA)。其实是一个东西,后面我们统称LSI,它是一种简单实用的主题模型。LSI是基于奇异值分解(SVD)的方法来得到文本的主题的。而SVD及其应用我们在前面的文章也多次讲到,比如:奇异值分解(SVD)原理与在降维中的应用和矩阵分解在协同过滤推荐算法中的应用。如果大家对SVD还不熟悉,建议复习奇异值分解(SVD)原理与在降维中的应用后再读下面的内容。
    这里我们简要回顾下SVD:对于一个m×nm×n的矩阵AA,可以分解为下面三个矩阵:
Am×n=Um×m Σm×n Vn×n
Am×n=Um×m Σm×n Vn×n
    有时为了降低矩阵的维度到k,SVD的分解可以近似的写为:
Am×n≈Um×k Σk×k Vk×n
Am×n≈Um×k Σk×k Vk×n
    如果把上式用到我们的主题模型,则SVD可以这样解释:我们输入的有m个文本,每个文本有n个词。而AijAij则对应第i个文本的第j个词的特征值,这里最常用的是基于预处理后的标准化TF-IDF值。k是我们假设的主题数,一般要比文本数少。SVD分解后,UilUil对应第i个文本和第l个主题的相关度。VjmVjm对应第j个词和第m个词义的相关度。ΣlmΣlm对应第l个主题和第m个词义的相关度。
    也可以反过来解释:我们输入的有m个词,对应n个文本。而AijAij则对应第i个词档的第j个文本的特征值,这里最常用的是基于预处理后的标准化TF-IDF值。k是我们假设的主题数,一般要比文本数少。SVD分解后,UilUil对应第i个词和第l个词义的相关度。VjmVjm对应第j个文本和第m个主题的相关度。ΣlmΣlm对应第l个词义和第m个主题的相关度。
    这样我们通过一次SVD,就可以得到文档和主题的相关度,词和词义的相关度以及词义和主题的相关度。
3. LSI简单实例
    这里举一个简单的LSI实例,假设我们有下面这个有10个词三个文本的词频TF对应矩阵如下:
    这里写图片描述
    这里我们没有使用预处理,也没有使用TF-IDF,在实际应用中最好使用预处理后的TF-IDF值矩阵作为输入。我们假定对应的主题数为2,则通过SVD降维后得到的三矩阵为:
    这里写图片描述
4. LSI用于文本相似度计算
    在上面我们通过LSI得到的文本主题矩阵可以用于文本相似度计算。而计算方法一般是通过余弦相似度。比如对于上面的三文档两主题的例子。我们可以计算第一个文本和第二个文本的余弦相似度
    
5. LSI主题模型总结
    LSI是最早出现的主题模型了,它的算法原理很简单,一次奇异值分解就可以得到主题模型,同时解决词义的问题,非常漂亮。但是LSI有很多不足,导致它在当前实际的主题模型中已基本不再使用。
    主要的问题有:
    1) SVD计算非常的耗时,尤其是我们的文本处理,词和文本数都是非常大的,对于这样的高维度矩阵做奇异值分解是非常难的。
    2) 主题值的选取对结果的影响非常大,很难选择合适的k值。
    3) LSI得到的不是一个概率模型,缺乏统计基础,结果难以直观的解释。
    对于问题1),主题模型非负矩阵分解(NMF)可以解决矩阵分解的速度问题。对于问题2),这是老大难了,大部分主题模型的主题的个数选取一般都是凭经验的,较新的层次狄利克雷过程(HDP)可以自动选择主题个数。对于问题3),牛人们整出了pLSI(也叫pLSA)和隐含狄利克雷分布(LDA)这类基于概率分布的主题模型来替代基于矩阵分解的主题模型。
    回到LSI本身,对于一些规模较小的问题,如果想快速粗粒度的找出一些主题分布的关系,则LSI是比较好的一个选择,其他时候,如果你需要使用主题模型,推荐使用LDA和HDP。

LSA潜在语义分析实战:用SVD构建可解释文本主题模型 潜在语义分析(LSA)是一种基于线性代数的无监督文本建模方法,其核心原理是通过奇异值分解(SVD)对稀疏的词-文档矩阵进行降维,从而自动缓解同义词与一词多义带来的语义歧义问题。相比LDA的概率建模和BERT的深度表征,LSA以确定性、低资源消耗和强可解释性著称,特别适合需要快速迭代、业务对齐与结果溯源的工业场景。它不依赖预训练权重,输出的文档-主题坐标可直接用于聚类、分类或BI可视化,广泛应用于招聘JD分析、客服工单归类、政务热线分诊及电商评论治理等真实产线任务。 阅读详情

相关推荐

统计机器学习方法 for NLP:基于LSA的主题模型

前言最近在重刷李航老师的《统计机器学习方法》尝试将其与NLP结合,通过具体的NLP应用场景,强化对书中公式的理解,最终形成「统计机器学习方法 for NLP」的系列。这篇将介绍潜在语义分析LSA(绝对给你一次讲明白)并基于LSA完成一个主题模型提取的任务。潜在语义分析是什么潜在语义分析(Latent Semantic Analysis, LSA)是一种无监督的机器学习方来,通过分析文本内容来获取文...

nghuyong的博客 587

文本主题模型之潜在语义索引(LSI)

    在文本挖掘中,主题模型是比较特殊的一块,它的思想不同于我们常用的机器学习算法,因此这里我们需要专门来总结文本主题模型的算法。本文关注于潜在语义索引算法(LSI)的原理。 1. 文本主题模型的问题特点     在数据分析中,我们经常会进行非监督学习的聚类算法,它可以对我们的特征数据进行非监督的聚类。而主题模型也是非监督的算法,目的是得到文本按照主题的概率分布。从这个方面来说,主题模型和普通的...

weixin_34067980的博客 1038

(2-4)基于内容的推荐:主题模型(Topic Modeling)

主题模型是一种用于分析文本数据的统计模型,它旨在发现文本背后的潜在主题或话题结构。它假设每个文档都由多个主题组成,并且每个主题都由一组相关的单词表示。通过分析文档中单词的分布模式,主题模型可以识别出这些主题,并用它们来描述和表示文本数据。在基于内容的推荐系统中,主题模型可以帮助理解文本数据中的主题信息,并将其应用于推荐过程中。

码农三叔 1443

个推教程--第二课--基于邻域的个性化召回算法LFM

2-1 LFM算法综述     2-2 LFM算法的理论基础与公式推导 有监督学习训练p和q,梯度下降   F:1--32 正则话参数alpha:0.01=0.05之间 学习率 beta 0.1 保持正负样本均衡 LFM复杂度成本低;但影响和推荐可解释性不如CF LFM是基于有监督学习的隐向量学习,而CF不是          ...

Gin077的专栏 684

无监督-主题模型(TM)/隐语义模型(LFM)(四):LDA(隐狄利克雷分布)【 数据(似然)(多项分布)+先验分布(狄雷分布)-> 后验分布(狄雷分布),后验分布作为下一轮的先验分布】【广泛使用】

LDA(Latent Dirichlet Allocation)模型是一种引入全概率模型的文本主题表示方法,其核心是:根据文本主题分布和主题词语分布的狄利克雷先验假设,结合词语样本信息,计算文本后验主题词语分布的贝叶斯估算过程。模型可以对语料库 DDD 中任意文本 mmm ,建模生成对应的主题概率分布: 模型推导过程结合联合概率公式描述如下: 隐含狄利克雷分布(Latent Dirichlet Allocation,简称LDA)是由 David M. Blei、Andrew Y. Ng、Michael I

u013250861的博客 1108

无监督-主题模型(TM)/隐语义模型(LFM)(三):pLSA算法(概率潜在语义分析)【有向图模型,将主题作隐变量,构建贝叶斯网,用EM算法估计模型参数】【pLSA属于LSA到LDA的过渡,很少使用】

人工智能-机器学习-算法-无监督学习:Topic Model(主题模型)算法–>PLSA(Probabilistic Latent Semantic Analysis, 概率潜在语义分析)

u013250861的博客 557

从奇异值分解了解潜在语义分析

奇异值分解(SVD)的数学原理以及推导过程 http://blog.youkuaiyun.com/zhongkejingwang/article/details/43053513 奇异值分解(SVD)在潜在语义分析(LSA)上的扩展 https://blog.youkuaiyun.com/hohaizx/article/details/79918898 文本主题模型之潜在语义分析(LSA) https://blog.cs...

blank4569的专栏 421

无监督-主题模型(TM)/隐语义模型(LFM)(二):LSA/LSI(潜在语义分析/索引)【基于SVD矩阵分解】【最早出现的主题模型,基本不再使用】

在文本挖掘中,主题模型是比较特殊的一块,它的思想不同于我们常用的机器学习算法。 在数据分析中,我们经常会进行**非监督**学习的**聚类算法**,它可以对我们的特征数据进行非监督的聚类。而**主题模型**也是**非监督**的,目的是**得到文本按照主题的概率分布**。从这个方面来说,**主题模型**和普通的**聚类算法**非常的类似。但是两者其实还是有区别的。 - 聚类算法关注于从样本特征的相似度方面将数.........

u013250861的博客 862

【潜在语义分析】LSI/LSA

LSA 背景介绍 文本挖掘中,主题模型。聚类算法关注于从样本特征的相似度方面将数据聚类。比如通过数据样本之间的欧式距离,曼哈顿距离的大小聚类等。而主题模型,顾名思义,就是对文字中隐含主题的一种建模方法。 比如从“人民的名义”和“达康书记”这两个词我们很容易发现对应的文本有很大的主题相关度,但是如果通过词特征来聚类的话则很难找出,因为聚类方法不能考虑到到隐含的主题这一块。 那么如何找到隐含...

夜阑卧听风吹雨,铁马是你,冰河也是你。 1676

4、贝叶斯网络与主题模型知识解析

本文详细解析了贝叶斯网络和主题模型的核心概念及其应用。内容涵盖贝叶斯网络的d-分离独立性判断、不确定推理方法、参数学习(包括最大似然估计和贝叶斯估计)、结构学习(模型选择与优化)以及主题模型的基本原理和潜在语义分析(LSA)技术。同时讨论了贝叶斯网络推理方法的适用场景及优劣对比,以及主题模型在解决同义词和多义词问题上的优势。适用于数据分析、信息检索和文本挖掘领域的实践与研究。

pink的博客 76

Android 12 HAL开发避坑实录:手把手教你用AIDL在Native层实现一个可开机自启动的Service

本文详细介绍了在Android 12 HAL开发中,如何通过AIDL在Native层实现一个可开机自启动的Service。从环境准备、AIDL接口定义、服务实现到VINTF集成与SELinux策略配置,提供了完整的实战指南,帮助开发者避开常见陷阱,提升开发效率。

weixin_28314575的博客 321

LSA SVD PLSI Topic Model

854

C++版Cesium实战:从OpenGL到3DTiles的全流程开发指南

本文提供了一份C++版Cesium全流程开发指南,详细阐述了如何利用OpenGL和Qt从零构建高性能、可离线部署的三维GIS应用。内容涵盖开发环境搭建、OpenGL渲染引擎初始化、Cesium核心坐标系与场景管理移植,并重点解析了3DTiles数据的解析、异步加载与渲染优化等硬核实战技术,旨在帮助开发者实现与现有C++工业软件的深度集成。

weixin_28077113的博客 165

深度/机器学习基础知识要点:TFIDF、LDA、LSA

TFIDF TF Term Frequency,即词频,它表示一个词在文档中出现的次数。 计算公式: TF=某个词在文档中出现的次数文档的总词数TF = \frac{某个词在文档中出现的次数}{文档的总词数}TF=文档的总词数某个词在文档中出现的次数​ 某个词出现越多,表示它约重要。 某个词越少见,就越能表达一篇文章的特性,反之则越不能。 IDF Inverse Document Freq...

Zack的博客 6870

Python实现安居客新房数据抓取简易版

本文介绍使用Python爬取安居客新房楼盘数据的方法,重点针对三四线城市。通过分析移动端H5页面结构,采用滚动加载方式获取推荐楼盘列表(class="recomm-list"),从中提取楼盘ID并拼接详情页链接。代码展示了如何解析HTML标签获取楼盘名称、状态、价格、户型等基本信息,并处理图片URL。爬取过程涉及一个一级页面和两个二级页面,同时提到可能遇到的验证码问题将在后续处理。核心代码使用BeautifulSoup解析HTML,requests发送请求,并将数据存入MySQL数据库。

qq_37604998的博客 475

避坑指南:QT Creator报Unknown module(s) in QT: serialport的5种解决方法

本文详细解析了Qt Creator报'Unknown module(s) in QT: serialport'错误的5种解决方法,包括检查Qt版本兼容性、安装缺失组件、配置Kit环境等。针对Windows和Linux平台提供具体操作步骤,帮助开发者快速解决串口通信模块问题,提升开发效率。

weixin_29197051的博客 157

主题模型

LSA潜在语义分析(Latent Semantic Analysis, LSA),也叫做Latent Semantic Indexing, LSI. 是一种常用的简单的主题模型。LSA是基于奇异值分解(SVD)的方 法得到文本主题的一种方式。我们输入的有m个文本,每个文本有n个词。而Aij则对应第i个文本的第j个词的特征值。k是我们假设的主题数,一般要比文本数少。SVD分解后,Uil对 应第i个文...

猪逻辑公园 1709

基因家族扩张收缩分析可视化(CAFE5)

CafePlotter 是一个用于可视化 CAFE5 基因家族扩张收缩分析结果的 Python 工具

xuzhougeng blog 3640

LDA学习总结

之前做的主要工作是学习一些关于主体模型及其衍生模型的学习,并且其具体的应用。   向量空间模型是文本的代数模型,用向量来表示文档。可用于信息过滤、信息检索、文档比较等。   LSA(潜在语义分析)旨在寻找出词与词之间的某种语义关联,达到简化文本,得出词与概念间的关系。可应用于信息检索等。   PLSA 概率潜在语义模型使用统计的方法为文档建立起“文档--潜在语义--词”之间的概率分布关

753

2024顶级提示工程工具:提升效率的12个神器

LlamaIndex虽然本身不是直接的提示词编辑工具,但其整个设计都围绕着如何有效地将外部知识融入LLM的提示词。它提供了结构化的方式来管理“上下文窗口”——即哪些私有数据应该被包含在提示词中。通过优化索引结构和检索策略,可以确保提示词中包含最相关、最高质量的上下文信息,从而大幅提升LLM基于私有数据回答问题的准确性和相关性。同时,LlamaIndex允许开发者针对不同的查询类型和数据特点定制提示词模板,这使得提示词的复用和优化更加系统化。

AIGC应用创新大全的博客 1099

数据分片的三种方式:哈希、一致性哈希、按照数据范围分片

数据分片就是按照一定的规则,将数据集划分成相互独立、正交的数据子集,然后将数据子集分布到不同的节点上。通过设计合理的数据分片规则,可将系统中的数据分布在不同的物理数据库中,达到提升应用系统数据处理速度的目的。三种常用的数据分片方式:1. 哈希分片2. 一致性哈希分片(Consistent Hash)3. 按照数据范围分片(Range Based)数据分片的应用场景:1. 数据库扩展2. 分布式缓存对集群部署多个缓存节点,提高缓存的处理能力。

wjianwei666的专栏 1135

主题模型之潜在语义分析(Latent Semantic Analysis)

主题模型(Topic Models)是一套试图在大量文档中发现潜在主题结构的机器学习模型,主题模型通过分析文本中的词来发现文档中的主题、主题之间的联系方式和主题的发展。通过主题模型可以使我们组织和总结无法人工标注的海量电子文档。较早的主题模型有混合语言模型(Mixture of Unigram),潜在语义索引(Lantent Semantic Index,LSI),概率潜在语义索引(Probabi...

weixin_30633507的博客 166

Modelsim:LPDDR5仿真(含美光仿真模型官方sv&vcs代码)

虽然,三星在设计跟量产上,早于其他家存储产商,但是镁光后来居上了,是业界首家支持全速 LPDDR5 的供应商,并且开发者在做开发的时候,也是用美光颗粒比较多,所以这里就先以美光的仿真模型为主进行仿真。 本工程为美光官方工程,支持Modelsim、VCS、ncverilog三种仿真器仿真。模型破解过,为完整system-verilog代码。

千歌叹尽执夏的博客 1283

主题模型及其在文本情感分析中的应用

随着Web2.0技术的出现和发展,互联网上(包括门户网站、电子商务网站、社交网站、音/视频分享网站、论坛、博客、微博等)产生了海量的、由用户发表的对于诸如人物、事件、产品等目标实体的评论信息。例如,下面这两个短文本评论: (1)“比较了多个智能手机后选择了8150,性价比还可以。另外,就是考虑到它是3.7的屏幕,大小比较合适,否则携带很不方便。”(京东商城用户,2011.11.25); (2)

Vivian Liu的专栏 3646

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

主题模型三大基石:Unigram、LSA、PLSA详解与对比

从独立到关联:打破词袋独立性假设从显式到潜在:发现隐藏语义结构从确定到概率:建立生成式模型框架神经网络主题模型(NTM)结合预训练语言模型(BERTopic)动态主题模型(DTM)延伸阅读PLSA原始论文主题模型可视化工具剑桥大学主题模型讲义。

hxudhhgwhua的博客 931

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

上一篇: LSTM之时间序列预测
下一篇: 文本主题模型之潜在语义分析(LDA:Latent Dirichlet Allocation)
data_scientist
博客等级 码龄10年 52粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值