Motor de Diferenciación Automática Minimal en Rust

2025-06-20
Motor de Diferenciación Automática Minimal en Rust

Este es un motor de diferenciación automática minimal escrito en Rust. Puede entrenar una pequeña Perceptrón Multicapa para aprender la función XOR y representar un gráfico de computación de una sola Perceptrón en graph.html. El núcleo es la estructura Scalar, que almacena el valor, el gradiente opcional y un Edge que describe la operación que lo produjo. Las sobrecargas de operadores y las funciones auxiliares construyen un gráfico acíclico dirigido, almacenando en caché la derivada local para cada arista. `backward()` propaga recursivamente los gradientes desde el nodo de salida, acumulándolos en los nodos hoja creados con `Scalar::new_grad`. El gráfico se puede visualizar con `plot::dump_graph`.