图神经网络简史、简介

  • 1.图神经网络简史
  • 2.图神经网络--学习过程
  • 3.图神经网络--理论基础
  • 4.图神经网络的局限
  • 5.GNN,RNN,GGNN
  • 6.小结

阅读笔记:从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)(https://www.cnblogs.com/SivilTaram/p/graph_neural_network_1.html)
该文详细写明了设涉及的参考材料,是一个很棒的综述性材料。本文仅作为阅读该系列文章的笔记,详情请参考原文。

GNN侧重于时序展开,GCN是空间序展开

1.图神经网络简史

  1. 2005年–图神经网络的概念被提出,
  2. 2009年–Franco博士在论文[1]《The graph neural network model》阐明了图神经网络的理论基础。早期的GNN用于诸如依据分子结构对物质进行分类等问题。
  3. 2013年–Bruna首次提出基于频域和基于空域的卷积神经网络[2]。
  4. 其后,基于空域卷积的研究偏多,基于频域的工作相对较少。
  5. 2014年–引发了图表示学习的研究热潮(DeepWalk,知识图谱的分布式表示)。

2.图神经网络–学习过程

(没有明白如何测试,哪些东西是可学习的?)
基本思想就是:建模一张图(最核心的部分,希望可以通过后续的例子来说明如何建模一张图),通过信息的传播使整张图达到收敛,在其基础上再进行预测。

学习目标1–利用状态更新函数f,获取每个结点的图感知的隐藏状态。
学习目标2–利用输出函数g,来适应下游任务,例如分类。

状态更新函数f,用来不断更新结点的隐藏状态。其输入是:该结点的特征、邻居结点的隐藏状态、邻居结点的隐藏状态、边的特征。f使用神经网络建模,用另据结点的额隐藏状态来更新当前结点的状态,直至隐藏状态的变化幅度很小。

输出函数g,其输入是某一个结点的特征和隐藏状态,得到下游任务的输出,例如分类任务。

loss与f,g学习:(以社交网络为例,在整张图中)并不是每个结点都有监督信号。有监督信号的结点参与loss的计算,迭代的依次得loss对关于隐状态的hv0,hv1,...,hvTh^0_v,h^1_v,...,h^T_vhv0​,hv1​,...,hvT​的梯度,用于更新模型参数(f,g的权重吧)(具体操作还是跑代码能明白的清楚些) AP 算法。

3.图神经网络–理论基础

Franco博士图神经网络的理论基础是不动点理论,专指巴拿赫不动点定理。只要状态更新函数f是一个压缩映射,每个结点的任意初始化的隐状态都能够收敛至一个固定点的,即不动点。(如何保证这个不动点就是我们想要的点呢)

压缩映射:对于原空间中的任意两个点x,yx,yx,y,经过f映射后分别变成f(x),f(y)f(x),f(y)f(x),f(y)。如果满足d(f(x),f(y))≤cd(x,y),0≤c≤1d(f(x),f(y))\leq cd(x,y),0\leq c\leq 1d(f(x),f(y))≤cd(x,y),0≤c≤1,那么f即构成一个压缩映射。
即经f变换后的新空间比原空间要小,原空间被压缩了。不断进行压缩操作,最终就会把原空间中的所有点映射到一个点上。(压缩轨迹应该不私想象中那么平滑)

保证神经网络是一个压缩映射:限制f对h偏导数矩阵的大小,采用雅可比矩阵惩罚项的实现。

4.图神经网络的局限

(本阶段图神经网络的局限性)

  1. 边的特性无法学习
  2. 基于不动点的收敛会导致结点之间的隐藏状态存在较多的信息共享,从而导致状态太过于光滑,并且属于结点自身的信息匮乏。

5.GNN,RNN,GGNN

GNN隐状态的时序迭代更新方式与RNN非常类似,两者的区别:

  1. GNN依据不动点理论,沿时间展开长度是动态的,RNN沿时间展开的长度就是序列本身的长度。
  2. GNN用AP算法反向传播,RNN用BPTT优化

GGNN:可学习的边权,不依赖于不动点定理,使用GRU更新法则,状态更新若干步,利用BPTT算法反向传播得到边权和GRU的参数。

6.小结

之后会介绍图卷积神经网络,拜托了基于循环的方法,开始走向多层神经网络。

[1]. The graph neural network model, https://persagen.com/files/misc/scarselli2009graph.pdf
[2]. Spectral networks and locally connected networks on graphs, https://arxiv.org/abs/1312.6203

PaperNotes(16)-图神经网络GNN简史、不动点建模-笔记相关推荐

  1. 深入浅出图神经网络|GNN原理解析☄学习笔记(四)表示学习

    深入浅出图神经网络|GNN原理解析☄学习笔记(四)表示学习 文章目录 深入浅出图神经网络|GNN原理解析☄学习笔记(四)表示学习 表示学习 表示学习的意义 离散表示与分布式表示 端到端学习 基于重构损 ...

  2. 图机器学习(GML)图神经网络(GNN)原理和代码实现(前置学习系列二)

    图机器学习(GML)&图神经网络(GNN)原理和代码实现(PGL)[前置学习系列二] 上一个项目对图相关基础知识进行了详细讲述,下面进图GML networkx :NetworkX 是一个 P ...

  3. A.图机器学习(GML)图神经网络(GNN)原理和代码实现(前置学习系列二)

    图学习图神经网络算法专栏简介:主要实现图游走模型(DeepWalk.node2vec):图神经网络算法(GCN.GAT.GraphSage),部分进阶 GNN 模型(UniMP标签传播.ERNIESa ...

  4. 图神经网络(GNN)的简介

    近年来,图神经网络(GNN)在社交网络.知识图.推荐系统甚至生命科学等各个领域得到了越来越广泛的应用.GNN在对图节点之间依赖关系进行建模的强大功能,使得与图分析相关的研究领域取得了突破.本文介绍了图 ...

  5. 掌握图神经网络GNN基本,看这篇文章就够了

    https://www.toutiao.com/a6657732617623831051/ 2019-02-14 14:02:50 [新智元导读]图神经网络(GNN)在各个领域越来越受欢迎,本文介绍了 ...

  6. 图网络究竟在研究什么?从15篇研究综述看图神经网络GNN的最新研究进展

    近年来,由于图结构的强大表现力,用机器学习方法分析图的研究越来越受到重视.图神经网络(GNN)是一类基于深度学习的处理图域信息的方法. 到目前,相关研究的已经非常多了,不过我们回过头来看思考和回顾一下 ...

  7. 人工智能中图神经网络GNN是什么?

    来源:机器之心 本文约2400字,建议阅读5分钟 本文将介绍简单图神经网络(GNN)的基础知识及其内在工作原理背后的直观知识. 在社交网络分析等一些应用中,图神经网络已经得到了广泛的应用.新加坡科技研 ...

  8. 【图神经网络】图神经网络(GNN)学习笔记:基于GNN的图表示学习

    图神经网络GNN学习笔记:基于GNN的图表示学习 1. 图表示学习 2. 基于GNN的图表示学习 2.1 基于重构损失的GNN 2.2 基于对比损失的GNN 参考资料 本文主要就基于GNN的无监督图表 ...

  9. 【图神经网络实战】深入浅出地学习图神经网络GNN(上)

    文章目录 一.图神经网络应用领域 1.1 芯片设计 1.2 场景分析与问题推理 1.3 推荐系统 1.4 欺诈检测与风控相关 1.5 知识图谱 1.6 道路交通的流量预测 1.7 自动驾驶(无人机等场 ...

最新文章

  1. Python类的多态
  2. mysql 日期查询今天_Mysql 日期查询今天、昨天、近7天、近30天、本月、上一月、本季...
  3. 电脑:电脑弹窗广告三个解决方法,欢迎收藏!
  4. 你知道荷兰旗问题吗?
  5. 阶段5 3.微服务项目【学成在线】_day04 页面静态化_20-页面静态化-静态化测试-填写页面DataUrl...
  6. 心公正白壁无瑕什么意思?_人工智能可以编写无瑕的代码后,编码会变得无用吗?
  7. 管理小故事精髓 100例(转)
  8. 【数据结构与算法】详解什么是哈希表,并用代码手动实现一个哈希表
  9. VAX 的使用快捷键
  10. matlab 分组求平均值,MATLAB:取一个列表中两个数字的平均值?(MATLAB: taking the average of two numbers in a list?)...
  11. android textview 设置字体,Android 设置TextView自动调整字体大小
  12. 圣诞老人python代码_用Python画圣诞老人的N种方法
  13. 计算机逻辑与 或 非的表达式,计算机算数和,逻辑与,逻辑或,逻辑非分别是什么意思...
  14. 大数据常见英文词汇(三)之常见框架和组件(待续)
  15. 密信(MeSince) — 免费的全自动邮件加密软件
  16. 建站提示:B2C网站建设的注意事项
  17. wordpress创建_您可以使用WordPress创建的19种网站类型
  18. 超经典的 25 道 MyBatis 面试题!
  19. open-falcon分布式安装
  20. 数字式声纳设计原理 pdf_四川市政排水管道声纳监测服务

热门文章

  1. Linux Kbuild文档 4
  2. java判断ftp创建目录是否成功_Java判断Ftp服务器目录是否存在,若不存在创建目录 ....
  3. 计算机控制的点火系统由,第八节(点火系统)
  4. 计算机图形学在线作业,电子科技16秋《计算机图形学》在线作业3 辅导资料
  5. 哪里的mysql性能监控_mysql性能监控工具Innotop简介及配置
  6. ArcGis Desktop10 注册机授权方法与安装步骤
  7. 一步步编写操作系统 43 汇编语言和c语言的理解
  8. 一行c语言代码,打钩的一行c语言代码解释一下,谢谢,详细解释绝对最佳
  9. 【Python CheckiO 题解】Date and Time Converter
  10. 【Python CheckiO 题解】Even the Last