gpt4 book ai didi

python - 如何用gensim过滤掉语料库中tf-idf低的词?

转载 作者:太空狗 更新时间:2023-10-30 00:55:47 25 4
gpt4 key购买 nike

我正在使用 gensim 执行一些 NLP 任务。我从 dictionary.doc2bow 创建了一个语料库,其中 dictionarycorpora.Dictionary 的一个对象。现在我想在运行 LDA 模型之前过滤掉 tf-idf 值较低的项。我查看了 documentation语料库类的,但找不到访问术语的方法。有任何想法吗?谢谢。

最佳答案

假设您的语料库如下:

corpus = [dictionary.doc2bow(doc) for doc in documents]

运行 TFIDF 后,您可以检索低值(value)词列表:

tfidf = TfidfModel(corpus, id2word=dictionary)

low_value = 0.2
low_value_words = []
for bow in corpus:
low_value_words += [id for id, value in tfidf[bow] if value < low_value]

然后在运行 LDA 之前将它们从字典中过滤掉:

dictionary.filter_tokens(bad_ids=low_value_words)

过滤掉低值(value)词后重新计算语料库:

new_corpus = [dictionary.doc2bow(doc) for doc in documents]

关于python - 如何用gensim过滤掉语料库中tf-idf低的词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24688116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com