• Nenhum resultado encontrado

APLICAÇÃO DO ALGORITMO SVD PARA BUSCA DE SIMILARIDADE ENTRE PROTEÍNAS

N/A
N/A
Protected

Academic year: 2021

Share "APLICAÇÃO DO ALGORITMO SVD PARA BUSCA DE SIMILARIDADE ENTRE PROTEÍNAS"

Copied!
9
0
0

Texto

(1)

Anhanguera Educacional Ltda.

Correspondência/Contato

Alameda Maria Tereza, 4266 Valinhos, SP - CEP 13278-181 rc.ipade@aesapar.com

Fausto Gonçalves dos Santos

Michel de Souza Costa

Curso:

Sistemas de Informação

FACULDADE ANHANGUERA DE BELO

HORIZONTE

SB-Meeting - Brasil Deutschland Systems Biology Meeting 2010, e Simpósio interdisciplinar Física + Bioinformática, 2009 - Ouro Preto/MG.

RESUMO

Este trabalho visa o desenvolvimento de uma ferramenta para busca de similaridade entre proteínas, escrita em PHP. A ferramenta utilizará o algoritmo SVD (Singular Value Decomposition) como base para o processo e busca. O SVD é um redutor de matrizes, que decompõe uma matriz original e cria outra com os valores mais significativos. Ele está presente em muitas aplicações como análise de dados, processamento de sinais e outras, é uma técnica ágil de visualização e análise de dados. Há várias ferramentas disponíveis que executam buscas por similaridade como Blast e Fasta , o que diferencia a utilização do SVD como opção para base do processo de busca em relação a essas ferramentas, é a utilização de funções matemáticas em seu código. Entende-se por similaridade entre proteínas a comparação de uma proteína a outra através dos aminoácidos, se um aminoácido pode ser substituído por outro que possua as mesmas propriedades, estes são similares. A ferramenta buscará a similaridade entre uma proteína do banco de dados com outra proteína, denominada “alvo”. Essas proteínas serão extraídas do PDB (Protein Data Bank) que é um repositório de dados de estruturas moleculares. Será mostrado que o SVD pode ser uma nova alternativa para desenvolvimento de ferramentas de busca de similaridade.

Palavras-Chave: SVD, similaridade, proteínas, PDB.

A

NUÁRIO DA

P

RODUÇÃO DE

I

NICIAÇÃO

C

IENTÍFICA

D

ISCENTE

Vol. 13, N. 18, Ano 2010

APLICAÇÃO DO ALGORITMO SVD PARA BUSCA DE

SIMILARIDADE ENTRE PROTEÍNAS

(2)

1. INTRODUÇÃO

Com o grande volume de dados gerados após a exploração do sequenciamento do DNA, a manipulação desses dados tornou se inviável, no qual houve a necessidade do desenvolvimento de ferramentas computacionais que fizessem um tratamento dos dados gerados, como análise e visualização. A bioinformática é uma área que propõe solucionar esses problemas, com desenvolvimento de projetos interdisciplinares que envolvem ciência computacional, física, química, biologia, estatística e matemática, onde atua nas áreas de análise e sequência de DNA e proteínas, o estudo de estruturas tridimensionais de moléculas, a visualização e análise de imagens e sinais biológicos.

Conforme Prosdocimi (2007), a bioinformática tem como sua principal finalidade, desvendar a grande quantidade de dados que vem sendo obtida através das sequências de DNA e Proteínas.

Este trabalho visa o desenvolvimento uma ferramenta para busca de similaridade (Figura 1), entre proteínas, escrita na linguagem PHP, usando o algoritmo SVD como base para o processo de buscas. Conforme Santos, Dias (2010) essa ferramenta deve percorrer as proteínas do banco, retornando um grande volume de dados descritos numa matriz esparsa.

Figura 1 – Sequência de aminoácidos, mostrando a similaridade entre as proteínas

O SVD (Singular Value Decomposition), conforme Couto, Ladeira e Santos (2007), é uma técnica de redução de matrizes, que processa uma matriz de dados esparsos, obtendo uma nova matriz como retorno, contendo os mais significativos dados da matriz original. Segundo os autores, esta ferramenta utiliza-se de funções matemáticas e definido pela formula A=UWVT (Figura 2) está presente em um vasto campo de aplicações, como

análise de dados, compressão de imagens, previsão do tempo e outros. Dias et al. (2009) usaram o algoritmo SVD para buscar uma proteína “template”, de estrutura tridimensional conhecida, para servir de modelo para a definição da estrutura tridimensional de outra proteína, de estrutura ainda não resolvida. A partir do resultado do SVD, os dados decompostos foram plotados em um gráfico 3D, possibilitando a visualização das

(3)

estruturas das proteínas. Já Couto, Ladeira e Santos (2007) também utilizaram o algoritmo para agrupamento de proteínas.

Fonte: Couto, Ladeira e Santos (2007)

Figura 2 – Equação do Algoritmo SVD

Inicialmente serão utilizadas para teste algumas famílias de proteínas escolhidas aleatoriamente. Conforme Pelley (2007, p.21), proteínas são moléculas constituídas por sequências lineares de aminoácidos, elas são responsáveis por expressar a maior parte de informações genéticas e estão presentes em todas as partes das células.

Segundo Lehninger (2007), as proteínas são os instrumentos moleculares por onde as informações genéticas são expressas. As proteínas são divididas em estruturas, e compostas por aminoácidos, as funções de cada proteína, são determinadas através da disposição na sequência em que os aminoácidos estão organizados.

Neste trabalho serão utilizadas famílias de proteínas Hydrolase, Oxireductase, Transferase, escolhidas para testes preliminares. Estas proteínas estão dispostas em arquivos com extensão “.fasta”, que são arquivos no formato texto que contem informações sobre a estrutura das proteínas, inicializados com o caractere (>), seguidos por uma sequência de identificadores como n Figura 3.

>1A0J:A|PDBID|CHAIN|SEQUENCE IVGGYECRKNSASYQASLQSGYHFCGGSLISSTWVVSAAHCYKSRIQVRLGEH NIAVNEGTEQFIDSVKVIMHPSYNSRN LDNDIMLIKLSKPASLNSYVSTVALPSSCASSGTRCLVSGWGNLSGSSSNYPDTL RCLDLPILSSSSCNSAYPGQITSNM FCAGFMEGGKDSCQGDSGGPVVCNGQLQGVVSWGYGCAQRNKPGVYTKVC NYRSWISSTMSSN

Figura 3 – Conteúdo do arquivo “.fasta” de uma proteína.

Os arquivos “.fasta”, como na Figura 3, estão armazenados e disponíveis no banco de dados chamado PDB (Berman et al., 2000).

(4)

O PDB (Protein Data Bank) é um grande repositório de dados de estruturas 3D de grandes moléculas biológicas, como proteínas e ácidos nucléicos. Essas moléculas são essenciais à vida e são encontradas em todos os organismos como bactérias, plantas, animais e seres humanos. Novos arquivos são adicionados periodicamente por cientistas, biólogos, pesquisadores, entre outros, e estão disponíveis no site www.pdb.org (BERMAN et al., 2000) para download e visualizações.

Cada proteína se diferencia uma das outras através da disposição desses aminoácidos. De acordo com Lehninger (2007), a estrutura de uma proteína é formada por vinte (20) tipos diferentes de aminoácidos, tal estrutura pode ter milhares de aminoácidos. Ainda segundo o autor, os aminoácidos possuem nomes característicos, sendo a maioria de acordo com a sua origem de descoberta, um exemplo seria a Asparagina retirada no aspargo. Como normas internacionais, são designados por três letras de seu respectivo nome na língua inglesa ou por uma única letra. Os aminoácidos presentes nos arquivos “.fasta” encontrados nas proteínas são: Glicina (G), Alanina (A), Prolina (P), Valina (V), Leucina (L), Isoleucina (I), Metionina (M), Fenilalanina (F), Histidina (H), Tirosina (T), Triptofano (w), Serina (S), Treonina (T), Cisteina (C), Asparagina (N), Glutamina (Q), Lisina (K), Arginina (R), Aspartato (D), Glutamato (E).

2. OBJETIVO

O objetivo global do projeto é implementar um algoritmo que utiliza o SVD como base para busca de similaridades entre proteínas baseado no trabalho de Dias et al. (2009). Para tanto, seus objetivos específicos serão:

š Levantamento dos arquivos fasta das proteínas (um grupo reduzido de famílias para teste inicial);

š O uso de uma biblioteca já existente que implemente o algoritmo SVD; š Desenvolvimento da ferramenta de comparação/busca de similaridade; š Testes e análise dos resultados.

As pesquisas ainda não foram concluídas, e serão finalizadas em um curto período, com a visualização das proteínas platadas em um gráfico.

Em um próximo trabalho, que dará continuação a este, será feita a comparação dos resultados desta ferramenta com outras ferramentas de busca de similaridade entre proteínas.

(5)

3. METODOLOGIA

O processo de busca de informações das proteínas, retiradas dos arquivos .fasta do PDB, resultará numa matriz com uma grande quantidade de dados. O algoritmo SVD será usado para decompor uma matriz, reduzindo a quantidade de dados e retornando uma matriz de aproximação com os mais significativos termos da matriz original. O processo de montar uma matriz de aproximação é coletar as frequências de termos em cada documento. O algoritmo será implementado na linguagem PHP e utilizará como base uma biblioteca desenvolvida em Perl que implementa o SVD.

Inicialmente foram escolhidas as famílias de proteínas Oxireductase, Transferase e Hydrolase para serem coletados os dados dos testes preliminares, e será utilizado sequências de aminoácidos dos arquivos ”fasta”.

4. DESENVOLVIMENTO

Primeiro passo para o desenvolvimento deste trabalho, foi a definição da base de dados a ser trabalhada, para isso foram utilizadas três famílias de proteínas obtidas através de downloads dos arquivos disponíveis no site do pdb.org. Para cada família escolheu-se 100 proteínas em formato de arquivo “fasta”.

A partir da base de dados, foi gerada uma matriz inicial, para isso, foram coletadas as frequências de ocorrência de cada tripla (três consecutivos) de aminoácidos nas proteínas, o que resultou em uma matriz com grande quantidade de dados esparsos, com 8000 linhas e 300 colunas que descreve a relevância dessa tripla na sequência. (matriz gerada através de um script em PHP).

O fato de a matriz obter essa proporção de 8000 linhas é definido pela expressão (A=20 x C=20 x D=20), onde cada variável da expressão representa um aminoácido definido na tripla, com 20 possibilidades em cada posição, já que cada proteína pode ter até 20 tipos diferentes de aminoácidos.

O algoritmo SVD foi utilizado através de uma biblioteca, de código aberto, escrita na linguagem Perl, disponível no site do CPAN (Comprehensive Perl Archive Network)1.

Para colocá-la em funcionamento, seus módulos foram instalados no sistema operacional, no caso deste projeto utilizamos o Ubuntu 9.04.

(6)

O algoritmo em PHP que cataloga as frequências de triplas, gera a matriz original que fica gravada em um arquivo texto, onde cada linha representa uma tripla (termo) e cada coluna representa uma proteína (documento).O algoritmo SVD recebe esse arquivo como forma de entrada de dados através de uma variável. Feito o tratamento dos dados, o algoritmo retorna duas matrizes U e V e um vetor S, onde Um—m e Vn—n são ortogonais e

Sm—n é diagonal também em formato texto para ser lido pelo código PHP (conforme

descrito na Figura 2).

A matriz reduzida de proteínas (“S”) descreve fielmente a matriz original, assim a projeção num espaço 3D de cada item da matriz (coluna) representará uma proteína. A comparação destes itens com a projeção da proteína alvo permitirá inferir similaridade entre ambas. Esta comparação poderá ser feita considerando-se a distância euclidiana entre os pontos no espaço, o cosseno do ângulo formado por vetores com base na origem ou outra forma a estudar.

A distância Euclidiana, definida por uma fórmula (Figura 4) conforme Bortolossi (2002), é a distância entre dois pontos A (x1, y1, z1) e B (x2, y2, z2). No caso das proteínas servirá para inferir similaridade entre elas, considerando uma relação inversa entre distância e similaridade.

Figura 4 – Fórmula Distância Euclidiana.

Portanto, a similaridade calculada neste trabalho será baseada na Distância Euclidiana, calculada para os dois pontos a serem comparados.

5. RESULTADOS

O primeiro resultado obtido foi a criação da matriz esparsa contendo frequências das sequencias de informações das proteínas. Mostrado na Figura 5, onde é definida uma matriz m x n. As linhas representam as triplas e suas respectivas frequências dentro das proteínas e as colunas são as proteínas. Ao observar a matriz da Figura 4, dá a clareza da disposição das triplas de aminoácidos, como exemplo a sequencia “AAA” aparece em determinadas proteínas e sendo possível apresentada varias vezes dentro da mesma proteína.

(7)

Cada tripla (frequência) dentro da matriz é representada por um índice, definidos pela equação 400*(-i)+20*(-j)+k, definidas no código da Figura 5, usada no trabalho de LAGO, SANTOS, DIAS(2009).

Figura 5 – Matriz original de frequências de sequências proteínas.

Figura 6 – Trecho do código da montagem das triplas.

Ao ser aplicado o SVD sobre a sequência de informações da tabela contendo as frequências de proteínas, obteve-se como resultado uma matriz reduzida para que seja possível encontrar a similaridade entre proteínas do banco e a proteína alvo, mostrando que o SVD pode ser usado na implementação de uma nova alternativa de ferramenta de busca.

Essa matriz reduzida será plotada no espaço tridimensional, para geração de gráficos para visualização da disposição das proteínas trabalhadas (Figura 7), quanto mais próximo um ponto (proteína) estiver do outro, mas similar eles serão no qual será utilizado o programa SciLab. A similaridade é obtida através do cálculo da Distância Euclidiana encontrar a entre as proteínas.

(8)

Figura 7 – Gráfico de como será feita a busca de similaridade.

6. CONSIDERAÇÕES FINAIS

Existem várias ferramentas para busca de similaridade entre proteínas como as ferramentas Blast (Basic Local Alignment Search Tool, disponível em

http://blast.ncbi.nlm.nih.gov) (ALTSCHUL et al., 1990) e Fast (Alignment Sequence Tool, disponível em http://biowulf.bu.edu/FAST) (ZHU; WHENG, 2005), que fazem comparação direta aminoácido a aminoácido de cada proteína, procurando encontrar similaridades de sequências, procedimento denominado alinhamento de proteínas.

O presente projeto vem sendo desenvolvido parar mostrar que o algoritmo SVD pode ser usado para o desenvolvimento de uma nova alternativa de ferramenta de busca de similaridade, por dar um tratamento matemático à solução, não consistindo de alinhamento par a par.

Foi implementado um algoritmo em PHP para catalogar a frequência de ocorrência das triplas, onde foi gerado um arquivo com tal conteúdo. Com a utilização do algoritmo SVD escrito em Perl, possibilitou a redução dos dados a serem analisados, retornando os mais significativos. A partir de agora, o próximo passo será a implementação do algoritmo que faz a busca de similaridade entre proteínas, explorando os dados gerados até o presente momento.

(9)

REFERÊNCIAS

PELLEY, John W. Bioquímica.1.ed. Rio de Janeiro: Elsevier, 2007. 229p.

COUTO, B.R.G.M; LADEIRA, A.P; SANTOS, M.A (2007) Application of latent semantic indexing to evaluate the similarity of sets of sequences without multiple alignments character-by-character. In: GMR(Genetics and Molecular Research).

DIAS, S. R.; SOARES, S. C.; ALVES, E. M. C.; SANTOS, M. A.; NAGEM, R. A. P. Protein Modeling using Search Templates Oracle. In: Second Brazilian School on Bioinformatics, 2009, Porto

Alegre/RS. Second Brazilian School on Bioinformatics - Anais, 2009.

PROSDOCIM, F. Introdução à bioinformática. 2006. (Desenvolvimento de material didático ou instrucional - Curso ON-LINE de bioinformática).

Lehninger AL, Nelson DL, Cox MM (2007) Princípios de Bioquímica. 4ª Edição Editora: Sarvier, 1232p.

, S.F., GISH, W., MILLER, W., MYERS, E.W. & LIPMAM, D.J. (1990) Basic local alignment search tool. Journal of Molecular Biology. 215:403-410. PMID: 91039304.

ZHU J and WENG Z, FAST: A Novel Protein Structure Alignment Algorithm. Proteins: Structure, Function and Bioinformatics. Vol. 14, 2005, p.417-423.

LAGO FILHO, J. S.; SANTOS, F. G.; DIAS, S. R. Algoritmo para banco de dados de estrutura de proteínas. In: Simpósio Interdisciplinar Física+Bioinformática, 2009, Ouro Preto/MG. Revista da Física de Ouro Preto - 2009 Resumos do Simpósio Interdisciplinar Física+Bioinformática, 2009. v. 5. p. 24.

BERMAN, H.M.; WESTBROOK, J.; FENG, Z.; GILLILAND, G.; BHAT, N.T. The protein data and Nucleic Acids. 2000; 28:535-542. Disponível em: <http://www.pdb.org>.Acesso em :16 nov.2009. BORTOLOSSI, Humberto José. Cálculo Diferencial à várias variáveis. Uma Introdução à Teoria de Otimização. Rio de Janeiro: Ed. Puc-Rio, 2002.

Referências

Documentos relacionados

As pontas de contato retas e retificadas em paralelo ajustam o micrômetro mais rápida e precisamente do que as pontas de contato esféricas encontradas em micrômetros disponíveis

Portanto, mesmo percebendo a presença da música em diferentes situações no ambiente de educação infantil, percebe-se que as atividades relacionadas ao fazer musical ainda são

esta espécie foi encontrada em borda de mata ciliar, savana graminosa, savana parque e área de transição mata ciliar e savana.. Observações: Esta espécie ocorre

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

da quem praticasse tais assaltos às igrejas e mosteiros ou outros bens da Igreja, 29 medida que foi igualmente ineficaz, como decorre das deliberações tomadas por D. João I, quan-

(essencialmente toalhas adamascadas, damasquilho de linho e algodão, panos de linho e lenços de linho e algodão, desenvolvidos essencialmente em 17 freguesias do concelho

 Exercícios Não Específicos Representativos (NER) – tarefas de treino que não contemplam princípios de jogo específicos do modelo de jogo, independentemente do nível

Redução do estoque de carbono após a exploração florestal, alterações no numero de indivíduos e no estoque de carbono da regeneração natural e danos aos indivíduos