ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:572.48KB ,
资源ID:8559435      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8559435.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(技术报告SVD与LDA.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

技术报告SVD与LDA.docx

1、技术报告SVD与LDASVD与LDA一、矩阵的奇异值分解(Singular Value Decomposition,SVD)1. 矩阵的奇异值定义设C是M x N实矩阵,称n阶方阵CTC的非0特征值的算术平方根为矩阵C的奇异值。2. 矩阵的奇异值分解定理SVD(Single Value Decomposition),即奇异值分解,是潜在语义索引的理论基础。它是线性代数中有关矩阵分解的一个理论。设A是秩为r的mn阶实矩阵,则存在m阶正交阵U和n阶正交阵V,使得 (1)其中,矩阵U、S和V分别为mm、mn和nn维的矩阵。矩阵U的各列为AAT的特征向量,矩阵V的各列为ATA的特征向量。且矩阵AAT和

2、矩阵ATA的特征值均为1, ,r(i0,i=1,2,r),设 ,则。即矩阵S为对角阵,S中的对角元素称为奇异值。图1给出了一个奇异值分解的示例。图1 SVD分解图示Fig. 1 An example of SVDSVD分解能被用来计算最优的low-rank approximation,即SVD分解能得到原矩阵的最优低阶近似。这转化为一个近似问题,即:找到秩为k的矩阵Ak,使得 (2)其中,称为Frobenius error,Ak和X均为mn的矩阵。kr。在SVD中,解决办法是采用Truncated SVD。即将SVD分解中的对角矩阵中的后面r-k个对角元素置为0,只保留前k个对角元素。因为对角

3、元素是按照从大到小降序排列的,这样一来,就能保持在降维的情况下,还能保证最小错误率(minimum Frobenius error)。 Truncated SVD的公式是: (3)矩阵Ak也可以表示成: (4)图2是Truncated SVD的一个示例。图2 Truncated SVD分解图示Fig. 2 An example of Truncated SVD3. 低阶近似 LSA潜在语义分析中,低阶近似是为了使用低维的矩阵来表示一个高维的矩阵,并使两者之差尽可能的小。给定一个M x N矩阵C(其秩为r)和正整数k,我们希望找到一个M x N矩阵Ck,其秩不大于K。设X为C与Ck之间的差,X=

4、C Ck,X的F-范数为 (5)当k远小于r时,称Ck为C的低阶近似,其中X也就是两矩阵之差的F范数要尽可能的小SVD可以被用与求低阶近似问题,步骤如下: (1)给定一个矩阵C,对其奇异值分解: (6)(2)构造,它是将的第k+1行至M行设为零,也就是把的最小的r-k个(the r-k smallest)奇异值设为零。 (3)计算Ck: (7)对文本分类,SVD中的矩阵A即是词项-文本矩阵(term-document vector matrix),矩阵U即是词项-概念矩阵(term-concept vector matrix),V即是概念-文档矩阵(concept-document vecto

5、r matrix),矩阵S是奇异值矩阵,它是对角阵。由于在文本中,词项-文本矩阵的维数(m,n)经常是几万维,矩阵的秩也是上千维。因此,采用Truncated SVD的方式进行降维处理,在文本分类领域就显得尤为重要。实际中,通过利用Truncated SVD进行low-rank approximations,矩阵的秩可以降到100-300维,同时,能保证分类的效果不出现明显的下降。潜在语义空间与原来的空间(VSM)相比,空间维数要小的多。因此,LSI其实是一种降维方法。通过采用Truncated SVD,能使得特征空间的维度进一步的下降。但同时,LSI的特点是它获取的新的维度在直观上无法给出解

6、释,这一点不同于特征选择的降维方法。4. 潜在语义索引示例为了更好的理解潜在语义索引方法在文本分类领域的应用。下面举一个简单的例子。图3是一个词项-文本矩阵A。每一行表示一个词项特征,每一列表示一篇文档。行列元素的值表示该词项是否在对应的文档中出现,如果出现,元素值为1,否则,元素值为0。图3 词项-文档矩阵示例Fig. 3 An term-document vector matrix对该矩阵进行SVD分解,得到如下三个矩阵,即词项矩阵U、文本矩阵VT和奇异值矩阵S。图4,图5和图6分别表示这三个矩阵。图4 词项-概念矩阵示例Fig. 4 An term-concept vector matr

7、ix图5 概念-文档矩阵示例Fig. 5 An concept-document vector matrix图6 奇异值矩阵示例Fig. 6 An single value vector matrix其中,矩阵U和矩阵VT中的数字(1,2,5)是空间维度标号。采用Truncated SVD的方法,只保留前2个最大的奇异值,得到新的奇异值矩阵S2,如图7所示。图7 新的奇异值矩阵Fig. 7 A new single value vector matrix再次计算,得到新的矩阵A2,如图8所示。图8 新的词项-文档矩阵Fig. 8 The new term-document vector mat

8、rix二LDA(Latent Dirichlet Allocation)模型LDA模型是目前应用最广泛的一种概率主题模型,它具有比其他模型更全面的文本生成假设。LDA模型对pLSI模型存在的两个问题提出了修正,克服了pLSI模型的缺点:区别于pLSI模型当中的特征矩阵,LDA在主题-类别层的表示上,采用了一个Dirichlet概率分布。这是一个连续分布,可以给未知文本分配属于某个主题集的概率;去掉了文本标签这个表示,因此取消了原来对于文本标签的先验概率表示,取而代之的是直接从一个主题分布当中选择合适的主题集合。此外,LDA模型还在模型上更符合现实语义条件。比如在主题的选取上,pLSI模型需要先

9、确定一个文本类别标签,然后根据这个标签产生主题分布,不同主题之间在概率上是相互独立的,而LDA通过Dirichlet分布产生的是一个主题的集合,这个集合不是pLSI当中的一系列独立参数,而是以隐含的随机变量来表示,因此对于现实世界的语义,具有更强的描述能力。有学者指出,pLSI模型是LDA模型在Dirichlet分布退化到一元时的一个特例(Girolami et al,2003)。LDA模型继承了pLSI生成模型的所有优点,不需要加入理想化条件,可以更接近真实的去描述一个语义模型1. LDA模型的基本思想LDA是一种对离散数据集(如文档集)建模的概率增长模型,是一个三层贝叶斯模型,是一种对文本

10、数据的主题信息进行建模的方法,对文档进行一个简短的描述,保留本质的统计信息,有助于高效地处理大规模的文档集。如图9(a)所示,它假设文档集合(顶部大圆)可以分成若干隐含主题(底部小圆),而这些隐含主题拓扑结构是线性的,进一步利用概率推断算法可以将单个文档表示为这些隐含主题特定比例的混合。如图9(b)所示,LDA模型是典型的有向概率图模型,具有清晰的层次结构,依次为文档集合层、文档层和词层。 LDA模型由文档集合层的参数(,)确定,其中反映了文档集合中隐含主题间的相对强弱,刻画所有隐含主题自身的概率分布。随机变量e表征文档层,其分量代表目标文档中各隐含主题的比重。在词层,z表示目标文档分配在每个

11、词上的隐含主题份额,w是目标文档的词向量表示形式。图9 LDA模型Fig. 9 LDA model下面是LDA模型应用于文档集主题建模的符号约定:(1)词是文本数据的基本单元,是用1V索引的词表的分项。词表中的第v个词用一个V维的向量w表示,其中对于任意,。(2)文档是N个词的序列,用d=wl,w2,wn表示,wn是序列中的第n个词。 (3)文档集是M个文档的集合,表示成D=d1,d2,dMLDA概率主题模型生成文本的过程如下:(1)对于主题j,根据Dirichlet分布Dir切)得到该主题上面的一个单词多项式分布向量。(2)根据泊松分布Poisson()得到文本的单词数目N。(3)根据Dir

12、ichlet分布Dir(a)得到该文本的一个主题分布概率向量。(4)对于该文本N个单词中的每一个单词Wn:a)从的多项式分布Multinomial()随机选择一个主题kb)从主题k的多项式条件概率分布Multinomial()选择一个单词作为Wn假设有k个主题,则文档d中的第i个词汇琳的概率可以表示为如下: (8)其中,z,是潜在变量,表示第i个词汇wi取自该主题,是词汇wi属于主题j的概率,给出文档d属于主题j的概率。第j个主题表示为词表中V个词的多项式分布,文本表示成K个隐含主题上的随机混合。于是文本d中“发生”词汇w的概率为: (9)通过EM(期望最大化算法)求最大似然函数: (10)的

13、最大似然估计量、,估计、的参数值,从而确定LDA模型。其中文本d“发生” 的条件概率分布 (11)存在,配对,无法计算出解析式,需要求出近似解。LDA模型的关键变量是主题一单词分布功和主题分布e。显然,通过可采用Laplace近似、变分推理(variationalInferenCe)、GibbS抽样以及期望一扩散(Expectati。nPropagati。n)等近似推理算法获取待估参数值。ThomaSL.GriffithS32等人提出GibbS抽样在困惑度和运行速度方面均优于变分推理和期望一扩散算法。2. 模型描述文本中的主题z的分布为P(z),对于给定的某个主题z,该主题上面的单词概率分布为

14、P(w|z)。我们用P(zi=j)表示生成第i个单词时第j个主题被选中的概率,P(wi|zi=j)表示通过主题j选中单词wi的概率。因此文本中单词的概率分布可以表示为: (12)其中T表示主题数目。为方便起见,令表示单词在主题j上面的多项式分布, 表示主题在文本d上面的多项式分布LDA模型采用Dirichlet分布作为多项式分布和的共轭先验,简化了模型的统计推导,对于T维多项式分布,对应的Dirichlet分布概率密度为: (13)参数称为多项式的超参数,j可以看作文本中主题j出现次数的先验观测,即在采样文本当中任何一个实际的单词之前就假定主题j已经出现了j次。为了简化模型,LDA采用了均衡的

15、Dirichlet分布,即令超参数,显然,Dirichlet先验分布通过超参数能够平滑多项式的分布,防止对数据集产生过度拟合问题。图10 LDA模型Fig. 10 LDA model图10是LDA模型的一个图形示意图,超参数、分布通过Dirichlet分布Dir()、Dir()控制主题分布和主题上的单词分布,和再共同决定文本中的每个单词w。对于文本d,它的所有已知和潜在变量的联合分布为:定文本中的每个单词w。对于文本d,它的所有已知和潜在变量的联合分布为:(14)消去变量,得到文本的似然值 (15)对于整个文本集D,其似然值为: (16)LDA概率主题模型生成文本的过程如下:1.对于每个主题j

16、,根据Dirichlet分布Dir()得到该主题上的一个单词多项式分布向量(j)2.根据泊松分布Poisson()得到文本的单词数目N3.根据Dirichlet分布Dir()得到该文本的一个主题分布概率向量4.对于该文本N个单词中的每一个单词wna)从的多项式分布Multinomial()随机选择一个主题kb)从主题k的多项式条件概率分布Multinomial(k)选择一个单词作为wn3. 抽取算法LDA模型的关键变量是主题-单词分布和文本上的主题分布。显然,通过公式(16)运用极大化似然值方法直接求出这些变量的精确值是不现实的。目前抽取LDA模型的方法有变分法(Blei et al,2003

17、)、期望最大化(Expectation Maximization,EM)(Minka et al,2002)及Gibbs抽样算法(Griffiths et al,2004)。其中变分法得到的模型与真实情况有所偏差,而EM算法往往由于似然函数的局部最大化问题导致无法找到最优解。Gibbs抽样是一种马尔科夫链蒙特卡洛方法(Markov chain Monte Carlo,MCMC),它容易实现并且能够非常有效地从大规模文集中抽取主题。因此,Gibbs抽样算法成为当前最流行的LDA模型抽取算法。与其他算法不同,Gibbs抽样算法并不直接计算每个文档的主题-单词分布和主题分布。根据文档中可见的单词序列

18、,通过求出z的后验分布(即把文档中每个单词赋予某个主题),间接地统计出主题-单词分布和主题分布。每个单词i对应的主题变量zi被赋予1,2,T中的某个整数t,代表这个单词对应的是第t个主题。对于文本集合里面的每一个词符(word token)i,我们用wi和di分别表示它的词汇索引和文档索引。Gibbs抽样过程逐个处理文本集里的每个词符,在已知其他词符的主题分布的条件下,估算当前词符属于每个主题的可能性。基于这种条件分布,重新选择某个主题作为当前词符的主题。我们把该条件分布记为,其中zi =j表示把主题j赋给词符i作为其主题,z-i表示除当前词符外的其他所有词符的主题赋值,i表示其他所有的已知或

19、可见的信息,如其他所有词符的词汇索引w-i和文档索引d-i,以及超参数和。这个条件分布的计算公式如下(Steyvers et al,2007): (17)其中,CWT、CDT分别是WT、DT维的整数矩阵;为除当前词符i外单词w被赋予主题j的次数,表示除当前词符i外文档d中的词符被标注为主题j的次数。注意上式中的概率是为归一化的,一个词符被标注为主题j的实际概率是上式中的值除以对应所有主题的概率之和。在上式中可以看出,对于给定的一个词符,影响主题标注的因素包括式子的两部分。左边的部分对应单词w在主题j上的概率,右边的部分对应在文档d的当前主题分布上主题j出现的可能性。一旦一个单词的很多词符被标注

20、为主题j,该单词的其他任何一个词符被标注为主题j的概率就会增加。同时,如果主题j在同一个文档中多次出现,在该文档出现的任何单词被标注为主题j的概率也会增加。因此,对单词的主题标注取决于单词在主题上的分布以及主题在文档中的分布。Gibbs抽样算法在刚开始时随机赋予每个词符1,.,T中的一个主题。对于每个词符,计数矩阵CWT和CDT中对应当前单词和赋予的主题的值减1。然后,根据上式的分布抽样一个新的主题,同时计数矩阵CWT和CDT中对应的值加1。在每一轮Gibbs抽样中,文本集中所有N个词符都被轮流重新赋予一个新的主题。在抽样过程的前期阶段,由于对后验概率的模拟不够充分,Gibbs抽样的结果还不是

21、很精确。过了前期阶段以后,Gibbs抽样的结果开始逼近我们的目标分布并最终处于一个与目标分布相近的稳定状态。抽样过程直接给出了每个单词的z估计。通过对z的统计,我们可以得到和的近似值和: (18)为了获取词汇的概率分布, 本文没有将 和 作为参数直接计算, 而是考虑词汇对于主题的后验概率P(wjz) ,利用Gibbs 抽样间接求得 和 的值. MCMC 是一套从复杂的概率分布抽取样本值的近似迭代方法, Gibbs 抽样作为MCMC 的一种简单实现形式, 其目的是构造收敛于某目标概率分布的Markov 链, 并从链中抽取被认为接近该概率分布值的样本. 于是目标概率分布函数的给出便成为使用Gibb

22、s 抽样的关键. 对于本文的LDA 模型, 仅仅需要对主题的词汇分配, 也就是变量zi 进行抽样. 记后验概率为P(zi = jjzi;wi), 计算公式如下: (19)其中, zi = j 表示将词汇记号wi 分配给主题j, 这里wi 被称为词汇记号是因为其不仅代表词汇w, 而且与该词所在的文本位置相关, zi 表示所有zk(k 6= i) 的分配. n(wi)i;j 是分配给主题j 与wi 相同的词汇个数; n(:)i;j 是分配给主题j 的所有词汇个数; n(di)i;j 是文本di 中分配给主题j 的词汇个数;n(di)i;: 是di 中所有被分配了主题的词汇个数; 所有的词汇个数均不

23、包括这次zi = j 的分配.Gibbs 抽样算法详述如下1) zi 被初始化为1 到T 之间的某个随机整数. i 从1 循环到N, N 是语料库中所有出现于文本中的词汇记号个数.此为Markov 链的初始状态.2) i 从1 循环到N, 根据式(3) 将词汇分配给主题, 获取Markov 链的下一个状态.3) 迭代第2) 步足够次数以后, 认为Markov 链接近目标分布, 遂取zi (i 从1 循环到N) 的当前值作为样本记录下来. 为了保证自相关较小, 每迭代一定次数, 记录其他的样本. 舍弃词汇记号, 以w 表示唯一性词, 对于每一个单一样本, 可以按下式估算 和 的值:其中, n(w

24、)表示词汇w 被分配给主题j 的频数; n(:)j 表示分配给主题j 的所有词数; n(d)j 表示文本d 中分配给主题j 的词数; n(d): 表示文本d 中所有被分配了主题的词数.Gibbs 抽样算法从初始值开始运行, 迭代足够次b 后认为样本接近目标概率分布, 然后每隔一定次数c 抽取样本, b称为Burn-in 间距, c 称为Thinning 间距. b 和c 的取值比较难于确定, 一般与特定的语料库相关. 如果所构造Markov链的相邻状态间关联较小, b, c 以较小的值可满足需要, 但如果相邻状态间的关联较大, 就必须增大b, c 的取值, 方可降低自相关。4. 基于LDA模型

25、的文本分类基于LDA模型的文本文类方法使用LDA为语料库及文本建模。应用贝叶斯统计理论中的标准方法,确定最优主题数T。利用MCMC(MarkovChainMonteCarl。)中的Gibbs抽样进行推理,间接计算模型参数,获取文本在主题集上的概率分布,d一K,KZ,K:,T为主题数。在文档集的隐含主题一本矩阵上训练SvM33,构造文本分类系统。主要包括预处理,模型选择,语料库建模,分类方法,效果评估5个部分。分类的具体步骤如下:(1)预处理在中文文本分类主要指中文分词和去除停用词,语料库经过中科院计算所汉语词法分析系统工CTCLAS进行分词,并去除停用词。在英文文本分类中,主要是指用Snowb

26、all中orterZ)的Steing功能提取词干,形成特征候选值的集合,去除停用词。(2)应用贝叶斯统计理论中的标准方法,推理出有效信息尸(w约,确定最优主题数T,使模型对于语料库数据中的有效信息拟合最佳。(3)采用LDA模型对语料库进行主题建模,参数推理采用Gibbs抽样,迭代足够多的次数,每个文本表示固定隐含主题集上的概率分布。得到文档集的隐含主题一文本矩阵再xJ,t表示隐含主题集的主题数量,d表示文档数。(4)在LDA模型建模得到的文档集的隐含主题一文本矩阵上训练支持向量机(SVM),构造文本分类器,得到SVM分类模型。(5)将预处理后的待分类文本作为式3.16中的文本d,运行GibbS

27、抽样算法,迭代较少的次数,按式3.17、3.18计算对应的功和0值。获得待分类文本d的隐含主题集的概率分布向量。(6)引入SVM分类模型,预测待分类文本的类别。待分类文本是指语料库训练时没有处理过的新文本,如果对于每一个未知文本,都将其加入语料库后重新训练,则非常浪费时间,也没有必要。本文的做法是,只对预处理后的待分类文本运行GibbS抽样算法,以减少迭代次数。5. 最优主题数选择采用LDA模型对整个文档集进行主题建模,主题数T对LDA模型拟合文档集的性能影响很大。本文采用贝叶斯统计中标准方法32予以解决。为此首先确定a和月的值,然后为T选择合适的值。这实际上是一个模型选择的问题。在LDA模型

28、中,a和刀分别是e和功上的Dirichlet先验概率假设,其自然共辆的特点说明通过对0和功积分可以求取联合概率p(w,z)的值:p(w,z)=p(w| z)p(z)并且和分别单独出现于右式第一项和第二项。对积分得到p(wlz)值如下: (20)其中,r(.)是标准的galnlna函数,n1w,表示词汇w分配给主题j的频数,必,表示分配给主题的所有词数。因为尸(w劝可以近似为一系列尸(w习的调和平均值,所以按下式求取其值: (21)其中M为GibbS抽样算法的取样次数。通过(21)以计算出采用不同主题数T对语料库建模的p(w劝值。由p(wT)值与模型对语料库有效信息拟合程度成正比,确定最优主题数

29、T。6. 参数估计6.1 EM算法EM算法是用来计算极大似然估计。EM有两个主要应用环境,第一个是观测到的数据不完整或其它原因导致数据丢失,第二个是似然函数无法直接计算但可以用隐含变量表示。LDA中的参数估计属于后者。 概括的说,EM算法首先随机给每个参数赋值,然后迭代的执行两个步骤,分别叫做E-STEP和M-STEP。在E-STEP,EM算法计算出期望的似然函数,由于这时已经为所有参数赋值,所以似然函数是可以计算的。在M-STEP,EM算法重新估计参数值,按照最大化似然函数的标准。这样多次迭代直到收敛为止。 本报告大致讨论下EM的推理。 假设某次迭代中我们估计的参数是(n),而我们的目的是希

30、望找到(n+1)使得P(X|(n+1)尽可能的大于P(X|(n)。将lnP(X|)表示成L(|X),则我们的目标是使使下式尽可能的大: (22)现在考虑隐含变量Z: (23)于是(22)式改写成: (24)下面是The Expectation Maximization Algorithm A short tutorial关于(24)式的推导: (25)因此: (26)现在令: (27)前面已经提高过,我们的目的是找到,使得L()最大。而从(26),(27)中我们可以看到l(|n)就是L()的下界,所以我们的目标就成了找到一个下界逼近L(): (28)E-STEP: 计算条件数学期望: (29)

31、M-STEP: 最大化这个数学期望,得出此时的。 6.2 Gibbs抽样MCMC是从一个复杂的概率分布抽取样本值的近似迭代方法,它允许马尔可夫链(Markov)收敛于目标分布,然后从一Markov链中抽样,Markov链的每个状态是对于采样变量值的赋值,状态之间的转换遵循着简单的规则。Gibbs抽样作为McMc的一种简单实现形式,其目的是构造收敛于某目标概率分布的Markov链,并从链中抽样被认为接近该概率分布值的样本。于是给出目标概率分布函数成为了采用Gibbs抽样的关键。采用Gibbs抽样,在所有变量的当前值和文档集的基础上,从它们的分布上来抽样所有的变量值,转换到下一状态。采用Gibbs抽样的LDA模型完整的概率模型如下: (30)LDA模型为易于处理训练语料之外的新文本,便于模型参数的推理,对。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1