Skip to content

Trinity #

Find similar titles

26회 업데이트 됨.

Edit
  • 최초 작성자
    scyong
  • 최근 업데이트
    KyujinLee

Structured data

Category
Software

Trinty #

Introduction #

Trinity는 RNA-seq 데이터의 de novo transcriptome을 효율적으로 de novo reconstruction 하기 위한 novel method이다.
3가지 독립적인 소프트웨어 모듈인 Inchworm, Chrysalis, Butterfly를 결합, 순차적으로 적용하여 방대한 RNA-seq read를 처리한다.

Module #

  • Inchworm: Transcripts unique 시퀀스의 RNA-seq 데이터를 assembly (우점하는 isoform에 대한 full-length transcripts를 생성하기도 하지만, 단지 접합된 transcrips의 unique 부분을 생성).
  • Chrysalis: 각 cluster를 구성하는 Inchworm contig와 각 cluster에 대한 완전한 de Bruijn 그래프 구축 (각 cluster는 정해진 유전자의 전체 transcription의 복잡성을 나타낸다).
  • Butterfly: 병행으로 각각의 그래프들 처리. 생성된 요소에 read를 대입하여 가능한 모든 full-length transcript를 찾는다.

Running #

  • Installing: 리눅스 서버에 소프트웨어를 다운로드 한 후, tar와 gzip을 풀고, install (Inchworm과 Chrysalis: compiled, Butterfly: precompiled). Inchworm과 Chrysalis는 single 서버에서 single 프로세서로 실행한다. Butterfly는 computing grid에서 병렬로 실행한다.
  • Command line: Trinity --seqType fq --JM 50G --left reads_1.fq --right reads_2.fq --CPU 6, 다양한 유형의 다수 fastq file일 경우에는 Trinity --seqType fq --JM 50G --left condA_1.fq,condB_1.fq,condC_1.fq --right condA_2.fq,condB_2.fq,condC_2.fq --CPU 6.
  • Option: --seqType : read file format의 종류 (fa 또는 fq).
    --JM : (Jellyfish Memory) jellyfish를 사용하여 k-mer를 계산할 때, 사용되는 system memory의 GB의 수.
    --SS_lib_type : Strand 특이적 RNA-seq read의 orientation.
                             만약 paired : RF 또는 FR,
                             만약 single : F 또느 R. (dUTP method = RF)
    --CPU : 사용 CPU의 수 (default = 2)
    --min_contig_length : 최소 assembled contig length를 보고하는 것 ( default = 200).
    --genome : genome guided mode, genome fasta file 경로를 제공.
    --jaccard_clip: UTR 부분에서 overlap으로 높은 gene density를 기대할 수 있다면 설정
    (Note: jaccard_clip은 Bowtie가 있어야 하고, 시간이 오래 걸린다).
    --trimmomatic: Quality trim reads를 위한 Trimmomatic을 run.
    --normalize_reads: reads들의 in silico 정규화. Default는 max. 50의 read coverage.
    --output : output의 디렉토리 이름 (option을 사용하지 않을 경우에는 새롭게 생성하여야 한다)
    --cite: Trinity 문헌 citation을 보여준다.

Input & Output #

  • Inchworm: 입력된 시퀀스의 contig를 어셈블리하여, output_dir/inchworm.K25.L48.fa 파일 (25mer, length 48↑ contig만 포함)에 표시.
    Fasta 파일 내 accession에는 다음 단계인 Chrysalis에서 필요한 정보가 포함되어 있다.
  • Crysalis: Inchworm 단계에서 생성된 contig들을 서로 관련된 것들끼리 grouping 함 (transcript일 가능성이 있거나, 시퀀스 일부를 공유하는 paralogous transcript일 가능성이 있을 경우).
    생성되는 파일은: chrysalis/RawComps.0/comp9.raw.graph - Inchworm contigs만을 기반으로 한 그래프. chrysalis/RawComps.0/comp9.raw.fasta - k-mer를 기반으로 생성된 Inchworm contig에 mapping 된 raw read들의 fasta 파일.
  • Butterfly: Chrysalis의 output을 사용하여 Trinity_dir 폴더 안에 Trinity.fasta 파일이 생성.
    이것은 full-length transcript의 fasta 파일.

Workflow #

  • Inchworm: greedy k-mer-based approach 방식.
    read를 k-mer로 profiling해서 딕셔너리 형식 (key : value)으로 만들고 가장 frequency가 높은 k-mer를 seed로 삼아서 이 seed를 양방향으로 overlap 되는 것끼리(k-1 mer overlap) 연결시켜 contig를 생성한다. (if, k-1 overlap이 k-mer가 많을 시 k-mer 중 frequency가 높은 것을 연결).
    seed 선정부터 contig extend 까지 계속적으로 반복한다.
  • Chrysalis: clustering 후 complete de Bruijn graph를 생성한다.
    Inchworm 단계에서 생성된 contig를 clustering하는데 k-1 mer 이상 겹치는 contig들 또는 read에 의해 바로 연결되는 contig들을 grouping.
    각 cluster(component)마다 de Bruijn graph를 생성 (node = k-1mer, edge = k mer).
    각 edge는 read frequency로 weight를 계산한다.
    각 read들을 가장 많은 k-mer가 공통이 되는 component에 할당한다.
  • Butterfly: 생성된 component들에 read를 대입해서 가능한 모든 full-length transcript를 찾는다.
    - graph simplification을 수행. graph simplification은 Chrysalis에서 만든 graph의 node를 더하고 error로 판단되는 edge를 제거하는 것으로 이루어진다.
    - plausible path scoring 작업. 이는 실제 read를 simplified 된 graph에 대입함으로써 path를 찾게 되어 full-length transcript를 생성하는 것이다.

Reference #

homepage

Incoming Links #

Related Articles #

Related Bioinformaticses #

0.0.1_20230725_7_v68