本文へスキップ

DeePKS

Yixiao Chen

DeePKS-kit は、量子化学のエネルギー汎関数の学習、post-HF モデルのテスト、および DeePHF と DeePKS のスキームによる自己無撞着計算を行うための Python ツールキットです。

掲載情報の更新 ·

概要

DeePKS-kit は、量子化学系向けの学習型エネルギー汎関数の開発を支援します。README では、摂動スキームの DeePHF と、自己無撞着スキームの DeePKS が区別されています。提供された資料が説明しているのは、単一の事前学習済み予測モデルではなく、モデルの学習と電子構造計算での利用を目的とする Python ライブラリおよびコマンドラインツールキットです。

deepks インターフェースは、ワークフローを5つの操作に分けています。train はニューラルネットワークベースの post-HF エネルギー汎関数を適合させ、test は提供されたデータで post-HF モデルを評価して統計情報を報告します。scf は提供されたエネルギーモデルを使って自己無撞着場計算を実行し、stats は SCF 結果の統計情報を集計します。iterate はこれらの操作を組み合わせ、自己無撞着モデルを反復的に学習します。したがって、文書に記載された入力には、モデルの学習またはテスト用データ、SCF 計算用のエネルギーモデル、設定パラメーターが含まれ、出力には学習済みモデル、計算結果、報告された統計情報が含まれます。出典の抜粋には、完全なデータスキーマや出力形式は記載されていません。

README には、水分子1個の例と水クラスターでの学習例へのリンクがあり、Slurm によるスケジューリングではなくローカルで実行するための個別の設定方法も案内されています。また、背景をさらに知るための手法論文へのリンクもあります。このパッケージは PyTorch と PySCF を自動的にインストールしないため、これらは別途インストールする必要があります。プロジェクトは正確なエネルギー汎関数の実現を目標に掲げていますが、出典の抜粋には、特定の系について精度、転移可能性、計算コストを立証するベンチマーク結果はありません。

主な機能

  • 摂動型の DeePHF と自己無撞着型の DeePKS の両方のエネルギー汎関数ワークフローをサポートします。
  • ニューラルネットワークベースの post-HF エネルギー汎関数モデルを適合させる `deepks train` を提供します。
  • 提供されたデータで post-HF モデルを評価し、統計情報を報告する `deepks test` を提供します。
  • 提供されたエネルギーモデルを使って `deepks scf` で自己無撞着場計算を実行し、`deepks stats` で結果の統計情報を集計します。
  • `deepks iterate` により、学習、テスト、SCF 計算、統計処理を組み合わせて自己無撞着モデルを学習できます。
  • 水分子1個および水クラスターの例を説明しており、入力パラメーターの案内と、Slurm に代わるローカル実行用の設定が含まれています。

用途

  • 評価案:水分子1個の例を使って記載されたワークフローを確認し、その後、別の量子化学系に応用します。
  • 評価案:適切な提供データを使って post-HF エネルギー汎関数を学習・テストし、報告された統計情報を用いて挙動を評価します。
  • 評価案:水クラスターの例で反復的な自己無撞着モデル学習を試し、定めた評価プロトコルに基づいて結果を比較します。

使い方

  1. プロジェクト READMEを読み、摂動型の DeePHF と自己無撞着型の DeePKS のどちらのワークフローを使うか選びます。科学的背景については、リンク先の手法論文を参照してください。
  2. README に従って Python 環境を準備します。DeePKS-kit をインストールする前に、PyTorch と PySCF を別々にインストールしてください。これらの要件は自動ではインストールされません。
  3. README に記載されたリポジトリのインストール手順に従い、その後、リンク先の水分子1個の例を初期評価ケースとして確認します。新しい系にも適用できると決めつけないでください。
  4. 水クラスターの学習では、README がリンクしている args.yaml のパラメーター案内を確認します。Slurm を使わずにローカルで実行する場合は、リンク先の shell.yaml 設定も確認してください。
  5. ワークフローに応じて、文書に記載された train、test、scf、stats、または iterate 操作を選びます。選択したデータで得られた統計情報を評価してください。出典の抜粋では、記載された例以外での性能は立証されていません。

関連リソース

ANI-1

データセット

ANI-1 は、計算された非平衡分子配座を提供し、有機分子の座標とエネルギーを含む HDF5 ファイルにアクセスするための Python リーダーを備えています。

オープンソースPython

量子化学

DeePTB

モデル

DeePTB は、深層学習による電子構造モデル向けの Python パッケージです。環境依存のタイトバインディングモデルと、等変なハミルトニアン、密度行列、重なり行列の表現を組み合わせています。

オープンソースPython

量子化学 · 材料探索

DimeNet

モデル

DimeNetは、分子グラフ上の方向性メッセージパッシングに用いるDimeNetおよびDimeNet++の参照実装を提供し、学習ノートブック、テストセット予測ワークフロー、事前学習済みモデルを含みます。

Python

分子特性予測 · 量子化学

PhysNet

モデル

PhysNetは、分子のエネルギー、力、双極子モーメント、部分電荷を予測するニューラルネットワークのTensorFlow実装です。設定可能なトレーニングワークフローとサンプルデータセットを備えています。

オープンソースPython

分子特性予測 · 量子化学

QCArchiveは、データベースを基盤とするサーバー、Pythonクライアント、および同一リポジトリで保守される計算ワーカーを通じて、量子化学計算の実行、保存、共有を支援します。

オープンソースPython

量子化学 · 科学データ

QML

オープンソース

QML は、Fortran による表現、カーネル、ソルバーモジュールを備えた、アーカイブ済みの量子機械学習向け Python ツールキットです。以降の開発は qmllib に移行しています。

オープンソースPython

分子特性予測 · 量子化学