Motor de Diferenciação Automática Minimal em Rust

2025-06-20
Motor de Diferenciação Automática Minimal em Rust

Este é um motor de diferenciação automática minimal escrito em Rust. Ele pode treinar um pequeno Multi-Layer Perceptron para aprender a função XOR e renderizar um gráfico de computação de um único Perceptron para graph.html. O núcleo é a estrutura Scalar, armazenando valor, gradiente opcional e uma Edge descrevendo a operação que o produziu. Sobrecargas de operadores e funções auxiliares constroem um gráfico acíclico direcionado, armazenando em cache a derivada local para cada aresta. `backward()` propaga recursivamente os gradientes do nó de saída, acumulando-os nos nós folha criados com `Scalar::new_grad`. O gráfico pode ser visualizado com `plot::dump_graph`.

Desenvolvimento Diferenciação Automática