Improved SMILES Substructure Searching-提高子结构搜索速度

Improved SMILES Substructure Searching-提高子结构搜索速度
daylight上面有一篇文章,讲解如何提高子结构搜索速度: http://www.daylight.com/meetings/emug00/Sayle/substruct.html
其大概意思就是先通过Fingerprint进行筛选,这样可以快速的筛选掉一部分数据,对于复杂结构更有效;另外就是根据原子个数或者特殊原子个数进行比较,如果查询结构包含三个“N”原子,那么所要查询出的结构所含有“N”的个数必须大于等于3,这样对于包含一些特殊元素的效果是特别的好;还有就是根据分子的一些性质进行筛选过滤,比如芳香性等;最后再进行匹配,这样一来对于复杂结构以及含特殊元素的查询速度会提高很多。
      最后文章中还给出测试数据,从中可以看出,速度一般提高了三倍左右:
      
Name SMILES Correct FP Triage Before After Latest
Propane CCC 65337 66352 42411 42.59 17.99 14.34
Selenium [Se] 246 995 225 0.80 0.83 0.52
Benzene c1ccccc1 79426 79486 50893 72.69 27.56 20.29
Methane C 118519 118524 118511 61.29 5.47 4.25
Amido NC=O 25695 26975 14702 18.89 9.84 8.16
Methylbenzene Cc1ccccc1 54529 56869 20490 54.76 35.58 25.90
Carboxy OC=O 33009 34369 17809 23.86 12.48 10.24
Chlorine Cl 19424 23318 19424 11.23 1.38 1.12
Cyclopropane C1CC1 863 4358 484 8.24 7.78 5.02
Biphenyl c1ccccc1c2ccccc2 2967 5142 146 21.94 21.65 11.44
Dopamine NCCc1ccc(O)c(O)c1 829 913 23 1.85 2.09 1.47
Sulfisoxazole 7 8 3 0.50 0.88 0.51
BetaCarotene 2 16 1 0.48 0.68 0.58
Nitrofurantoin 0 0 0 0.42 0.58 0.52

你可能感兴趣的:(Improved SMILES Substructure Searching-提高子结构搜索速度)