À propos du projet
PySR est un outil open source de régression symbolique — une tâche d'apprentissage automatique qui trouve des expressions symboliques interprétables optimisant un objectif donné. Développé aux côtés de la bibliothèque Julia SymbolicRegression.jl, il sert de moteur de recherche alimentant les capacités de PySR.
L'installation est simple via pip ou conda-forge. Les dépendances Julia sont installées automatiquement au premier import. PySR prend également en charge le déploiement conteneurisé via Docker et Apptainer pour les environnements de cluster sans accès root.
L'interface principale suit les conventions scikit-learn via `PySRRegressor`. Les utilisateurs spécifient des paramètres de recherche, notamment la taille maximale des expressions, le nombre d'itérations, les opérateurs binaires et unaires, les fonctions de perte personnalisées (écrites en syntaxe Julia) et les stratégies de sélection de modèle. Le moteur de recherche effectue des centaines de milliers de mutations et d'évaluations d'équations sur les itérations configurées.
Les fonctionnalités clés incluent :
- Opérateurs personnalisés définis en syntaxe Julia (par exemple, `inv(x) = 1/x`)
- Fonctions de perte élément par élément personnalisées
- Mode de débruitage (`denoise=True`)
- Sélection de variables (`select_k_features=N`)
- Prise en charge du démarrage à chaud pour reprendre des recherches interrompues
- Export d'équations dans plusieurs formats : lambda appelable, SymPy, JAX (différentiable) et PyTorch (différentiable)
- Contraintes d'opérateurs imbriqués pour contrôler la complexité des expressions
- Prise en charge de clusters multi-nœuds via le gestionnaire de cluster Slurm
- Sérialisation CSV et PKL du hall of fame pour les états de modèle enregistrés
PySR prend également en charge la distillation symbolique de réseaux de neurones — la conversion de réseaux neuronaux entraînés en équations analytiques, offrant un moyen interprétable de comprendre les modèles d'apprentissage profond. Cette approche est décrite dans les articles de recherche associés disponibles sur arXiv.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.