GCN 入门
参考链接: https://www.zhihu.com/question/54504471/answer/611222866

1 拉普拉斯矩阵
- 参考链接: http://bbs.cvmart.net/articles/281/cong-cnn-dao-gcn-de-lian-xi-yu-qu-bie-gcn-cong-ru-men-dao-jing-fang-tong-qi
- L = D - A, A 为图的邻接矩阵, D 为顶点度的对角矩阵, L 为 拉普拉斯矩阵
1.1 拉普拉斯矩阵的类别


3 图卷积的参数
- 参考链接: http://bbs.cvmart.net/articles/281/cong-cnn-dao-gcn-de-lian-xi-yu-qu-bie-gcn-cong-ru-men-dao-jing-fang-tong-qi
- 由 1 小节得知, 图卷积的公式, 图卷积训练的参数在公式中对角矩阵中, GCN 的训练有两个版本, 第一版思维简单但是因为其缺点已经不再使用, 现在大都使用第二个版本
3.1 第一代图卷积训练
- 直接将对角矩阵中对角上的值当做参数
- 表示激活函数
- 表示输入向量
- 优点
- 发现中间的除去 的公式为拉普拉斯矩阵的分解公式, 那么在运算中不再需要分解公式, 直接使用拉普拉斯矩阵即可, 减少了计算量
- 参数少
3.2 第二代图卷积训练
- 将 转为了 , 其中为任意参数, 需要进行随机初始化, 即边的权重
- 借助 U 和拉普拉斯矩阵的特征进行化简, 得到
- L 表示拉普拉斯矩阵
- K 表示顶点的阶数, 顶点的邻居节点
- x 表示输入的特征, 为了形象的理解, 以一张灰度图为例
- 图的结构即图像的方格排列, 不需要人为的设计, 因为图片的形状就是如此, 每一个方格是图的一个顶点
- 像素值即每一个顶点的特征, 只不过在一般的图结构中, 顶点的值为一个特征向量
- 表示边的权重, 也是网络需要训练并且优化的参数
3.3 图解图卷积


- GCN每一次卷积对所有的顶点都完成了图示的操作
4 GCN 分类的效果
- 图结构如下

- 输入 PageID, IP, UA, DeviceID, UserID, 通过卷积, 得到中间节点的特征, 也就是分类的结果
- 与比较 GBDT 相比, 效果更好

5 图卷积网络的拓扑结构
- 参考链接: https://mp.weixin.qq.com/s/356WvVn1Tz0axsKd8LJW4Q
- 拓扑结构

- 和 CNN 类似, 每一层都是叠加堆积在一起的, 经过卷积得到的结果, 通过激活函数(ReLU, Sigmoid等)传到下一层
- 不是每一个顶点都要进行卷积重新计算新的特征, 而是选择靠近中心的顶点
- 在上图中, 表示的不是图的结构, 也不是边所代表的的权重, 而是每一个顶点对应的特征向量, 在图片中, 每一个顶点对应的是一个标量, 即像素值
- 在3 图卷积的参数中提到了图卷积的参数与公式, 第二代的图卷积公式在运用的时候回转变成一个更清晰的表示公式
- 表示标准化系数
- H 表示上一层每一个顶点的特征向量, 维度为 NxF, N 表示顶点个数, F 表示特征向量的维度
- W 表示边权重
- 公式的定性理解
- 选定一个顶点 V, 确定邻域, 如果个数不到邻域个数, 则补充哑顶点, 如果超过, 则删除对于的顶点
- 获取邻域中顶点的特征向量, 将其余顶点 V 的边(权重)相乘再相加, 得到新的维度的特征向量
- 防止较大的尺度变化, 将得到的结果进行标准化
- 图卷积的特点
GCN 入门的更多相关文章
- 图卷积神经网络(GCN)入门
图卷积网络Graph Convolutional Nueral Network,简称GCN,最近两年大热,取得不少进展.不得不专门为GCN开一个新篇章,表示其重要程度.本文结合大量参考文献,从理论到实 ...
- GCN入门理解
图是信息的最佳表示方式.在一个图中,有通过边(谓之“关系”)连接起来的节点(谓之“实体”).想一想,你的Facebook社交网络是个什么样子的:以你为中心连接上你的朋友们,他们又以不同的方式相互联系. ...
- 【GCN】图卷积网络初探——基于图(Graph)的傅里叶变换和卷积
[GCN]图卷积网络初探——基于图(Graph)的傅里叶变换和卷积 2018年11月29日 11:50:38 夏至夏至520 阅读数 5980更多 分类专栏: # MachineLearning ...
- 图神经网络 PyTorch Geometric 入门教程
简介 Graph Neural Networks 简称 GNN,称为图神经网络,是深度学习中近年来一个比较受关注的领域.近年来 GNN 在学术界受到的关注越来越多,与之相关的论文数量呈上升趋势,GNN ...
- 最全面的图卷积网络GCN的理解和详细推导,都在这里了!
目录 目录 1. 为什么会出现图卷积神经网络? 2. 图卷积网络的两种理解方式 2.1 vertex domain(spatial domain):顶点域(空间域) 2.2 spectral doma ...
- Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求
上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- Oracle分析函数入门
一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ...
- Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数
上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...
随机推荐
- python 之 编码
本节内容 编码回顾 编码转换 Python的bytes类型 编码回顾 在备编码相关的课件时,在知乎上看到一段关于Python编码的回答 这哥们的这段话说的太对了,搞Python不把编码彻底搞明白,总有 ...
- 【Nginx】如何按日期分割Nginx日志?看这一篇就够了!!
写在前面 Nginx是没有以日期格式作为文件名来存储的,也就是说,Nginx不像Tomcat,每天自动生成一个日志文件,所有的日志都是以一个名字来存储,时间久了日志文件会变得很大.这样非常不利于分析. ...
- bzoj2456mode
bzoj2456mode 题意: 给你一个n个数的数列,求出现次数超过n div 2的数(只有1个). 题解: 注意空间只有1M,显然不能开数组.用两个变量,一个存“当前数”,另一个存“当前数”的个数 ...
- Tips1:考虑用静态工厂方法代替构造器
用静态工厂方法来代替构造器为外界提供对象 描述: 静态工厂方法代替构造器来给外界提供对象,创建对象依然是由构造器来完成的 创建对象和提供对象: 创建对象的方式: 构造器 提供对象来哦方式: 构造器 类 ...
- 用Vue实现一个简单的图片轮播
本文已收录至https://github.com/likekk/studyBlog欢迎大家star,共同学习,共同进步.如果文章有错误的地方,欢迎大家指出.后期将在将GitHub上规划前端学习的路线和 ...
- C++ 深搜调错
因为前两天某网站的比赛一个深搜错了,我只得了3等奖,我找不到错误,给别的大佬看他们又嫌恶心.emm……,比赛结束后我自己反思了一下,深搜写错了该怎么办,或者说怎样避免写错. 首先,变量名不要太ex,比 ...
- 直接在x86硬件上显示图片(无os)
1 任务 为了学习计算机底层和os,我给自己布置了一个任务:在x86硬件上,使用c和nasm来显示一张bmp图片.完成这个任务,前后估计花了2个月的业余时间. 这个任务涉及了很多知识点,包括:启动区. ...
- javascript兼容问题 : let降级到var 遇到的闭包问题的解决方法
我用 for(let x in y) 循环一个图片元素数组. for (let x in arr) { arr[x].onload = function(){ /* ... */ } } 这样写是没 ...
- 【Nginx】使用Nginx如何解决跨域问题?看完这篇原来很简单!!
写在前面 当今互联网行业,大部分Web项目基本都是采用的前后端分离模式.前端为H5项目,后端为Java.PHP.Python等项目.而且大部分后端服务并不会只部署一套服务,而是会采用Nginx对后端服 ...
- 微信扫码登陆js
先贴一个微信开发文档教程 https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.ht ...