一、QSAR 是什么?先聊聊我的理解

很多人第一次接触 QSAR,会觉得这个名字挺唬人——定量构效关系,听起来像是什么高深莫测的理论。其实说白了,就是一句话:分子的结构和它的活性(或者性质)之间,有没有一个可以量化的数学关系?

我刚开始做药物设计的时候,老板丢给我一堆化合物,说「你帮我把这些分子的活性排个序」。那时候我一个个做实验,累得半死。后来我发现,如果能用分子的结构特征去预测活性,那得省多少事?这就是 QSAR 最朴素的想法——用已知推未知。

举个例子。你有一组分子,测了它们的 IC₅₀(半抑制浓度)。如果你能找到某个分子描述符(比如 logP、分子量、氢键供体数)和 IC₅₀ 之间的规律,那你就可以用这个规律去预测还没合成的分子。嗯,这就是 QSAR 的核心。

我个人习惯把 QSAR 看作是「化学家的经验 + 数学家的模型 + 计算机的算力」三者结合的产物。它的定义其实很简单:

定量构效关系(QSAR):利用统计学或机器学习方法,建立分子结构特征(自变量)与生物活性或理化性质(因变量)之间的定量数学模型,用于预测新分子的活性或性质。

1.1 发展里程碑:从一个玩笑到工业标准

QSAR 的历史挺有意思的。最早可以追溯到 19 世纪,但真正成为一门学科,是 1960 年代的事。

阶段 时间 关键人物/事件 核心贡献
萌芽期 1868 Crum-Brown 和 Fraser 提出「生理活性与化学结构有关」的假设
奠基期 1964 Hansch 和 Fujita 提出 Hansch 分析——多元线性回归框架
扩展期 1970s Free 和 Wilson Free-Wilson 模型:取代基贡献的加和模型
3D-QSAR 时代 1988 Cramer CoMFA(比较分子场分析)的提出
机器学习时代 2000s 多学科交叉 随机森林、SVM、神经网络引入 QSAR
深度学习时代 2014 至今 DeepChem、Graph Neural Networks 图神经网络、分子指纹自动学习

这里我特别想聊一下 Hansch。他当年做 QSAR 的时候,用的就是最简单的多元线性回归。你想想看,那时候连个人电脑都没有,全靠手算和打孔卡片。但就是这种「笨办法」,奠定了整个领域的基础。我曾经在一个项目里试图用复杂的深度学习模型去拟合一批数据,结果过拟合得一塌糊涂。最后回到 Hansch 的线性模型,反而效果更好。所以说,经典的东西永远有它的价值。

再说说 Free-Wilson。这个模型有个很有意思的出发点:它假设每个取代基对活性的贡献是独立的、可加和的。说白了,就是「你把一个甲基换成乙基,活性会变多少,这个变化和分子其他部分无关」。这在很多情况下当然过于简化了,但你不得不承认,在一些同系物系列里,这招真管用。

到了 1988 年,Cramer 提出了 CoMFA。这个就厉害了——它不再只盯着分子本身的原子和键,而是把分子放在一个三维网格里,计算它周围的静电场和立体场。这相当于从「看照片」进化到了「摸雕塑」。3D-QSAR 让构象问题变得重要起来,但同时也带来了一个麻烦:分子对齐。我记得第一次跑 CoMFA 的时候,花了两周时间手动对齐分子,就为了得到一个像样的模型。

最近这些年,深度学习来了。图神经网络可以直接从分子图里学习特征,不再需要人工设计描述符。这是好事,也是坏事。好的是自动化程度更高了,坏的是你很难解释模型到底学到了什么。我在实际项目中遇到过一个 case:GNN 模型的预测精度确实好,但它完全无法复现我们知道的一个经典构效关系规律。最后还是用回随机森林,虽然精度略低,但至少我能跟化学家解释「为什么这个分子活性高」。

1.2 QSAR 的现代理论框架

如果你要理解现在的 QSAR,其实就三个核心问题:

  1. 用什么来表示分子?(描述符、指纹、分子图)
  2. 用什么模型来拟合?(线性回归、随机森林、SVM、神经网络……)
  3. 怎么验证模型靠不靠谱?(交叉验证、外部测试集、Y-scrambling)

这三个问题环环相扣。你想想看,如果你选了一堆不相关的描述符,那么即使模型拟合得再好,也是白搭。反过来,如果你选对了描述符但模型太简单,可能也抓不住非线性关系。这就是为什么 QSAR 项目的成败往往不在模型本身,而在你对数据的理解有多深。

我个人习惯把 QSAR 工作流总结成这张图:

QSAR 经典工作流 QSAR 经典工作流 收集分子与活性数据 计算分子描述符 特征选择与降维 模型训练与调参 模型验证与评估 应用:预测新分子 Tip:数据质量决定上限 活性数据用标准化 assay 测得 比模型选择更重要 Warning:小心过拟合 特征数 > 样本数 / 10 模型可能不可靠

你看,这个流程看起来简单,但每一步都有坑。举个例子,特征选择那一步,我曾经在一个含有 1500 个描述符的数据集上做 QSAR,结果用全量特征训练的模型在交叉验证里 R² 高达 0.92,一测外部数据直接掉到 0.3。为什么?因为我选的特征里有大量冗余和噪声。后来老老实实用随机森林的特征重要性做了筛选,只保留了 100 个特征,外部验证 R² 反而稳定在 0.65 左右。嗯,这就是教训。

1.3 在药物设计中的应用意义

QSAR 在药物研发中到底有多重要?我这么跟你说吧——它几乎是现代药物化学的标配工具。它的应用场景非常集中,但效果很实在:

  • 先导化合物优化:你有一系列类似物,想知道哪些替换方向能提高活性。QSAR 模型可以直接给出预测排名,指导下一轮合成。我在做 GPCR 项目时,就用 QSAR 模型把候选分子从 200 个筛选到 30 个,合成效率翻了一倍。
  • ADMET 预测:活性再好的分子,如果毒性高或者代谢差,也进不了临床。QSAR 模型在预测吸收、分布、代谢、排泄和毒性方面已经相当成熟。比如用 logD 预测肠道吸收,用 Caco-2 数据建模型预测渗透性——这些都是很成熟的 QSAR 应用。
  • 虚拟筛选:当你的公司有几十万个化合物库时,一个一个测是不现实的。这时候 QSAR 模型可以作为一个初筛工具,把最有可能有活性的分子挑出来。当然,模型的预测精度决定了筛选的命中率。我记得有一次帮客户做虚拟筛选,用的是 SVM 模型,从 50 万个分子里筛出来 500 个,送测后活性命中率达到了 18%,在业界已经算不错了。
  • 机制研究:QSAR 模型还能帮你理解药效团的关键特征。比如,如果你发现某个描述符(比如极性表面积)在模型中权重特别高,那就可以推测:这个靶点可能对分子的极性非常敏感。这一点对后续的分子设计很有启发。

当然,QSAR 不是万能的。它最大的局限是适用范围(Applicability Domain)。换句话说,你的模型只能预测它「见过」的化学空间。如果你给它一个全新的骨架,模型很可能是不准的。这个坑我在很多项目里都遇到过。

实用建议:做 QSAR 项目时,永远记住两个数字:「R² > 0.7」的拟合优度和「Q² > 0.5」的交叉验证指标,才值得进入下一阶段。如果你的模型的 Q² 连 0.3 都不到,别急着调模型——先回头检查你的数据和描述符。

1.4 本章小结

好了,第一章我们就聊这些。QSAR 听起来高大上,但本质上就是个数学建模问题。你要理解的是:它不是万能的,但在正确的场景下,它能让你的工作效率翻倍。从 Hansch 的线性回归到今天的深度学习,QSAR 的核心一直没变——找到一个可靠的、可解释的结构-活性关系。