一种采用多核集群的LDA模型的训练方法及系统技术方案

技术编号:8533089 阅读:263 留言:0更新日期:2013-04-04 16:15
本发明专利技术实施例涉及一种采用多核集群的LDA模型的训练方法、系统。方法包括:多核产生多个进程,每个进程均启动多个线程,用于分担处理多个训练文档;每个进程中的多个线程共同处理该进程负责处理的文档,每个线程给出其负责处理的文档的主题-词矩阵,该进程依据其所有线程给出的主题-矩阵得到该进程负责处理的文档的主题-词矩阵;根据所有的进程提供的主题-词矩阵得到所述多个训练文档的主题-词矩阵,并用该主题-词矩阵更新所述的LDA模型。本发明专利技术实施例采用多核并行处理,提高了主题-词矩阵的计算速度,有利于更快地更新LDA模型。

【技术实现步骤摘要】

本专利技术涉及机器学习领域,尤其涉及一种采用多核集群的LDA模型的训练方法及系统
技术介绍
LDA(Latent Dirichlet Allocation)是一种非监督机器学习技术,是一种被大家关注的聚类工具,它能够识别大规模文档集中的潜在主题信息,同时它还能够预测推断(inference) —篇新文档和哪些主题(topic)相关。LDA采用的是词袋(bag of words)的方法,将每一篇文档看成一个词频向量,如果两个不同词经常一起出现在文档中,那么LDA的训练算法倾向于把这两个词归于同一类,亦称同一主题。LDA模型是一种生成模型(generative model), LDA首先假设了一个产生文档的过程,然后根据现实的大量文档集,来学习背后的产生过程是怎么样的。LDA假设所有的文档存在K个主题(每个主题可以认为是词的分布),要生成一篇文档,首先生成该文档的一个主题分布,然后生成词的集合;要生成一个词,需要根据文档的主题分布随机选择一个主题,然后根据该主题中词的分布随机生成一个词。一般来说LDA的实现包括训练算法和预测算法两个部分。训练算法是指基于已有的文档集,学习出LDA模型本文档来自技高网...

【技术保护点】
一种采用多核集群的LDA模型的训练方法,其特征在于,所述方法包括:所述多核产生多个进程,每个进程均启动多个线程,用于分担处理多个训练文档;每个进程中的多个线程共同处理该进程负责处理的文档,每个线程给出其负责处理的文档的主题?词矩阵,该进程依据其所有线程给出的主题?词矩阵得到该进程负责处理的文档的主题?词矩阵;根据所有的进程提供的主题?词矩阵得到所述多个训练文档的主题?词矩阵,并用该主题?词矩阵更新所述的LDA模型。

【技术特征摘要】
1.一种采用多核集群的LDA模型的训练方法,其特征在于,所述方法包括所述多核产生多个进程,每个进程均启动多个线程,用于分担处理多个训练文档;每个进程中的多个线程共同处理该进程负责处理的文档,每个线程给出其负责处理的文档的主题-词矩阵,该进程依据其所有线程给出的主题-词矩阵得到该进程负责处理的文档的主题-词矩阵;根据所有的进程提供的主题-词矩阵得到所述多个训练文档的主题-词矩阵,并用该主题-词矩阵更新所述的LDA模型。2.如权利要求1所述的采用多核集群的LDA模型的训练方法,其特征在于在所述多核产生多个进程之前还包括对所述多个训练文档进行预处理,即对所述多个训练文档中的不同单词赋予唯一编号,在统计词频时,用所述唯一编号来代替相应的单词,并去除词频过低的词。3.如权利要求1所述的采用多核集群的LDA模型的训练方法,其特征在于所述每个线程给出其负责处理的文档的主题-词矩阵,具体为每个线程根据其负责处理的文档中的单词的主题被认定的次数给出所述主题-词矩阵。4.如权利要求1所述的采用多核集群的LDA模型的训练方法,其特征在于每个进程的所有线程在更新LDA模型的主题-词矩阵之前或者之后进行同步。5.如权利要求1-4之一所述的采用多核集群的LDA模型的训练方法,其特征在于所述多核分布于多个网络节点,每个网络节点包括一个或多个核。6.一种采用多核集群的LDA模型的训练系统,...

【专利技术属性】
技术研发人员:陆忠华王珏周莼葆郎显宇聂宁明
申请(专利权)人:中国科学院计算机网络信息中心
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1