概要
RxnMapperは、化学反応表現のためのモデルベースの原子マッピングリソースです。READMEによると、マッピング情報は、大規模な反応データセットで教師なし学習を行ったALBERTモデルによって学習されています。文書で説明されているタスクは、入力された反応内の原子対応関係を確立することであり、反応物から生成物を予測することではありません。そのため、反応がすでにSMILESで表現されている反応データの準備や分析のワークフローに適しています。
Pythonインターフェースは、RXNMapper とその get_attention_guided_atom_maps メソッドを介して、反応SMILESのリストを受け取ります。結果には、原子マッピング済み反応を示す mapped_rxn と、数値の confidence 値が含まれます。例には反応物側の混合物と生成物構造が示され、反応全体にわたって原子識別子が割り当てられています。別の BatchedMapper インターフェースはバッチ処理を自動で行い、マッピング済み文字列またはマッピング情報を含む辞書を返します。
基本的なマッピング機能は、有効な反応SMILESを対象とすると説明されています。バッチ処理についてREADMEには、例が無効な場合に例外を発生させず、>> または空の辞書を返すエラー処理が記載されています。そのため、後続処理では、これらのフォールバック出力と利用可能なマッピングを区別する必要があります。提示された抜粋からは、信頼度の較正、特定の化学領域における精度、処理スループットは確認できません。リポジトリには論文、ブラウザデモ、データの所在へのリンクもあります。コードのライセンスを、別途ホストされているデータ、モデルの重み、サービスの利用条件を示すものとして扱うべきではありません。
主な機能
- 化学反応で教師なし学習を行ったALBERTモデルに基づく、注意機構を用いた原子マッピング。
- 反応SMILESのリストを受け取り、`mapped_rxn` と `confidence` フィールドを返すPythonマッピングインターフェース。
- `BatchedMapper` によるバッチ処理の自動化と、`batch_size` の設定。
- マッピング済み反応文字列とマッピング情報を含む辞書をそれぞれ返す、別々のバッチ処理メソッド。
- 無効な反応に対して例外を発生させず、`>>` または空の辞書を返すと文書に記載されたバッチエラー処理。
用途
- 評価案:反応物と生成物の原子対応関係を必要とする後続のケモインフォマティクス解析に向けて、原子マッピング済み反応レコードを準備する。
- 評価案:反応コレクションをバッチ処理し、後続の分析を行う前に、マッピングに失敗した出力と利用可能な出力を分ける。
- 評価案:スコアが較正済みであると仮定せず、返されたマッピングと信頼度値を、対象化学領域の専門家が確認した反応と比較する。
使い方
- 公式READMEを読み、入力形式を確認して、基本インターフェースとバッチ処理インターフェースのどちらを使うか選びます。デモからも別の方法でこのリソースを試せます。
- 適切なPython環境で、READMEに記載されたpipまたはソースからのインストール手順に従います。RDKitがすでに利用できる場合は、そのRDKit追加項目を省略できます。提示された抜粋には、互換性の範囲は示されていません。
- 指定された反応物および生成物の構造を含む、有効な反応SMILESの小さなリストを用意します。まずは、期待される原子対応関係を独立して確認できるレコードから始めます。
RXNMapperとget_attention_guided_atom_mapsを使用し、返されたmapped_rxnとconfidenceフィールドを確認します。バッチ処理を自動化する場合はBatchedMapperを選び、希望する出力形式に応じてmap_reactionsまたはmap_reactions_with_infoを使用します。- 後続処理で使用する前に、バッチ結果に
>>または空の辞書が含まれていないか確認します。評価案として、マッピングをキュレーション済みの例と比較します。科学的な背景については、リンク先の論文を参照してください。