Abordagens computacionais gulosas, são aquelas que buscam uma solução ótima, to- mando decisões em direção a um novo ótimo local, em cada passo de execução. Com isso, espera-se, que ao final da busca seja alcançado o ótimo global, sem que para isso, seja necessário analisar todas as situações possíveis.
É importante ressaltar, que não há garantias de que o ótimo global será alcançado. O algoritmo guloso pode ser utilizado como um algoritmo de seleção, para priorizar as opções dentro de uma pesquisa, ou como algoritmo branch and bound para finalizar o crescimento de um ramo ou na divisão dos nós ao encontrar uma solução ótima.
No problema das interações entre SNPs, os métodos de busca gulosa executam uma filtragem baseada nos SNPs ou interações não-epistáticas de ordem inferior para filtrar SNPs que não exibem nenhum efeito principal. Em geral, os métodos que realizam esse tipo de busca utilizam dois ou mais passos para avaliar as interações.
Uma estratégia como o CART (classification and regression tree) seleciona um SNP que melhore o valor de uma métrica, por exemplo, Gini Index ou Entropia, e em seguida, segue no crescimento da árvore. No entanto, o sucesso da aplicação dessa estratégia depende da natureza das interações presentes no conjunto de dados, ou seja, é necessário que os SNPs tenham interações puramente epistáticas, caso contrário, são susceptíveis de serem descartados da interação.
4.2. FERRAMENTAS DE INFERÊNCIA DE EPISTASIA 55
conjunto de dados muito maior, pois diferentemente das abordagens que utilizam uma busca exaustiva, o fato de não analisar todo o conjunto de dados, permite sua utilização em dados de GWAS.
SNPRuler
O SNPRuler (Wan et al., 2010b) é um algoritmo branch and bound de busca não exaustiva, sendo caracterizado por buscar uma solução ótima enumerando alguns candidatos como solução e descartando o restante através de um limite superior e inferior.
A ferramenta tem como objetivo de encontrar as interações epistáticas e para isso é aplicada uma aprendizagem de regras preditivas (predictive rule learning). As regras preditivas, tem como objetivo descrever a relação entre os SNPs e as classes caso e controle, e assim pode facilitar na detecção das interações mais significativas.
Estas regras preditivas, são propostas considerando que as interações contém algum tipo de regra que pode ser aprendida. Ao se considerar isso, realizar uma busca destas regras é mais fácil e menos custosa, do que avaliar cada uma das interações entre SNPs.
No entanto, o método não dá garantias de que a regra preditiva seja capaz de detectar as interações epistáticas. Assim é proposta inicialmente, uma aprendizagem das regras preditivas para selecionar regras com boa confiabilidade, e em seguida é utilizado testes estatísticos para identificar as interações selecionadas pelas regras.
Observando a Figura 4.4, podemos entender basicamente o funcionamento da abordagem.
Figura 4.4 Esquema do processamento da análise das interações no SNPRuler. Uma tabela de contin- gência é criada e utilizada para construção das regras fechadas, em seguida as regras são avaliadas pela estatística χ2.
A aprendizagem das regras, é feita com o objetivo de encontrar todas as regras preditivas do tipo fechada ((r, ζ )i), ou seja, regras que não podem ser melhoradas pela adição de novos
SNPs, sendo r é o conjunto de vários SNPs e ζ a classe (1 para caso e 0 para controle).
Os SNPs s são formados por um par de variáveis (i, v), onde i é o índice e v um valor que pode ser 0, 1 ou 2 representando os genótipos homozigoto dominante, heterozigoto ou homozigoto recessivo respectivamente.
4.2. FERRAMENTAS DE INFERÊNCIA DE EPISTASIA 56
U(.) é utilizada para ordenar as regras que contenham interações verdadeiras. A partir da medida da regra preditiva U (.), um limite superior é definido para evitar a expansão desnecessária da regra, evitando uma busca exaustiva das interações.
O cálculo da medida da regra preditiva U ((r, ζ )i)
U(r, ζ ) = (R − δ 2) (1 + δ )(γ − δ − 1) 4.10 é feito utilizando uma tabela de contingência analisada através da Rule Utility, desenvolvida a partir da estatística χ2. Onde δ = ba, γ = a+b+c+da e R =b+da+c. As variáveis a, b, c e d são obtidas através de uma tabela de contingência (Tabela 4.4) construída a partir do conjunto de dados para uma dada regra (r, ζ )
As regras preditivas são ditas ruins e eliminadas da análise quando a medida de relevância U((r, ζ )i) ≤ T , onde T é um limite inferior definido pelo usuário.
Tabela 4.4 Tabela de contingência para um dada regra (r, ζ ).
ζ = 0 ζ 6= 0 Total
r a b a+ b
¬r c d c+ d
Total a+ c b+ d a+ b + c + d
Para a construção de uma regra preditiva (r, ζ ), o algoritmo SNPRuler inicia basicamente com um único SNP (Sj) e genótipo gi. Cria e expande uma regra preditiva adicionando outros
SNPs (Sj= gi) até que esta regra se torne uma regra fechada, fazendo este processo para todos os
SNPs. A fim de evitar expansões desnecessárias das regras, o algoritmo utiliza o limite superior Umax(rT
(Sj= gi), ζ ), da medida da regra U(.), definido na equação:
Umax= Rm− (b − min(b, d 0)))2 (m + (b − min(b, d0)))(γm − (b − min(b, d0) − m)) 4.11 onde, R e γ são definidos na equação4.10 , m = min(a, a 0), sendo a0 e d0 variáveis do novo SNP adicionado à regra, obtidas a partir de uma nova tabela de contingência como descrita na Tabela 4.4.
Após obtidas as melhores regras utilizando a medida U (r, ζ ), o algoritmo então constrói uma árvore de busca para cada regra selecionada, onde cada protótipo representa um SNP e cada ramo que liga os protótipos representa uma possível interação que é avaliada utilizando um método de busca em profundidade (depth-first transversal) que gera e avalia as possíveis interações utilizando a estatística χ2ajustada pelo uso da correção de Bonferroni (Abdi,2007). Ao final o algoritmo exibe em sua saída uma lista de interações ordenadas através da estatística χ2.
Apesar de ser um método de aplicação mais ampla para conjunto de dados do GWAS, o fato de realizar uma busca das interações de forma gulosa não garante que o método encontre as
4.2. FERRAMENTAS DE INFERÊNCIA DE EPISTASIA 57
interações relevantes presentes no conjunto de dados. A seguir, serão apresentados os métodos de busca estocásticas.