An academic-grade Evolutionary Machine Learning Infrastructure engineered from scratch in Python to perform non-linear symbolical feature mapping.
This repository leverages Genetic Programming (GP) via the DEAP library to evolve mathematical expression trees. These trees map complex, non-linearly separable topological layouts (circular matrices and interleaved synthetic moons) into high-discrimination vector metrics optimized for downstream supervised classification and unsupervised density clustering.
- Evolutionary Framework: DEAP (Distributed Evolutionary Algorithms in Python)
- Predictive Suite: Scikit-Learn (Gaussian Naive Bayes, DBSCAN, PCA, StandardScaler)
- Data Engineering: NumPy, Pandas
- Visualization: Matplotlib, Seaborn
To isolate highly complex concentric clusters where class boundary intersections (
The fitness configuration maximizes the empirical classification accuracy score of a Gaussian Naive Bayes classifier trained inside the transformed mathematical space:
For density-based partition profiles where boundary shapes are intertwined (e.g., Make Moons), the GP architecture optimizes coordinate metrics to maximize the Fisher's Score Criterion, improving cluster density separations for DBSCAN allocation loops:
gp_naive_bayes_classifier.py: Initiates a 300-individual tree population evolved over 50 generations using a 70% crossover (cxOnePoint) and 30% uniform mutation probability layout. Maps nested coordinates into strict Gaussian structures.gp_dbscan_clustering.py: Implements unsupervised mapping utilizing a multi-operator mathematical primitive primitive set to maximize core cluster distance tracking metrics.
Evolving tree transformations enables standard linear and probabilistic density models to successfully map coordinates with peak validation limits.
Shows the optimized DBSCAN spatial partition after evolutionary feature alignment, removing high-frequency dimensional noise spikes.
git clone [https://github.com/mrhashx/genetic-programming-feature-extraction.git](https://github.com/mrhashx/genetic-programming-feature-extraction.git)
cd genetic-programming-feature-extractionpython gp_naive_bayes_classifier.py
python gp_dbscan_clustering.py
