带有两个单词的tfidf tokenizer始终返回第一个值

问题描述

我试图用这个语料库创建一个令牌:

from sklearn.feature_extraction.text import TfidfVectorizer

corpus = [["ALZHEIMER'S DISEASE"],["LFACTORY"],["AGING"],["EEG"],["COGNITIVE CONTROL"]]

该语料库有单字和双字短语。 TfidfVectorizer不适用于双词短语,所以我尝试了以下方法:

def identity_tokenizer(text): return text

tfidf = TfidfVectorizer(tokenizer=identity_tokenizer,lowercase=False)
txt_fitted = tfidf.fit(corpus)

尽管我试图使用语料库中的单词,但它总是返回第一个值。

i = 2
print('index: ' + str(i))
feature_name = tfidf.get_feature_names()[i]
print('value in index: ' + feature_name)

a = txt_fitted.transform([feature_name]).toarray()

print('argmax: ' + str(a.argmax()))
print('argmax value: ' + tfidf.get_feature_names()[a.argmax()])

结果:

index: 2
value in index: COGNITIVE CONTROL
argmax: 0
argmax value: AGING

我该怎么办?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...