IBM/materials

Foundation Model for Materials - FM4M

IBM /materials – 材料科學基礎模型 (FM4M)

是什麼

  • 一組開源、預訓練的基礎模型,能理解分子與材料的不同表示方式(SMILES字串、SELFIES字串、分子圖、3D原子座標、電子密度格點等)。
  • 每個模型均在龐大的化學資料集上訓練(最多9100萬SMILES,超過10億個分子,超過150萬個3D結構),可直接使用進行特徵提取,或微調用於下游任務,如性質預測、量子性質回歸或生成式設計。
  • 倉儲包含一個輕量級包裝器 FM4M‑Kit,可透過統一的Python API或Hugging Face Spaces托管的簡單Web UI呼叫任意模型。

主要模型

模型 模態 核心架構 典型應用場景
SMI‑TED SMILES字串 Transformer編碼器-解碼器(約2.89億參數) 量子性質預測、序列到序列任務
SMI‑SSED SMILES字串 基於Mamba的編碼器-解碼器(快速推論) 與SMI‑TED相同,但速度更高
SELFIES‑TED SELFIES字串 BART風格Transformer 性質預測自回歸分子生成
MHG‑GED 分子圖 GNN編碼器 + 分子超圖語法解碼器 有效分子生成和基於圖的回歸
POS‑EGNN 3D原子圖 等變幾何張量網路 用於MD模擬的機器學習勢能
3DGrid‑VQGAN 3D電子密度格點 VQ‑GAN編碼器-解碼器 將高維量子資料壓縮為潛在向量
SMILESDFT‑CLIP 多模態(SMILES + 3D密度) 聯合VQ‑GAN + Transformer(對比學習) 學習字串與場模態之間的對齊表示
MOL‑MOE 多視角(SMILES, SELFIES, 圖) 專家混合(Mixture‑of‑Experts) 融合補充視角以實現更高精度的性質預測
STR‑Bamba 字串(SMILES/SELFIES) 混合Transformer‑Mamba‑2 靈活處理多種字串編碼
TDiMS 描述子(SMILES) 分子內子結構的拓撲距離 輕量、可解釋的特徵——無需預訓練

如何開始

  1. 建立Conda環境
    conda create -n fm4m python=3.9.8
    conda activate fm4m
    
  2. 安裝相依性
    pip install -r requirements.txt
    # 安裝與CUDA版本匹配的torch-scatter,例如:
    pip install torch-scatter -f https://data.pyg.org/whl/torch-$(python -c "import torch; print(torch.__version__.split('+')[0])")+cu118.html
    
  3. 選擇使用方式
    • 直接模型 – 進入 models/<model_name>/ 並依照其中的README或筆記本操作。
    • FM4M‑Kit(推薦) – 導入包裝器並呼叫單一函數:
      import fm4m
      
      # 從SELFIES‑TED提取特徵
      feats = fm4m.get_representation(model="selfies-ted", data=my_smiles)
      
      # 使用單一模型訓練下游回歸器
      score = fm4m.single_modal(
          model="MHG-GED",
          x_train=X_train, y_train=y_train,
          x_test=X_test,   y_test=y_test,
          downstream_model="DefaultRegressor"
      )
      
      # 組合多個模態
      score = fm4m.multi_modal(
          model_list=["SELFIES-TED", "MHG-GED", "SMI-TED"],
          x_train=X_train, y_train=y_train,
          x_test=X_test,   y_test=y_test,
          downstream_model="DefaultRegressor"
      )
      
    • Web UI – 打開倉儲中連結的Hugging Face Space,使用拖曳上傳介面上傳資料、選擇模型,並快速執行XGBoost下游任務。

倉儲結構

materials/
├─ models/                # 每個單模態模型一個資料夾(smi_ted/, selfies_ted/, …)
│   ├─ fm4m.py            # 核心包裝器工具
│   └─ …
├─ examples/              # 展示端對端流程的Jupyter筆記本
│   ├─ fm4m_example.ipynb
│   └─ battery_example.ipynb
├─ requirements.txt       # Python相依性
└─ README.md (此檔案)

何時使用FM4M

  • 您擁有化學或材料資料(SMILES、圖、3D結構),需要高品質嵌入但無需從頭訓練模型。
  • 想要比較不同分子表示對下游預測的影響。
  • 需要預訓練的機器學習勢能(POS‑EGNN)以實現接近DFT精度的分子動力學模擬。
  • 生成式化學(SELFIES‑TED、MHG‑GED)感興趣,希望生成語法上有效的分子。

社群與支援

  • 在IBM友善授權下開源;歡迎透過拉取請求貢獻程式碼。
  • 模型託管於Hugging Face,提供GUI以快速探索。
  • 團隊定期舉辦教學與研討會(MRS 2025、AAAI 2025、NeurIPS 2024等),並在AI Alliance中維護工作小組。

參考文獻

  • README列出每個模型的論文(Nature Communications Chemistry 2025、NeurIPS 2024等),可深入了解技術細節。

簡而言之,IBM/materials 提供了一套即用型的大規模、多模態基礎模型工具箱,將最先進的AI引入材料科學與化學研究。

相關

  • 專案
  • 專案
  • 專案
  • 專案