3/8 誤字修正、ツイッターリンク追記
3/10 誤字修正
最近のDNAシーケンシング技術の進歩により、completeシーケンシングされたゲノムの数は急速に増加している。複数のゲノムにコードされているオルソログ遺伝子を正確に推論することが、これらのデータセットに基づいたさまざまな解析の鍵となる(Altenhoff and Dessimoz、2012)。例えば、比較ゲノミクス、ゲノムアノテーション、ゲノムの系統、およびゲノムデータベースの開発はすべて、信頼できるオロソログ推論に依存している。 InParanoid(Sonnhammer andÖstlund、2015)およびその拡張MultiParanoid(Alexeyenko et al。、2006)、OrthoMCL (Li、2003)、Hieranoid (Kaduk and Sonnhammer, 2017)、OMA (Train et al、2017)、Proteinortho (Lechner et al、2011)、OrthoFinder (Emms and Kelly, 2015)、PANTHER (Mi et al、2017)など、オロソログ推論に利用できるツールは多数ある。 InParanoidは最も古く最も人気のあるツールの1つで、specificityとrecall 間で最良のトレードオフを持っている(Altenhoff et al、2016)。ここでは、SonicParanoidを紹介する。SonicParanoidは、高速で正確で使いやすい多種のオルソログ推論のためのツールである。
SonicParanoidはInParanoidのグラフベースのアルゴリズム(Remm et al、2001)で報告されている、正確さのために使用されている概念を借用している(Altenhoff et al、2016; Chen et al。、2007)。プロセス全体をスピードアップし、自動化する(論文補足図S1)。計算時間を短縮するために、セカンドパスアライメントおよびブートストラップテストはスキップされ、従来のBLASTの代わりにMMseqs2(Steinegger andSöding、2017)が使用される(Altschul et al。、1997)。さらに、SonicParanoidは、シーケンス長の違いを考慮に入れた新しいスコア関数と設定可能なしきい値を採用している(補足資料と補足図S2とS3)。オリジナルのInParanoidアルゴリズムとのもう1つの違いは、オルソログの重複グループがクラスタ化されている点である。
Remm et al(2001)では、グループは分類されたオルソログの信頼スコアの比較に基づいてマージされるか、削除される。これとは対照的に、SonicParanoidはグループを数値セットの要素として扱うため、アルゴリズムは高速になるが、精度の点でもほとんど違いはない(補足図S4)。最後に、複数種のオルソログ推論ステップは完全に自動化されているため、ユーザーはMultiParanoidで必要とされる面倒でエラーが発生しやすいオルソログテーブルの収集と構成ファイルの作成を避けることができる。詳細は補足資料に記載されている。
Accuracy of SonicParanoid and other 13 orthology inference tools. 論文より転載
岩崎さんの発表(ゲノム微生物年会2019 3/7 招待講演より)
HP
http://iwasakilab.bs.s.u-tokyo.ac.jp/sonicparanoid/
ラボHP
http://iwasakilab.bs.s.u-tokyo.ac.jp/eindex.html
Our #paper has been published online. #SonicParanoid:
— Salvatore Cosentino (@punto_c) August 1, 2018
fast, accurate and easy #orthology inference. https://t.co/HlLN8LaFrV. Congratulations @iwasakiw. https://t.co/5ysAOcAYq5
論文「SonicParanoid: 高速、正確、簡単なオルソログ推定」が出版になりました。https://t.co/xHd4iMrIvh https://t.co/dARxKORy96
— Wataru IWASAKI (@iwasakiw) August 1, 2018
インストール
mac os10.14のPython 3.6.8環境でテストした(* macの推奨OSバージョンは10.13)。
依存
SonicParanoid only requires the Python programming language and the MMseqs2 alignment tool, to be installed in your laptop/server in order to work.
本体 Bitbucket
pip install sonicparanoid
> sonicparanoid -h
$ sonicparanoid -h
usage: sonicparanoid -i <INPUT_DIRECTORY> -o <OUTPUT_DIRECTORY>[options]
SonicParanoid 1.0
optional arguments:
-h, --help show this help message and exit
-i INPUT_DIRECTORY, --input-directory INPUT_DIRECTORY
Directory containing the proteomes (in FASTA format)
of the species to be analyzed.
-o OUTPUT_DIRECTORY, --output-directory OUTPUT_DIRECTORY
The directory in which the results will be stored.
-m {fast,default,sensitive,most-sensitive}, --mode {fast,default,sensitive,most-sensitive}
SonicParanoid execution mode. The default mode is
suitable for most studies. Use sensitive or most-
sensitive if the input proteomes are not closely
related.
-p PROJECT_ID, --project-id PROJECT_ID
Name for the project reflecting the run. If not
specified it will be automatically generated using the
current date and time.
-sh SHARED_DIRECTORY, --shared-directory SHARED_DIRECTORY
The directory in which the alignment files are stored.
If not specified it will be created inside the main
output directory.
-db MMSEQS_DBS, --mmseqs-dbs MMSEQS_DBS
The directory in which the database files for MMseqs2
will be stored. If not specified it will be created
inside the main output directory.
-t THREADS, --threads THREADS
Number of parallel 1-CPU jobs to be used. Default=4
-se SENSITIVITY, --sensitivity SENSITIVITY
Sensitivity for MMseqs2. This will overwrite the
--mode option.
-noidx, --no-indexing
Avoid the creation of indexes for MMseqs2 databases.
IMPORTANT: while this saves starting storage space it
makes MMseqs2 slightly slower. The results might also
be sligthy different.
-ot, --overwrite-tables
This will force the re-computation of the ortholog
tables. Only missing alignment files will be re-
computed.
-ow, --overwrite Overwrite previous runs and execute it again. This can
be useful to update a subset of the computed tables.
-ml MAX_LEN_DIFF, --max-len-diff MAX_LEN_DIFF
Maximum allowed length-difference-ratio between main
orthologs and canditate inparalogs. Example: 0.5 means
one of the two sequences could be two times longer
than the other 0 means no length difference allowed; 1
means any length difference allowed. Default=0.5
-mgs MAX_GENE_PER_SP, --max-gene-per-sp MAX_GENE_PER_SP
Limits the maximum number of genes per species in the
multi-species output table. This option reduces the
verbosity of the multi-species output file when
comparing a high number of species (especially
eukaryotes). Default=10
-sm, --skip-multi-species
Skip the creation of multi-species ortholog groups.
-op, --output-pairs Output a text file with all the orthologous relations.
-qfo11, --qfo-2011 Output a text file with all the orthologous relations
formatted to be uploaded to the QfO benchmark service.
NOTE: implies --output-pairs
-ka, --keep-raw-alignments
Do not delete raw MMseqs2 alignment files. NOTE: this
will triple the space required for storing the
results.
-rs, --remove-old-species
Remove alignments and pairwise ortholog tables related
to species used in a previous run. This option should
be used when updating a run in which some input
proteomes were modified or removed.
-un, --update-input-names
Remove alignments and pairwise ortholog tables for an
input proteome used in a previous which file name
conflicts with a newly added species. This option
should be used when updating a run in which some input
proteomes or their file names were modified.
-d, --debug Output debug information.
実行方法
入力のproteome(amino-acids.fasta)が入ったディレクトリを指定して実行する。
sonicparanoid -i input_dir/ -o output/ -t 8 -m default --project-id my_project
- -i Directory containing the proteomes (in FASTA format) of the species to be analyzed
- -t Number of parallel 1-CPU jobs to be used. Default=4
- -o The directory in which the results will be stored
- -m {fast | default | sensitive | most-sensitive} SonicParanoid execution mode. The default mode is suitable for most studies. Use sensitive or most-sensitive if the input proteomes are not closely related
出力
結果は、output/run/my_project/にある。
入力した proteome配列間でシェアされているオロソログはmy_project/ortholog_groups/にある。
- ortholog_groups.tsv Tab-separated table with the ortholog groups
- flat.ortholog_groups.tsv Simpler table with only the gene names for each group
- not_assigned_genes.ortholog_groups.tsv List of genes that could not be classified as orthologs
さらにそれぞれのproteomeペア間のPairwise ortholog tablesも出力される。
詳細はHPのoutput(リンク先下の方"Output")の説明を読んで下さい。
引用
SonicParanoid: fast, accurate and easy orthology inference
Salvatore Cosentino, Wataru Iwasaki
Bioinformatics. 2019 Jan 1; 35(1): 149–151
関連