本文重点参考了这篇博客:https://nb.bohrium.dp.tech/detail/1342
看论文时经常会遇到 SE3, SO3, O3 等字样,云里雾里,难以理解。本文对这些术语进行集中解释。
在数学里,一个物体可以抽象成 3 维几何坐标。
对该物体进行旋转、平移操作,相当于,坐标矩阵乘以旋转矩阵。如下所示:
不同的操作对应不同的相乘矩阵,具体来说:
常见术语:
我们在设计 GNN 时常常要满足各种奇奇怪怪的等变要求,具体有哪些呢?
用户输入神经网络的几何坐标,在经过平移后,会发生变化。我们希望经过平移的坐标不对预测结果造成影响,这就是平移不变性。
满足平移不变性可以将输入坐标转换成内坐标(距离,角度,二面角等),这也是大部分不变网络设计起点。
但现在很多等变网络,通过对消息传递层进行特殊处理,使其可以满足这一要求,这使我们不拘泥于简单的不变网络。
用户在输入分子时,不仅会输入几何坐标,还会输入每个坐标对应的元素符号。我们希望交换同种元素对应两个原子的坐标,输出结果不变/等变。
输出结果不变指,水分子能量预测等任务,水分子能量不随交换改变。
输出结果等变指,水分子中各原子受力随交换改变输出顺序。
满足排列、置换不变性要求我们的网络不能依赖于输入顺序。这条比较简单,大部分网络都满足。
这个属于较为挑剔的对称性要求,对于手性分子体系可能更加重要,满足这类要求的网络通常会注明是 O(3) 或者 E(3),而不是 SO(3), SE(3)
这种情况一般出现在预测目标涉及原子受力的场景中。每个原子都有一个向量式的预测目标,这些目标会随着输入坐标的旋转而旋转,如上图所示。
这条性质是最苛刻的,满足这条性质的网络能对原子受力拟合准确度将高很多。
那么,等变性对标量性质的预测是否有帮助?