“gensim.models.phrases”不再提供“伪语料库”?

问题描述 投票:0回答:1

几个月前,我使用“伪语料库”创建了一个假语料库,作为使用 Gensim 进行短语训练的一部分,代码如下:

from gensim.models.phrases import pseudocorpus 

corpus = pseudocorpus(bigram_model.vocab, bigram_model.delimiter, bigram_model.common_terms)
bigrams = []
for bigram, score in bigram_model.export_phrases(corpus, bigram_model.delimiter, as_tuples=False):
    if score >= bigram_model.threshold:
        bigrams.append(bigram.decode('utf-8'))

现在当我运行代码时,我收到以下错误消息:

ImportError: cannot import name 'pseudocorpus' from 'gensim.models.phrases'

我正在使用 Gensim 4.2.0。 Gensim 4.2.0 不再提供 pseudocorpus() 了吗?

非常感谢!

python python-3.x gensim
1个回答
1
投票

我相信

pseudocorpus()
结果的主要内部消费者,即
.export_phrases()
方法,经过改进以更有效地实现相同的目标,因此该方法消失了——因为它并没有真正作为公共功能的一部分得到推广模块。

你能把

.export_phrases()
用于你的目的吗?

如果不是,你能多说说你是如何使用(奇怪的合成)“伪语料库”的吗?

如果一切都失败了,先前的功能是从模型状态中非常简单地提取出来的,您可以在项目的开源存储库中查看该函数被重构之前的最新版本:

https://github.com/RaRe-Technologies/gensim/blob/da8847a04f9ee56702cb81a0218cd5a57e1f24e6/gensim/models/phrases.py#L750

因此,您可以简单地将其用作在您自己的代码中重新实现等效提取的指南。

© www.soinside.com 2019 - 2024. All rights reserved.