DimeNet
DimeNet(Directional Message Passing Neural Network)是一种专门用于分子图结构的神经网络,在预测分子性质和模拟分子间相互作用方面表现出色。DimeNet 的独特之处在于它引入了方向性消息传递机制,使其能够更好地捕捉分子中的几何和角度信息。DimeNet的关键特点之一是方向性消息传递,传统的消息传递神经网络(Message Passing Neural Network, MPNN)主要考虑节点和边之间的消息传递。SchNet进一步的对节点之前的相对距离进行建模。而DimeNet则更进一步引入了方向性消息传递的概念,这意味着它不仅考虑节点和边的信息,还将相邻边之间的角度信息纳入计算。 1.1引入角度信息 在SchNet模型中介绍的连续卷积中,存在一个截断距离C的概念。通过截断距离的设置,可以限制仅在这个距离范围内的原子之间才允许信息的传递。这种方法相当于在分子图中引入了一个局部邻域的概念,每个原子只与它的近邻原子“交流”,而不是与整个分子中的所有原子交流,这其实就是卷积算法中“关注局部”的思想与优点。 这种局部化的方法可以大大降低计算负担,因为它减少了模型必须处理的消息数量。同时,它也减少了模型可能学习到的噪声或不相关信息,因为远离的原子对通常对当前原子的化学性质影响较小。但是,这种方法也有其局限性,特别是当两个结构上不同但在局部尺度上相似的分子,例如在大约2埃的截断距离下,一个常规的GNN可能无法区分六边形分子(例如环己烷)和两个三角形分子(例如环丙烷)。这是因为在图神经网络(GNN)的常规处理方式中,原子之间的关系通常是基于它们之间的距离来建模的,而非它们在空间中的具体方向或者角度。当我们说一个原子的“邻域”时,是指在一定截断距离内与该原子相连的其他原子。在截断距离限制下,原子只能“看到”它周围一定范围内的其他原子,并与这些原子交换信息。 以环己烷(一个六边形分子)和环丙烷(一个由两个三角形组成的分子)为例,如果它们的键长相同,每个原子在截断距离内的邻域将是相似的,如图1所示。也就是说,每个原子周围可能都有两个相邻原子,它们之间的距离大约是2埃,因此从每个原子的局部视角来看,它们的邻域模式看起来是无法区分的。这样,基于局部信息的GNN将无法区分这两种分子的整体结构。 为了区分这两个分子,模型需要能够识别原子之间关系的角度特征,也就是需要知道这些原子是如何在三维空间中定向的。在三维空间中,六边形的角度和三角形的角度是不同的,因此这是区分这两种分子的关键。然而,如果模型仅仅基于距离信息而不考虑角度信息,它就会丧失这种区分能力。因此,为了更准确地建模分子结构,需要引入能够处理角度信息的机制,这便是DimeNet的设计动机。 1.2球谐函数和贝塞尔径向模型 在构建分子的基础表示时,DimeNet采用了球谐函数和贝塞尔径向模型这两类数学函数。球谐函数用于捕捉分子形状及原子在不同方向上的分布,这对于理解分子的三维结构至关重要。贝塞尔径向模型则在处理问题时更加关注于原子间的实际距离,这些函数特别适合于描述原子间距离相关的性质。 在DimeNet模型中,球谐函数和贝塞尔径向模型的应用是一种关键的数据预处理步骤,旨在从分子的三维结构中提取空间特征,尤其是原子间的距离和角度信息。具体来说,几何深度学习模型在处理原子问题时的输入一般是原子在笛卡尔坐标系(x,y,z)下的三维坐标。通过计算任意两个原子之间的欧几里得距离,并把这个距离作为贝塞尔径向模型的输入,贝塞尔径向模型能够捕捉到原子间距离上的波动特征。类似的,可以将笛卡尔坐标系下原子的位置表示转换为球坐标系中的角度表示,这些角度信息再作为球谐函数的输入,球谐函数能够捕捉到原子间方向上的角度特征。基于上述距离和角度,我们使用球谐函数和贝塞尔函数公式中的系数组合作为几何深度学习模型的输入特征。球谐函数和贝塞尔函数的数学特征正交性可以确保从这些转换得到的特征在信息上是独立且互补的,减少了特征间的冗余。 值得注意的是,球谐函数和贝塞尔方程公式中的系数是固定的数学函数,不需要被训练。只要有点的三维坐标作为输入,球谐函数和贝塞尔方程拆解的结果就是固定的。球谐函数和贝塞尔方程的使用更像是一种基于原子坐标的特征工程手段,用于将原始的几何数据转换成一种对模型更有用的形式。这种特征转换方法为DimeNet提供了一种“强大的语言”,使其能够精确描述并利用原子间的距离和角度相互作用信息。正交性保证了转换得到的特征集中每个特征都携带有用且独特的信息,有助于模型从数据中学习到更多独立的特征,从而提高预测分子性质的准确性。 最后,还有一个关键问题是模型如何习得这些系数特征的含义?毕竟球谐函数和贝塞尔函数并没有被内置在模型的结构中作为模型的一部分。实际上,DimeNet并不需要“知道”这些系数代表了什么。模型有能力通过训练过程学习这些转换后的系数特征与目标属性(如分子的能量或其他化学性质)之间的关系。通过大量的训练数据,DimeNet能够识别哪些模式(在这些系数表示的特征中)与预测的化学性质有关联。这种学习过程是数据驱动的,不需要模型对系数的物理意义有先验的理解。使用球谐函数和贝塞尔函数作为输入预处理步骤是因为它们提供了一种有效的方式来表达分子结构中的三维空间信息。这些信息是传统图神经网络(例如GCN、GraphSAGE、GAT等)难以直接处理的,因为它们通常设计用于处理图结构数据,而没有考虑到原子间复杂的空间和方向性关系。 […]