卷积网络,例如2D卷积:
上图中的右图是通过卷积核得到的结果,代码如下:
import matplotlib.pyplot as plt
import pylab
import cv2
import numpy as np
img = plt.imread("1.jpg")
plt.imshow(img)
pylab.show()
fil = np.array([[ -1,-1, 0],
[ -1, 0, 1],
[ 0, 1, 1]])
res = cv2.filter2D(img,-1,fil)
plt.imshow(res)
plt.imsave("res.jpg",res)
pylab.show()
但是,我们这样来看(看上述两张图的下边),从第一张图,我们很明显可以看清楚,小雪豹(这是雪豹哈,图片来源于百度图片搜索)爬在桌子上。但是,看第二章图呢,好像有点看不清哈,不对,确实不知道小雪豹在干嘛。自己认为,2D卷积损坏了原有的结构化信息。所以,随着技术的进步,GNNs( Graph Neural Networks ) 将变为一种趋势,就算不是一种趋势,这种空间结构的信息,对人工智能也会非常非常有用,不论对于欧式数据,或者非欧式数据。通过上面的例子,我们来谈谈,图网络中信息融合,这里面不仅仅是特征,而且是融合了特征之间的关系。
图网络融合自身特征和领域特征
假设有samples 的个数为4, samples的特征描述为 :
并且我们知道每个sample之间的关系如下图所示:
将samples直接的关系描述为(图矩阵):
我们进行这样的操作,如下公式所示:
发现什么没有? 的结果的每一行表示相邻节点特征之和,这里说一句,“数学真的很好玩”。
上述仅仅包含了邻域,那么我们怎么才能包含自身的特征呢,方法很简单:
令,
表示单矩阵。然后在
,最终得到的结果,就是我们包含了自身特征的结果,即就是自身节点和所有相邻节点的特征之和。如下: