概要
ChemBERTa は、化学 SMILES 文字列に適用される BERT 類似モデルのコレクションです。このリポジトリでは、化学モデリング、創薬研究、分子特性予測に用いるモデルとして位置づけられています。文書化されたワークフローは、単体の化学アプリケーションではなく、事前学習とファインチューニングのノートブックを中心に構成されています。README では、ノートブックで使用するアーキテクチャを BERT の変種である RoBERTa とし、学習タスクをマスク言語モデリングと説明しています。
モデルへの入力は SMILES テキストです。付属の例では、チェックポイント seyonec/ChemBERTa-zinc-base-v1 から対応するトークナイザーとモデルを読み込み、マスクされたトークンを予測する Hugging Face fill-mask パイプラインを構築します。README には、ZINC 100k、ZINC 250k、PubChem 100k、PubChem 250k、PubChem 1M、PubChem 10M に関連する事前学習済み重みへのリンクもあります。これらのチェックポイントは、化学言語モデリングや下流タスクへの適応を検討する際の出発点となります。リポジトリのノートブックワークフローには、評価とファインチューニングが含まれます。
分子特性予測には、リンク先の DeepChem 転移学習チュートリアルが実践的な入門資料となり、ChemBERTa および ChemBERTa-2 の論文が研究上の参考資料となります。マスクトークン予測と、適切な下流ワークフローを必要とするタスク固有の分子特性出力は区別する必要があります。README にはノートブックの説明に加えて、ロードマップやチェックリストの記述もあり、その中には進行中とされる作業が含まれています。これらの記述から、提案されているすべての実装や可視化コンポーネントが利用可能であるとは確認できません。また、出典の抜粋からは、現在の依存関係の互換性や予測性能も確認できません。
主な機能
- SMILES 文字列とマスク言語モデリングの学習目標を用いる、RoBERTa ベースの化学言語モデリング。
- README に記載された、規模が 100k から 10M までの 6 種類の ZINC および PubChem データセット部分集合に対応する事前学習済み重みへのリンク。
- ChemBERTa モデルの事前学習、ファインチューニング、評価のワークフローを説明するノートブック。
- `seyonec/ChemBERTa-zinc-base-v1` を使用してトークナイザーとモデルを読み込み、Hugging Face `fill-mask` パイプラインと組み合わせる例。
- ChemBERTa transformers による転移学習を扱う、リンク先の DeepChem チュートリアル。
用途
- 評価案:文書化されたトークナイザーとチェックポイントの組み合わせを用いて、代表的な SMILES 入力に対するマスクトークン予測を検討する。
- 評価案:リンク先の転移学習ワークフローを通じて、分子特性データセットに対する ChemBERTa のファインチューニングを評価する。
- 評価案:一貫した下流評価プロトコルのもとで、記載された ZINC および PubChem の事前学習済みチェックポイントを比較する。
使い方
- リポジトリの READMEを読み、文書化されたノートブックワークフローとロードマップ項目を区別してください。目的がマスク言語モデリングか、下流タスクの特性予測かを決めます。
- リンク先の学習ワークフローについては、DeepChem 転移学習チュートリアルを参照してください。環境を準備する前に実際の要件を確認してください。出典の抜粋にはインストール手順が記載されていません。
- リンク先の Hugging Face モデルを確認し、評価に適したチェックポイントを選択してください。チェックポイント固有の文書や条件は、リポジトリのコードライセンスとは別に確認してください。
- マスクトークンの処理では、
seyonec/ChemBERTa-zinc-base-v1に対応するモデルとトークナイザーの組み合わせ、およびfill-maskパイプラインの例について、README の説明に従ってください。特性予測の出力が得られると想定せず、代表的な SMILES を用いて動作を評価してください。 - 下流実験では、チュートリアルを参考にファインチューニングと評価を進めてください。README が求めている研究参考資料については、ChemBERTa-2 論文を参照してください。