- Um estudo que treinou um Transformer com 22 milhões de dados de enzimas para prever a função de 450 enzimas desconhecidas foi publicado na Nature Communications e alcançou interesse no top 5% do Altmetric, mas um preprint de acompanhamento que verificou erros em larga escala recebeu muito menos atenção
- A previsão de função enzimática parece ser um problema de acertar o número EC a partir da sequência de aminoácidos, mas na prática a avaliação exige evidências biológicas como similaridade estrutural, contexto genético ao redor, docking de substrato e coocorrência em vias metabólicas
- Entre as 450 previsões “novel”, 135 já existiam no UniProt, e 148 exibiam padrões biologicamente estranhos, como a repetição da mesma função muito específica até 12 vezes
- O caso de yciO mostra que desempenho no conjunto de teste e algumas poucas validações in vitro não são suficientes; yciO é estruturalmente parecido com TsaC, mas estudos anteriores e diferenças na atividade enzimática indicam que não desempenha a mesma função central
- Modelos de aprendizado supervisionado podem ser úteis para propagar rótulos de funções conhecidas dentro do mesmo grupo funcional, mas têm limites para descobrir funções realmente desconhecidas, e rótulos incorretos podem continuar se espalhando por bancos de dados como o UniProt e por treinamentos futuros de modelos
Contraste entre o artigo sobre previsão de enzimas por IA e a verificação posterior
- O estudo original treinou e avaliou um modelo baseado em Transformer com um conjunto de dados de 22 milhões de enzimas com números EC e depois previu a função de cerca de 450 enzimas cuja função era desconhecida
- Foi publicado em Functional annotation of enzyme-encoding genes using deep learning with transformer layers | Nature Communications e registrou 22.000 visualizações e interesse no top 5% de toda a produção científica segundo o Altmetric
- O artigo de verificação posterior Limitations of Current Machine-Learning Models in Predicting Enzymatic Functions for Uncharacterized Proteins | bioRxiv encontrou erros graves e centenas de resultados com grande chance de estarem errados nas previsões do artigo original, mas não recebeu tantas visualizações nem citações quanto ele
- Esse caso mostra como é difícil avaliar a validade de resultados de IA em biologia sem profunda especialização no domínio
Por que é difícil prever a função de enzimas
- As enzimas catalisam reações em organismos vivos, e o número da Enzyme Commission (EC) classifica hierarquicamente milhares de funções enzimáticas
- Como a entrada é a sequência de aminoácidos que compõe a proteína e a saída é o número EC, o problema parece se encaixar bem em machine learning
- O UniProt reúne mais de 22 milhões de enzimas com números EC, o que permite usá-lo como um grande conjunto de treinamento
- Porém, determinar a função enzimática não depende apenas de similaridade de sequência ou estrutura, e relações evolutivas com divergência funcional são uma armadilha comum
A abordagem com Transformer e os resultados aparentes
- O artigo da Nature Communications usou um modelo de deep learning com Transformer para prever a função de enzimas cuja função antes era desconhecida
- A arquitetura do modelo, adotada a partir do BERT, é composta por dois codificadores Transformer, duas camadas convolucionais e uma camada linear
- Os pesquisadores verificaram se as regiões com maior attention tinham significado biológico e concluíram que o modelo aprendia significado fundamental e também oferecia interpretabilidade
- Em um conjunto de dados com milhões de entradas, foi usada uma divisão padrão entre treino, validação e teste, e o modelo foi aplicado a um conjunto sem ground truth para gerar cerca de 450 novas previsões
- Destas, três foram escolhidas aleatoriamente para testes in vitro, e foi confirmado que as previsões estavam corretas
Erros revelados e padrões de repetição
- A análise posterior concluiu que centenas das previsões “novel” do artigo da Nature Communications quase certamente eram erros
- O artigo original teve bom desempenho em um conjunto de teste reservado, mas investigações posteriores encontraram possibilidade de vazamento de dados
- Entre os 450 resultados “novel”:
- 135 já estavam registrados no UniProt, então na prática não eram novos
- 148 exibiam um padrão anormal em que a mesma função enzimática muito específica se repetia até 12 vezes em genes de E. coli
- Essas repetições não são biologicamente plausíveis, e viés, desequilíbrio de dados, falta de atributos relevantes, limitações de arquitetura e calibração insuficiente de incerteza podem levar o modelo a forçar rótulos frequentes dos dados de treino
- YjhQ foi previsto como mycothiol synthase, mas E. coli não sintetiza mycothiol
- YrhB foi previsto como sintetizando um determinado composto, mas esse composto já havia sido atribuído à enzima QueD, e E. coli mutante para QueD não consegue sintetizá-lo, mostrando que essa não é a função de YrhB
O papel do conhecimento de domínio mostrado pelo caso de yciO
- yciO, um dos alvos dos testes in vitro, era uma enzima estudada havia mais de 10 anos pelo Dr. de Crécy-Lagard
- O artigo original concluiu que yciO tinha a mesma função de TsaC, mas pesquisas anteriores não sustentam isso
- TsaC é um gene essencial em E. coli, e como yciO existe no mesmo genoma, mesmo sua superexpressão não elimina a essencialidade de TsaC
- A atividade de yciO relatada por Kim et al. era mais de quatro ordens de magnitude menor que a de TsaC, ou seja, mais de 10.000 vezes mais fraca
- yciO e TsaC são estruturalmente parecidos, e yciO evoluiu a partir do ancestral de TsaC, mas a diversificação funcional após duplicação gênica é comum na evolução de proteínas e enzimas
- Para classificar a função de uma enzima, além da similaridade estrutural, também são importantes as seguintes evidências
- contexto de vizinhança do gene
- docking de substrato
- coocorrência de genes em vias metabólicas
- outras características da enzima
A distinção entre “propagar funções conhecidas” e “descobrir funções realmente desconhecidas”
- Na identificação da função enzimática, há dois problemas diferentes misturados
- propagar rótulos de funções conhecidas para enzimas do mesmo grupo funcional
- descobrir funções que são realmente desconhecidas
- Modelos de machine learning supervisionado, por definição, não podem ser usados para prever a função de verdadeiros desconhecidos
- Machine learning pode ser útil para propagar funções conhecidas para enzimas adicionais
- Porém, podem ocorrer os seguintes erros
- deixar de propagar um rótulo que deveria ser propagado
- propagar um rótulo que não deveria ser propagado
- erros de curadoria
- erros experimentais
- Se uma função incorreta entra em bancos de dados online centrais como o UniProt, ela pode ser reutilizada como dado de treino para modelos futuros, espalhando ainda mais o erro
- Esse problema pode crescer com o tempo
A baixa recompensa para pesquisas de validação de dados
- O trabalho de construir modelos de IA recebe mais recompensa e apoio do que o trabalho de inspecionar cuidadosamente os dados de base e integrar conhecimento profundo de domínio
- Everyone Wants to do the Model Work, not the Data Work tratou de dezenas de profissionais de machine learning envolvidos em projetos de IA de alto risco e apontou a falta de especialização adequada no domínio da aplicação como uma das principais causas de falhas graves
- Avaliar resultados de IA fora da própria área de especialidade pode ser muito difícil ou impossível
- Muitos artigos de deep learning acabam sendo lidos sem que especialistas do domínio tenham revisado minuciosamente a qualidade dos resultados
- Verificar centenas de previsões de enzimas é menos glamouroso do que construir um modelo de IA, mas pode ser mais importante para a qualidade do resultado
- Um sistema de incentivos que se concentra de forma desproporcional em soluções chamativas de IA pode sacrificar a qualidade dos resultados
1 comentários
Opiniões no Hacker News
Já passei por algo parecido. Joguei BERT em dados de enzimas, e ele parecia ok na avaliação, mas no ambiente real deu totalmente errado. Foi um caso clássico de “overfitting ao clima”
Sinceramente, para uma classificação simples, eu escolheria SVM ou regressão logística a qualquer momento. Transformers são legais, mas, se os dados não forem muito limpos, eles falam besteira com confiança. É parecido com dar ao GPT uma prova de múltipla escolha sem sentido: ele escolhe alguma coisa e fala com toda a segurança
Hoje em dia, vou mais na linha de pegar só embeddings de um modelo grande e colocar um classificador simples por cima. Funciona melhor, é mais rápido e faz menos barulho
Antes de pedir que uma IA faça pesquisa, talvez seja preciso primeiro fazê-la reproduzir pesquisa. Por exemplo, dar a ela um artigo sobre uma técnica de deep learning e fazê-la criar a implementação desse artigo
Se ela não consegue fazer isso, não há motivo para esperar que consiga gerar ideias novas
Fraude acadêmica é rara, mas não inexistente. LLMs, ao menor espaço, inventam dados e mentem
Ouvi falar de um pesquisador que passou 6 meses verificando os resultados de um artigo publicado. No fim, tudo o que recebeu foi um “obrigado por apontar isso”
Ele disse calmamente: “alguns trabalhos são importantes não porque aparecem, mas porque impedem que outras pessoas sigam pelo caminho errado”
Acredito que, se não há disposição para verificar cuidadosamente se as previsões batem com a realidade, por mais impressionante que a tecnologia pareça, ela não passa de uma ilusão passageira
A parte “investigações posteriores indicaram que talvez houvesse vazamento de dados” parece ser frequentemente esquecida. Até aparecerem fortes evidências em contrário, todos deveriam presumir vazamento de dados
A responsabilidade não é do leitor ou do cético provar que há vazamento; é dos autores demonstrar que não há
Em datasets pequenos, vazamento de dados acontece facilmente. Mesmo em datasets que você consegue inspecionar visualmente por inteiro, vazamentos entram com muita facilidade e, em geral, sem que a própria pessoa perceba. Elementos sutis estragam os dados com facilidade
Agora lidamos com datasets enormes que nenhuma pessoa tem chance de revisar por completo. Também sabemos que os métodos de filtragem são imperfeitos; então como alguém passa a acreditar que não há vazamento? Dá para dizer que foi filtrado, mas não dá para dizer que não há vazamento
Além disso, mesmo em datasets acessíveis, continuamos encontrando contaminação. Na prática, continuam surgindo evidências de que esse tipo de coisa acontece com frequência
Então por que seguimos presumindo que não há contaminação? É por causa do hype? Sinceramente, soa como uma mentira que contamos a nós mesmos porque queremos acreditar. Não dá para consertar esse problema nos enganando
Por exemplo, a taxa de pagamentos indevidos do Medicare e do Medicaid foi de 7,66%. É uma escala de bilhões de dólares e há espaço para melhorar, mas isso não significa que o sistema inteiro tenha fracassado. Em 93% dos casos, a cobertura ocorre como pretendido
O mesmo pode valer para esses modelos. Se a taxa de contaminação é de 10%, o sistema inteiro é ruim, ou isso está dentro de um nível tolerável?
[1]: https://www.cms.gov/newsroom/fact-sheets/fiscal-year-2024-im...
Saiu exatamente o que eu vinha prevendo: https://news.ycombinator.com/context?id=44041114 https://news.ycombinator.com/context?id=41786908
É igual a “IA sabe programar”. Se o problema não está no conjunto de treinamento, ela continua falhando de forma espalhafatosa, e as pessoas se surpreendem todas as vezes
Ela não consegue lidar com as partes difíceis, como arquitetura, design e revisão, mas consegue absorver uma quantidade enorme das partes repetitivas e já resolvidas que consomem a maior parte do tempo dos engenheiros. Como a garantia de qualidade fica com humanos, é perfeitamente possível aumentar a produtividade de 2 a 5 vezes sem perda de qualidade
Mas, sem gestão e sem verificação, ela não consegue substituir corretamente o trabalho completo de nenhum ser humano. Ainda não está nem perto disso
“Na maioria dos artigos de deep learning que li, um especialista no domínio não examinou minuciosamente os resultados para verificar a qualidade das saídas. Quantos artigos que parecem impressionantes à primeira vista não resistiriam a uma verificação rigorosa?”
Será mesmo? Li alguns artigos de IA na minha área e sei que muitos outros especialistas de domínio também leram bastante. Dito isso, parece que trabalhos baseados em ciência da computação e software em geral são mais fáceis de verificar do que os de biologia. Ou talvez seja só porque sei muito pouco de biologia
Ninguém vai apostar 3 a 5 anos da carreira para verificar previsões arbitrárias de um modelo
Quando faço isso, costumo encontrar erros nos rótulos corretos bem rapidamente. Claro que a maioria dos modelos não é boa o bastante para que esses erros afetem muito os resultados
Não se deve chamar Nature Communications de “Nature”. O prestígio é completamente diferente. E métricas alternativas também não são tão relevantes assim, a menos que se queira medir o excesso de empolgação popular
Isso bate bem com minha experiência limitada com LLMs como pesquisador. A compreensão aparente da linguagem escrita e a formulação das frases são muito impressionantes
Mas chegar à melhor resposta possível, especialmente para perguntas ainda não resolvidas, é outra coisa. Para uma pergunta na qual eu poderia gastar meio dia e ainda assim não chegar a uma conclusão, uma resposta dada quase instantaneamente raramente é satisfatória
Perguntas complexas precisam de tempo para exploração. Até agora, mesmo em situações em que um LLM deveria não conseguir chegar a uma conclusão por falta de capacidade, ele tende a dar uma resposta que parece confiante, às vezes completamente errada, em vez de reconhecer que a questão continua sem solução
É um ótimo texto da Rachel Thomas
Isso parece mais um argumento de que, como o deep learning depende de dados de treinamento que são uma representação com muita perda do domínio fundamental, no fim ele funciona apenas como busca generativa de informações. Ou seja, é um papagaio estocástico
Como dados genéticos ou rótulos nem sempre representam perfeitamente a biologia, que é o domínio fundamental, as saídas podem ser falsas, inválidas ou sem sentido
Quando funciona muito bem, há vazamento de dados. Isso porque LLMs são, por projeto, ferramentas de busca de informação. Do ponto de vista da teoria da informação, existe em qualquer modelo um “não sabe que não sabe” fundamental
Minha conclusão é que isso tem mais a ver com falhas do conjunto de dados de treinamento do que com falhas do algoritmo
Humanos funcionam de forma flexível no domínio da linguagem natural, e até uma criança consegue ler e avaliar se um texto faz sentido. Isso explica o sucesso de modelos treinados com processamento de linguagem natural
Mas, em áreas em que os dados de treinamento representam o domínio fundamental de forma com perdas, eles inevitavelmente serão incompletos
O espaço de embeddings pode representar relações entre palavras, frases e parágrafos, e essas coisas podem conter informações sobre o domínio fundamental; por isso, ao consultar essas relações em forma de texto, é possível obter respostas plausíveis. O problema é que o texto é uma forma bagunçada de codificação, então nem sempre fica claro o que essas relações representam
Outra fraqueza é o fato de serem generativos. Para torná-los generativos, em vez de codificar rigidamente em um banco de dados todas as perguntas e respostas possíveis, parte dos dados é delegada ao algoritmo, isto é, à previsão do próximo token. Isso permite perguntas e prompts imprecisos, mas probabilísticos, e traz a vantagem de poder perguntar qualquer coisa
Mas nenhum algoritmo único consegue codificar com precisão todas as respostas possíveis para todas as perguntas possíveis de um domínio. Por isso, parte da precisão da informação se perde. É assim que vejo os LLMs atuais
Basta pensar em como trabalha um desenvolvedor júnior abaixo da média ou mediano em programação. Ele “busca” informações para resolver problemas no Stack Overflow ou em tutoriais
Dar a todo desenvolvedor uma ferramenta de automação de IA bem feita é parecido com colocar ao lado de cada um um desenvolvedor júnior para delegar tarefas chatas e simples. Também não há a preocupação de que o júnior deixe de crescer por ficar preso a tarefas simples. Se houver ferramentas suficientes, como análise estática de código e testes, a ferramenta de IA provavelmente executará bem o ciclo de trabalhar, rodar as ferramentas e corrigir problemas
O preço dessa ferramenta não é algo como 1/30 do custo de um desenvolvedor júnior? Então dá para dedicar mais tempo a coisas importantes, inclusive ensinar desenvolvedores júnior de verdade
Não acho que a IA já tenha chegado totalmente lá, mas talvez os modelos de base atuais, se conectados e combinados corretamente, já sejam suficientes para chegar a esse ponto
O texto aponta bem um dos problemas centrais do atual ciclo de hype da IA. Estamos otimizando atenção, não precisão
E isso não é um problema só da biologia. Vemos padrões parecidos em aplicações de machine learning em várias áreas, de ciência do clima a direito e medicina