0%

Unsupervised Learning: Word Embedding

Unsupervised Learning: Word Embedding

生成词向量是个非监督的过程,只有输入数据而不知道输出数据

这个问题不能用Auto-encoder来解(1-of-N encoding之间没有体现出词汇间的关联性)

Word Embedding

机器通过上下文学习一个单词的意思

Count based
  • 如果两个单词经常同时出现,那么这两个单词的词向量彼此接近
Prediction based
  • 给神经网络一个单词,预测下一个可能出现的单词(每个单词出现的机率)

  • 用第一层的neurons代表一个单词:词向量(word vector)/词嵌入特征(word embedding feature) —> V(w)

  • Sharing Parameters : 当用多个单词预测下一个单词的时候,同维对应的权重 $w_i$、$w_j$ 相同

    1617328908063

    • 为什么:如果不这么做,交换单词的输入顺序将会得到不同的结果;可以减少参数量

    • 怎么做:

      • 给 $w_i$ 和 $w_j$ 相同的初始值

      • 更新

  • Training : 最小化输出和目标词汇的交叉熵

  • 不同的架构

    • Continuous bag of word(CBOW) model:用上下文来预测中间可能出现的词汇
    • Skip-gram:用中间的词汇预测上下文可能出现的词汇

其他应用

  • Multi-lingual Embedding
  • Multi-domain Embedding
  • Semantic Embedding (document —> vector)
    • 只用BOW描述一篇文章是远不够的(语序不同导致的意义不同)