写在前面

之前偶然在一本书中了解到19世纪末在美国很流行的一种成人教育叫“肖托夸”运动。人们通过这种运动,交流思想,分享知识。随着电视、电影、广播的兴起,这种运动没落了。

随着互联网的兴起,它演变成了很多其他的形式。比如通过线上的社群...

很感谢愿意参与我们技术交流的伙伴们,希望能够有更多的交流和思想碰撞。

图卷积神经网络和图信号处理的联系在哪里?

拉普拉斯矩阵的特征向量就是基函数,这相当于把网络的结构信息嵌入神经网络,那学习的是基函数前面的权系数,不知道这样理解对不对?

原始GCN论文中,很多内容是为了简化计算,对谱方法作一阶近似,这一块我觉得不必理会,GCN本质就是个Message Passing的过程,通过堆叠层数来获得全局信息,相比谱方法有工程上的极大优势而已,和特征向量也没有关系。

Message Passing到底是个什么过程?

感觉和图卷积神经网络的介绍有点脱节。可能做大数据或者人工智能的觉得GNN并没有什么特殊,但个人觉得对于有明确物理结构的研究对象,GNN比CNN的结果可能更有实在的物理意义。

可以通过Graphsage来理解。一个节点的特性是由它所在位置的邻居节点给塑造出来的,所以在对一个节点表示学习时就要把这些周围的邻居节点的信息给聚集到中心节点上。这样我就有了Message Passing的过程,就是从邻居节点到中心节点。

这个过程好理解,但是跟GNN的联系是什么呢?是在优化过程中体现的还是?

工程上都是效率为先,对于大数据而言,n^2的复杂度是承受不起的,所以GCN只是找到了一个实际可行的计算路径来学习结构信息。

思辨:个人感觉一味的强调邻居节点的影响有失偏颇,显然很多个体特征是源于外界的环境(并非邻居,而这种外界的环境我们无法建模,甚至不知道存不存在),过分强调关联而忽视了个体自身的特点,一个简单的例子是,多个弹簧用绳子连在一起组成的系统,且这些弹簧下均挂有重物,如果简单看弹簧的连接关系,而忽视弹簧下重物的特点,似乎不太合理。

过分强调关联而忽视自身的现象称为Over Smooth,GCN的确存在,但也有解决的法子,原GCN论文里面阐述个这个现象。

参考论文:1. Semi-Supervised Classification with Graph Convolutional Networkshttps://arxiv.org/abs/1609.029072. Representation Learning on Graphs with Jumping Knowledge Networkshttp://proceedings.mlr.press/v80/xu18c/xu18c.pdf

“GCN只是找到了一个实际可行的计算路径来学习结构信息”这个具体是什么意思,感觉如果是求基前面的系数,利用梯度下降计算就可以了呀?

GCN跟基向量没有关系,在理解GCN的时候不用和谱方法类比。

那论文中推导的拉普拉斯矩阵的特征向量的目的是?

我的理解是作者是想给GCN找了个理论解释:GCN的是谱方法的一阶近似。

神经网络学习的是权重,CNN学习的是核,那GCN到底学习的是啥?这么一说好像又和图的拓扑没有关系?

CNN也不符合严格数学意义上的卷积定义,CNN和GCN都只是比较契合数据本身的拓扑结构在进行计算。gcn虽然解释的时候是用谱方法解释的,但是已经简化太多了。

作者博客:https://tkipf.github.io/graph-convolutional-networks/

质疑:https://www.inference.vc/how-powerful-are-graph-convolutions-review-of-kipf-welling-2016-2/

理论到底是如何得来的呢?包括GNN里的权值共享也不明白。Message Passing是说明GNN怎么求权重的么?

Message passing 是说明怎么做forward计算,权重通过BP来学习。

另有:这个graph的卷积操作我就当做拓扑空间上的滤波器。说白了就是距离的计算,我这个点跟谁比较近。在Graph上面就是有边的距离近。像CNN呢,就是我们说的坐标空间,欧式空间,天生可以判断距离。所以,我理解的就是CNN就不需要那个邻接矩阵了。GCN就需要邻接矩阵告诉你谁比较近。如果没有,只有点没有变,变成非欧式空间的流形,我觉得还需要自己定义距离矩阵。

邻接矩阵的信息怎么用的?

公式如下:

我的粗浅的理解下:H这里如果对比成图像的话,就是把图像展开。每一个像素点,排列,先先变成一维向量。这个时候要做卷积,就需要通过A来控制你要拿哪些点出来了。就比如说一个像素点c周围的卷积,由于展开了,你不能做操作了。但你还想做以前的那种卷积操作,你需要A来控制。

可是还是有问题,他这个是在频域内(拉普拉斯特征向量张成的域内)卷积,实际上做的是时域的乘积,不能只看卷积,而是要看时域乘积到底在干什么?

这是简单做一个非欧空间和欧式空间对比,非专业CNN。图像上欧式空间自带空间卷积,Graph这种非欧空间的情况下想要知道每个节点的邻居是谁,就需要用到邻接矩阵(空间的相似度矩阵)来控制了,乘以它。这样一看CNN是个特例,自带相似度矩阵。这是大致的CNN与GCN的关系。

技术思辨:GCN和CNN到底有什么差别?相关推荐

  1. 上海交大的微电子学院计算机科学与技术 与 电子信息 区别,电子科学与技术和电子信息工程,到底有啥差别?学姐给你讲个明白...

    原标题:电子科学与技术和电子信息工程,到底有啥差别?学姐给你讲个明白 大学什么专业就业最好?大家都知道工科是计算机和软件,以及电子信息类专业,当然计算机也属于广义上的电子信息类专业. 一般广义的电子信 ...

  2. 当我们在做技术调研的时候,到底需要做什么?怎么做?

    一.序 日常工作中,或多或少都会有接触到一些技术调研的工作,有些是亲自参与,有些是分配给其他人来完成. 技术调研的过程中,会碰到一些问题,并且解决一些问题.有些技术调研可以做的非常完美,得出的结论让人 ...

  3. 在CNN上增加一层CAM告诉你CNN到底关注什么

    Cam(Class Activation Mapping)是一个很有意思的算法,他能够将神经网络到底在关注什么可视化的表现出来.但同时它的实现却又如此简介,相比NIN,googLenet这些使用GAP ...

  4. [验证码识别技术]字符验证码杀手--CNN

    字符验证码杀手--CNN 1 abstract 目前随着深度学习,越来越蓬勃的发展,在图像识别和语音识别中也表现出了强大的生产力.对于普通的深度学习爱好者来说,一上来就去跑那边公开的大型数据库,比如I ...

  5. 关于CNN的权重共享,CNN到底学到了什么?

    CNN的fliter里的每个值都是学习出来的不是事先设定好的. 经过fliter处理后得到是特征图(feature map) 卷积减少权重参数的本质: 权重共享,不同的fliter会在某些神经元上权重 ...

  6. 编程技术越来越被看中 编程到底是什么?赶紧看看!

    目前,编程离人们的生活越来越近,不少非专业人士也都大体懂一些编程的基本知识.在美国,很多非程序员人士也都会掌握一些编程的相关技术,使得在目前科技高速发展的时代,编程成了像语文数学一样的必修课. 有人曾 ...

  7. 编程技术越来越被看中 编程到底是什么?

    目前,编程离人们的生活越来越近,不少非专业人士也都大体懂一些编程的基本知识.在美国,很多非程序员人士也都会掌握一些编程的相关技术,使得在目前科技高速发展的时代,编程成了像语文数学一样的必修课. 有人曾 ...

  8. 人工机器:深度学习CNN到底实现了什么

    智能的广义含义,即学习模式和举一反三,在几何空间里寻找代数路径.判别式模型和生成式模型,都是使用大量的数据输入输出来拟合出代数路径. 现在的归纳式和生成式深度学习离AI还很遥远,AI更需要深度强化学习 ...

  9. 技术对游戏公司来讲到底有多重要?

     http://www.gameres.com/490298.html 2016-3-3 10:32:44 上传 下载附件 (154.32 KB) 文/曹政 几个月前在上海,去拜访了一个特别成功的 ...

  10. 技术直播:数据科学到底该怎么“玩”?

    90年代初,王健林抓住的房地产的机遇,现在才敢说"一个亿的小目标": 千禧年后 ,"马爸爸"抓住了电商的机遇,现在才能说"我对钱没有兴趣". ...

最新文章

  1. 实现wordpress的首页文章摘要!
  2. 传统MapReduce框架
  3. VTK:可视化之LabeledDataMapper
  4. java两字符串是否相等_Java与JavaScript中判断两字符串是否相等的区别
  5. springboot:记录jdbc
  6. w ndows7端口在哪里,win7电脑遇到端口被占用的情况该如何查看并将其关闭
  7. 深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法
  8. netlify支持php吗,hexo netlify 搭建简易博客
  9. HDU 2296 Ring -----------AC自动机,其实我想说的是怎么快速打印字典序最小的路径...
  10. 阿里巴巴高级技术专家章剑锋:大数据发展的 8 个要点
  11. Dx unsupported class file version 52.0 Conversion to Dalvik format failed with error 1
  12. 免费思维导图工具推荐,办公必备
  13. Android版本名称
  14. Linux磁盘空间爆满怎么办?定时文件清理脚本配置实现
  15. GitLab使用手册
  16. 华为v5服务器raid设置系统,华为服务器2288hv5raid阵列卡制作
  17. 基于RFID技术下的化工厂定位系统,包含化工厂人员定位解决方案-新导智能
  18. 微信分享的各种大小限制
  19. opencv读取的图像为什么是BGR
  20. Flex移动皮肤-第一部分:增强的皮肤功能基础

热门文章

  1. 数据--第52课 - 哈希表及其实现
  2. bootstrap-table教程演示
  3. JavaWeb01-HTML篇笔记(一)
  4. 创业者应该思考智能硬件能为灾难做什么
  5. VCenter 5.5 数据库过大造成的问题和解决方法
  6. js 调用百度地图,并且定位用户地址,显示省市区街,经纬度
  7. 继承接口Java多线程(二)、启动一个线程的3种方式
  8. Eclipse Code Template 设置自动加注释
  9. mysql优化之insert/delete/update
  10. UVA12169 Disgruntled Judge