与固定指纹相比,具有几个优点:
- Predictive performance: 机器优化的图结构可以比固定的图结构提供更好的预测性能。
- Parsimony:固定的指纹必须非常大,才能对所有可能的子结构进行编码而不会重叠。
- Interpretability:标准指纹完全清晰地编码每个可能的片段,片段之间没有相似性的概念。 相反,每个特征的的图结构可以被相似但截然不同的分子片段**,从而使特征表示更加有意义。
Circular fingerprints:设计用来编码在分子中代表分子不变的子结构
hash functions
- 通过将固定的应用于生成上一层邻域的串联特征。
- 结果将哈希表处理为整数索引,其中个索引都表示存在特定的子结构。 每个索引表示的子结构的大小取决于网络的深度。 因此,层数称为指纹的“半径”。
-
类似于卷积网络,因为它们在本地各处都应用相同的操作,并在全局池化步骤中组合信息。
Hashing : 应用于每一层的哈希函数的目的是组合有关每个原子及其相邻子结构的信息。 这样可以确保任何大小的变化,无论多小,都会导致不同的指纹索引被**。 我们用神经网络的单层替换哈希运算。 当局部分子结构以不重要的方式变化时,使用平滑函数可使**相似。
indexing: 用于将所有节点的特征向量组合成整个分子的单个指纹的索引操作。 每个节点在其特征向量的哈希值确定的索引处将指纹的单个位设置为1。 这种类似于池的操作将任意大小的图转换为固定大小的向量。 对于小分子和较大的指纹长度,指纹总是稀疏的。 我们使用softmax操作作为索引的可区分模拟。每个原子都被归类为属于一个类别。 所有这些分类标记向量的总和会产生最终指纹。 此操作类似于标准卷积神经网络中的合并操作。
Canonicalization : 无论每个邻域中原子的顺序如何,都是相同的。 通过根据相邻原子的特征和键特征对相邻原子进行排序,可以实现这种不变性。 我们尝试了这种排序方案,还对局部邻域的所有可能排列应用了局部特征变换。 规范化的替代方法是应用置换不变函数,例如求和。 为了简单和可伸缩性,我们选择求和。
Convolutional Networks on Graphs for Learning Molecular Fingerprints