文本分类实践

文章目录
  1. TF-IDF模型
  2. 特征抽取
  3. 特征稀疏
  4. 扩展

最近在负责基于特定关键词的文本分类模块, 写一篇博客总结一下

TF-IDF模型

TF-IDF算法全称为term frequency–inverse document frequency, TF就是term frequency为词频, IDF则是inverse document frequency为逆文档频率
我们主要用这个算法来提取关键词, 按照我们的理解, 在一篇文章中, 如果某个词的词频很高就认为这个词很重要, 与此同时在实际的文章中一些词出现很多次但并没有什么意义比如”了的”/“不是”等, 这些词被称为停用词, 意思是遇到这些词就将其不跳过不处理, 从另一个角度来讲, 如果某一个词在其他文章中也出现多次并不能表示这个词很重要, 因为这个词不能有效地区分这个文档, 所以逆文档频率来表征这个特点, 词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。二者定义如下:

TF:词频

$$tf(w,D) = \frac{n(w,D)}{n(D)} $$

  • 表示关键词w在文档D中的词频, 即关键词w在文档D中出现的次数$n(w,D)$和文档D中的总关键词数$n(D)$的比值

IDF:逆文档频率

$$idf(w,\{D\}) = \log{\frac{n(\{D\})}{n(D_w)}}$$

  • IDF表示的是关键词w在整个文档集合中的逆文档频率, 即文档总数$n(\{D\})$和关键词w所出现文件数$n(D_w)$的比值, 然后再取对数

TF-IDF值:

$$tf-idf(w, D) = tf(w,D) \times idf(w,\{D\})$$

  • 某一文档内的高频关键词,以及该关键词在整个文件集合中的低频出现的,就可以产生出高权重的TF-IDF, TF-IDF倾向于过滤掉常见的词语,保留重要的词语

TF-IDF可以有效评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度, 通过计算tf-idf的值我们将某个文档提取出来的关键词根据tf-idf值排序, 可以选择前n个作为该文档的特征, 其tf-idf值就是特征的权重, 到目前为止, 我们已经做完了特征选择的工作

  • 特征选择是就是依据某种权重计算公式从文档中选择一些有代表性的词

特征抽取

文本分类与SVM

word2vec算法

特征稀疏

在用TF-IDF模型抽出单条文本的特征之后我们发现一个很严重的问题就是特征过于稀疏

扩展

  1. 参考资料

  2. 使用框架