Artigos aprofundados sobre a tecnologia que molda o que vem a seguir.

CNNs especializadas vs. LLMs na classificação de imagens

Uma CNN de 10 anos superou LLMs de ponta na classificação de imagens de câncer de pele. Veja como escolher entre modelos especializados e LLMs gerais.

Ilustração de uma pequena máquina de ordenação precisa superando uma enorme máquina de propósito geral na ordenação de objetos
Uma pequena máquina de ordenação feita para um fim específico supera uma máquina gigante de propósito geral quando a tarefa é estreita e bem definida.

Um dermatologista colocou recentemente 200 lesões de pele com diagnóstico confirmado por biópsia diante de dois LLMs de ponta e de uma cópia ajustada (fine-tuned) da Inception v3, uma rede convolucional que o Google publicou há uma década. A CNN acertou 62% dos diagnósticos. Os LLMs ficaram com 42% cada um. No melanoma especificamente, o diagnóstico que você menos quer errar, a rede antiga também venceu. Se o seu trabalho envolve classificação de imagens em qualquer escala, esse resultado deveria recalibrar a forma como você pensa a decisão entre modelo especializado e LLM, porque não é realmente uma história sobre medicina. É uma história sobre escolher a ferramenta certa.

O problema: classificar parece fácil para LLMs, mas não é

Aqui está a armadilha em que engenheiros experientes continuam caindo. Modelos de fronteira escrevem código, resumem contratos e passam na prova da OAB, então soa quase como um insulto sugerir que eles não conseguem olhar uma foto e escolher um entre seis rótulos. Classificação é o “hello world” do machine learning. Com certeza os maiores modelos dão conta disso.

Mas veja o que classificação realmente é. Você tem um espaço de rótulos fixo e geralmente pequeno. Tem uma distribuição de entradas repetível. E precisa de uma fronteira de decisão que coloque os casos sutis e de alto risco do lado certo, de forma consistente, todas as vezes. Essa última parte é onde os LLMs multimodais falham. Eles não foram treinados para fazer distinções finas dentro de um domínio visual estreito; foram treinados para dizer algo plausível sobre praticamente qualquer imagem já publicada na internet.

Os resultados do câncer de pele tornam isso concreto de um jeito desconfortável. Um LLM diagnosticou 75 de 200 lesões como carcinoma basocelular, quando somente 25 eram, incluindo 14 dos 30 melanomas. O outro se apaixonou pela ceratose actínica, chamando-a 53 vezes contra 20 casos reais. Esses não são erros aleatórios. São a assinatura de um modelo que leu muito sobre dermatologia, viu as imagens de lesões que por acaso estão nos dados de treinamento em escala web, e faz correspondência de padrões com a resposta que soa mais provável em vez de calculá-la.

Um modelo que leu todos os livros-texto não é o mesmo que um modelo que viu 68 mil exemplos rotulados exatamente da coisa sobre a qual você está perguntando.

Primeira tentativa fracassada: simplesmente perguntar ao modelo de fronteira

O primeiro movimento natural é o que o dermatologista tentou: dar as imagens ao LLM, pedir um diagnóstico, uma pontuação de confiança e uma segunda opção. É um teste justo, porque é exatamente assim que um clínico usaria essas ferramentas. E os modos de falha são instrutivos.

Primeiro, a confiança não significa nada. Em um caso, um LLM chamou um melanoma invasivo fino e pouco pigmentado de carcinoma basocelular com 95% de confiança. O número é gerado da mesma forma que o diagnóstico: de maneira plausível. Não há probabilidade calibrada por trás dele. Se a sua lógica posterior usa limiares de confiança, e a maioria das lógicas de triagem usa, você está aplicando limiares sobre ficção.

Segundo, os erros não são conservadores. Cada execução acontece uma vez, e as respostas variam entre execuções, o que importa muito para qualquer coisa que você colocaria em um pipeline. Um classificador especializado devolve os mesmos logits para a mesma entrada toda vez; um LLM devolve uma amostra de uma distribuição de respostas. Para uma ferramenta de apoio à decisão, não determinismo é um passivo, não uma peculiaridade.

Terceiro, e este é o ponto mais sutil: os LLMs foram excelentes na tarefa adjacente. Perguntados como paciente, “preciso ver um médico?”, disseram sim para 98 a 99 de cada 100 melanomas confirmados por biópsia, e para quase todas as lesões inofensivas também. É o comportamento de um modelo treinado em textos sobre medicina: errar para o lado de procurar o médico, sempre. Útil para uma triagem em chatbot. Inútil para discriminação, que é a tarefa real.

Segunda tentativa fracassada: presumir que maior significa melhor em tudo

Há uma falha mais profunda aqui que nem aparece no experimento: a suposição de que escala é substituta de adequação. Um LLM de fronteira tem, de forma conservadora, milhares de vezes mais parâmetros que os cerca de 24 milhões da Inception v3. Nada dessa capacidade está alocado para distinguir uma ceratose seborreica de um carcinoma de células escamosas no nível do pixel. Para o modelo, dermatologia é uma gota num oceano de dados de treinamento, e imagens dermatoscópicas, a modalidade que carrega a maior parte do sinal diagnóstico, são ainda mais raras.

É o mesmo motivo pelo qual uma rede de Go de 30 milhões de parâmetros vence qualquer LLM no Go por uma margem absurda. Também é por isso que os benchmarks continuam enganando equipes sobre onde os LLMs realmente ajudam em produção, um ponto que abordamos ao analisar por que os benchmarks de IA deixam de fora a maior parte do trabalho real. Capacidade no sentido modal (“o modelo às vezes consegue fazer isso”) não é capacidade no sentido de engenharia (“o modelo faz isso de forma confiável o suficiente para construir em cima”).

Há uma heurística útil escondida na discussão em torno deste experimento: um LLM de fronteira tende a ser genuinamente bom em uma tarefa se ela estiver massivamente super-representada no pré-treinamento (código, inglês cotidiano) ou se tiver sido especificamente pós-treinada nela com aprendizado por reforço. Fora isso, espere o desempenho de um generalista brilhante que leu alguns livros e mesmo assim está confiante. Diagnóstico visual de coisas raras está firmemente no segundo grupo.

O que realmente funciona: um modelo pequeno ajustado à distribuição exata

Agora, a parte que deveria constranger quem acha que modelos especializados exigem um laboratório de pesquisa. A CNN vencedora não era o estado da arte. Era a Inception v3, uma arquitetura de referência, pré-treinada em fotografias comuns e depois ajustada de ponta a ponta com 68.011 imagens de dermatologia de um arquivo público, em uma única H100, em cerca de vinte minutos. Foi tomado cuidado para remover do treinamento toda foto das lesões de teste e de seus pacientes. O resultado roda no navegador de um celular via WebGPU, sem enviar nada para a nuvem.

Vinte minutos em uma GPU. Compare com o custo de rodar um modelo multimodal de fronteira sobre o seu corpus de imagens em volume de produção, por imagem, para sempre. O modelo especializado não é apenas mais preciso; é ordens de grandeza mais barato, determinístico, auditável e pequeno o bastante para ir para dispositivos de borda. Se você consegue formular seu problema como N rótulos sobre uma distribuição de entrada estável, e tem (ou consegue obter) dados rotulados, o classificador ajustado vence em quase todos os eixos que importam em produção.

Ilustração de um pequeno chip de rede neural em um smartphone substituindo um data center distante
Um classificador ajustado, pequeno o bastante para rodar no navegador de um celular, superou dois modelos de fronteira e custa quase nada por inferência.

A versão moderna desse playbook nem exige uma CNN antiga. Pequenos vision transformers, modelos de embeddings como os encoders de imagens médicas do Google ou uma cabeça ajustada sobre um backbone pré-treinado vão te levar mais longe. O ponto não é nostalgia da Inception v3; é que uma arquitetura de 2015 já basta para vencer modelos com quatro ordens de magnitude a mais de computação, o que mostra onde está o gargalo de verdade. É a adequação à tarefa, não o tamanho da rede.

# The specialist path in miniature: a frozen backbone + a small head
import torch
import torch.nn as nn
from torchvision import models
# A decade-old backbone is fine. Seriously.
backbone = models.inception_v3(weights="IMAGENET1K_V1")
in_features = backbone.fc.in_features
backbone.fc = nn.Linear(in_features, 6)  # your six labels
# Fine-tune everything on your labelled domain images.
# On one H100, tens of thousands of images: tens of minutes.
optimizer = torch.optim.AdamW(backbone.parameters(), lr=1e-4)
loss_fn = nn.CrossEntropyLoss()  # a *calibrated* probability lives here

E se o seu espaço de rótulos é fixo, mas você prefere manter um LLM no fluxo para o trabalho ao redor, a forma honesta de fazer isso é restringir a saída dele a uma decisão, em vez de confiar na sua prosa, o mesmo raciocínio por trás de decodificação restrita para transformar LLMs em modelos de decisão. Mas, para a classificação em si, uma cabeça treinada ainda vence.

Um framework de decisão: quando o especialista vence, quando o LLM vence

Depois de alguns anos vendo equipes tomarem essa decisão mal, aqui está o framework que eu realmente defenderia. Faça quatro perguntas:

  1. O espaço de rótulos é fixo e pequeno? Se você consegue enumerar as respostas, um classificador quase sempre é o formato certo. LLMs se pagam quando o espaço de saída é aberto: resumos, explicações, diálogos, código.
  2. A distribuição de entrada é estável? Um modelo ajustado em imagens de dermatoscopia é excelente nessas imagens e perdido diante de uma foto com uma tatuagem, uma régua e uma xícara de café. Se as suas entradas são caóticas, a robustez de um generalista tem valor real.
  3. Você tem dados rotulados, ou consegue obtê-los? Essa é a verdadeira bifurcação. Com 10 mil ou mais exemplos rotulados, o ajuste fino é quase de graça e vai dominar. Sem nenhum, o palpite zero-shot de um LLM pode ser o seu melhor ponto de partida, mas trate-o como ferramenta para iniciar a rotulagem, não como a resposta de produção.
  4. Quanto custa um erro, e você precisa de calibração? Decisões de alto risco com limiares precisam de probabilidades reais e saídas determinísticas. Isso descarta chamadas puras de LLM, ponto final.

Passe o caso do câncer de pele por esse framework: espaço fixo de seis rótulos, pipeline de imagens clínicas estável, 68 mil imagens públicas rotuladas, erros que podem ser de vida ou morte. Quatro de quatro. O LLM nunca teve chance, e a surpresa não é que ele perdeu, e sim que alguém esperasse outra coisa.

As ressalvas honestas, porque pragmatismo corta para os dois lados

Eu estaria te prestando um desserviço se parasse em “modelos pequenos vencem”. Os pontos fortes do classificador ajustado são também a sua fragilidade. Ele foi comparado com um generalista não ajustado, em dados extraídos exatamente da distribuição em que foi treinado. Leve-o para o mundo real, com câmeras diferentes, tons de pele sub-representados no arquivo e imagens com oclusões ou anotações, e o desempenho se degrada de maneiras que a ampla formação do LLM às vezes lida melhor. O generalista falha de forma previsível dentro de uma distribuição; o especialista falha catastroficamente fora dela.

Há também uma tarefa que o classificador simplesmente não consegue fazer: o resto da medicina. O resultado secundário mais interessante do mesmo experimento foi que LLMs, recebendo anotações de prontuário, histórico do paciente e a possibilidade de fazer perguntas, poderiam contribuir de forma plausível para a interpretação, a comunicação e o manejo, tudo o que vem depois do rótulo. Uma CNN devolve seis logits. Ela nunca vai explicar seu raciocínio a um paciente preocupado nem perceber que a carta de encaminhamento contradiz a imagem.

E note a honestidade do próprio estudo: a IA de dermatologia de ponta não é uma Inception v3 isolada, são ensembles de vision transformers treinados com muito mais dados, e produtos regulamentados construídos assim têm desempenho consideravelmente melhor. A direção do campo aponta para modelos especialistas maiores, não para generalistas, o que reforça o argumento em vez de enfraquecê-lo.

A verdadeira lição: LLMs servem para construir o classificador, não para ser o classificador

Um artesão usando uma ferramenta grande e versátil para construir um instrumento pequeno e preciso
O melhor uso de um modelo de propósito geral é construir o especializado que de fato faz o trabalho.

A observação mais afiada de todo o episódio é uma na qual continuo voltando: LLMs empurraram o custo de construir classificadores dedicados para perto de zero. Escrever o script de ajuste fino, limpar o dataset, montar o harness de avaliação, gerar a interface de rotulagem: este é exatamente o trabalho em que LLMs são genuinamente sobre-humanos ao acelerar. Até a análise do dermatologista foi produzida com uma ferramenta de programação com IA. O generalista construiu e pontuou o experimento que o especialista venceu.

Essa é a arquitetura que hoje eu recomendo por padrão: LLM no fluxo para desenvolvimento, trabalho com dados, triagem de casos extremos e a camada de explicação voltada ao humano; e um modelo pequeno ajustado para a decisão repetida, de alto volume e alto risco em si. Vemos o mesmo padrão em termos de eficiência: a história interessante muitas vezes não é o modelo carro-chefe, mas o tier barato fazendo trabalho de verdade, como nos modelos da categoria flash e na eficiência de inferência. Ajuste o modelo ao formato do problema, e a maioria das queixas de “IA não funciona” evapora.

Uma calculadora supera todo LLM em divisão, e ninguém escreve posts emocionados sobre isso. Um classificador ajustado superando um chatbot em classificação é a mesma história, só com mais parâmetros. A única razão de isso surpreender alguém é que passamos dois anos ouvindo que escala dissolve a necessidade de especialização. Não dissolve. Só torna a especialização mais barata de construir, se você estiver disposto a pegar a ferramenta entediante.