保存的Gensim LdaMallet模型不能在不同的cons中工作

2024-10-03 02:40:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用python训练ldamallet模型并保存它。我还保存了培训字典,我可以用它为以后看不见的文档创建语料库。如果我在同一个控制台中执行每一个操作(例如训练模型、保存训练模型、加载保存的模型、推断看不见的语料库),一切正常。但是,我想在不同的控制台/计算机上使用经过训练的模型。在

我在训练查看模型创建的临时文件时传递了prefix。训练模型时将创建以下文件:

'corpus.mallet'

'corpus.txt'

'doctopics'txt'

inferencer.mallet'

'state.mallet.gz'

'topickeys.txt'

现在,当我在另一个控制台中加载保存的模型并推断使用保存的字典创建的看不见的语料库时,我看不到其他临时文件正在创建,并产生以下错误:

FileNotFounderror: No such file or directory : 'my_directory\\doctopics.txt.infer'

出于某种奇怪的原因,如果我在同一个控制台(它被训练的控制台)中加载保存的模型,然后像上面那样推断出看不见的语料库,'语料库.txt'已更新,并创建了两个新的临时文件:

'corpus.mallet.infer'

'doctopics.txt.infer'

你知道我为什么会有这个问题吗?在

我尝试过使用LdaModel而不是LdaMallet,无论我是在同一个控制台还是在不同的控制台中执行整个任务,LdaModel都能很好地工作。在

下面是我正在使用的代码片段。在

^{pr2}$

我的期望是对训练数据使用find_optimum_model函数,并保存优化模型和字典。保存后,使用generate_dominant_topic函数加载保存的模型和字典,为未看到的文本创建语料库并运行模型以获得所需的主题建模输出。在


Tags: 函数文档模型txt字典计算机corpusdirectory
2条回答

尽管名称是这样,但实际上这些文件并不是“temp”文件,因为模型需要它们来运行。我强烈建议您将它们复制到新控制台上与旧控制台上相同的相对位置(前缀)(这样模型就知道在哪里查找它们)。不过,我自己还没试过。

从训练到使用模型分类时,会出现推断文件。我想他们需要建造推理机。。。 我不得不删除并重新训练我的mallet模型很多次,因为这些文件经常被破坏。

是的,你需要带上这些文件:https://github.com/RaRe-Technologies/gensim/issues/818

相关问题 更多 >