如何在以下TFIDF模型中获得最具代表性的功能



你好,我有以下列表:

listComments = ["comment1","comment2","comment3",...,"commentN"]

我创建了一个tfidf vectorizer,以从我的评论中获取一个模型,如下所示:

tfidf_vectorizer = TfidfVectorizer(min_df=10,ngram_range=(1,3),analyzer='word')
tfidf = tfidf_vectorizer.fit_transform(listComments)

现在,为了更多地了解我的模型,我想获得最具代表性的功能,我尝试了:

print("these are the features :",tfidf_vectorizer.get_feature_names())
print("the vocabulary :",tfidf_vectorizer.vocabulary_)

这给了我一个我认为我的模型用于矢量化的单词列表:

these are the features : ['10', '10 days', 'red', 'car',...]
the vocabulary : {'edge': 86, 'local': 96, 'machine': 2,...}

但是,我想找到一种方法来获得30个最具代表性的功能,我的意思是,在我的TFIDF模型中达到最高值的单词,最高的倒零点单词,我在文档中阅读,但我不是能够找到此方法,我非常感谢您在此问题上的帮助,谢谢,

如果要获得有关IDF分数的词汇列表,则可以使用idf_属性和argsortIT。

# create an array of feature names
feature_names = np.array(tfidf_vectorizer.get_feature_names())
# get order
idf_order = tfidf_vectorizer.idf_.argsort()[::-1]
# produce sorted idf word
feature_names[idf_order]

如果您想获得每个文档的TFIDF分数列表,则会做类似的事情。

# get order for all documents based on tfidf scores
tfidf_order = tfidf.toarray().argsort()[::-1]
# produce words
feature_names[tfidf_order]

相关内容

  • 没有找到相关文章

最新更新