2019 7/5 dockerタグ修正
2019 9/25 インストール追記
2022/09/09 追記
抗生物質耐性は緊急かつ高まる世界的な公衆衛生の脅威である。抗生物質耐性による死亡者数は、2050年までに年間1000万人を超え、世界中で約100兆米ドルかかると推定されている[ref.1-3]。抗生物質耐性は、通常、バクテリアが抗生物質への曝露から生き残るときに起こる。このプロセスは、治療が非常に難しい「スーパーバグ」の出現を可能にしている。例として、複数の感染症に関連する極めて薬剤耐性の高い細菌であるメチシリン耐性黄色ブドウ球菌(MRSA)[ref.4]、リファンピシン、フルオロキノロン、およびイソニアジドに耐性のある多剤耐性(MDR)結核菌がある[ref.5]。また、colistin-carbapenem耐性E.coliはmcr-1およびblaNDM-1抗生物質耐性遺伝子(ARG)の獲得により、ラストリゾート薬に対する耐性を獲得した[ref.6-7]。
ハイスループットDNAシークエンシング技術の出現により、今や、広範囲の環境区画から得られたDNA抽出物からARGを含むDNA全体をプロファイルするための強力なツールが提供されるようになった。例えば、ARGは現在、家畜の糞尿、堆肥、廃水処理場、土壌、水、その他の影響を受ける環境[ref.8, 13]、および人間のマイクロバイオーム内でこの種のメタゲノムアプローチを用いてプロファイリングされている[ref.14、15]。 。そのようなサンプルからのARGの同定は現在、利用可能なオンラインデータベースに対するメタゲノムDNA配列の比較に基づいている。そのような比較は、BLAST [ref.16]、Bowtie [ref.17]、またはDIAMOND [ref.18]などのプログラムを使用して、アセンブリられたコンティグからオープンリーディングフレーム(全長遺伝子配列)を予測し、最適なデータベースにアライメントさせることによって行われる。配列類似性カットオフおよび時にはアラインメント長の要件を使用して、存在するARGのカテゴリを予測または割り当てる[ref.19–21]。
既存のバイオインフォマティクスツールは、ゲノムまたはメタゲノムシーケンシングライブラリー内から既知のARG配列を検出することに焦点を当てているため、特定のARGに偏っている[ref.22]。例えば、ResFinder [ref.20]とSEAR [ref.23]は特にプラスミド媒介ARGを予測し、Mykrobe[ref.24]はカルバペネム、メチシリンに対する耐性をコードするARG、そしてベータラクタム系抗生物質の同定に限定されている。これらのツールのほとんどは、シーケンスが本当にARGであるかどうかを予測するための「ベストヒット」アプローチとともに既存の微生物耐性データベースを使用する。一般に、予測は高い同一性のカットオフに制限されており、ResFinder [ref.20]やARGs-OAP [ef.8、19、20]などの多くのプログラムでは、80%を超える同一性で最良のヒットが必要である。いくつかの研究では、同一性カットオフはさらに高く、いくつかのレジスタソームを通してARGの構造と多様性を決定するためには90%の同一性カットオフが使われた[ref.25]。
ベストヒットアプローチでは、偽陽性率が低い、すなわち非ARGがARGとして予測されることはほとんどない[ref.9]が、偽陰性率は非常に高く、実際のARGの多くは非ARGとして予測される[ref.19 、22]。論文図1は、包括的抗生物質耐性データベース(CARD)[ref.27]および抗生物質耐性遺伝子データベース(ARDB)[ref.28]に対するユニバーサルタンパク質リソース(UNIPROT)データベース[ref.26]からの手動キュレーション可能性のあるARGの分布を示している。全ての遺伝子比較は、20-60% の範囲の配列同一性および50を超えるビットスコアを有する有意なe値<1e - 20を示し、これは統計的に有意であると考えられる[ref.29]。従って、同一性の高いカットオフは明らかに、実際にはARGである相当数の遺伝子を除去するだろう。例えば、ドキソルビシンおよびミトキサントロンに対する耐性を付与するエントリーO07550(Yhel)は、CARDデータベースからの最良のヒットに対して32.47%の同一性を有し、6e-77の有意なe値を有する。バンコマイシンに対する耐性を付与する遺伝子POCOZ1(VraR)は、23.93%の同一性およびCARDデータベースからの最良のヒットに対するe値9e-13を有する。したがって、許容できない割合の偽陰性を避けるために、配列類似性に対するより緩やかな制約を考慮する必要がある。一方、ショートメタゲノムシーケンシングリード(例えば、約25 aaまたは100 bp)については、高い偽陽性率を回避するために、約 80%のより厳密な同一性制約が推奨される[ref. 20, 29]。原則として、ベストヒットアプローチは既知の高度に保存されたARGのカテゴリの検出にはうまく機能するが、新規のARGや既知のARGと配列同一性が低いものの検出に失敗する可能性がある[ref.19、30]。
現在のベストヒット方法論の限界に対処するために、最良のヒットのみではなく、ARGデータベース内の配列の類似性分布を考慮して、ディープラーニングアプローチを使用してARGを予測した。ディープラーニングは、画像処理[ref.31]、生物医学的シグナル伝達[ref.32]、音声認識[ref.33]、およびヒトの転写因子の結合部位同定[ref.34、35]などのゲノム関連の問題を含む多くのアプリケーションにとって、これまでで最も強力な機械学習アプローチである。。特にDNA配列の親和性を予測する場合、ディープラーニングモデルはすべての既知の結合部位予測アプローチを凌駕する[ref.34]。ここでは、2つのディープラーニングモデル、DeepARG-SSおよびDeepARG-LSをそれぞれ開発し、訓練し、評価して、それぞれショートリードおよび完全な遺伝子長の配列からARGを予測する。結果のデータベースであるDeepARG-DBは手動でキュレーションされ、高い信頼度で予測されたARGが入力されているため、環境データセットのメタゲノム解析に現在利用可能なARGのレパートリーが大幅に拡大されている。 DeepARG-DBはオンラインで照会することも自由にダウンロードすることもでき、幅広いユーザーコミュニティに利益をもたらし、将来の抗生物質耐性関連リソースの開発を支援することができる。
インストール
macos10.14でdocker imageをpullしてテストした。
Bitbucket
Dockerイメージ
docker pull gaarangoa/deeparg:latest
#v1.0.1
docker pull gaarangoa/deeparg:v1.0.1
> docker run --rm -it -v $PWD:/data/ gaarangoa/deeparg:latest python /deeparg/deepARG.py -h
/usr/local/lib/python2.7/site-packages/theano/tensor/signal/downsample.py:6: UserWarning: downsample module has been moved to the theano.tensor.signal.pool module.
"downsample module has been moved to the theano.tensor.signal.pool module.")
DeepARG:
https://bitbucket.org/gusphdproj/deeparg-ss
A deep learning based approach for predicting Antibiotic Resistance Genes and annotation.
You can use --predict if you already have a blast-like tabular output (outfmt6) from any
other program (blast, userarch, vsearch, diamond, etc.). Here you can use the --reads options
that will predict NGS reads or --genes that will take longer gene-like sequences (NOT ASSEMBLED CONTIGS).
If you use the --align flag, the system will first perform blast over the input you provide
(genes or reads) and continue with the predict stage. There are additional parameter such as idenity (60% default)
or prediction probability to retrieve the most significant predictions (default --prob 0.8).
USAGE: python deepARG.py --predict --reads --input /Volumes/data/dev/deepARG/test/test.tsv --output /Volumes/data/dev/deepARG/test/test.out
python deepARG.py --align --genes --type prot --input /Volumes/data/dev/deepARG/test/test.fasta --output /Volumes/data/dev/deepARG/test/test.out
General options:
--type (nucl/prot) Molecule type of input data
--iden (50% default) minimum percentaje of identity to consider
--prob (0.8 default) Significance of the prediction, default 0.8
--evalue (1e-10 default) evalue of alignments (default 1e-10)
--coverage (0.8 default) minimum coverage of the alignment (alignment_length/reference_gene_length)
--reads short sequences version
--genes long sequences version
--v1 Use this flag to activate deepARG version v1 [default: v2]
Optional:
--nk (1000 default) maximum number of alignments reported for each query (diamond alignment)
PREDICT ARG-like sequences using blast output file as input:
deepARG --predict --input <inputfile> --output <outputfile>
--input blast tab delimited file.
--output output of annotated reads.
ALIGN sequences to DEEP_ARGDB and PREDICT ARGs using fasta files as input:
deepARG --align --input <inputfile> --output <outputfile>
--input fasta file containing reads.
--output blast tab delimited alignment file.
Thanks for using DeepARG
テストラン
mkdir test
cd test
wget https://bitbucket.org/gusphdproj/deeparg-ss/raw/1c29d3594960a5f1b23898ad76164dc6393b818a/test/ORFs.fa
#またはcurlを使う
curl -L https://bitbucket.org/gusphdproj/deeparg-ss/raw/1c29d3594960a5f1b23898ad76164dc6393b818a/test/ORFs.fa > ORFs.fa
DeepARGを実行する。fastaファイルを入力として実行する "python deepARG.py --align"と、途中で得られるblast結果を入力として実行する"python deepARG.py --predict"(中間ファイルから再開するために使う)がある。ここではdiamond blastから全行程を実行する"--align"を選ぶ。
#docker hub tag確認(link)
docker run --rm -it -v $PWD:/data/ gaarangoa/deeparg:v1.0.1 \
python /deeparg/deepARG.py \
--align \
--genes \
--input /data/ORFs.fa \
--output /data/ORFs \
--type nucl
#fastq (ショートリードは--reads、ロングリードは--genes)
docker run --rm -it -v $PWD:/data/ gaarangoa/deeparg:v1.0.1 \
python /deeparg/deepARG.py \
--align \
--reads \
--input /data/input.fastq \
--output /data/ORFs \
--type nucl
- --type (nucl/prot) Molecule type of input data
出力
> ls -al
$ ls -al
total 26792
drwxr-xr-x 7 kazuma staff 224 5 23 21:39 ./
drwxr-xr-x+ 94 kazuma staff 3008 5 23 21:37 ../
-rw-r--r-- 1 kazuma staff 8504664 5 23 21:39 ORFs.align.daa
-rw-r--r-- 1 kazuma staff 3395898 5 23 21:39 ORFs.align.daa.tsv
-rw-r--r-- 1 kazuma staff 765602 5 23 21:38 ORFs.fa
-rw-r--r-- 1 kazuma staff 20830 5 23 21:39 ORFs.mapping.ARG
-rw-r--r-- 1 kazuma staff 2798 5 23 21:39 ORFs.mapping.potential.ARG
ORFs.mapping.ARG (probability >= --prob (0.8 default))
ORFs.mapping.potential.ARG ( probability < --prob (0.8 default))
fastqの場合、リードそれぞれからAMRのクラスが探索される。結果は、クラスごとにカウント数が集計されてmapping.ARGとmapping.potential.ARGに書き出される。
web版
https://bench.cs.vt.edu/deeparg_analyze/ にアクセスして使用する。
指示に従うだけで使えます。(追記; 2022/09/09に試した時は動作しなかった。保守のタイミングだったかもしれない。)
引用
DeepARG: a deep learning approach for predicting antibiotic resistance genes from metagenomic data
Gustavo Arango-Argoty, Emily Garner, Amy Pruden, Lenwood S. Heath, Peter Vikesland , Liqing Zhang
Microbiome 2018 6:23
関連