文本的向量表示
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,指一篇文档中关键词出现的频率:
其中, 是单词在文档中的频次, 是文档的单词数
- 逆向文本频率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]
对于每一个单词都有一个 权值,对于一个文本即一句话都有一个 权值向量。