Course
Limiar
Redes neurais, do neurônio ao fractal
É o curso de redes neurais do SIENA, o projeto do NIPS-CERN que leva a rede de reconstrução de energia do TileCal para outros calorímetros.
- Taught byChrysthofer A. A. Afonso
- WhenÀs sextas, das 12h às 14h: as aulas 1 e 2 em 25/09 e 02/10/2026, e quatro encontros de 13/11 a 11/12/2026
- WhereAs aulas 1 e 2, presenciais, no segundo andar do PPEE, o Programa de Pós-graduação em Engenharia Elétrica da UFJF; os quatro encontros, on-line

The name
O nome tem três sentidos.
- 1Neurônio
O neurônio artificial de McCulloch e Pitts, de 1943, dispara quando a soma das entradas passa de um limiar.
- 2Projeto
O projeto final desenha o limiar entre o treino que converge e o que diverge.
- 3Pesquisa
Para quem acabou de entrar na graduação, o curso é o limiar da pesquisa.
Classes
Classes online
10 / 10
Class 1O neurônio e o perceptron
Class 2Derivada, gradiente e gradiente descendente
Class 3Matrizes e camadas
Class 4Derivadas parciais e o Jacobiano
Class 5Retropropagação
Class 6MNIST: treino, validação e teste
Class 7PyTorch: o que a biblioteca automatiza
Class 8Os dados do CERN: múons e massa invariante
Class 9O fractal, pincelado, e o projeto
Class 10Revisão do curso e apresentaçãoWhere the course goes
O curso vai do neurônio artificial ao perceptron multicamadas, o MLP, a rede de camadas empilhadas que está dentro de quase toda arquitetura moderna. No meio está a retropropagação, o algoritmo que calcula quanto cada peso contribuiu para o erro.
O projeto final vem de um artigo de Jascha Sohl-Dickstein, de 2024, "The boundary of neural network trainability is fractal". Treinar uma rede é repetir um passo de correção muitas vezes, e o tamanho desse passo é a taxa de aprendizado: grande demais, o treino diverge; pequena demais, não chega. Sohl-Dickstein deu uma taxa diferente para cada camada, treinou a mesma rede para milhões de pares de taxas e pintou cada par conforme o treino convergiu ou divergiu. A fronteira entre as duas regiões é um fractal, uma figura que continua cheia de detalhe por mais que se amplie. O projeto refaz isso com uma rede treinada em dados reais do CERN. O curso é de redes neurais; o fractal entra só no projeto.
The paper behind the final project
The boundary of neural network trainability is fractal
Jascha Sohl-Dickstein · 2024
arXiv:2402.06184; CC BY 4.0
Goals
- o hábito do método científico e da colaboração, do jeito que se trabalha no CERN;
- autonomia para estudar sozinhos e para ler artigo científico;
- o MLP, a base de toda rede neural, e o vocabulário da área: neurônio, camada, peso, treino, perda;
- a ideia de que uma rede neural reconhece padrões e é uma ferramenta, que serve na agricultura, na engenharia, na astronomia e onde mais houver dado;
- confiança para apresentar o que fizeram, e o projeto do fractal pronto.
What a class looks like
- 12 a 15 minRevisão das aulas anteriores, de memória
- 75 a 90 minConteúdo, com história, definição e pergunta, a partir dos decks das aulas
- até 8 minO código e a entrega
- 10 a 18 minFechamento e perguntas da turma
Between classes
Entre um encontro e outro: o estudo, em vídeo ou texto, e uma entrega, o código no GitHub de cada aluno e uma pergunta sobre o estudo. As aulas 1 e 2, presenciais, tinham também um seminário, em que um ou dois alunos explicavam o estudo e o código da entrega; os encontros on-line não têm. O encontro de 11/12 revisa o curso inteiro e tem a apresentação final do projeto, do professor junto com a turma; a entrega final, o repositório de cada um, reproduzível, é nessa aula.
Data
O projeto usa dados públicos do CERN: 100 mil eventos com dois múons registrados pelo CMS em 2010, com massa invariante de 2 a 110 GeV. É o registro 303 do portal de dados abertos do CERN, doi:10.7483/OPENDATA.CMS.4M97.3SQ9, com licença CC0. O histograma da massa mostra os picos de partículas descobertas entre 1974 e 1983, e a massa tem fórmula, então dá para conferir o que a rede aprendeu. Para aprender o MLP, nas aulas 6 e 7, entra o MNIST, um conjunto de dígitos escritos à mão.
Tools
Python no laptop de cada um, sem Google Colab. NumPy até a aula 6 e PyTorch a partir da aula 7. Git e GitHub para as entregas. O Claude Code para escrever código, com a regra de que quem usa responde por cada bloco. A instalação está no guia de instalação.
Conta pesada, como a janela grande do fractal, roda no PC do laboratório, um Dell Aurora R15 com Core i9-13900K e GeForce RTX 4070 Ti. Os resultados se mostram no laboratório, e o acesso de fora é pelo Chrome Remote Desktop.

