概要
ALIGNN は、原子構造から特性を学習する Atomistic Line Graph Neural Network を実装しています。そのアーキテクチャでは、結合グラフとそのライングラフに対する畳み込みを組み合わせ、ペア相互作用と三体相互作用を表現します。このリポジトリに含まれるのは予測モデルと学習ツールであり、材料データベースではありません。JARVIS-DFT などのデータセットが学習ターゲットを提供します。材料研究のワークフローでは、ALIGNN を用いて構造に基づく特性推定を行ったり、ユーザー提供データセット向けの予測器の開発を支援したりできます。
特性モデルの学習では、POSCAR、.cif、.xyz、.pdb 形式の構造ファイル、ファイル名とターゲットを対応付ける id_prop.csv、および学習設定を定義する設定ファイルを使用します。文書に記載された出力には、単一特性の回帰、特性または状態密度ターゲットの多出力回帰、二値分類があります。事前学習済みモデルで直接予測を行えます。JARVIS-ALIGNN ウェブアプリケーションでは、具体的には POSCAR 入力を受け付け、JARVIS-DFT で学習したモデルを用いて生成エネルギー、原子あたりの全エネルギー、バンドギャップを予測します。
ALIGNN-FF はリポジトリを原子論的力場へと拡張します。エネルギー、力、応力の学習データは id_prop.json を通じて与え、学習用エネルギーは原子あたりの値で表す必要があります。README には、89 種の元素の組み合わせを扱うモデル、ファインチューニング、ASE 計算器、および構造緩和、エネルギー-体積曲線、フォノン、分子動力学の例が記載されています。これらの機能は、あらゆる対象系で精度が得られることを示すものではありません。情報源によると、ALIGNN-FF は活発に開発中であり、分類スクリプトは二値タスクに限定され、DGL のインストールに問題があり、多 GPU 学習は十分にテストされていません。
主な機能
- 原子論的な結合グラフとライングラフに対するエッジゲート畳み込みを組み合わせ、ペア相互作用と三体相互作用をモデル化します。
- 電子およびフォノンの状態密度の例を含む、単一出力および多出力の特性回帰と、二値分類をサポートします。
- 構造ファイルとターゲットの対応付けに基づく設定可能な学習をサポートし、データセットの分割を調整したり、データの順序を維持するオプションを選択したりできます。
- `pretrained.py` による事前学習済み特性予測と、JARVIS-ALIGNN ウェブアプリケーションによる POSCAR ベースの特性予測を提供します。
- エネルギー、力、応力データを使った ALIGNN-FF の学習とファインチューニングをサポートします。エネルギーは原子あたりの値で与えます。
- ALIGNN-FF ASE 計算器と、構造緩和、エネルギー-体積曲線、フォノン、融解・急冷分子動力学の例を含みます。
用途
- 評価案:事前学習済みの生成エネルギーまたはバンドギャップ予測器で候補結晶構造をスクリーニングし、材料を選ぶ前に推定値を適切な参照計算と比較します。
- 評価案:ラベル付き構造から対象分野向けの特性モデルを学習し、ホールドアウトデータを使って、対象とする材料群に予測が適用できるかを評価します。
- 評価案:代表的な系で構造緩和またはエネルギー-体積解析に ALIGNN-FF を試し、エネルギー、力、緩和構造を参照結果と比較します。
- 評価案:文書に記載された学習例を使い、電子またはフォノンの状態密度ターゲットに対する多出力学習を検討します。
使い方
- リポジトリの READMEを読み、事前学習済み特性予測、独自の特性学習、ALIGNN-FF のいずれかを選びます。これらのワークフローでは必要なターゲットと設定が異なります。
- README のインストールセクションに従って環境を整えます。conda、リポジトリ、pip を使う方法が記載されており、DGL のインストールに関する問題も示されています。依存関係を選ぶ際は、リンク先の DGL の説明を参照してください。
- 特性学習では、対応する構造ファイルを用意し、
id_prop.csvを作成して、提供されている設定例を調整します。ターゲットの定義と学習・検証・テストの分割を慎重に設定してください。 - 事前学習済みモデルによる推論では、文書に記載された
pretrained.pyの例に従うか、JARVIS-ALIGNN アプリで POSCAR 入力を試してください。選択したモデルがどの特性と学習データセットに対応するかを確認してください。 - 力場を使用する場合は、シリコン学習ノートブックを確認し、原子あたりのエネルギーを含む
id_prop.jsonを用意します。緩和や動力学へ適用する前に、参照データと照らし合わせて予測を評価してください。