深入浅出LDA(2)

线性判别分析(LDA)的Pytorch实现 一、概述 定性阐述LDA原理,并给出LDA的推导过程,最后结合代码给出LDA实际应用案例。在本文最后给出Python的全部代码。 二、线性判别分析(LDA)的原理 阅读详情

0. 阅读说明

与LDA紧密相关的必要且最小知识集合为博文的正文。凡是灰色框中的内容为拓展和补充内容,直接跳过并不会影响你的理解。灰色框指的是如下形式的段落:

这是一个灰色框示意段落
这部分内容为补充性内容,直接跳过并不会影响你的理解

1 β 分布

1.1 β 分布

β 分布的概率密度为:

f(x)=⎧⎩⎨⎪⎪1B(α,β)xα−1(1−x)β−1,0,x∈[0,1]others(1.1)

其中:
B(α,β)=∫10xα−1(1−x)β−1dx=Γ(α)Γ(β)Γ(α+β)(1.2)

图像:
这里写图片描述

1.2 如何更好的理解 β 分布?

这里写图片描述

此时 X(k) 的分布即为 β 分布

1.2.1 第一种理解(很流行但是不推荐)

这种理解方式,我不推荐,尽管网上“争相抄袭”

以下内容来自:
LDA-math-认识Beta/Dirichlet分布(1)
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述


1.2.2 第二种理解(推荐)

回顾 beta 分布:
β 分布的概率密度为:

f(x)=⎧⎩⎨⎪⎪1B(α,β)xα−1(1−x)β−1,0,x∈[0,1]others(2.3.1)

其中:
B(α,β)=∫10xα−1(1−x)β−1dx=Γ(α)Γ(β)Γ(α+β)(2.3.2)


假设一枚硬币正面朝上的概率为 x ,则反面朝上的概率为1−x,现在我投掷100次,30次朝上,于是我会认为,x=0.3. 现在我再做一组试验,投掷100次29次朝上,这一次我认为 x2=0.29 ,这样,我不断地一组一组做。我就会得到很多x。

如图所示:
这里写图片描述
横轴为x的取值。纵轴为x取得某一值出现的次数。这条曲线是一条有零点0,1的曲线,因此根据高中的知识,我们就可以设这条曲线为:

f(x)=xα−1(1−x)β−1

但是,这条曲线还不能说是概率密度函数,因为它在定义域上的积分为必为1.为了保证为1我们可以令曲线与x轴围成的面积为 B(α,β) ,这样我们可以构造一个概率密度函数:
f(x)=⎧⎩⎨⎪⎪1B(α,β)xα−1(1−x)β−1,0,x∈[0,1]others(2.3.1)

B(α,β)=∫10xα−1(1−x)β−1dx=Γ(α)Γ(β)Γ(α+β)(2.3.2)
即为面积。至于说这个等式右边怎么来的?这里给出以下 三种解答:

解答一:

假设 a=α−1,b=β−1 并为令b为正整数。那么通过分部积分,可以得到:

B(a,b)=1⋅2⋯b(a+1)(a+2)⋯(a+b+1)=Γ(a+1)Γ(b+1)Γ(a+1+b+1)=Γ(α)Γ(β)Γ(α+β)

可以证明,当b不是整数时,在实数域上仍然是良定义的。
如下所示:

解答二:

这里写图片描述

解答三:

这里写图片描述

1.3 β 分布的性质

期望:
这里写图片描述

2. 共轭先验

2.1 共轭先验和共轭分布

这里写图片描述

2.2 β 分布与二项分布的共轭关系

这里写图片描述
这里写图片描述

2.3 伪计数

这里写图片描述

2.4 共轭先验的意义

以后只要我们说:“A的共轭先验是B”,这句话的意思就是说B分布=A分布 × B分布

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

相关推荐

LDA 详解

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

David's Notes 1万+

概率论复习 – 基础概率分布

概率论复习 – 基础概率分布 Posted on 2012 年 3 月 21 日 by 恒 发现对概率论的基本概念理解不是很深入,导致看后面的东西时常有些莫名其妙的疑惑,回头来看看概率论与统计 1. 累积分布函数(CDF – Cumulative distribution function 或直接就叫 distribution function)        

lionzl的专栏 1489

LDA的直观解释

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

Entropy 8469

线性判别分析(Linear Discriminant Analysis)(二)

4. 实例       将3维空间上的球体样本点投影到二维上,W1相比W2能够获得更好的分离效果。             PCA与LDA的降维对比:             PCA选择样本点投影具有最大方差的方向,LDA选择分类性能最好的方向。       LDA既然叫做线性判别分析,应该具有一定的预测功能,比如新来一个样例x,如何确定其类别?       拿二值分来来

ytlcainiao的专栏 1295

LDA处理文本

文章目录LDA处理文本LDA简单介绍LDA生成过程LDA整体流程LDA操作过程上手过程doc2bow函数主题推断词和主题的关系单个词和主题的关系全部词和主题的关系每个主题,所有词概率和为1参考资料 LDA处理文本 LDA简单介绍 LDA是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构。我们认为一篇文章的每个词都是通过以一定概率选择了某个主题,并从这个主题中以一定概率...

张酒肉的博客 4917

【NLP】使用 LSA、PLSA、LDA 和 lda2Vec 进行主题建模

​ 本文是对主题建模及其相关技术的更新全面概述。在自然语言理解(NLU)任务中,有一个镜头层次结构,通过它我们可以提取含义 - 从单词到句子到段落到文档。在文档级别,理解文本的最有用方法之一是分析其主题(另请参阅NER)。在文档集合中学习、识别和提取这些主题的过程称为主题建模。​

gongdiwudu的专栏 5127

白板推导系列Pytorch-线性判别分析(LDA)

白板推导系列Pytorch-线性判别分析(LDA) 导入所需的包 import torch from sklearn.datasets import make_classification from sklearn.linear_model import Perceptron import torch.nn.functional as F import matplotlib.pyplot as plt 生成数据集 X, y = make_classification(n_samples=1000, n_f

孤独腹地的博客 2773

torch-decomposition:使用 Torch7 进行成分分析(PCA、Whitened PCA、LDA、LPP、NPP、FastICA)

Torch7的分解模块 主成分分析 (PCA) 白化主成分分析 (W-PCA) 线性判别分析 (LDA) 局部保护投影 (LPP) 邻里保护预测 (NPP) 快速独立分量分析 (FastICA) 约翰-亚历山大·阿塞尔 安装 克隆此存储库或下载源代码。 用法 调用decomposition = require "decomposition" ,然后是以下任何一项: decomposition.pca(x) , decomposition.lda(x, y) , decomposition.lpp(x) , decomposition.npp(x) , decomposition.fastica(x) 。 或者,您可以使用 iTorch notebook 并打开decomposition.ipynb 。 贡献 叉它! 创建您的功能分支: git checkout

我的机器学习/深度学习之路--LDA线性判别分析

帮助读者快速应用理解LDA,并提出了一种确定阈值的方法

weixin_49164676的博客 5465

零基础看懂LDA主题模型

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

Nordic nRF52832实战:手把手教你搭建智能手环BLE通信框架(附完整代码)

本文详细介绍了如何使用Nordic nRF52832芯片搭建智能手环的BLE通信框架,涵盖芯片优势、协议栈初始化、低功耗广播策略及健康数据服务实现。通过完整代码示例和架构设计,帮助开发者快速掌握蓝牙低功耗通信技术,适用于可穿戴设备开发。

weixin_29192141的博客 247

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

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

欢迎来到我的酒馆 2万+

雷电模拟器+Python 3.11:手把手教你用Frida-dexdump给安卓APK脱壳(附GDA查壳)

本文详细介绍了如何使用雷电模拟器和Python 3.11配合Frida-dexdump工具进行安卓APK脱壳的全流程。从环境配置、工具安装到脱壳操作和问题排查,提供了包含30+关键截图的保姆级教程,适合零基础用户快速上手。重点讲解了Frida工具链的使用技巧和GDA查壳方法,帮助读者掌握移动应用安全分析的基础技能。

weixin_42568801的博客 328

LDA算法——线性判别

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

weixin_44167798的博客 9594

张正友标定法-MATLAB实验

该方法最早由微软研究院的Zhengyou Zhang教授提出,1998年发表在IEEE TRANSACTIONS ON PATTERNANALYSIS AND MACHINE INTELLIGENCE,论文题目为:AFlexible New Technique for Camera Calibration。 (一)标定平面到图像平面的单应性 单应性(homography):在计算机视觉中被定义

qq_37845624的博客 8289

CANoe信号传输故障排查指南

本文提供了全面的CANoe信号传输故障排查指南,涵盖从硬件连接、通道配置到软件脚本与数据库加载的全链路诊断。针对常见的通道指示灯不亮、信号无法发送及ECU握手失败等问题,给出了基于CANoe工具和CAPL脚本的详细排查步骤与解决方案,帮助工程师系统化定位并解决实车测试中的通信故障。

ice55的博客 258

一文读懂如何用LSA、PSLA、LDA和lda2vec进行主题建模

本文是一篇关于主题建模及其相关技术的综述。文中介绍了四种最流行的技术,用于探讨主题建模,它们分别是:LSA、pLSA、LDA,以及最新的、基于深度学习的 lda2vec。 在自然语言理解任务中,我们可以通过一系列的层次来提取含义——从单词、句子、段落,再到文档。在文档层面,理解文本最有效的方式之一就是分析其主题。在文档集合中学习、识别和提取这些主题的过程被称为主题建模。 在本文中,我们将通过 4 种最流行的技术来探讨主题建模,它们分别是:LSA、pLSA、LDA,以及最新的、基于深度.

taoqick的专栏 2059

16、树莓派Pico W:蓝牙与Wi-Fi应用指南

本文介绍了树莓派Pico W在蓝牙与Wi-Fi通信方面的应用,涵盖蓝牙配对原理、使用HC-06模块实现手机远程控制LED和传输内部温度,以及通过Wi-Fi进行网络连接、扫描和UDP协议下的设备控制。文章包含详细电路连接、代码实现与测试步骤,并提供拓展建议、常见问题解决方法及开发注意事项,帮助读者快速掌握基于Pico W的无线通信项目开发,适用于物联网入门与实践场景。

sun99的博客 289

【NLP】LDA2Vec笔记(基于cemoody/lda2vec 未实现)

学习链接:https://blog.youkuaiyun.com/u010161379/article/details/51250109 目录 说明 理论 __init__.py 简介 修改+注释后代码 corpus.py 简介 preprocess.py 准备工作 定义tokenize函数 preprocess.py完整代码(注释版) examples: hacker_news ...

越努力,越幸运 5308

基于Dijkstra算法的共享单车调度优化系统设计与实现

根据最新统计数据,全球共享单车市场规模已超过300亿美元,中国作为最大的共享单车市场,日订单量超过5000万次。Dijkstra算法由荷兰计算机科学家Edsger W. Dijkstra于1956年提出,用于解决带权有向图中的单源最短路径问题。本文详细介绍了基于Dijkstra算法的共享单车调度优化系统的设计与实现。本文将详细介绍基于Dijkstra算法的共享单车调度优化系统的设计与实现,采用Java 17、Spring Boot 3.x等最新技术栈。

2201_76125393的博客 618

Dify 第 2 篇 Dify 插件离线安装

Dify是一个支持插件扩展的AI平台,其插件市场提供5种类型插件(模型、工具、Agent策略、扩展、插件包)。由于默认pip安装速度慢,可通过dify-plugin-repackaging工具将插件转换为离线包(使用阿里云镜像加速)。该工具提供两种方式:1)自备Python环境执行脚本;2)使用Docker环境(推荐)。脚本支持从Dify市场或GitHub下载插件,并重新打包为含依赖的离线包,便于通过"本地插件"方式快速安装。

甘蓝的专栏 1264

LDA主题模型

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

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

《低功耗方法学》翻译——第一章:介绍

第一章:介绍

记录所学,分享知识,结识挚友 2069

LDA2Vec 深度指南

**LDA2Vec** 是一个用于自然语言处理(NLP)的开源框架,它结合了[Word2Vec](https://papers.nips.cc/paper/5021-distributed-representations-of-words-and-phrases-and-their-compositionality.pdf)和[LDA(Latent Dirichlet Allocation)](h...

gitblog_00163的博客 1015

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

LDA2vec: LDA + word2vec

LDA2vec:Christopher Moody在2016年一月提出的一种新的主题模型算法。 学习资源如下 github:https://github.com/cemoody/lda2vec PPT分享:http://pan.baidu.com/s/1gewC1mb LDA2vec与LDA的简单比较:http://www.datasciencecentral.com/profiles/b

柯小黑的博客 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

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

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值