Show HN: Sklearn-genetic-opt – evolutionary optimization for scikit-learn

rodrigo-arenas1 pts0 comments

sklearn-genetic-opt | Evolutionary hyperparameter tuning for scikit-learn

Skip to content

Appearance

sklearn-genetic-optEvolutionary hyperparameter tuning<br>Tune XGBoost, LightGBM, CatBoost, and any scikit-learn estimator using genetic algorithms — evolutionary hyperparameter search and wrapper-based feature selection, powered by DEAP.<br>Get Started<br>View on GitHub

GASearchCV<br>Hyperparameter search across classification, regression, and outlier-detection estimators using evolutionary operators.

GAFeatureSelectionCV<br>Wrapper-based feature selection with cross-validation — find the compact subset that maximises your score.

Smart Initialization<br>Latin hypercube sampling, estimator defaults, and warm-start seeds produce a better initial population than pure random.

Diversity Control<br>Adaptive mutation/crossover, random immigrants, and fitness sharing prevent premature convergence.

Callbacks & MLflow<br>Early stopping, progress bars, checkpoints, TensorBoard, and MLflow 3 logging out of the box.

scikit-learn Compatible<br>Follows the familiar fit/predict/best_params_ API — drop it in wherever you'd use GridSearchCV.

Boost Library Support<br>Works with XGBoost, LightGBM, and CatBoost out of the box — comprehensive tutorials tuning 7–9 hyperparameters with parameter interactions the GA captures naturally.

Imbalanced Learning<br>Tune class_weight as a search parameter alongside model hyperparameters. Optimize balanced_accuracy or F1 directly instead of misleading accuracy.

Comprehensive Tutorials<br>Step-by-step walkthroughs for gradient-boosting libraries, multi-stage feature selection, and imbalanced classification — each with baseline comparisons and visualizations.

genetic evolutionary scikit learn hyperparameter sklearn

Related Articles