0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

deepwalk算法核心的步骤

智能生物识别说 来源:快商通AI 作者:快商通AI 2021-10-14 09:59 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在数据量越来越大的今天,word2vec是通过字词的共现关系来学习字词的向量表示,Graph Embeding的思想类似于word2vec,通过图中节点与节点的共现关系来学习节点的向量表示,构成文本序列从而计算相互关联出现的词的概率,从而计算词向量表示文本。那么在图模型中的关键的问题就是如何来描述节点与节点的共现关系,于是方法是利用DeepWalk来采样这样的文本序列,通过随机游走(RandomWalk)的方式在图中进行节点采样,从而就能够输入序列计算图的向量表示。所以deepwalk算法核心的步骤就是两步:

RandomWalk

Skip-Gram

RandomWalk是一种可重复访问已访问节点的深度优先遍历算法。给定当前访问起始节点,从其邻居中随机采样节点作为下一个访问节点,重复此过程,直到访问序列长度满足预设条件。

spacer.gif算法过程就是输入一个图,输出节点表示的矩阵,简单对步骤进行解析:

初始化:从 $\mathcal{U}^{|V| \times d}$ 样本空间中采样,embedding的大小为 $d$

构建一棵二叉树Hierarchical Softmax

开始做 $\gamma$ 步的随机游走,这里的 $\gamma$ 是初始化好的超参数

打乱采样得到的节点

这个循环是开始以每个节点为根节点开始做长度为 $t$ 的随机游走,这里的 $t$ 为初始化的超参数。然后按窗口 $w$ 进行SkipGram学习文本序列

SkipGram

一般提到word2vec有两种主要的算法,Cbow和Skip-Gram,都是在统计语言模型的基础上计算一个词在文本中出现的概率用来作为这个词的表示向量,于是优化目标就是最大化$Pr(w_n|w_0,w_1,...,w_{n-1})$ 。 $w$ 表示的就是词。

SkipGram就是用当前词来预测上下文。丢掉了词序并且不考虑与当前词的距离。优化目标是最大化同一个句子中同时出现的词的共现概率:

预测给到的词从整个词表vocabulary中选择,因此在输出的时候会计算softmax进行选择,维度为 $|V|$ ,计算的维度会非常大,因此采用Hierarchical Softmax来构建二叉树进行选择,每个词就只需要计算 $log_2^{|V|}$ 次。

Node2Vec

node2vec依然采用的是随机游走的方式获取顶点的临近顶点序列,但不同的是node2vec采用的是一种有偏的随机游走。给定当前顶点 $v$,访问下一个顶点的概率是:

$\pi{vx}$ 是顶点 $v$ 到顶点 $x$ 之间的转移概率, $Z$ 是归一化参数。 node2vec引入两个超参数 $p$ 和 $q$ 来控制随机游走的策略,假设当前随机游走经过边 $(v, x) $ 到达顶点 $t$ ,设 $\pi{vx}=\alpha{pq}(t, x)\cdot w{vx}$ , $w_{vx}$ 是顶点 $v$ 和 $x$ 之间的边权。

$d{tx}$ 为顶点 $t$ 和顶点 $x$ 之间的最短路径距离。参数$p$和参数$q$的意义:控制重复访问刚刚访问过的顶点的概率。$p$作用于$d{tx}=0$,表达的意义就是顶点$x$就是访问当前顶点$v$之前刚刚访问过的顶点。如果$p$较高,则访问刚刚访问过的顶点的概率会变低,反之变高。$q$控制着游走是向外还是向内,如果$q>1$,随机游走倾向于访问和节点$t$相接近的顶点(类似于$BFS$)。如果$q<1$,则倾向于访问远离$t$的顶点(类似于$DFS$)。

Graph Convolutional Network

Graph Embedding的意义就在于能够利用图结构处理非结构化数据,因此在cv和nlp领域能够更进一步结合先验知识进行特征学习,因此是深度学习领域的重要发展方向。定义图$G=(V,E)$,$V$为节点的集合,$E$为边的集合,对于每个节点$i$, 均有其特征$x_i$,特征矩阵可以用$X_{N*D}$来表示,其中$N$表示节点数,$D$表示每个节点的特征编码尺寸,在nlp应用中就是embedding_size。对于图的理解有一个经典的思想:

图中的每个结点无时无刻不因为邻居和更远的点的影响而在改变着自己的状态直到最终的平衡,关系越亲近的邻居影响越大。

实际上从邻居节点获取信息的思想在很多领域都有应用,例如:word2vec和pagerank。很多参考的理解描述了更加细节的数学原理:从傅立叶变换到拉普拉斯算子到拉普拉斯矩阵。很难理解。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4760

    浏览量

    97142
  • 节点
    +关注

    关注

    0

    文章

    226

    浏览量

    25418
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    芯片制造的步骤

            简单地说,芯片的制造过程可以大致分为沙子原料(石英)、硅锭、晶圆、光刻(平版印刷)、蚀刻、离子注入、金属沉积、金属层、互连、晶圆测试与切割、核心封装、等级测试、包装上市等诸多步骤
    的头像 发表于 11-14 11:14 133次阅读

    如何使用恢复算法来实现开平方运算

    本文主要描述如何使用恢复算法来实现开平方运算。 简介 开平方的恢复算法其实与除法的恢复算法十分相似。首先我们假设X为输入的操作数(它应该为正数),而他的平方根可以表示为Qn=0.q1q2q3
    发表于 10-24 13:33

    确定谐波检测设备核心误差要求的步骤有哪些?

    ≤±0.3%、基波误差≤±0.1%)。以下是具体步骤,含每步的目标、操作与输出: 步骤 1:拆解场景核心需求 —— 明确 “误差要求服务的目标” 目标 :厘清场景的核心诉求,避免无依据
    的头像 发表于 10-13 17:23 365次阅读

    数据滤波算法的具体实现步骤是怎样的?

      数据滤波算法在电能质量在线监测装置中的具体实现,需围绕 “ 数据采集→预处理→算法执行→参数适配→效果验证→结果输出 ” 的全流程展开,核心是结合装置硬件特性(采样率、ADC 精度)和干扰类型
    的头像 发表于 10-10 16:45 427次阅读

    AI的核心操控:从算法到硬件的协同进化

           人工智能(AI)的核心操控涉及算法、算力和数据三大要素的深度融合,其技术本质是通过硬件与软件的协同优化实现对复杂任务的自主决策与执行。这一过程依赖多层技术栈的精密配合,从底层的芯片架构
    的头像 发表于 09-08 17:51 769次阅读

    液态金属电阻率测试仪的核心算法与信号处理技术

    液态金属电阻率测试仪之所以能在科研与工业领域精准捕捉液态金属的电学特性,背后离不开核心算法与信号处理技术的协同支撑。这两大技术如同测试仪的“智慧大脑” 与 “敏锐感官”,前者负责将原始测量数据转化
    的头像 发表于 09-01 09:21 439次阅读
    液态金属电阻率测试仪的<b class='flag-5'>核心算法</b>与信号处理技术

    SDIO SD卡电路设计速成攻略:核心步骤+调试技巧 !

    针对时间紧迫的开发者,本攻略直击SDIO外接SD卡电路设计的核心步骤,并补充实用调试技巧,帮助你在最短时间完成从理论到可用的电路实现。 今天一起来聊聊 SDIO外接SD卡: SDIO (Secure
    的头像 发表于 08-15 14:32 496次阅读
    SDIO SD卡电路设计速成攻略:<b class='flag-5'>核心</b><b class='flag-5'>步骤</b>+调试技巧 !

    PPEC电源DIY套件:图形化算法编程,解锁电力电子底层算法实践

    电源。这种方式不仅降低了开发门槛,还保留了对底层算法的控制能力,具有很强的实践性和教育意义。 升级版开关电源DIY 套件核心组件含: PPEC 最小系统板(PPEC32F334RBT7 芯片
    发表于 08-14 11:30

    三坐标测量机路径规划与补偿技术:核心算法解析

    三坐标测量的微米级精度背后,是精密的路径规划算法与实时补偿技术在保驾护航。三坐标测量机的智能避撞算法保障了测量的安全与高效;温度补偿技术消除了环境的无形干扰;点云智能处理则让海量数据蜕变为精准的工程
    的头像 发表于 08-01 14:15 1302次阅读
    三坐标测量机路径规划与补偿技术:<b class='flag-5'>核心算法</b>解析

    无铅焊接工艺有哪些步骤

    无铅焊接工艺的核心步骤如下,每个步骤均包含关键控制要点以确保焊接质量:
    的头像 发表于 08-01 09:13 709次阅读

    openstack搭建详细步骤

    openstack搭建详细步骤
    的头像 发表于 05-07 14:05 1610次阅读

    封装基板设计的详细步骤

    封装基板设计是集成电路封装工程中的核心步骤之一,涉及将芯片与外部电路连接的基板(substrate)设计工作。基板设计不仅决定了芯片与外部电路之间的电气连接,还影响着封装的可靠性、性能、成本及生产可行性。
    的头像 发表于 03-12 17:30 1684次阅读

    FOC 算法实现永磁同步电机调整指南

    本文档介绍了使用 FOC 算法实现永磁同步电机 (Permanent Magnet SynchronousMotor,PMSM)调整所需的步骤和设置,该算法如 AN1078《PMSM 电机的无传感器
    发表于 03-03 01:53

    深度解析:PCBA设计打样的核心步骤有哪些?

    一站式PCBA智造厂家今天为大家讲讲PCBA设计打样的步骤有哪些?PCBA设计打样的主要步骤。PCBA设计打样是电子产品开发中的关键环节,确保电路板的功能和性能符合设计要求。打样过程包括设计、采购
    的头像 发表于 02-19 09:12 676次阅读

    人脸识别技术的算法原理解析

    在数字化时代,人脸识别技术已经成为身份验证和安全监控的重要手段。这项技术的核心在于算法,它们能够从图像中提取关键信息,并与数据库中的信息进行匹配,以识别个体。 1. 人脸识别技术概述 人脸识别技术
    的头像 发表于 02-06 17:50 2944次阅读