本文へスキップ

MEGNet

Chi Chen / Materials Virtual Lab

MEGNet は非推奨となった TensorFlow グラフネットワーク実装であり、分子および結晶の物性に関する事前学習済みモデル、学習ユーティリティ、転移可能な元素埋め込みを備えています。

掲載情報の更新 ·

概要

MEGNet は、分子および結晶の物性を学習する MatErials Graph Networks を実装しています。Materials Virtual Lab が開発したこのリポジトリには、事前学習済みの予測モデルと、グラフネットワークの学習およびカスタマイズ用ツールが含まれています。現在は非推奨です。README には、今後更新されず、元の TensorFlow 実装の参照用として維持されると記載されており、後継として matgl が挙げられています。

このワークフローでは、原子特徴、結合特徴、接続関係、グローバル状態属性を用いて構造を表現します。積み重ねた MEGNet ブロックがこれらの要素間で情報を交換し、set2set 読み出しによって表現をスカラーまたはベクトルの物性値に写像します。予測例では pymatgen の Structure または Molecule オブジェクトを受け付けます。分子の例には、SMILES からの変換や XYZ ファイルの読み込み方法も記載されています。事前学習済みモデルは HDF5+JSON ファイルとして配布され、QM9 の分子ターゲットおよび Materials Project の結晶ターゲットを対象としています。対象には軌道エネルギー、生成エネルギー、バンドギャップ、対数弾性率が含まれます。

モデル開発では、MEGNetModel を使って構造と対応するターゲット値から学習することも、検証済みのグラフから学習することもできます。より低レベルの MEGNetLayer および Set2Set コンポーネントは、カスタムアーキテクチャの構築に利用できます。また、このリポジトリにはマルチフィデリティの例や、生成エネルギーモデルから抽出した元素埋め込みが含まれており、転移学習のワークフローに利用できます。

研究用ベースラインとして使用する場合、いくつかの重要な制約があります。README は、学習データのカバレッジが限られているため、QM9 モデルを同データセット外の分子に適用しないよう推奨しています。選択した近傍カットオフによって孤立原子が生じると、結晶グラフへの変換に失敗する場合があります。大規模データセットの学習は計算負荷が高く、専用 GPU が推奨されると説明されています。評価では、これらの制約とリポジトリが非推奨であることを考慮してください。

主な機能

  • MEGNetModel.from_file を通じてシリアライズされた HDF5+JSON 形式の事前学習済みモデルを読み込みます。モデルは QM9 の分子物性と Materials Project の結晶物性を対象としています。
  • 予測には pymatgen の結晶および分子オブジェクトを受け付けます。分子のワークフローとして、SMILES 変換と XYZ 読み込みの手順が文書化されています。
  • 構造とターゲット値から MEGNetModel インスタンスを学習するか、無効な構造グラフを除外した後に train_from_graphs を使用します。
  • 積み重ねたグラフネットワークブロックで原子、結合、グローバル状態の属性を更新し、set2set 読み出しによってスカラーまたはベクトルを予測します。
  • カスタマイズした TensorFlow/Keras グラフネットワークアーキテクチャの構築に使える MEGNetLayer および Set2Set コンポーネントを公開しています。
  • 事前学習済み元素埋め込み、転移学習ノートブック、マルチフィデリティのグラフネットワーク学習例を提供します。

用途

  • 評価案:代表的な結晶構造を用いて、事前学習済みの生成エネルギー、バンドギャップ、弾性率モデルを過去のベースラインとして評価し、グラフの妥当性とターゲットの単位を確認する。
  • 評価案:QM9 の分子物性予測をドメイン内の分子で検討し、無関係な分子化学系にも適用できると想定しない。
  • 評価案:ラベル付き結晶構造で物性モデルを学習し、転移した元素埋め込みを使うモデルと使わないモデルを比較する。
  • 評価案:付属の例を参考に、グローバル状態特徴とマルチフィデリティ学習が材料物性モデリングのワークフローにどう適合するかを検討する。

使い方

  1. 公式 README、特に非推奨の告知を確認してください。元の TensorFlow 参照実装が必要か、リンク先の matgl 後継プロジェクトを調べるべきかを判断します。
  2. 別の評価環境で README のインストール手順に従ってください。インストールと実行時の互換性は、使用環境で確認すべき事項として扱い、確認済みの事実とはみなさないでください。
  3. mvl_models から事前学習済みターゲットを選び、モデルの詳細を確認します。README にある結晶または QM9 のノートブックへの参照に従って pymatgen 入力を準備し、文書化された API でモデルを読み込みます。
  4. 予測を解釈する前に、入力のカバレッジ、近傍カットオフ、出力単位を確認してください。特に、体積弾性率の例では log10 の予測値を GPa に変換しています。QM9 モデルにはカバレッジに関する明示的な警告があります。
  5. カスタム学習では、構造とターゲット値を対応付け、グラフ変換を検証し、文書化された学習手順を使用してください。ホールドアウトデータの予測は別途評価してください。関連する場合は、転移学習とマルチフィデリティの例を参照してください。

関連リソース

ChemML

オープンソース

ChemMLは、化学・材料データの分析、マイニング、モデリングを行うPythonツールスイートです。モジュール型設計を採用し、グラフニューラルネットワーク、AutoML、説明可能性に関する取り組みが記載されています。

オープンソースPython

分子特性予測 · 材料探索

DScribe

オープンソース

DScribeは、原子構造を機械学習、可視化、類似性解析に用いる数値記述子へ変換するPythonライブラリで、バッチ処理と原子位置に関する導関数にも対応します。

オープンソースPythonC++

分子特性予測 · 材料探索

ALIGNN

モデル

ALIGNN は、材料特性予測のための原子論的グラフニューラルネットワークを提供し、学習ワークフロー、事前学習済み予測器、および構造最適化向けの ALIGNN-FF 力場を備えています。

オープンソースPython

材料探索

Allegro

モデル

Allegro は NequIP の拡張として E(3) 等変原子間ポテンシャルを実装し、文書化された GPU 高速化オプションと、LAMMPS シミュレーション用の独立したプラグインを提供します。

オープンソースPython

計算化学 · 材料探索

computational-chemistry-agent-skills コレクションに含まれる ASE ルーティング Skill。ワークフローの準備と計算器の設定を分け、実行は別の担当先に委任します。

計算化学 · 材料探索

CGCNN

モデル

CGCNNは結晶グラフ畳み込みニューラルネットワークを実装し、結晶構造から材料特性を学習します。カスタムデータを用いたモデルの学習と、事前学習済みモデルによる予測に対応しています。

オープンソースPython

材料探索

関連ガイド