IBM/materials
Foundation Model for Materials - FM4M
IBM /materials – 材料用の基礎モデル (FM4M)
何であるか
- 分子および材料のさまざまな表現(SMILES文字列、SELFIES文字列、分子グラフ、3次元原子配置、電子密度グリッドなど)を理解できる、オープンソースで事前学習済みの基礎モデルのコレクション。
- 各モデルは膨大な化学データセット(最大9100万SMILES、10億以上分子、150万以上の3次元構造)で訓練されており、そのまま特徴抽出に使用したり、微調整して物性予測、量子物性回帰、生成設計などの下流タスクに活用できます。
- リポジトリには、統一されたPython APIまたはHugging Face SpacesでホストされたシンプルなWeb UIを通じて、任意のモデルを呼び出せる軽量ラッパー「FM4M‑Kit」が同梱されています。
主要モデル
| モデル | モダリティ | コアアーキテクチャ | 一般的な用途 |
|---|---|---|---|
| SMI‑TED | SMILES文字列 | Transformerエンコーダデコーダ(約289Mパラメータ) | 量子物性予測、シーケンス対シーケンスタスク |
| SMI‑SSED | SMILES文字列 | Mambaベースエンコーダデコーダ(高速推論) | SMI‑TEDと同様だが、より高速 |
| SELFIES‑TED | SELFIES文字列 | BARTスタイルTransformer | 物性予測および自己回帰的分子生成 |
| MHG‑GED | 分子グラフ | GNNエンコーダ + 分子ハイパーグラフ文法デコーダ | 有効な分子生成およびグラフベース回帰 |
| POS‑EGNN | 3次元原子グラフ | 等価幾何テンソルネットワーク | MDシミュレーション用の機械学習ポテンシャル |
| 3DGrid‑VQGAN | 3次元電子密度グリッド | VQ‑GANエンコーダデコーダ | 高次元量子データを潜在ベクトルに圧縮 |
| SMILESDFT‑CLIP | 多モーダル(SMILES + 3次元密度) | 連合VQ‑GAN + Transformer(対照的) | 文字列モダリティと場モダリティ間の整合表現を学習 |
| MOL‑MOE | 多視点(SMILES、SELFIES、グラフ) | Mixture‑of‑Experts | 補完的な視点を統合し、より高精度な物性予測を実現 |
| STR‑Bamba | 文字列(SMILES/SELFIES) | Hybrid Transformer‑Mamba‑2 | 複数の文字列エンコーディングを柔軟に処理 |
| TDiMS | 記述子(SMILES) | 分子内部分構造のトポロジカル距離 | 軽量で解釈可能な特徴量 – 事前学習不要 |
始める方法
- Conda環境の作成
conda create -n fm4m python=3.9.8 conda activate fm4m - 依存関係のインストール
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 - 使用スタイルの選択
- 直接モデル –
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/ # 1つのユニモーダルモデルごとにフォルダ(smi_ted/, selfies_ted/, …)
│ ├─ fm4m.py # コアラッパーユーティリティ
│ └─ …
├─ examples/ # エンドツーエンドパイプラインを示すJupyterノートブック
│ ├─ fm4m_example.ipynb
│ └─ battery_example.ipynb
├─ requirements.txt # Python依存関係
└─ README.md (このファイル)
FM4Mを使うべきタイミング
- 化学または材料データ(SMILES、グラフ、3次元構造)があり、モデルをゼロから訓練せずに高品質な埋め込みを得たい場合。
- 異なる分子表現が下流予測に与える影響を比較したい場合。
- 分子動力学シミュレーションでDFTに近い精度を実現する事前学習済みMLポテンシャル(POS‑EGNN)が必要な場合。
- 生成化学(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を材料科学および化学研究に即座に導入できる、大規模で多モーダルな基礎モデルのツールボックスを提供します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト