想象一家顶级公司开启了年度校招:HR 邮箱瞬间涌入上万份简历,而每一个求职者,都是一颗崭新的药物分子。它们有的活力四射,有的性格极端,有的简历光鲜却一入职就惹出大祸。公司最终只打算留下一两个人——这就是新药研发的残酷现实:每 5000 到 10000 个候选分子,最终只有 1 个能成为上市新药,总成本超过 10 亿美元,周期长达十年以上。 最烧钱的不是收简历,而是把人请进公司之后才发现他不合适——对应到制药业,就是分子在耗费巨资的动物实验乃至三期临床后才宣告失败。聪明的做法是把“人事考核”前置:用一位 AI 招聘官在入职前就评估每个候选分子在吸收、分布、代谢、排泄、毒性五个维度的表现,把八成以上的“问题员工”挡在门外。这篇文章就用这场“新药求职记”,带你弄懂 ADMET 性质预测的原理:分子描述符是简历,多任务学习是一套综合测评系统,校准是校正面试官手松手紧的偏差,最后帮企业算清这笔 AI 投资的 ROI。
掌握 ADMET 预测,是 AI 医疗从业者的核心竞争力之一——它直接决定药企能否在研发早期低成本淘汰坏分子,是把 AI 技术兑现为商业 ROI 的经典抓手。
目录
可视化演示
展示分子描述符、多任务学习与预测校准的ADMET预测过程,可切换三种模式观察如何早期淘汰不良候选分子。
本节配有交互动效(进入视口后自动加载,约 3KB)。
分子描述符特征 将分子结构转化为数值特征,特征决定模型上限 含描述符、指纹、图结构等特征类型 分子 → 特征向量 劣质特征无法学到有效规律。
认识 ADMET——候选分子入职前的五关面试
求职者走进公司大楼前,HR 要给他设置五道关卡:第一关“吸收”,他能不能顺利刷开门禁走进大楼——对应口服药能否从肠道进入血液循环;第二关“分布”,进门后能不能被安排到核心岗位——对应药物能否送达靶组织;第三关“代谢”,部门的工作流程会不会把他改造成另一个人——对应肝脏中的酶对药物的转化;第四关“排泄”,干完活能否顺利离开公司——对应药物经肾脏、胆汁排出体外;第五关“毒性”,这个人会不会搅得整个部门鸡飞狗跳——对应 hERG 心脏毒性、肝毒性等安全风险。
ADMET 正是 Absorption(吸收)、Distribution(分布)、Metabolism(代谢)、Excretion(排泄)、Toxicity(毒性)五个英文单词的缩写,它们共同决定一个分子有没有资格成为药物,任何一关不及格都难以成药。药物化学家为此总结了一组快速初筛的经验准则——Lipinski 的“类药五规则”(Rule of Five),它像公司招聘的硬性学历门槛一样,先把明显不合适的简历扔进回收站:
五规则只是入门级硬过滤,真正的 ADMET 预测还要靠机器学习模型对每个维度输出软评分——不再是简单的“过/不过”,而是“通过吸收关的概率为 0.87”这样的精细判断。回到求职记:五规则是公司贴在门口的硬性学历门槛,而 AI 模型是阅人无数的资深 HR,它能看出这位求职者虽然硬指标擦边,但综合素质很稳,值得给一次机会。
- MW(分子量)$MW$ 是分子量,单位为道尔顿;$\text{MW} \le 500$ 要求分子质量不能太大,否则难以透过生物膜。
- logP(脂水分配系数)$\log P$ 是脂水分配系数的对数,反映分子亲脂还是亲水;$\log P \le 5$ 避免分子过油、难以溶入血液。
- HBD(氢键供体)$HBD$ 是分子中能给出氢键的基团数量,上限为 5;供体过多会阻碍细胞膜穿透。
- HBA(氢键受体)$HBA$ 是接受氢键的基团数量,上限为 10;受体过多不仅不利吸收,还容易在代谢环节被酶“改造”。
分子描述符——把分子写进简历
HR 凭什么判断求职者?凭简历。算法凭什么判断分子?凭分子描述符。简历上的“毕业院校、实习经历、性格特长”,对应分子描述符里的“分子量、logP、极性表面积、氢键数目”。一份好简历要字段清晰、信息密度高,一组好描述符也要能精炼地抓住分子的本质,让模型一眼看穿它“是块什么料”。
常见的分子描述符分几类:理化性质类(分子量 MW、脂水分配系数 logP、拓扑极性表面积 TPSA、氢键供体/受体数、可旋转键数),拓扑与几何类(分子形状、分子体积),以及分子指纹(如 Morgan 指纹把局部结构编码成 0/1 向量)。其中 logP 是最经典、最直观的一个——它回答“这个分子更爱油还是更爱水”:
描述符从哪里来?传统靠实验测定,现代 AI 流程中用 RDKit 等工具几毫秒就能从 SMILES 结构式算出上百个描述符。但并非越多越好:特征过载会引入冗余与噪声,常用相关性分析、LASSO、互信息做特征选择,像 HR 筛简历关键词一样,只留下最有区分度的字段。简历造假会误导 HR,描述符选错会误导模型——特征选择就是背景调查,把水分挤干,判断才靠谱。
- 分配试验把化合物放入正辛醇与水构成的两相体系,充分振荡后分别测得正辛醇相浓度 $[C_{\text{oct}}]$ 与水相浓度 $[C_{\text{aq}}]$。
- 浓度比值$\frac{[C_{\text{oct}}]}{[C_{\text{aq}}]}$ 表示分子更爱“油”还是更爱“水”,比值大于 1 说明偏亲脂。
- 取对数$\log_{10}$ 把可能差几个数量级的比值压缩成方便阅读的区间,例如 100:1 的亲脂分布记为 $\log P = 2$。
多任务学习——一套系统,五关同时考核
传统公司把五关拆给五个互不通气的部门,每个部门都从零研究同一份候选人档案,效率低、样本也少。聪明的新药公司成立“综合测评中心”:所有面试官共享同一套候选人档案底库(共享表示层),但每个维度保留专属的面试题目(任务专属头)。这就是多任务学习(Multi-Task Learning, MTL)的朴素思想。
结构上,MTL 是一个共享的特征提取器(多层神经网络)接出多个任务头,每个任务头负责一个 ADMET 维度。训练时五个任务的损失一起回传,共享层被迫学到对五个任务都有用的通用分子表征——这正是“一把钥匙开五把锁”。整体优化目标是把各任务的损失加权求和:
MTL 的核心收益在于数据互补与隐式正则:数据较少的毒性任务,可以从吸收、代谢等大数据任务中“借力”,共享层学到的通用表征天然带有正则效果,能抑制过拟合。但它并非没有代价——当任务目标互相冲突时,梯度会“打架”,此时可以引入基于不确定性的动态加权,让模型自己决定谁急谁先面。综合测评中心也要讲组织协调,五个面试官抢同一个候选人会内耗,动态分配面试时长,才能把每关都评到位。
- 任务集合$T$ 是任务总数,$t$ 遍历每个任务,例如吸收、分布、代谢、排泄、毒性五个任务。
- 单任务损失$L_t(\theta_{\text{shared}}, \theta_t)$ 表示第 $t$ 个任务的损失函数(常用交叉熵),它同时依赖共享参数 $\theta_{\text{shared}}$ 与任务专属参数 $\theta_t$。
- 权重求和$w_t$ 是第 $t$ 个任务的权重,$\sum_{t=1}^{T}$ 把五个任务的损失加权相加,得到总优化目标 $L_{\text{total}}$。
早期淘汰——把问题员工挡在入职前
招聘漏斗大家都懂:一万份简历,机器初筛留三千,笔试留八百,面谈留一百,终面留五个。每一步淘汰都在省钱——早淘汰一个后面要付高薪、花培训费、还可能闯祸的“问题员工”,比入职后再辞退划算得多。药物研发的漏斗是同一个道理,只是代价被放大了几个数量级。
药企的化合物库动辄上百万分子,若全部合成并做动物实验,成本是不可承受的天文数字。AI 的 ADMET 模型先给整个库打分排序(虚拟筛选),只把排名靠前、预测风险低的分子送去合成与实验验证。研发漏斗逐层收窄:苗头化合物 → 先导化合物 → 候选药物 → 临床前研究 → 临床 I/II/III 期,越往后单分子成本越高,失败代价越惨烈。每关的通过率连乘,决定了最终还能剩下几个“幸运儿”:
实务操作中常采用“硬规则 + 软评分”双闸:先让类药五规则这类硬规则做粗暴过滤(像学历门槛一票否决),再用 AI 软评分做精细排序(像综合面试逐项打分)。越早用 AI 把大概率失败者筛掉,省下的钱越是成倍增长——这就是“入职前多花十分钟,入职后少赔十个月工资”的生意经。
- 单关通过率$p_i$ 表示第 $i$ 关的通过概率,例如吸收关通过率为 0.85。
- 连乘符号$\prod_{i=1}^{n}$ 表示把从第 1 关到第 $n$ 关的所有通过率逐一相乘。
- 总存活率$S$ 是经历 $n$ 关后的整体存活率;每关 0.85,五关后 $0.85^5 \approx 0.44$——“每关都松、总闸很紧”。
预测校准——面试官的手松手紧要校正
有的面试官习惯打高分,他信誓旦旦说“很有把握”的人,实际只有六成靠谱;有的面试官特别严苛,他说的“还行”,其实已经相当优秀。AI 模型同样有这种“手松手紧”的系统性偏差:模型说“通过概率 90%”的分子,真实通过率可能只有 70%。如果不校正,业务方会被高高在上的概率数字误导,做出错误决策。
校准(Calibration)衡量的正是“预测概率与真实频率的一致性”:理想的模型里,凡是预测通过概率为 0.6 的一批分子,真实通过率也应当约为 60%。评估校准最常用的指标是期望校准误差(Expected Calibration Error, ECE),它把所有预测按概率分箱,逐箱对比“说的”和“做的”:
发现“手松”怎么治?后处理校正即可:温度缩放(Temperature Scaling)用一个标量温度参数先除以 logits 再做 softmax,或者直接对预测概率做 Platt 缩放、保序回归。这些方法不改变模型对分子的排序,只重新校准概率的绝对数值,让“90%“真的意味着 90%。校准好的模型才是可信赖的 HR——它说”这个人八成就行”,老板就真敢押上八成的资源。
- 分箱$M$ 是分箱数,把所有预测概率切成 $M$ 个区间;$B_m$ 是第 $m$ 箱内的样本集合,$|B_m|$ 是本箱样本数。
- 箱内对比$\text{acc}(B_m)$ 是本箱分子的真实通过率,$\text{conf}(B_m)$ 是本箱的平均预测概率,两者取差。
- 加权汇总$\frac{|B_m|}{N}$ 用样本占比当权重,$\sum_{m=1}^{M}$ 把所有箱的偏差加权求和得到 ECE,数值越小校准越好。
业务 ROI——把账算给老板看
校招系统上线是要花钱的:数据采购、算力租用、算法工程师工资、模型迭代时间,样样都是真金白银。老板只问一句:这套系统到底值多少钱?——这就是 AI 项目的 ROI 命题,ADMET 预测也不例外。
成本端,ADMET 实验数据昂贵:体外测定 IC50、动物实验动辄数万元一个化合物。好在有 ChEMBL、PubChem、Tox21 等开源数据库可以做冷启动,先跑通再逐步用自有数据微调。技术端,AI 预测的准确率有天花板——实验室噪声、体外体内差异、种属差异都会带来误差,必须明确“AI 筛选 + 实验验证”的分工,合规的毒理实验不可替代。收益端,以一个管线年评估 1000 个候选分子计算,若 AI 能提前淘汰 30% 的坏分子,每个坏分子省下的合成与动物实验成本累加起来,常常是模型开发投入的数倍:
落地的黄金法则是“小步快跑”:先选一个数据最齐全的维度(如 hERG 心脏毒性)做出高精度模型,内部验证 ROI,跑通后再扩展到五个维度。求职系统先进不先进不重要,老板只看它省了多少招聘成本、避免了多少次错误录用——ADMET 预测最终要回答的,也正是这道朴素至极的算账题。
- 总收益$\text{Benefit}$ 是项目带来的全部收益之和,如节省的实验经费、规避的临床失败损失。
- 总成本$\text{Cost}$ 是数据、算力、人力等全部投入的总和。
- 归一化计算$\frac{\text{Benefit} - \text{Cost}}{\text{Cost}}$ 以成本为基准算出净收益倍数,再乘 $100\%$ 得到百分比;ROI 为正才值得立项。
AI 应用场景
百万级化合物库的虚拟筛选初筛
阶段:候选化合物发现与早期评估
解决的问题:化合物库动辄百万级,传统做法是全部合成再逐个做动物实验,成本以亿元计。AI 用 ADMET 模型先对整个库打分排序,把明显不过关的分子在合成前就淘汰,只保留排名靠前的小批量进入实验,让研发漏斗的开口提前收窄。
具体案例:某药物研发平台对 120 万分子的化合物库运行“吸收 + 毒性”双任务模型,仅用数小时筛出 8000 个高分组,再叠加合成难度过滤后取 top 200 进入实验,实验通过率相比随机挑选提升了约 3 倍。
临床前 hERG 心脏毒性预警
阶段:临床前安全性评估
解决的问题:hERG 通道抑制会导致 QT 延长甚至室性心律失常,是药物撤市的主要原因之一;传统电生理实验通量低且昂贵。AI 分类器在动物实验之前先预测 hERG 抑制风险,帮助化学家及时重排分子结构,规避灾难性失败。
具体案例:某生物技术公司对先导系列的 348 个类似物做 hERG 风险预测,标记出 41 个高风险分子,重新安排合成优先级后,成功推迟了 2 个高危分子进入动物实验,避免了数百万元的无效投入。
老药新用中的安全性复查
阶段:药物重定位
解决的问题:老药已有大量临床安全数据,但换新适应症、新给药方式后,吸收分布代谢特征可能改变,需要重新评估 ADMET。传统方案要重新做一轮实验,周期长;AI 模型可快速给出各维度的预测变化,辅助早期决策。
具体案例:在公共卫生事件中,多款已上市老药被紧急评估用于新场景,AI 的 ADMET 模块快速预测了口服、吸入等不同给药方式下的分布与代谢差异,为临床药理团队提供了第一手参考数据,缩短了评估周期。
Python 演示
# -*- coding: utf-8 -*-"""多任务 ADMET 预测与校准误差演示(纯 numpy 实现)"""import numpy as np np.random.seed(42)N = 200 # 候选分子数量X = np.random.rand(N, 5) # 5 个分子描述符X[:, 0] = X[:, 0] * 300 + 200 # 分子量 200~500X[:, 1] = X[:, 1] * 8 - 2 # logP -2~6X[:, 2] = X[:, 2] * 100 + 20 # TPSA 20~120X[:, 3] = (X[:, 3] * 10).astype(int) # HBD 0~9X[:, 4] = (X[:, 4] * 15).astype(int) # HBA 0~14 # 模拟五个 ADMET 任务的真实标签(1=通过该关)Y = np.zeros((N, 5), dtype=int)Y[:, 0] = ((X[:, 1] > 0) & (X[:, 1] < 5)).astype(int) # 吸收关Y[:, 1] = ((X[:, 0] < 450) & (X[:, 2] > 30)).astype(int) # 分布关Y[:, 2] = (X[:, 4] < 10).astype(int) # 代谢关Y[:, 3] = (X[:, 2] < 100).astype(int) # 排泄关Y[:, 4] = ((X[:, 0] < 500) & (X[:, 3] < 5)).astype(int) # 毒性关 # 多任务网络:特征 -> 共享隐藏层(4维) -> 5 个任务头np.random.seed(7)W1 = np.random.randn(5, 4) * 0.5b1 = np.zeros(4)W2 = np.random.randn(4, 5) * 0.5b2 = np.zeros(5) def forward(x): h = np.tanh(x @ W1 + b1) logit = h @ W2 + b2 prob = 1.0 / (1.0 + np.exp(-logit)) return h, prob def batch_loss(xb, yb): _, p = forward(xb) eps = 1e-9 return -np.mean(yb * np.log(p + eps) + (1 - yb) * np.log(1 - p + eps)) # 训练:共享层让五个任务互补for epoch in range(500): idx = np.random.choice(N, 64) xb, yb = X[idx], Y[idx] h, p = forward(xb) g = (p - yb) / len(xb) gh = (g @ W2.T) * (1 - h * h) W1 -= 0.5 * (xb.T @ gh) b1 -= 0.5 * gh.sum(axis=0) W2 -= 0.5 * (h.T @ g) b2 -= 0.5 * g.sum(axis=0) if epoch % 100 == 0: print("epoch", epoch, "loss", round(batch_loss(X, Y), 3)) # 预测:五个维度靠不靠谱_, prob = forward(X)acc = np.mean((prob > 0.5).astype(int) == Y, axis=0)print("各任务准确率:", np.round(acc, 3)) # 校准误差 ECE:预测概率与真实频率是否一致def ece_score(p, y, bins=10): flat_p = p.ravel() flat_y = y.ravel() err = 0.0 for i in range(bins): lo, hi = i / bins, (i + 1) / bins m = (flat_p >= lo) & (flat_p < hi) if m.sum() == 0: continue err += abs(flat_y[m].mean() - flat_p[m].mean()) * m.mean() return err print("期望校准误差 ECE:", round(ece_score(prob, Y), 4)) # 业务汇报:通过至少 4 关的分子占比pass_n = (prob > 0.5).sum(axis=1)print("通过>=4关的候选占比:", round(np.mean(pass_n >= 4), 3))
X = np.random.rand(N, 5)生成 200 个候选分子的 5 个描述符原始值,模拟“简历字段”。Y[:, 0] = ((X[:, 1] > 0) & (X[:, 1] < 5)).astype(int)根据 logP 区间生成吸收关的模拟标签,代表真实实验结论。h = np.tanh(x @ W1 + b1)共享隐藏层,所有任务共用的“通用分子表征”。g = (p - yb) / len(xb)交叉熵损失对 logits 的梯度,是五个任务反向传播的共同起点。gh = (g @ W2.T) * (1 - h * h)把梯度回传到共享层,让五个任务一起更新“底层常识”。err += abs(flat_y[m].mean() - flat_p[m].mean()) * m.mean()按概率分箱累加 ECE,量化模型“说的”和“做的”之间的差距。pass_n = (prob > 0.5).sum(axis=1)统计每个分子通过了几关,末尾输出存活率,正是业务方最关心的漏斗出口。
常见误区
误区“模型说这个分子 ADMET 全部通过,那就可以直接推进临床了,不用再花钱做实验了。AI 预测都这么准了,何必浪费钱?”
正解预测是概率估计,不是事实。模型学到的是训练数据里的统计规律,而实验噪声、体外体内差异、种属差异都会让预测偏离真实。正确做法是“AI 筛选 + 实验验证”配合:预测只负责把明显不合格的分子低成本淘汰,关键候选必须用实验确认。比喻上,面试官的推荐信再准,正式录用前也要做背景调查和入职体检。
为何常见:训练集上的高准确率让人误以为模型“全知全能”,忽略了分布偏移和实验噪声的存在。
误区“多任务学习共享了数据,每个任务肯定都比单独训练效果更好,无脑堆任务就对了。”
正解当任务相关性弱甚至目标冲突时,共享层被迫学一个“两头不讨好”的表征,某些任务反而会变差。实践中需要做任务相关性分析、动态加权甚至任务分组,才能让 MTL 发挥优势。就像五个面试官的问题南辕北辙,候选人被问懵了,反而哪一关都答不好。
为何常见:只看到“共享数据”带来的互补收益,忽略了梯度冲突这一面,把必要条件当成了充分条件。
误区“描述符算得越多,模型掌握的信息越全,预测肯定越准。反正 RDKit 免费,多算几百个不亏。”
正解高维特征带来维度灾难与过拟合,冗余特征引入噪声,还会拖慢训练和推理。要用相关性分析、LASSO、互信息等方法筛选出信息量高、冗余度低的特征子集。简历厚得像词典,HR 反而抓不住重点,描述符也是同样的道理。
为何常见:直觉上“信息越多越好”,但忽略了特征之间的共线性和模型泛化能力对特征维度的容忍上限。
误区“只要 ADMET 五关都过了,这个分子就一定能成为新药。五关都绿了,剩下的就是走流程了。”
正解ADMET 只是成药性的“安全底线”,分子还得有足够的药效活性、靶点选择性、可合成性和专利空间。ADMET 预测解决的是“别在后期死得冤枉”,不保证“一定成功”。一个身体健康的求职者,也不一定正好是公司要的那个岗位核心人才。
为何常见:把“必要条件”误当“充分条件”,忽略了药物研发是多维度博弈的整体工程。
面试题
Q1. ADMET 中的 "M" 代表哪一环节?
- A.吸收 (Absorption)
- B.代谢 (Metabolism)← 正确答案
- C.分布 (Distribution)
- D.排泄 (Excretion)
答案:B。ADMET 五个字母分别代表吸收(Absorption)、分布(Distribution)、代谢(Metabolism)、排泄(Excretion)、毒性(Toxicity)。M 对应 Metabolism,指肝脏等器官对药物的生物转化,其余三个选项都是 ADMET 中的其他环节,属于经典混淆项。
Q2. 类药五规则中分子量上限是多少?
- A.300 道尔顿
- B.500 道尔顿← 正确答案
- C.800 道尔顿
- D.1000 道尔顿
答案:B。Lipinski 类药五规则要求 MW ≤ 500、logP ≤ 5、HBD ≤ 5、HBA ≤ 10。分子量过大难以透过生物膜,吸收关就会亮红灯。300 是过严的标准,800 和 1000 则超出了口服药物的一般经验上限。
Q3. logP 值越大说明分子更偏向?
- A.偏溶于水相(亲水性)
- B.偏溶于脂相(亲脂性)← 正确答案
- C.分子量会明显变大
- D.分子极性显著增强
答案:B。logP 是正辛醇/水分配系数的对数,比值越大代表分子越爱待在正辛醇(模拟脂肪膜)里,即亲脂性越强。亲水性、分子量、极性与 logP 大小没有直接对应关系。
Q4. 多任务学习在 ADMET 预测中的优势有哪些?
- A.共享分子表示← 正确答案
- B.数据相互补充← 正确答案
- C.减少过拟合← 正确答案
- D.完全替代实验
答案:ABC。MTL 通过共享表示层让五个任务复用同一套分子表征,数据少的任务能从数据多的任务借力,共享层还带来隐式正则、抑制过拟合。但它只是预测工具,绝不可能完全替代实验验证,D 说法过于绝对。
Q5. TPSA(拓扑极性表面积)主要预示哪种性质?
- A.穿透细胞膜的能力← 正确答案
- B.药物熔沸点的高低
- C.分子酸碱性的强弱
- D.化合物颜色的深浅
答案:A。TPSA 统计分子中极性原子的表面积,与细胞膜穿透能力高度相关:TPSA 过大,分子难以穿过脂质膜,口服吸收差。熔沸点、酸碱性、颜色与 TPSA 的主要用途无关。
Q6. 一个候选分子通过每关的概率都是 80%,五关之后的存活率约为?
- A.约 33%(0.8 的五次方)← 正确答案
- B.约 80%(取各关的平均值)
- C.约 50%(对五关概率求和)
- D.约 16%(对五关概率求反比)
答案:A。总存活率是各关通过率的连乘:0.8 × 0.8 × 0.8 × 0.8 × 0.8 = 0.32768,约 33%。这正是研发漏斗“每关都松、总闸很紧”的数学本质,其余选项分别犯了取平均、求和、取反比的错误。
Q7. 下列哪些属于常用的分子描述符?
- A.分子量等理化特征← 正确答案
- B.logP 脂水分配系数← 正确答案
- C.TPSA 极性表面积← 正确答案
- D.药片的颜色和形状
答案:ABC。分子描述符是从分子结构推算出的数值化特征,包括分子量、logP、TPSA、氢键数目、分子指纹等。药片的颜色和形状属于制剂外观属性,与分子本身的性质无关。
Q8. 校准良好的模型中,预测通过概率为 0.7 的一批分子,实际通过率应约为?
- A.约 0.9 左右
- B.约 0.7 左右← 正确答案
- C.约 0.3 左右
- D.约 0.5 左右
答案:B。校准的定义就是“预测概率与真实频率一致”:模型说 0.7,真实就该有约 70% 通过。0.9 是乐观偏差,0.3 接近“说反话”,0.5 是无信息猜测,均不符合校准要求。
Q9. ECE(期望校准误差)数值越小说明模型?
- A.预测偏差越大
- B.概率校准越好← 正确答案
- C.推理速度越快
- D.训练数据更多
答案:B。ECE 把预测概率分箱,逐箱计算真实频率与平均预测概率的加权偏差,数值越小说明模型“说多少、做到多少”越一致,即校准越好。它衡量的是概率质量,与速度、数据量无关。
Q10. 计算 ADMET 预测项目的 ROI 时,成本应包含哪些项?
- A.实验数据获取费用← 正确答案
- B.算力与人力投入← 正确答案
- C.模型开发时间成本← 正确答案
- D.免费的在线开源工具
答案:ABC。ROI 中的成本指项目全部实际投入,包括数据采购、算力租用、算法工程师工资和开发时间。免费的在线开源工具本身不产生费用,不属于成本项,因此 D 不选。