タンパク質の機能アノテーションは生物科学における長年の課題の一つであり、様々な計算手法が開発されてきた。しかし、既存の方法では、GOファミリーの数が多く、アノテーションされたタンパク質が少ないという深刻なロングテール問題に悩まされている。そこで、配列に基づくマルチスケールタンパク質表現、事前学習によるデュアルパスタンパク質エンコーディング、長期短期記憶に基づくデコーディングによる機能アノテーションを可能にする、AnnoPROと名付けられた革新的な戦略を構築した。様々なベンチマークに基づくケーススタディを実施し、AnnoPROが利用可能な手法の中で優れた性能を持つことを確認した。ソースコードとモデルは https://github.com/idrblab/AnnoPRO と https://zenodo.org/records/10012272にあり、自由に利用できる。
手順
step 1: 入力タンパク質のシーケンス
step 2: Profeatによる特徴抽出
step 3: 特徴の対距離計算 --> cosine, correlation, jaccard
Step4: 特徴の2次元埋め込み --> umap, tsne, mds
step5: 特徴の格子配置 --> grid, scatter
Step6: 変換 --> minmax, standard
インストール
ubuntu22でcondaで環境を作ってテストした(RTX3090使用)。
git clone https://github.com/idrblab/AnnoPRO.git
cd AnnoPRO
conda create -n annopro python=3.8
conda activate annopro
pip install .
> annopro -h
usage: annopro [-h] [--fasta_file FASTA_FILE] [--output OUTPUT] [--used_gpu USED_GPU] [--disable_diamond] [--overwrite] [--version]
Arguments for AnnoPRO
optional arguments:
-h, --help show this help message and exit
--fasta_file FASTA_FILE, -i FASTA_FILE
The protein sequences file
--output OUTPUT, -o OUTPUT
Output directory
--used_gpu USED_GPU GPU device selected, default is CPU
--disable_diamond Disable blast with diamond
--overwrite Overwrite existed output
--version Show version
実行方法
タンパク質のfastaファイルを指定する。配列名に特殊文字が含まれているとエラーを起こす可能性があるので注意する。
annopro -i test_proteins.fasta -o output
初回はモデルダウンロードに時間がかかる。試した時は、1度目は途中で止まり、2度目は1時間ほどでダウンロードできた。
出力例
result.csvが最終出力となる。Gene OntologyのBP、MF、CCのカテゴリに分けて3つのファイルとして出力されている。
> csvlook cc_result.csv |head -n 20
1列目:タンパク質名、2列目:GO term、3列目:スコア
レポジトリのexample下にも出力ファイル例がある。
https://github.com/idrblab/AnnoPRO/tree/main/example
引用
AnnoPRO: a strategy for protein function annotation based on multi-scale protein representation and a hybrid deep learning of dual-path encoding
Lingyan Zheng, Shuiyang Shi, Mingkun Lu, Pan Fang, Ziqi Pan, Hongning Zhang, Zhimeng Zhou, Hanyu Zhang, Minjie Mou, Shijie Huang, Lin Tao, Weiqi Xia, Honglin Li, Zhenyu Zeng, Shun Zhang, Yuzong Chen, Zhaorong Li & Feng Zhu
Genome Biology volume 25, Article number: 41 (2024)
関連
・https://kazumaxneo.hatenablog.com/entry/2024/04/15/004855