AI+サイエンス: PaddlePaddle をベースにした AlphaFold2 でタンパク質構造予測を実現

AI+サイエンス: PaddlePaddle をベースにした AlphaFold2 でタンパク質構造予測を実現

1958 年、FHC クリックは、生物学における重要なセントラルドグマである DNA -> RNA -> タンパク質を提唱しました。セントラルドグマでは、DNA は RNA に転写され、次に RNA がアミノ酸に翻訳され、最終的に結合してタンパク質が形成されるとされています。

セントラルドグマから、DNA が工業生産の設計図に例えられるとすれば、タンパク質はこの設計図を実現するためのツールのようなものだということが容易にわかります。したがって、タンパク質はすべての生命活動の基礎であり、遺伝、発達、生殖など、ほぼすべての生物学的プロセスに関与しています。タンパク質を深く研究することで、生物の構成と動作の変化をより深いレベルで解釈できるようになり、生命の動作と発達のメカニズムを完全に解明し、生物科学、医薬品開発、合成生物学、酵素科学などの分野の発展を刺激することができます。

生物体内のさまざまなタンパク質の機能とメカニズムを探ることは、現在のタンパク質研究の主な内容であり、ポストゲノム時代の生命科学分野における主要な研究ホットスポットの1つでもあります。タンパク質の機能はその構造に大きく依存するため、タンパク質の三次元構造を解読する方法が科学者の研究の焦点となっている。

AlphaFold2の誕生

近年、人工知能技術の発展に伴い、ディープラーニングなどの関連技術がタンパク質構造予測の分野にも応用されています。 2018年のCASP 13(2年ごとに開催される国際的に有名なタンパク質構造予測コンテスト)では、Google DeepMindチームのAlphaFoldが70ポイント以上を獲得し、多くの研究チームを破って手動グループで1位を獲得し、この分野で画期的な出来事となりました。 2020年のCASP 14では、Google DeepMindチームのAlphaFold2が驚異の92.4点を獲得して1位を獲得しました[1]。この結果は、「生物学者を50年間悩ませてきた」問題を基本的に解決し、大きな進歩を遂げたとも考えられています。 92.4ポイントは、競争のターゲットタンパク質の予測精度GDT_TSスコアが92.4に達したことを意味します。このスコアは90ポイントを超えており、基本的に実験方法を置き換えることができると一般的に考えられています。これは、AlphaFold2によって予測された結果が、実験で得られたタンパク質構造と基本的に一致していることも意味します。

2021年7月15日、DeepMindチームは、トップクラスの国際学術誌「ネイチャー」に論文を発表し、AlphaFold2の設計思想を詳しく説明し、実行可能なJAXベースのモデルとコードを提供しました[2]。 JAX の聴衆は AI 科学計算の専門研究者である傾向があり、PaddleHelix コミュニティにはタンパク質構造予測に関連するオープン ソース プロジェクトがまだないことを考慮して、Baidu PaddleHelix 生物計算チームは、PaddleHelix ディープラーニング フレームワークに基づいて AlphaFold2 モデルを再現し、ほとんどの PaddleHelix 開発者が利用できるようにして、誰もがすぐにタンパク質構造予測を開始できるようにしました。

https://github.com/PaddlePaddle/PaddleHelix/tree/dev/apps/paddlefold

AlphaFold2アルゴリズムの設計アイデア

AlphaFold2 は、独自のニューラル ネットワークとトレーニング プロセス設計を通じて、初めてタンパク質構造をエンドツーエンドで学習します。アルゴリズム フレームワーク全体は、タンパク質の多重配列アライメント (MSA) とアミノ酸ペア (ペアワイズ) 表現を協調的に学習することにより、タンパク質配列の進化情報とタンパク質構造の物理的および幾何学的制約情報をディープラーニング ネットワークに統合します。 AlphaFold2 アルゴリズムの設計アイデアを、データ前処理、Evoformer、構造モジュールの 3 つのモジュールから分析します。

出典: AlphaFold2 論文

データ処理

AlphaFold2 は、タンパク質構造を予測する際に、アミノ酸配列情報を使用して、タンパク質ライブラリ内の多重配列アライメント (MSA) を検索します。 MSA は、アミノ酸配列内の保存領域 (つまり、変異しにくい領域) を反映できます。これらの保存領域は、タンパク質の構造と密接に関連しています。たとえば、タンパク質の内層に折り畳まれていて、外界と相互作用しにくいため、変異の影響を受けにくくなります。 AlphaFold2 のデータ前処理では、モデル計算量を削減するために、まず MSA 内のシーケンスをクラスタ化し、各カテゴリの中心にあるシーケンスを主な MSA 特徴として採用します。 MSA に加えて、AlphaFold2 のもう 1 つの重要な入力は、アミノ酸のペアワイズ機能です。メインの MSA の補足として、Alphafold2 はクラスター中心以外の領域からシーケンスをランダムにサンプリングし、4 層ネットワークへの追加の MSA 入力としてペアワイズ機能を抽出します。その後、このペアワイズ機能はテンプレートから抽出されたペアワイズ機能に追加され、最終的なペアワイズ機能が得られます。主な MSA 機能とペアワイズ機能は、48 層の Evoformer を通じて表現され、融合されます。

エボフォーマー

Evoformer ネットワークを設計する動機は、Self-Attention メカニズムを使用してタンパク質の三角形の幾何学的制約情報を学習し、MSA 表現によってもたらされる共進化情報とペアワイズ表現の構造的制約情報が相互に作用できるようにすることで、モデルが空間情報と進化情報間の接続を直接推測できるようにすることです。

出典: AlphaFold2 論文

構造モジュール

構造モジュールは、Evoformer によって取得された表現を、タンパク質内の各重原子 (C、N、O、S) の座標にデコードする役割を担います。 AlphaFold2 は、ニューラル ネットワークの予測から原子座標への変換を簡素化するために、タンパク質中の 20 種類のアミノ酸の構造特性を組み合わせ、重原子を異なる二面角によって決まるグループに分割します。このようにして、二面角とアミノ酸の既知の結合長と角度の情報を使用して、指定された開始位置に基づいて原子座標をデコードできます。この構造エンコーディング方式は、座標 (x、y、z) を直接予測する場合と比較して、ニューラル ネットワークの予測空間を大幅に削減し、エンドツーエンドの構造学習を可能にします。

リジンの角度コーディング法の例:青色面(C、Cα、Cβ)が決定された後、青紫色面の予測二面角χ1と既知のCC結合長およびCγ-Cβ-N結合角に基づいて、Cγの空間座標を決定できます。同様の手順を繰り返すことで、Cδ、Cε、Nなどの重原子の座標を取得できます。

PaddlePaddleフレームワークに基づくAlphaFold2(AF2)の使用

AlphaFold2 の完全な推論部分は PaddlePaddle フレームワークに基づいて再現され、現在は PaddleHelix プラットフォームでオープンソースになっています: https://github.com/PaddlePaddle/PaddleHelix/tree/dev/apps/paddlefold

興味のある方はインストールして使用し、それを基に独自のタンパク質構造予測モデルを最適化することができます。

1. インストール

pip 経由でインストール可能な Python 依存関係は requirements.txt で提供されます。さらに、PaddlePaddle フレームワークに基づく AF2 は、conda を通じてのみインストールできる 2 つのツールキット、openmm==7.5.1 と pdbfixer にも依存します。多重配列アライメント MSA を取得するには、kalign、HH-suite、jackhmmer もインストールする必要があります。データをダウンロードするためのスクリプトには aria2c が必要です。

conda 環境をセットアップし、すべての依存関係をインストールできるスクリプト setup_env を提供します。走る:

 sh セットアップ環境
conda activate paddlefold # conda 環境をアクティブ化します

setup_env で環境名や CUDA バージョンを変更することも可能です。

2. 使用方法

PaddlePaddle フレームワークに基づいて AF2 を実行するには、タンパク質配列データベースとモデル パラメータも必要です。 PaddlePaddle フレームワークに基づく AF2 は、AlphaFold2 と同じモデル パラメータを使用します。

スクリプト scripts/download_all_data.sh を使用して、すべてのデータベースとモデル パラメータをダウンロードして設定できます。

  • 走る:
 スクリプト/ download_all_data.sh <DOWNLOAD_DIR>

完全なデータベースがダウンロードされます。完全なデータベースの合計ダウンロード サイズは約 415 GB で、解凍後の合計サイズは 2.2 TB です。

  • 走る:
スクリプト/ download_all_data.sh <DOWNLOAD_DIR> Reduced_dbs

データベースの縮小バージョンがダウンロードされ、reduced_dbs 設定で実行できるようになります。縮小されたデータベースの合計ダウンロード サイズは約 190 GB、解凍された合計ダウンロード サイズは約 530 GB です。

3. 推論のためにPaddlePaddleフレームワークに基づいてAF2を実行する

DeepMind のトレーニング済みパラメータを使用して 1 つ以上のシーケンスに対して推論を実行するには、たとえば次のコマンドを実行します。

 fasta_file = "target.fasta" # ターゲットタンパク質へのパス
model_name = "model_1" # Alphafold モデル名
DATA_DIR = "data" # データベースへのパス
OUTPUT_DIR = "paddlefold_output" # 出力を保存するパス

python3 run_paddlefold .py \
--fasta_paths=${fasta_file} \
--data_dir=${DATA_DIR} \
--small_bfd_database_path=${DATA_DIR}/small_bfd/bfd-first_non_consensus_sequences.fasta \
--uniref90_database_path=${DATA_DIR}/uniref90/uniref90.fasta \
--mgnify_database_path=${DATA_DIR}/mgnify/mgy_clusters_2018_12.fa \
--pdb70_database_path=${DATA_DIR}/pdb70/pdb70 \
--template_mmcif_dir=${DATA_DIR}/pdb_mmcif/mmcif_files \
--obsolete_pdbs_path=${DATA_DIR}/pdb_mmcif/obsolete.dat \
--max_template_date=2020-05-14 \
--model_names=${モデル名} \
--output_dir=${OUTPUT_DIR} \
--preset='reduced_dbs' \
--jackhmmer_binary_path /opt/conda/envs/paddlefold/bin/jackhmmer \
--hhblits_binary_path /opt/conda/envs/paddlefold/bin/hhblits \
--hhsearch_binary_path /opt/conda/envs/paddlefold/bin/hhsearch \
--kalign_binary_path /opt/conda/envs/paddlefold/bin/kalign \
--ランダムシード=0

パラメータの説明を見つけるには、python3 run_paddlefold.py -h を使用できます。

AlphaFold2 と同じ出力が保持され、出力は output_dir のサブフォルダーに保存されます。これらには、計算された MSA、モデルによって予測されたタンパク質構造、OpenMM 最適化後の構造、モデル スコアリング ランキング、生のモデル出力、予測メタデータ、およびモデル実行タイミングが含まれます。 output_dir ディレクトリの構造は次のようになります。

 <ターゲット名>/
機能.pkl
ランク付けされた_ { 0,1,2,3,4 } .pdb
ランキングデバッグ.json
リラックスモデル_ { 1 , 2 , 3 , 4 , 5 } .pdb
結果モデル_ { 1,2,3,4,5 } .pkl
タイミング.json
非リラックスモデル_ { 1,2,3,4,5 } .pdb
msas /
bfd_uniclust_hits .a3m
mgnify_hits .sto
ユニref90_hits .sto

各出力ファイルの内容は次のとおりです。

  • 機能.pkl

モデルが構造を生成するために使用する入力機能の NumPy 配列を含む pickle ファイル。

  • 非緩和モデル_*.pdb

モデルによって出力されたとおりの予測構造を含む PDB 形式のテキスト ファイル。

  • リラックスモデル_*.pdb

OpenMM を呼び出してモデル予測構造の競合を修正し、H 原子の座標位置を追加することで得られた最適化された構造である PDB 形式のテキスト ファイル。

  • ランク付けされた_*.pdb

OpenMM によって取得された最適化された構造をモデルの信頼性に応じて並べ替えた PDB 形式のテキスト ファイル。ここでは、予測された LDDT スコア (pLDDT) が信頼性評価として使用されます。

  • ランキングデバッグ.json

モデルランキングを実行するために使用される pLDDT 値と対応するモデル名を含む JSON 形式のテキスト ファイル。

  • タイミング.json

AlphaFold2 モデルの各部分の実行にかかる時間を含む JSON 形式のテキスト ファイル。

  • msas/

このディレクトリには、さまざまな MSA 検索ツールからの出力ファイルが含まれています。

  • 結果モデル_*.pkl

モデルによって直接生成されたさまざまな NumPy 配列の辞書を含む pickle ファイル。struct モジュールからの出力に加えて、補助出力も含まれます。

最後に、pymol[3]などのツールを使用して、予測構造と実験構造を整列させることができます。入力特徴のサンプリング操作により、PaddlePaddle フレームワークに基づいて再現された AlphaFold2 および JAX バージョンの予測構造は若干異なる場合があり、実験構造に近くなる場合もあれば、若干異なる場合もあることに注意してください。

最近の開発計画

AlphaFold2 は単量体タンパク質に対しては優れたパフォーマンスを発揮しますが、複合体に対する予測精度はまだ向上させる必要があります。この目的のために、DeepMind チームは、複合体向けに再トレーニングされたニューラル ネットワーク モデルである AlphaFold-Multimer モデルを立ち上げ、PaddlePaddle コミュニティの開発者の熱意を結集して AlphaFold-Multimer ベースのモデルを共同で開発および最適化し、それをオープン ソースとして PaddlePaddle プラットフォームに提供することで、バイオインフォマティクス分野のより幅広い研究者が、PaddlePaddle フレームワークに基づく完全に自律的で制御可能なタンパク質構造予測モデルを使用できるようにしたいと考えています。

この記事はPaddlePaddleからのものです


<<:  人工知能プロジェクトのための 10 のヒント - ガイド

>>:  興味深い微表情とAI技術

ブログ    
ブログ    
ブログ    

推薦する

AIと機械学習がDevOpsをどう変えるのか

人工知能と機械学習が DevOps に新たな自動化機能をもたらすにつれて、これらのテクノロジーが組織...

レポート:人材市場の給与は2018年第4四半期に回復し、AI職の平均月給は3万人民元に達した。

最近、インターネット採用プラットフォームBOSS Zhipinは「2018年第4四半期人材誘致レポー...

快手コンテンツコールドスタートレコメンデーションモデルの実践

1. Kuaishou のコンテンツコールドスタートはどのような問題を解決しますか?まず、Kuais...

AI に物語を伝える: シーンを想像するように教えるにはどうすればよいでしょうか?

[[282830]]視覚的な想像力は人間が生まれながらに持っているものです。AI は同様の能力を持...

UiPath Carnivalは職場の自動化におけるイノベーションを探るために近日開催されます

ロボティック・プロセス・オートメーション(RPA)エンタープライズソフトウェア企業のUiPathは最...

2024年に注目すべき5つの持続可能な技術

今年が進むにつれて、持続可能な開発をめぐる話題はますます高まるばかりであり、気候変動が近づいていると...

「公平性」、人工知能はこれを達成できるのか?

2020年の東京オリンピックはこれまで以上に盛り上がっています。 7月28日に行われた男子体操個人...

GoogleはコードネームGenesisと呼ばれるAIニュースライティング製品をテストしていると報じられている。

ニューヨーク・タイムズ紙は7月20日、3つの情報源を引用して、グーグルがAI技術を使ってニュース記事...

現時点で最も包括的なPythonの採用方針

Pythonは、コンパイル速度が超高速なオブジェクト指向プログラミング言語です。誕生から25年が経ち...

人工知能がITサービス管理を変える3つの方法

よりスマートで高速なサービスを求めて、IT 部門は社内のサービス提供を改善するための新しい方法とプロ...

百度のDuerOS会話型AIオペレーティングシステムと複数のスマート製品が上海のCESアジアで発表されました

2018CES Asiaが今朝上海で開幕しました。アジアの消費者向けテクノロジー業界の年次イベントで...

末期の病気を患う58歳の女性が、メタバースで死に際の願いを叶えた。VRグランドキャニオンツアーだ。

慢性閉塞性肺疾患を患っている女性は長い間病気で寝たきりの状態です。しかし、彼女の最後の願いは、アメリ...