图表示学习起源: 从Word2vec到DeepWalk

本文介绍了图表示学习的起源,从Word2vec的Skip-Gram模型和Hierarchical Softmax到DeepWalk算法。DeepWalk通过随机游走模拟句子,使用Skip-Gram训练节点的向量表示,可用于图的下游任务,如节点分类。实验表明,DeepWalk在效果和可伸缩性上表现出色。
摘要由CSDN通过智能技术生成

本文发表在知乎专栏<435算法研究所>,介绍的是2014年的一篇文章《DeepWalk: Online Learning of Social Representations》,附个链接https://arxiv.org/pdf/1403.6652.pdf,这是NLP中的表示学习算法第一次被引入到图结构当中。如标题,本文先来介绍Word2vec的基本知识,再来介绍下如何利用Word2vec来表示图结构。

一、Skip-Gram

一般提到word2vec有两种算法,cbow和Skip-Gram,相对来说Skip-Gram更为常用。目标是通过训练,用向量embedding来表示词,向量embedding中包含了词的语义和语法信息。

统计语言模型需要计算出一句话在词袋空间中出现的概率,通常的优化目标是最大化概率

。w表示词袋中的单词,序号表示了词在句子中的顺序关系,但是这个目标实现起来比较困难。

Skip-Gram放宽了限制,做了一些调整。1)不再用句子中前面的词来预测下一个词,而是用当前词去预测句子中周围的词;2)周围的词包括当前词的左右两侧的词;3)丢掉了词序信息,并且在预测周围词的时候,不考虑与当前词的距离。优化目标是最大化同一个句子中同时出现的词的共现概率,优化目标如公式(1)所示,其中k表示滑窗大小。

Skip-Gram的模型结构如下图所示,在整个词袋vocabulary中预测上下文词,在输出端需要做一个|V|维度的分类,|V|表示词袋vocabulary中词的数量。每一次迭代计算量非常庞大,这是不可行的。为了解决这个问题,采用了Hierarchical Softmax分类算法。

img

Hierarchical Softmax

如下图所示,构建一个二叉树,每一个词或者分类结果都分布在二叉树的叶子节点上,在做实际分类的时候,从根节点一直走到对应的叶子节点,在每一个节点都做一个二分类。假设这是一颗均衡二叉树,并且词袋的大小是|V|,那么从根走到叶子节点只需要进行 次计算,远远小于|V|的计算量。

img

具体如何计算?我们以上图中用 预测 为例进行介绍。树的根部输入的是

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值