2024-03-09
结合师姐毕业论文
AI辅助药物筛选
AI辅助药物设计
1、数据收集和准备
PubChem数据库以IDO1抑制剂为搜索词条进行数据收集,对于这些化学物,把ChEMBL明确报告为活性化合物记为活性,即抑制剂;把ChEMBL明确报告无活性的化合物标记为无活性,即为非抑制剂。此外,还将ChEMBL未明确报告但活性值>10uM的化合物也记为无活性,视为非抑制剂。(在上面步骤的基础上 按照上面步骤 应该是每个化合物都是都活性值的) 每个化合物都指定以下活性值类型之一:IC50、 EC50、Kd、Ki,删除没有活性值或无文献支持的化合物。
确保收集分子都转换为SMILES字符串,数据通过以下方式进行预处理:(1) 标准化所有分子结构 (2) 去除无机物 (3) 将盐转化为相应的酸或碱 (4) 过滤掉重复的分子结构 (感觉这里应该是还要删除标签冲突的分子)
将处理后分子按8:2划分训练集和测试集
收集2021-2023文献组成外部验证集,评估模型泛化能力,同样进行预处理,排除与训练集和测试集重复的数据
数据集分析:使用基于ECFP4指纹的化学空间分布(PCA降维 三维)和谷本系数评估训练、测试和外部验证的划分;计算三个数据集平均谷本系数
2、分子表征和特征选择
分子指纹和分子描述符进行传统机器学习模型的构建
基于图的深度学习模型
- 使用padel软件生成指纹 选了5种:MACCS、PubchemFP、ExtendFP、CDKFP、KRFP
- 使用RDKit计算2D描述符(208位)和ECFP4指纹:这里对2D描述符进行预处理(1) 计算每个特征的方差,删除方差为0或接近0的描述符 (2) 计算两两特征之间的相关系数,对于系数>0.95的两个描述符,只保留其中一个
- 基于图:每个分子都被视为以原子为节点、化学键为边的无向图。Deepchem种的ConvMolFeaturizer模块可以快速将每个化学物从SMILES转换为分子图
3、预测模型的构建
①建议基模型,然后建立最优模型 ②RF、SVM、XGboost、LightGBM + GCN(deepchem)构建模型,网格搜索调参数寻找最优超参数,之后使用十折交叉验证对模型在训练集中表现进行评估,并选出表现最好的前五个模型作为基模型 (GCN中设置如epoch、学习率等超参)③堆叠基模型: 多个基模型的预测作为第二层学习算法的输入,第二层基于逻辑回归算法训练形成新的预测
4、模型性能评估
使用训练集进行十折交叉验证来检验鲁棒性;使用测试集进一步进行评估,最后利用外部验证集评估泛化能力 经典的一些评估指标:ACC、Precision、F1SE、SP、MCC
内部:所有机器学习模型十折交叉验证评估结果作箱形图 选前五个;GCN模型十折交叉验证
外部:前五个模型、GCN、堆叠模型进行test/external数据集评估
5、模型应用域定义
r+Zσ公式;训练集中两个最近化合物之间评估欧式距离和欧式距离标准差;如果待测化合物与其训练集中的k个最近邻之间距离大于阈值,则在域外;
①计算改变Z值和k下的域外化合物数量 ②五个基模型在不同Z和k下应用域化合物AUC和ACC值 综合评估这两个指标确定最优Z和k ③在最优Z和k下比较堆叠模型域内、域外以及不区分的评估
6、优势子挖掘
SARpy软件 IG(信息增益)和准确率(ACC)
优势子:片段数量和频率
7、模型解释
利用SHAP,具体来说对XGB-PubChem模型进行SHAP分析