colored de bruijn graphs
TRANSCRIPT
Colored De Bruijn Graphs
Marcos Castro
De novo assembly and genotyping of variants using colored de Bruijn Graphs1
“Variantes genéticas e HTS
“Abordagem tradicional:
mapear os reads para um genoma de referência.
“Limitação 1: a amostra pode conter
sequência faltante.
“Limitação 2: sequências referências
incompletas.
“Limitação 3: reads de regiões faltantes frequentemente mapeiam para regiões parálogas levando a falsos variant calls.
“Limitação 4: amostras em estudo
podem não ter uma referência disponível ou adequada.
“Limitação 5: os métodos não
determinam a exata localização/tamanho de variantes.
“Limitação 6: focam em um único tipo de variante, isso pode levar a erros.
“Algumas limitações podem ser
resolvidas com de novo assembly.
Exemplo: tipo de variante
De novo assembly também possui limitações.
“Métodos de montagem tem ignorado informação pré-existente de variantes conhecidas ou sequência referência.
“Objetivo desse artigo: detectar e
caracterizar variações genéticas em um ou mais indivíduos.
“Os algoritmos propostos fazem uso de
Grafos De Bruijn (DBG).
Acrescentam ao DBG clássico coloração dos nós e arestas por amostras que
estão sendo observadas.
“Leva em conta informações das
amostras: uma ou mais sequências referências e variantes conhecidas.
“O método também é capaz de detectar
variação em espéces sem uma referência, combinando informações
através de vários indivíduos para melhorar a acurácia.
“Nome da aplicação desenvolvida:
Cortex.
Site:http://cortexassembler.sourceforge.net
“DBG’s representam informação
sobreposta.
Muito utilizados em montagem de genoma. Exemplos: Velvet, Abyss etc.
“O grafo consiste de um conjunto de nós representando palavras de tamanho K.
Essas palavras são k-mers.
K-mers são substrings!
“Arestas direcionadas juntam os k-mers.
“Variações entre genomas geram novos
nós e arestas.
“Exemplo: ACT, k = 2
K-mers: AC, CT
AC CTACT
nóaresta
nó
“O grafo pode apresentar estruturas
conhecidas.
Exemplo: bolhas.
“Bolha:
“Um DBG colorido generaliza a formulação original para várias
amostras.
A identidade de cada amostra é mantida pela coloração dos nós.
“Alguns algoritmos para descoberta de
variantes e genotipagem:
1) Bubble-calling2) Path divergence
“Bubble-calling: método mais simples para identificar bolhas em um único
indivíduo diplóide.
“A abordagem bubble-calling pode ter uma alta taxa de falsos positivos que
pode ser melhorado com a inclusão de um genoma de referência.
“Esses falsos positivos são causadas
pela dificuldade de separar bolhas de repetição e de variação.
“
Descoberta de variante em um único indivíduo diploide.A referência está em vermelho.
“Resumindo: polimorfismos verdadeiros
geram bolhas que divergem da referência, enquanto que estruturas de
repetição levam a bolhas também observadas na referência.
“O que temos é um genoma de
referência auxiliando na detecção de variantes.
“Todos os tipos de variantes podem
induzir bolhas.
“Para variantes complexas (grandes
deleções, novas inserções, inversões) pode ser difícil gerar um contig limpo.
“PD algorithm pode aumentar
substancialmente a capacidade de detectar varitantes.
“Caso simples: amostras são combinadas numa única cor.
“Mantendo cores separadas para cada
amostra , tem-se a informação adicional sobre se uma bolha é
induzida por repetições ou erros.
“Quando é induzida por repetições,
muitas ou todas as amostras apresentam cobertura de ambos os
caminhos na bolha.
“
Várias amostras (cada uma com um cor diferente).
Cobertura normal,nenhuma variânciaentre amostras.
“
Bolhas de repetição: ambos os lados da bolha estãopresentes em todas as amostras.
“Portanto, pode ser descoberta variante
mesmo em espécies onde não há nenhuma referência adequada.
“Tem-se desenvolvidos métodos
estatísticos que permitem a classificação probabilística de
estruturas de bolhas decorrentes de erros, repetições ou variantes.
“Se tiver um genoma de referência, essa
abordagem pode ajudar a distinguir variantes verdadeiras de erros e
estruturas de repetição.
“DBG coloridos podem ser usados para genotipar amostras em loci conhecida
mesmo quando a cobertura é insuficiente.
“
Em azul temos a cobertura (insuficiente).Os alelos estão em vermelho e verde.
“Foi construído um DBG colorido da
sequência referência, variantes alélicas conhecidas e dados a partir da
amostra.
“Cortex é um assembler eficiente do
ponto de vista de memória.
Ele constrói e representa um DBG colorido. Realiza variant calling e
genotipagem de dados HTS.
“Foi utilizada uma eficiente hash table que codifica implicitamente o grafo.
O uso de memória é previamente especificado de acordo com uma
fórmula.
“Várias operações tem complexidade
linear ou melhor.
“K-mers e seus complementos reversos
são armazenados em um único nó.
“Valor da hash table é um array de
inteiros representando a cobertura de cada cor.
“Para cada k-mer, uma flag binária é usada para cada nucleotídeo para
verificar se uma determinada aresta está presente.
“É o único assembler capaz de lidar com
vários eucariotos simultaneamente.
Exemplo: 10 seres humanos utiliza menos de 256GB de RAM.
“Exemplo de K: 75
(teste com dados de humanos)
“O aumento do K (tamanho do k-mer)
aumenta a probabilidade de um k-mer conter um erro.
“O tamanho do k-mer maximiza a sensibilidade do BC algorithm.
“Exemplo: com cobertura 50x, K = 65 e 100bp reads, foi identificado 86% dos
SNPs de 92% possíveis.
“O Cortex se utiliza de DBG colorido
para representar informações de várias fontes e abordagens estatísticas para detectar variantes de diferentes tipos.
“Um implementação eficiente do DBG colorido permite a utilização de dados
de várias amostras bem como sequências de referências e variantes
conhecidas.
Todos são incluídos numa única estrutura de grafo. A identidade da amostra é preservada com o uso de
cores.
“Essa abordagem permite a análise
simultânea de vários genomas.
Isso pode ser poderoso para detectar variantes precisas sem qualquer necessidade de um genoma de
referência.
“É possível a análise HTS de variações
genéticas em qualquer espécie.
“A abordagem também possui
limitações.
“Limitação 1: não foi usada informação read-pair para melhorar a montagem
local.
“Limitação 2: explosão do grafo quando
mais indivíduos são incluídos.
“Limitação 3: aumenta necessidade de
correção de erro quando o k-mer aumenta.
Succint Colored de Bruijn Graphs2
“DBG colorido foi introduzido em 2012.
Objetivo: detectar e genotipar variantes genéticas simples e complexas em um
indivíduo ou população.
“Relembrando o DBG clássico:
1) Conjunto de strings (sequence reads)
2) Vértice para cada (k-1)-mer.3) Aresta para cada k-mer com (k-1)-
mer prefixo e (k-1)-mer sufixo.
“Um contig é um caminho sem
ramificação.
“A aresta em um DBG colorido é o
mesmo do DBG clássico.
“A diferença: cada vértice ((k-1)-mer) e aresta (k-mer) estão associados a uma
lista de cores correspondendo as amostras.
“Dado um conjunto de n amostras,
existe um conjunto C de n cores: c[1], c[2], c[3], …, c[n] onde c[i] corresponde a amostra i e todos os k-mers e (k-1)-mers que estão contidos na amostra i
são coloridos com c[i].
“Uma bolha no grafo corresponde a um ciclo direcionado e é considerada um
indicativo de variação biológica.
“Essas cores permitem que não perder o
controle dos indivíduos dos quais os kmers foram originados.
“Relembrando: o Cortex utiliza DBG
colorido para montar vários genomas simultaneamente, por isso é importante
o uso das cores para manter um controle.
“Nesse artigo foi desenvolvida uma estrutura de dados eficiente para o
armazenamento e uso do DBG colorido.
“Comparado ao Cortex, essa estrutura
reduz dramaticamente a quantidade de memória para armazenar e utilizar o DBG colorido com alguma penalidade
de execução.
“Método VARI - 2016
“
Datasets, números de cores, k-mers etc.foram removidos para eu poder colocar no slide...
“Resumindo: Cortex ganha em tempo de execução e o VARI ganha em eficiência
de memória.
Voltando ao Cortex...3
“A detecção de variantes genéticas
entre amostras quando não há uma sequência referência introduz desafios.
“A acurácia do variant calling pode ser
melhorada adicionando uma sequência referência.
“Existem várias abordagens para o variant calling: bubble calling, path
divergence, multiple-sample analysis, genotyping.
“Algoritmo Bubble Calling
“Lembrando:
1) Bolhas podem ser induzidas por variantes, repetições ou erros de
sequenciamento.2) Variantes podem ser separadas de
repetições por inclusão da referência.
“Alguns conceitos importantes para a
compreensão do algoritmo...
“1) Nó: representa um k-mer (string de tamanho K restrita ao alfabeto A, C, T,
G).
“2) Supernode: caminho de
comprimento máximo com restrição que somente o primeiro/último nós do
caminho podem ter grau de entrada/saída != 1.
“3) Bubble: é um par de supernodes que
tem os mesmos nós de início e fim.
“4) Branch: cada um dos supernodes
constituindo uma bolha.
“5) Tip: um pequeno caminho que
termina em um nó com grau de saída 0.
“5) Confounded: uma variante que se
sobrepõem com outras partes do genoma (ou com ela própria)
impedindo que se forma uma bolha limpa.
“O algoritmo Bubble Caller foi implementado como um percurso de
uma hash table.
O tempo de acesso numa hash é constante, portanto, o caminho tem um
custo proporcional ao tamanho da tabela.
“
“n é um nó do grafo de bruijn
“G é o grafo de bruijn
“todo o grafo é coberto
“se estamos diante de uma
nova bifurcação...
“marca o nó como visitado
“obtém as arestas de saída
“obtém os supernodes
“marca os supernodes
como visitados
“se os dois supernodes seencontram no mesmo nóe na mesma orientação,então temos uma bolha
“Path Divergence Caller Algorithm
“
Vermelho: alelo de referência.Azul: o indivíduo
“
Mesmo quando não se forma uma bolha limpa, pode-se descobrir variantes através da divergência
do caminho de referência.
“
Ao encontrar um breakpoint (verde), pega-se o contigmais longo da amostra
(exemplo: caminho até o próximo cruzamento).
“
O azul pontilhado é uma sequência de repetição dentrodo alelo de referência presente em outro local
dentro do genoma da amostra.
o algoritmonão é afetado
“Algoritmo de Genotipagem
Tem-se um grafo com uma cor para cada alelo conhecido, uma cor para o genoma de referência e uma cor para
amostra.
“Algoritmo de Genotipagem
Tem-se um grafo com uma cor para cada alelo conhecido, uma cor para o genoma de referência e uma cor para
amostra.
Referências
■ http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3272472/■ http://biorxiv.org/content/biorxiv/early/2016/02/18/040071.f
ull.pdf