用途:PyTDC(import tdc)用于治疗性机器学习任务的发现、数据加载、划分、评估与基准组工作流。
主要能力:通过 tdc.metadata 或脚本进行无下载的注册表发现;加载单预测(ADME、Tox)、多预测(DDI、DTI)、生成(MolGen、Reaction、RetroSyn)等数据集;支持 random、scaffold、cold_split、combination、time 等划分方式;使用 Evaluator 计算 MAE、ROC-AUC、PCC、micro-f1、macro-f1、kappa 等指标;通过 admet_group 等基准组类进行评测与排行榜聚合;提供分子生成语料与 oracle 评分。
使用方式:建议使用隔离的 CPython 3.11 环境并固定版本:uv venv --python 3.11 .venv-pytdc;uv pip install --python .venv-pytdc/bin/python "setuptools==80.9.0" "PyTDC==1.1.15"。先做元数据发现,例如 python scripts/discover_metadata.py --kind datasets --task ADME --limit 50;确认数据、许可、传输与存储后再加 --execute 执行加载。构造器会触发数据下载,需提前规划网络与磁盘。
适用场景:治疗性 ML 任务的数据准备、基准评测、分子性质预测与生成评估。
限制:PyTDC 1.1.15 无通用缓存配额、淘汰策略或全数据集校验清单;数据集许可各异,需逐项核实;random 划分的验证集使用固定 random_state=1;cold_split 可能丢弃跨分区行;oracle 调用可能产生外部服务、检查点或分子结构传输成本。上游无 GitHub 标签或维护的变更日志,文档版本可能不一致。