Skip to content

Releases: PhD-Brown/AstroSpectro

AstroSpectro v1.0.0 - High-Performance Classification

06 Aug 19:02

Choose a tag to compare

Description:

We are incredibly proud to announce the release of AstroSpectro v1.0.0, the first stable and feature-complete version of our spectral classification pipeline. This release marks the culmination of an intensive development cycle focused on robustness, model performance, and the creation of a professional-grade suite of analysis tools.

The project has achieved its primary goal: to provide an end-to-end system capable of classifying stellar types from raw LAMOST DR5 spectra with an accuracy exceeding 80%.

v1.0.0 Highlights

🚀 Model Performance

  • 84% Accuracy: The pipeline, powered by an optimized XGBoost model, achieves 84% accuracy on a validated test set.
  • Rigorous Validation: Performance is confirmed through stratified cross-validation (GridSearchCV), ensuring the model's robustness and ability to generalize.
  • Advanced Feature Engineering: The model's success is built upon a rich set of over 20 features, combining:
    • Physical Measurements: Strength (prominence) and width (FWHM) of key spectral lines.
    • Spectral Ratios: Temperature-sensitive indicators based on the ratios of line strengths.
    • Contextual Metadata: Integration of redshift, SNR, and seeing as predictive features.

🛠️ Architecture & Pipeline

  • Multi-Model Pipeline: The SpectralClassifier class has been refactored to support both RandomForest and XGBoost, enabling easy benchmarking.
  • Comprehensive scikit-learn Pipeline: The training process now includes automated steps for imputation (handling NaN values), feature scaling, and oversampling (SMOTE) to manage class imbalance.
  • Modular Orchestration: The project is entirely driven by modular classes (MasterPipeline, SpectraManager, AstroVisualizer), turning the 00_master_pipeline.ipynb and 02_tools_and_visuals.ipynb notebooks into clean, high-level dashboards.

📊 Visualization & Analysis Tools

  • Augmented Spectrum Analyzer: A full-featured interactive tool in the 02_tools_and_visuals notebook allows users to:
    • Visualize any spectrum.
    • Tune peak detection parameters in real-time.
    • Get a live spectral class prediction using any saved .pkl model.
    • Review a quantitative analysis of spectral lines (FWHM, etc.).
  • Complete Visualization Suite: Tools to explore FITS headers, analyze feature quality, inspect trained models, and visualize sky coverage are now available.

📚 Complete Documentation

  • All sections of the Online Documentation have been updated to reflect the final state of the project, including a detailed results page and a complete API Reference.

Next Steps

This v1.0.0 release provides a solid foundation. Future development will focus on the goals outlined in our Roadmap, notably the exploration of Deep Learning models (1D CNNs) and the extension of the pipeline to other spectroscopic surveys.

A huge thank you to the open-source community whose tools made this project possible.


Description :

Nous sommes extrêmement fiers d'annoncer la version 1.0.0 d'AstroSpectro, la première version stable et complète de notre pipeline de classification spectrale. Cette version marque l'aboutissement d'un cycle de développement intensif axé sur la robustesse, la performance du modèle et la création d'une suite d'outils d'analyse de qualité professionnelle.

Le projet a atteint son objectif principal : fournir un système de bout en bout capable de classer des types stellaires à partir de spectres bruts LAMOST DR5 avec une précision supérieure à 80%.

Points Forts de la Version v1.0.0

🚀 Performance du Modèle

  • Précision de 84% : Le pipeline, utilisant un modèle XGBoost optimisé, atteint une précision de 84% sur un jeu de test validé.
  • Validation Rigoureuse : La performance est confirmée par une validation croisée stratifiée (GridSearchCV), garantissant la robustesse et la capacité de généralisation du modèle.
  • Feature Engineering Avancé : Le succès du modèle repose sur un jeu de plus de 20 features combinant :
    • Mesures Physiques : Force (prominence) et largeur (FWHM) des raies spectrales clés.
    • Ratios Spectraux : Indicateurs de température basés sur les ratios de force des raies.
    • Métadonnées Contextuelles : Intégration du redshift, du SNR et du seeing comme features prédictives.

🛠️ Architecture et Pipeline

  • Pipeline Multi-Modèle : La classe SpectralClassifier a été refactorisée pour supporter à la fois RandomForest et XGBoost, permettant un benchmarking facile.
  • Pipeline scikit-learn Complet : Le processus d'entraînement inclut désormais des étapes automatisées d'imputation (gestion des NaN), de scaling des features, et de sur-échantillonnage (SMOTE) pour gérer le déséquilibre des classes.
  • Orchestration Modulaire : Le projet est entièrement piloté par des classes modulaires (MasterPipeline, SpectraManager, AstroVisualizer), rendant les notebooks 00_master_pipeline.ipynb et 02_tools_and_visuals.ipynb des tableaux de bord propres et de haut niveau.

📊 Outils de Visualisation et d'Analyse

  • Analyseur de Spectre Augmenté : Un outil interactif complet dans le notebook 02_tools_and_visuals permet de :
    • Visualiser n'importe quel spectre.
    • Tuner les paramètres de détection de pics en temps réel.
    • Obtenir une prédiction de classe spectrale en direct en utilisant n'importe quel modèle .pkl sauvegardé.
    • Consulter une analyse quantitative des raies (FWHM, etc.).
  • Suite de Visualisation Complète : Des outils pour explorer les headers FITS, analyser la qualité des features, inspecter les modèles entraînés, et visualiser la couverture céleste sont désormais disponibles.

📚 Documentation Complète

  • Toutes les sections de la Documentation en Ligne ont été mises à jour pour refléter l'état final du projet, incluant une page de résultats détaillée et une API Reference complète.

Prochaines Étapes

Cette version 1.0.0 constitue une fondation solide. Le développement futur se concentrera sur les axes définis dans notre Roadmap, notamment l'exploration de modèles de Deep Learning (CNN 1D) et l'extension du pipeline à d'autres relevés spectroscopiques.

Un immense merci à la communauté open source dont les outils ont rendu ce projet possible.

Documentation Complete — v0.1.0-docs

16 Jul 01:30

Choose a tag to compare

Pre-release

All sections of the AstroSpectro documentation are now complete and available online!
The API reference, user guides, scientific context, project roadmap, and community pages are live.

Highlights:

API Reference: detailed docs for all modules and classes (preprocessor.py, feature_engineering.py, classifier.py)

User guides: step-by-step tutorials (data download, preprocessing, feature extraction, model training, visualization)

Scientific context: project methodology, results, and data sources (LAMOST DR5)

Clear project roadmap and community/contribution guides

FAQ, acknowledgments, citation instructions, and more!

See the documentation site or browse the docs/. folder.


Toutes les sections de la documentation AstroSpectro sont maintenant disponibles en ligne !
La référence API, les guides d’utilisation, le contexte scientifique, la feuille de route et les pages communauté sont en ligne.

À retenir :

  • Référence API : documentation détaillée de tous les modules et classes (preprocessor.py, feature_engineering.py, classifier.py)

  • Guides pratiques : tutoriels pas à pas (téléchargement des données, prétraitement, extraction des features, entraînement des modèles, visualisation)

  • Contexte scientifique : méthodologie, résultats et sources de données (LAMOST DR5)

  • Feuille de route claire et pages communauté/contributions

  • FAQ, remerciements, instructions de citation, et plus !

Consulte la documentation en ligne ou le dossier docs/.

🚀 Astro-Spectro Classification — First Public Release

08 Jul 20:00
43a3da1

Choose a tag to compare

Highlights:

  • Modular, reproducible pipeline for automated stellar spectral classification from raw LAMOST DR5 spectra
  • Robust data handling (download, preprocessing, feature extraction, ML-ready datasets)
  • Flexible classification models (Random Forest, SVM, …)
  • Complete project structure with detailed README, roadmap, and quickstart guide
  • Early documentation and examples included

What's New

  • Full end-to-end pipeline implemented (from raw spectra to ML predictions)
  • Automated data download & catalog generation (LAMOST DR5)
  • Modular Python scripts for preprocessing, feature engineering, and classification
  • Step-by-step Jupyter notebooks for demonstration and exploration
  • Integrated logging, reporting, and reproducible results
  • Roadmap and documentation structure established
  • Project licensed under MIT

 Getting Started

See the README for full installation and usage instructions, or try out the main notebook :

00_master_pipeline


Documentation

Project documentation is in progress and will be available soon via GitHub Pages and Docusaurus.


Known Issues / Next Steps

  • Ongoing development — see ROADMAP for planned features
  • Enhanced model support and reporting coming soon
  • Contributions and feedback welcome!

Acknowledgments

Based on data from [LAMOST DR5](http://www.lamost.org/public/). Thanks to the Astropy, Scikit-learn, and open-source scientific community.


 How to Cite / Contact

If you use this code for research, please cite this repository.
Contact: [alex.baker.1@ulaval.ca]


Faits saillants :

  • Pipeline modulaire et reproductible pour la classification automatique de spectres stellaires LAMOST DR5
  • Téléchargement, prétraitement et extraction de features robustes, prêts pour l’IA
  • Premiers modèles de classification (Random Forest, SVM…)
  • Structure de projet complète : README détaillé, roadmap, quickstart, exemples
  • Documentation de démarrage incluse

 Quoi de neuf ?

  • Pipeline de bout en bout : des fichiers FITS bruts aux prédictions ML
  • Téléchargement automatisé & génération de catalogues LAMOST DR5
  • Scripts Python modulaires : prétraitement, extraction de features, classification
  • Notebooks Jupyter pas à pas pour explorer chaque étape
  • Logging, rapports, et reproductibilité intégrés
  • Roadmap et base documentaire démarrées
  • Licence open source MIT

 Pour démarrer

Consulte le README pour les instructions complètes, ou teste directement le notebook principal :

00_master_pipeline


Documentation

La documentation sera progressivement enrichie sur GitHub Pages et Docusaurus (en préparation).


À venir / limitations

Développement actif — voir ROADMAP pour les features prévues

Amélioration du support multi-modèles & reporting

Suggestions, feedback et contributions bienvenus !


Remerciements

Basé sur les données publiques LAMOST DR5. Merci à la communauté Astropy, Scikit-learn, et open source.


 Contact & citation

Merci de citer ce dépôt si tu utilises ce code pour la recherche.
Contact : [alex.baker.1@ulaval.ca]