本文へスキップ

ChemML

Mojtaba Haghighatlari; Johannes Hachmann / University at Buffalo - The State University of New York (UB)

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

掲載情報の更新 ·

概要

ChemMLは、化学・材料研究向けの機械学習およびインフォマティクスのツールキットです。単一の事前学習済み予測器を提供するのではなく、分析、データマイニング、モデリングを支援します。READMEでは、モジュール型のオブジェクト指向Python設計と、Scikit-learnに似たライブラリ形式が説明されており、研究者が構築するデータワークフローの構成要素として位置づけられています。

入力として想定されているのは化学・材料データです。出典の抜粋には、対応する分子表現、ファイル形式、目的特性のスキーマ、具体的な出力構造は記載されていません。グラフ畳み込みニューラルネットワーク、説明可能なAI、自動モデル最適化、AutoML、Jupyterのグラフィカルインターフェース、およびMagpie記述子ライブラリの移植版に関する取り組みが挙げられています。これらは機能領域を示すものですが、詳細なAPIの動作や実証済みの予測精度を示すものではありません。

ChemMLは、科学計算向けPythonライブラリと分野固有のライブラリを利用します。パッケージのメタデータには、RDKit、mordred、TensorFlow、scikit-learn、SHAP、LIMEなどの依存関係が記載されています。READMEはAnaconda環境を推奨し、OSおよびGPU構成に応じてPyTorchをインストールするよう別途案内しています。また、JupyterラッパーとAutoMLスクリーニングのオプション依存関係も記載されているため、必要な設定は想定するワークフローによって異なります。

リポジトリのコードにはBSD 3-Clauseライセンスが適用されています。出典の抜粋からは、同梱データセットやモデルの重みに別個の利用条件があるかどうかは確認できず、ベンチマーク結果や検証済みのプラットフォーム互換性も示されていません。ChemMLを評価する研究者は、リンク先のドキュメントでタスク固有の入出力を確認し、選択したワークフローを代表性のあるデータで評価してください。

主な機能

  • 化学・材料データの分析、マイニング、モデリングを行うPythonプログラムスイート。
  • モジュール型のオブジェクト指向ライブラリ設計で、インターフェース形式はScikit-learnに似ていると説明されています。
  • READMEのコントリビューター紹介で、グラフ畳み込みニューラルネットワークと説明可能なAIの機能が挙げられています。
  • AutoMLスクリーニングと自動モデル最適化に対応。xgboostとlightgbmは、ユーザーが別途インストールするオプション依存関係として記載されています。
  • Jupyter GUIとラッパーに対応。python-graphvizはラッパーのオプション依存関係として記載されています。
  • Magpie記述子ライブラリの移植版を備え、関連する検索データはパッケージデータの設定に含まれています。

用途

  • 評価案:対応する表現形式と目的変数の扱いを確認したうえで、代表性のある化学データセットを用いて、分子特性予測のツールキットとしてChemMLを評価する。
  • 評価案:文書に記載された記述子の入力を確認し、材料データのモデリングワークフローでMagpieベースの記述子を検討する。
  • 評価案:化学モデリングタスクでAutoMLスクリーニングまたは自動モデル最適化を検討し、事前に定めた検証プロトコルで候補モデルを比較する。
  • 評価案:モデルの解釈が重要な研究ワークフローにおいて、グラフ畳み込みニューラルネットワークと説明可能性の機能を調べる。

使い方

  1. ChemMLのドキュメントから始め、該当するワークフローを特定し、想定される入力、出力、APIを確認してください。出典の抜粋にはこれらの詳細は定義されていません。
  2. リビジョンを選択する前に、リリース履歴と変更履歴を確認してください。ここでは特定のリリースは確定されていません。
  3. リポジトリのREADMEに記載された環境およびインストールの案内に従ってください。READMEではAnacondaを推奨し、Open Babelのセットアップ方法も案内しています。OSやGPUに応じた選択については、リンク先のPyTorchインストールガイドを参照してください。
  4. 選択したワークフローに必要なオプション依存関係を確認してください。READMEでは、Jupyterラッパー用にpython-graphviz、AutoMLスクリーニング用にxgboostまたはlightgbmが挙げられています。これらは主要パッケージの依存関係とは別です。
  5. 評価案として、代表性のある小規模なデータセットで文書化されたワークフローを実行し、出力を確認し、環境と検証方法を記録してください。リポジトリコードのライセンスは、データセットやモデルに関する条件とは分けて確認してください。

関連リソース

DScribe

オープンソース

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

オープンソースPythonC++

分子特性予測 · 材料探索

MEGNet

モデル

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

オープンソースPython

分子特性予測 · 材料探索

ALIGNN

モデル

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

オープンソースPython

材料探索

Allegro

モデル

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

オープンソースPython

計算化学 · 材料探索

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

計算化学 · 材料探索

CGCNN

モデル

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

オープンソースPython

材料探索

関連ガイド