图是一种通用的数据表示形式。现实世界中有许多数据可以表示为图的形式,也有很多数据可以转换车过图的形式。
尽管有的数据转换成图结构会有一定损耗,但是这这样的损耗不会影响下游任务的效果。如:连接预测;节点分类(根据与之相连的带标签节点来预测其标签);图级分类;图生成,图对比等。
图数据不是独立同分布数据,节点间是存在联系的,因此不适用于传统基于独立同分布假设的机器学习方法。
深度学习在图像处理上取得了很多成果,因为深度学习能够很好的完成特征学习。因此如果能将深度学习应用到图数据上,那么就可以直接对图数据进行特征学习。
推荐系统
参考:应用在阿里巴巴的图神经网络算法
交通预测(路段作为节点,路段之间的关系为边)
参考:应用在谷歌地图的交通预测方案
药物发现
参考:抗生素发现的深度学习方法
给定图,手动提取特征(包括度,中心性等)
局限性:手动提取,过程费时费力;无法考虑下游任务的特殊要求,特征不全面
给定图,自动学习节点或图的表示方法
优点:可以根据下游任务来优化特征提取
特征选择——保留主要(重要)特征,实现特征降维(保留了原始数据的可解释性,保持原数据物理意义不变等)
局限性:从原始特征空间选取特征,不能产生新的特征表示。
特征学习——从原始特征空间中学习新的特征表示,虽然得到的新的特征表示不具有物理意义,但是有更强的表示有助于下游任务。
图表示学习
第一代:数据降维
图表示->矩阵形式->对矩阵的分解可以用在图上
第二代:图嵌入
词嵌入->图嵌入
第三代:图深度学习
参考:图卷积神经网络
图表示学习的每一代之间都是紧密联系的。
所有深度学习模型都是端对端的模型
第二代图表示学习–一个通用框架–学习现有图嵌入方法
输入:图结构-邻接矩阵,每个节点(包含属性信息)
图滤波操作可以得到节点的表示;图池化操作可以得到图的表示。
图滤波是想通过图的拓扑结构来对图的节点信息进行增强。图滤波操作不会改变图的拓扑结构,即邻接矩阵不变,但特征会发生变化
图滤波分为两大类:基于谱域的图滤波,基于空间域的图滤波
图池化希望通过节点的表示来得到图的表示,通常将图不断的变小(池化),最后变成整个图只有一个节点。一步池化以后,图的结构会发生变化,通常是变小(粗糙化)->通过不断池化,就可以通过一个节点或几个节点表示整个图。
图池化分为两种:平面图池化->一步到位;层次图池化->一层一层进行池化
鲁棒性:图是脆弱的,一些微小的结构变化都可能会导致预测结果变化。
图神经网络可拓展性–逐点采样法;逐层采样法;子图采样法
图上的深度学习模型 --参考:MolGAN: An implicit generative model for small molecular graphs
自然语言处理
推荐系统
数据挖掘
计算机视觉
参考:
用图卷积网络进行多标签图像识别
PointFlow:具有连续标准化流的 3D 点云生成
生物医疗
参考:GNNExplainer: Generating Explanations for Graph Neural Networks