文章目录
本质
便于计算机理解,将文本转化为数值。
当前阶段,对文本的向量化 大部分研究都是通过 词向量
来实现的。
- 词向量:词袋模型,word2vec
- 文章/句子作为向量:doc2vec, str2vec
词袋模型
词袋(Bag Of Word)模型是最早的 以词语为基本处理员 的文本向量化方法。
原理
示例:
存在以下两个文本文档
1:Bob likes to play basketball, Jim likes too.
2:Bob also likes to play football games.
构建如下词典(dictionary):
Dictionary = {1:”Bob”, 2. “like”, 3. “to”, 4. “play”, 5. “basketball”, 6. “also”, 7. “football”, 8. “games”, 9. “Jim”, 10. “too”}。
这个词典一共包含10个不同的单词,上面两个文档每一个都可以用一个10维向量表示(用整数数字0~n(n为正整数)表示某个单词在文档中出现的次数):
1:[1, 2, 1, 1, 1, 0, 0, 0, 1, 1]
2:[1, 1, 1, 1 ,0, 1, 1, 1, 0, 0]
特点
- 原文本中单词的出现顺序,在该向量中没有体现。
- 主要体现单词的频率
优点
- 简单易行
缺点
- 维度灾难
- 没有词序信息
- 没有语义信息(只是将词语符号化)
词空间模型
分布假说(the Distributional Hypothesis):上下文相似的词,其语义也相似。
比如:我喜欢吃 苹果
和 我喜欢吃 梨子
,那么苹果和梨子 语义相似。
基于分布假说来表示词义,就是 词空间模型(word space model)。
神经网络的崛起,让基于上下文建模变得容易。
神经网络构建词向量,主要是根据上下文与目标词之间的关系进行建模。
NNLM 模型
NNLM:Neural Network Language Models,神经网络语言模型
与传统估算方法不同,NNLM 模型通过一个神经网络结构对 n元条件概率
进行估计。
实现:
从语料库中搜集一系列长度为n 的文本序列,假设这些长度为 n 的文本序列组成的集合为 D,那么 NNLM 的目标函数为 ∑ D P ( w i ) ∣ w i − ( n − 1 ) , . . . w i − 1 \sum_D P(w_i) | w_{i-(n-1)},...w_{i-1} ∑DP(wi)∣wi−(n−1),...w