学生网站建设的心得,找工作哪个网站好招聘信息,常见的网络营销方法,省建设厅执业资格注册中心网站CSDN的朋友们大家好#xff0c;好久没写系列文章了。 近期读了很多图神经网络#xff08;GNN#xff09;和分子表征#xff08;molecular representation#xff09;的论文#xff0c;正好最近不是很忙#xff0c;所以我决定把自己的学习过程记录下来#xff0c;与大家…CSDN的朋友们大家好好久没写系列文章了。 近期读了很多图神经网络GNN和分子表征molecular representation的论文正好最近不是很忙所以我决定把自己的学习过程记录下来与大家共勉。 这个系列总体上将围绕着 GNN for molecular representation 展开我们从分子图和GNN基础出发。 本文主要参照以下两篇精美的科普文章
A Gentle Introduction to Graph Neural NetworksUnderstanding Convolutions on Graphs
这两篇文章很出名很大程度可能因为李沐老师曾出视频讲解过其中第一篇也有很多同学写了相似的笔记因此我这里就浅浅记录一下我个人的一些takeaways
分子图
图是具有一定映射关系的点集和边集的集合。 图中每个点和边都有其特定的性质embedding整张图也有一个全局的性质global。 这种数据结构可能跟传统深度学习的研究对象不一样例如CV中是将一张图看做很多的pixel每个pixel有三元色混合而成。我们此处可将一张图分成点集、边集和全局三块其实每块儿都可以是相对独立的。看点集时就可以将每个点看作一个pixel每个点有很多embedding一样。其他的边集和全局也是类似的。 图可以表征很多现实世界的物体例如图片和自然语言可以由图结构表示人与人之间的关系也可以由一条条边链接。 当然最重要的是分子可以很好的由图的形式表示。分子中的每个原子可被看做图上的节点。分子内成键可以看作连接不同节点的边。 如果我们进一步把每个键近似为一致的例如邻接矩阵中对应位置原子成键记为1不成键记为0。我们就得到了休克尔分子轨道理论中常用的邻接矩阵。该矩阵的特征值与分子稳定性等密切相关扬州大学的汪洋教授曾基于此发展出了XSI和CSI理论。好几篇顶刊 分子、邻接矩阵、分子图示意如下
图神经网络
OK请大家暂时忘掉分子图我们拿到分子后将其转换成了图后面怎么做神经网络就暂时与分子儿子无关了 OK请大家再看一下上一节提到的图的三个维度点边和全局 目前为止这只是一张静态的图。我们暂且将神经网络当成一个黑箱如果不考虑三个维度相互之间的信息交互的话我们可以给每一个维度写一个黑箱神经网络。原图上的各个embedding在经过黑箱后进行了迭代形成了新的embedding。我们称这样的现象为update这样的模块可以是多个这样的话图中各个元素的embedding会经过多次的update如下 我们现在聚焦到点集上某点的一次update。我们希望该点能够感知到周围点的存在即感受到周围的环境。在图神经网络里对应的专业术语是消息传递message passing还有一个术语是信息聚合aggregate。如下 多层的消息传递如下 可以看到初始图中的局域的性质在经过多次message passing后可以影响到远处的节点这样的现象又叫做图上的卷积操作。详情请看Understanding Convolutions on Graphs embedding update和message passing是图神经网络中的两大基本概念。二者本质上是在进行信息的聚合和迭代在经过多个block后输入的图会变成一张信息满满的图此时我们在基于此对目标性质进行预测。这一过程叫做图的pooling. 如果任务是预测点的性质比如预测分子中每个原子的电荷量。有以下两个思路1. 每个点对应的embedding feature是多维的去预测一个标量可以套用简单的回归模型。2. 边集和全局的embedding feature可以通过适当的方式助力点性质的预测。如下图所示 同样的对边的性质做预测时也可以将点集注入到边集的性质集合中 当然我们用的最多的还是对整个图的性质做预测。例如预测某分子的能量。这样我们可以将点和边的性质汇总到全局下图仅为边到全局 注意到点集、边集和全局之间的信息交互并非只在预测阶段使用。在信息聚合阶段也经常看到。例如下图中的node 和 edge 之间多次交互向浪一样前进因此叫做weave layer。
综上我们得到了GNN工作的完整链条 输入的图在经过多次的信息聚合和迭代后形成了一张新的图基于这张图我们对目标性质作预测。