【传统的语义向量表示方法】
- one-hot:每个词表示为一个很长的向量,向量的维度是词表大小,其中只有一个维度的值为1,其它元素为0.
- 词袋模型(BOW):将语料库中所有词语装进一个袋子里,不考虑其词法和语序的问题,即每个词语都是独立的,语料库中所有的词组成一个清单进行映射匹配。对于每一个句子或文档,其对应的下标与映射数组的下标相匹配,其值为该词语出现的次数。
例如:该例子来源于百度百科
以下是两个简单的文件:
(1) John likes to watch movies. Mary likes movies too.
(2) John also likes to watch football games.
基于以上两个文件,可以建构出下列清单:
[ “John”, “likes”, “to”, “watch”, “movies”, “also”, “football”, “games”, “Mary”, “too”]
此处有10个不同的词,使用清单的索引表示长度为10的向量:
(1) [1, 2, 1, 1, 2, 0, 0, 0, 1, 1]
(2) [1, 1, 1, 1, 0, 1, 1, 1, 0, 0]
每个向量的索引内容对应到清单中词出现的次数。
但是此向量表示法不会保存原始句子中词的顺序。
可见传统的表示方法存在的一个问题就是“词汇鸿沟”现象。
【Word2Vec】
深度学