PySR: herramienta de regresión simbólica en Python y Julia

Fuentes: PySR: Symbolic Regression Tool for Python and Julia

PySR es una herramienta de código abierto diseñada para la regresión simbólica, un subcampo del aprendizaje automático cuyo objetivo es encontrar expresiones simbólicas interpretables que optimicen un objetivo específico. Desarrollada por el equipo AstroAutomata, esta librería combina Python y Julia para ofrecer un equilibrio entre alto rendimiento, alta configurabilidad y facilidad de uso. El núcleo del sistema se basa en la biblioteca Julia SymbolicRegression.jl, que actúa como motor de búsqueda para explorar espacios de ecuaciones complejas.

Aunque la regresión simbólica funciona mejor en conjuntos de datos de baja dimensión, PySR incorpora técnicas de 'Distilación Simbólica' de redes neuronales para extender estas capacidades a espacios de alta dimensión, permitiendo la conversión de redes neuronales en ecuaciones analíticas explícitas. La instalación es sencilla mediante pip, conda o Docker, y el sistema gestiona dependencias de Julia automáticamente al importarse.

La interfaz de usuario se asemeja a la de scikit-learn, permitiendo a los usuarios definir operadores binarios y unarios personalizados, así como funciones de pérdida específicas. El proceso de entrenamiento ejecuta un proceso de Julia en segundo plano que realiza una búsqueda multihilo con cientos de miles de mutaciones. Una vez entrenado, el modelo permite predecir resultados y extraer las ecuaciones aprendidas en formatos compatibles con SymPy, JAX y PyTorch. PySR incluye además funciones avanzadas como denoising, selección de características y la capacidad de guardar el estado del modelo para reinicios parciales, facilitando su integración en flujos de trabajo de agentes de código y análisis de datos científicos.