使用TfidfVectorizer()对中文文本进行关键词提取
发布时间:2024-01-03 14:09:35
TfidfVectorizer()是一种将文本转换为TF-IDF特征向量表示的工具,用于提取文本中的关键词。TF-IDF(Term Frequency-Inverse Document Frequency)是一种用于评估文本中词语重要程度的方法,它考虑了一个词在文本中的频率以及在整个语料库中的稀有程度。
使用TfidfVectorizer()进行关键词提取通常需要以下步骤:
1. 导入需要的库和数据:
from sklearn.feature_extraction.text import TfidfVectorizer
2. 创建TfidfVectorizer对象,并将文本数据传入:
corpus = ["我 爱 自然语言处理",
"自然语言处理 是 人工智能 的 重要 分支",
"机器学习 是 实现 人工智能 的 一种 技术 方法"]
vectorizer = TfidfVectorizer()
3. 调用fit_transform()方法将文本转换成TF-IDF特征向量表示:
X = vectorizer.fit_transform(corpus)
4. 获取关键词及其对应的TF-IDF值:
features = vectorizer.get_feature_names()
for i in range(len(corpus)):
print("文本{}的关键词和对应的TF-IDF值:".format(i))
for j in range(len(features)):
if X[i, j] > 0:
print("关键词:{},TF-IDF值:{}".format(features[j], X[i, j]))
上述代码中,我们创建了一个包含3个中文文本的语料库corpus。然后,我们创建了TfidfVectorizer对象,并调用fit_transform()方法将语料库转换成了TF-IDF特征向量表示。最后,我们通过get_feature_names()方法获取了关键词列表,并遍历输出了每个文本的关键词及其对应的TF-IDF值。
以上就是使用TfidfVectorizer()对中文文本进行关键词提取的示例。通过TF-IDF特征向量表示,我们可以很方便地获取文本中的关键词,并根据其TF-IDF值对关键词进行排序,从而实现对文本的关键信息提取。
