机器学习--概率图算法--主题模型算法理论

本文介绍了主题模型的基础认知,包括其概念和优点。重点讲解了三种主题模型算法:潜在语义分析(LSA)、非负矩阵分解(NMF)和隐含狄利克雷分布(LDA)。LSA基于SVD矩阵分解,但效率较低;NMF提高了效率,可解决过拟合;LDA作为推荐模型,基于三层贝叶斯网络,具有统计基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一 主题模型基础认知

1 主题模型的概念

2 主题模型的优点

二 主题模型具体算法

1 潜在语义分析(LSA,是一种基于SVD矩阵分解的主题模型算法)

1)算法原理与流程

2)优缺点

2 非负矩阵分解(NMF,是一种基于NMF矩阵分解的主题模型算法)

1)算法原理与流程

2)模型过拟合解决方案(对损失函数添加正则项)

3)优点

3 隐含狄利克雷分布(LDA,基于三层贝叶斯网络的主题模型算法,推荐使用)

1)相关概率与统计理论

2)算法原理与流程


一 主题模型基础认知

1 主题模型的概念

第一点:主题模型是生成式模型

一篇文章的每一个词:文档以一定概率选择某个主题,并从这个主题中以一定概率选择某个词\Rightarrow p(word|doc)=\sum_{topic}p(topic|doc)p(word|topic)

第二点:主题模型的目的

主题模型可以自动分析每个文档,统计文档内词语,根据统计的信息判断当前文档包含哪些主题以及这些主题所占比例大小

2 主题模型的优点

  • 第一点:克服了传统信息检索中文档相似度计算的缺点(如词袋法等忽略语义与语序问题)
  • 第二点:从海量的文字中找到文字之间的语义主题(挖掘不同文字内在相同的语义主题)

二 主题模型具体算法

1 潜在语义分析(LSA,是一种基于SVD矩阵分解的主题模型算法

1)算法原理与流程

第一步:SVD分解

A_{m*n}=U_{m*m}\Sigma_{m*n} V^{T}_{n*n}\approx U_{m*k}\Sigma_{k*k} V^{T}_{n*k}

注意:

第一点:m表示词数,n表示文档数,k表示主题数

第二点:A,U,\Sigma,V^{T}含义

  • A_{ij}表示第i个词与第j个文档的相关度(通过IT-IDF计算得到)
  • U_{ij}表示第i个词与第j个主题的相关度
  • \Sigma_{ij}表示第i个主题与第j个主题的相关度
  • V_{ij}^{T}i个主题与第j个文档的相关度

第二步:判断文档相似度

  • 方式一:在文档主题矩阵V^{T}_{n*k}中使用聚类算法
  • 方式二:在文档主题矩阵V^{T}_{n*k}中使用距离度量公式(余弦相似度、欧式距离等)

2)优缺点

优点

适合小规模数据集且粗粒度找出文档的主题分布

缺点

  • SVD矩阵分解效率低
  • 很难选择适合的k值
  • 不是基于概率的模型,缺乏统计基础,解释性低
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值