参考文献:
[1] Word2Vec Tutorial - The Skip-Gram Model
最近项目需要用到 Graph Embedding 模型,其中比较典型的 DeepWalk 模型需要用到 Skip-Gram 算法,所以简单把这个系列学习一下做个记录。
Word2Vec
Word2Vec 是从大规模文本语料中以无监督的方式学习语义知识的一种模型,它通过学习文本,用词向量的方式表征词的语义信息。即构建一个嵌入空间,使语义相似的词在该空间内距离相近。
在 Word2Vec 模型中,应用较广泛的模型主要有 Skip - Gram 和 CBOW 两种,前者用于给定 input word 预测上下文,后者用于给定上下文预测 input word。
[例如]
- CBOW:cat ate__(答案:food)
- Skip-Gram:__food(答案:{cat, ate})
Skip - Gram 模型
Skip - Gram 模型结构是仅有一个隐藏层的全连接神经网络,其训练过程可视作一个 Fake Task(伪任务),即训练模型的目的不是将训练好的模型用于下游任务,而是为了获取隐藏层的权重矩阵,因为权重矩阵包含了所有单词的权重信息。
Skip - Gram 模型任务: 给定一个特定的 token 作为输入,记为 w I w_I wI,