问题标签 [mallet]

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.

0 投票
1 回答
668 浏览

java - 如何使用 Mallet API 从描述特征值对的文件创建实例?

我正在尝试运行 LDA 从 txt 文件中生成一些主题,如下所示:

文档1 标签1 森林=3.4 树=5 木=2.85 锤子=1 颜色=1 叶=1.5

文档2 标签2 森林=10 树=5 木=2.75 锤子=1 颜色=4 叶=1

文档3 标签3 森林=19 树=0.90 木=2 锤子=2 颜色=9 叶=4.3

文档4 标签4 森林=4 树=5 木=10 锤子=1 颜色=6 叶=3

文件中的每个数值都是每个特征(例如,森林、树)出现次数乘以给定惩罚的指示。

要从这样的文件生成实例,我使用以下 Java 代码:

然后,我使用指令 model.addInstances(generatedInstances) 将如此生成的实例添加到我的模型中。生成的输出如下所述。它包含由指令 model.addInstances(generatedInstances) 引起的错误。调试我的代码显示与模型关联的字母表为空。我使用了错误的迭代器吗?谁能帮我修复我的代码?

提前致谢。

0 投票
1 回答
478 浏览

java - 为什么 MALLET LDA 需要保持序列化?

在 MALLET 文档中,它需要 --keep-sequence 标记用于主题模型训练(详细信息位于:http ://mallet.cs.umass.edu/topics.php )

然而,据我所知,常规的 LDA 建模使用文档作为词袋,因为包含二元组会大大增加特征空间。我想知道为什么 MALLET 在 LDA 训练中需要保持序列,以及 MALLET 是如何实际使用该序列信息的?

感谢您阅读这篇文章。

0 投票
0 回答
401 浏览

python - Gensim LdaMallet 分割错误

我正在尝试在 gensim 中复制 Mallet 包装器的教程。http://radimrehurek.com/2014/03/tutorial-on-mallet-in-python/

当我拟合模型时

我收到一条错误消息:

当我使用模型推断示例的主题分布时,分布是均匀的:

我的输出:

这是包装器或木槌功能中的问题吗?我已经设法在这里复制槌教程:http: //programminghistorian.org/lessons/topic-modeling-and-mallet

0 投票
1 回答
463 浏览

twitter - 如何使用 LDA 查找每个主题的文档数(和分数)?

我正在尝试从 7 百万的 Twitter 数据中提取主题。我假设每条推文都是一个文档。因此,我将所有推文存储在一个文件中,其中每一行(或推文)都被视为一个文档。我将此文件用作 Mallet api 的输入文件。

我从上面的程序中得到了三个文件。1.状态文件 2.主题比例文件 3.关键主题列表

我想知道每个主题分配的文档数量。例如,我从关键主题列表文件中得到以下输出

  1. 0.004 奥巴马 (5471) 加拿大 (5283) 女性 (5152) 投票 (4879) 警察 (3965)

其中第一列表示主题序号,第二列表示主题权重,第三列表示该主题下的单词(单词数)

在这里,我得到了这个主题下的单词数,但我也想显示我得到这个主题的文档数量。将此输出显示为像这样的单独文件会很有帮助。例如,

话题一:doc1(80%) doc2(70%).......

任何人都可以为此提供一些想法或任何源代码吗?谢谢。

0 投票
2 回答
171 浏览

java - MALLET 主题建模:不一致的估计

我正在使用 MALLET 来训练 ParallelTopicModel。训练后,我得到一个 TopicInferencer,取一个句子,通过 inferencer 运行 15 次,检查结果。我发现对于某些主题,估计每次都不同,而且根本不一致。

例如,有 20 个主题,这是我得到的估计主题概率的输出,对于同一个句子:

如您所见,有几列非常不一致。为什么会这样,有没有办法防止这种情况发生?我将分布用作另一个机器学习模型的特征,并且这些不一致正在使我的另一个模型失效。

我的代码:

0 投票
0 回答
47 浏览

training-data - 具有在 Mallet API 中指定的任何类的 Mallelt 训练数据集

我有一个包含 15000 个单词和逗号分隔值的数据集,我想要 train mallet,这样每当我们进一步进行标签提取时,我们应该得到结果,将训练好的数据集保存在 mallet 中。

我需要一些示例代码来使用程序来训练我的 dta,请在这方面提供帮助。

0 投票
1 回答
1483 浏览

java - 槌:java.lang.OutOfMemoryError 与 1024GB 内存分配

我正在尝试使用 Mallet 在 ~1GB 文本文件上运行主题建模,该文件有 11403956 行。从 mallet 目录中,我cdbin内存要求升级到 1024GB:

set MALLET_MEMORY=1024G

然后我尝试运行命令:

但是,这会引发内存错误:

这种情况有解决方法吗?其他人可以提供的任何帮助将不胜感激!

0 投票
1 回答
1153 浏览

text - 使用 MALLET 进行文本分类

我是使用 Mallet 的新手。我通常使用WEKA进行分类,现在我正在尝试使用Mallet进行文本分类。在 Weka 中,有我们自己选择并制作 .arff 文件的属性(例如单词长度或前 n 个单词出现)。

我在http://mallet.cs.umass.edu/import.php中阅读了有关 Mallet 的输入格式,但我仍然感到困惑。我们如何在输入格式中分配属性?我们如何判断这个文件属于某个类?例如,一个文档属于“运动”类?

任何输入格式文件的例子都将不胜感激。

谢谢!

0 投票
1 回答
1712 浏览

cluster-analysis - 如何使用 Mallet 评估 LDA 的最佳 K?

我正在使用 Mallet api 从 twitter 数据中提取主题,并且我已经提取了看起来不错的主题。但是我在估计 K 时遇到了问题。

例如,我将 K 值从 10 固定到 100。因此,我从数据中获取了不同数量的主题。但是,现在我想估计哪个 K 是最好的。有一些我知道的算法

  1. 困惑
  2. 经验可能性
  3. 边际似然(调和平均法)
  4. 轮廓

我找到了一个方法 model.estimate() 可以用来估计不同的 K 值。但我不知道 K 的值最适合模型。有没有人通过一些示例代码给出一些想法?谢谢。

0 投票
1 回答
518 浏览

java - Mallet 主题建模、标签主题

我在单个文档中有一个文章语料库,我正在应用 MALLET 的主题建模算法,以便以后使用搜索功能,允许用户搜索与他的输入相关的文章。我使用的算法是此处的主题建模 API 开发人员指南。

我是主题建模的新手,但据我了解,它会生成用户指定数量的主题,其中包含与该主题相关的单词,但程序不知道该主题是什么。这必须由用户手动指定,对吗?

我的问题是,如何手动设置这些主题名称以便以后使用?即算法的主题输出将是:

其中 0 是主题的名称。我想要的是手动将名称更改为:

请问有什么帮助吗?