面对新型冠状病毒这种传播速度极快的疾病,AI如何帮助药物专家加快新药研发,降低疫情影响?这里我们以Milvus为例,希望能为药物发现的问题提供一个解决工具。药物发现是新药创新的源泉,在新药研发中起着举足轻重的作用。药物发现是通过目标选择和确认。每当发现活性片段或先导化合物(Lead)时,生物学家通常首先在公司收集的化合物库或商业化合物库中寻找相似的化合物,探索其构效关系。(SAR)和合成可行性,以评估先导化合物是否具有优化为候选化合物的潜力。为了在数十亿个化合物库中的片段空间(FragmentSpace)中找到可行的化合物,通常首先提取化学指纹(ChemicalFingerprint),然后对其进行子结构搜索和相似性搜索。然而,传统方法难以处理亿级高维化学指纹图谱,耗时长且容易出错,甚至可能丢失一些潜在的相似化合物。本文利用海量特征向量的相似度搜索引擎Milvus(https://milvus.io/cn/),结合RDKit工具构建复合检索系统,帮助快速实现复合检索。与传统方法相比,Milvus实现了更快的化合物检索和更广的覆盖范围。Milvus通过处理化学指纹图谱和搜索大分子数据库,实现子结构检索、相似性检索和精确检索,以发现潜在有益的生物药物。系统概述本文使用RDKit工具生成化学指纹,然后使用Milvus实现化学式检索。系统搭建步骤参考https://github.com/milvus-io/..._alpha/solutions/mols_search/README.md,接下来我们将对系统进行讲解。1.化学指纹生成化学指纹通常用于子结构检索和相似性检索,如下图所示,指纹是一个由(1/0)位表示的有序列表,每一位代表化学结构如元素,原子对、官能团的存在等,如化合物C1C(=O)NCO1可表示为:本文采用RDKit生成Morgan指纹。该算法设置一个从特定原子开始的半径,以计算该半径内的部分化合物结构的数量。形成化学指纹,可以通过设置radius和bits的值,得到不同化合物的化学指纹。此时,化合物以微笑格式表示。fromrdkitimportChemmols=Chem.MolFromSmiles(smiles)mbfp=AllChem.GetMorganFingerprintAsBitVect(mols,radius=2,bits=512)mvec=DataStructs.BitVectToFPSText(mbfp)2.CompoundSearch将RDKit生成的Morgan指纹导入Milvus构建一个化合物库,根据不同的化学指纹,Milvus可以实现化合物的子结构搜索、相似性搜索和精确搜索。frommilvusimportMilvusMilvus.add_vectors(table_name=MILVUS_TABLE,records=mvecs)Milvus.search_vectors(table_name=MILVUS_TABLE,query_records=query_mvec,top_k=topk)substructuresearch检测一个分子结构是否包含另一个分子作为子结构,这是化学家搜索最多的兴趣。相似性搜索用于查找结构相似的化合物,默认情况下使用Tanimoto度量化学结构z作为标准。精确搜索用于检查给定分子是否已包含在数据库中,其中所有分子特征必须相同。3.化学指纹计算通常化学家使用Tanimoto系数来衡量化学指纹,Jaccard距离在Milvus中与之对应。系数描述NA化学指纹A中1的个数NB化学指纹B中1的个数NA&B化学指纹A和化学指纹B均为1的个数根据以上参数,化学式指纹的计算可描述为:计算公式TanimotoNA&B/(NA+NB-NA&B)Jaccard1-NA&B/(NA+NB-NA&B)可以看出1-Jaccard=Tanimoto,本文使用Milvus中的Jaccard计算化学指纹距离,实际结果与谷本的计算结果一致。系统展示本系统实验数据来源:ftp://ftp.ncbi.nlm.nih.gov/pubchem/Compound/CURRENT-Full/SDF,通过Milvus实现超过9000万个化学式的化合物检索fingerprints,系统初始界面如下:我们可以在系统中搜索指定的化学式,如图所示,系统会返回与搜索到的化合物相似度最高的前五个化合物:结论相似度搜索是在图像、视频等许多应用领域中不可或缺。在计算药物发现中,相似性搜索可用于在分子数据库中搜索潜在有益的化学药物,最终可以将其转化为实际合成和临床试验的“种子”。Milvus作为一个开源的海量特征向量相似度搜索引擎,基于异构众核计算框架设计,具有更低的成本和更好的性能。在有限的计算资源下,它可以在几毫秒内搜索十亿个向量。响应,从而帮助生物化学领域实现准确、快速的化合物检索。我们提供基于Milvus的化学结构检索demohttp://40.73.24.85,欢迎访问搜索您指定的“种子”化合物!构建步骤:https://github.com/milvus-io/..._alpha/solutions/mols_search系统展示:http://40.73.24.85数据来源:ftp://ftp.ncbi.nlm.nih.gov/pubchem/Compound/CURRENT-Full/SDF欢迎加入Milvus社区Milvus源码github.com/milvus-io/milvusMilvus官网milvus.ioMilvusSlack社区milvusio.slack.comMilvusCSDN博客zilliz.blog.csdn.netMilvus在线交流群关注ZILLIZ公众号>点击菜单“在线交流”>添加ZILLIZ机器人并回复群?2020ZILLIZ?
