NLP——Topic Modelling

文章目录


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

主题建模(Topic Modeling)是一种统计模型,用于在一组文档中发现抽象的"主题"。主题可以看作是一种潜在的变量,能够捕获文档中的主要讨论点。

比如,你有一堆新闻文章,通过主题建模,可能可以发现一些主题,如"国际政治",“经济”,“体育”,“娱乐"等。每个主题都由一组与之相关的关键词定义。例如,“体育”主题可能包括"篮球”,“足球”,"奥运会"等词语。

最常见的主题建模方法是潜在Dirichlet分配(LDA),它假设每个文档都是从多个主题的混合体中生成的,而每个主题则是从一组特定的词语分布中生成的。

主题建模在文本挖掘、自然语言处理和信息检索等领域有广泛的应用,可以用来探索大规模文本集合的隐藏结构,帮助我们更好地理解和解释文本数据。

A Brief History of Topic Models

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Latent Dirichlet Allocation (LDA)潜在狄利克雷分布

  • 一种用于主题模型的生成概率模型,通过对文档中的词汇进行概率分布分析,从而发现文档中的潜在主题。
    在这里插入图片描述

核心思想

在这里插入图片描述
Latent Dirichlet Allocation(LDA)是一种主题模型,它允许观察到的一组文档可以被解释为潜在主题的集合。 这是一种无监督的生成模型,使我们能够确定由哪些主题生成了一篇特定的文档,并能确定每个主题的词分布。

LDA的基本思想是:

  • 每一篇文档都可以被看作是一系列主题的混合,而每一个主题又可以被看作是一系列词的混合。 例如,如果我们有一个关于体育的文档,那么可能的主题包括"篮球"、“足球”、“棒球"等,每个主题都有各自的词汇,如"投篮”、“射门”、"跑垒"等。

  • LDA算法通过反复迭代来学习 主题-词分布文档-主题 分布,最终可以为每个文档提供一个主题分布(告诉我们这篇文档关于哪些主题)并为每个主题提供一个词分布(告诉我们每个主题包含哪些关键词)。

LDA广泛用于自然语言处理、信息检索和机器学习等领域,用于文档分类、情感分析、推荐系统等任务。

在这里插入图片描述

LDA input

在这里插入图片描述

LDA output

在这里插入图片描述

LDA 如何学习

在这里插入图片描述

Sampling-based mothods 基于采样的方法

在这里插入图片描述

  • 蓝色的表格用于统计 topic-word 共同出现的情况
  • 绿色的表格用于统计 document-topic 共同出现的情况
  • 蓝色的表格中的数据一开始都被初始化为 0.01,绿色的则都是 0.1
  • 这些初始化的数据被称为 prior 先验
  • 之所以以这样的方式初始化,是因为我们为了 smooth 结果,避免在计算的过程中出现 0
  • 看蓝色表格左上角的 mouse-t11.01 其实 1.01 = 1 + 0.01,除了初始值之外,因为在橙色的表格中, mouset1 共同出现了 1 次,所以这里得到了 1.01
  • 同样的 moust-t3=2.01
  • 其他的表格单元也都如法炮制
  • 填完了蓝色和绿色的表格之后,进行下一步
  • 那就是遍历所有的 word token 然后 sample 一个新的 topic,这个步骤是根据这两个表格来决定的:
    在这里插入图片描述
  • 其中 P ( t i ∣ w ) P(t_i|w) P(tiw) 是从蓝色表格计算出来的, P ( t i ∣ d ) P(t_i|d) P(tid) 是根据绿色表格计算出来的
  • 需要注意的是:需要在采样前取消当前主题分配并更新共现矩阵

在Gibbs采样中,为什么在采样前要取消当前的主题分配并更新共现矩阵呢?这是因为我们正在尝试从一个条件分布中抽取样本,即在给定其他所有单词的主题分配情况下,当前单词的主题分配。

  • 当我们尝试更新一个特定单词的主题时,我们先要**“去除”或取消这个单词当前的主题分配**,这样才能确保这个单词的新主题分配不会被它自己当前的分配影响。只有在这个单词“看不见”自己当前的主题分配的情况下,我们才能得到一个公正的抽样。
  • 同时,取消当前的主题分配也意味着我们需要更新主题-词(topic-word)和文档-主题(document-topic)的共现矩阵,因为这个单词的主题分配已经改变,所以之前基于旧的主题分配得到的共现矩阵已经不再准确。一旦我们有了更新后的共现矩阵,我们就可以基于当前其他所有单词的主题分配,从该单词的主题的条件分布中抽取新的主题标签。
  • 总的来说,这个过程确保了我们在给定其他所有变量的情况下,公正地从一个变量的条件分布中抽取样本,这是Gibbs采样的基本要求。
    在这里插入图片描述
  • 根据上面的条件,我们现在对 mouse 单词重新分配主题的时候,需要将原本属于的主题进行 de-allocate 所以在 mouse-t1 这个单元中要 -1,同样的,在 t1-doc 的矩阵中的对应位置也需要把这个值 -1(就相当于橙色的表格中这个 mousetopic=? 所以不能将 mouse 所在的 t1 再作为绿色表格的有效数据统计进去了)
    在这里插入图片描述
  • 接下来就是将 P ( t i ∣ w ) P ( t i ∣ d ) P(t_i|w)P(t_i|d) P(tiw)P(tid) 计算出来即可,例如 P ( t 1 ∣ m o u s e , d 1 ) = P ( t 1 ∣ m o u s e ) P ( t 1 ∣ d 1 ) P(t_1|mouse, d_1) = P(t_1|mouse)P(t_1|d_1) P(t1mouse,d1)=P(t1mouse)P(t1d1),我们根据这个公式可以计算出来 mouse 与 t 1 , t 2 , t 3 t_1,t_2, t_3 t1,t2,t3 哪种 topic 更加契合,然后将 mouse 分配给这种 topic
  • 重复上面的步骤,不断更新表格直到收敛
  • 再举个例子:计算 P ( t 3 ∣ m o u s e , d 1 ) P(t_3|mouse, d_1) P(t3mouse,d1)
    P ( t 3 ∣ m o u s e , d 1 ) = P ( t 3 ∣ m o u s e ) P ( t 3 ∣ d 1 ) P(t_3|mouse, d_1)=P(t_3|mouse)P(t_3|d_1) P(t3mouse,d1)=P(t3mouse)P(t3d1)
  • 原本以为应该按照下面的方式将这个 t3-mouse 也减去 1,但是事实上这样是不对的
    在这里插入图片描述
  • 因为我们现在正在对 t1-mouse 进行 reassign,所以我们只需要在 t1-mouse 相关的蓝色和 绿色格子中减去即可,至于 t3-mouse 我们正常计算即可,所以计算如下:
    在这里插入图片描述
    在这里插入图片描述

Infer Topics For New Documents

  • 在推理阶段,我们固定蓝色表格,只是更新绿色表格
    在这里插入图片描述

超参数

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Variational methods 变分方法

Evaluation

主题模型(例如LDA)的评估是一项重要的任务,主要有两种评估方法:内在评价(Intrinsic Evaluation)和外在评价(Extrinsic Evaluation)。

内在评价:内在评价主要通过计算模型的困惑度(Perplexity)、主题一致性(Topic Coherence)等指标来评价模型的性能。

  • 困惑度 Perplexity:困惑度是评估主题模型质量的一种常见指标。困惑度越低,模型的性能越好。困惑度基本上度量了模型对未见过的新数据的预测能力,即模型的泛化能力。

  • 主题一致性 Topic Coherence:主题一致性是另一种常用的评价指标,它度量的是一个主题内部的词语是否在语义上相互关联。主题一致性越高,说明主题模型捕捉到的主题越有意义。

外在评价:外在评价主要是看主题模型在一些下游任务上的性能,例如文档分类、文档聚类、信息检索等。 比如,我们可以使用主题模型对文档进行特征提取,然后在这些特征上训练一个分类器或者聚类算法,通过观察分类器或者聚类算法的性能来评估主题模型的质量。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/30710.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux MySQL 索引 事务 存储引擎 死锁

索引(面试问得多) 索引是一个排序的列表,包含索引字段的值和其相对应的行数据所在的物理地址 作用 加快表的查询速度,还可以对字段排序 如何实现的搜索加速? 没有索引的情况下,要查询某行数据,需…

【JS】中 ?.、??、??= 的用法和含义

今天分享几个处理空值简单的方法,避免使用三目运算、与或、if else时增加冗余的代,希望对大家有帮助。 可选链(?.) let a; let b a.?age; 含义: 可选链,只有当a存在,同时 a 具有 age 属性的时候,才会把值赋给b,否则就会将 u…

TCP的三次握手与四次挥手

TCP的三次握手与四次挥手 1.网络分层 网络分层代表硬件协议/技术特性应用层HTTP,DNS,FTP,SMTP,Telnet协议等应用程序实现的,规定应用程序的数据格式传输层TCP/UDP协议负责两主机之间的数据正确传输主机系统内核实现的网络层路由器IP协议负责地址管理和路由选择(确定对应主机)…

前端Vue自定义简单实用中国省市区三级联动选择器

前端Vue自定义简单实用中国省市区三级联动选择器&#xff0c; 请访问uni-app插件市场地址&#xff1a;https://ext.dcloud.net.cn/plugin?id13118 效果图如下&#xff1a; #### 使用方法 使用方法 <!-- themeColor:主题颜色 ref:设置唯一ref pickerValueDefault:默认选择…

周大福荣获2023亚洲零售大奖——年度珠宝零售商

由成立于1991年、服务于亚洲充满活力的零售业的行业杂志—《亚洲零售杂志》主办的“2023亚洲零售大奖”评选结果于6月15日揭晓&#xff0c;周大福珠宝集团凭借创新和卓越的表现荣获“2023亚洲零售大奖—年度珠宝零售商&#xff08;中国&#xff09;”&#xff0c;是中国唯一入榜…

【kafka】kafka基础架构

文章目录 1、kafka简介2、kafka的特性3、kafka的应用场景4、kafka架构&#xff08;重点&#xff09;4.1、broker4.2、topic4.3、partition4.4、offset4.5、producer4.6、consumer4.7、consumer group4.8、leader4.9、follower4.10、rebalance 5、对kafka架构的几点解释6、几种M…

【计算机视觉 | 目标检测】arxiv 计算机视觉关于目标检测的学术速递(6月 21 日论文合集)

文章目录 一、检测相关(14篇)1.1 CrossKD: Cross-Head Knowledge Distillation for Dense Object Detection1.2 Depth and DOF Cues Make A Better Defocus Blur Detector1.3 Spatiotemporal Pyramidal CNN with Depth-Wise Separable Convolution for Eye Blinking Detection …

Windows 离线安装mysql5.7

一、下载MySQL5.7最新版 1、官网地址 https://downloads.mysql.com/archives/community/ 2、下载MySQL5.7最新版 下载下图所示的安装包&#xff1a; 二、安装MySQL5.7 1、解压 将刚才下载压缩包解压搭配目录C:\software\mysql-5.7.41&#xff0c;&#xff08;路径大家可…

物联网通信技术

通信的技术指标是什么&#xff1f;AB A. 可靠性 B. 有效性 C. 实时性D. 广覆盖 多路复用技术有哪些&#xff1f;ABCD A. FDMA B. CDMA C. SDMA D. TDMA 使用多个频率来传输信号的技术被称为扩展频谱技术&#xff0c;该技术使用的目的是什么&#xff1f; AB A. 抗干扰B. 提…

python机器人编程——差速AGV机器、基于视觉和预测控制的循迹、自动行驶(下篇)

目录 一、前言二、基于轨迹与路面重心偏离度误差的预测自动差速小车循迹控制策略三、轨迹图像的处理要点四、本篇部分核心控制策略python代码&#xff1a;五、结论 一、前言 基于最近的测试&#xff0c;得到了一种粗略控制的算法&#xff0c;其控制效果适合单线路和急转弯的情…

我们该如何提升测试效率?

在大部分研发项目经理心中&#xff0c;进度往往会放在第一位&#xff0c;其次是成本&#xff0c;最后是质量&#xff0c;当然人员队伍最好也要稳定。天下武功&#xff0c;唯快不破&#xff1a;进度 > 成本 > 质量 > 人。 这个说法并不是绝对&#xff0c;今天我们并不是…

高频前端React面试题汇总

近期整理了一下高频的前端面试题&#xff0c;分享给大家一起来学习。如有问题&#xff0c;欢迎指正&#xff01; 一、组件基础 1. React 事件机制 <div onClick{this.handleClick.bind(this)}>点我</div>React并不是将click事件绑定到了div的真实DOM上&#xff0…

DDOS攻击防御实战(威胁情报)

背景&#xff1a; 不知道大家最近有没有关注到&#xff0c;百度云CDN不支持免费了&#xff0c;网站安全问题越来越严重了…… 常见攻击 DDOS Distributed Denial of Service 分布式拒绝服务攻击可以使很多的计算机在同一时间遭受到攻击&#xff0c;使攻击的目标无法正常使用&…

css基础知识六:谈谈你对BFC的理解?

一、是什么 我们在页面布局的时候&#xff0c;经常出现以下情况&#xff1a; 这个元素高度怎么没了&#xff1f;这两栏布局怎么没法自适应&#xff1f;这两个元素的间距怎么有点奇怪的样子&#xff1f; 归根究底是元素之间相互的影响&#xff0c;导致了意料之外的情况&#…

C++完成淄博烧烤节管理系统

背景&#xff1a; 这次我们结合今年淄博烧烤做一个餐厅管理系统&#xff0c;具体需求如下&#xff0c;我们选择的是餐饮商家信息管理 问题描述&#xff1a; 淄博烧烤今年大火&#xff0c;“进淄赶烤”是大家最想干的事情&#xff0c;淄博烧烤大火特火的原因&#xff0c;火的…

X86架构与Arm架构区别

X86架构和ARM架构是主流的两种CPU架构&#xff0c;X86架构的CPU是PC服务器行业的老大&#xff0c;ARM架构的CPU则是移动端的老大。X86架构和arm架构实际上就是CISC与RISC之间的区别&#xff0c;很多用户不理解它们两个之间到底有哪些区别&#xff0c;实际就是它们的领域不太相同…

【前端 - CSS】第 15 课 - 复合选择器

欢迎来到博主 Apeiron 的博客&#xff0c;祝您旅程愉快 &#xff01; 时止则止&#xff0c;时行则行。动静不失其时&#xff0c;其道光明。 目录 1、缘起 2、复合选择器 2.1、后代选择器 2.2、子代选择器 2.3、并集选择器 2.4、交集选择器&#xff08;了解&#xff09…

【华为自研】| 国产数据库 GaussDB崛起

目录 GaussDBGaussDB 简介产品优势GaussDB(for openGauss)GaussDB(for MySQL)GaussDB(for Cassandra)GaussDB(for Mongo)GaussDB(for Redis)GaussDB(for Influx) GaussDB GaussDB采用一体化架构&#xff0c;同时支持关系型和非关系型数据库引擎&#xff0c;能够满足政企全方位…

【前端布局篇】响应式布局 Bootstrap 移动端布局

前言 1. 布局介绍 布局:layout 对事物的全面规划和安排 页面布局&#xff1a;对页面的文字、图形或表格进行格式设置。包括字体、字号、颜色纸张大小和方向以及页边距等。 网页布局&#xff1a;利用html搭建结构与内容&#xff0c;使用CSS添加装饰 网页布局有很多种方式&a…

Binder对象的流转(系统服务的调用过程、AIDL的使用过程)

零、Binder的传递 Android系统中&#xff0c;存在大量的 IPC 交互&#xff0c;同时也使用了大量的 Binder&#xff0c;那么Binder是怎么在各进程中进行对象的传递&#xff1f; 一、调用系统服务时&#xff0c;Binder的传递 回忆一下&#xff0c;Android系统的启动流程&#x…