Lidando com datasets minúsculos

Há um tempo atrás, escrevi aqui no Tecnologia Inteligente um artigo onde eu criticava algumas esperanças meio irreais sobre o que se pode fazer com bases de dados (ou datasets, o anglicismo que efetivamente usamos o tempo todo no nosso trabalho :) imensamente grandes. Já neste artigo, pretendo analisar um problema que de certa forma é oposto - o das bases de dados pequenas demais.

Sim! Por incrível que pareça, em uma era onde se fala em “dilúvio de dados” em quase todos os campos da Ciência e terabytes rapidamente caminham para a trivialidade, ainda assim às vezes, em certos casos específicos, a quantidade de dados disponível é muito menor do que poderia ser considerado satisfatório. 

De fato, tive inspiração para escrever este artigo porque nas últimas semanas estava lidando com um dataset biológico muito pequeno, com dados caracterizando apenas seis amostras. Ah, sim, aqui é importante frisar que era um dataset pequeno em número de amostras, mas cada amostra era caracterizada pelos valores de expressão de dezenas de milhares de genes, totalizando um tamanho de uns dois megas.

O que, a propósito, há muito parece um tamanho ridículo em nossa era onde facilmente temos arquivos de vários gigas, mas de qualquer modo já é um tamanho humanamente intratável e que exige análises computadorizadas.

Outro comentário pertinente é relacionado com o fato de que muitos podem achar estranho um dataset biológico ser pequeno, já que a fama é de serem enormes. Bom, o caso é que muitas vezes, para certos problemas, coletar dados de um grande número de amostras pode ser difícil, ou caro, ou ambos. Pense em indivíduos com condições médicas raras, ou então em exames médicos que são caríssimos, e vai ser fácil juntar os pontos para ver como aparecem com razoável freqüencia datasets biológicos minúsculos.

Bom, qualquer que seja o motivo da escassez de amostras, como lidar com esses números reduzidos em um estudo de aprendizagem supervisionada? Eu tenho a seguinte receita de bolo de três passos:

Validação leave-one-out

Depois que são treinados com (duh! :) dados de treino, classificadores são validados com dados de teste que eles nunca “viram”, os famosos out-of-sample.  Dado um conjunto inicial de amostras, existem diversas formas de “produzir” conjuntos de teste e treinamento.

A mais simples delas é simplesmente escolher aleatoriamente uma fração (digamos, 2/3) das amostras para treinamento, e usar o restante para teste.

Uma segunda forma mais sofisticada e confiável, que torna mais improvável a seleção de conjuntos de treino e teste irrealmente favoráveis, é a chamada cross-validation.

Nesta política de validação, o dataset inicial é dividido em n subconjuntos com mais ou menos o mesmo número de amostras, e correspondentemente são feitos n pares de treino e teste: no primeiro par o subconjunto 1 é usado para teste e o restante para treinamento; no segundo par o subconjunto 2 é usado para teste e o restante para treinamento; e assim por diante.

Pois bem, no caso de datasets com pouquíssimas amostras, o ideal é usar o leave-one-out (”deixe um de fora“, numa tradução literal que funciona), que é o caso especial de cross-validation onde n é igual ao número de amostras da base - isto é, a cada par só uma amostra é usada como teste e todas as outras para treinamento.

Esse tipo de validação minimiza ao extremo a probabilidade de formação de pares “privilegiados” de treino e teste, a qual já não é tão pequena assim em datasets minúsculos.

Análise de Permutação:

Vamos supor que você foi cuidadoso na fase anterior de validação, usando leave-one-out, e descobriu que seus classificadores têm um desempenho maravilhoso nos dados, com altas acurácias tanto nos conjuntos de treino quanto de teste.

Mas, se você for realmente rigoroso (alguns diriam paranóico, mas a paranóia quase chega a ser uma virtude na Ciência :), deverá considerar a possibilidade de que talvez seus resultados sejam tão bons porque o número de amostras é pequeno e é fácil para o seu algoritmo decorar algumas propriedades numéricas dos dados que *por coincidência* podem ser usadas para distinguir corretamente as categorias (digamos que casos de controles), mas não necessariamente são relacionados com o problema real que está sendo estudado.

A solução para verificar essa terrível possibilidade é fazer a assim-chamada análise de permutação. Esta é um “embaralhamento”: consiste em trocar aleatoriamente os rótulos de categoria entre as amostras. Gerando muitas permutações diferentes e vendo que as acurácias dos testes feitos com dados “embaralhados” são menores que o resultado obtido com os dados reais, pode-se inferir que as acurácias excelentes devem ser também “reais”, correspondendo a padrões relevantes para o problema investigado.

Nota: aqui estou falando em acurácia - que talvez seja a métrica de qualidade de classificação mais comum, óbvia e intuitiva - mas existem outras métricas, e o que estou dizendo aqui usando acurácia também vale para elas.

Comportamento com métodos não-determinísticos:

Às vezes, nem a análise de permutação pode ser suficiente. Se o dataset for muito pequeno mesmo, o número total de permutações pode ser tão modesto que não permite calcular um alto valor de significância estatística.

No dataset de apenas seis amostras que mencionei, o número de embaralhamentos utilizáveis era de apenas 18. Quando se nota que tradicionalmente o limiar de significância interessantemente para os biólogos é de 0.05, ou uma chance em 20 dos seus resultados serem “falsos”, 18 permutações parecem problemáticas para decidir se seus resultados passam nesse limiar. :) Como então contornar essa forma extrema do problema dos datasets pequenos?

Uma opção interessante pode ser usar um método de classificação não-determinístico (por exemplo GA, GP, vários modelos de redes neuronais, etc) e realizar vários testes de classificação sobre os seus dados reais e sobre os dados permutados.

Um método não-determinístico não necessariamente produz o mesmo classificador com os mesmos dados de entrada, e assim no final essa etapa de validação terá gerado um monte de classificadores diferentes - uns melhores, uns piores que os outros. Interessantemente, agora é possível se falar em comparação de distribuições de acurácias, e não de um dado pontual de acurácia nos dados reais versus um pequeno conjunto de acurácias “embaralhadas”.

Essas distribuições podem ser tão grandes quanto se queira - basta gerar mais classificadores de forma não-determinística - e quanto maior o número de pontos amostrais envolvidos, mais estatisticamente significativa será qualquer discrepância entre as distribuições com e sem embaralhamento.

Moral da história

Enfim, o ideal mesmo em vários processos científicos é trabalhar com números grandes de amostras, mas se as vicissitudes da vida um dia obrigarem você a lidar com datasets minúsculos, não se desespere! Com os macetes descritos há uma boa chance de você espremer (admitidamente de forma um tanto lenta e dolorosa)  alguns padrões confiáveis apesar de tudo; ou na pior das hipóteses demonstrar confiavelmente que seu dataset não presta mesmo. :)

Biotecnologia, Data Mining 0 Comentários

Biocuradores – quem são esses caras?

Saiu na Nature de 4 de setembro de 2008 e na PLoS Computational Biology de 27 de agosto , alguns artigos e comentários sobre o papel dos biocuradores (“biocurators”) na ciência atual.

Mas por que surgiram, quem são e o que fazem esses biocuradores?

Pra começar, eles nasceram com essa grande avalanche de dados, muito falada atualmente, iniciada na última década e com o acesso rápido a todos esses dados por meios eletrônicos.

Um exemplo legal do artigo da Nature: mais de 18 milhões de artigos científicos estão indexados no PubMed, mais de de 260.000 espécies de organismos têm sequências de nucleotídeos depositadas em bases de dados online e foi anunciado recentemente que irão sequenciar 1.000 genomas humanos em três anos para o estudo de SNPs! É realmente um monte de informação pra analisar!

Biocuradores geralmente são biólogos que possuem uma mescla de habilidades que variam desde realizar pesquisas científicas anvançadas, passando por uso e administração de bancos de dados, conhecimento de múltiplos sistemas operacionais e linguagens de script.

Essas habilidades são necessárias exatamente para lidar com essa grande quantidade de dados. Biocuradores lidam com o “raw data”, extraem informações de publicações científicas, marcam, formatam e categorizam os dados e disponibilizam a informação online no final.

Na Plos são citados dois exemplos de biocuradores. Um atua no PDB curando e validando os modelos tri-dimensionais de proteínas lá depositados. Outro no IEDB, um banco de dados sobre imunologia, onde ele extrai informações sobre as sequências desse banco.

Aqui na Vetta, acho que posso dizer que eu o Lúcio e o Kenji compomos o time de biocuradores da Biomind (apesar de eu ser o único biólogo). ;-)

Nas atividades que participo, nós analisamos informações de sets de dados de microarrays, lidando e formatando tabelas com milhares de genes, muitas vezes tentando encontrar notações não redundantes para cada gene e colocando tudo em um formato adequado para rodar as análises de classificação por machine learning. Como diria o Lúcio, é preciso ‘crunchar’ os dados antes de analisar. ;-)

Depois é necessário verificar os resultados, checando as funções de diversos genes em diversas bases de dados, analisando a literatura científica e cruzando as informações pra ver se os resultados obtidos fazem algum sentido biológico.

Dá muito trabalho mas é bastante gratificante, principalmente quando dá certo! ;-)

Biologia, Biotecnologia 0 Comentários

Systems biology – com ‘b’ minúsculo

Apesar da modelagem e simulações de sistemas ser uma prática bastante antiga, o grande aumento de dados e informações sobre sistemas biológicos, especialmente na última década, fez surgir um ‘ramo’ da bioinformática denominado Systems Biology.

Trabalhar com systems biology significa criar modelos e simulações que tentam descrever o funcionamento de moléculas, reações bioquímicas e até sistemas celulares inteiros!

Um dos grandes problemas atualmente na system biology é na modificação e reuso de modelos pré-existentes. Parece que os modelos já criados são muito específicos e de difícil entendimento para quem não participou na sua criação. Na tentativa de sanar tal problema, surgiu a SBML, ou Systems Biology Markup Language, que é um formato comum de troca de dados, que usa XML.

A little b, o assunto do post de hoje, é, diferentemente da SBML, uma linguagem de programação open source desenvolvida no intuito de se criar modelos matemáticos de fácil troca e reúso. Criado na Bauer Center for Genomics Research, little b foi desenvolvida em LISP. A escolha da linguagem foi explicada assim: LISP parece conseguir tratar de problemas de grande complexidade com mais facilidade que outras linguagens.

Mais especificamente, LISP parece abstrair a complexidade biologica mais facilmente em linhas de código de fácil entendimento – acho que os computeiros podem explicar melhor , tem algo a ver com o sistema de macros :-)

Para exemplificar melhor, vai abaixo um exemplo interessante de código little b, que pode ser acessado em um curso-rápido disponibilizado: a isomeração de Glucose 6P (G6P) em Frutose 6P (F6P), reação reversível e parte da via glicolítica, catalizada pela enzima Glucose 6P Isomerase (G6PI) - os bioquímicos vão adorar ;-)

G6P + G6PI <-> G6PI + F6P

Para saber mais sobre little b, acessem diretamente o paper publicado ou então a home page. E boa modelagem a todos!

PS: enquanto isso estou esperando uma resposta do Aneil Mallavarapu, um dos autores da linguagem, pra saber por que a linguagem se chama little b :-)

Biologia, Biotecnologia 1 Comentário

Na Biologia, a moda agora é criar um Wiki

Há um mês atrás eu postei sobre o WikiProteins, que é um Wiki biológico destinado à anotação de proteínas.

Mais recentemente, no início desse mês, a PloS Biology publicou um artigo sobre o Wiki Genes. O Wiki Genes é algo bastante parecido como o WikiProteins, mas voltado para prover informação sobre genes. E é voltado para ser implementado na própria WikiPedia!

A idéia dos caras foi a de colocar uma entrada na WikiPedia pra cada gene humano (e ainda pra alguns organismos modelo como o camundongo). A premissa foi a de que editores de Wikis preferem editar entradas já existentes do que criar novas. Dessa forma, a geração desses stubs (entradas no Wiki com pequenas coleções de informações) deverá alavancar a edição de genes humanos na WikiPedia.

O que eles fizeram foi parsear as entradas de todos os genes presentes no Entrez Gene e gerar cerca de 7500 stubs. Melhor do que as meras 650 entradas que existiam anteriormente. ;-) Aparentemente o resto das entradas ainda está sendo gerado - o Entrez Gene contém informação de 39950 genes humanos - não que esse seja o número total de genes humanos, mas essa é outra história. ;-)

O parser, que foi feito em Java, produz um stub diretamente em “wiki-text” e o código-fonte está disponível.

Também na PLoS saiu bem recentemente um outro artigo sobre um Wiki na área de biologia, dessa vez o Wiki Pathways. Os pathways, na biologia, são uma representação de uma miríade de interações, reações e regulações, seja entre genes, proteínas ou compostos biológicos. Por serem extremamente complexos e difíceis de curar e compilar, a estratégia foi também a de gerar um Wiki.

Aparentemente, com essa enxurrada de dados biológicos sendo gerados à todo vapor (vide as “ômicas” da vida – genômicas, proteômicas,metabolômicas, etc.), a corrente agora é para a integração desses dados, em ferramentas que permitem updates rápidos e fáceis.

E pelo visto, esses novos Wikis são o tipo de ferramenta que vêm a calhar nesse momento, pois tornam os dados acessíveis e editáveis aos curadores especialistas bem como para a comunidade em geral.

Vamos ver se a moda pega.

Biologia, Biotecnologia, Data Mining 0 Comentários

Gnuplot e a complexidade de algoritmos

Esta semana, me peguei usando pela primeira vez o gnuplot. E o mais curioso disto, para analisar, a grosso modo, o comportamento de um programa que recebe como entrada uma matriz de dados, no caso, o haploview.

Não vamos entrar em detalhes aqui, mas o haploview é um aplicativo JAVA usado para estudar haplótipos, e a pergunta que eu tinha que responder era “qual o tamanho máximo de um dataset que eu posso usar dado um heap de tamanho X?”. Lógico que a resposta correta inclui “e se seu cliente te perguntar o que muda se você puder usar isso + X?”.

É interessante porque não é o tipo de pergunta que a gente se faz normalmente. Geralmente, você assume que o tamanho da entrada nunca vai ser grande demais, ou se você alocar um heap grande o suficiente, ainda que ao custo de alguma lentidão por conta do trabalho extra do garbage collector, as coisas funcionarão.

O mais comum são as pessoas fazerem o profiling em busca de gargalos, mas eu não ouço falar muito de gente que tenta descobrir até onde o sistema aguenta.

Bem, não é este exatamente o caso do haploview. É um software de terceiros e nem quem fez o software tem idéia de qual a ordem de complexidade (o big “O”) do sistema, muito menos da capacidade máxima.

E se tratando de dados “bioinformáticos”, sempre é fácil que as coisas se tornem rapidamente grandes demais. E a última coisa que se quer é morrer com um doloroso “OutOfMemory”. Você tem que saber os limites.

Basicamente, um dataset é uma grande matriz de dados, e como o haploview é uma caixa preta, podemos considerar que o número de linhas da entrada (no caso, o número de indivíduos) é uma dimensão e o número de colunas (o número de marcadores) é outra dimensão.

Vamos plotar no gráfico valores em 3 direções: [a] variando apenas o número de indivíduos, [b] variando apenas o número de marcadores e [c] variando ambos, proporcionalmente (diagonalmente). Assim podemos ter uma idéia, ainda que não muito refinada, do comportamento do sistema.

De posse destes pontos, você pode observar uma tendência na relação entre o consumo de memória e a entrada de dados. Conforme a “cara” do gráfico, você pode achar mais adequado tentar interpolar com algum tipo de superfície. No meu caso, uma superfície levemente abaulada ficou bem interpolada com uma superfície polinomial do tipo ax^2 + by^2 + cxy + d. Deu complexidade quadrática na veia.

Nesta hora, o gnuplot se revelou de uma simplicidade franciscana, já que você pode passar para ele uma função e mandar ele fazer o “fit” e achar os valores de a, b, c e d, passando como entrada um arquivo tabular (”data.txt”) com os valores de cada eixo em cada coluna.

set title “Haploview memory usage”
set xlabel “Individuals”
set ylabel “Markers”
set zlabel “Used Memory”
g(x,y) = a*x**2 + b*y**2 + c*x*y + d
fit g(x,y) ‘data.txt’ using 1:2:3:(1) via a, b, c, d
splot ‘data.txt’ using 1:2:3, g(x,y)

Você pode achar útil esta apostila em português sobre o gnuplot, pelo menos até que saia o livro.

Claro que existem uma série de outras boas ferramentas como matlab, R, octave, scilab e etc, mas se você quer algo rápido, gnuplot pode ser uma boa saída. E se for prá gerar coisas bem coloridas e visualmente atrativas prá colocar naquele seu paper, você pode tentar estas opções aqui também, prá ficar com aquela cara de Scientific American ;-) .

Biotecnologia, Desenvolvimento, Visualização Cientifica 2 Comentários

Sobre congressos, uvas e resveratrol (de novo!)

Estou de volta da XXXVII Reunião Anual da Sociedade Brasileira de Bioquímica e Biologia Molecular (SBBq) que aconteceu em Águas de Lindóia – SP semana passada.

Desde que eu me enveredei por essa área científica, há uns 10 anos atrás, tenho ido frequentemente a congressos (mais ou menos um por ano em média). Muitos acham um saco, mas eu acho bom por quatro motivos:

  • Conhecer pessoas - que trabalham com a mesma coisa que você e que fazem coisas completamente diferentes que você.
  • Atualização.
  • Quebra de rotina – que pode ser massacrante ;-)
  • Conhecer novos lugares – é bom viajar, principalmente quando recebemos auxílio financeiro pra isso! :-)

A SBBq tem uma seção só de bioinformática e daí dá pra tentar ver mais ou menos pra onde a área está se enveredando. Grosso modo, deu pra perceber, mesmo com o viés por ser um congresso de bioquímica, que as coisas estão migrando para a área de proteômica – eu vi diversos posters com modelagens 3D de proteínas e proteômica de um modo geral e nenhum sequer sobre microarrays, por exemplo.

Nesse congresso aproveitei para conversar com uma especialista em uvas. A garota se chama Caroline e é lá do Sul, mais especificamente do Instituto de Biotecnologia de Caxias do Sul – RS. O pôster dela me chamou atenção por se tratar de composição do extrato de uvas e eu queria saber a opinião dela sobre o resveratrol. Durante a conversa, deu pra perceber que ela estava bem por dentro do assunto (e depois deu pra saber por que: a moça tem diversos papers sobre estudos de compostos de uvas ).

Daí eu aproveitei pra perguntar se ela tomaria resveratrol em doses orais. A resposta foi bem incisiva: Não. Primeiro porque não existe nada realmente provado que o resveratrol combate o envelhecimento (apesar de proteger os camundongos contra doenças relacionadas a dietas hipercalóricas). E segundo porque as concentrações de resveratrol no vinho e suco de uva são muito menores do que doses orais de resveratrol puro – inclusive, algumas substâncias ditas antioxidantes em doses baixas, se tornam oxidantes em doses maiores, como é o caso da vitamina C.

Então, para os menos radicais, acho que o negócio é ficar só no suco de uva e vinho mesmo ;-)

Depois comento sobre o outro poster que eu vi que enfatiza os malefícios dos produtos da queima do diesel para células do sistema imune – seria uma propaganda para o biodiesel?

Biologia, Biotecnologia 2 Comentários

WikiProteins: um site público para a anotação de proteínas

Está no ar o WikiProteins beta, que é parte de uma iniciativa iniciada anteriormente, o WikiProfessional. A idéia é a mesma do WikiPedia porém voltada para a anotação de proteínas.

A anotação é um processo de caracterização de proteínas, principalmente de sua função. Existem biólogos em constante processo de anotação de proteínas e genes. Esse processo pode se dar em intervalos curtos de tempo, como em projetos genomas, onde diversos novos genes são descobertos e precisam ser anotados. Ou como em projetos de longo prazo, como a anotação de todo o UniProt, por exemplo.

Em ambos os casos todos os tipos de informações sobre genes e proteínas tentam ser coletados, assim como dados de função, localização, informações estruturais, artigos científicos relacionados, etc. O WikiProteins provê exatamente esse tipo de informação de maneira editável por qualquer um.

É claro que foi necessário um esforço computacional inicial pesado pra reunir diversas informações de proteínas e genes em um único pool inicial pra servir de startup pro wiki. E os dados foram minerados de fontes bem confiáveis, como o PubMed, UniProt e BioMed Central.

Os autores fizeram uso de metodologias de text mining/data mining que demandaram a criação de um componente de software, denominado Knowlet. Os Knowlets, segundo os autores, “combinam múltiplos atributos e valores para os relacionamentos entre conceitos” (tradução minha). Mais sobre isso no paper da Genome Biology.

Só pra constar, eu andei testando o WikiProteins com uns genes que o Lúcio me passou ;-) Esses genes parecem ser relacionados com nefropatia em pacientes diabéticos. Mais especificamente o gene PCSK1, que é uma proteína neuroendócrina. O WikiProteins me retornou uma série de informações relevantes e minha impressão é que o site promete.

Infelizmente ele não me retornou exatamente o que eu queria saber - e isso eu obtive com o bom e velho Gene Cards :

…susceptibility gene for non insulin dependent diabetes (type II) and…”

Bom, acho que agora é hora de promover o site e editar o Wiki… ;-)

PS: Ah, esse post foi de dica de um amigo, o Durfan

Biologia, Biotecnologia, Data Mining 0 Comentários

Fold-it: um jogo online em prol da ciência

Lembram do meu último post sobre dois artigos que descrevem a criação bio-computacional de enzimas artificiais? Pois é, o David Baker, autor daqueles papers, lançou uma nova “moda”. Um jogo online chamado fold-it. O objetivo é competir para criar conformações, ou enovelamentos (ou ainda foldings), mais prováveis pra uma proteína. Quanto melhor for o enovelamento, mais pontos o jogador ganha.

A pergunta que voces devem estar fazendo agora é: o que um cientista renomado quer lançando um jogo online? É claro que não é só pela diversão ;-) .

David Baker há anos vem estudando maneiras de computar o enovelamento de proteínas. O motivo é que o enovelamento, ou conformação final de uma proteína, influencia criticamente em sua função.

E criar uma enzima nova requer descobrir exatamente o folding dessa enzima a partir de sua seqüência de aminoácidos. O problema é que essa não é uma tarefa fácil – calcular o enovelamento de um proteína requer efetuar até trilhões de cálculos.

A idéia do jogo começou com o Rosetta, um algoritmo que usa o método de Monte Carlo para predizer a melhor conformação de uma proteína. Já existe há anos um programa de rede distribuída chamado Rosetta@home, que usa computadores voluntários do mundo inteiro com o objetivo de rodar o Rosetta, enquanto ociosos - um screen saver é aberto e mostra como o programa tenta descobrir o enovelamento de diversas proteínas.

Mas os usuários verificavam que esse programa fazia coisas visivelmente idiotas - o que era meio de se esperar, por ser um algoritmo força bruta. A idéia do David Baker foi de, ao invés de usar uma marreta pra solucionar o problema, usar a capacidade de resolver problemas 3D do cérebro humano, usando um jogo.

E o pior é que funciona – houve situações em que o jogador conseguiu achar corretamente a conformação uma proteína, com forma já conhecida, mais rápido que o computador! ;-)

Mas a grande “jogada” do David Baker é fazer com que os jogadores criem conformações novas para proteínas ainda não conhecidas. Essas conformações poderão servir para a síntese de drogas e enzimas ainda não conhecidas, de maneira mais rápida… e divertida ;-)

A pergunta que voces devem estar fazendo agora é: o que um cientista renomado quer lançando um jogo online? É claro que não é só pela diversão ;-) .

David Baker há anos vem estudando maneiras de computar o enovelamento de proteínas. O motivo é que o enovelamento, ou conformação final de uma proteína, influencia criticamente em sua função.

E criar uma enzima nova requer descobrir exatamente o folding dessa enzima a partir de sua seqüência de aminoácidos. O problema é que essa não é uma tarefa fácil – calcular o enovelamento de um proteína requer efetuar até trilhões de cálculos.

A idéia do jogo começou com o Rosetta, um algoritmo que usa o método de Monte Carlo para predizer a melhor conformação de uma proteína. Já existe há anos um programa de rede distribuída chamado Rosetta@home, que usa computadores voluntários do mundo inteiro com o objetivo de rodar o Rosetta, enquanto ociosos - um screen saver é aberto e mostra como o programa tenta descobrir o enovelamento de diversas proteínas.

Mas os usuários verificavam que esse programa fazia coisas visivelmente idiotas - o que era meio de se esperar, por ser um algoritmo força bruta. A idéia do David Baker foi de, ao invés de usar uma marreta pra solucionar o problema, usar a capacidade de resolver problemas 3D do cérebro humano, usando um jogo.

E o pior é que funciona – houve situações em que o jogador conseguiu achar corretamente a conformação uma proteína, com forma já conhecida, mais rápido que o computador! ;-)

Mas a grande “jogada” do David Baker é fazer com que os jogadores criem conformações novas para proteínas ainda não conhecidas. Essas conformações poderão servir para a síntese de drogas e enzimas ainda não conhecidas, de maneira mais rápida… e divertida ;-)



--> Biotecnologia, Inovação, Usabilidade, Visualização Cientifica 4 Comentários

Bioquímica computacional – customizando enzimas

Enzimas são potentes catalizadores. Elas podem tornar a velocidade de uma reação química bilhões de vezes maior. Porém as enzimas foram designadas, ou melhor, moldadas durante a evolução, para catalizar apenas reações que ocorrem em seres vivos.

Dois papers publicados na revista Nature descrevem pela primeira vez um método from scratch para se criar enzimas que catalizam reações químicas não-naturais. O método envolve o uso de técnicas de modelagem computacional, bioquímica e biologia molecular - por exemplo, métodos quantum-mecânicos, o algoritmo de hashing RosettaMatch e evolução in vitro.

Os autores criaram efetivamente uma enzima que consegue catalizar uma reação não-natural, a reação de Kemp (onde um íon de hidrogênio é removido de uma ligação carbono-hidrogênio), até um milhão de vezes mais rápido que a reação não catalizada.

Agora resta criar um método para criar enzimas customizáveis em larga escala. As aplicações, para a indústria farmacêutica por exemplo, são ilimitadas.

Biotecnologia 0 Comentários

Criando Gênios em Laboratório

Muitos já ouviram falar de pessoas com transtornos cognitivos e de desenvolvimento (como autismo) que apresentam desempenho espetacular em algumas tarefas bem específicas (como decorar a lista telefônica, desenhos com alto grau de detalhe, ou cálculos matemáticos). O termo usado nessa condição é savant, e foi retratado em filmes como Rain Man, inspirado na vida de Kim Peek (que tem memória eidética - popularmente conhecida como “fotográfica”).

Em uma das listas relacionadas ao Singularity Institute for Artificial Intelligence (temos um contato próximo: desenvolvemos projetos de IA relacionados e sou um mentor do instituto no Google Summer of Code) está sendo discutido o trabalho de Allan Snyder, um pesquisador da Universidade de Sydney, Austrália, que estuda o uso de estimulação magnética transcraniana of lobo temporal esquerdo para induzir capacidades similares às dos savant em pessoas normais.

Estimulação Magnética Transcraniana

O método é discutido nesse artigo do New York Times, de 2003. Recentemente nos Estados Unidos o canal National Geographic apresentou um documentário chamado “Accidental Genius” sobre esse tema, com experimentos em universitários voluntários.

Nesses experimentos, o desempenho de voluntários em tarefas como ler uma frase com um pequeno erro gramatical, desenhar um cavalo e estimar quantos pontos foram mostrados brevemente numa tela é primeiro avaliado. Depois disso, os voluntários são submetidos a 15 minutos de estimulação magnética transcraniana em pontos específicos do cérebro, e repetem os experimentos.

Os resultados são extremamente curiosos. O nível de detalhe dos desenhos aumenta perceptivelmente; a precisão na estimativa da contagem de pontos dobra. A capacidade de leitura, entretanto, é afetada: a frase com um pequeno erro que era lida normalmente antes do experimento agora causa dificuldade no voluntário.

O documentário pode ser assistido (em inglês) no site do National Geographic (vá no dia 7 de Maio, às 4:00 PM).

Fãs de ficção científica vão com certeza se lembrar do excelente A Deepness in the Sky, de Vernor Vinge, e dos mentats do clássico Duna, de Frank Herbert. Em ambos, pessoas comuns são treinadas e modificadas para se tornarem especialistas em uma determinada área, alcançando desempenho superior até mesmo dos computadores da ficção. Em Duna, esse desempenho é possibilitado por uma droga, sapho; no livro de Vinge, usa-se a mesma estimulação magnética transcraniana estudada por Allan Snyder.

Estarão um upgrades cognitivos disponíveis, talvez para a população em geral, talvez para casos específicos (analistas militares, financeiros, profissionais de determinadas áreas) ? Quais seriam os impactos éticos desse tipo de processo ? Serão tais medidas (bem como o uso de medicamentos supostamente capazes de aumentar o desempenho intelectual, os chamados nootrópiocos) tratadas como o doping com esteróides anabolizantes é hoje no esporte ? Perguntas interessantíssimas…

Biotecnologia, Ciências cognitivas 4 Comentários

« Previous Entries