ホームDeep Learningbytedance/jaqmc
// archived 2026-04-27
bytedance

jaqmc

AI#JAX#Quantum Monte Carlo#Deep Learning#Physics#Scientific Computing
GitHub で見る →
108

// 概要

JaQMC は、ニューラルネットワークを用いた量子モンテカルロシミュレーションを実行するために設計された、モジュール式の JAX ベースのフレームワークです。深層ニューラルネットワークを変分波動関数として利用し、従来の基底関数系に依存することなく電子の Schrödinger 方程式を解きます。本プロジェクトは、高度に構成可能で拡張性の高いアーキテクチャを通じて、分子、固体、分数量子ホール状態を含む多様な量子システムをサポートします。

// 技術解説

JaQMC は ニューラルネットワーク 量子モンテカルロ シミュレーション のための JAX ベース の フレームワーク であり、 深層ニューラルネットワーク を 変分波動関数 として用いることで 電子 シュレーディンガー方程式 の 解法 を 提供 します。 JAX を 活用 することで、 この プロジェクト は 自動微分、 JIT コンパイル、 および マルチデバイス 並列処理 を 実現 し、 従来 の 基底関数系 の 制限 を 受ける ことなく 高精度 な 計算 を 可能 に します。 モジュール式 の アーキテクチャ により、 研究者 は 波動関数、 サンプラー、 オプティマイザー を 独立 して 入れ替える ことができ、 分子、 固体、 分数量子ホール状態 を 含む 多様 な 量子系 を モデリング するための 柔軟 な ツール となっています。

// 主要ハイライト

01
モジュール式 の 設計 により、 コードベース 全体 を 書き直す ことなく、 波動関数、 サンプラー、 オプティマイザー といった コンポーネント を ユーザー が 独立 して 入れ替える ことが 可能 です。
02
JAX 上 に 構築 されており、 自動微分、 JIT コンパイル、 ネイティブ な マルチデバイス 並列処理 といった 高性能 な 機能 を 提供 します。
03
原子、 分子、 固体材料、 分数量子ホール (FQHE) 系 を 含む 幅広い 量子系 を サポート します。
04
FermiNet や PsiFormer といった 高度 な アーキテクチャ が 実装 済み であり、 KFAC、 SR、 Adam といった 強力 な オプティマイザー も 含まれています。
05
シミュレーション の 実行 や ハイパーパラメータ の 調整 を 行う ための コマンドラインインターフェース を 提供 しつつ、 カスタムワークフロー の ための 完全 な プログラム制御 も 維持 しています。

// ユースケース

01
原子、分子、および固体システムにおける電子の Schrödinger 方程式の求解
02
量子シミュレーションのための FermiNet や PsiFormer といった高度なニューラルネットワークアーキテクチャの実装
03
JAX の自動微分、JIT コンパイル、およびマルチデバイス並列量子コンピューティングの活用

// クイックスタート

開始 するには、 リポジトリ を クローン し、 提供 されている 設定ファイル を 用いて uv または pip で 依存関係 を インストール します。 インストール 後、 'jaqmc hydrogen-atom train' のように コマンドライン から 直接 シミュレーション を 実行 できます。 ユーザー は CLI を 通じて 設定パラメータ を 渡す ことや、 ドキュメント を 参照 して カスタムワークフロー を 構築 することで、 これらの 実行 を さらに カスタマイズ できます。