药物管线六维分析框架
©️ Copyright 2023 @ Authors
作者:
余峰 📨
日期:2023-11-12
共享协议:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
快速开始:点击上方的 开始连接 按钮,选择 registry.dp.tech/dptech/ubuntu:20.04-py3.10镜像 和CPU:c8_m16_cpu 或更高配置机型即可开始。
药物管线生产力和目标
药物管线生产力危机
近几十年来,尽管药物开发相关的成本飙升,尽管有许多科技突破——从超高通量筛选到“组学”革命催化的疾病生物学理解,可预期的药物研发生产力达到历史最高水平,但是新药的产量基本保持不变。
药物管线目标
药物管线期望保持质量的同时提高效率,在一些组织中,这导致使用基于数量的指标来提高生产力。潜在假设是:如果每十个进入临床开发的候选药物中推出一种药物,那么进入开发的候选药物数量增加一倍,应该会使批准的药物数量增加一倍,然而并没有发生。反而导致研发成本增加,而推出的药物数量保持不变。
为了保证药物研发生产力可持续发展,药物研发应该是以寻求真相为驱动,即彻底了解疾病病理生理学和治疗机会,而不仅仅被进展的数量所驱动。
1:六维分析框架
2014年阿斯利康提出了五维分析框架即正确的靶点、组织器官、安全性、病人、商业潜力。
九年之后的今天,阿斯利康更新了六维分析框[5],在之前五维的基础上,增加了“数字解决方案”这个维度。
下面结合具体的项目经验,来逐一解读这六个维度。
之前的五维,是阿斯利康审查了五年时间内的百余个药物研发项目,总结的经验教训,来提高药物研发的生产力[1]。
1.1:正确的靶点
正确的靶点意味着对于生物学和疾病的扎实认知。
上图左,显示了项目失败的主要原因,其中缺乏疗效(Efficacy)是临床试验中项目失败最重要的原因。
上图中,对于因为缺乏疗效而终止的项目进行了分析,总结了如图所示的四种原因:1. 拟议的作用机制的药理学不会在测试的患者群体中产生临床益处;2. 化合物的性质限制了剂量或化合物无法在相关靶组织中暴露;3. 没有根据对该疾病的科学理解选择最佳患者群体;4. 在缺乏足够可靠的数据的情况下,项目过渡到下一阶段。
上图右表明,靶点在人类疾病中具有生物学作用,是项目成功的预测指标。例如,在候选药物提名之前,能证明靶标与疾病的遗传联系的项目中,有73%的仍然活跃或成功完成了临床II期试验,对于没有任何遗传验证证据的项目,其中的57%都失败了; 对于处于临床试验IIa期的项目,如果具有功效生物标志物证据,有82%在IIa期是活跃或成功进入下一阶段,而没有这种生物标志物证据的项目,活跃或成功率不到30%。
例如对于CRTH2拮抗剂AZD1981治疗哮喘的项目,随着项目从临床前候选药物选择进展到临床II期,靶标生物学作用的理解并没有提高,基础生物学的理解不足,靶点与疾病生物学的联系也不令人信服,但竟然还是进行到了下一阶段——大型临床IIb期试验研究,耗费了大量的时间和金钱,项目最终仍然失败,如果能早点实现正确的靶点分析,该项目可能会在最初的临床IIa期试验后关闭,及时止损。
1.2:正确的组织器官
除了选择正确的靶点外,正确的组织器官,要求通过临床前和临床模型中的适当药代动力学/药效学(PK/PD)建模,证明候选药物在靶器官中实现了暴露并获得了足够的药理活性,进一步增加成功的可能性。
具体来说有三大关键因素:作用部位的暴露,靶标占有率和靶器官中药理活性的表达。
PK/PD建模最大挑战发生在药理学靶标和血液被屏障(例如血脑屏障)隔开时,如Morgan等人研究中的多巴胺D3受体激动剂PF-592379和阿斯利康AZD8529的案例研究所示。使用成像技术,特别是位置发射断层扫描(PET),来了解血液暴露、脑受体的占有率和疗效之间的关系,在中枢神经系统活性药物的开发中是有效的。当可以在大脑和血液中评估相同的药理活性生物标志物时,增加了血液暴露与药理学靶标之间关系的可信度。最近,已经为CNS靶标开发了优雅的PK/PD关系,这使得复杂的受体动力学可以被理解并转化为临床情况。
1.3:正确的安全性
安全是项目关闭的最重要原因。在临床前研究和I期试验中,超过50%的失败是由于与拟议的主要适应症不相容的安全问题造成的,安全性也是导致30%的II期项目失败的原因。
没有“绝对的药物安全”:比如导致不孕不育在治疗白血病药物中被认为是可接受的安全性特征,但是在治疗普通感冒药物中是不可接受的。
并非所有安全信号都可以预测,有的安全性只有在药物进入广泛的临床前、临床试验后期或上市后阶段才会出现。
对安全故障的分析表明,故障的原因可以分为两大类:1. 未能检测到安全信号,2. 未能正确评估安全信号的风险。
在临床前筛查(例如,体外、体内或计算机)中未能检测到安全信号在所有安全故障中占比~40%。这些失败凸显了临床前安全性筛查的局限性,以及继续研发新检测方法以识别安全风险的必要性。
大多数临床前安全性失败项目,可归因于特定的器官毒性,下图a所示。心血管毒性是这种闭合的最常见原因(17%),其次是肝毒性(14%),肾毒性(8%)和中枢神经系统(CNS)毒性(7%)。
在临床前测试期间,75%的安全性失败项目与药物分子有关,即由于化合物的“脱靶”或其他性质,而不是其在主要药理学靶标上的作用。脱靶问题可以通过反向找靶等计算模型来缓解。
在临床阶段,与靶蛋白相关的安全失败项目比例大幅上升,占安全相关项目关闭的近一半,这种失败通常是由于有效剂量大于安全剂量,意味着实现患者利益时必须承担安全风险。
1.4:正确的患者
正确的患者意味着,在正确的患者群体中测试药物。
例如,在阿尔茨海默病中,模型利用一系列成像(调整海马体积)和生化生物标志物(脑脊液中tau和淀粉样蛋白β水平的变化)来识别处于疾病不同阶段的患者。此外,载脂蛋白E4(APOE4)变体与患散发性阿尔茨海默病的风险增加有关。这些见解允许在药物开发过程中,使用生物标志物来识别和分层阿尔茨海默病患者。最近巴匹单抗(一种靶向淀粉样蛋白β的单克隆抗体)的III期失败凸显了此类生物标志物的重要性,对此,对接受淀粉样蛋白PET扫描的患者的回顾性分析表明,至少有三分之一的APOE4非携带者的淀粉样蛋白阳性低于预定阈值。
1.5:正确的商业潜力
正确的商业潜力能确保科学机会与商业洞察力和地位保持一致,描述项目最终将交付具体医学差异化和商业可行的产品的可能性。
药物的医学差异化,涵盖了许多重要因素,包括基于未满足医疗需求的市场机会、患者群体的规模和地理分布、规划的竞争地位、报销环境、达到特定决策点的成本、为差异化和可报销的药物提供监管档案的成本。对这些因素的评估需要公司商业和科学团队之间的明确对话,必须始终以科学理解和医疗需求为基础。
对当前和未来护理标准的理解,决定了新药在正确患者群体中预测疗效和安全性方面需要什么。
对于早期的许多项目,对“正确的商业潜力”维度的信心较低,要么是因为这些项目与其他正在开发的药物相比没有竞争力,要么是因为它们在定义明确的未满足医疗需求方面没有明确区分。在这些情况下,项目很容易失败。
1.6:正确的数字解决方案
包括:
· 以患者为中心的终点,数字生物标志物,远程病人监护,剂量的选择
· 使用AI进行事件评估,使用AI进行研究设计审查,数字招募患者
· 数字集成临床试验解决方案(包含知情同意 、远程访问和远程保健 、设备和传感器、 临床结果评估 、家庭生物样本 、病人和场地支持、 研究结束和跟进)
74-85%的试验评估可以使用临床验证的设备远程收集,这可以减少高达40%的临床物理访问次数。
数字解决方案应用于健康医疗中的优点如下:
· 减少就诊次数,试验能大幅减少亲自到诊所就诊的次数,降低临床试验成本;
· 提高统计能力,远程数据收集可以比传统的诊所访问更频繁地获取信息;
· 远程病人监护,为了降低口腔炎对新入组患者的影响,阿斯利康开发了一款手机程序,患者可以自我追踪和管理,提高患者依从性;
2:漏斗分析
上图显示了,阿斯利康和制药行业基准PBF(Pharmaceutical Benchmarking Forum,请参见KMR集团网站)各阶段成功率,成功率定义为完成此阶段并进入下一开发阶段的项目百分比。
数据表明,与行业基准相比,阿斯利康在临床前阶段的成功率与行业基准相当(66% vs 63%),在完成第一阶段的成功率更高(59% vs 48%),但第二阶段的成功率明显较低(15% vs 29%)。另外第三阶段的成功率低于行业整体(60%对67%)。因此,阿斯利康允许更多的项目进入后期开发阶段,但随后却失败了。总体而言,阿斯利康在2005-2010年期间将候选药物推向市场的成功率明显低于行业中位数(2%对6%)。
通过漏斗分析,可以了解这个流程中的瓶颈,即临床二期到临床三期的过程,无论是成功率还是相对制药行业基准的成功率都大幅降低。找到瓶颈后,阿斯利康就统计项目在各个阶段失败的原因分别是什么,如上图b所示。失败的原因有四类:药效、PK/PD、安全性、策略,这与之前分析的五维分析框架对应,通过漏斗分析,找到具体的失败原因和对应的改进措施。
安全性是失败的最重要原因,占所有项目关闭的一半以上。这些失败大多发生在临床试验之前,主要是因为监管GLP。GLP导致如此多的失败项目,笔者在此推荐一份指南,何时使用GLP或非GLP毒理学研究,希望对大家有帮助。
行文至此,阿斯利康药物管线的经验教训分享完毕,下文将围绕漏斗分析详细展开,感兴趣的小伙伴可以继续,包括漏斗分析是什么,如何做漏斗分析。
2.1:当药物管线遇上漏斗分析
🎖️药物或材料研发系统,可以借助计算手段,从海量的分子空间中筛选出最合适的K个分子。
筛选海量的分子空间,需要巨量的计算,为了平衡系统的效果和效率,可以将计算过程拆解成多个阶段,每个阶段像漏斗一样过滤和筛选。
这与工业推荐系统,如淘宝的商品推荐系统、字节的短视频推荐系统,在很多方面都有相似之处,本质上也是从海量物品空间中筛选出最合适的K个物品。
他山之石可以攻玉,可以借鉴工业推荐系统的成熟经验,来不断迭代和完善药物或材料等研发系统。
成熟的工业推荐系统往往不是一蹴而就的,是在数据和模型的飞轮中不断地迭代优化,如何指导优化的方向呢?
除了在线AB test,离线的漏斗分析也是一个简单而强大的工具,能够清晰地展现系统各阶段的效率和瓶颈,指导做出ROI最大的改进。
本文以计算药物研发为例,尝试讨论如何使用漏斗分析,来评价和改进药物研发各阶段的效率。
🎖️通过漏斗分析对历史上研发成功或失败的药物进行重新发现和复盘分析,旨在优化药物研发流程并挖掘药物研发过程中的隐藏价值,为未来药物研发提供更加高效率、低风险的解决方案。
🎖️在数据-模型闭环基础上,可以进一步构建数据-模型-产品-用户的飞轮循环,以实现药物研发领域的快速发展。
以下将围绕漏斗分析的几个问题来展开:是什么,怎么做,为什么,机会与挑战。
2.2:漏斗是什么
安装所需的依赖
!pip install pandas !pip install matplotlib
以成熟的商品推荐系统为例,介绍成熟的商品推荐系统中的漏斗分析,以及与计算药物研发系统的相似之处。
🔖为了平衡系统的效果和效率,往往需要将推荐系统拆解成多个阶段,每个阶段像漏斗一样过滤和筛选,输入十亿级的物品,最终输出最合适的K个物品,如下图所示:
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Requirement already satisfied: pandas in /opt/mamba/lib/python3.10/site-packages (1.5.3) Requirement already satisfied: numpy>=1.21.0 in /opt/mamba/lib/python3.10/site-packages (from pandas) (1.24.2) Requirement already satisfied: pytz>=2020.1 in /opt/mamba/lib/python3.10/site-packages (from pandas) (2022.7.1) Requirement already satisfied: python-dateutil>=2.8.1 in /opt/mamba/lib/python3.10/site-packages (from pandas) (2.8.2) Requirement already satisfied: six>=1.5 in /opt/mamba/lib/python3.10/site-packages (from python-dateutil>=2.8.1->pandas) (1.16.0) WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Collecting matplotlib Downloading https://pypi.tuna.tsinghua.edu.cn/packages/c2/da/a5622266952ab05dc3995d77689cba600e49ea9d6c51d469c077695cb719/matplotlib-3.7.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.6/11.6 MB 3.1 MB/s eta 0:00:0000:0100:01 Collecting pillow>=6.2.0 Downloading https://pypi.tuna.tsinghua.edu.cn/packages/3d/36/e78f09d510354977e10102dd811e928666021d9c451e05df962d56477772/Pillow-10.0.0-cp310-cp310-manylinux_2_28_x86_64.whl (3.4 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.4/3.4 MB 3.7 MB/s eta 0:00:0000:0100:01 Collecting cycler>=0.10 Downloading https://pypi.tuna.tsinghua.edu.cn/packages/5c/f9/695d6bedebd747e5eb0fe8fad57b72fdf25411273a39791cde838d5a8f51/cycler-0.11.0-py3-none-any.whl (6.4 kB) Collecting pyparsing<3.1,>=2.3.1 Downloading https://pypi.tuna.tsinghua.edu.cn/packages/6c/10/a7d0fa5baea8fe7b50f448ab742f26f52b80bfca85ac2be9d35cdd9a3246/pyparsing-3.0.9-py3-none-any.whl (98 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.3/98.3 kB 1.6 MB/s eta 0:00:00a 0:00:01 Requirement already satisfied: python-dateutil>=2.7 in /opt/mamba/lib/python3.10/site-packages (from matplotlib) (2.8.2) Collecting contourpy>=1.0.1 Downloading https://pypi.tuna.tsinghua.edu.cn/packages/aa/55/02c6d24804592b862b38a85c9b3283edc245081390a520ccd11697b6b24f/contourpy-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (300 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 300.7/300.7 kB 5.6 MB/s eta 0:00:00a 0:00:01 Collecting fonttools>=4.22.0 Downloading https://pypi.tuna.tsinghua.edu.cn/packages/2b/e8/61b8525acf26ec222518bdff127ae502bfa3408981fb5e5493f2b037d7fb/fonttools-4.42.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 3.8 MB/s eta 0:00:0000:0100:01 Requirement already satisfied: numpy>=1.20 in /opt/mamba/lib/python3.10/site-packages (from matplotlib) (1.24.2) Requirement already satisfied: packaging>=20.0 in /opt/mamba/lib/python3.10/site-packages (from matplotlib) (23.0) Collecting kiwisolver>=1.0.1 Downloading https://pypi.tuna.tsinghua.edu.cn/packages/79/0f/5cc4ca3df66c49817944b9a1c7343ba70aefffc868ddf651d7839cc5dffd/kiwisolver-1.4.4-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 2.3 MB/s eta 0:00:0000:0100:01 Requirement already satisfied: six>=1.5 in /opt/mamba/lib/python3.10/site-packages (from python-dateutil>=2.7->matplotlib) (1.16.0) Installing collected packages: pyparsing, pillow, kiwisolver, fonttools, cycler, contourpy, matplotlib Successfully installed contourpy-1.1.0 cycler-0.11.0 fonttools-4.42.1 kiwisolver-1.4.4 matplotlib-3.7.2 pillow-10.0.0 pyparsing-3.0.9 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Text(0.5, 1.0, 'Funnel Efficiency in Recommender System')
🔖这个漏斗的含义是,商品池的商品数量有10e10,经过召回,粗排,精排,重排各阶段过滤和筛选后,还分别剩余的数量为10e5,10e4,10e3,10e2。
商品推荐系统的几个阶段可以跟计算药物研发系统的几个阶段,粗略地对应:
Stage | Recommender System | Computational Drug Development |
---|---|---|
1 | Recall | VirtualScreening |
2 | RoughRanking | ADMET |
3 | FineRanking | FEP |
4 | Repermutation | ActivityCliff |
5 | Impression | Experiment |
2.3:漏斗分析怎么做
📖漏斗
顾名思义,过滤掉阴性分子,筛选出阳性分子,漏斗效率 = 已知阳性分子的通过率。
我们假设已经有了一个包含虚拟筛选、ADMET性质预测、FEP计算、活性悬崖预测和实验验证五个阶段结果的数据集。
数据集中1或0代表,已经成功研制的药物分子,如FDA批准的药物分子,能否被各阶段的计算方法筛选出来。
VirtualScreening_Pass_Rate: 0.9 ADMET_Pass_Rate: 0.4 FEP_Pass_Rate: 0.4 ActivityCliff_Pass_Rate: 0.2 Experiment_Pass_Rate: 0.1
Text(0.5, 1.0, 'Funnel Efficiency in Drug Development')
以上漏斗显示,对于已知的10个阳性分子,经过VirtualScreening, ADMET, FEP, ActivityCliff, Experiment等阶段后,剩余阳性分子的数量分别为9, 4, 4, 2, 1。
🎖️瓶颈在第二阶段ADMET,即经过ADMET后,阳性分子的通过率大幅降低,漏斗筛选效率大幅降低。
因此对于已知的阳性分子,我们可以分析ADMET模型:
为什么没能筛选出阳性分子?为什么没能过滤掉阴性分子?即可得到大量模型预测错误的阳性或阴性分子,利用这些数据重训模型,改善模型性能。
为了在药物研发系统中实现类似的漏斗分析,我们可以采取以下措施:
为每个阶段设定明确的目标和评估指标,以便衡量每个阶段的推荐效率。比如,在召回阶段,我们可以关注召回率和准确率;在粗排和精排阶段,我们可以关注排序效果,如AUC、NDCG等。
收集每个阶段的数据,以便进行分析。在药物研发系统中,这可能包括化合物的特征数据、评估指标等。
分析每个阶段的数据,找出可能存在的问题和改进空间。通过对比不同阶段的数据,我们可以发现整个流程中的瓶颈和优化点。
根据分析结果,优化模型和策略。这可能包括调整特征工程、选择更合适的模型、优化参数等。
通过以上措施,我们可以在药物研发系统中实现类似漏斗分析的过程,从而有效地监测和优化整个药物筛选流程。
反向找靶
在计算药物研发中,我们还可以加入反向找靶,一方面可以预测脱靶效应,解决安全性和有效性问题。
另一方面,形成数据-模型闭环,然后通过闭环中各阶段的漏斗分析,来指导优化模型。
具体来说,我们可以收集历史上研发成功所有小分子药物,通过 反向找靶预测模型 ,预测出小分子对应的蛋白靶点。
对于每一个蛋白靶点,我们都可以走一遍以上流程(VirtualScreening, ADMET, FEP, ActivityCliff),然后分析每个模型的漏斗效率。
同时,对于每个模型,我们还可以得到大量模型预测错误的阳性或阴性分子,这些数据重训模型,有利于模型性能的改善。
基于以上数据和模型的飞轮循环,我们可以逐步改进系统的每一个阶段,进而提升系统整体的药物研发效果。
计算药物研发系统是一个持续优化的过程。我们需要不断收集新的数据,更新模型。
对于历史上研发失败的药物,如果能使用更高效的模型,进行重新发现和复盘分析,可以发掘隐藏价值。
对于历史上研发成功的药物,借助反向找靶等各阶段计算结果,梳理出药物-靶点-疾病等多向药理学机理,给疾病治疗提供更多启发和思路。
多向药理学
传统药物研发思路的“1分子,1靶点,1疾病”模式是指将单一化合物针对单一靶点的干预来治疗特定疾病。这种研发思路在很大程度上简化了药物研发过程,降低了药物研发的难度和风险。然而,这种方法存在一定的局限性,因为许多疾病的发病机制很复杂,涉及多种生物过程和靶点。多向药理学则是一种全新的药物研发策略,它强调针对多个靶点的干预来治疗疾病。这种方法认为,通过同时作用于多个靶点,可以更有效地治疗疾病,提高药效,降低副作用。多向药理学的研究取得了一定的进展,尤其在复杂疾病(如癌症、神经退行性疾病等)的治疗方面显示出潜力。
两种药物研发思路之间的矛盾主要体现在以下几个方面:
药物选择性:传统药物研发思路强调药物的高度选择性,即药物只对特定靶点起作用,从而减少副作用。而多向药理学则认为,针对多个靶点的药物可能更具优势,因为这样可以更全面地影响疾病的发展过程。
药物研发过程:传统药物研发过程通常较为简单,主要关注单一靶点的作用。而多向药理学研究过程相对复杂,需要考虑多个靶点之间的相互作用和协同效应。
药物评价标准:传统药物研发侧重于评估药物对单一靶点的作用,而多向药理学则需要评估药物对多个靶点的影响,这使得评价标准更加复杂和多元。
药物研发成本和时间:传统药物研发的时间和成本相对较低,而多向药理学研究由于涉及多个靶点的研究,可能导致研发成本和时间的增加。
传统药物研发思路与多向药理学存在一定程度的矛盾。但随着技术的发展,这两种思路在一定程度上也可以相互借鉴和融合,共同推动药物研发事业的发展。
药物研发飞轮
在数据-模型闭环基础上,可以进一步构建数据-模型-产品-用户的飞轮循环,以实现药物研发领域的快速发展。通过数据-模型闭环优化各个阶段,可以获得更高质量的药物候选分子、更精确的药物研发系统和更低的研发风险。这将有助于我们推出更具竞争力的药物产品和工具产品,进而实现药物研发领域的快速发展。
药物研发的最终目标是为患者和医疗机构提供有效、安全、经济的药物产品和和工具产品。患者需求包括治疗效果、副作用、用药便利性等方面。
建立严格的质量控制体系,对药物研发过程中的各个阶段进行严密监控,确保药物的安全性和有效性达到预期标准,这将有助于提高药物研发系统的市场竞争力,满足药物研发专家的需求。
通过以上几个方面的优化,可以构建一个高效、低风险的药物研发闭环,从而形成数据-模型-产品-用户的飞轮循环,推动药物研发领域的快速发展。同时,这种飞轮循环还将有利于药物研发领域的技术创新和跨学科合作,为未来药物研发领域的发展提供更广阔的空间。