主题挖掘方法和装置的制造方法

文档序号:9579263阅读:665来源:国知局
主题挖掘方法和装置的制造方法
【技术领域】
[0001] 本发明实施例涉及信息技术,尤其涉及一种主题挖掘方法和装置。
【背景技术】
[0002] 主题挖掘是利用潜在狄利克雷分布(LatentDirichletAllocation,LDA)模型这 一机器学习模型,在大规模文档集中对具有语义相关的单词进行聚类的过程,从而以概率 分布的形式获得大规模文档集中每篇文档的主题(topic),也就是作者通过文档所表达的 主题思想。
[0003] 现有技术中的主题挖掘,需要首先基于训练文档,采用置信传播(Belief Propagation,BP)算法对LDA模型进行训练,确定训练后的LDA模型的模型参数,即单 词-主题矩阵Φ和文档-主题矩阵Θ,然后将待测试文档的单词-文档矩阵输入训练后 的LDA模型进行主题挖掘,从而获得用于指示该待测试文档的主题分布的文档-主题矩 阵θ'。由于BP算法包含大量迭代计算,也就是说多次重复执行根据LDA模型的当前文 档-主题矩阵和当前单词-主题矩阵,对单词-文档矩阵中的每个非零元素进行计算,获 得单词-文档矩阵中每个非零元素的消息向量之后,再根据上述全部的消息向量对当前文 档-主题矩阵和当前单词-主题矩阵进行更新的过程,直至消息向量、当前文档-主题矩阵 和当前单词-主题矩阵达到收敛状态,由于在每次迭代过程中均需要对单词-文档矩阵中 的每个非零元素计算消息向量,以及根据全部的消息向量对当前文档-主题矩阵和当前单 词-主题矩阵进行更新,计算量较大,导致主题挖掘的效率较低,并且现有的主题挖掘方法 仅适用于单词-文档矩阵为离散词包矩阵。

【发明内容】

[0004] 本发明实施例提供一种主题挖掘方法和装置,以减少主题挖掘运算量,提高主题 挖掘的效率。
[0005] 本发明实施例的一个方面是提供一种主题挖掘方法,包括:
[0006] 根据潜在狄利克雷分布LDA模型的当前文档-主题矩阵和当前单词-主题矩阵 对训练文档的单词-文档矩阵中的非零元素进行计算,得到非零元素的消息向量Μη ;根 据所述非零元素的消息向量的残差,从所述非零元素的消息向量1中确定目标消息向量 0bjectMn;m述目标消息向量为按照残差从大到小顺序排在前预设比例的消息向量,所述 预设比例的取值范围为小于1且大于0 ;根据所述目标消息向量0bjectMn对所述LDA模型 的当前文档-主题矩阵和当前单词-主题矩阵进行更新;从所述单词-文档矩阵中的非零 元素中确定所述目标消息向量〇bjectMn所对应的目标元素0bjectEn ;第n+1次执行根据 LDA模型的当前文档-主题矩阵和当前单词-主题矩阵,对训练文档的单词-文档矩阵中第 η次所确定的目标元素013知(^1进行计算,得到所述单词-文档矩阵中第η次所确定的目标 元素Objects的消息向量Μη+1,根据所述第η次所确定的目标元素的消息向量的残差,从所 述第η次所确定的目标元素ObjectEj^fl息向量Μη+1中确定目标消息向量0bjectMn+1,根据 第n+1次所确定的目标消息向量ObjectMn+1对当前文档-主题矩阵和当前单词-主题矩阵 进行更新,以及从所述单词-文档矩阵中,确定第n+1次所确定的目标消息向量ObjectMn+1 所对应的目标元素〇bjectEn+1的迭代过程,直至所述筛选后的目标元素Objects的消息向 量、当前文档-主题矩阵和当前单词-主题矩阵达到收敛状态;将达到收敛状态的当前文 档-主题矩阵和达到收敛状态的当前单词-主题矩阵确定为所述LDA模型的参数,利用确 定参数后的所述LDA模型对待测文档进行主题挖掘。
[0007] 在第一方面的第一种可能的实现方式中,所述根据所述非零元素的消息向量的残 差,从所述非零元素的消息向量Mn中确定目标消息向量ObjectMn,包括:计算所述非零元素 的消息向量的残差;从计算得到的残差中,按照从大到小顺序查询排在前所述预设比例的 目标残差;所述预设比例是依据主题挖掘的效率和主题挖掘的结果的准确度确定的;从所 述非零元素的消息向量1中,确定所述目标残差所对应的目标消息向量0bjectMn。
[0008] 结合第一方面的第一种可能的实现方式,在第一方面的第二种可能 的实现方式中,所述计算所述非零元素的消息向量的残差,包括:根据公式
计算所述非零元素的消息向量的残差,其中,其中,<?/(0为所 述非零元素的消息向量的残差,k= 1,2, . . .,Κ,Κ为预设的主题数目,//",(幻为第η次执行 迭代过程中对所述单词-文档矩阵中第w行第d列的元素进行计算所获得的消息向量的第 k个元素值,xWid为所述单词-文档矩阵中第w行第d列的元素值,/C)(幻为第n-1次执行 迭代过程中对所述单词-文档矩阵中第w行第d列的元素进行计算得到的消息向量的第k个元素值。
[0009] 结合第一方面的第一种可能的实现方式和第一方面的第二种可能的实现方式,在 第一方面的第三种可能的实现方式中,所述从计算得到的残差中,按照从大到小顺序查询 排在前所述预设比例的目标残差,包括:根据公5
对所述残差进行 计算,得到累积残差矩阵;其中,幻为第η次执行迭代过程中所述单词-文档矩阵中第w 行第d列的元素的消息向量的残差的第k个元素值; <饮):为第η次执行迭代过程中所述累 积残差矩阵第w行第k列的元素值;在所述累积残差矩阵的每一行中,按照从大到小顺序确 定出排在前预设比例λk的元素所在列/<(幻;其中,〇<λk彡1 ;对每一行中确定出的元素 进行累加,得到每一行对应的和值;确定按照从大到小顺序排在前预设比例λw的和值所对 应的行其中,〇 彡1,且;将满足,体=/?的残差幻) 确定为所述目标残差。
[0010] 结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方 式中,所述从所述非零元素的消息向量1中,确定所述目标残差所对应的目标消息向量 ObjectMn,包括:从所述非零元素的消息向量Mn中,确定目标残差Qv(凡(&))所对应的目标 消息向量〇bjectMn为/^.;乂从))。
[0011] 结合第一方面的第二种可能的实现方式、第一方面的第三种可能的实现方式和第 一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述根据所述 目标消息向量〇bjectMn对所述LDA模型的当前文档-主题矩阵和当前单词-主题矩阵进 行更新,包括:
[0012] 根据公另
> 进行计算,得到更新后的所述LDA模型的当前文 档-主题矩阵中第k行d列的元素值€(幻,利用$0)更新所述LDA模型的当前文档-主 题矩阵中第k行第d列的元素值;其中,k= 1,2,. . .,K,K为预设的主题数目,xw, d为所述 单词-文档矩阵中第w行第d列的元素值,幻是在第η次执行所述迭代过程中对所述 xw,d进行计算所获得的消息向量的第k个元素值;根据公:
计 算得到更新后的所述LDA模型的当前单词-主题矩阵中第k行w列的元素值,利用 Φ"(幻更新所述LDA模型的当前单词-主题矩阵中第k行w列的元素值。
[0013] 结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的 实现方式、第一方面的第三种可能的实现方式和第一方面的第四种可能的实现方式,在 第一方面的第六种可能的实现方式中,所述根据潜在狄利克雷分布LDA模型的当前文 档-主题矩阵和当前单词-主题矩阵对训练文档的单词-文档矩阵中的非零元素进 行计算,得到非零元素的消息向量Mn,包括:在第η次执行所述迭代过程中,根据公式
^进行计算,得到所述单词-文档矩阵中第w行第d列 的元素的消息向量的第k个元素值;其中,k= 1,2,. . .,K,K为预设的主题数 目,w= 1,2,. . .,W,W为单词表长度,d= 1,2,. . .,D,D为所述训练文档数目,#(&):为当前 文档-主题矩阵第k行第d列的元素值,Φ"(幻为当前单词-主题矩阵第k行第w列的元素 值,α和β为预设系数,取值范围为正数。
[0014]结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的实 现方式、第一方面的第三种可能的实现方式和第一方面的第四种可能的实现方式,在第一 方面的第七种可能的实现方式中,所述根据潜在狄利克雷分布LDA模型的当前文档-主题 矩阵和当前单词-主题矩阵对训练文档的单词-文档矩阵中的非零元素进行计算,得到非 零元素的消息向量Μη之前,还包括:确定单词-文档矩阵中每个非零元素的初始消息向量 ,其中,k= 1,2,. . .,Κ,Κ为预设的主题数目
为 单词-文档矩阵中第w行第d列的非零元素xWid的初始消息向量的第k个元素;根据公式
U十算当前文档-主题矩阵;其中,为所述初始消息向量, 为当前文档-主题矩阵第k行第d列的元素值;根据公?
计算当前单 词-主题矩阵;其中,为所述初始消息向量,Φ"㈨为当前单词-主题矩阵第k行第 W列的元素值。
[0015] 本发明实施例的第二个方面是提供一种主题挖掘装置,包括:
[0016]消息向量计算模块,用于根据潜在狄利克雷分布LDA模型的当前文档-主题矩阵 和当前单词-主题矩阵,对训练文档的单词-文档矩阵中的非零元素进行计算,得到非零元 素的消息向量Mn;第一筛选模块,用于根据所述非零元素的消息向量的残差,从所述非零元 素的消息向量Mn中确定目标消息向量0bjectMn;所述目标消息向量为按照残差从大到小顺 序排在前预设比例的消息向量,所述预设比例的取值范围为小于1且大于0 ;更新模块,用 于根据所述目标消息向量〇bjectMn对所述LDA模型的当前文档-主题矩阵和当前单词-主 题矩阵进行更新;第二筛选模块,用于从所述单词-文档矩阵中的非零元素中确定所述目 标消息向量〇bjectMn所对应的目标元素ObjectEn ;执行模块,用于第n+1次执行根据LDA模 型的当前文档-主题矩阵和当前单词-主题矩阵,对训练文档的单词-文档矩阵中第η次 所确定的目标元素〇bjectEn进行计算,得到所述单词-文档矩阵中第η次所确定的目标元 素
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1