问题标签 [topicmodels]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R中的结构主题建模:绘制主题内容的统计显着性
我的问题与 R 中的结构主题建模有关,特别是与 Roberts 等人开发的 stm 包有关。(https://cran.r-project.org/web/packages/stm/vignettes/stmVignette.pdf)。
我实施了一个结构化主题模型,以调查女性和男性描述某些主题的词汇量是否存在统计学上的显着差异。因此,我的问题与讨论主题时使用的词率有关,小插图的作者将此称为主题内容分析,请参见第 19 页。
代码的实现是成功的,我设法创建了一个类似于 Vignette 图 8 中所示的图表。
我现在的问题是,我怎么知道在我的案例中女性和男性描述主题的词汇差异是否具有统计学意义?
有没有办法在一个图表中为我的所有主题绘制这个?
谢谢!
我的代码:
估计主题模型
lda - 如何测量使用 R 中的 textmineR 包制作的 LDA 模型的困惑度分数?
我在 R 中制作了一个 LDA 主题模型,使用 textmineR 包,如下所示。
那么问题是: 1. 我应该应用哪个函数来获得 textmineR 包中的困惑分数?我似乎找不到一个。
2. 我如何衡量不同主题数量(k)的复杂度分数?
nlp - 输出带有所选 lambda 的 pyLDAvis 主题关键字
我使用 PyLDAvis 可视化 LDiA 模型输出,通过玩 lambda,我发现为每个主题选择的关键字在特定 lambda 值下比其他关键字更容易解释。我想知道是否有一种简单的方法可以在每个主题的特定 lambda 值下输出关键词。目前我只能直接从经过训练的 LDiA 模型中输出关键字,该模型不涉及 lambda,而且经常选择的热门关键字对于特定主题的解释性不是很好。
nlp - 连贯性分数(u_mass)-18 是好是坏?
我读了这个问题(Coherence score 0.4 is good or bad?),发现连贯性分数(u_mass)从-14到14。但是当我做实验时,u_mass的分数是-18,c_v的分数是0.67 . 我想知道我的 u_mass 分数如何超出范围(-14、14)?
更新:我使用了 gensim 库并扫描了从 2 到 50 的主题数。对于 u_mass,它从 0 开始到最低的负点并稍微向后转,就像 c_v 的颠倒版本。
r - 如何对R中数据框中的每个句子评论进行主题建模和分类?
有没有办法对 R 中的评论数据框进行主题建模和分类?
我有 10 列评论(其中每条评论都是与问题相关的主题的开放式句子),我想按每列评论的主题对每条评论进行分类。
我尝试使用 R 中的 topicmodels 包使用 LDA(潜在狄利克雷分配)(并在应用 LDA 模型之前使用 DocumentTermMatrix 和语料库)。我试图使用最低的困惑度找到最佳的主题数量。
问题是我不知道评论的每个句子都归类于什么主题。它确实将单词放入类似的主题,但不是按句子。所以有点混乱。
我不知道从那里去哪里,需要关于如何做到这一点的建议。
我能够使用 Sentimenter 包在 R 中的同一数据帧上应用 Sentimental Analysis,它有效,但我不能对主题建模和分类做同样的事情。
如何在 R 中为一列中的每个评论句子执行此操作(总共 10 列)?
r - 我可以手动重新排序 LDA_Gibbs 主题模型吗
我有一个来自图书馆的 LDA_Gibbs 主题模型topicmodels
。我还有一个 LDAvis 交互式可视化。
我的问题是;LDA 对象和 LDAvis 中的主题顺序不同。
我想让一个映射到另一个(不在乎哪个)。到目前为止我没有工作的方法:
受到这个 github 问题的启发——虽然是一个不同的主题模型包
然而,这完全破坏了我的 LDA 对象。
没有 reprex/MWE(还没有;我可以链接一个 .rds 文件)-但 glimpse(lda) 的输出:
现在,我手动将 ldavis 主题映射到 LDA() 对象并行。
- - 编辑 - -
我几乎找到了一个合理的权宜之计:我的进一步分析依赖于 tidytext 中的 tidy.LDA 函数,因此我可以添加主题词映射的正确顺序,如下所示:
是的,也适用于文档映射。现在将它们折叠成一个函数;)
r - 如何使用 r 中的 topicmodels 将多个文档组合成一个文档?
我目前正在尝试使用 topicmodels 包将语料库的多个文档组合成一个文档。我最初通过多个 csv 导入我的数据,每个 csv 都有多行文本。但是,当我导入每个 csv 时,csv 的每一行都被视为一个文档,每个 csv 都被视为一个语料库。我想做的是将每个 csv 的每个文档/行合并到一个文档中,然后每个 csv 将代表我的语料库中的一个文档。我不确定这是否可能——也许在最初导入然后创建文档和语料库时以某种方式将 csv 的所有行作为单个文本文件读取会更容易,但我不知道如何也这样做。下面是我用来导入我的 csvs 的代码:
csv 中的行看起来像这样(每个 / 代表一个换行符):'I walk' / 'the dog' / 'at the' / 'park last night'
我想将这些行中的每一行组合成一行文本,作为我语料库中的一个文档。
谢谢您的帮助!
r - 如何将(半)监督方法(结构主题模型,种子 lda)应用于只有一个主题的语料库,并在 r 中每年汇总它们的结果?
我目前正在从事一个项目,我对德国全体辩论和报纸文章中一个主题(社会不平等)的普遍性感兴趣。我正在使用定量文本分析工具来从文本中生成输出,以包含在回归分析中的经济指标,例如基尼系数。到目前为止,我已经创建了一个字典来表示社会不平等,这使我能够生成每年汇总的计数和频率数据。但是,鉴于字典分析的问题,我也想使用有监督的方法,例如种子 lda 或结构主题模型。
在这种情况下,我遇到了两个困难。首先,我很难在 r 中实现任何这些监督方法,因为这些方法似乎旨在处理多个主题,而不是只关注一个主题。其次,我不知道我必须为回归分析选择哪个输出对象以及如何每年汇总它们。
到目前为止,我已经从“seededlda”包中尝试过 Seeded LDA,因为它似乎是最合适的。我有 2 个文本语料库:一个由 2296 个文件(全体辩论)组成,另一个由 190404 个文件(报纸文章)组成。但是,当我尝试创建 seeded-lda 模型时,r 没有得到任何结果,并且在两个语料库的顶部都冻结了。
我创建了以下字典:
我将其应用于以下方式制作的我的一个语料库的 dfm。
然后我尝试通过以下方式计算模型。
如果需要信息,这是我的会话信息。
因此,我不确定我是否正确应用了种子 lda,或者更确切地说,是否存在适合突出单个主题的监督方法,以及最终如何每年汇总其结果。
我将非常感谢任何帮助!
r - 结构主题模型 (STM) 错误:不可靠的值:未来 ('<none>') 意外生成随机数,但未指定参数“种子”
成功运行我的 stm 几次后,我现在每次尝试运行它时都会收到此错误消息:
这是我运行的代码:
知道如何快速修复它吗?
r - 如何使用 R 中的 seededlda 包来保留主题的用户标识
我一直在尝试对 MOOC 中的一组讨论论坛帖子进行主题建模。我尝试过基本的 LDA 来创建主题,但主题毫无意义。所以现在我正在考虑播种我的主题以创建更好的主题。我找到了 seededlda 包,它需要一个 dfm 作为输入以及一个种子术语字典。它运作良好!我的问题是弄清楚每个文档或论坛帖子是如何分类的。
我的原始数据将“userid”作为变量,将“post”作为我用于 LDA 的文档。到目前为止,我的代码看起来像这样。
如何确定哪些条款适用于哪个用户?
当我使用 topicmodeling 包下的 LDA 函数时,我使用了以这种方式定义的文档术语矩阵
它在文件进行时命名了这些文件。最后,我能够很好地看到哪些主题去了哪些参与者。但我似乎无法用 seededlda 包使用的 dfm 做到这一点。
任何帮助,将不胜感激。