

作者:Gregory A. Landrum 与 Sereina Riniker(原载《J. Chem. Inf. Model.》2024年)
摘要:为验证生物活性预测的新机器学习(ML)方法而持续寻找或构建大型数据集的过程中,研究人员将使用不同测定法生成的文献IC50数据合并到单个数据集中,这种做法已变得令人不安地普遍。众所周知,在许多情况下,即便测定是针对完全相同的靶点,这种做法在科学上也是有风险的;而当从像ChEMBL这样的大型文献数据集中提取数据时,测定不兼容的风险甚至更高。在此,我们利用针对同一靶点的多次测定中报告的同一化合物的测量值案例,评估了合并数据集中存在的噪声量。该方法表明,使用最小化管理设置选择的IC50测定结果之间一致性很差:近65%的数据点差异超过0.3个对数单位,27%的数据点差异超过1个对数单位,且测定间的相关性(以Kendall's τ衡量)仅为0.51。要求ChEMBL中的大多数测定元数据匹配("最大化管理")后再合并两种测定,可改善这种情况(48%的数据点差异超过0.3个对数单位,13%超过1个对数单位,Kendall's τ为0.71),但代价是数据集规模变小。令人惊讶的是,我们的分析显示,在合并来自不同文献Ki测定的数据时,存在相似程度的噪声。我们建议,良好的科学实践要求在将来自不同测定的数据集合并时进行仔细的管理,并希望我们的最大化管理策略有助于提高用于构建和验证生物活性预测ML模型的数据质量。为实现此目标,我们用于最大化管理方法的代码和ChEMBL查询已在我们的GitHub仓库(https://github.com/rinikerlab/overlapping_assays)中作为开源软件提供。
大多数人工智能/机器学习方法非常依赖数据:它们需要大量的训练数据来构建有用的预测模型。此外,训练数据中的噪声为模型可达到的精度设定了上限。同时,适用于计算药物发现的公开大型数据集并不多见。大型、测量一致的数据集通常仅在公司内部可用,并且主要由于知识产权考虑,很难/不可能在公开科学文献中发表。虽有例外[1,2],但确实罕见。这对只能获取公共数据源的研究者产生了影响。例如,从ChEMBL[3,4]提取数据时,确保数据集测量一致性的最可靠方法是仅从单一测定中获取数据。但不幸的是,在ChEMBL32中超过85,000个IC50测定中,超过60,000个测定的数据针对少于10种独特化合物,仅650个测定拥有超过100种独特化合物的数据,只有54个测定拥有超过500种独特化合物的数据(图1)。这种大型、一致数据集的匮乏,导致了将针对相同靶点的不同测定结果合并以创建AI/ML应用数据集的常见做法。

兼容性问题。实验数据不可避免地包含一些噪声;即使在最理想的情况下(查看同一实验室进行的相同测定的数据)也是如此。当我们比较来自不同实验室的实验结果时,由于测定方案、试剂等方面的微小(或巨大)差异,噪声水平会上升。某些测定类型的变异性高于其他类型,例如,已知Caco-2通透性测定因所用细胞的差异以及在生命系统中无法精确复制实验条件而存在实验室间变异性的问题[5,6]。除了名义上相同的测定存在的实验室间变异性之外,针对同一"靶点"的不同测定的文献结果可能无法比较的原因还有很多,包括:
当使用像ChEMBL这样管理文献数据的数据库时,情况变得更加复杂:
所有这些在不同测定中测量针对"相同"靶点的活性值的变异性来源(不兼容的测定、实验室间差异、实验误差等)都会给旨在用于生物活性建模的合并数据集带来噪声。这种噪声不可避免地降低了基于这些数据训练的模型的质量和准确性。
本工作中,我们主要关注两大类公开的剂量反应生物活性数据:IC50和Ki。IC50衡量抑制特定生物反应(如酶促反应或受体信号传导)一半(50%)所需的化合物浓度。而Ki衡量与蛋白质结合的化合物的平衡解离常数[7]。传统观点认为,在不知晓测定条件的情况下合并不同IC50测定的值通常缺乏科学有效性,但Ki值在不同测定间更具可比性。参考文献[8]很好地解释了IC50和Ki之间的关系。
评估测定兼容性。判断在"相同"靶点上测量的两个不同IC50或Ki测定的结果是否兼容的最佳方法是阅读原始出版物并直接评估所有重要参数是否相同。然而,考虑到许多靶点的可用IC50测定数量(在ChEMBL32中,人CDK2有343个测定,人BRD4有454个测定,而像hERG这样的常见靶点有2020个测定),这在任何规模上都是不可行的,因此我们需要其他兼容性度量。一种适用于自动化和大规模分析的方法是识别出测试了相同化合物(或多个化合物)的测定对。比较测定间共享化合物的IC50或Ki测量值,可以很好地判断其余结果是否可比。结果差异小于实验误差的预期窗口(例如ΔpIC50 < 0.3 [9-11],约2倍)支持测定兼容的假设。
本工作中,我们首先评估了从ChEMBL32提取的针对相同靶点的IC50和Ki测定的兼容性。然后,我们开发了一种管理方法,利用ChEMBL中可用的测定元数据,避免合并明显不兼容的测定结果。并评估和讨论了这种"最大程度管理"方案对数据集质量和规模的影响。
从ChEMBL32提取数据。数据使用Jupyter计算笔记本环境中的标准SQL查询,从运行在PostgreSQL数据库[12]中的本地ChEMBL32[4]副本提取。数据库直接根据ChEMBL团队提供的PostgreSQL转储文件构建,未作修改[13]。所有使用的查询可在项目GitHub仓库(https://github.com/rinikerlab/overlapping_assays)的Jupyter笔记本中找到。
量化测定兼容性。通过比较重叠化合物的pchembl值来测量两个测定间的兼容性。除绘制数值图外,还使用多个指标来量化测定对之间的兼容程度:
• R²:决定系数,直接衡量两个测定中"重复"值的一致性程度。值范围-1.0到1.0,值越大兼容性越高。
• Kendall's τ:衡量两个测定中测量值排序等效性的非参数度量。值范围-1.0到1.0,值越大兼容性越高。
• f > 0.3:差异超过估计实验误差(0.3)的数据对比例。值越小兼容性越高。
• f > 1.0:差异超过1个对数单位的数据对比例。这是具有实际意义活性差异的任意界限。值越小兼容性越高。
• κ:将测定结果使用给定活性阈值分箱为"有活性"和"无活性"后,计算测定间的Cohen's κ。值范围-1.0到1.0,值越大兼容性越高。
• :将测定结果使用给定活性阈值分箱为"有活性"和"无活性"后,计算测定间的Matthew's相关系数。值范围-1.0到1.0,值越大兼容性越高。
所有指标使用scikit-learn[14] 1.2.2版或SciPy[15] 1.10.1版计算。
管理方法。鉴于合并所有IC50数据带来的明显科学问题和噪声量(见下文结果与讨论),我们探索了多种策略,仅基于ChEMBL数据库中的信息更仔细地管理合并的IC50数据集。 我们应用的管理操作包括:
• 活性管理:移除两个测定中pchembl值完全相同或相差恰好3.0的测量对。
• 重复文献:移除两个测定均在同一文献中发表的测量对。
• 移除突变体:移除描述中包含"mutant"、"mutation"或"variant"文本或指定了variant_id的任何测定。
• 测定类型:移除测定类型不同的测定对。
• 测定元数据:移除以下任何测定元数据字段不匹配的测定对:assay_type, assay_organism, assay_category, assay_tax_id, assay_strain, assay_tissue, assay_cell_type, assay_subcellular_fraction, bao_format。
• 文献以外的来源:移除来自无关联文献日期来源的任何测定。
• 测定规模:默认移除包含>100种化合物的测定。
• 管理置信度:启用此管理步骤时,移除任何置信度得分不为9(表示测定被指定给直接单一靶点)的测定。
这些步骤各自对ChEMBL32中IC50测定对和化合物对数量的影响见支持信息中的表S1。
应用最大化管理提取数据集。本工作的主要目标是确定从ChEMBL提取可靠(即噪声更小)数据的管理设置。确定适当设置后,需要提取数据集本身。进行最小化管理时此任务很简单:我们只需检索给定靶点的所有IC50(或Ki)数据并将其合并到标有靶点ID的单个数据集中。进行最大化管理时,我们对考虑的测定限制更严:确定针对某靶点的待考虑测定后,为每个测定创建一个"条件哈希值"。这是可用测定元数据的md5哈希值:assay_type, assay_organism, assay_category, assay_tax_id, assay_strain, assay_tissue, assay_cell_type, assay_subcellular_fraction, bao_format, variant_id。靶点ID和条件哈希值的组合定义了一组测定,就ChEMBL32中的可用信息而言,这些测定是等效的。最后一步是合并这些测定,并用靶点ID和条件哈希值标记它们。 • 仅考虑与文献关联的测定。
• 仅考虑管理置信度得分为9的测定。
• 移除描述中包含"mutant"、"mutation"或"variant"文本的测定,除非它们具有非空的variant_id。
• 如果一篇文献包含针对同一靶点的多个测定,仅保留结果化合物数量最多的那个。
对于两种管理设置,仅使用具有nM标准值、非空pchembl值且无data_validity_comment的合格活性值。
我们首先查看了使用"仅活性"管理合并IC50测定时数据集中的变异情况(图2上面板)。此种情况下的噪声水平非常高:64%的Δpchembl值大于0.3,27%大于1.0。Ki数据集的类似图表见支持信息中的图S1。Ki的噪声水平相当:67%的Δpchembl值大于0.3,30%大于1.0。在图2及本研究所有类似图中,点的绘制使得x轴上的测定具有比y轴上测定更高的assay_id(这是SQL数据库中的测定键,而非ChEMBL网络界面用户更熟悉的测定ChEMBL ID)。鉴于assay_id在ChEMBL数据库中按顺序分配,这意味着每个点的x值很可能来自比y值更新的出版物。我们认为这一事实不会给分析引入显著偏差。

使用最大化管理方案后,IC50的情况显著改善,但代价是丢弃了近99%的数据(图2下面板)。τ从0.51增加到0.71,平均绝对误差从0.50降至0.27。请注意,即使采用最大化管理设置,仍有48%的Δpchembl值差异超过0.3个对数单位,13%超过1.0。
图3上面板显示了Ki数据集在最大化管理方案下的类似图表。这里我们仅损失了70%的数据,但结果质量相比"仅活性"管理并未改善:69%的Δpchembl值大于0.3,32%大于1.0。令人惊讶的是,就表1中的回归参数而言,最大化管理的结果实际上比"仅活性"管理更差。这是怎么回事?

图3左上角有两个用红色方框标出的密集点簇。这些点来自一组32个报告人碳酸酐酶I(ChEMBL靶点ID CHEMBL261)Ki值的测定。这些测定有共同的通讯作者,包含大量重叠化合物,结果有时不一致。原始文献未提供足够的数据来源信息以理解这种变异性的原因[16,17]。由于这几乎肯定是人为变异性而非仅仅是实验噪声,我们从考虑中移除了与这些测定之一(CHEMBL378290918)共有超过10种化合物的所有测定的数据,并重新进行了统计分析。从考虑中移除的239个测定的完整列表见支持信息。图3下面板显示了移除这些测定后的比较。大部分异常值不再存在,一致性显著提高(表1)。请注意,我们只有通过回溯原始出版物才能确定这些数据有问题。解决此类情况是一项重要的管理工作,难以自动化。我们在此提及,用以说明即使对"最佳情况"实验读数(如Ki数据)进行最大化管理后,仍可能出现的各类问题。尽管我们合理预期Ki值在不同实验室间至少具有一定可比性,但在此案例中,我们受到了原始科学文献中数据质量的限制。

IC50和Ki数据集之间噪声水平的相似性,虽然仍令人惊讶,但此前已有报道[11]。在参考文献[11]及其前身针对Ki数据的研究[10]中,进行了大量管理工作以识别在不同实验室针对同一靶点测量的数据对。作者明确指出了盲目合并不同IC50测定数据所引入的噪声。请注意,将比较限制在不同实验室进行的测定,自动防止了比较来自同一文献的测定,而这是我们最大化管理程序的重要环节之一。
先前的结果证明了"仅活性"管理给用于构建回归模型的IC50值引入了多少噪声。当我们像构建分类模型那样对活性数据进行分箱时,这种噪声的影响是什么?表2显示了文献中常用的三个活性分箱水平(pchembl = 5 (10 μM), pchembl = 6 (1 μM), pchembl = 7 (100 nM))的κ和MCC值。在"仅活性"管理设置下,所有三个阈值的MCC值均<0.6。最大化管理在一定程度上改善了情况,MCC值范围在0.83到0.91。对于Ki数据,当使用最大化管理并结合剔除可疑测定后,也观察到类似的改善。

表2中的MCC和Cohen's κ值非常接近,因为混淆矩阵通常相当对称[19]。这是合理的,因为按ChEMBL ID对测定排序不应在两个pchembl值中引入系统性差异。
由于最大化管理方案似乎提高了数据质量(尽管并未消除数据中的噪声),我们接下来研究了它对从ChEMBL32合并的数据集的规模和组成的影响。我们首先使用"仅活性"管理设置,为所有包含至少20个测定和至少1000种化合物活性值的靶点构建合并数据集。这产生了80个IC50靶点和38个Ki靶点。图4上面板显示了使用"仅活性"和最大化管理设置的合并数据集中的化合物数量,下面板显示了合并到每个数据集中的测定数量。

尽管最大化管理策略确实减少了可用的大型数据集数量,但仍有34个IC50数据集和26个Ki数据集包含至少500种化合物。这些数据集由至少14个(IC50)或16个(Ki)测定的数据组成。如前面章节所示,这些数据集无疑仍包含一些噪声,但与更简化的管理方案产生的数据集相比,它们包含严重不一致结果的可能性要小得多,更适合作为进一步分析或构建和验证ML方法的基础。
我们已经表明,合并来自针对名义上相同靶点测量IC50值的不同测定的文献数据,可能导致大量噪声。使用ChEMBL中可用的元数据进行更仔细的自动化管理(最大化管理方案),可以显著降低以IC50或Ki作为读数的合并数据集中的总体噪声水平,但代价是包含的数据点大幅减少。值得指出的是,即使采用最大化管理设置,合并数据集中仍存在显著噪声。
进行此项工作时,我们对Ki数据集缺乏一致性感到惊讶。我们起初期望观察到IC50数据中的测定间变异性高于Ki数据。然而,结果并未符合此期望(特别是在我们因原始数据源问题手动剔除大量数据之前)。似乎尽管存在科学原因(如不同底物浓度)使得合并IC50测定存在问题,但在处理从专利和出版物中提取的大型数据集合时,这些问题可能被实际困难所淹没。
良好的科学实践要求在将不同测定的数据合并到单个数据集进行分析(或训练ML模型)时,进行一定程度的管理。我们在此已证明,从ChEMBL等资源中简单导出数据可能得到合并针对同一蛋白质不同变体或在不同条件下测量的测定结果的数据集。若无必要的管理,我们最终分析或构建的ML模型所基于的数据集,在最好情况下也包含压倒性噪声,在最坏情况下则缺乏科学意义。尽管考虑到实验变异性、实验室间不可避免的差异、科学文献中的错误以及从文献手动管理数据集的局限性,一定程度的不可减少噪声仍然存在,但我们认为最大化管理设置是迈向用于训练或验证ML模型的高质量公共生物活性数据集的重要一步。
参考文献:Gregory A. Landrum and Sereina Riniker, Combining IC50 or Ki Values from Different Sources Is a Source of Significant Noise, Journal of Chemical Information and Modeling 2024 64 (5), 1560-1567