概要
MACE は、高次の等変メッセージパッシングに基づく機械学習原子間ポテンシャルのリファレンス実装です。原子系の参照データからポテンシャルを構築する方法と、事前学習済み基盤モデルを推論やファインチューニングに利用する方法の両方をサポートします。このリポジトリは、あらゆる化学系に適用できる単一の固定ポテンシャルを提供するのではなく、予測モデルに学習、評価、計算器インターフェースを組み合わせています。
記載されている学習ワークフローは XYZ データセットを受け付け、検証用・テスト用データセットの分離、原子参照エネルギー、構造ごとのラベル重みなどのオプションを提供します。応力ラベル付きのバルク構造と分子構造の両方を含むデータセットにも対応できます。大規模なデータセットでは、前処理によってオンライン読み込み用の HDF5 ファイルを作成します。学習ではモデルチェックポイントと診断プロットが生成されます。評価インターフェースには XYZ 構造ファイルと保存済みモデルを渡し、出力 XYZ ファイルを書き出します。ASE 計算器の例では、事前学習済みモデルからポテンシャルエネルギーを取得する方法を示しています。
モデルの選択は重要です。MACE-MP は材料を対象とし、MACE-OFF は有機分子、結晶、分子液体をサポートします。掲載されているその他のモデル系列は、静電気学を含む追加の領域を対象としています。README は、MACE-MP の未補正 DFT エネルギーは、互換性補正を含む Materials Project のエネルギーと直接比較できないと注意しています。コードとチェックポイントのライセンスも別々に確認する必要があります。
プロジェクトの README によると、v1.0 への書き換え期間中にサポートされる系列は v0.3.x であり、将来的なコードの非互換性と、明示的なチェックポイント変換が予定されています。ドキュメントは部分的と説明されており、インストール節には特定の PyTorch 除外事項が記載されています。これらは情報源に記載された制約であり、独立して検証された互換性の結果ではありません。
主な機能
- チャネル数と角度特徴量の次数を設定できる、高次の等変メッセージパッシング原子間ポテンシャル。
- 異種ラベルや構造ごとの応力重み付けを含む、XYZ 参照データセットからの学習。
- 保存済みチェックポイントと出力構造ファイルを用いて、`mace_eval_configs` で XYZ 構造を評価。
- 事前学習済み基盤モデルの推論とファインチューニング。材料向けの MACE-MP と有機化学向けの MACE-OFF 系列を含みます。
- 事前学習済みモデル向けの ASE 計算器インターフェース。ポテンシャルエネルギーの計算例が示されています。
- 大規模データセット向けの HDF5 前処理とオンラインデータ読み込み、および分散マルチ GPU 学習のサポート。
用途
- 評価案:参照構造を用いて対象系のポテンシャルを学習し、保留構造でエネルギーと力の誤差を評価します。
- 評価案:代表的なバルク構造を用いて材料基盤モデルを評価します。その際、未補正 DFT エネルギーと補正済み Materials Project エネルギーの違いを考慮します。
- 評価案:チェックポイントの適用範囲と条件を確認したうえで、有機分子、結晶、または液体のシミュレーションに MACE-OFF を利用できるか検討します。
- 評価案:対象データセットで基盤モデルをファインチューニングし、保留データに対する予測を開始時のチェックポイントの予測と比較します。
使い方
- リポジトリ READMEとドキュメントを確認します。環境を選ぶ前に、サポート対象のリリース系列、移行に関する注意事項、ドキュメントに記載された Python/PyTorch の要件を確認してください。
- README のインストール手順とPyTorch のインストールガイドに従います。記載されているパッケージは
mace-torchです。名前のよく似たMACEパッケージとは無関係です。 - 参照データから学習するか、事前学習済みモデルで推論するかを選びます。材料モデルのリリースまたは有機モデルのリリースを参照し、対象領域、参照理論、チェックポイント固有のライセンスを確認します。
- XYZ 形式の学習、検証、テスト用構造を準備します。原子参照エネルギーとラベルの重み付けについて README の説明に従い、オンライン読み込みが必要な場合は HDF5 前処理ワークフローを利用します。
- ドキュメントにある学習、ファインチューニング、または ASE 計算器の例を利用します。学習と評価のチュートリアルは、手順を追って始めるための入口です。
- ドキュメントに記載された
mace_eval_configsインターフェースを使って、保存済みモデルを評価します。評価手順として、シミュレーションでポテンシャルを利用する前に、保留データに対する予測を参照ラベルと比較してください。