专栏名称: AI科技评论
「AI科技评论」是国内顶尖人工智能媒体和产业服务平台,专注全球 AI 业界、学术和开发三大方向的深度报道。
目录
相关文章推荐
黄建同学  ·  不错//@时蝇喜箭:他好像写了若干篇 ... ·  昨天  
爱可可-爱生活  ·  [LG]《Intention-Conditi ... ·  昨天  
爱可可-爱生活  ·  【Anthropic多Agent研究系统:为 ... ·  2 天前  
爱可可-爱生活  ·  【[87星]mcp-discord:为Dis ... ·  3 天前  
51好读  ›  专栏  ›  AI科技评论

开发 | 用卷积神经网络处理 “图” 结构数据应该怎么办?这篇文章告诉你答案

AI科技评论  · 公众号  · AI  · 2017-06-10 22:36

正文

请到「今天看啥」查看全文


那么我们首先来看一下 CNN 在 Image 当中的应用。如图 3 所示,左图表示的是一张图像在一个神经网络层当中的卷机操作过程。最底部的那一层是输入的特征图(或原图),通过一个卷积(这里表示的是一个 3*3 的卷积核,也就是文章当中的 receptive filed=9)操作,输出一张卷积后的特征图。如图 3 的卷积操作,底层的 9 个像素被加权映射到上层的一个像素;再看图 3 中的右图,表示从 graph 的角度来看左图底层的输入数据。其中任意一个带卷积的区域都可以看作是一个中心点的 node 以及它的领域的 nodes 集合,最终加权映射为一个值。因此,底部的输入特征图可以看作是:在一个方形的 grid 图当中确定一些列的 nodes 来表示这个图像并且构建一个正则化的邻域图(而这个邻域图就是卷积核的区域,也就是感知野)。

图 3 图像的卷积操作

按照这样的方式来解释,那么如 paper 中 Figure1 所示,一张 4*4 大小的图像,实际上可以表示为一个具有 4 个 nodes(图中的 1,2,3,4)的图(graph),其中每一个 node 还包括一个和卷积核一样大小的邻域(neighborhood filed)。 那么,由此得到对于这种图像(image)的卷积实际上就是对于这 4 个 node 组成的图(graph)的领域的卷积。 那么,对于一个一般性的 graph 数据,同样的只需要选出其中的 nodes,并且求解得到其相关的固定大小(和卷积核一样大小)领域便可以使用 CNN 卷积得到图的特征表示。

图 4 paper 中的 Figure1

需要注意的是,图 4(b)当中表示的是(a)当中的一个 node 的邻域,这个感知野按照空间位置从左到右,从上到下的顺序映射为一个和卷积核一样大小的 vector,然后再进行卷积。但是在一般的图集当中,不存在图像当中空间位置信息。这也是处理图数据过程当中要解决的一个问题。

基于以上的描述 paper 当中主要做了三个事情:1. 选出合适的 nodes;2. 为每一个 node 建立一个邻域;3. 建立 graph 表示到 vector 表示的单一映射,保证具有相似的结构特征的 node 可以被映射到 vector 当中相近的位置。算法具体分为 4 个步骤:

1. 图当中顶点的选择 Node Sequence Selection

首先对于输入的一个 Graph,需要确定一个宽度 w(定义于 Algorithm 1),它表示也就是要选择的 nodes 的个数。其实也就是感知野的个数(其实这里也就是表明,每次卷积一个 node 的感知野,卷积的 stride= kernel size 的)。那么具体如何进行 nodes 的选择勒?

实际上,paper 当中说根据 graph 当中的 node 的排序 label 进行选择,但是本文并没有对如何排序有更多的介绍。主要采取的方法是:centrality,也就是中心化的方法,个人的理解为越处于中心位置的点越重要。这里的中心位置不是空间上的概念,应该是度量一个点的关系中的重要性的概念,简单的举例说明。如图 5 当中的两个图实际上表示的是同一个图,对其中红色标明的两个不同的 nodes 我们来比较他们的中心位置关系。比较的过程当中,我们计算该 node 和其余所有 nodes 的距离关系。我们假设相邻的两个 node 之间的距离都是 1。







请到「今天看啥」查看全文