LDA模型

2024-11-03

LDA模型(精选4篇)

LDA模型 篇1

1概述

LDA是一种对离散的数据集(如文本数据库)建模的方法,它属于生成模型。生成模型(generative probabilistic model)指的是可以随机生成可观测的数据,也就是说通过训练样本建立起LDA模型后,LDA模型可以随机生成(一篇由N个主题组成的)文章。通过对文本的建模,我们可以对文本根据主题进行分类,判断文档的相似度等。为了更清晰的表达LDA模型的含义,本文一个具体的例子说明,理解这个例子,才算真正对LDA有“一定程度”的理解。同时,也希望这个例子对理解Dirichlet分布和multinomial分布有所帮助。值得指出的是,LDA实际上是对corpus,即文档库的建模,而不是对document建模。

2文档库生成模型

在描述了这个LDA模型以后,我们现在看一看,这个LDA模型是否符合一般的常识。由于LDA是一个生成模型(Generative model),也就是说LDA模型实际上描述了这个Corpus库的生成过程(或特性)。由于这个Corpus可能由很多的文档构成,而模型的建立仅仅采用了其中的一部分文档,那么这个生成模型的有效性应该由两方面决定(自己的看法)。

a.从这个模型中生成一个Document,这个Document应该具有符合这个模型特性的一些性质。b.随便选取一篇新document w,如果是这个模型产生(或与训练document类似的话)的话,那么p(t|w,α,β)的概率应该很大(这里我们将α,β都看作hyperparameter)。其中D为训练数据,α,β为LDA的参数,t是w所属的Corpus的标记。

a.选择文章的长度(单词个数)N,这个长度N服从Possion分布,但是这里,我们仅随机指定N=6;b.选择θ,即从Dirichlet(α)分布中,选择一个向量θ。在前文中,我们说过θ是document级的参数,θ确定了document的主题特性。LDA假定corpus中的每篇文章可能与不同主题相关,而且相关程度取决于θi的大小,也就是说:

一篇文章的主题,可能是由三个主题的混合决定的,比如一个关于艺术鉴赏的document,则文章的主题则更倾向于Art,其次是Education。可以看出,对不同的corpus,生成的α参数不同,导致Dirichlet的概率分布密度不同,得到这样的α参数以后,我们就可以进行诸如分类,建模等一系列问题。

重复执行(a)(b),直到选取所有N个word。这样,我们就算生成了一篇document从这个1,2.3我们也清楚的知道,为什么zn和wn是单词级(word-level)的变量,θ是document-level的变量,而α和β是corpus-level的参数。

3结论

本文给出了一个LDA模型生成文档库的基本流程,阐述了LDA模型中参数的意义以及,对于进一步理解LDA模型以及其他主题模型提供了一个基础。

参考文献

[1]Blei,David M.;Ng,Andrew Y.;Jordan,Michael I(January 2003)."Latent Dirichlet allocation".Journal of Machine Learning Research 3:pp.993-1022.

[2]C.M.Bishop,"Pattern Recognition and Machine Learning",Springer,2006.

LDA模型 篇2

微博,继Twitter问世之后迅速发展成为一种主流的信息发布社交网络平台。以新浪微博为代表,其简洁性、实时性等特点[1]以及新颖的表现形式、独特的传播方式[2],迅速吸引了大量的使用人群,成为了国内最重要的社交媒体之一。微博从最基本的用户信息交流,逐渐发展成为信息发布和商业营销的平台,这种发展为社交网络的用户关系分析与用户个性化推荐提供了良好的研究环境。

社交网络用户关系分析的相关研究主要集中在用户影响力分析[3]、信息的传播[4]等方向,体现了用户关系在社交网络中重要研究价值。用户关系分析,以微博用户亲密度分析为代表,为用户寻找隐性亲密粉丝提供良好依据,在构建由用户彼此亲密粉丝组成的微博网络环境上提供有效资源。其在优化社交网络环境、推进社交网络的透明化发展、用户个性化推荐以及企业商业化推荐等方面都具有重要的现实意义。

对微博用户关系的分析,Yanagimoto等人[5]将微博社交网络视为一个加权无向图,每个边表示用户之间的关系,边的权值表示他们之间的关系强度[6],通过比较相关特征,计算用户之间关系强度。这种方法在用户关系的分析上有一定效果,但忽略了用户自身属性特征,所以对用户关系强度的评价不够客观。Kahanda等人[7]利用用户之间的交互性和自身属性特征来评价用户关系强度。Xiang等人[8]结合了用户之间的交互性和用户相似度来计算用户的关系强度。以上研究侧重于从用户自身出发进行分析研究,其优点是对用户关系强度评价效果较为明显,但是忽略了微博内容对用户关系的影响,因此对用户之间个性化特点的评价不准确。

用户关系分析经常被应用于用户个性化推荐。Chen等人[9]通过获取社交网络的历史数据,凭借基于内容的方法进行用户推荐获得了一定效果,但单纯使用基于内容的方法比较片面,不能很好体现用户的推荐行为。Hannon等人[10]采用了基于内容相似和协同过滤方法来推荐Twitter用户,取得了一定的推荐效果,但该方法还是未能考虑用户的个人属性特征,在用户个性化推荐方面的效果不够理想。徐雅斌等人[11]提出了选取反映微博用户之间相关性的多个特征,并通过逻辑回归模型对潜在的用户进行评分排序,为目标用户推荐前N个潜在用户,在用户普通推荐上效果较为明显。但该方法对用户个人信息特征选取不准确,而且忽略了用户的兴趣取向等重要特征因素,使得该方法在用户个性化推荐上效果不明显。

针对传统方法在微博用户关系评价分析中准确率低的现象,本文提出基于LDA的微博用户粉丝亲密度评价模型。从微博及微博用户本身出发,综合考虑了微博用户的被动活跃度(其他用户对该用户的主动性)、用户之间的背景相似度(选取用户有针对性的自身属性建立向量,用以计算用户之间的相似度)、用户之间的关系强度[6,12](用户之间的转发、评论、提及互动强度)等属性特征,并结合LDA主题模型对微博内容进行分析。在微博内容分析方面,首先,对于微博内容的主题进行分析,获取用户相关的主题分布;然后通过主题分布推断其兴趣分布,以此计算博主与每一个粉丝的兴趣相似度;最后,融合以上特征为用户建立综合亲密度评价得分标准,按评价得分结果进行Top-N排名,得到该评价模型下的用户推荐列表。利用新浪API接口抓取微博近期相关数据,组成实验数据集。在数据集上基于评价的推荐实验结果表明,本文提出的模型方法在用户的个性化推荐应用方面更有针对性,效果更好。

1 用户粉丝亲密度的评价模型

该部分主要介绍用户亲密粉丝的评价推荐流程中的用户粉丝亲密度评价模型,如图1第三部分所示。用户亲密粉丝评价推荐流程主要由微博数据获取、构建数据、用户粉丝亲密度评价模型(BLDA)和推荐粉丝排名四个部分组成。第一部分,通过微博API按要求采集微博相关数据,并将其存入数据库;第二部分,通过分析数据库数据,建立博主与之对应粉丝集合的数据集;第三部分,通过用户粉丝亲密度评价模型对每个粉丝给出对应的综合评价得分;第四部分,根据第三部分得到的综合评价分数,按得分高低顺序推荐出前N个粉丝为亲密粉丝。下文详细介绍用户粉丝亲密度评价模型,具体包括微博用户粉丝活跃度筛选、微博用户背景相似度分析、微博用户关系强度对比、微博用户兴趣相似度分析;最后给出粉丝亲密度综合评价得分计算方法。

1.1 微博用户粉丝活跃粉丝筛选

用户粉丝亲密度评价推荐对效率和准确率的精度要求很高,如果笼统对博主所有的粉丝进行评价推荐,会导致效率和准确率降低。特别当粉丝中包含大量对粉丝亲密度评价有干扰的“僵尸粉”时,评价推荐的准确率会大大降低。因此,在用户粉丝亲密度评价之前,需要从粉丝集合中剔除这些粉丝。针对“僵尸粉”主动性好、被动性差的特点,本文提出用户被动活跃度指标对博主的粉丝进行筛选,定义如下:

定义1令b表示某一个博主,被动活跃阈值为θ,则其活跃粉丝集合表示为F(b)。假定在微博数据时间段K内,微博用户u发表原创的、被转发的以及被评论的数目的总和为S(u),那么用户的被动活跃度a可表示为:

当博主的某粉丝用户的被动活跃度a低于事先设定的阈值θ时,剔除该粉丝。博主b剩下的粉丝为有效活跃粉丝,表示为F(b)。

1.2 微博用户背景相似度分析

活跃在背景环境相似下的微博用户,会有相似的人生观、价值观等一些内在共性,这样的群体更容易发展成为亲密粉丝关系。本文选取微博用户的相关背景属性,主要包括用户年龄、注册时间(微龄)、是否加V、关注数/粉丝数、男粉丝/女粉丝、粉丝对博主博文行为/博主所发博文,进行相似度分析。则对微博用户背景相似度的定义如下:

定义2令背景属性向量为Ubg,微博用户背景属性向量表示为Ubg=(year,rage,is V,af,nvf,mbf),博主背景属性向量为Bbg,第i个粉丝的背景属性向量为Fbgi,Simbgi为博主与其第i个粉丝背景的相似度。设向量A(a1,a2,…,an)与向量B(b1,b2,…,bn),则向量A、B的相似度关系为:

则结合式(2),博主与其第i个粉丝背景相似度表示为:

其中背景属性向量Ubg属性变量的定义如下:

定义3令year表示微博用户出生年代的类别集合,记作year{00后,90后,80后,70后,60后},并依次赋予权值{2,4,5,3,1};

定义4令rage表示微博用户的微龄段集合,记作rage{不到1岁,2岁,3岁,4岁,5岁以上},并依次赋予权值{5,4,3,2,1};

定义5令is V表示微博用户是否加V集合,记作is V{是,否},并依次赋值{1,0};

定义6令att表示用户关注其他用户数目,fans表示该用户的粉丝数,af表示用户的微博贡献度变量,表示为:;

定义7令nf表示一个用户的男粉丝数,vf表示一个用户的女粉丝数,nvf表示该用户的群体性别偏好度变量,表示为:;

定义8令mf表示粉丝对博主博文行为所产生的行为总数,mb表示博主所发博文数,mbf表示博主行为被关注的关注度变量,表示为:。

1.3 微博用户关系强弱度分析

博主与粉丝之间的互动反映着他们之间的关系强弱,亲密粉丝一般与博主有较强的关系紧密度。因此,用户之间的关系强弱度对粉丝亲密度评价有较大影响。令Rui表示博主与第i个粉丝的关系强度,则博主与第i个粉丝之间的互动率表示为:

式中,h为博主与第i个粉丝在相同时间段内发的相同条数微博数,Ebi、Pbi、Jbi分别表示博主转发、评论、提及第i个粉丝fi的数量,Efi、Pfi、Jfi分别表示第i个粉丝fi转发、评论、提及博主的数量。

1.4 微博用户兴趣相似度分析

高明等人[13]提出基于面向微博系统的实时个性化推荐中推断微博主题分布和用户兴趣取向的研究方法的基础上,本文提出一种分析博主与粉丝的兴趣相似度的研究方法。由于每条微博通常会关联到一个或多个主题,这种特征符合LDA主题模型方法,故本文第一步采用LDA主题模型来分析微博的主题分布。同时,由于用户所发微博能很好地反映用户所关心的主题,本文第二步通过研究用户所发微博的主题分布与其兴趣取向分布的关系,给出博主与粉丝间的兴趣相似度的计算方法。下文为方法的详细介绍。

1.4.1 主题分布和兴趣取向定义

定义9令Z={z1,z2,…,zT}为预先给定的T个主题的集合,p(z1|blog),p(z2|blog),…,p(zT|blog)为用户所发某一微博blog的主题分布,p(zi|blog)表示微博blog属于主题zi的后验概率,其数值越大则微博blog属于主题zi的可能性就越大。

定义10令{blog1,blog2,…,blogh}为用户在某一特定时间内发布的h条微博集合,Ou=(ou1,ou2,…,ou T)表示该用户的兴趣取向向量,ouk(k=1,2,…,T)为用户u的第k个兴趣取向,结合定义1可以表示为:

式中,ouk表示该用户对第k个主题感兴趣的平均概率,blogj表示第j条微博,zk表示第k个主题。

1.4.2 微博主题推断

通过新浪微博API采集相关数据作为训练数据集,进行LDA主题模型的学习,得出训练数据集中每条微博的主题分布以及每个单词在T个主题上的分布情况。对于每条微博的主题分布,都可以通过推断该微博中各单词所属主题,来推断该微博的主题分布。具体推断方法如下:

假定由n个单词组成的微博为blog,其单词集合记为{ω1,ω2,…,ωn}。令随机变量表示单词ωi的主题,则对微博blog中单词ωi,的概率计算表示为:

式中,T表示主题个数,σ表示用户兴趣取向先验分布的参数,表示单词属于第j个主题的概率,表示排除第i个单词的主题,微博blog中所有其他的单词主题集合,n(blog)表示微博blog中单词的总数目,n(j,blog)表示微博blog中属于第j个主题的单词总数目。单词ωi的主题分布记为,其中分量xj标准化式(6)中的概率,即:

单词ωi的主题是从分布中抽样得到,则微博blog属于第j个主题的概率描述为:

最后,微博blog的主题分布表示为:

1.4.3 兴趣取向分布

用户的兴趣取向是用一个T维向量Ou=(ou1,ou2,…,ou T)描述的,每一个用户的兴趣取向向量根据数据集中用户微博集而确定。对于每一个用户,选取的h条微博的主题分布可以用一个矩阵表示。令矩阵Gu表示用户的微博集合所产生的主题分布矩阵,选取通过LDA对博主的微博集进行训练得到的主题Z={z1,z2,…,zT}为矩阵的行,选取微博用户发的微博集合Blog={blog1,blog2,…,blogh}为矩阵的列。其中,对于博主,选取某段时间的若干条微博;对于粉丝,选取与博主相同时间段的相同条数的微博。假设某个用户在时间段t内发了x条微博,取其中h(h<x)条构成用户u的微博集合Blogu,记作Blogu={blogu,1,blogu,2,…,blogu,h},其中blogu,i表示用户u所发的第i条微博。则微博用户u的微博的主题分布矩阵Gu表示如下:

oik表示第i用户对第k个主题感兴趣的平均概率,即兴趣分量表示为,则用户u的兴趣分布向量可以表示为:

1.4.4 兴趣相似度计算

兴趣相似度反映着用户之间的内在共性,粉丝与博主相似度越大,该粉丝就越容易成为亲密粉丝。根据用户的兴趣分布分析,令博主的兴趣分布向量为Ob,粉丝i的兴趣分布向量为Ofi,由式(1)过滤得到博主的活跃粉丝集合为F(b)。令Simbfi表示博主与粉丝i的兴趣相似度,则通过式(2)、式(11)可将博主与粉丝i的兴趣相似度表示为:

1.4.5 粉丝亲密度综合评价计算方法

王焕玲[14]在《“粉”字心义》中对“微博粉丝”的解释是:在微博里对某一博主保持持续关注的人类群体。当微博的博主在其微博上发表新的留言,第一时间关注他的大多数情况下就会是该微博的粉丝。亲密粉丝是与博主有较高的亲密度的粉丝,主要表现在活跃度高、与博主之间关系紧密、与博主在兴趣上相似度大。则对用户粉丝亲密度的定义如下:

定义11令F表示某一博主的粉丝集合,标记为F={f1,f2,…,fn},由式(1)过滤得到博主的活跃粉丝集合为F(b)。设Qfi表示对博主第i粉丝亲密度评价得分,由式(3)中Simbgi表示博主背景与第i个粉丝背景相似度,式(4)中Rui表示博主与第i个粉丝的关系强度,式(10)中Simbfi表示博主与第i个粉丝兴趣相似度。则结合式(2)、式(3)、式(4)、式(10),博主第i个粉丝的亲密度表示为:

式中,α、β、λ是对应的权重变量,权重变量由实验数据统计获得,实验部分将详细介绍。通过式(13)计算的Qfi值可以得出对博主第i个粉丝的亲密度评价得分。对博主活跃粉丝集合F(b),用以上计算方法,能得出每一个活跃粉丝综合推荐评分,选取Top-N个活跃粉丝为博主的亲密粉丝。

2 实验及分析

2.1 实验数据

本实验采用用户粉丝亲密度评价模型(BLDA),对微博用户进行亲密粉丝推荐,并将结果与基于协同过滤的用户推荐模型(BPR)[15]和逻辑回归的用户推荐模型(LR)[11]进行效果对比,侧面反映用户粉丝亲密度评价效果。利用新浪微博开放API的方式获取用户基本信息和最新发布一系列微博信息,构成实验数据集。数据集中每个用户基本信息包括用户年龄、微博注册时间(微龄)、是否加V、关注人数、粉丝人数、男粉丝数、女粉丝数、用户发博文次数、粉丝关注所发博文数(对于每篇博文,只要有粉丝有相关的关注行为则记为一次,一条微博只记一次,不重复记)。为了对比BPR和LR推荐模型在对亲密粉丝推荐上的效果,数据集中每个用户的微博信息应包括用户及其关注用户的微博、用户标签、用户社交圈、用户个人信息(地区、性别)。同时为了实验方便进行,本实验要求数据集选取的每个用户关注人数不少于30人,粉丝数在100到2000个之间,且所发微博数不得少于60条。

本实验按照数据集的要求,使用Java语言编写的程序,从新浪开放API接口获取了376个满足条件的用户及其粉丝的个人基本信息以及相关微博信息。将获取的376个用户作为目标用户,并将这376个目标用户对应的亲密粉丝作为待推荐的用户,其亲密度由训练获得。

将获取的微博用户数据集分为训练数据集和测试数据集。训练集由376个目标用户及其对应亲密粉丝组成,测试集由376个目标用户及剔除亲密粉丝后剩余的对应粉丝组成。对于测试集中的每个目标用户,随机选取对应的40个待推荐的粉丝并隐藏其10个亲密粉丝(共50个粉丝)作为测试集。模型训练结束后,对测试数据集进行实验,得到按降序排列的Top-N推荐结果。

2.2 实验评价指标

在实验中,采用准确率(P),召回率(R),综合指标(F)作为评价标准。

准确率:

召回率:

综合指标:

其中a表示推荐出来的粉丝为亲密粉丝数,b表示推荐出来的粉丝为非亲密粉丝数,c表示没有推荐出来的亲密粉丝数。

2.3 评价权重α、β、λ的调整

评分权重对该模型有着重要的影响,控制着实验结果的精确度。α是微博用户的背景相似权重,β是微博用户之间的关系强度权重,λ是微博用户之间的兴趣相似权重。对α、β、λ分别单独取1,其他取0,分别推荐出单独测试每一个权重对实验准确率的贡献值。通过对数据集随机的50个微博用户及其前10个粉丝的推荐结果,取P、R和F的平均值结果如表1所示,令三种情况下的综合指标为F1、F2、F3。表1显示了每种权重下多次试验的单独平均效果,用实验的综合指标调节其权重值,表示为:。因此,在此模型中,取α=0.25、β=0.38、λ=0.37,重复以上实验得权重调整后的结果如表2所示。

2.4 实验结果与分析

为验证本文方法的准确性和有效性,实验随机选取5组数据集中的用户,每组10个用户参与实验。对基于协同过滤的用户推荐模型(BPR)和逻辑回归的用户推荐模型(LR)在本文数据集上推荐结果的准确率、召回率和综合指标三个指标进行对比,从而进行亲密粉丝推荐效果的比较。分别取每个用户的Top-1、Top-2、Top-3、Top-4、Top-5、Top-6、Top-7、Top-8、Top-9和Top-10十种情况下的实验结果,即推荐结果的前1个、前2个、前3个、前4个、前5个、前6个、前7个、前8个、前9个和前10个粉丝中,隐藏亲密粉丝占推荐结果的平均比例,实验结果如图2所示。



由实验结果容易观察出:BLDA方法模型对用户亲密粉丝推荐的整体准确率要优于LR和BPR方法模型。随着K值的增大,BLDA方法模型的召回率和综合指标值趋于稳定,效果明显优于LR和BPR方法模型。亲密粉丝推荐,关注的是推荐出来的是不是亲密粉丝以及粉丝的亲密度排名,因此准确率、召回率和综合指标的值越大,效果越好。这说明了本文提出的BLDA方法模型对优质粉丝的推荐优于BPR和LR方法模型。

BPR方法模型虽然考虑了用户多维特征间的相似性,并取得了一定的推荐效果,但由于该方法数据稀疏性处理不够,对亲密粉丝推荐并不理想。LR方法模型从用户兴趣、社交圈和个人信息多个角度出发,数据信息比较充分;并通过深层挖掘用户信息中潜在支配推荐排序信息的逻辑回归模型[8],综合利用这些特征进行用户亲密粉丝推荐。该方法在数据稀疏处理方面比较合理,但对用户兴趣的分析是从自身特征研究,缺乏客观性,因此在用户亲密粉丝上的推荐效果不理想。BLDA方法模型更加全面地从博文与用户本身出发,以用户所发博文为根据,利用LDA主题模型分析博文的主题分布,用以反映用户兴趣取向。其对用户兴趣的推断更加客观准确,从而对用户粉丝的亲密度评价更为客观,对亲密粉丝的推荐针对性更强。综合利用这些特征对亲密粉丝的推荐效果有了较大的提高,侧面反映了该用户亲密度评价模型的有效性和准确性。

3 结语

本文主要从微博用户自身相关特征与博文内容出发,对博文进行深层次挖掘,利用LDA主题模型分析博文的主题分布,反映出兴趣取向分布,融合微博用户的背景特征以及相关行为特征构建了一个综合的用户粉丝亲密度评价模型。实验结果表明,本文所搭建的模型在一定程度上提高了亲密粉丝个性化推荐的准确率、召回率和综合指标。但实验过程中仍存在一些问题:(1)特征选取不够全面,对用户关系的亲密度评价效果的影响较大;(2)实验效果跟权值的选定有一定关联。因此,对微博用户背景、活跃度、兴趣的相互关系的深入研究是未来研究的方向。随着新浪微博的发展以及互联网越来越开放,可以获取到更丰富的用户属性,为用户关系更深入的评价分析提供更多的可靠依据。

摘要:用户关系是目前微博研究的热门方向,微博用户亲密度评价在对用户隐含亲密粉丝的发现、微博网络环境优化等方面具有重要意义。目前微博用户群体庞大且关系复杂,仅从用户自身出发,以用户特征和关系网络等为依据对用户关系亲密度评价的准确率太低。针对这一问题,提出基于LDA的微博用户粉丝亲密度评价模型。首先,对用户粉丝集中非活跃粉丝过滤剔除,获取其活跃粉丝。然后,利用LDA主题模型对用户某时间段所发微博集进行训练,获取用户阶段性微博的主题分布;同时通过主题分布推断其兴趣取向分布,并利用余弦相似方法计算用户与其粉丝之间的兴趣相似度。最后,结合用户的背景相似度和关系紧密度,为用户建立综合的亲密度评价标准。通过新浪API接口抓取微博近期相关数据,组成实验数据集。在数据集上基于评价的推荐实验结果表明,所提出的模型方法具有较高的准确率和有效性。

LDA模型 篇3

目前, 面对着互联网上各种各样、数量繁多的新闻网页, 人们不知道如何选择自己需要和喜爱的新闻。因此, 人们越来越迫切地需要一个对新闻进行分类的工具, 能够用来快速浏览自己需要的新闻内容。

常见的文本分类技术包括KNN算法、贝叶斯算法、支持向量机SVM算法以及基于语义网络的概念推理网算法等。KNN算法在新闻等网页文本分类中有着广泛的应用, 他的思想是对于待分类的文本, 通过由与该样本最接近的K个样本来判断该样本归属的类别[1]。

本文针对传统KNN算法在度量文本相似性时仅仅考虑文字层面的相似性, 而未涉及语义层面。首先, 对新闻文档进行VSM和LDA主题建模, 结合LDA模型与VSM模型计算文档之间的相似度;其次, 以复合相似度运用到基于相似度加权表决的KNN算法对新闻报道集合进行分类。

2 相关工作

2.1 向量空间模型

向量空间模型 (VSM:Vector Space Model) 由G.Salton、A. Wong、 C. S.Yang[2]等人于20 世纪70 年代提出。向量空间模型 (VSM) 以特征词作为文档表示的基本单位, 每个文档都可以表示为一个n维空间向量:T (F1, W1;F2, W2;…;Fn, Wn) , 简记为T (W1, W2, …, Wn) , Fi为文档的特征词, Wi为每个特征词的权重, 则T (W1, W2, …, Wn) 为文本T的向量表示[3]。特征词的权重值一般采用TF*IDF来计算。

向量空间模型把文本内容用n维空间向量表示, 把对文本内容的处理简化为向量空间中的向量运算, 并且它以空间上的相似度表达语义的相似度, 直观易懂, 但向量空间模型并没有考虑到特征词之间的语义关系, 可能丢失很多有用的文本信息。

2.2 LDA主题模型

2.2.1 LDA主题模型基本思想

主题模型是统计模型的一种, 用来发现在文档集合中的抽象主题。LDA (Latent Dirichlet Allocation) 是一种文档主题生成模型, 也称为一个三层贝叶斯概率模型, 包含词、主题和文档三层结构。首次是作为概率图模型由David Blei、Andrew Ng和Michael Jordan于2003年提出[4], 图1 为LDA的概率图模型。

其中M为文档总数, K为主题个数, Nm是第m个文档的单词总数, β是每个Topic下词的多项分布的Dirichlet先验参数, α是每个文档下Topic的多项分布的Dirichlet先验参数。zm, n是第m个文档中第n个词的主题, wm, n是第m个文档中的第n个词。隐含变量 θm和 ψk分别表示第m个文档下的Topic分布和第k个Topic下词的分布, 前者是k维 (k为Topic总数) 向量, 后者是v维向量 (v为词典中词项总数) 。

2.2.2 Gibbs抽样

Gibbs Sampling是马尔科夫链蒙特卡洛算法的一个实例。该算法每次选取概率向量的一个维度, 给定其他维度的变量值采样当前维度的值, 不断迭代至收敛输出待估计的参数[5]。

从2.2.1 中可知, zm, n、θm和 ψk变量都是未知的隐含变量, 也是我们需要根据观察到的文档集合中的词来学习估计的。

学习步骤如下:

(1) 应用贝叶斯统计理论中的标准方法[6], 推理出有效信息P (w|T) , 确定最优主题数T, 使模型对语料库数据中的有效信息拟合达到最佳。

(2) 初始时为文本中的每个词随机分配主题Z (0) , 统计第z个主题下的词项t的数量, 以及第m篇文档下出现主题z中的词的数量。

(3) 每一轮计算p (zi|z-I, d, w) 这里i= (m, n) 是一个二维下标, 对应于第m篇第n个词, 即排除当前词的主题分配, 根据其他所有词的主题分配估计当前词分配给各个主题的概率, 根据这个概率分布, 为该词采样一个新的主题Z (1) 。同样更新下一个词的主题。直到每个文档下Topic分布 θm和每个Topic下词的分布 ψk收敛。

p (zi|z-I, d, w) 称Gibbs更新规则, 计算公式如下:

3 基于VSM和LDA模型的新闻分类

3.1 基于VSM和LDA模型的文本相似度计算

(1) 对于文档di, dj, 由向量空间模型 (VSM) 进行预处理, 得到的文本的特征词向量di_VSM= (w1, w2, …, wN) 和dj_VSM= ( w1’, w2’, …, wN’) , N为特征词个数。

(2) 由LDA模型进行预处理, 得到文本- 主题向量为di_LDA= (t1, t2, …, tk) 和dj_LDA= (t1’, t2’, …, tk’) , K为主题个数。

(3) 由公式 (3-1) 计算基于向量空间模型的相似度, 取两个向量之间的夹角余弦:

(4) 由公式 (3-2) 计算基于LDA模型相似度, 同样取两个向量之间的夹角余弦:

3.2基于VSM和LDA模型的新闻文本分类

本文改进的KNN算法的具体过程如下[8]:

输入:待分类新闻文本d和已知类别的新闻文本D;

输出:待分类新闻文本d的可能类别。

(1) 对d和D集合进行预处理, 构建其特征向量和主题向量;

(2) 对d中的每个新闻文本, 采用公式 (3-3) 计算其于D中每个新闻文本的相似度;

(3) 从中选择与d相似度最大的K个文本;

(4) 对于待分类文本的K个邻居, 依次按公式 (3-4) 进行计算d隶属每个类别的权重。

其中, y表示d的特征向量, Tj (di) 表示指示函数, 指示是否是同一类别, 即di是否属于Cj, 若是, 则值为1, 否则为0。Sim (d, di) 表示待分类文本与邻居di的复合相似度。

(5) 比较每个类的权重, 将权重最大的类别定为d的类别。转入 (2) 直至所有待分类文本分类完成。

4 实验结果及分析

4.1 文本分类的性能评价

评价文本分类算法的有两个指标:准确率 (Precision) 和召回率 (Recall) 。由于准确率和召回率是分别从两个不同的方面来评价分类效果, 所以一般采用F_measure来评估分类效果, 如公式4-1。

4.2 文本分类实验结果及分析

本实验语料采用搜狗实验室文本分类语料库, 选取军事、体育、旅游、教育、娱乐、财经六个类别, 每个类别下挑选200 篇文章, 总共1200 篇, 其中训练集占1/3, 首先, 针对不同的K值下的分类效果找出最佳的K值, 然后, 对传统KNN算法和基于相似度加权的KNN算法进行对比试验。传统的KNN算法的权重计算方法如公式4-2所示:

最终确定实验的参数如下:KNN的K值取20, 主题数K=30, Dirichlet先验参数选取经验值 α=1, β=0.01, Gibbs抽样次数设为5000; VSM和LDA模型线性结合参数 λ 设置为0.8, 实验效果如图2所示。

从图2 中可以看出, 改进后的KNN分类算法在军事、体育、旅游、教育、娱乐、财经六个方面都较传统KNN分类算法好一些, 因为, 传统KNN算法只是单纯第从文字层面来计算两段文本之间的距离, 而将VSM结合LDA模型后, 既可以较完整地保留文本的信息, 又可以提取语义层面的信息, 这样能更精确地计算两段文本之间的相似度。

5 总结与展望

本文提出了基于VSM和LDA模型相结合的KNN分类算法, 与传统KNN分类算法相比, 引进了LDA模型, 从而在计算两段文本之间的距离时融合了语义层面的相似度, 在相似度计算方法上进行了改进, 实验也验证了改进后算法的有效性。

由于当前所用的中文语料库还有待完善, 本文选用的搜狗实验室文本语料库, 主题数较少, 使得LDA主题模型的作用不太明显, 后续将考虑使用爬虫程序从各大新闻网站上选取一些语料库的来源。

参考文献

[1]张宁.使用KNN算法的文本分类[J].计算机工程, 2005 (04) .

[2]G.Salton, A.Wong, C.S.Yang.A Vector Space Model for Automatic Indexing[J].Communications of the ACM:Volume 18Issue 11, 1975 (11) .

[3]王萌, 何婷婷, 姬东鸿, 王晓荣.基于How Net概念获取的中文自动文摘[J].中文信息学报, 2005, 19 (03) :87-93.

[4]Blei D M, Ng A Y, Jordan M I.Latent dirichlet allocation[J].the Journal of machine Learning research, 2003 (03) :993-1022.

[5]赵爱华, 刘培玉, 郑燕.基于LDA的新闻话题子话题划分方法[J].小型微型计算机系统, 2013 (04) .

[6]董婧灵, 李芳, 何婷婷.基于LDA模型的文本聚类研究[G].2011.

基于LDA和SVM的步态识别 篇4

人的步态是一种日益受到重视的生物测量特征,它是通过人步行的方式,达到识别人身份的目的。它可以通过远距离的摄像机捕获,因此是唯一不受距离影响的生物特征。

在国外,步态识别近年来取得了一系列探索性研究成果:Amit Kale[1]等利用人的二值化图像的侧面外轮廓作为图像的特征,采用HMM进行步态识别。Lee[2]采用七个椭圆表达人的侧面二值化图像的身体的不同部分,每一个椭圆用质心等四个特征表示,加上整个身体图像质心的高度共29个特征表示整个人体侧面图像,通过模板匹配方法进行步态识别。Cunado[3]将大腿和小腿建模为链接的钟摆,并从其倾斜角度信号的频率分量中获取步态特征。

不同于上述方法,本文提出一种以人体中线投影向量为特征,结合线性判别分析(LDA)和支持向量机(SVM)进行步态分类和识别的方法。算法框图如图1所示。

1 步态特征提取

1.1 关键帧轮廓线提取

首先,我们采用了取中间值的方法从图像序列中恢复背景图像。直接采用彩色图像进行RGB空间背景建模,具体方法如下:

f(k,x,y),k=1,2,…,n是一序列步态彩色图像,令B(x,y)表示建立的背景点(x,y)处的RGB向量,c表示RGB彩色分量之一。B(x,y)=med{f(k,x,y).c},Distance(B(x,y),f(k,x,y))=max(|B(x,y).c-f(k,x,y).c|),

背景差分值取当前帧f(k,x,y)与背景B(x,y)RGB各分量作差的绝对值最大的一个。

差分后,由于还受到光照和噪声的影响,必须对图像进行二值化及形态学操作。最后,为了消除图像尺度、信号长度对训练和识别过程的影响,把图像进行归一化,使图像的大小统一为160×100。通过上述步骤得到的整个步态轮廓检测过程如图2所示。

1.2 步态特征分析与提取

1.2.1 步态特征分析

确定行人内在运动的一个重要线索是人体轮廓形状随着时间而变化。而当前研究表明轮廓是步态的一个重要特征。故在模式分类中,选择的特征对后面的识别至关重要。我们选择人体轮廓的前半身和后半身沿中线的投影作为步态空间特征。如图3所示,中线方程xh=1ni=1nxi,其中xi是外轮廓像素点的横坐标,n是外轮廓像素点的个数。沿中线投影后坐标xp=|xi-xh|,其中p点的个数是身高像素点的2倍,对于外轮廓到中线同一位置的投影不止一个像素点(i>p)的,则选择距离最远的。

分析图3:从左图可看到人走路过程中手和脚的摆动幅度比较大;从右图可看到人体的摆动有一定的规律性,而且相对于人体的其它区域,手和脚的摆动区域要大得多。

1.2.2 基于LDA的步态特征变换

线性判别分析在进行特征压缩的同时,通过样本类间离散度和样本类内离散度比值的最大化,将同一类的样本聚集在一起,而不同类的样本相对比较分散,以提高模式分类性能[4]。

假设训练样本有C个训练类别,每个类别代表一个人步态的中线投影向量,令Gji表示第j类的第i个人的中线投影向量,Nj是第j类的向量个数,共有NT=N1+N2+…+Nc个训练样本,训练集可表示为Τt={G11,G12,G13,,GcΝc}。我们先用主分量分析对步态数据进行初步压缩,然后再用线性判别分析进行特征提取和压缩。设PCA投影矩阵为Wpca。样本类间离散度矩阵定义为:

Sw=1Νi=1cΝi(μi-μ)(μi-μ)Τ(1)

其中,μiYi类的均值,μ是所有样本的均值。

样本类内离散度矩阵定义为:

Sb=1ΝΤi=1cyijYi(yij-μi)(yij-μi)Τ(2)

我们希望投影后在低维空间里不同类别的样本尽可能分得开些,同时希望每个类别内部样本尽量密集。即样本类间离散度越大越好,而样本类内离散度越小越好。因此,Fisher准则函数定义为:

Wopt=argmaxw|WΤSbW||WΤSwW|=[ω1,ω2,,ωk](3)

Wopt就是最优的投影方向。通过推导可以得出Wopt是满足等式Sbωi=λiSwωi,i=1,2,…,k的广义特征向量。最多只有c-1个非零广义特征值,取对应于较大特征值的前m(m<c-1)个特征向量作为Fisher线形判别分析变换矩阵,即:

WLDA=[ω1,ω2,…,ωm] (4)

这样,步态数据特征压缩变换可以表示为:

2 基于支持向量机的步态识别

在获得有效的步态特征后,设计一个好的分类器是解决问题的关键。SVM是一种泛化能力很强的分类器,它在解决小样本问题方面有许多特有的优势,已成为国际上模式识别领域新的研究热点。SVM的最大特点是根据Vapnik的结构风险最小化原则,尽量提高学习的泛化能力,即由有限的训练集样本得到的小误差仍能够保证对独立的测试集小的误差。

本文使用Joachims编写的SVM,该程序是由C语言编写的程序。假设待识别的步态有c类,记为S1,…,Sc。设计cSVM分类器fi(i=1,2,,c),每一个fi用其中的一类样本Si作为正样本训练,而其他所有样本Sj(ji)作为负样本训练。对于正、负样本,系统输出分别为+1,-1。测试阶段,对每个测试样本输入到c个分类器中,如果只有一个fi输出为+1,则将该样本判别为第i类,若有p(p>1)个分类器输出是+1,则再利用最近邻距离分类技术,即计算测试样本与这p个分类器所代表的训练样本之间的距离,将测试样本判别为最小值对应的那个步态类别。如果所有分类器输出都是-1,则判定本次识别错误。

3 实验结果

3.1 实验数据来源

通用步态数据库的缺乏是步态识别算法开发中的一个局限,本文所使用的NLPR步态数据库由中科院自动化所提供[6]。该数据库包含20个人,每人侧面视觉4个序列。每个图像序列以25帧每秒的速率拍摄,原始尺寸为352×240像素点,且平均长度约为100帧,总计包括240个序列。每个序列的长度随人行走的速度变化而有所不同,每个序列的帧数介于37到127之间。整个数据库包含13139幅图像。

做完预处理后进行人体区域检测所得到的一个右脚向前迈和一个左脚向前迈的步态时空序列样本如图4。

3.2 实验结果

在用SVM进行训练和预测的时候选用的是经向基核函数。实验中用了20个人中的14个人,即14个类别,共759个样本。取14个类别的一半用SVM进行训练,另一半作为测试集,实验验证当选取c=325,g=500的时候能够取得最好的识别率,取其中的五个类别识别率的平均值是74.06%。 其中c和g值对识别结果的影响是:c是惩罚因子,g是控制核函数的参数。随着核函数的不同,c的最优取值不同。随着c的增大,支持向量的个数减少,支持向量数目和识别率都趋于稳定,同时,识别率可以达到最优。

3.3 实验数据分析

从识别结果的正确分类率中,可以清楚地看到,本文采用的方法取得了较好的识别效果。与文献[5]相比,本文的识别率要稍微好一些,可能是因为本文把人体外轮廓沿中线投影向量作为步态特征向量,体现了更多的肢体特征,如手的摆动等。另外本文在对提取的特征向量进行处理时采用了先主成分分析,后线性判别分析,使之得到的特征向量有利于分类。在分类识别方面,我们采用了目前在小样本问题上很有优势的支持向量机进行识别,而文献[5]采用的是常用的NN和ENN方法。最后,就计算量来说,文献[5]要进行大量的计算,而本文的计算量相对来说很小。综合比较可得出,该算法不仅获得令人鼓舞的识别性能,而且拥有相对较低的计算代价,是一种有效的步态特征提取与识别方法。

4 结束语

与过去的工作相比,本文采用的方法特征选择简单,更易于理解和实现。而且对于分割后的图像,过去常用的特征处理方法有对提取出来的轮廓边缘进行傅立叶变换,轮廓解卷绕等,而我们以提取的轮廓边缘的中线投影向量为特征,减少了计算代价。

下一步的工作将是建立更大的步态数据库,同时关注视角及速度对步态识别的影响因素。同时利用3D人体建模和跟踪技术提取人体关节变化轨迹进行步态识别。

摘要:提出了一种新的基于人体中线投影的步态特征提取方法,同时将线性判别分析(LDA)和支持向量机(SVM)相结合进行步态的分类和识别。应用背景差方法分割出运动人体轮廓,对外轮廓沿人体中线投影可以得到前后两个向量,合成1D向量作为步态特征。通过线性判别分析对得到的一维向量进行特征提取和压缩,对得到的识别量应用支持向量机进行步态的分类和识别。应用上述方法在中科院自动化所的步态数据库上进行了实验,实验结果表明该步态识别方法具有较好的识别性能。

关键词:步态识别,特征提取,中线投影

参考文献

[1]Kale Amit,Rajagopalan AN,et al.Identification of Humans Using Gait[D].Center for Automation Research University of Maryland at Col-lege Park,MD 20740,2002:1163-1173.

[2]Lee Lily.Gait Analysis for Classification[R].AI Technical Report2003-014,Massachusetts Institute of Technology-artificial IntelligenceLaboratory,2003:1-8.

[3]Cunado D,Nash J,et al.Gait Extraction and Description by Evidence-Gathering[C].Proc of the International Conference on Audio and Vid-eo Based Biometric Person Authentication,1995,4:43-48.

[4]Belhumeur P N,Hespanha J P,Kriegman D J.Eigenfaces VS Fisher-faces:Recognition using Class Specific Linear Projection.IEEE Transon Pattern Analysis and Machine Intelligence,1997,19(7):711-720.

[5]王亮,胡卫明,谭铁牛.基于步态的身份识别.计算机学报,2006(3):353-358.

【LDA模型】推荐阅读:

模型组织07-14

提升模型07-15

稳态模型07-17

演示模型07-17

机翼模型07-18

接头模型07-18

农户模型07-19

模型细化10-13

指派模型10-14

查询模型10-15

上一篇:关节镜下治疗下一篇:执行证书