图神经网络 The Graph neural network model

1 图神经网络(原始版本)

图神经网络现在的威力和用途也再慢慢加强 我从我看过的最原始和现在慢慢最新的论文不断写上我的看法和见解 本人出身数学 所以更喜欢数学推导   第一篇就介绍图神经网络想法的开端 之后的图神经网络模型 都是基于此慢慢改进。

2 能处理的领域

针对常见的旅行者问题 社交网络 分子结构 等等常见的非结构化数据皆能进行处理 不同点在于你g(x) 即输出函数如何设计,图神经模型的贡献在于如何去学习一个非结构数据并将其表征

3 模型

3.1 简介

首先 针对图而言 信息有两大类 一个为图节点信息 一个为图边的信息  图的节点包含了一个节点的“状态”,我们用x(i)来表示i节点的“状态” 这是模型经过学习之后 学到的关于图信息的表征  我们可以很直观的假设 一个点的“状态”与周围节点的状态 周围节点与本节点的边(可以认为是二者的距离) 周围节点的标签 然后我们用一个函数f 去学习  于是我们可以得到以下的

我们要做的工作就是去学习到整个图 每个节点的“状态” ,但是我们会发现一个问题 那就是 i节点的“状态‘’ x(i)依赖于j节点的状态x(j) 同理j点也是 二者不断地相互依赖 形成一个循环。模型的假设就是我们可以通过循环迭代 去求解全图的“状态”

3.2

我们引入我们的输出函数g(x,l)即一个节点的输出会与此点的“状态”以及相连的边有关

由此我们得到了我们整体模型的两个函数 一个去求解图的状态 一个去输出(根据实际任务)

我们要解决的关键是f函数 如何去求解整个图的状态  数学上存在一个理论 即f对x的导数小于1时,我们可以保证 收敛  

迭代过程简单而言就是 用t轮的状态 去更新t+1轮的状态 ,最终得到全图收敛的状态。

3.3

因此 现在我们可以将求解过程按轮次展开 其中的g与f都为神经网络 结构 你可以自己设计     我们将整个求解过程展开成如下形式 其中前面都是不断迭代求解图的状态过程 

3.4

前面介绍了图神经模型的大体思路 接下来 我将介绍梯度下降及求导过程 因为图神经网络在求解过程中 需要保证状态收敛 才可以进行下一步 所以求导迭代过程有所不同

首先我们介绍一下一个隐函数的存在性

此函数反映了我们真实需要的状态x与我们现在所求t轮的x(t)之间的距离 理论上可以证明 存在能让我们求解到完美x的参数w,继而将参数w与x联系起来。

3.5

然后在引入我们的损失函数e 此函数如何定义损失与你的输出函数g有密切相关 需要你自己设计 再次不在累述。根据模型展开结构 ,我们得到了如下的求导公式 

这个为通过时间的求导法则 很接近传统rnn 我也不再累述。 根据我们的假设 当迭代一定次数后 z(t)等于z(t+1)  

根据(8)得到(9)   我们再根据我们之前证明存在的隐函数,以及根据隐函数求导法则得到(10), (11)为另一个方向求解导数 不根据我们模型的展开,直接根据偏导定义直接求得结果  将(9)(10)(11)带入得到了以下的求导法则 

再次求导公式中 全部转化为对参数w的求导     接下来为z(T)的一个迭代过程 类似于一个数列的求和   

至此我们得到了我们全部的求导法则

3.6 模型算法

在求导过程中 我们是假设收敛到一个值时 我们才能采用我们推导的公式进行求导 因此 算法方面我们需要增加两个步骤 去验证收敛 然后才能继续求导    整体算法框图如下  

4 总结

整体模型的贡献就是解决了如何去学一个非结构数据的特征,采用迭代到收敛值的方法去学习,可能大家也发现了 针对两个点之间的联系 边 此模型并没有怎么重点关注 现在的图神经思想类似 不过加入了边的学习。

5 问题与自己想法

首先1) 此模型在计算过程中 要保证f对x的导数小于1 这点会让模型无法加深 层数一高 必然出现梯度消失之类问题

2) 没有有效去学习边的信息

原文地址:https://www.cnblogs.com/shenliao/p/8960782.html

时间: 2024-09-29 07:16:42

图神经网络 The Graph neural network model的相关文章

卷积神经网络(Convolutional Neural Network,CNN)

全连接神经网络(Fully connected neural network)处理图像最大的问题在于全连接层的参数太多.参数增多除了导致计算速度减慢,还很容易导致过拟合问题.所以需要一个更合理的神经网络结构来有效地减少神经网络中参数的数目.而卷积神经网络(Convolutional Neural Network,CNN)可以做到. 1. 卷积神经网络构成 图 1:卷积神经网络 输入层 整个网络的输入,一般代表了一张图片的像素矩阵.图 1中最左侧三维矩阵代表一张输入的图片,三维矩阵的长.宽代表了图

深度学习:卷积神经网络(convolution neural network)

(一)卷积神经网络 卷积神经网络最早是由Lecun在1998年提出的. 卷积神经网络通畅使用的三个基本概念为: 1.局部视觉域: 2.权值共享: 3.池化操作. 在卷积神经网络中,局部接受域表明输入图像与隐藏神经元的连接方式.在图像处理操作中采用局部视觉域的原因是:图像中的像素并不是孤立存在的,每一个像素与它周围的像素都有着相互关联,而并不是与整幅图像的像素点相关,因此采用局部视觉接受域可以类似图像的此种特性. 另外,在图像数据中存在大量的冗余数据,因此在图像处理过程中需要对这些冗余数据进行处理

RNN循环神经网络(Recurrent Neural Network)学习

一.RNN简介 1.)什么是RNN? RNN是一种特殊的神经网络结构,考虑前一时刻的输入,且赋予了网络对前面的内容的一种'记忆'功能. 2.)RNN可以解决什么问题? 时间先后顺序的问题都可以使用RNN来解决,比如:音乐,翻译,造句,语音识别,视频图像预测,语言处理等等,后来经过变种甚至可以达到CNN的作用 具体例子1 Car which.............,() ..........使用RNN可以预测括号里面的内容应该为 is/was. 2 学习莎士比亚写的诗词,然后进行模仿 3 你想为

zz【清华NLP】图神经网络GNN论文分门别类,16大应用200+篇论文最新推荐

[清华NLP]图神经网络GNN论文分门别类,16大应用200+篇论文最新推荐 图神经网络研究成为当前深度学习领域的热点.最近,清华大学NLP课题组Jie Zhou, Ganqu Cui, Zhengyan Zhang and Yushi Bai同学对 GNN 相关的综述论文.模型与应用进行了综述,并发布在 GitHub 上.16大应用包含物理.知识图谱等最新论文整理推荐. GitHub 链接: https://github.com/thunlp/GNNPapers 目录            

Recurrent Neural Network(循环神经网络)

Reference:   Alex Graves的[Supervised Sequence Labelling with RecurrentNeural Networks] Alex是RNN最著名变种,LSTM发明者Jürgen Schmidhuber的高徒,现加入University of Toronto,拜师Hinton. 统计语言模型与序列学习 1.1 基于频数统计的语言模型 NLP领域最著名的语言模型莫过于N-Gram. 它基于马尔可夫假设,当然,这是一个2-Gram(Bi-Gram)模

Neural Network学习(二)Universal approximator :前向神经网络

1. 概述 前面我们已经介绍了最早的神经网络:感知机.感知机一个非常致命的缺点是由于它的线性结构,其只能做线性预测(甚至无法解决回归问题),这也是其在当时广为诟病的一个点. 虽然感知机无法解决非线性问题,但是其给非线性问题的解决提供了一个思路.感知机的局限来自于其线性结构,如果我们能够给其加入非线性结构,比如先给输入做一个非线性变换,这样其就能拟合非线性问题.那么这就是我们这次要讲的前向神经网络. 2. 结构 前向神经网络(Feed-forward Neural Network)是一种多层的网络

08-GNN 图机器学习之图神经网络

图神经网络 node embedding 回顾了之前node2vec的例子以及深度学习卷积的一些基础 浅层encoder的局限性: 参数数量O(v):节点间没有共享参数,每个节点有自己的embedding 不能表征未见过的节点 没有综合考虑节点特征 本节学习图神经网络,多层的非线性的 那么,在图中,如何做卷积? 如果输入是邻接矩阵,那么模型不能适配各种规模的网络:对节点的顺序也没有敏感性 图的深度学习基础 起初,对于一个图G V:节点集合 A:邻接矩阵 X:节点的特征向量 图卷机网络 思路:图的

机器学习公开课笔记(4):神经网络(Neural Network)——表示

动机(Motivation) 对于非线性分类问题,如果用多元线性回归进行分类,需要构造许多高次项,导致特征特多学习参数过多,从而复杂度太高. 神经网络(Neural Network) 一个简单的神经网络如下图所示,每一个圆圈表示一个神经元,每个神经元接收上一层神经元的输出作为其输入,同时其输出信号到下一层,其中每一层的第一个神经元称为bias unit,它是额外加入的其值为1,通常用+1表示,下图用虚线画出. 符号说明: $a_i^{(j)}$表示第j层网络的第i个神经元,例如下图$a_1^{(

神经网络详解 Detailed neural network

神经网络之BP算法,梯度检验,参数随机初始化 neural network(BackPropagation algorithm,gradient checking,random initialization) 一.代价函数(cost function) 对于训练集,代价函数(cost function)定义为: 其中红色方框圈起的部分为正则项,k:输出单元个数即classes个数,L:神经网络总层数,:第层的单元数(不包括偏置单元),:表示第层边上的权重. 二.误差逆传播(BackPropaga