O elefante de Von Neumann
Elefante de Mayer et al.
Acho que ouvi uma menção a essa história pela primeira vez quando estava lendo o Deep Learning Book, mas também pode ter sido em alguma aula do doutorado. Pesquisei um pouco e achei poucas informações sobre ela. Apesar de ter acontecido na década de 50, o conteúdo me parece muito atual.
Em um artigo de 2004 da Nature, o professor Freeman Dyson descreveu o encontro que teve em 1953 com Enrico Fermi, que na época já era vencedor de um prêmio nobel.
O texto do artigo é muito interessante e vale a pena ser lido, porém o que interessa para o post é o diálogo final. Segundo descreve no artigo, em um momento do encontro, já desesperado pelo que tinha ouvido, Dyson questionou se Fermi não estava impressionado com os resultados numéricos da pesquisa que acabara de apresentá-lo. Nesse momento, Fermi perguntou o seguinte: “Quantos parâmetros arbitrários você usou para seus cálculos?”. Após pensar, Dyson informou: “Quatro” e então Femi disse o seguinte: "Lembro que meu amigo Johnny von Neumann costumava dizer que com quatro parâmetros eu posso ajustar um elefante, e com cinco, posso fazê-lo mexer sua tromba".
Até pode ser que von Neumann nunca tenha realmente dito isso, mas o professor Fermi estava certo quando disse que seria possível ajustar um elefante com quatro parâmetros. Em 2010, Jürgen Mayer, Khaled Khairy e Jonathon Howard publicaram o artigo Drawing an elephant with four complex parameters na revista American Journal of Physics. No artigo foi apresentado quatro números complexos que representavam os parâmetros necessários para especificar a forma do elefante, além de um quinto parâmetro responsável pelo olho e pela movimentação da tromba do animal.
Eles desenharam o elefante como um conjunto de pontos que poderiam ser obtidos a partir das expansão das séries abaixo:
$x(t)=\sum_{k=0}^{\infty} (A_{k}^{x}cos(kt) + B_{k}^{x}sen(kt))$
$y(t)=\sum_{k=0}^{\infty} (A_{k}^{y}cos(kt) + B_{k}^{y}sen(kt))$
Em que $A_{k}^{x}$, $B_{k}^{x}$, $A_{k}^{y}$, $B_{k}^{y}$ são os coeficientes da expansão. Os números complexos definidos pelos autores foram os seguintes:
| Parâmetro | Parte Real | Parte Imaginária |
|---|---|---|
| $p_1 = 50 - 30i$ | $B^x_1 = 50$ | $B^y_1 = 50$ |
| $p_2 = 18 + 8i$ | $B^x_2 = 18$ | $B^y_2 = 8$ |
| $p_3 = 12 - 10i$ | $A^x_3 = 12$ | $B^y_3 = -10$ |
| $p_4 = -14-60i$ | $A^x_5 =-14$ | $A^y_1 = -60$ |
| $p_5 = 40+20i$ | wiggle coeff. = 40 | $x_{eye} = y_{eye} = 20$ |
O artigo é curto, ele possui apenas duas páginas que são dedicadas a explicar como seria possível desenhar o elefante. O resultado foi apresentado em figura e também em um vídeo que pode ser visto na animação abaixo.

Segundo o artigo, a movimentação da tromba do elefante é possível pois é utilizado a parte real de $p_5$ (wiggle coefficient) que representa onde a tromba do animal é ligada ao corpo. Quem tiver curiosidade pode executar o código em Python abaixo disponibilizado em How to fit an elephant.
O resultado da execução do código será a seguinte figura:

Há também uma versão do código acima que adiciona uma nova função (LivePlot) que é responsável por usar o wiggle coefficient para mostrar a movimentação da tromba do elefante.
Por fim, eu destaco um trecho do Deep Leaning Book como reflexão sobre tudo isso.
O ponto, claro, é que modelos com um grande número de parâmetros podem descrever uma variedade incrivelmente ampla de fenômenos. Mesmo que tal modelo esteja de acordo com os dados disponíveis, isso não o torna um bom modelo. Isso pode significar apenas que há liberdade suficiente no modelo que pode descrever quase qualquer conjunto de dados de tamanho determinado, sem capturar nenhuma percepção genuína do fenômeno em questão.
Professor no Instituto Federal de Educação, Ciência e Tecnologia de Pernambuco (IFPE) com doutorado em Engenharia da Computação pela Universidade de Pernambuco (2025) na área de Inteligência de Enxames e Aprendizado de Máquina. Possui Mestrado (2014) e Bacharelado (2013) em Engenharia da Computação pela mesma instituição. Realiza pesquisa de pós-doutorado em Engenharia de Sistemas na UPE. É conselheiro do Conselho Superior (CONSUP) do IFPE, atual coordenador de curso do Tecnológo em Análise e Desenvolvimento de Sistemas do Campus Paulista, possuitambém experiência coordenador da Divisão de Pesquisa e Extensão.
É membro da Sociedade Brasileira de Computação (SBC), IEEE e Complexity Systems Society. Desde 2023, participa de projetos de inovação tecnológica da Rede Nacional de Ensino e Pesquisa (RNP). Já coordenou projetos de pesquisa e extensão no IFPE em parceria com instituições como FACEPE, SiDi, IPA, SOFTEX, NIC.BR e Prefeitura de Paulista.