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

    文章

    4800

    浏览量

    98515
  • 节点
    +关注

    关注

    0

    文章

    230

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    端子电流循环寿命试验机核心算法解析:温升预测模型与寿命衰减曲线拟合

    端子电流循环寿命试验机的核心算法,是实现端子寿命精准预测、测试过程智能管控的关键,其中温升预测模型与寿命衰减曲线拟合两大核心算法,分别解决了测试过程中的温度动态调控与寿命趋势研判问题,共同构建起科学
    的头像 发表于 04-02 09:21 140次阅读
    端子电流循环寿命试验机<b class='flag-5'>核心算法</b>解析:温升预测模型与寿命衰减曲线拟合

    大电流温升试验仪的核心技术拆解:恒流源设计、温控算法与抗干扰策略

    大电流温升试验仪的精准检测能力,核心依赖于三大核心技术的协同作用——恒流源设计、温控算法与抗干扰策略。这三项技术相互支撑、缺一不可,共同决定了试验仪的检测精度、运行稳定性与适应能力,是设备实现高效
    的头像 发表于 03-25 09:28 187次阅读
    大电流温升试验仪的<b class='flag-5'>核心</b>技术拆解:恒流源设计、温控<b class='flag-5'>算法</b>与抗干扰策略

    变频器带载调试步骤

    )。下面的步骤是一个通用的调试流程,你在实际操作中可以作为参考。 带载调试核心步骤 安全连接与低速启动 连接负载 :将电机与负载的联轴器可靠连接,确保所有机械安装牢固。 点动试运行 :先在极低频率(如2-5Hz)下点动电机
    的头像 发表于 03-12 12:04 239次阅读
    变频器带载调试<b class='flag-5'>步骤</b>

    算法工程师需要具备哪些技能?

    算法工程师需要掌握一系列跨学科的技能,涵盖数学基础、编程能力、算法理论、工程实践以及业务理解等多个方面。 以下是具体技能及学习建议: 线性代数核心内容:矩阵运算、特征值分解、向量空间等。应用场
    发表于 02-27 10:53

    集成电路版图设计的核心组成与关键步骤

    在集成电路设计中,版图(Layout)是芯片设计的核心环节之一,指芯片电路的物理实现图。它描述了电路中所有元器件(如晶体管、电阻、电容等)及其连接方式在硅片上的具体布局。版图是将电路设计转化为实际可制造物理形态的关键步骤,类似于建筑设计中平面图到实际结构的转化。
    的头像 发表于 12-26 15:12 1077次阅读
    集成电路版图设计的<b class='flag-5'>核心</b>组成与关键<b class='flag-5'>步骤</b>

    合科泰MOSFET选型的四个核心步骤

    面对数据手册中繁杂的参数,如何快速锁定适合应用的 MOSFET?遵循以下四个核心步骤,您能系统化地完成选型,避免因关键参数遗漏导致的设计风险。
    的头像 发表于 12-19 10:33 900次阅读

    芯片制造的步骤

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    无铅焊接工艺有哪些步骤

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