当前位置:   article > 正文

特征提取方法:One-hot、TF-IDF、Word2vec_python中word2vec文本特征提取

python中word2vec文本特征提取

1.One-hot

定义

one-hot编码又称独热码,该编码使用n位状态寄存器对n个状态进行编码,而且只有一个比特位为1,其他位全为0。也就是说,每个状态都有其独立的寄存器位和编码表示,且在任意时刻有且仅有一位有效。

优点与缺点

优点:使得离散状态的原始数据变得“连续”且有序,便于后续分类器等处理;在一定程度上扩充了特征的取值空间,便于分析计算。
缺点:One-hot编码属于词袋模型,未考虑词与词之间的顺序关系和语义关系(而这两点因素对于文本分类等工作具有重要影响);产生的特征还是离散稀疏的。

Python实现

借助Python的sklearn库中提供的工具类,可以实现one-hot编码功能。代码演示如下:

from sklearn.preprocessing import OneHotEncoder
enc = OneHotEncoder()
# X为输入语料
#X = [['Male', 1], ['Female', 3], ['Female', 2]]
# 训练编码
enc.fit(X)
# 生成编码序列
arr = enc.transform([['Female', 1], ['Male', 3]]).toarray()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2.TF-IDF

定义

TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF是词频(Term Frequency),IDF是逆文本频率指数(Inverse Document Frequency)。
TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。
——百度百科

算法原理

TF(Term Frequency)

TF为词频,表示单个词条在目标文档中出现的频次,即 t f i j = n i j tf_{ij}=n_{ij} tfij=nij,其中 n i j n_{ij} nij表示文档 d j d_j dj中词 t i t_i ti出现的次数。
但考虑到同一个词条在不同篇幅的文章中出现的次数对TF值的干扰,因此考虑将TF值进行归一化,即将原始词频除以该文档的词条总数作为最终值。其计算公式如下: t f i j = n i j ∑ k n k j tf_{ij}=\frac{n_{ij}}{\sum_kn_{kj}} tfij=

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/353519?site
推荐阅读
相关标签
  

闽ICP备14008679号