zoukankan      html  css  js  c++  java
  • JGibbLDA、GibbsLDA++问题解决

           LDA(Latent Dirichlet Allocation )主题模型是一种用统计进行文本挖掘的方法,它是pLSA(概率潜在语义分析)主题模型基础上加上贝叶斯框架而得到的模型。目前已应用于自然语言处理、计算机视觉、机器学习、信息检索等领域,得到了广泛关注。

           LDA模型网上有多个开源代码,用的比较多是JGibbLDA(Java实现)、GibbsLDA++(C++实现)。当我们在Linux平台上运行的时候,可能会遇到一些问题,如果对Java、C++和Linux不太熟悉,就很难解决。

          这里我就将我遇到的问题和解决办法分享给大家,或许初学者有所帮助:

          问题1:对于JGibbLDA,(这里是JGibbLDA-v.1.0.tar.gz)

    $ java -mx512M -cp bin:lib/args4j-2.0.6.jar jgibblda.LDA -est -alpha 0.5 -beta 0.1 -ntopics 100 -niters 1000 -savestep 100 -twords 20 -dfile models/casestudy-en/newdocs.dat 

          按照其给的步骤执行时,我这里就出现程序运行特别快,而且相应的参数不能保存,说有数据为空。

         分析:数据为空,基本上是程序没有读取文本数据,问题出在读取数据的路径上,即-dfile models/casestudy-en/newdocs.dat 。

          解决:检查该路径,对路径可以补充更加完整些。比如:

    $ java -mx512M -cp bin:lib/args4j-2.0.6.jar jgibblda.LDA -est -alpha 0.5 -beta 0.1 -ntopics 100 -niters 1000 -savestep 100 -twords 20 -dfile ~/models/casestudy-en/newdocs.dat 

        问题2:在测试GibbsLDA++代码时,按照其帮助文档,我们以下操作可能会出错,出错信息是提示我们缺少某个函数。(这里是GibbsLDA++-0.2.tar.gz)

     ~$cd Gibbslda++-0.2

    ~$make clearn

    ~$make all

    ~$src/lda -est -alpha 0.5 -beta 0.1 -ntopics 100 -niters 1000 -savestep 100 -twords 20 -dfile LDA/trndocs.dat

        分析:缺少函数,那基本上是因为该函数所在的类库没有调用。

        解决:需要将其所在的那个类库加到相应C++程序的头文件上。由于记不清楚添加的是什么,这里给出我添加加之后的GibbsLDA++的程序包: http://yun.baidu.com/s/1vsnCU

  • 相关阅读:
    dubbo服务配置
    架构基本概念和架构本质
    最大子数组和问题
    struts2简单登陆页面
    四则运算随机出题
    省赛训练赛赛题(简单题)
    Ubuntu虚拟机安装,vritualbox虚拟机软件的使用
    Rational Rose 2007破解版
    netbeans出现的错误
    快速幂
  • 原文地址:https://www.cnblogs.com/huadongw/p/4224005.html
Copyright © 2011-2022 走看看