模型展现

主题内容查询

主题内容查询demo展示三个模型的主题词结果。

  1. sh run_show_topic_demo.sh # 查询LDA与SentenceLDA模型的主题词demo

参数说明

  • —model_dir 选择不同领域的的主题模型。
  • —conf_file 模型配置文件,可选的配置有lda.conf和slda.conf。
  • —top_k 展示模型中某个主题下前K个最重要的词,默认为20。

运行示例

执行程序后,通过标准流方式输入主题id,程序会返回该主题下最重要的K个词,LDA模型内容展现的结果如下所示:

  1. 请输入主题编号(0-1999): 105
  2. -----------------------------
  3. 对话 0.189676
  4. 合作 0.0805558
  5. 中国 0.0276284
  6. 磋商 0.0269797
  7. 交流 0.021069
  8. 联合 0.0208559
  9. 国家 0.0183163
  10. 讨论 0.0154165
  11. 支持 0.0146714
  12. 包括 0.014198

将运行参数修改为 —model_dir="./model/news/" —conf_file="slda.conf" —top_k=10 可以展示SentenceLDA的模型结果:

  1. 请输入主题编号(0-1999): 105
  2. ------------------------------
  3. 浙江 0.0300595
  4. 浙江省 0.0290975
  5. 宁波 0.0195277
  6. 记者 0.0174735
  7. 宁波市 0.0132504
  8. 长春市 0.0123353
  9. 街道 0.0107271
  10. 吉林省 0.00954326
  11. 金华 0.00772971
  12. 公安局 0.00678163

TWE模型展现

Topical Word Embedding (TWE) 模型的展现方式与传统LDA等主题模型有些许差别。由于TWE模型包含了一套受主题信号引导的词向量和主题向量,因此展示时着重对比通过Embedding方式召回的主题词结果和用多项分布召回的主题词的差别。

  1. sh run_topic_word_demo.sh # 运行主题词查询的demo

参数说明

  • —model_dir 选择不同领域的的主题模型。
  • —emb_file TWE模型的Embedding模型文件
  • —topic_words_file 传入LDA模型完整的主题词结果,用于与TWE模型进行结果对比。

运行示例

执行程序后,通过标准流方式输入主题id,程序会返回每个主题下最重要的K个词, TWE模型内容展现的结果如下所示:

  1. 请输入主题编号(0-10000): 105
  2. Embedding Result Multinomial Result
  3. ------------------------------------------------
  4. 对话 对话
  5. 磋商 合作
  6. 合作 中国
  7. 非方 磋商
  8. 探讨 交流
  9. 对话会议 联合
  10. 议题 国家
  11. 中方 讨论
  12. 对话会 支持
  13. 交流 包括

其中,第一列为基于Embedding召回的的主题词结果,第二列为基于多项分布的结果,均按照在主题中的重要程度从大到小的顺序排序。

邻近词查询

TWE模型中包含了词向量和主题向量,两类向量映射在同一空间中,因此可以与word2vec一样,使用embedding的方法召回语义相近的词汇。

  1. sh run_word_distance_demo.sh # 运行邻近词查询的demo

参数说明

  • —model_dir 选择不同领域的的主题模型。
  • —emb_file TWE模型的Embedding模型文件
  • —top_k 召回与输入词最接近的K个词。

运行示例

执行程序后,通过标准流方式进行输入,每行为一个词,程序会输出每个词的最邻近的K个词。如下所示:

  1. 请输入词语: 篮球
  2. Word Cosine distance
  3. ------------------------------
  4. 足球 0.903682
  5. 网球 0.842661
  6. 羽毛球 0.836915
  7. 足球比赛 0.809366
  8. 五人制足球 0.799211
  9. 美式足球 0.791207
  10. 中国足球 0.788995
  11. 乒乓球 0.788278
  12. 五人制 0.784913
  13. 足球新闻 0.783203

这一demo与word2vec经典的近邻词查询原理一样,只是TWE的word embedding引入了主题这一信息,在词的距离上考虑了主题这一属性,因此语义聚合度相比word2vec来说会更高。