1. 分子图数据工程导论
分子图数据工程,是把化学分子从“结构式”转化为“可计算图对象”,再进一步转化为“可学习表示”的一整套工程方法。它的核心不是单纯画图,而是回答三个问题:分子中的什么信息应该被保留为节点和边?这些信息如何被组织成统一的数据结构?组织好的图又如何进入模型,变成向量、张量或嵌入,用于性质预测、生成与检索?
在化学信息学中,分子天然适合用图表示。原子是节点,化学键是边。一个分子图通常记为 G = (V, E),其中 V 是原子集合,E 是键集合。与普通图不同,分子图带有丰富的属性:节点有元素类型、电荷、杂化状态、手性、是否在环上、氢原子数等;边有键级、芳香性、立体构型、是否可旋转等。若把分子写成 SMILES,例如 CCO,它只是线性字符串;而分子图保留了原子之间的连接拓扑,更适合表达局部化学环境。
分子图的最小工程定义:节点 = 原子及其属性;边 = 化学键及其属性;图 = 邻接关系 + 节点特征矩阵 + 边特征矩阵。对于含 N 个原子的分子,节点特征矩阵形状为 N × d_v,边特征矩阵形状为 M × d_e,其中 M 为边数。
从数据工程角度看,分子图不是“一个分子一张图”这么简单。真实任务中,我们面对的是分子集合、反应集合、构象集合。每个分子可能对应多个构象,每个构象又有三维坐标;同一分子在不同质子化状态、不同立体异构体下,图结构可能不同。因此,分子图数据工程的第一项任务是定义图的边界:是只保留二维拓扑,还是加入三维坐标?是显式保留氢原子,还是用隐式氢?是否区分芳香键和单双键交替?这些选择会直接影响后续模型能学到什么。
第二项任务是特征工程与编码。以原子节点为例,常见做法是把元素类型做 one-hot 或 embedding,把度数、形式电荷、手性、芳香性、氢原子数等做成离散或连续特征。边特征则包括键类型、共轭性、环成员关系、立体标记等。工程上通常先定义一套 schema,再批量生成特征矩阵。例如,一个简化的节点特征可以写成:
atom_features = {
"element": one_hot(atomic_num, 118),
"degree": one_hot(degree, 6),
"formal_charge": one_hot(charge + 2, 5),
"hybridization": one_hot(hybridization, 5),
"aromatic": [is_aromatic],
"num_hydrogens": one_hot(total_hs, 5)
}
第三项任务是图级数据组织。单个分子图需要被批量化为张量。常见做法是把多个小图拼成一个大图,用 batch 向量标记每个节点属于哪个分子;或者用 padding 对齐到最大节点数。前者更节省内存,后者更便于固定形状计算。无论哪种方式,都要保证节点顺序、边顺序和特征顺序一致,否则模型学到的就是噪声。
表示学习在分子科学中的定位,可以理解为“从图结构到连续向量的映射”。传统方法依赖专家设计的分子指纹,如 Morgan 指纹、MACCS 键、RDKit 描述符。这些方法可解释、计算快,但表达能力受限于人工规则。图神经网络则通过消息传递,让每个原子聚合邻居信息,自动学习局部和全局表示。一个典型的消息传递层可以写成:
h_v^(k+1) = UPDATE( h_v^(k), AGGREGATE({ h_u^(k), e_uv : u ∈ N(v) }) )
其中 h_v 是原子 v 的隐藏表示,e_uv 是边特征,N(v) 是邻居集合。经过多层传递后,再通过 READOUT 得到分子级表示,用于预测溶解度、毒性、活性、反应产率等性质。
从工程实践看,分子图数据工程通常包含四个连续环节:解析、图化、特征化、批量化。解析阶段把 SMILES、SDF、MOL2、PDB 等格式读入,得到原子表和键表;图化阶段建立邻接关系,处理芳香性、电荷、手性;特征化阶段把原子和键映射为数值向量;批量化阶段把多个图组织成模型可消费的张量。每一步都可能引入偏差,例如芳香键被错误地写成单双键交替,会导致模型学到的电子环境不一致。
表示学习在分子科学中的定位,不是替代化学知识,而是把化学知识编码进图结构和特征中,再让模型从数据中学习映射。一个分子图模型能否成功,往往取决于三件事:图是否保留了任务相关的化学信息;特征是否覆盖了关键区分维度;训练目标是否与下游任务一致。例如预测水溶性时,极性基团、氢键供受体、拓扑极性表面积等信息至关重要;预测毒性时,特定官能团和反应性片段更关键。数据工程的任务,就是把这些先验转化为图上的节点、边和特征。
学习建议:先掌握“分子→图→特征矩阵→批张量”这条主线,再理解 GNN 的消息传递机制。不要一开始就陷入复杂模型,先把一个乙醇分子手工写成节点特征和边特征,再写代码验证,理解会牢固得多。
本章后续将围绕这条主线展开:先讲分子图的数学定义与化学语义,再讲原子和键的图表示方法,然后进入数据工程的核心任务,最后说明表示学习在分子科学中的整体定位。掌握这些基础后,后续的图神经网络、预训练、生成模型和反应预测才有稳固的落脚点。