tfidf python 中文 实例(tfidf和word2vec区别)

网友投稿 417 2022-08-24


tfidf python 中文 实例(tfidf和word2vec区别)

from sklearn.feature_extraction.text import TfidfTransformerfrom sklearn.feature_extraction.text import CountVectorizerif __name__ == "__main__": corpus = ["我 来到 北京 清华大学", # 第一个文本切词后的结果,词之间以空格隔开 "他 来到 了 网易 杭研 大厦", # 第二个文本的切词结果 "小明 硕士 毕业 与 中国 科学院", # 第三个文本的切词结果 "我 爱 北京 天安门"] # 第四个文本的切词结果 def cut(sentence): return sentence.split(" ") vectorizer = CountVectorizer(analyzer="word", tokenizer=cut) # 将文本中的词语转换为词频矩阵,矩阵元素a[i][j] 表示j词在i个文本下的词频 transformer = TfidfTransformer() # 统计每个词语的tf-idf权值 X = vectorizer.fit_transform(corpus) tfidf = transformer.fit_transform(X) # 第一个fit_transform是计算tf-idf,第二个fit_transform是将文本转为词频矩阵 word = vectorizer.get_feature_names() # 获取词袋模型中的所有词语 print(word) print(X.toarray()) weight = tfidf.toarray() # 将tf-idf矩阵抽取出来,元素a[i][j]表示j词在i个文本中的tf-idf权重 for i in range(len(weight)): # 打印每个文本的tf-idf词语权重,第一个for遍历所有文本,第二个for便利某一个文本下的词语权重 print("-------这里输出第", i, u"个文本的词语tf-idf权重------") for j in range(len(word)): print(word[j], weight[i][j])

[‘与’, ‘中国’, ‘了’, ‘他’, ‘北京’, ‘大厦’, ‘天安门’, ‘小明’, ‘我’, ‘来到’, ‘杭研’, ‘毕业’, ‘清华大学’, ‘爱’, ‘硕士’, ‘科学院’, ‘网易’] [[0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 0] [0 0 1 1 0 1 0 0 0 1 1 0 0 0 0 0 1] [1 1 0 0 0 0 0 1 0 0 0 1 0 0 1 1 0] [0 0 0 0 1 0 1 0 1 0 0 0 0 1 0 0 0]] -------这里输出第 0 个文本的词语tf-idf权重------ 与 0.0 中国 0.0 了 0.0 他 0.0 北京 0.4658085493691629 大厦 0.0 天安门 0.0 小明 0.0 我 0.4658085493691629 来到 0.4658085493691629 杭研 0.0 毕业 0.0 清华大学 0.5908190806023349 爱 0.0 硕士 0.0 科学院 0.0 网易 0.0 -------这里输出第 1 个文本的词语tf-idf权重------ 与 0.0 中国 0.0 了 0.4217647821447532 他 0.4217647821447532 北京 0.0 大厦 0.4217647821447532 天安门 0.0 小明 0.0 我 0.0 来到 0.3325241986862672 杭研 0.4217647821447532 毕业 0.0 清华大学 0.0 爱 0.0 硕士 0.0 科学院 0.0 网易 0.4217647821447532 -------这里输出第 2 个文本的词语tf-idf权重------ 与 0.408248290463863 中国 0.408248290463863 了 0.0 他 0.0 北京 0.0 大厦 0.0 天安门 0.0 小明 0.408248290463863 我 0.0 来到 0.0 杭研 0.0 毕业 0.408248290463863 清华大学 0.0 爱 0.0 硕士 0.408248290463863 科学院 0.408248290463863 网易 0.0 -------这里输出第 3 个文本的词语tf-idf权重------ 与 0.0 中国 0.0 了 0.0 他 0.0 北京 0.43779123108611473 大厦 0.0 天安门 0.5552826649411127 小明 0.0 我 0.43779123108611473 来到 0.0 杭研 0.0 毕业 0.0 清华大学 0.0 爱 0.5552826649411127 硕士 0.0 科学院 0.0 网易 0.0


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python flask mysql request 实例(python能做什么)
下一篇:Java-Python的完全对齐的tokenizer(字级别)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~