当前位置: 首页 > 专利查询>四川大学专利>正文

一种基于深度学习的药物表征方法及存储介质技术

技术编号:36785190 阅读:16 留言:0更新日期:2023-03-08 22:26
本发明专利技术涉及计算机辅助药物设计与深度学习技术领域,提供了一种基于深度学习的药物表征方法及存储介质。主旨在于解决现有技术中药物表征适应性差、不可学习,训练开销巨大的问题。主要方案包括1)药物分子SMILES数据集的收集;2)药物分子SMILES数据增强;3)药物分子SMILES分词;4)词元嵌入初始化;5)设计卷积神经网络模型;6)药物分子指纹特征生成;7)预训练卷积神经网络模型;8)经过迭代计算,导出预训练模型;9)将分子输入表征模型得到静态分子表征,或共同训练动态表征以适应下游任务。本发明专利技术用于计算机辅助药物设计中药物表征及药物筛选属性预测。物筛选属性预测。物筛选属性预测。

【技术实现步骤摘要】
一种基于深度学习的药物表征方法及存储介质


[0001]本专利技术涉及计算机辅助药物设计与深度学习
,提供了一种基于深度学习的药物表征方法及存储介质。

技术介绍

[0002]在药物开发和再利用过程中,进行各项实验,如药物化学实验、动物实验和临床实验等,是非常耗时而且昂贵的过程。随着大量药物实验数据的产生和计算机技术的发展,使用基于数据和计算模型的方法进行计算机辅助药物设计是目前药物研发过程中的重要方法,其可以进行初步筛选,以减少实验次数,降低研发成本,缩短研发周期。在计算机辅助药物设计中最重要、最关键的技术就是药物表征。
[0003]近些年来,药物表征方法主要有分子描述符和自监督学习方法来获取表征,但仍存在适应性差、计算量大以及难以训练等局限性。
[0004]基于分子描述符的药物表征方法是目前最主流的方法,其主要是通过计算统计药物分子中各种子结构的类别和数量得到一个二进制的表征向量。此方法一般联合传统机器学习方法共同使用,具备一定的表征能力,但是不具备自适应性。此类药物表征方法,一旦选定分子描述符,则生成的药物表征向量固定,无法根据不同的药物筛选任务来学习最合适的表征向量,而且不同分子描述符会严重影响筛选任务的性能。
[0005]基于自监督学习的药物表征方法是主要分为两种,分别是基于分子序列模型和基于分子图模型的自监督表示学习方法。这类方法都是通过遮蔽复原策略来先预训练一个超大规模的模型,然后使用预训练后的全局特殊词元的向量作为药物表征向量。此方法使用的预训练模型参数量非常大(通常数亿甚至数百亿),因此需要巨大的数据和海量的计算资源才能训练,随之而来的还有收敛速度慢、训练时间长和药物表征生成时计算复杂度高等一系列问题,在人力、物力、时间上耗费巨大。
[0006]基于扩展连接指纹的有监督训练卷积神经网络模型,使用分子指纹作为监督信号,监督卷积神经网络模型的表示学习,可以根据不同的药物筛选任务,生成不同的药物表征。该方法使用了卷积神经网络模型和监督学习预训练策略,不仅计算量大大减少,且提升了药物表征的普适性,同时模型具有易训练和可解释性的特点。但该技术存在的缺点是需要计算生成监督标签,耗费时间较长。

技术实现思路

[0007]针对上述研究的问题,本专利技术的目的在于提供一种基于深度学习的药物表征方法,解决现有技术中药物表征适应性差、不可学习,训练开销巨大的问题。
[0008]为了达到上述目的,本专利技术采用如下技术方案:
[0009]本专利技术提供了一种基于深度学习的药物表征方法,包括如下步骡:
[0010]1)药物分子SMILES数据集的收集;2)药物分子SMILES数据增强;3)药物分子SMILES分词;4)词元嵌入初始化;5)设计卷积神经网络模型;6)药物分子指纹特征生成;7)
预训练卷积神经网络模型;8)经过迭代计算,导出预训练模型;9)将分子输入表征模型得到静态分子表征,或共同训练动态表征以适应下游任务。
[0011]步骤1:获取ChEMBL数据库中提供的药物分子规范SMILES和药物编号构建数据集,其中随机选取80%药物作为训练集,10%做为验证集,10%作为测试集;
[0012]步骤2:使用Rdkit工具包读取药物分子,并随机生成5个药物分子SMILES,得到数据增强后的随机药物分子SMILES;
[0013]步骤3:构建一个SMILES分词器对药物分子SMILES进行分词,得到词元化后的药物分子SMILES列表;
[0014]步骤4:将步骤3得到的药物分子SMILES列表进行OneHot编码后使用Word2Vec模型得到词元的嵌入向量;
[0015]步骤5:构建基于卷积神经网络的深度学习模型,得到卷积神经网络模型;
[0016]步骤6:计算每一个药物分子的扩展连接分子指纹;
[0017]步骤7:使用扩展连接指纹作为标签监督训练卷积神经网络模型;
[0018]步骤8:保存卷积神经网络模型除输出层外的所有权重和偏置参数,导出预训练模型;
[0019]步骤9:将药物分子SMILES输入预训练模型得到静态药物表征,或共同训练动态药物表征以适应下游任务。
[0020]上述技术方案中,所述步骤2的具体步骤为:
[0021]采用Rdkit工具包将每一个药物分子的规范SMILES读入成Mol文件,用Mol文件唯一表示一个药物分子;随机初始节点的原子,通过药物分子Mol文件生成5个随机药物分子SMILES,得到数据增强后的随机药物分子SMILES。
[0022]上述技术方案中,所述步骤3的具体步骤为:
[0023]将步骤1和步骤2中收集到的药物分子SMILES全部按照字符切分,得到切分后的字符列表;
[0024]将字符列表进行字节对编码,选择出现频次最高的一对相邻字符数据作为单位数据,即词元,并用该单位数据替换原有相邻字符,重复迭代多次,直到已有新单位数据达到词汇表大小V=2000,或达到设定迭代最大次数M=60000。;
[0025]保存已满足迭代停止条件的词汇表,并且联合词汇表和原子正则表达式Token_regex,共同作为SMILES分词器,其中原子正则表达式Token_regex为:
[0026]Token_regex=(\[[^\]]+]|Br?|Cl?|N|O|S|P|F|I|b|c|n|o|s|p|\(|\)|\.|=|#|

|\+|\\\\/|:|~|@|\?|>|\*|\$|\%[0

9]{2}|[0

9])
[0027]将步骤1和步骤2中收集到的药物分子SMILES输入SMILES分词器进行分词,得到词元化后的药物分子SMILES列表。
[0028]上述技术方案中,所述步骤4的具体步骤为:
[0029]将已经词元化后的药物分子SMILES列表进行OneHot编码,得到相应的OneHot向量;
[0030]随机打乱所有药物分子SMILES列表的OneHot向量,将OneHot向量分批次送入一个基于Skipgram和负采样的Word2vec模型进行训练,得到每个词元的嵌入向量。
[0031]上述技术方案中,所述步骤5中卷积神经网络模型的基础结构采用TextCNN模型,
具体设计为:
[0032]TextCNN模型接收词元化后的药物分子SMILES列表对应的嵌入向量矩阵作为输入,词嵌入向量矩阵由步骤4中得到的嵌入向量按照药物分子SMILES列表的词元顺序堆叠形成,设Xi表示word
i
的k维嵌入向量,则一条长为n的药物分子SMILES列表的嵌入向量矩阵可以表示为:
[0033][0034]其中,表示拼接(concat)操作,最终得到的X
1:n
为k
×
n的药物分子SMILES列表的嵌入向量矩阵,在卷积操作中,卷积核通过一个长为h的窗口在药物分子SMILES列表的嵌入向量矩本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于深度学习的药物表征方法,其特征在于,包括如下步骤:步骤1:获取ChEMBL数据库中提供的药物分子规范SMILES和药物编号构建数据集,其中随机选取80%药物作为训练集,10%做为验证集,10%作为测试集;步骤2:使用Rdkit工具包读取药物分子,并随机生成5个药物分子SMILES,得到数据增强后的随机药物分子SMILES;步骤3:构建一个SMILES分词器对药物分子SMILES进行分词,得到词元化后的药物分子SMILES列表;步骤4:将步骤3得到的药物分子SMILES列表进行OneHot编码后使用Word2Vec模型得到词元的嵌入向量;步骤5:构建基于卷积神经网络的深度学习模型,得到卷积神经网络模型;步骤6:计算每一个药物分子的扩展连接分子指纹;步骤7:使用扩展连接指纹作为标签监督训练卷积神经网络模型;步骤8:保存卷积神经网络模型除输出层外的所有权重和偏置参数,导出预训练模型;步骤9:将药物分子SMILES输入预训练模型得到静态药物表征,或共同训练动态药物表征以适应下游任务。2.根据权利要求1所述的一种基于深度学习的药物表征方法,其特征在于,所述步骤2的具体步骤为:采用Rdkit工具包将每一个药物分子的规范SMILES读入成Mol文件,用Mol文件唯一表示一个药物分子;随机初始节点的原子,通过药物分子Mol文件生成5个随机药物分子SMILES,得到数据增强后的随机药物分子SMILES。3.根据权利要求2所述的一种基于深度学习的药物表征方法,其特征在于,所述步骤3的具体步骤为:将步骤1和步骤2中收集到的药物分子SMILES全部按照字符切分,得到切分后的字符列表;将字符列表进行字节对编码,选择出现频次最高的一对相邻字符数据作为单位数据,即词元,并用该单位数据替换原有相邻字符,重复迭代多次,直到已有新单位数据达到词汇表大小V=2000,或达到设定迭代最大次数M=60000。;保存已满足迭代停止条件的词汇表,并且联合词汇表和原子正则表达式Token_regex,共同作为SMILES分词器,其中原子正则表达式Token_regex为:Token_regex=(\[[^\]]+]|Br?|Cl?|N|O|S|P|F|I|b|c|n|o|s|p|\(|\)|\.|=|#|

|\+|\\\\/|:|~|@|\?|>|\*|\$|\%[0

9]{2}|[0

9])将步骤1和步骤2中收集到的药物分子SMILES输入SMILES分词器进行分词,得到词元化后的药物分子SMILES列表。4.根据权利要求2所述的一种基于深度学习的药物表征方法,其特征在于,所述步骤4的具体步骤为:将已经词元化后的药物分子SMILES列表进行OneHot编码,得到相应的OneHot向量;随机打乱所有药物分子SMILES列表的OneHot向量,将OneHot向量分批次送入一个基于Skipgram和负采样的Word2vec模型进行训练,得到每个词元的嵌入向量。
5.根据权利要求3所述的一种基于深度学习的药物表征方法,其特征在于,所述步骤5中卷积神经网络模型的基础结构采用TextCNN模型,具体设计为:TextCNN模型接收词元化后的药物分子SMILES列表对应的嵌入向量矩阵作为输入,词嵌入向量矩阵由...

【专利技术属性】
技术研发人员:魏骁勇曹溢杨震群严丽巧田奇黄文禹
申请(专利权)人:四川大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1