文本的向量表示之One-Hot表达、TF-IDF权重策略

文本的向量表示


1.向量表示方法
  • One-Hot表达
  • TF-IDF权重策略
2.目的

非结构化数据到结构化数据的转化

3.本质

将词袋中的每个词表示为一个个向量(词袋中的所有词不能重复)

4.One-Hot表达例子
  • 词袋:[am,college,data,I,in,majored,mining,mathematics,on]

  • 词袋中每个单词的向量表示:
    am: [1 0 0 0 0 0 0 0 0]
    college:[0 1 0 0 0 0 0 0 0]

  • 给出两个文档:
    文档1:I majored in mathematics in college.
    文档2:I am keen on learning data mining.

  • 文本转化为词向量矩阵
    文档1:[0 1 0 1 1 1 0 1 0]
    文档2:[1 0 1 1 0 0 1 0 1]#列表中元素个数=词袋元素个数

5.One-Hot缺点

忽略了句子的词频信息。

6.One-Hot改进——TF-IDF权重策略
  • key:权重策略文档中的高频词应具有表征此文档较高的权重。

  • 关键词词频TF,指一篇文档中关键词出现的频率:

T F = N M TF=\frac{N}{M}

其中, N N 是单词在文档中的频次, M M 是文档的单词数

  • 逆向文本频率IDF,用于衡量关键词权重的指数:

I D F = l o g ( D D w ) IDF=log(\frac{D}{D_w})

其中, D D 是总文档数, D w D_w 是出现了该单词的文档数

T F I D F = T F × I D F TF-IDF=TF \times IDF

  • 增加词频信息
    文本1:[0 1 0 1 2 1 0 1 0]
    文本2:[1 0 1 1 0 0 1 0 1]

  • 避免句子长度不一致问题,采用归一化文档TF信息
    文本1:[0 1/6 0 1/6 2/6 1/6 0 1/6 0]
    文本2:[1/6 0 1/6 1/6 0 0 1/6 0 1/6]

对于每一个单词都有一个 T F I D F TF-IDF 权值,对于一个文本即一句话都有一个 T F I D F TF-IDF 权值向量。

发布了22 篇原创文章 · 获赞 3 · 访问量 3097

猜你喜欢

转载自blog.csdn.net/weixin_39920026/article/details/104171732