可用于预测脂质纳米颗粒转染效率并分析细胞类型偏好性转染的设计规则。项目提供完整机器学习 pipeline,包含模型训练、特征约简、SHAP值分析等核心功能,支持多细胞类型数据集,附conda环境配置及结果可视化工具。【此简介由AI生成】
ml_lnp_design_rules
用于预测LNP转染效率并分析细胞类型偏好性转染LNP设计规则的机器学习 pipeline
仓库与代码结构:
-
Raw_Data 目录包含用于模型训练和验证的相关数据集
-
Runs 目录包含不同的 pipeline 运行结果(使用不同的数据集)
-
"Final_HL_Features_PDI1_RLU1.5_SIZE10000" 运行提供了训练好的模型(仅 B16F10 细胞类型)和论文正文中展示的图表。
-
"example_HL_Features_PDI1_RLU1.5_SIZE10000" 运行提供了模型选择、特征约简、模型诊断和 SHAP 值的 pipeline 输出示例。另见下方说明:
-
注意:为进行准确的模型比较,已设置外部交叉验证循环的随机状态,但未设置内部交叉验证循环的随机状态,这可能导致不同模型架构的优化。可以设置这些随机状态以提高可重复性。
- 因此,使用提供的数据集重新运行 pipeline 可能会导致下游结果(如特征优化和 SHAP 值)与论文中呈现的结果略有不同。
- 重要的是,无论 random_state 如何设置,组成特征('NP_ratio'、'PEG_(Chol+PEG)'、'(IL+HL)'、'HL_(IL+HL)')的 SHAP 值通常保持一致。
- 另一方面,由于样本量小(仅测试了 6 种辅助脂质),辅助脂质化学特征的优化和分析结果变化较大,因此在测试更多脂质化学库之前,不应过分依赖化学特征的结果。
-
-
每个运行目录下都有子目录,用于存储针对各细胞类型数据集训练的模型的相关结果和图表,以及细胞间比较图表文件夹。
-
每个细胞类型目录包含与机器学习 pipeline 不同方面相关的目录(见下文):
-
Trained_models: 模型超参数调优和训练好的模型
-
Model_diagnostics: 包含 HL-1(优化模型的留一脂质分析或辅助脂质减一分析)、学习曲线和 straw 模型结果
-
Feature_Reduction : 特征约简/优化过程的训练数据和结果
-
SHAP_Values: 用于特征重要性和设计规则计算的 SHAP 值
-
Figures: 包含论文中使用的大多数图表,并按相关性分组
-
运行代码:
-
提供 ML_LNP.yml 用于设置 conda 环境。此代码已在 Windows10 上测试。
-
run_pipeline.py 对 Raw_Data 目录中提供的数据集运行机器学习 pipeline。根据需要在主函数顶部更改运行参数。Pipeline 结果将保存在 Runs 文件夹中。
-
plot_Pipeline.py 为 pipeline 生成图表。根据需要在主函数顶部更改绘图参数。图表将保存在相应的 Runs 文件夹中。
-
validate_predictions.py 提供给定新型 LNP(在 Raw_Data 文件夹中提供)的 ML 转染效率预测,并在与实验值比较时生成模型性能指标。
-
训练数据的格式/基本预处理:
-
训练数据需为 csv 工作簿,其中列代表特征,行代表唯一数据点(见示例),并存储在 "Raw_Data" 目录中
-
每列的第一行用作特征名称。如果更改,必须在脚本中更新特征名称,即 utilities.py 中的 select_input_params()。
-
输出参数应由 target_prefix(例如示例代码中的 "RLU_")与提供的细胞名称(例如示例代码中的 "B16")连接而成。
- 如果使用荧光素酶读数作为目标输出参数,原始荧光素酶读数应使用对数转换进行预处理(例如论文中使用自然对数)。
-
模型的计算机模拟和体外验证
-
顶级模型的性能在分层保留数据集上进行了计算机模拟验证,该数据集包含所有训练数据的 15%,从未用于模型优化或调优。保留数据集经过分层处理,以包含每个辅助脂质类别的代表性训练数据群体。
- 通过创建新的制剂库(n = 72)进一步在体外验证模型性能,该库使用训练数据中相同的 6 种辅助脂质,但改变了组成参数。组成参数的变化使得每个单独的组成参数值都不存在于训练数据中。