Introduction and Word Vectors
Human language and word meaning
- How do we represent the meaning of a word?
signifier(symbol)⇔signified(idea or thing) - How do we have usable meaning in a computer?
一般用:Wordnet(包含同义词集和上位词的一个巨大词典)
对应在计算机中的表达方式为: one-hot vector
缺点:由于向量是正交的,因此没法表示它们之间的相似度,如果词汇量太多,将使得向量的维度过大,难以计算
另一种方法:Representing words by their context
Distributional semantics
基于原理:一个单词的含义通常由在它附近经常出现的单词给出的。
对于文本中的一个单词w,它的上下文就是出现在它附近的一组单词(在一个划定好size的窗口下)
可以通过许多包含w的文本中的上下文来构建w的含义表示
Word2vec introduction
- 啥是Word2vec
基于原理:通过训练,将每个词都映射到一个较短的词向量上来。所有的这些词向量就构成了向量空间,进而可以用普通的统计学里概率的方法来研究词与词之间的关系。
包含大量的文本语料
固定词表中的每一个单词由一个词向量表示
文本中的每个单词位置 t,有一个中心词c,和它的上下文 o(除了 c 的外部单词)。
通过 c 和 o 的词向量相似性来计算 P(o/c)
不断的调整词向量,最大化概率
固定窗口,滑动窗口并计算:
推导过程还要再学一学,学完了补上来