TFIDF练习
直接上代码吧:
"""
测试Demo
"""
import lightgbm as lgb
import numpy as np
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.feature_extraction.text import CountVectorizer def use_lgb():
# 训练数据,500个样本,10个维度
train_data = np.random.rand(500, 10)
# 构建二分类数据
label = np.random.randint(2, size=500)
# 放入到dataset中
train = lgb.Dataset(train_data, label=label)
print(train) def use_tfidf():
sentence = ['没有 你 的 地方 都是 他乡', '没有 你 的 旅行 都是 流浪']
# 不去掉停用词
c = CountVectorizer(stop_words=None) # 拟合模型返回文本矩阵
count_word_tf = c.fit_transform(sentence) # print(count_word_tf.toarray())
# # 查看那些词,以字典的形式
# print(c.vocabulary_)
# # 得到特征
# print(c.get_feature_names()) ###############################
stopword = ['都是']
# 构建一个tfidf向量器,去除停用词
tfidf = TfidfVectorizer(stop_words=stopword) # 给出tfidf的权重,将tfidf矩阵抽取出来
weight = tfidf.fit_transform(sentence).toarray()
# 给出特征名称
word = tfidf.get_feature_names() print("有哪些词:")
print(word) print("\n词汇表以及他们的位置索引:")
for key, value in tfidf.vocabulary_.items():
print(key, value) print("\n词频矩阵:")
print(weight)
print(len(weight)) # 打印每类文本中的tfidf权重,第一个for变量所有样本,第二个for遍历某一类文档下的所有权重
for i in range(len(weight)):
print("这里输出的是第{}文本的词语tfidf权重".format(i))
for j in range(len(word)):
# 经过tfidf后,找出每篇文档相关的词,这些词就是精心挑选出来的。然后根据这些词到文档中去找到tfidf值
print(word[j], weight[i][j]) if __name__ == '__main__':
use_tfidf()
输出:
有哪些词:
['他乡', '地方', '旅行', '没有', '流浪'] 词汇表以及他们的位置索引:
他乡 0
旅行 2
流浪 4
地方 1
没有 3 词频矩阵:
[[0.6316672 0.6316672 0. 0.44943642 0. ]
[0. 0. 0.6316672 0.44943642 0.6316672 ]]
2
这里输出的是第0文本的词语tfidf权重
他乡 0.6316672017376245
地方 0.6316672017376245
旅行 0.0
没有 0.4494364165239821
流浪 0.0
这里输出的是第1文本的词语tfidf权重
他乡 0.0
地方 0.0
旅行 0.6316672017376245
没有 0.4494364165239821
流浪 0.6316672017376245
本文参考:https://blog.csdn.net/the_lastest/article/details/79093407
TFIDF练习的更多相关文章
- TF-IDF算法学习报告
TF-IDF是一种统计方法,这个算法在我们项目提取关键词的模块需要被用到,TF-IDF算法是用来估计 一个词汇对于一个文件集中一份文件的重要程度.从算法的定义中就可以看到,这个算法的有效实现是依靠 一 ...
- tf-idf知多少?
1.最完整的解释 TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度.字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反 ...
- TF-IDF提取行业关键词
1. TF-IDF简介 TF-IDF(Term Frequency/Inverse Document Frequency)是信息检索领域非常重要的搜索词重要性度量:用以衡量一个关键词\(w\)对于查询 ...
- Lucene TF-IDF 相关性算分公式(转)
Lucene在进行关键词查询的时候,默认用TF-IDF算法来计算关键词和文档的相关性,用这个数据排序 TF:词频,IDF:逆向文档频率,TF-IDF是一种统计方法,或者被称为向量空间模型,名字听起来很 ...
- TF-IDF
TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索与文本挖掘的常用加权技术.TF-IDF是一种统计方法,用以评估一字词对于一个文件集或 ...
- TF-IDF 加权及其应用
TF-IDF 加权及其应用 TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索的常用加权技术.TF-IDF是一种统计方法,用以评估某个 ...
- TF-IDF算法
转自:http://www.cnblogs.com/eyeszjwang/articles/2330094.html TF-IDF(term frequency–inverse document fr ...
- TF-IDF 文本相似度分析
前阵子做了一些IT opreation analysis的research,从产线上取了一些J2EE server运行状态的数据(CPU,Menory...),打算通过训练JVM的数据来建立分类模型, ...
- 基于TF-IDF值的汉语语义消歧算法
RT,学校课题需要233,没了 话说,窝直接做个链接的集合好了,方便以后查找 特征值提取之 -- TF-IDF值的简单介绍 汉语语义消歧之 -- 句子相似度 汉语语义消歧之 -- 词义消歧简介 c++ ...
- Mahout源码分析之 -- 文档向量化TF-IDF
fesh个人实践,欢迎经验交流!Blog地址:http://www.cnblogs.com/fesh/p/3775429.html Mahout之SparseVectorsFromSequenceFi ...
随机推荐
- Windows下 flex + bison 小例子
.下载flex和bison,网址是http://gnuwin32.sourceforge.net/packages/flex.htm 和http://gnuwin32.sourceforge.net/ ...
- vector、map删除当前记录
map<string, string> sMap; map<string, string>::iterator iter; for(iter = sMap.begin();it ...
- par函数bty参数-控制绘图边框
bty 可以看作box type 的缩写,控制绘图边框的显示,取值范围为o, l, u, c, ], n 默认值为"o", 代码示例: par(bty = "o" ...
- js unicode处理
//岗位详细界面 var str="1.\u000D\u21B52.\u000D\u21B53"; var pad = function() { var tbl = []; ret ...
- 【JavaNIO的深入研究4】内存映射文件I/O,大文件读写操作,Java nio之MappedByteBuffer,高效文件/内存映射
内存映射文件能让你创建和修改那些因为太大而无法放入内存的文件.有了内存映射文件,你就可以认为文件已经全部读进了内存,然后把它当成一个非常大的数组来访问.这种解决办法能大大简化修改文件的代码.fileC ...
- C# SerialPortHelper类
using System; using System.IO.Ports; class SerialPortHelper { private long _receiveByteCount = 0, _s ...
- linux中sftp默认登录的端口号是多少? sftp通过指定的端口号连接?sftp默认端口号
需求描述: 今天一个同事,遇到个问题,程序连接sftp服务器连接不上,问我端口号是多少, 我想了一下是21还是22,所以就做了测试,发现sftp默认的连接端口号是22, 在此做下记录. 操作过程: 1 ...
- Java web url 规范
设计URI应该遵循的原则 URI是网站UI的一部分,因此,可用的网站应该满足这些URL要求 简单,好记的域名 简短(short)的URI 容易录入的URI URI能反应站点的结构 URI是可以被用户猜 ...
- 安装php5.5 mssql扩展报错
./configure 后,直接make可能会出现libtool: link: `php_mssql.lo' is not a valid libtool object 的错误. make clean ...
- js禁止img拖动
其实只需要一句代码即可,那就是阻止元素的默认事件: <body> <img src="./../imgs/cat.jpg" id="test" ...