Métodos de Codificação de Proteínas para Uso com Redes Neurais Artificiais

André Luis Debiaso Rossi1, Maria Angélica de Oliveira Camargo Brunetto2
1,2

Departamento de Computação, Universidade Estadual de Londrina (UEL), Brasil

Resumo - A classificação de proteínas é uma tarefa que requer alto custo computacional. Diferentes métodos são utilizados para esta classificação, sendo um deles as Redes Neurais Artificiais. Para uso desta abordagem é necessário a codificação do alfabeto representando os aminoácidos em valores numéricos. Nesse contexto, esse trabalho tem como objetivo analisar dois diferentes métodos de codificação: usando uma função hashing denominada n-gram e outro usando uma escala de hidrofobicidade dos aminoácidos. Os métodos foram implementados e testados para várias proteínas do banco de dados PDB e pode-se observar que o método usando n-gram tem maior custo computacional, porém é o método que obteve melhores resultados na literatura e pode ser adaptado para diferentes valores de n a serem testados na tarefa de classificação. Palavras-chave: codificação, classificação de proteínas, n-gram, hidrofobicidade. Abstract - Protein classification is a task that requires high computational cost. Among the different ways to perform such classification, there are those based on Artificial Neural Networks. Using this approach requires codifying the alphabet that represents the amino acids in numerical values. In this context, this work aims to analyze two different codification methods: using a hashing function named n-gram and other using an amino acids hydrofobicity scale. The methods have been implemented and tested for several proteins from the PDB database and it was observed that the method using n-gram presents a higher computational cost, however it's the method which obtained better results in literature and can be adapted for different values of n to be tested on the classification task. Key-words: codification, protein classification, n-gram, hydrofobicity.

Introdução Os esforços despendidos no seqüenciamento de diversos organismos proporcionaram o surgimento, em ritmo acelerado, de enormes bancos de dados biológicos, principalmente de DNA, RNA e proteínas. Um fator importante no projeto genômico é a mineração desses dados para a obtenção de maiores informações sobre esses organismos. A bioinformática se tornou essencial no objetivo de manipular esses dados a fim de extrair conhecimento, tornando possível a criação de novos medicamentos e tratamentos de doenças genéticas [1], [2] e [3]. Em se tratando de proteínas, há nos bancos de dados públicos um enorme número de seqüências. Cada proteína é formada por seqüências de aminoácidos, sendo estes representados por um alfabeto composto de 20 letras [4]. Diversos modos de classificação estão sendo realizados para facilitar o entendimento e a análise destas proteínas, sendo as redes neurais artificiais

uma abordagem utilizada para esse propósito. Dentre outras abordagens conhecidas podemos citar as ferramentas de alinhamento, como a BLAST (Basic Local Align Search Tool) [5], as cadeias ocultas de Markov (Hidden Markov Models - HMM) [6] e os algoritmos genéticos. Alguns estudos realizados por Wu et al (1996) com redes neurais e programas clássicos utilizados em bioinformática, como é o caso do BLAST, obtiveram taxas de exatidão muito próximas, porém o desempenho das redes neurais é muito superior, devido ao fato do tempo de processamento não estar confinado ao tamanho das seqüências. Para utilizar as redes neurais como abordagem de classificação de proteínas, é necessário realizar a codificação do alfabeto que representa os aminoácidos em valores numéricos, pelo fato das redes aceitarem apenas variáveis numéricas como dados de entrada. Métodos de Codificação O método de codificação constitui uma das

Foram obtidas amostras de cinco diferentes grupos funcionais (hydrolase(o. é utilizado um tipo de função hashing denominada n-gram nas seguintes interpretações das seqüências: a) grupo de troca.org . e a partir dessa interpretação os dados são codificados. BC. Utilizando-se. b) implementação. 3) Extração da seqüência e contagem de freqüência dos aminoácidos. 4) Montagem da matriz de entrada da rede. Cada grupo constituiu um arquivo no formato FASTA.br/pdb http://www. o préprocessamento dos dados de entrada. de acordo com um sentido biológico ou pela sua própria seqüência linear.rcsb. são utilizados com os seguintes objetivos gerais: a) minimizar o tempo de processamento. O grupo estrutural refere-se a grupos de proteínas que mantém as mesmas similaridades estruturais e o grupo de hidrofobicidade indica as proteínas que mantém um grau de repulsão à água semelhantes. bigram (2-gram) para extração da string ABCDEFGHIJ. As seqüências de aminoácidos podem ser interpretadas de diferentes formas. em particular para substring matching [9]. Em Wu et al. contendo todos os possíveis n-grams (para o n escolhido). [2] e [8]) para as seqüências de aminoácidos. CD. oxygen transport e toxin) e 100 proteínas de cada grupo funcional. c) pósprocessamento dos resultados obtidos. lyase. immunoglobulin. FG. por exemplo. Um projeto para classificação de proteínas utilizando redes neurais está sendo desenvolvido no laboratório de pesquisa PROTEM do Departamento de Computação da Universidade Estadual de Londrina. GH.biojava. são arranjos particularmente estáveis de diversos elementos de estrutura secundária e das conexões entre eles [4]. Os n-grams possuem a vantagem de permitir que o tamanho da seqüência apresentada à rede não varie e torna possível a classificação baseada na localização de regiões de similaridade das proteínas [8]. 2) Leitura dos arquivos FASTA e união das cadeias das seqüências. Um exemplo deste formato é mostrado na Figura 1. A etapa 1 consistiu em obter as seqüências de resíduos de aminoácidos por meio do repositório de proteínas do site PDB1 (Protein Data Bank). extraída do banco de dados PDB Essa seqüência refere-se à proteína de identificação 1ABT no site PDB que é formada por duas cadeias. além da seqüência linear de aminoácidos. que mantém grupos de pesquisa em informática na saúde. Esse projeto pode ser dividido de forma genérica em três etapas: a) préprocessamento dos dados de entrada. perfazendo um total de 500 proteínas.principais fases para que se obtenha alta taxa de exatidão e um melhor desempenho da rede neural durante o processo de classificação [8]. A implementação do processo de codificação utilizando n-grams pode ser dividido nas seguintes etapas: 1) Obtenção das seqüências de aminoácidos no formato FASTA (FAST-All). Metodologia Inicialmente realizou-se um estudo da literatura de diversos métodos de codificação utilizados no processo de classificação de proteínas usando redes neurais. b) garantir a não ocorrência dos falsos negativos. HI. que utilizaram o método de extração n-gram ([1] e [8]) e a escala de hidrofobicidade ([1]. ou seja. Wombacher e Fankhauser (2005). A e B.). treinamento e teste da rede. O grupo de troca refere-se a aminoácidos que podem ser substituídos por outros aminoácidos sem alterar a estrutura protéica. (1996) também é utilizado n-grams em motifs ( motivos ) de proteínas [7]. b) grupo estrutural. IJ. Nos trabalhos apresentados em [1] e [8]. Os n-grams.org. Os n-grams de uma forma simples é uma maneira de representar uma cadeia longa de string em muitas substrings de tamanho n.g. segundo Mahleko. Para a realização da etapa 2 foi utilizada a linguagem de programação Java e a classe biojava2 1 2 http://www. DE. Este artigo descreve a primeira etapa. Serviram como base para a codificação das seqüências de aminoácidos os trabalhos de [1]. Essa função tem sido utilizada na indexação de textos. c) minimizar o número de falsos positivos. Os motivos ou simplesmente dobras. sendo a cadeia A formada por 74 aminoácidos e a cadeia B por 12 aminoácidos. [2] e [8]. >1ABT:A|PDBID|CHAIN|SEQUENCE IVCHTTATSPISAVTCPPGENLCYRKMWCDAFCS SRGKVVELGCAATCPSKKPYEEVTCCSTDKCNPH PKQRPG >1ABT:B|PDBID|CHAIN|SEQUENCE KHWVYYTCCPDT Figura 1 Arquivo FASTA da proteína de identificação 1ABT. É possível observar através da literatura avanços na taxa de exatidão devido a diferenças no esquema de codificação utilizado. teríamos como resultado as seguintes substrings: AB. EF. c) grupo de hidrofobicidade.

75 Hidrofílico N -3. como visto no exemplo de um trecho do arquivo FASTA mostrado anteriormente.6 0.5 0. O diagrama mostrado na Figura 3 apresenta sinteticamente as etapas 2.5 0.55 Neutro Y -1. A extração e contagem da freqüência usando 2-gram foi realizada por meio de um conjunto de programas em Perl denominado NSP4 (Ngram Statistics Package).00 Hidrofílico freqüência do 1º aminoácido Figura 2 Formato do arquivo gerado pelo count. própria para chamadas de programas desenvolvidos nessa linguagem. n-gram) [8]..45 Neutro S -0. 1]. Arquivo FASTA Leitura e concatenação Arquivos Texto Montagem Matriz Arquivos Texto Contagem Freqüência Figura 3 .30 Hidrofóbico A +1..05 Hidrofóbico V +4.5 0. 3 e 4 que foram aplicadas neste método.15 Hidrofóbico F +2.d.10 Hidrofóbico L +3.umn. 3-gram.8 0. que foi utilizada em Weinert e Lopes (2003) para codificar os 20 aminoácidos em uma representação numérica.90 Hidrofílico K -3.80 Hidrofílico E -3. que permite identificar n-grams em textos.20 Hidrofóbico C +2. também denominada escala KD.8 0.pl que já realiza a extração e a contagem de freqüência para o grau de extração especificado por parâmetro (2-gram. obtém-se 400 substrings.8 0. De forma genérica o total de padrões é dado por mn. . http://www.scilab. para que estes pudessem cumprir o papel. Na etapa 4.9 0. Esta classe provê um framework para processamento de dados biológicos para a linguagem Java.50 Neutro W -0.25 Hidrofóbico M +1. sendo que o bigram de maior freqüência recebeu o valor 1 e as demais ficaram em razão da maior.95 Hidrofílico R -4. foi especificado um formato para arquivos texto.. pudessem ser utilizados pelo sistema desenvolvido em Scilab.. que foram concatenadas formando apenas uma seqüência e posteriormente gravada em um novo arquivo com os resíduos de aminoácidos na forma abreviada.html Pacote de software científico para computação numérica. uma matriz contendo as freqüências de bigrams das seqüências foi criada.60 Neutro P -1. O único programa utilizado desse conjunto foi o count. As freqüências foram convertidas para o intervalo total de bigrams 85 THR<>CYS<>4 8 12 CYS<>PRO<>3 12 9 CYS<>SER<>2 12 6 VAL<>THR<>2 6 9 bigrams dos aminoácidos freqüência do bigram freqüência do 2º aminoácido [0.pl 3 4 5 Guide User Interface http://www. Os bigrams que não apareciam na seqüência tiveram suas freqüências atribuídas como zero.7 0. no formato observado na Figura 2. e gera um arquivo com os bigrams extraídos e a freqüência de cada um.5 0. incluindo objetos para manipulação de seqüências biológicas. ferramentas para fazer GUIs3 para análise de seqüências. 3-gram.9 0.Diagrama das etapas de codificação usando n-gram Tabela 1 Valores reais atribuídos a cada aminoácido conforme escala de hidrofobicidade Aminoácido Escala KD Valor Real Categoria I +4.70 Hidrofílico Q -3.0 1. Foi necessário que os dados produzidos pelo sistema em Java.4 0.3 0. utilizando-se a codificação bigram. além de rotinas estatísticas e outras.65 Neutro H -3.9 0.5 0.8 0. conforme a Tabela 1. Sendo o alfabeto dos aminoácidos constituído por 20 letras.2 0.para auxiliar no processo de leitura do arquivo FASTA..org/ ..35 Hidrofóbico G -0. Para realizar o intercâmbio de dados. As proteínas estavam separadas em cadeias de seqüência. que continha as seqüências de aminoácidos de todas as cadeias de uma determinada proteína. ngram). por meio de uma função do sistema denominada perl. O programa em Perl foi executado diretamente do Scilab5.2 0.40 Neutro T -0.. utilizando três letras para cada aminoácido.5 0.edu/~tpederse/nsp.85 Hidrofílico D -3. onde m é o número de letras diferentes do alfabeto e n é o grau de extração escolhido (2-gram. O segundo método é a codificação utilizando a escala de hidrofobicidade elaborada por Kyte e Doolittle (1982).

0 6. utilizando os motivos das proteínas juntamente com sua seqüência linear em n-grams. C.0 10. Ermongkonchai.5 n t k (1) Assim o número máximo de subconjuntos será dado pela proteína constituída pelo maior número de aminoácidos. de forma que esta consiga aprender a realizar o mapeamento entre os dados de entrada e saída. Discussão e Conclusões Antes de utilizar as redes neurais como forma de solução é necessário realizar uma abstração do problema em questão. Os resultados estão separados por classes funcionais das proteínas e podem ser observados na Tabela 2. como os n-grams.C. S. Se a equação (1) não resultar em um número inteiro. O mesmo conjunto de proteínas e conseqüentemente os mesmos arquivos FASTA do método de codificação anterior foram utilizados.5 48. Seja k um número determinado de aminoácidos presentes em cada subconjunto. e t o número de aminoácidos que constituem a proteína.5 167. e o número de redes necessárias é determinado pelo maior valor de n encontrado. Para a utilização no processo de classificação de proteínas há diversas formas de realizar a interpretação das proteínas para que dados em formato apropriado possam ser passados como entrada para a rede. Tabela 2 . Cada rede neural necessária para treinar esse conjunto de dados deverá ser constituída por k entradas. fez-se necessário a divisão das seqüências de proteínas em subconjuntos. In: ANNA 91: Proceedings of the conference on Analysis of neural network applications. uma determinada interpretação biológica ou por meio de um esquema de codificação híbrido como.. Esses dados podem ser a seqüência linear de aminoácidos. Codificação utilizando a escala de hidrofobicidade Arquivos Texto A grande diferença de tempo entre os métodos propostos pode ser justificada principalmente pelo fato de que o método que utiliza n-grams necessita de uma etapa para montagem das matrizes de entrada. Chang. .0 127. W. 29 41. Artigos em Revistas e Anais e Capítulos de Livros Wu. (2003). Em todo o processo de codificação foi utilizada apenas a linguagem Java e a classe biojava. Para cada proteína é feito um produto cartesiano entre a matriz contendo as 400 combinações possíveis do alfabeto dos aminoácidos utilizando 2-gram com a quantidade de bigrams encontrados em cada proteína. Lopes. A.5 8. 1. New York: ACM Press. Para se obter uma boa taxa de exatidão na classificação de proteínas é necessário conseguir extrair características que contenham informações importantes para o processamento da rede. A Figura 4 mostra o diagrama das etapas de codificação para este método.0 849. o número de subconjuntos necessários para uma proteína é dado pela equação (1). Protein classification using a neural network database system . R.H.0 231. Weinert..0 8. Esses dados serão utilizados como entrada para as fases de treinamento e teste das redes neurais artificiais. (1991).Tempo de processamento para os diferentes métodos de codificação implementados Classe funcional Hydrolase Lyase Oxygen-Transport Toxin Immunoglobulin Total n-gram Hidrofobicidade 164. p. H. T..Diagrama da codificação utilizando a escala de hidrofobicidade Resultados Os métodos de codificação utilizando n-grams e a escala de hidrofobicidade dos aminoácidos foram implementados e testados com as amostras de proteínas obtidas do site PDB. Destes testes foram extraídos os tempos (em segundos) necessários para o processamento. Os dados de saída gerados pelo sistema são conjuntos de números reais que representam de forma numérica o alfabeto dos aminoácidos presentes nas proteínas. por exemplo. Como dito anteriormente a fase de codificação constitui uma das principais etapas para alcançar sucesso na aprendizagem da rede neural.0 160. deve-se desprezar a parte fracionária. ignorando assim uma parte dos aminoácidos.Como cada proteína possui um número variado de aminoácidos em sua seqüência e não foi utilizado nenhum método de contagem de freqüências.0 16. que realizarão a classificação de proteínas utilizando essas informações. Aplicação de um sistema neural ao problema de Arquivo FASTA Leitura e concatenação Figura 4 .

Wombacher. and McLarty. (1982). C. A simple method for displaying the hydropathic character of proteins .. B. Bioinformatics-An introduction for computer scientists .com. São Paulo. Peptídeos e Proteínas .br. Nelson. S. 2-8. Washington: IEEE Computer Society. 109--118. C. Whitson. 36. 215 p.. ed. In: Lehninger Princípios de Bioquímica.. Altschul. Protein classification artificial neural system . E. . I. ACM Comput. New York: ACM Press. v. & Lipman.. J. Telefone de contato: (43) 9134-2857. 1.L. 2. n. 3a. R. Fankhauser. (1996). no. 14. CABIOS. J. Confernce on e-Technology. P. Ermongkonchai.W.R. S. Contatos Professora Dra. 12. Process-annotated Service Discovery facilitated by an n-gram based index . E-mail para contato: angelica@uel. e-Commerce and e-Service. v. 667 677.. v.. Surv.. Journal of Molecular Biology. p. São Paulo: Sarvier. E-mail para contato: andrerossidc@yahoo. Zhap. H. A. Gish. H. p. (2004). (2005)..... Bioinformatics. M. C. (2002).. 85 90.105-132. W. In: Anais do VI Congresso Brasileiro de Redes Neurais. Aminoácidos.. Wu. Cohen. J.. S. W. Motif identification neural design for rapid and sensitive protein family search. 89-122. 122-158. p. (1998) Profile hidden Markov models. Mclarty. D.. T. D. p. Doolittle. Protein Science. Myers. (1990) Basic local alignment search tool. Miller. p.M. p. André Luis Debiaso Rossi é graduando do quarto ano de Ciência da Computação da Universidade Estadual de Londrina.. J. In: IEEE Intl. Chang.:403-410. 157. v. 755-763.classificação de proteínas .F. v. J.. Lo. G. J. Cox.br. C. A. Mahleko. Chen. L. p. Eddy. Biol. Wu. Maria Angélica de Oliveira Camargo Brunetto é professora do curso de Ciência da Computação da Universidade Estadual de Londrina e coordenadora do laboratório PROTEM. p. v. Telefone de contato: (43) 3371 4605.9.J. Mol. (1992). Kyte.