深入浅出LDA(4)

NLP: LDA主题模型 (1) 一个函数:gamma函数(2) 四个分布:二项分布、多项分布、beta分布、Dirichlet分布(3) 一个概念和一个理念:共轭先验、贝叶斯框架(4) 两个模型:pLSA和LDA(5) 一个采样:Gibbs采样。 阅读详情

1. 如何更好的理解 β 分布 Dirichlet 分布?

这一节内容来自:知乎 王胖子
链接:https://www.zhihu.com/question/26751755/answer/80931791

outline:Bernoulli trial->Bernoulli process->Beta分布->Dirichlet分布


Bernoulli trial简单地说就是一个只有两个结果的简单trial,比如抛硬币,x = 1就是头,x= 0就是字,我们设定q是抛出字的概率。那么bernoulli process就是重复的独立Bernoulli trials,再或者说就是狂抛这枚硬币n次记结果。


我们记下x=0的次数k.现在问题来了:我们如何知道这枚硬币抛出字的概率?我们知道,如果可以一直抛下去,最后k/n一定会趋近于q;可是现实中有很多场合不允许我们总抛硬币,比如我只允许你抛4次。你该怎么回答这个问题?显然你在只抛4次的情况下,k/n基本不靠谱;那你只能”猜一下q大致分布在[0,1]中间的哪些值里会比较合理”,但绝不可能得到一个准确的结果比如q就是等于k/n。

举个例子,比如:4次抛掷出现“头头字字”,你肯定觉得q在0.5附近比较合理,q在0.2和0.8附近的硬币抛出这个结果应该有点不太可能,q = 0.05和0.95那是有点扯淡了。你如果把这些值画出来,你会发现q在[0,1]区间内呈现的就是一个中间最高,两边低的情况。


从感性上说,这样应当是比较符合常理的。那我们如果有个什么工具能描述一下这个q可能的分布就好了,比如用一个概率密度函数来描述一下? 这当然可以,可是我们还需要注意另一个问题,那就是随着n增长观测变多,你每次的概率密度函数该怎么计算?该怎么利用以前的结果更新(这个在形式上和计算上都很重要)?到这里,其实很自然地会想到把bayes theorem引进来,


我们现在用更正规的语言重新整理一下思路。现在有个硬币得到的随机序列:X = (x1,x2,…xn),其中 xi=0 or 1 我们需要基于这n次观察的结果来估算一下q在[0,1]中取哪个值比较靠谱,由于我们不能再用单一一个确定的值描述q,所以我们用一个分布函数来描述:有关q的概率密度函数(说得再简单点,即是q在[0,1]“分布律”)。当然,这应当写成一个条件密度:f(q|X),因为我们总是观测到X的情况下,来猜的q。


根据贝叶斯理论:

p(q|x)=p(x|q)p(q)

带着以上这个结论,我们再来看这个抛硬币问题:连续抛n次,即为一个bernoulli process,则在q确定时,n次抛掷结果确定时,又观察得到k次字的概率可以描述为:
p(x|q)=qk(1−q)n−k

现在在来看 p(q) 。显然,在我们对硬币一无所知的时候,我们应当认为硬币抛出字的概率q有可能在[0,1]上任意处取值。 p(q) 在这里取个均匀分布的密度函数是比较合适的。这样原始变成

p(q|x)=qk(1−q)n−k∫101dq=∫10qk(1−q)n−kdq

它就是一个 β distribution。 β distribution由两个参数 α 、 β 确定;在这里对应的 α=k+1 , β=n+1−k 。而均匀分布的先验密度函数,就是那个 p(q) 也可以被 β distribution描述,这时 α=1 , β=1 。更有意思的是,当我们每多抛一次硬币,出现字时,我们只需要 α=α+1 ;出现头只需要 β=β+1 。这样就能得到需要估计的概率密度p(q|x)… 其实之所以计算会变得这么简单,是因为被beta distribution描述的prior经过bayes formula前后还是一个beta distribution;这种不改变函数本身所属family的特性,叫共轭(conjugate)。


讲到这你应该明白,对于有两个结果的重复Bernoulli trial,我们用beta prior/distribution就能解决。那么加入我们有n个结果呢?比如抛的是骰子?这时候上面的Bernoulli trial就要变成有一次trial有k个可能的结果; Bernoulli distribution就变成multinomial distribution。而beta distribution所表述的先验分布,也要改写成一个多结果版本的先验分布。那就是dirichlet distribution。均匀的先验分布Beta(1,1)也要变成k个结果的Dir(alpha/K)。dirichlet prior也有共轭的性质,所以也是非常好计算的。简而言之,就是由2种外推到k种,而看待它们的视角并没有什么不同。他们有着非常非常非常相似的形式。结论:dirichlet distribution就是由2种结果bernoulli trial导出的beta distribution外推到k种的generalization

LDA 详解 前言本篇博文将详细讲解LDA主题模型,从最底层数学推导的角度来详细讲解,只想了解LDA的读者,可以只看第一小节简介即可。PLSA和LDA非常相似,PLSA也是主题模型方面非常重要的一个模型,本篇也会有的放矢的讲解此模型。如果读者阅读起来比较吃力,可以定义一个菲波那切数列,第 f(n) = f(n-1) + f(n-2) 天再阅读一次,直到这个知识点收敛。如果读者发现文章中的错误或者有改进之处,欢迎交 阅读详情

相关推荐

LDA的直观解释

这篇文章是之前(很久之前了……)看LDA的时候的一些想法,关于LDA介绍的文章很多,推导得很详细的也不少,然而总是觉得不够直观,所以从另外一个角度来考虑了一下这个问题。如果我这里的想法没错的话,我猜LDA的原始论文里可能已经提及了这种解释,不过懒得去翻paper了。 缘起 首先介绍一下LDA。LDA是文本分析里面一个很有名的topic model,它基于一个很简单的词袋模型,通过概率建模,

Entropy 8469

vasp计算压电系数_求助DFTP算出来的压电系数 - 第一原理 - 小木虫 - 学术 科研 互动社区...

我用的VASP5.2 下的LEPSILON-tag算的压电系数和BEC等东西,之前发过类似的贴,不过这次想一起贴上来在好好求助一下:我的INCARSYSTEM=PLPKENCUT=400PREC=NormalISMEAR=0SIGMA=0.05EDIFF=1E-3ISTART=0ICHARG=2IBRION=8POTIM=0.1LEPSILON=.TRUE.LDAU=.TRUE.LDAUTYPE=...

weixin_39986060的博客 1772

基于Sklearn实现LDA算法

文章目录一、LDA算法二、sklearn实现LDA三、结果如图四、总结五、参考 一、LDA算法 1.线性判别分析(Linear Discriminant Analysis, LDA)方法常被用于数据预处理中的降维(dimensionality reduction)步骤。LDA在保证良好的类别区分度的前提下,将数据集向更低维空间投影,以求在避免过拟合(“维数灾难”)的同时,减小计算消耗。 2.计算步骤 计算数据集中不同类别数据的 d 维均值向量。 计算散布矩阵,包括类间、类内散布矩阵。 计算散布矩阵的特征向

醉意丶千层梦的博客 1万+

机器学习笔记之(4)——Fisher分类器(线性判别分析,LDA)

本博文为Fisher分类器的学习笔记~本博文主要参考书籍为:《Python大战机器学习》Fisher分类器也叫Fisher线性判别(Fisher Linear Discriminant),或称为线性判别分析(Linear Discriminant Analysis,LDA)。线性模型对于给定样本,其中为样本的第n种特征。线性模型的形式为:其中,为每个特征对应的权重生成的权重向量。其实这个线性模型也...

gwpscut的博客 5万+

LDA算法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、LDA是什么?二、公式推导三、PCA和LDA的区别总结 前言 线性判别分析(LDA)是一种有监督学习算法,同时经常被用来对数据进行降维。 它是1936年发明的,有些资料上也称之为Fisher LDA。LDA是目前机器学习、数据挖掘邻域中经典且热门的一种算法。 提示:以下是本篇文章正文内容,下面案例可供参考 一、LDA是什么? 线性判别式分析,又称为Fisher线性判别。 找一个投影方向,使得把原来的类别投影到新的方向上

weixin_45936137的博客 8368

lda有监督_我们如何将无监督的LDA更改为半监督的指导LDA

lda有监督by Vikash Singh 由Vikash Singh 我们的创业公司如何从无监督LDA转换为半监督GuidedLDA (How our startup switched from Unsupervised LDA to Semi-Supervised GuidedLDA) This is the story of how and why we had to write our...

cumian8165的博客 2282

LDA 线性判别分析

1. LDA是什么 线性判别式分析(Linear Discriminant Analysis),简称为LDA。也称为Fisher线性判别(Fisher Linear Discriminant,FLD),是模式识别的经典算法,在1996年由Belhumeur引入模式识别和人工智能领域。 基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样

porly的专栏 4万+

Spark LDA

关于LDA的理论部分,参考其他博客(链接待定),本文主要记录spark中LDA的实现。spark1.4版本的LDA原文比较简单,下面主要是以翻译官网为主。理论部分LDA是一个主题模型,它能够推理出一个文本文档集合的主题。LDA可以认为是一个聚类算法,原因如下: 主题对应聚类中心,文档对应数据集中的样本(数据行) 主题和文档都在一个特征空间中,其特征向量是词频向量 跟使用传统的距离来评估聚类不一样的是

乖兔子的专栏 9923

LDA主题模型详解

1.什么是LDA主题模型      LDA(Latent Dirichlet Allocation)是一种文档生成模型。它认为一篇文章是有多个主题的,而每个主题又对应着不同的词。一篇文章的构造过程,首先是以一定的概率选择某个主题,然后再在这个主题下以一定的概率选出某一个词,这样就生成了这篇文章的第一个词。不断重复这个过程,就生成了整片文章。当然这里假定词与词之间是没顺序的。       LDA的使...

yuyinshibiexuexi的博客 5718

机器学习中的数学-线性判别分析(LDA), 主成分分析(PCA)、奇异值分解(SVD)

1、What & Why PCA(主成分分析) PCA,Principal components analyses,主成分分析。广泛应用于降维,有损数据压缩,特征提取和数据可视化。也被称为Karhunen-Loeve变换 从降维的方法角度来看,有两种PCA的定义方式,方差最大和损失最小两种方式。这里需要有一个直观的理解:什么是变换(线性代数基础)。

不曾走远的博客 2293

零基础看懂LDA主题模型

什么是LDA? L主题模型是怎样运作的? LDA是如何看待文章和主题的? LDA如何知道哪几个词汇是同一个主题的呢? 使用吉布斯抽样使主题分布收敛 Gibbs sampling(吉布斯抽样) 狄里克雷分布

深入浅出讲解LDA主题模型(一)

最近总是遇到主题模型LDA(Latent Dirichlet Allocation),网上的博客写的天花乱坠而不知所以然,无奈看了最厚的《LDA数学八卦》,观完略通一二,记录于此~顺便放两张遇到的图,挺有意思的,共勉吧: 主题模型 首先我们来看什么叫主题模型~我们来考虑一个问题:判断文本相关程度。怎么判断呢?是看相同词语出现的次数来判断吗(TF-IDF)?显然这太草率了。从内容角度来讲

欢迎来到我的酒馆 2万+

腾讯Octop:Windows本地AI助手一键安装实战指南

本地AI助手是面向普通用户在个人设备上运行大语言模型的轻量级解决方案,其核心原理在于封装模型加载、推理调度与Web交互等底层复杂性,通过预编译运行时、自适应硬件加速和图形化配置降低使用门槛。技术价值体现在免环境依赖、离线可用、开箱即用,显著提升非开发者在专利撰写、文案生成、技术文档处理等办公场景中的生产力。本文聚焦Windows平台下的腾讯Octop工具,结合qwen2-7b-instruct、phi-3-mini等主流GGUF量化模型,详解安装适配、API集成与专利辅助工作流,覆盖从零部署到工程落地的完整

weixin_29055137的博客 307

LDA算法——线性判别

一、前言 之前我们已经介绍过PCA算法,这是一种无监督的降维方法,可以将高维数据转化为低维数据处理。然而,PCA总是能适用吗? 考虑如下数据点: 由PCA的原理我们可知,这些数据点在经PCA处理后会被映射到x轴上,如下所示: 可以发现,投影后,红色数据点和蓝色数据点并不能很好地区分开。思考其背后的原因,在这个例子中,我们的数据点有了类别标签,而PCA是一种无监督学习算法,它会对所有类别的数据点一视同仁,所以在分类问题中,P...

weixin_44167798的博客 9594

ADC选型实战:从参数指标到精准应用的工程指南

本文深入解析ADC(模数转换器)选型的关键参数与实战技巧,涵盖分辨率、转换误差等核心指标,并提供高精度温度测量、高速数据采集等五大应用场景的选型指南。通过实际案例和代码示例,详细讲解校准方法、功耗优化策略及常见问题排查,帮助工程师实现从参数指标到精准应用的工程实践。

weixin_29166013的博客 326

PX4自定义uORB消息与MAVLink消息映射实战:从飞控到QGC地面站完整流程解析

本文详细解析PX4飞控中自定义uORB消息与MAVLink消息映射的完整流程,涵盖从飞控内部消息定义、MAVLink消息创建到QGC地面站接收显示的全链路实践。重点介绍如何使用mavlink inspector工具进行调试,解决版本兼容性和多实例消息处理等常见问题,为无人机开发者提供可靠的实时数据监控方案。

ll5678的博客 1067

LDA主题模型

一、LDA主题模型简介 LDA(Latent Dirichlet Allocation)中文翻译为:潜在狄利克雷分布。LDA主题模型是一种文档生成模型,是一种非监督机器学习技术。它认为一篇文档是有多个主题的,而每个主题又对应着不同的词。一篇文档的构造过程,首先是以一定的概率选择某个主题,然后再在这个主题下以一定的概率选出某一个词,这样就生成了这篇文档的第一个词。不断重复这个过程,就生成了整篇文章...

专注Java(全栈)应用开发,求知若渴,虚心若愚,talk is cheap, show me the code. 1万+

01 Aras Innovator二次开发实战:从IOM到AML的完整交互指南

本文详细介绍了Aras Innovator二次开发实战,从IOM到AML的完整交互指南。通过JavaScript和C#代码示例,展示了如何在客户端和服务端使用IOM进行开发,并深入解析AML语言的基础语法和调试技巧。文章还提供了文档管理和BOM管理等典型场景的实战案例,帮助开发者快速掌握Aras Innovator二次开发的核心技术。

wind6的博客 650

秒懂---LDA算法

线性判别分析LDA原理总结     在主成分分析(PCA)原理总结中,我们对降维算法PCA做了总结。这里我们就对另外一种经典的降维方法线性判别分析(Linear Discriminant Analysis, 以下简称LDA)做一个总结。LDA在模式识别领域(比如人脸识别,舰艇识别等图形图像识别领域)中有非常广泛的应用,因此我们有必要了解下它的算法原理。     在学习LDA之前

zhaoguanghua0407的博客 2万+

PYNQ开发板使用-使用DMA进行数据搬移(Simple DMA transfer 模式)

该篇是学习使用PYNQ开发板,实际上是对ZYNQ PL端AXI_CDMA 核的应用。实验步骤参照官网的教程,一步一步地做,但是由于在硬件资源布置方面与官方教程稍有出入,所以在SDK的源码里也进行了修改。 AXI_CDMA特性: 如果是使用ZYNQ 7系列芯片(可能其他Xilinx也是通用的),xilinx的AXI_CDMA 核有两种传输模式:轮询(poll)和中断(...

YGLeeeon的博客 3521

【全覆盖算法】栅格地图实现布氏单元分解算法+栅格地图实现牛耕Boustrophedon Cellular Decomposition Path Planning

本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。

qq_35635374的博客 282

【LDA 01篇】图解LDA原理

不涉及复杂的公式推理,尽量用大白话讲明白LDA的基础原理。

weixin_71246590的博客 4290

【TC3xx芯片】TC3xx DMA模块详解

TC3xx DMA模块详解

qq_36056498的博客 5917

LDA详解

LDA是一个生成式模型,是一个无监督模型 1. 输入:LDA的最小单元输入是文档,不管文档里有多少个字 2. 模型参数: :是针对每个文档都有一个主题的概率分布,这时得到参数,是一个K维的向量,K是主题个数 :V*K的矩阵,其中,K是主题个数,V是词库里的单词个数,矩阵中的每个位置是该单词分为某个主题的概率 (注意:LDA时无监督算法,不需要标注,数据放到模型中会自动学习每个文档的主题分布和主题的词分布,也就是模型参数) 3. 假设: 每个文档属于多个主题。 为了更好的理解LDA是一..

Ona_Soton的博客 1万+

PyTorch深度学习实战(47)——使用PyTorch构建Transformer模型

相较于传统模型,如循环神经网络 (RNN),Transformer 的优势在于能够理解输入和输出序列中元素之间的关系,在大语言模型 (如 ChatGPT 和 DeepSeek) 的发展中起到了关键作用,为了从零开始构建 Transformer,首先探讨自注意力机制,包括查询 (query)、键 (key) 和值 (value) 向量,以及缩放点积注意力 (SDPA)。将层归一化和残差连接集成到多头注意力层中,并与前馈层结合,构建编码器层,堆叠编码器层构建编码器,还将实现 Transformer 中的解码器。

盼小辉丶的博客 3万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

上一篇: 深入浅出LDA(3)
下一篇: Beta分布,二项分布,Dirichlet分布,多项式分布新解
相国大人
博客等级 码龄10年 1009粉丝 132原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值