macでインフォマティクス

macでインフォマティクス

HTS (NGS) 関連のインフォマティクス情報についてまとめています。

リファレンスなしでnanopore Direct RNA seqのリードの向きを予測する ReorientExpress

 

 ロングリードシークエンシング技術は、あらゆる種からのトランスクリプトームの体系的な調査を可能にする。ただし、機能評価には5 'から3'への方向を正しく決定する必要がある。 complementary DNA(cDNA)ライブラリーのシーケンシングは、一般に多数のリードをもたらすが(Workmanら、2018)、Oxford Nanopore Technologies(ONT)はRNA分子の直接測定を可能にする(Garalde et al、2018)。strand specificなアダプターを使用できるが、エラー率の多さはアダプター検出を妨げる。現在の方法は、ゲノムまたはトランスクリプトームリファレンスとの比較(Wyman and Mortazavi 2018; Workman et al。2018)、またはさらなる技術の使用(Fu et al、2018)に依存しているため、迅速で費用効果の高いロングリードシーケンシング適用は制限される。ゲノムやトランスクリプトームリファレンスが利用できない種やサンプルでのトランスクリプトームのde-novoの問い合わせを容易にするために、著者らはReorientExpress(https://github.com/comprna/reorientexpress)という、cDNAライブラリーからONTのリードの向きを、アダプターなしで読み取る方法を開発した。 ReorientExpressは、ディープニューラルネットワーク(DNN)を使用して、アダプターとは無関係に、またリファレンスを使用せずにcDNAロングリードの方向を予測する。
  ReorientExpressアプローチは、シークエンシングエラーにもかかわらず、転写産物から得られたリードは依然としてRNA代謝に関与するstrand specificRNPコードに対応する複数のシーケンスモチーフを保持しなければならないという仮説に基づく(Rissland 2017 pubmed; Hentze et al. 2018 pubmed; Gerstberger et al. 2014).。このモデルは、トランスクリプトームアノテーションまたはONTダイレクトRNAシークエンシング(DRS)リードなど、既知の方向を持つ任意のRNAシーケンスセットからトレーニングできる。ReorientExpressは、入力シーケンスから、1から任意の指定された長さまでのkで、正規化されたk-merカウントの行列を計算する(補足Methods)。その後、DNNモデルは、ロングリードを正しい5から3の方向または逆補完の方向に分類する。著者らは、5つの隠れ層を有するDNNを使用し、最初の1つの層には500のノードを配置し、その後は前層の量の半分を使用した(すなわち、500、250、125、62、1)。最後の層はただ1つのノードを持ち、その入力スコアから確率を近似するためにシグモイド関数を適用する。この確率は、リードが正しい方向ではないという確実性を表す。さらに、DNNは過剰適合を減らすためにDropoutのレイヤーを使用する。 ReorientExpressの実装は他のDNNアーキテクチャを可能にする。

(最終段落まで省略)

 近縁種で訓練されたモデルを使用してcDNAナノポアリードの5 'から3'方向の向きを予測する機能により、ReorientExpressは非リードモデル生物からのトランスクリプトームの研究に重要な処理ツールとなる。 

 

ReorientExpressに関するツイート

 

インストール 

ubuntu16.04のminiconda3-4.3.21環境でテストした(docker使用、ホストOS macos10.14)。

本体 Github

pip3 install reorientexpress

reorientexpress.py -h

# reorientexpress.py -h

Using TensorFlow backend.

usage: reorientexpress.py [-h] [-train] [-test] [-predict] -data D -source

                          {annotation,experimental,mapped}

                          [-format {fasta,fastq,auto}] [-annotation A]

                          [-use_all_annotation] [-kmers K] [-reads R]

                          [-trimming T] [-verbose] [-epochs E] [-output O]

                          [-model M]

 

Builds, test and uses models for the orientation of cDNA reads.

 

optional arguments:

  -h, --help            show this help message and exit

  -train                Set true to train a model.

  -test                 Set true to test a model.

  -predict              Set true to use a model to make predictions

  -data D, --d D        The path to the input data. Must be either fasta or

                        fastq. Can be compressed in gz.

  -source {annotation,experimental,mapped}, --s {annotation,experimental,mapped}

                        The source of the data. Must be either 'experimental',

                        ' annotation' or 'mapped'. Choose experimental for

                        experiments like RNA-direct, annotation for

                        transcriptomes and mapped for mapped cDNA reads.

                        Mapped reads require a paf file to know the

                        orientation.

  -format {fasta,fastq,auto}, --f {fasta,fastq,auto}

                        The format of the input data. Auto by deafult. Change

                        only if inconsistencies in the name.

  -annotation A, --a A  Path to the paf file if a mapped training set which

                        requires a paf reference is being used.

  -use_all_annotation, -aa

                        Uses all the reads, instead of only keeping

                        antisense,lincRNA,processed_transcript,

                        protein_coding, and retained_intron. Use it also if

                        the fasta has unconventional format and gives errors.

  -kmers K, --k K       The maximum length of the kmers used for training,

                        testing and using the models.

  -reads R, --r R       Number of reads to read from the dataset.

  -trimming T, --t T    Number of nucleotides to trimm at each side. 0 by

                        default.

  -verbose, --v         Whether to print detailed information about the

                        training process.

  -epochs E, --e E      Number of epochs to train the model.

  -output O, --o O      Where to store the outputs. using "--train" outputs a

                        model, while using "-predict" outputs a csv.

                        Corresponding extensions will be added.

  -model M, --m M       The model to test or to predict with.

ro

 

実行方法 

 モデルをトレーニングする。

reorientexpress -train -data path_to_data -source annotation --v -output my_model

 

実行する。

reorientexpress -predict -data path_to_data -source experimental -model path_to_model -output my_predictions

  

引用

ReorientExpress: reference-free orientation of nanopore cDNA reads with deep learning

Angel Ruiz-Reche, Joel A. Indi, Ivan de la Rubia, Eduardo Eyras

bioRxiv preprint first posted online Feb. 18, 2019