药物设计中配体分子海量特征筛选方法技术领域
本发明涉及一种基于机器学习的配体分子特征筛选方法,属于计算机辅助药物设
计的技术领域。
背景技术
近年来,如何提高药物虚拟筛选的有效性成为制药企业需要迫切解决的问题。由
于大量的生物化学实验为提供了充足的数据,而机器学习的方法正好可以利用这些数据来
帮助解决问题。
药物虚拟筛选分为基于靶标结构和基于配体的两类方法。基于靶标结构的药物虚
拟筛选模拟化合物与靶标之间的物理相互作用来确定是否可能存在药效,如分子对接方
法。基于配体的方法主要是在靶标结构未知的情况下,利用已有的数据对化合物的活性进
行预测。这类方法最关键的是使用各种方法或分子指纹对化合物进行充分的描述,以研究
该化合物是否具有类似活性或治病机理,或归纳得到对化合物活性起关键作用的一些基团
的信息。在基于配体的药物虚拟筛选中,配体分子的分子指纹表征是关键。目前,面对海量
的化合物分子,最流行的是使用ECFP(Extended-connectivity fingerprints)分子指纹方
法进行表征。不同的ECFP分子指纹方法,比如ECFP8、ECFP12等,后面的数字代表配体包含子
结构的半径大小,一般来说,半径越大,生成特征越多。由于在药物虚拟筛选中,化合物分子
数量巨大,基于ECFP子结构方法产生的特征维数是巨大的。例如,强生制药公司2014年参与
的、利用机器学习方法,研究过针对15个药物靶标、基于配体的虚拟筛选的问题,配体分子
约为75万个,使用最新的ECFP12分子指纹对配体进行表征,每个配体分子的特征维数高达
上千万维。
配体分子海量特征在实际任务中会陷入“维数灾难”问题,即数据样本稀疏、距离
计算困难等问题,这是所有机器学习方法共同面临的严重障碍。若能从中选择出重要的特
征或者去除不相关特征,往往会降低学习任务的难度,使得后续学习过程仅需在一部分特
征上构建模型,则维数灾难问题会大为减轻。配体分子主要是通过药效基团与靶标分子进
行作用,而药效基团通常与配体分子的少数子结构有关,即大多数子结构与配体分子的活
性无关。如果把配体分子数据集考虑成矩阵,其每行表示一个样本,对应于一个配体分子,
而每列表示一个特征,对应于一个特定的子结构。对配体海量特征进行筛选时,需要考虑特
征具有的“稀疏性”,即矩阵中的很多列与配体分子的活性是没有关系的,通过特征选择去
除这些列,则在实际的学习任务仅需要在较小的矩阵上进行,学习任务的难度可能有所降
低,涉及的计算和存储开销会减少,学得模型的可解析性也会提高。最小绝对收缩选择算子
(LASSO,Least Absolute Shrinkage and Selection Operator)可以很好地解决上面问
题,它将特征选择过程与学习器训练过程融为一体,两者在同一个优化过程中完成,并引入
L1范数获得“稀疏”解和降低过拟合风险。考虑到配体分子的特征维数极有可能非常大,传
统的LASSSO方法时间开销大,也很难很好地解决此问题。本发明选择使用基于加强的对偶
多面体投影准则(Enhanced Dual Polytope Projections,EDPP)的LASSSO特征选择方法,
来大幅加速配体海量特征筛选过程,仅去除掉大部分不相关的特征(即子结构),这样可以
帮助理解与配体活性相关的子结构,并使得后续学习过程仅需在小部分特征上构建模型,
大幅提高模型的学习效率。
发明内容
本发明针对基于配体的药物虚拟筛选中使用ECFP(Extended-connectivity
fingerprints)分子指纹对配体分子进行表征时,因为配体分子海量特征在实际任务中会
陷入“维数灾难”问题,提出了一种基于EDPP LASSO的特征筛选方法,主要包含ECFP特征生
成过程、基于EDPP的LASSO的特征筛选过程。
鉴于此,本发明的技术方案是一种药物设计中配体分子海量特征筛选方法,包括
如下步骤:
步骤1:配体分子ECFP特征生成;
步骤2:基于EDPP LASSO方法的配体分子特征筛选;
步骤3:基于鲁棒性选择方法的配体分子特征选择。
进一步,步骤1从数据库中得到初始数据集其中是每
个分子的原子连接图,Yi是每个样本的标记,把每个分子的原子连接图及所需指纹深度输
入ECFP生成软件,得到描述样本的ECFP特征,处理过的数据集Dt={(Xi,Yi)|Xi∈R1*m,1≤i
≤n}。
步骤2和步骤3的特征筛选过程是通过两步优化,首先根据选取对于满足条件的一
定数量的λ={λi|0≤i<K,λi>λi+1},对应于相同数量的特征筛选结果Τ={Τi|Τi∈R1*m,0
≤i<K},其中Τi值为1代表特征保留,为0代表是无关特征,可删除,然后综合考虑这些特征
筛选结果,把K个Ti叠加起来,这就得到每一位特征被选择的频数,特征被选择的次数越多,
代表其越有可能是相关的特征,选取p个被选择次数最多的特征,得到鲁棒的特征选择结
果,从而避免了使用单一参数值可能带来模型效果差的问题。
为取得最佳的筛选效果,上述一定数量优选为100。
本发明的有益效果:
1、解决“维数灾难”问题,使得后续学习过程仅需在小部分特征上构建模型,大幅
提高模型的学习效率。
2、快速并大幅去除不相关特征,得到鲁棒的相关特征,利于理解与配体活性理解
与配体活性相关的子结构,增加模型的可理解性。
附图说明
图1为本发明系统的构架图。
图2为本发明的方法流程图。
具体实施方式
以下结合说明书附图对本发明作进一步的详细说明。
图1为本发明系统的构架图,基于该构架本发明提供了一种基于EDPP准则的LASSO
配体海量特征筛选方法,该方法具体实施步骤包括如下:
步骤1:配体分子ECFP特征生成。给定初始数据集其中
是每个分子的原子连接图,Yi是每个样本的标记。对初始数据集进行处理,得到描述样本
的ECFP特征,即数据集Dt={(Xi,Yi)|Xi∈R1*m,1≤i≤n}。
步骤2:基于EDPP LASSO方法的配体分子特征筛选。对数据集Dt,应用EDPP准则,对
于满足条件(λ∈(0,λ0])的λ={λi|0≤i<K,λi>λi+1},得到每个λ值的特征筛选结果Τ={Τi
|Τi∈R1*m,0≤i<K},其中Τi值为1代表特征保留,为0代表是无关特征,可删除。
步骤3:基于鲁棒性选择(stability selection)方法的配体分子特征选择。对于
步骤2的特征筛选结果,把K个Ti叠加起来,这就得到每一位特征被选择的频数,特征被选择
的次数越多,代表其越有可能是相关的特征,选取p个被选择次数最多的特征,得到鲁棒的
特征选择结果。
进一步,步骤1中把从数据库中得到的每个分子的原子连接图及所需指纹深度输
入ECFP生成软件,会得到每个分子固定长度的ECFP特征。由于数据集的特征是由全体分子
生成的,分子之间会有共同的特征,也会有自身独特的特征,因此把所有分子的特征组合起
来,删除重复的共有特征,把剩下来的特征作为最后的特征描述。
上述步骤2和步骤3的特征筛选过程是通过两步优化,首先根据选取对于满足条件
的一定数量的λ={λi|0≤i<K,λi>λi+1},对应于相同数量的特征筛选结果Τ={Τi|Τi∈R1
*m,0≤i<K},其中Τi值为1代表特征保留,为0代表是无关特征,可删除。然后综合考虑这些
特征筛选结果,把K个Ti叠加起来,这就得到每一位特征被选择的频数,特征被选择的次数
越多,代表其越有可能是相关的特征,选取p个被选择次数最多的特征,得到鲁棒的特征选
择结果,从而避免了使用单一参数值可能带来模型效果差的问题。
作为优选,上述一定数量选取100。
本发明的方法流程图如图2所示,下面给出本发明特征筛选结果Τ的求取过程:
假定数据X∈Rn*m,n为样本个数,m为特征维数,则标准LASSO问题为:
其中y为标记,β∈Rm (1)
(1)式中通过对损失函数加上1范数的惩罚函数,将变量β的系数进行压缩并使某
些回归系数变为0,进而达到特征选择的目的。
对于(1)式可转换求其对偶问题:
其中θ为对偶变量。式(1)和式(2)的最优解是相同的,所以只要求其对偶问题即
可。为了方便起见,把优化问题(2)的解记为θ*(λ)(同理优化问题(1)的解记为β*(λ))。根据
KKT条件有:
y=Xβ*(λ)+λθ*(λ) (3)
其中[*]i代表第i个特征,由式(4)所示的KKT条件,得到
就是一个无关的特征 (R1)
换句话说,可以充分利用(R1)来为LASSO问题找出无关的特征。但是,因为θ*(λ)是
一个不知道的值,不能直接利用(R1)来找出无关的特征。所以可以先估计一个区域Θ,其中
包含θ*(λ)。所以,(R1)可以被写成如下形式:
就是一个无关的特征 (R1’)
只要能找到一个区域包含θ*(λ),区域内每一个θ与乘积的绝对值小于1即可,这
样(R1’)就可以作为一条规则用来为LASSO问题找出无关的特征。从(R1)和(R1’),可以看
出,找到的区域Θ越小,θ*(λ)的估计就越正确。那么有更多的无关特征就可以通过规则筛
选出来。
再来观察对偶问题(2),发现问题(2)的最优解是一个靠近y/λ的动点。为方便起
见,设F为问题(2)的动点集。显而易见,可以看出,F是一个封闭的、凸的多面体。换句话说,
θ*(λ)是y/λ在多面体F上的投影。从数学上说,希伯尔特空间中,对于一个任意向量ω和一
个凸集C,投影操作可以被定义为:
对偶问题的解θ*(λ)可以表示为:
对于等式(6),可以看出当λ足够大的时候,y/λ就是F的一个内点。如果是这种情
况,可以有如下判断:1)y/λ是F的一个内点,说明问题(2)的约束都是满足
始终成立;2)因为θ*(λ)也是F的一个内点,根据等式(6),那么就
有θ*(λ)=PF(y/λ)=y/λ成立。结合1)和2),假设λ足够大,那么β*(λ)=0,也就是说,所有特
征都是无关的。
通过上面的分析,那么是否会存在一个特殊的参数λmax?当λ>λmax时,问题(1)的最
优解为0。答案是肯定存在的。定义:
等式(7)定义的λmax是问题(1)所有特征都是无关的最小参数。
结合等式(8)和等式(3)有:
所以,如果想要筛选出无关的特征,必须要在λ∈(0,λmax)内才可以。因此首先要找
到一个包含最优解θ*(λ)的区域Θ,其次求解(R1’)的最大值,最后根据每个特征对应(R1’)
求解出来的最大值判断特征是否有关。
下面将直接给出EDPP的定理。
定理1:对于LASSO问题,在λ0∈(0,λmax],假设对偶问题解θ*(·)已知。对于任何λ∈
(0,λ0],定义:
则对偶问题解:
对于λ0∈(0,λmax],λ∈(0,λ0],则[β*(λ)]i=0必满足下式,
EDPP准则为:对于LASSO问题,有一系列参数值λmax=λ0>λ1>…>λκ,对于任何在0≤k
<κ,且β*(λk)已知,则[β*(λk+1)]i=0必满足下式:
则对于满足条件的参数λ,按照(15式)一步一步递推,对于每一个λk,如果第i个特
征满足上式,则[β*(λk+1)]i=0,则第i位特征为无关特征,筛选结果向量Τk对应位置0,其余
为置1,得到特征筛选结果Τ={Τi|Τi∈R1*m,0≤i<K}。
对于具体的学习任务,选取鲁棒性的特征筛选结果。
上面第2步,得到K个λ所对应的K个特征筛选结果Ti,把K个Ti叠加起来,这就得到每
一位特征被选择的频数,特征被选择的次数越多,代表其越有可能是相关的特征,选取p个
被选择次数最多的特征,得到鲁棒的特征选择结果(p也是一个可调参数)。
本发明的有益效果概括如下:
(1)本发明解决了配体分子海量特征的“维数灾难”问题,使得后续学习过程仅需
在小部分特征上构建模型,大幅提高模型的学习效率。
现在的机器学习问题中,具有非常高维度的数据随处可见。例如在许多生物相关
的问题中,数据的维度非常高,由于收集数据需要昂贵的实验,因此可用的训练数据相当
少。这个时候就会出现特征维度远大于样本数的情况,如果不做其他假设或限制的话,模型
难以构建,同时也会引起过拟合的问题。而LASSO方法通过构建一个罚函数得到一个较为精
炼的模型,使得它压缩一些系数,同时设定一些系数为零,从而剔除不相关的特征,解决了
“维数灾难”问题,使得后续学习过程仅需在小部分特征上构建模型,大幅提高模型的学习
效率。
(2)本发明利用基于EDPP准则的LASSO方法,快速并大幅去除不相关特征,得到鲁
棒的相关特征,利于理解与配体活性理解与配体活性相关的子结构,增加模型的可理解性。
针对K个满足条件的参数值,得到了K个候选的特征筛选结果,把K个筛选结果叠加
起来,这就得到每一位特征被选择的频数,特征被选择的次数越多,代表其越有可能是相关
的特征,选取p个被选择次数最多的特征作为最终的特征筛选结果,从而避免了使用单一参
数值可能带来模型效果差的问题。