加入星計劃,您可以享受以下權益:

  • 創(chuàng)作內容快速變現
  • 行業(yè)影響力擴散
  • 作品版權保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 動機和意義
    • 指紋選擇和計算
    • 并行計算和內存優(yōu)化
    • 指紋超參數調優(yōu)
    • 復雜的3D指紋處理管道
    • scikit-fingerprints庫的影響
  • 推薦器件
  • 相關推薦
  • 電子產業(yè)圖譜
申請入駐 產業(yè)圖譜

Scikit-fingerprints: 在Python中輕松高效地計算分子指紋

08/01 10:00
3693
閱讀需 8 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

論文 Scikit-fingerprints: easy and efficient computation of molecular fingerprints in Python 介紹了分子指紋在計算化學中的計算和應用,特別是其在機器學習和大規(guī)模數據處理中的重要性。

動機和意義

分子是計算化學處理的基本結構,通常表示為分子圖,需要轉換為多維向量以便大多數處理算法使用,尤其是機器學習(ML)應用。分子指紋是一種特征提取算法,將分子的結構信息編碼為向量,廣泛用于化學信息學中的各種任務,如化學空間多樣性測量、可視化、聚類、虛擬篩選和分子性質預測等。這些任務在新藥設計中尤為重要。為了正確評估預測模型的性能,訓練-測試數據集的劃分至關重要,分子指紋也可以用于此。指紋模型的性能與最先進的圖神經網絡(GNNs)相比仍然具有競爭力。

指紋選擇和計算

選擇適合特定應用的最佳指紋表示并不簡單,通常需要計算多種不同的指紋,并可能需要調整其超參數。使用多個指紋通常能改善結果,例如通過連接或數據融合。處理大型分子數據集需要利用現代多核CPU的高效實現。Python是當前化學信息學中最流行的語言,包含的scikit-learn庫已成為機器學習任務的事實標準工具。然而,許多流行的開源工具如Chemistry Development Kit (CDK)、OpenBabel或RDKit是用Java或C++編寫的,只有RDKit有官方的Python接口。

并行計算和內存優(yōu)化

并行計算分子指紋對于處理大型數據庫(如虛擬篩選)非常有用。論文展示了五種指紋在稠密和稀疏表示下的內存使用情況,稀疏表示顯著減少了內存使用。具體數據如下:

Klekota-Roth: 稠密數組大小2029MB,稀疏數組大小23MB,內存節(jié)省88.2倍。

FCFP: 稠密數組大小855MB,稀疏數組大小15MB,內存節(jié)省57倍。

Physiochemical Properties: 稠密數組大小855MB,稀疏數組大小17MB,內存節(jié)省50.3倍。

ECFP: 稠密數組大小855MB,稀疏數組大小19MB,內存節(jié)省45倍。

Topological Torsion: 稠密數組大小855MB,稀疏數組大小19MB,內存節(jié)省45倍。

指紋超參數調優(yōu)

大多數文獻中忽略了分子指紋的超參數調優(yōu),僅調優(yōu)下游分類器。論文進行了所有2D指紋的超參數調優(yōu),使用了MoleculeNet單任務分類數據集,結果顯示調優(yōu)帶來了顯著的性能提升。特別是基于子結構的Ghose-Crippen指紋在平均AUROC上提升了4%。具體結果如下:

RDKit指紋

    • 在BBBP數據集上的AUROC提升高達5.8%。

Ghose-Crippen指紋

    在所有數據集上的平均AUROC提升為4%。

復雜的3D指紋處理管道

對于需要3D信息的任務,如基于構象的指紋,整個處理管道變得更加復雜。需要生成構象并進行力場優(yōu)化,結果指紋可能有缺失值。使用多個指紋通常是有益的,特別是對于虛擬篩選,因為它們考慮了不同的幾何特征。論文展示了一個創(chuàng)建用于篩選的分子向量化管道的示例,使用了GETAWAY和WHIM描述符。這個示例在RDKit中需要超過100行代碼,而在scikit-fingerprints中則簡化了很多。

from?sklearn.impute?import?SimpleImputer
from?skfp.fingerprints?import?(GETAWAYFingerprint,?WHIMFingerprint)
from?skfp.preprocessing?import?ConformerGenerator
from?sklearn.pipeline?import?make_pipeline,?make_union

pipeline?=?make_pipeline(
????ConformerGenerator(optimize_force_field?=?"MMFF94",?n_jobs?=?-1),
????make_union(GETAWAYFingerprint(n_jobs?=?-1),?WHIMFingerprint(n_jobs?=?-1)),
????SimpleImputer(strategy?=?"mean"),
????)

scikit-fingerprints與CDK和OpenBabel的比較

scikit-fingerprints庫的影響

scikit-fingerprints是一個計算分子指紋的綜合庫,完全兼容scikit-learn接口,易于集成到復雜的分子數據處理管道中。庫中包含30多種指紋(2D和3D),并支持高效的構象生成。其直觀和統(tǒng)一的API使得領域專家(如計算化學家、化學信息學家或分子生物學家)易于使用。庫還強調代碼質量、安全性和自動化檢查。

并行計算:利用所有可用核心,顯著加速了大數據集的處理。

超參數調優(yōu):有助于提高模型性能。

指紋連接和數據融合:支持復雜的計算任務。

相關信息

代碼:https://github.com/scikit-fingerprints/scikit-fingerprints

論文:https://arxiv.org/abs/2407.13291v1

推薦器件

更多器件
器件型號 數量 器件廠商 器件描述 數據手冊 ECAD模型 風險等級 參考價格 更多信息
ATXMEGA192D3-MH 1 Atmel Corporation RISC Microcontroller, 16-Bit, FLASH, AVR RISC CPU, 32MHz, CMOS, 9 X 9 MM, 1 MM HEIGHT, 0.50 MM PITCH, GREEN, MO-220VMMD, MLF-64
$5.62 查看
ATXMEGA256A3U-AU 1 Atmel Corporation RISC Microcontroller, 16-Bit, FLASH, AVR RISC CPU, 32MHz, CMOS, PQFP64, 14 X 14 MM, 1 MM THICKNESS, 0.80 MM PITCH, GREEN, PLASTIC, MS-026AEB, TQFP-64

ECAD模型

下載ECAD模型
$6.75 查看
FS32K146HAT0MLLT 1 NXP Semiconductors RISC Microcontroller

ECAD模型

下載ECAD模型
$11.53 查看

相關推薦

電子產業(yè)圖譜